/* Progressive motion: all content is visible unless JS explicitly observes it. */
:root{--ease-editorial:cubic-bezier(.22,.68,0,1.01)}
.motion-pending{opacity:0;transform:translateY(28px)}
.motion-pending.is-visible{opacity:1;transform:none;transition:opacity .78s var(--ease-editorial),transform .9s var(--ease-editorial);transition-delay:var(--reveal-delay,0ms)}
.motion-pending:focus-within{opacity:1;transform:none;transition:none}
.drift-photo img{transform:translate3d(0,var(--photo-drift,0px),0) scale(1.055);transform-origin:center;will-change:transform}
.hero-picture,.training-photo,.signup-art{overflow:hidden}
.button{transition:background .3s,transform .35s var(--ease-editorial),box-shadow .35s}
.button:hover{transform:translateY(-3px);box-shadow:0 7px 18px #1d242012}
.button:active{transform:translateY(0);box-shadow:none}
.desktop-nav a{position:relative}
.desktop-nav a::after{content:'';position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--obsidian);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease-editorial)}
.desktop-nav a:hover::after{transform:scaleX(1)}
.audience-card .audience-screen{transition:transform .7s var(--ease-editorial)}
.audience-card:hover .audience-screen{transform:rotate(-4deg) translateY(-7px)}
.audience-card picture img{transition:transform 1.1s var(--ease-editorial)}
.audience-card:hover picture img{transform:scale(1.04)}
.professional-hero-photo img{object-position:53% center}
.user-still img{object-position:65% center;opacity:1}
.user-hero-art .hero-device{transform:rotate(7deg) translateX(-18px)}
.signup-art img{object-position:59% center}
.signup-art::after{background:linear-gradient(180deg,rgba(243,240,234,.9),rgba(243,240,234,.38) 40%,transparent 63%)}
.signup-art>span{background:var(--alabaster)}
.progress-editorial{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;background:var(--obsidian);color:var(--alabaster);max-width:none}
.progress-editorial .eyebrow{color:var(--bronze);margin-bottom:30px}
.progress-editorial h2{font-size:clamp(43px,4.5vw,70px)}
.progress-intro{font-size:19px;line-height:1.65;color:var(--alabaster);margin-top:30px}
.progress-formats article{display:grid;grid-template-columns:38px 1fr;gap:17px;border-top:1px solid #f3f0ea40;padding:30px 0}
.progress-formats article>span{font-size:12px;color:var(--bronze);padding-top:5px}
.progress-formats h3{font-size:27px;margin-bottom:14px}
.progress-formats p{color:var(--alabaster);font-size:16px;max-width:340px}
.progress-restored-copy>p{color:var(--alabaster);font-size:19px;line-height:1.65;max-width:460px}
.progress-restored-copy>.supporting-copy{font-size:16px;margin-top:24px}
.progress-restored-copy>.eyebrow{color:var(--bronze);font-size:11px;margin-top:36px;margin-bottom:0}
.connection-editorial{background:var(--recessed);padding:48px 38px;border-radius:220px 220px 24px 24px;min-height:580px;display:flex;flex-direction:column;justify-content:center}
.connection-editorial>.eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:42px}
.connection-word{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:clamp(26px,3vw,45px);letter-spacing:-.04em;line-height:1.5;border-top:1px solid var(--line)}
.connection-word>span{font-size:12px;letter-spacing:0;color:var(--terracotta)}
.connection-caption{font-size:12px;margin-top:28px}
.people-section:has(.connection-editorial){align-items:center}
/* Support is task driven: one selected topic and relevant answers. */
.support-hero{padding-top:60px;padding-bottom:60px}
.support-hero h1{font-size:clamp(57px,5.6vw,85px)}
.support-hero .contact-panel{padding:30px 35px}
.support-hero .contact-panel img{margin-bottom:22px}
.support-workbench{padding-top:30px;padding-bottom:85px}
.support-workbench-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 65px;align-items:end;margin-bottom:40px}
.support-workbench-heading>.eyebrow{grid-column:1/-1}
.support-workbench-heading h2{font-size:clamp(36px,3.4vw,52px)}
.support-workbench-heading>p:last-child{font-size:18px;justify-self:end}
.help-workspace{display:grid;grid-template-columns:.82fr 1.3fr;gap:40px;align-items:start}
.help-tabs{border-top:1px solid var(--line)}
.help-tabs button{width:100%;display:grid;grid-template-columns:26px 1fr 24px;align-items:center;gap:16px;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--obsidian);font-size:21px;letter-spacing:-.025em;padding:25px 12px;min-height:98px;transition:background .35s,color .35s,padding .35s var(--ease-editorial)}
.help-tabs .topic-index{font-size:11px;letter-spacing:.1em;color:var(--soft-ink)}
.help-tabs button[aria-selected=true]{background:var(--recessed);padding-left:22px}
.help-tabs button:hover{background:var(--recessed)}
.help-panel-shell{min-width:0;background:var(--raised);border:1px solid var(--line);border-radius:24px;overflow:hidden}
.help-panel{padding:38px 40px}
.help-panel>.eyebrow{color:var(--terracotta);font-size:11px;letter-spacing:.15em}
.help-panel>h3{font-size:34px;line-height:1.16;letter-spacing:-.025em;margin:22px 0 30px;max-width:430px}
.help-answers{border-top:1px solid var(--line)}
.help-answers summary{font-size:18px;line-height:1.45;min-height:76px;padding:20px 0}
.help-answers details p{font-size:16px;padding:0 20px 22px 0;line-height:1.7}
.help-panel-footer{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding-top:28px}
.help-panel-footer .text-link{font-size:14px}
.help-email{font-size:13px;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:44px}
.help-email span{font-size:18px}
.help-fallback{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}
details{scroll-margin-top:110px}
@media(max-width:1000px){.progress-editorial{gap:45px}.connection-editorial{padding:40px 30px;min-height:500px}.help-workspace{gap:25px}.help-tabs button{font-size:18px;gap:11px;padding:22px 10px;grid-template-columns:20px 1fr 20px}.help-panel{padding:30px}.help-panel>h3{font-size:29px}.support-workbench-heading{gap:20px 30px}.professional-hero-photo img{object-position:51% center}}
@media(max-width:700px){
 .motion-pending{transform:translateY(18px)}.motion-pending.is-visible{transition-duration:.6s,.65s;transition-delay:0ms}
 .drift-photo img{transform:none;will-change:auto}.button:hover{transform:none;box-shadow:none}
 .user-hero-art .hero-device{transform:rotate(7deg) translateX(-8px)}.user-still img{object-position:62% center}
 .feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-tab{font-size:16px}.feature-tab .feature-mobile{display:inline}
 .progress-editorial{grid-template-columns:1fr;gap:35px;padding:55px 24px}.progress-editorial h2{font-size:46px}.progress-editorial .eyebrow{margin-bottom:24px}.progress-intro{font-size:17px;margin-top:25px}.progress-formats article{gap:14px;padding:26px 0;grid-template-columns:25px 1fr}.progress-formats h3{font-size:25px}.progress-formats p{font-size:16px}
 .connection-editorial{width:calc(100% - 48px);padding:50px 28px 30px;min-height:460px;max-width:420px;border-radius:180px 180px 24px 24px}.connection-word{font-size:58px}.connection-editorial>.eyebrow{font-size:10px;text-align:center;max-width:250px;align-self:center;margin-bottom:28px}.connection-caption{font-size:12px;margin-top:24px}.people-section:has(.connection-editorial){padding-top:50px;gap:34px}
 .professional-hero-photo img{object-position:50% center}.professional-hero-photo{height:330px}
 .support-hero{padding:35px 24px 40px;gap:30px}.support-hero h1{font-size:clamp(47px,12.4vw,63px)}.support-hero .contact-panel{padding:26px}
 .support-workbench{padding:15px 24px 50px}.support-workbench-heading{display:block;margin-bottom:28px}.support-workbench-heading h2{font-size:41px;margin:22px 0}.support-workbench-heading>p:last-child{font-size:16px}
 .help-workspace{grid-template-columns:1fr;gap:22px}.help-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:18px;overflow:hidden}
 .help-tabs button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;font-size:16px;line-height:1.35;min-height:118px;padding:18px;letter-spacing:-.02em}.help-tabs button:nth-child(odd){border-right:1px solid var(--line)}.help-tabs button:nth-child(n+3){border-bottom:0}.help-tabs button[aria-selected=true]{padding-left:18px;background:var(--obsidian);color:var(--alabaster)}.help-tabs button[aria-selected=true] .topic-index{color:var(--alabaster)}.help-tab-arrow{display:none}.help-tabs .topic-index{font-size:10px}.help-panel{padding:26px 22px}.help-panel>.eyebrow{font-size:10px;letter-spacing:.1em}.help-panel>h3{font-size:28px;margin:22px 0 25px}.help-answers summary{font-size:17px;gap:16px;padding:18px 0;min-height:76px}.help-answers details p{font-size:15px;padding-right:0}.help-panel-footer{gap:16px}.help-panel-footer .text-link{font-size:14px}.help-email{font-size:13px;gap:15px}
 .signup-art img{object-position:62% center}.signup-art::after{background:linear-gradient(90deg,rgba(243,240,234,.87),rgba(243,240,234,.15) 72%)}
}
@media(max-width:360px){.connection-word{font-size:49px}.connection-editorial{padding:48px 23px 26px;min-height:405px}.help-tabs button{padding:15px;font-size:14px;min-height:115px}.help-tabs button[aria-selected=true]{padding-left:15px}.help-panel{padding:25px 18px}.help-panel>h3{font-size:25px}.help-email{font-size:12px;gap:10px}.progress-editorial h2{font-size:41px}}
@media(prefers-reduced-motion:reduce){
 .motion-pending,.motion-pending.is-visible{opacity:1!important;transform:none!important;transition:none!important}
 .drift-photo img{transform:none!important;will-change:auto}
 *,*::before,*::after{animation:none!important;transition:none!important}
}
@media(max-width:700px){.connection-word{font-size:30px}.progress-restored-copy>p{font-size:17px}.progress-restored-copy>.supporting-copy{font-size:16px}.progress-restored-copy>.eyebrow{font-size:11px}}
@media(max-width:360px){.connection-word{font-size:25px}}

