/* A focused coaching story. Keep shared profession pages and their demos intact. */
.trainer-refresh { --tr-accent: var(--app-accent); --tr-cream: #faf7f2; }
.trainer-refresh .section { padding: 96px max(5vw, 28px); }
.trainer-refresh main > .section > .section-heading,
.trainer-refresh .section-heading { max-width: 530px; }
.trainer-refresh .section-heading.centered { max-width: 670px; margin-bottom: 48px; }
.trainer-refresh .section-heading h2 { font-size: clamp(37px, 4vw, 58px); line-height: 1.06; letter-spacing: -.055em; }
.trainer-refresh .section-heading > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; }
.trainer-refresh .eyebrow { font-size: 10px; line-height: 1.5; letter-spacing: .17em; margin-bottom: 20px; }
.trainer-refresh section[id], .trainer-refresh #workflow { scroll-margin-top: 105px; }
.trainer-refresh .site-header { z-index: 100; }
.trainer-refresh .site-header nav { gap: 24px; }
.trainer-refresh .site-header nav a { white-space: nowrap; }
.trainer-refresh .profession-hero { min-height: 820px; padding: 150px max(5vw, 28px) 70px; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: 40px; align-items: center; background: linear-gradient(140deg,#f9f6f2,#f7f1f8 62%,#eee6f2); }
.trainer-refresh .hero-copy { width: 100%; max-width: 650px; justify-self: end; }
.trainer-refresh .profession-back-link { margin-bottom: 28px; font-size: 11px; }
.trainer-refresh .profession-hero .hero-audience { margin-bottom: 25px; }
.trainer-refresh h1.tr-hero-title { font-size: clamp(44px, 4.9vw, 78px); line-height: 1.08; letter-spacing: -.065em; margin: 0 0 25px; font-weight: 760; }
.trainer-refresh .tr-hero-description { max-width: 450px; margin-bottom: 24px; color: var(--muted); font-size: 16px; line-height: 1.75; }
.trainer-refresh .sw-free-promise { font-size: 13px; margin-bottom: 6px; }
.trainer-refresh .sw-platforms { font-size: 11px; }
.trainer-refresh .profession-hero .store-row { margin: 24px 0; }
.trainer-refresh .hero-visual { min-width: 0; height: 575px; width: 100%; max-width: 555px; align-self: center; }
.trainer-refresh .profession-hero .profession-photo { inset: 10px 0 0 50px; border-radius: 180px 180px 45px 45px; background-position: 58% center; }
.trainer-refresh .profession-hero .hero-phone { width: 250px; left: 0; bottom: 0; top: auto; transform: rotate(-5deg); }
.trainer-refresh .profession-hero .float-card--reminder { right: -5px; top: 55px; left: auto; bottom: auto; font-size: 11px; }
.trainer-refresh .profession-hero .float-card--conflict { right: -5px; left: auto; bottom: 50px; top: auto; font-size: 11px; }
.trainer-refresh .float-card b { font-size: 12px; }
.trainer-refresh .float-card small { font-size: 10px; }
.tr-hero-tools { display: flex; flex-wrap: wrap; gap: 7px 16px; margin-top: 25px; color: #79687c; font-size: 10px; }
.tr-hero-tools > span::before { content: '✓'; margin-right: 5px; color: var(--plum); }
.trainer-refresh .tr-workflow { max-width: 1270px; padding: 0 max(5vw, 28px); margin: 0 auto; }
.trainer-refresh .tr-workflow a { padding: 26px 12px; gap: 12px; }
.trainer-refresh .tr-workflow a:first-child { padding-left: 0; }
.trainer-refresh .tr-workflow b { font-size: 14px; }
.trainer-refresh .trainer-coaching { gap: clamp(36px,7vw,110px); max-width: 1440px; margin-inline: auto; }
.trainer-refresh .trainer-coaching .section-heading { justify-self: center; }
.trainer-refresh .trainer-feature-list { gap: 24px; margin: 30px 0 20px; }
.trainer-refresh .trainer-feature-list h3 { font-size: 16px; margin-bottom: 7px; }
.trainer-refresh .trainer-feature-list p { font-size: 13px; line-height: 1.8; }
.trainer-refresh .trainer-feature-list article { gap: 12px; }
.trainer-refresh .trainer-feature-list article > span { flex-basis: 25px; }
.trainer-refresh .trainer-screen-stage { width: 100%; max-width: 490px; padding: 28px 18px 23px; justify-self: center; background: radial-gradient(ellipse at 50% 35%,#e8d6ef,#f5edf6 58%,#eae1ee); }
.trainer-refresh .trainer-history { max-width: none; background: #fff; }
.trainer-refresh .trainer-phone-mount { width: 294px; }
.trainer-refresh .trainer-screen-stage .screen-label { max-width: 330px; font-size: 9px; line-height: 1.7; letter-spacing: .07em; }
.tr-demo-kicker { display: flex; align-items: center; justify-content: center; gap: 8px; position: relative; margin-bottom: 25px; font-size: 9px; font-weight: 750; letter-spacing: .13em; color: #796580; }
.tr-live-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--app-accent); box-shadow: 0 0 0 4px rgba(var(--app-accent-rgb), .09); }
.tr-document-section { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 70px; background: #efe7f0; }
.tr-document-section > .section-heading { justify-self: center; }
.tr-document-stage { min-width: 0; padding: 15px; }
.trainer-refresh .tr-document-note { font-size: 12px !important; line-height: 1.8; margin-bottom: 22px; }
.trainer-refresh .tr-schedule { background: var(--bg); }
.tr-clients-section { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 75px; background: #fbf9fb; border-block: 1px solid var(--border); }
.tr-clients-section > .section-heading { justify-self: center; }
.tr-client-card { max-width: 510px; width: 100%; justify-self: center; padding: 30px; background: white; border: 1px solid #e7dce9; border-radius: 27px; box-shadow: 0 18px 50px #492c5710; }
.tr-client-head { display: flex; gap: 14px; align-items: center; }
.tr-client-avatar { width: 52px; height: 52px; display: grid; place-items: center; flex: 0 0 auto; background: #f2e7f7; border-radius: 18px; color: #7a4597; font-weight: 700; font-size: 19px; }
.tr-client-head small { color: #a293a8; font-size: 8px; letter-spacing: .13em; }
.tr-client-head h3 { margin: 4px 0; font-size: 21px; letter-spacing: -.6px; }
.tr-client-head p { margin: 0; color: var(--muted); font-size: 11px; }
.tr-client-status { margin-left: auto; padding: 5px 8px; background: #edf7f0; color: #3b8b5a; border-radius: 7px; font-size: 9px; }
.tr-client-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 25px 0; padding: 19px 0; border-block: 1px solid #f0eaf2; }
.tr-client-stats small { display: block; color: #a08ea8; font-size: 7px; letter-spacing: .05em; margin-bottom: 7px; }
.tr-client-stats b { font-size: 12px; font-weight: 650; }
.tr-client-note { padding: 18px; background: #faf6fc; border-radius: 14px; }
.tr-client-note b { font-size: 12px; }
.tr-client-note p { color: #8a7793; font-size: 11px; line-height: 1.7; margin: 8px 0 0; }
.tr-client-followup { margin-top: 20px; }
.tr-client-followup > span { display: inline-block; padding: 6px 10px; border: 1px solid #e4d4ec; border-radius: 15px; color: #794492; font-size: 10px; font-weight: 650; }
.tr-client-followup p { font-size: 11px; color: #8a7793; line-height: 1.7; margin: 9px 0; }
.tr-client-footnote { margin: 12px 0 0; font-size: 9px; line-height: 1.7; color: #a090a8; }
.trainer-refresh .share-story { padding-bottom: 70px; }
.trainer-refresh .share-intro { gap: 70px; }
.trainer-refresh .share-product-proof { margin-top: 45px; }
.trainer-refresh .proof-flow__slide .proof-phone { box-shadow: 0 20px 45px #32102f19; }
.trainer-refresh .delivery-facts { margin-top: 25px; }
.trainer-refresh .trainer-sharing-hint { font-size: 11px; margin: 24px auto; text-align: center; color: var(--muted); }
.tr-instagram-note { display: flex; align-items: center; gap: 20px; margin: 32px 0 0; padding: 22px 27px; border: 1px solid #dfcee5; border-radius: 19px; background: #fff8; }
.tr-instagram-note > span { width: 46px; height: 46px; display: grid; place-items: center; background: linear-gradient(140deg,#a248b7,#c64a96,#d99e62); border-radius: 14px; flex: 0 0 auto; color: white; font-size: 32px; }
.tr-instagram-note h3 { font-size: 16px; letter-spacing: -.4px; margin: 0 0 7px; }
.tr-instagram-note p { font-size: 12px; line-height: 1.8; color: var(--muted); margin: 0; }
.trainer-refresh .money { gap: 75px; background: #fff; }
.trainer-refresh .money-dashboard { max-width: 500px; width: 100%; justify-self: center; }
.tr-admin-section { background: #faf6fa; }
.tr-admin-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; max-width: 1150px; margin: 0 auto; border-block: 1px solid #e5d9e9; }
.tr-admin-grid article { padding: 35px 30px; }
.tr-admin-grid article + article { border-left: 1px solid #e5d9e9; }
.tr-admin-grid article > span { font-size: 10px; font-weight: 750; color: #a888b5; }
.tr-admin-grid h3 { margin: 18px 0 12px; font-size: 19px; letter-spacing: -.5px; }
.tr-admin-grid p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.8; }
/* This section uses a light surface; keep its surrounding copy in the light-theme palette. */
.trainer-refresh .sw-watch-section { background: #fff; color: var(--ink); }
.trainer-refresh .sw-watch-section::before { background: radial-gradient(ellipse at 80% 55%, rgba(var(--profession-bright-rgb), .1), transparent 55%); }
.trainer-refresh .sw-watch-section .eyebrow { color: var(--plum); }
.trainer-refresh .sw-watch-copy h2,
.trainer-refresh .sw-watch-benefits h3,
.trainer-refresh .sw-watch-explanation b { color: var(--ink); }
.trainer-refresh .sw-watch-copy h2 em { background: var(--gradient); background-clip: text; -webkit-background-clip: text; color: transparent; }
.trainer-refresh .sw-watch-section .section-heading > p:not(.eyebrow),
.trainer-refresh .sw-watch-benefits p,
.trainer-refresh .sw-watch-explanation p,
.trainer-refresh .sw-watch-demo .sw-example-label { color: var(--muted); }
.trainer-refresh .sw-watch-benefits article > span { color: var(--plum); border-color: var(--border); background: var(--app-soft); }
.trainer-refresh .sw-watch-benefits { margin-top: 25px; }
.trainer-refresh .sw-watch-benefits article { padding-block: 14px; }
.tr-duo-section { background: linear-gradient(165deg,#eee8f2,#faf7fb 50%,#e9e0f0); border-block: 1px solid #e5dbea; }
.trainer-refresh .tr-duo-section > .section-heading { max-width: 650px; }
.tr-duo-footnote { max-width: 670px; margin: 16px auto 0; font-size: 11px; line-height: 1.8; text-align: center; color: #8a7793; }
.tr-privacy-section { display: grid; grid-template-columns: .55fr 1fr; align-items: center; gap: 60px; max-width: 1200px; margin: 0 auto; }
.tr-privacy-symbol { width: 190px; height: 210px; display: grid; place-items: center; background: radial-gradient(ellipse,#efe1f4,#f9f4fc); border: 1px solid #e4d5eb; border-radius: 80px 80px 95px 95px; justify-self: center; box-shadow: 0 25px 60px #32102f0a; color: #845296; }
.tr-privacy-symbol svg { width: 100px; height: 100px; }
.tr-privacy-points { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.tr-privacy-points span { padding: 8px 10px; border-radius: 7px; background: #eee5f2; font-size: 10px; color: #795588; }
.tr-backup-scope { margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--border); }
.tr-backup-scope h3 { margin: 0 0 12px; color: var(--ink); font-size: 15px; line-height: 1.5; }
.tr-backup-scope p { margin: 0 0 12px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.tr-backup-scope p:last-child { margin-bottom: 0; }
.tr-backup-scope strong { color: var(--ink); font-weight: 650; }
.trainer-refresh .pricing-strip { padding-block: 70px; }
.trainer-refresh .faq { padding-block: 85px; }
.trainer-refresh .faq-list details { padding-block: 18px; }
.trainer-refresh .faq-list summary { font-size: 14px; }
.trainer-refresh .faq-list p { font-size: 13px; line-height: 1.8; }
.tr-download-section { position: relative; text-align: center; background: #32102f; color: #fff; }
.tr-download-section > * { position: relative; z-index: 1; }
.tr-download-section .eyebrow { color: #cdae9a; }
.tr-download-section h2 { margin-bottom: 24px; font-size: clamp(42px,5vw,74px); letter-spacing: -.055em; line-height: 1.06; }
.tr-download-section h2 em { color: #e6c8e1; background: none; }
.tr-download-section > p:not(.eyebrow) { font-size: 15px; line-height: 1.8; max-width: 430px; margin: 0 auto; color: #d9c5d8; }
.tr-download-section .store-row { justify-content: center; margin: 25px 0; }
.tr-download-section > small { color: #b99fb8; font-size: 11px; }
.trainer-refresh footer { padding-top: 65px; }
@media (min-width: 1500px) {
 .trainer-refresh .trainer-coaching, .tr-clients-section, .tr-document-section, .trainer-refresh .money { padding-inline: max(8vw,calc((100vw - 1200px)/2)); max-width: none; }
}
@media (max-width: 1050px) {
 .trainer-refresh .profession-hero { gap: 28px; min-height: 760px; padding-top: 130px; }
 .trainer-refresh h1.tr-hero-title { font-size: clamp(43px,5.1vw,61px); }
 .trainer-refresh .hero-visual { height: 510px; }
 .trainer-refresh .profession-hero .hero-phone { width: 218px; }
 .tr-clients-section, .tr-document-section { gap: 40px; }
 .tr-client-card { padding: 23px; }
 .trainer-refresh .money { gap: 35px; }
 .tr-admin-grid article { padding-inline: 22px; }
}
@media (max-width: 760px) {
 .trainer-refresh .section { padding: 65px 23px; }
 .trainer-refresh .profession-hero { grid-template-columns: 1fr; padding: 115px 25px 48px; gap: 28px; }
 .trainer-refresh .hero-copy { max-width: 550px; justify-self: center; }
 .trainer-refresh h1.tr-hero-title { font-size: clamp(41px,8.2vw,61px); }
 .trainer-refresh .profession-hero .hero-audience { font-size: 8px; }
 .trainer-refresh .profession-back-link { margin-bottom: 23px; }
 .trainer-refresh .tr-hero-description { font-size: 14px; }
 .trainer-refresh .hero-visual { width: min(100%,420px); height: 510px; justify-self: center; }
 .trainer-refresh .profession-hero .profession-photo { inset: 10px 0 0 47px; }
 .trainer-refresh .profession-hero .hero-phone { width: 218px; bottom: 0; left: 0; }
 .trainer-refresh .profession-hero .float-card--reminder { top: 50px; right: -4px; padding: 10px; }
 .trainer-refresh .profession-hero .float-card--conflict { right: -2px; bottom: 30px; padding: 10px; }
 .trainer-refresh .tr-workflow { padding-inline: 25px; }
 .trainer-refresh .tr-workflow a { padding: 17px 0; }
 .trainer-refresh .trainer-coaching { gap: 30px; }
 .trainer-refresh .section-heading h2 { font-size: clamp(35px,7.6vw,48px); }
 .trainer-refresh .section-heading > p:not(.eyebrow) { font-size: 14px; }
 .trainer-refresh .trainer-screen-stage { padding: 24px 12px 20px; border-radius: 25px; }
 .trainer-refresh .trainer-phone-mount { width: 280px; }
 .trainer-refresh .trainer-feature-list { gap: 22px; }
 .tr-document-section, .tr-clients-section { grid-template-columns: 1fr; gap: 30px; }
 .tr-document-stage { padding: 10px 0; }
 .trainer-refresh .tr-client-head h3 { font-size: 19px; }
 .trainer-refresh .share-intro { gap: 26px; }
 .tr-instagram-note { padding: 18px; gap: 13px; }
 .tr-instagram-note > span { width: 36px; height: 36px; font-size: 25px; border-radius: 11px; }
 .tr-admin-grid { grid-template-columns: 1fr; }
 .tr-admin-grid article { padding: 26px 4px; }
 .tr-admin-grid article + article { border-left: 0; border-top: 1px solid #e5d9e9; }
 .tr-admin-grid h3 { margin-top: 12px; }
 .tr-privacy-section { grid-template-columns: 1fr; gap: 32px; }
 .tr-privacy-symbol { width: 105px; height: 118px; }
 .tr-privacy-symbol svg { width: 65px; height: 65px; }
 .trainer-refresh .tr-duo-section { padding-inline: 12px; }
 .tr-duo-section > .section-heading { padding-inline: 12px; }
 .tr-duo-footnote { padding-inline: 13px; font-size: 10px; }
 .trainer-refresh .pricing-strip { padding-block: 60px; }
 .trainer-refresh .faq { padding-block: 60px; }
 .trainer-refresh .tr-download-section { padding-block: 70px; }
}
@media (max-width: 374px) {
 .trainer-refresh .profession-hero { padding-inline: 20px; }
 .trainer-refresh h1.tr-hero-title { font-size: 37px; }
 .trainer-refresh .profession-hero .hero-phone { width: 195px; }
 .trainer-refresh .profession-hero .store-row { flex-wrap: wrap; gap: 9px; }
 .trainer-refresh .section { padding-inline: 18px; }
 .trainer-refresh .tr-duo-section { padding-inline: 8px; }
 .tr-client-card { padding: 20px 15px; }
 .tr-client-head { gap: 9px; }
}
@media (prefers-reduced-motion: reduce) {
 .trainer-refresh *, .trainer-refresh *::before, .trainer-refresh *::after { scroll-behavior: auto !important; }
}