/* Interaction layer: existing layout and photography stay intact. */
.magnetic-control{translate:var(--magnet-x,0px) var(--magnet-y,0px);transition:translate .45s var(--ease-editorial),transform .35s var(--ease-editorial),background .3s,box-shadow .35s,scale .18s}
.magnetic-control:active{scale:.97}
.pointer-device{rotate:var(--tilt-axis-x,1) var(--tilt-axis-y,0) 0 var(--tilt-angle,0deg);filter:drop-shadow(var(--depth-x,0px) var(--depth-y,10px) 15px #1d24200f);transition:rotate .65s var(--ease-editorial),filter .65s var(--ease-editorial),transform .7s var(--ease-editorial)}
.pointer-device.is-tilting{transition-duration:.22s,.3s,.7s}
.user-hero-art,.app-device-stage,.user-card{perspective:1000px}
.text-link,.header-cta,.help-email,.contact-email{position:relative}
.text-link::after,.header-cta::after,.help-email::after,.contact-email::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease-editorial);pointer-events:none}
.text-link:hover::after,.header-cta:hover::after,.help-email:hover::after,.contact-email:hover::after,.text-link:focus-visible::after,.header-cta:focus-visible::after,.help-email:focus-visible::after,.contact-email:focus-visible::after,.audience-card:hover .text-link::after{transform:scaleX(1);transform-origin:left}
.help-tabs button{position:relative;isolation:isolate;overflow:hidden}
.help-tabs button::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(150px circle at var(--pointer-x,50%) var(--pointer-y,50%),#b89f8255,transparent 85%);transition:opacity .35s}
.help-tabs button.pointer-lit::before{opacity:1}
.help-tabs button:focus-visible{outline-offset:-4px}
.help-tabs button:active,.feature-tab:active{background:var(--recessed)}
@media(max-width:700px){.help-tabs button[aria-selected=true]:active{background:var(--obsidian)}}
@media(hover:none),(pointer:coarse){
 .magnetic-control{translate:none}.pointer-device{rotate:none;filter:none}
 .help-tabs button::before{display:none}
 .help-tabs button:active{box-shadow:inset 0 0 0 2px var(--bronze)}
}
@media(prefers-reduced-motion:reduce){
 .magnetic-control{translate:none!important;scale:1!important}
 .pointer-device{rotate:none!important;filter:none!important}
 .help-tabs button::before{display:none}
}

/* Text color replaces decorative arrows as the interaction cue. */
.feature-tab{grid-template-columns:25px 1fr;transition:color .25s,background .25s}
.help-tabs button{grid-template-columns:26px 1fr}
a:not(.brand),summary{transition:color .25s}
.magnetic-control{transition:translate .45s var(--ease-editorial),transform .35s var(--ease-editorial),background .3s,box-shadow .35s,scale .18s,color .25s}
a:not(.brand):is(:hover,:focus-visible),summary:is(:hover,:focus-visible),.feature-tab:is(:hover,:focus-visible){color:var(--terracotta)}
.help-tabs button:is(:hover,:focus-visible,[aria-selected=true]){color:var(--terracotta)}
.button:is(:hover,:focus-visible),.text-link.light:is(:hover,:focus-visible){color:var(--bronze)}
.pricing-bottom .button:is(:hover,:focus-visible){color:var(--terracotta)}
.audience-card:is(:hover,:focus-visible) .text-link{color:var(--terracotta)}
.audience-card.pro-card:is(:hover,:focus-visible) .text-link{color:var(--bronze)}
.billing-control button:is(:hover,:focus-visible){color:var(--bronze)}
.billing-control button[aria-pressed=true]:is(:hover,:focus-visible){color:var(--terracotta)}
@media(max-width:1000px){.help-tabs button{grid-template-columns:20px 1fr}}
@media(max-width:700px){
 .help-tabs button[aria-selected=true]{color:var(--bronze)}
 .help-tabs button[aria-selected=true] .topic-index{color:var(--bronze)}
}
@media(prefers-reduced-motion:reduce){a:not(.brand),summary,.feature-tab,.magnetic-control{transition:none}}

/* Approved October copy: existing components, with room for the longer headlines. */
.home-hero{height:auto;min-height:760px}
.home-hero .hero-content{padding-top:65px;padding-bottom:65px}
.home-hero h1{font-size:clamp(58px,5.7vw,86px);max-width:650px}
.home-hero .hero-description{max-width:470px}
.home-page .audience-section .section-heading,.users-page .app-section .section-heading{display:block}
.home-page .audience-section .section-heading h2{max-width:930px;margin-top:24px}
.users-page .app-section .section-heading h2{max-width:800px;margin-top:24px}
.home-page .audience-card{min-height:565px;align-items:flex-start}
.home-page .audience-card h3{font-size:clamp(30px,2.8vw,43px)}
.home-page .audience-card p:not(.eyebrow){max-width:380px}
.home-page .user-card>div:first-child{max-width:80%}
.home-page .audience-screen{width:155px;right:-30px;bottom:-165px}
.home-page .pro-card{align-items:flex-end}
.home-page .training-copy>p:not(.eyebrow){max-width:460px}
.professionals-page .professional-hero h1{font-size:clamp(50px,5vw,78px)}
.professionals-page .professional-workflow .section-heading{display:block}
.professionals-page .professional-workflow .section-heading h2{max-width:1000px}
.professional-workflow .steps h3.step-no{font-size:11px;line-height:1.6;letter-spacing:.14em;margin-bottom:30px;font-weight:500}
.professionals-page .pricing-heading h2{max-width:760px}
.users-page .feature-tab{line-height:1.35}
.users-page .feature-fallback{display:grid;gap:28px;margin-top:30px}
.feature-fallback h3{margin-bottom:16px}
.support-audiences{display:flex;gap:6px;padding:5px;border:1px solid var(--line);border-radius:30px;width:fit-content;margin-bottom:32px}
.support-audiences button{border:0;border-radius:24px;background:transparent;padding:13px 24px;min-height:48px;font-size:16px;transition:color .25s,background .25s}
.support-audiences button[aria-pressed=true]{background:var(--obsidian);color:var(--alabaster)}
.support-audiences button:hover,.support-audiences button:focus-visible{color:var(--terracotta)}
.support-audiences button[aria-pressed=true]:hover,.support-audiences button[aria-pressed=true]:focus-visible{color:var(--bronze)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.audience-static-heading{font-size:28px;margin:30px 0}
.support-enhanced .audience-static-heading{display:none}
.support-page:not(.support-enhanced) .help-workspace{display:block}
.support-page:not(.support-enhanced) .help-panel+.help-panel{border-top:1px solid var(--line)}
.support-page:not(.support-enhanced) .support-audience{margin-top:40px}
.help-answers a{border-bottom:1px solid currentColor}
@media(min-width:701px) and (max-width:1000px){
 .home-hero .hero-content{padding-top:50px;padding-bottom:50px}
 .home-hero h1{max-width:550px}
 .home-page .audience-card{padding:30px;min-height:620px}
 .home-page .user-card>div:first-child{max-width:100%}
 .home-page .audience-screen{bottom:-220px;opacity:.4}
 .professionals-page .professional-hero h1{font-size:clamp(46px,5.4vw,56px)}
 .professionals-page .pricing-heading{align-items:flex-start;flex-direction:column}
}
@media(max-width:700px){
 .home-hero{min-height:0}
 .home-hero .hero-content{padding:34px 24px 0}
 .home-hero h1{font-size:clamp(46px,12.2vw,64px);max-width:580px}
 .home-hero .hero-description{max-width:520px}
 .home-page .audience-card{min-height:535px;padding:30px}
 .home-page .audience-card h3{font-size:34px}
 .home-page .user-card>div:first-child{max-width:100%}
 .home-page .audience-card p:not(.eyebrow){max-width:100%}
 .home-page .audience-screen{width:130px;bottom:-190px;right:-20px}
 .home-page .pro-card{min-height:510px}
 .home-page .audience-section .section-heading h2{font-size:42px}
 .users-page .feature-tab{padding:12px 9px;min-height:76px;font-size:15px}
 .users-page .feature-mobile{max-width:180px}
 .professionals-page .professional-hero h1{font-size:clamp(43px,11.5vw,65px)}
 .professional-workflow .steps h3.step-no{margin-bottom:18px}
 .support-audiences{width:100%;border-radius:22px;gap:4px}
 .support-audiences button{flex:1;min-width:0;padding:13px 10px;border-radius:18px;font-size:15px;line-height:1.35}
}
@media(prefers-reduced-motion:reduce){.support-audiences button{transition:none}}


/* Reserve the phone's area below the longer card copy at narrow widths. */
@media(min-width:701px) and (max-width:1000px){.home-page .user-card{padding-bottom:150px}}
@media(max-width:700px){
 .home-page .user-card{padding-bottom:175px}
 .home-page .audience-screen{bottom:-130px;opacity:1}
}


/* Homepage branding now introduces the hero. */
.home-hero .hero-brand{margin-bottom:32px}
.home-page .footer-bottom{border-top:0;padding-top:0}
@media(max-width:700px){.home-hero .hero-brand{margin-bottom:24px}}

/* Mobile feature cards: desktop explorer retains its original layout. */
.mobile-feature-carousel{display:none}
@media(max-width:700px){
 .users-page .app-section>.app-layout,.users-page .app-section .feature-fallback{display:none}
 .mobile-feature-carousel{display:block;margin-top:36px;min-width:0}
 .mobile-feature-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc(100% - 38px);align-items:stretch;gap:16px;overflow-x:auto;overflow-y:hidden;margin:0 -24px;padding:0 24px 24px;scroll-padding-inline:24px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .mobile-feature-track::-webkit-scrollbar{display:none}
 .mobile-feature-track.is-sliding{scroll-snap-type:none}
 .mobile-feature-track:focus-visible{outline:2px solid var(--terracotta);outline-offset:-3px}
 .mobile-feature-card{box-sizing:border-box;min-width:0;display:flex;flex-direction:column;scroll-snap-align:start;scroll-snap-stop:always;padding:24px;background:var(--recessed);border:1px solid var(--line);border-radius:24px}
 .mobile-feature-card:nth-child(even){background:var(--raised)}
 .mobile-feature-card h3{font-size:28px;line-height:1.14;letter-spacing:-.025em;margin:0 0 16px;min-height:2.28em}
 .mobile-feature-card>p{font-size:16px;line-height:1.5;margin:0 0 26px}
 .mobile-feature-phone{width:180px;max-width:100%;margin:auto auto 0;padding:5px;border:1px solid var(--obsidian);border-radius:27px;background:var(--obsidian);box-shadow:8px 15px 25px #1d24201f}
 .mobile-feature-phone img{display:block;width:100%;height:auto;aspect-ratio:828/1792;border-radius:21px}
 .mobile-feature-dots{display:flex;justify-content:center;gap:0;margin-top:0}
 .mobile-feature-dots button{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;background:transparent;border-radius:50%}
 .mobile-feature-dots button span{width:6px;height:6px;border-radius:5px;background:var(--sage);transition:width .3s ease,background .3s ease}
 .mobile-feature-dots button[aria-current=true] span{width:24px;background:var(--terracotta)}
 .mobile-feature-dots button:focus-visible{outline:2px solid var(--terracotta);outline-offset:-5px}
}
@media(max-width:360px){.mobile-feature-card{padding:20px}.mobile-feature-card h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.mobile-feature-dots button span{transition:none}}
