/* LP-specific usability layer. Keep claims, prices and shared legal pages untouched. */
:root{--lp-header-offset:100px}
html{scroll-padding-top:var(--lp-header-offset)}
body{overflow-x:visible}
main{min-width:0}
p{ text-wrap:pretty }
section,[id]{scroll-margin-top:20px}
.text-unit{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.nav-links a,.guest-link,.foot-group a,.promo-bar a{display:inline-flex;align-items:center;min-height:44px}
.nav-links a{padding:8px 4px}
.nav-links a:hover,.nav-links a:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
.promo-bar .in{font-size:13px}
.promo-bar a{flex-shrink:0}
.hero>.in{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(24px,4vw,56px)}
.hero .txt{min-width:0}
.hero .eyebrow{line-height:1.7;letter-spacing:.06em}
.audience-break{display:none}
.audience-secondary{display:block;margin-top:4px;color:var(--sub);font-size:12px}
@media(max-width:380px){.audience-break{display:block}}
.hero h1{font-size:clamp(34px,3.75vw,52px);line-height:1.45}
.hero .headline-line{white-space:normal;overflow-wrap:anywhere}
.hero .lead{font-size:17px;line-height:1.85}
.hero-pills span{font-size:13px;padding:6px 11px;background:#fff}
.hero .note,.hero-plan-note{font-size:14px;line-height:1.7}
.hero-plan-note{max-width:38em}
.guest-link{font-size:14px;line-height:1.6}
.hero .guest-link{margin-top:10px}
.hero .cta-row{flex-wrap:wrap;gap:8px 20px;margin-top:24px}
.scene-badge{font-size:12px}
.hero-scene figcaption small{font-size:11px;line-height:1.6}
.trust span{font-size:14px}
.sec-head{margin-bottom:36px}
.sec-head>p{font-size:16px;max-width:46em}
#features .features{grid-template-columns:repeat(3,minmax(0,1fr))}
#features .card{padding:28px;min-width:0}
#features .card h3{font-size:21px;line-height:1.55;text-wrap:pretty}
#features .card p{font-size:16px;line-height:1.85}
.card-foot,.feature-no{font-size:13px}
.onboarding-steps .stat{min-width:0;padding:24px}
.onboarding-steps .step-index{font-size:14px;letter-spacing:.06em}
.onboarding-steps .lbl{font-size:15px;line-height:1.8}
.team-cta-row{justify-content:center}
.plan{padding:30px;gap:0}
.plan-for{min-height:0;margin-bottom:18px;font-size:14px;line-height:1.8}
.plan li{font-size:15px;line-height:1.8}
.price{font-variant-numeric:tabular-nums}
.price small{font-size:14px}
.plan .pbtn{font-size:15px;min-height:52px}
.badge2{font-size:12px}
.store-cost{font-size:15px;padding:14px}
.plans-hint{max-width:900px;padding:20px 24px;border:1px solid #cbb88f;border-radius:14px;background:#fff;font-size:15px;text-align:left}
.staff-prices{justify-content:flex-start;font-size:17px;margin:8px 0}
.plans-hint p:last-child{font-size:14px}
.lp-details>summary,.comparison-details>summary{font-size:16px;min-height:56px;line-height:1.7}
.lp-details>summary:hover,.comparison-details>summary:hover{color:var(--gold)}
.ticket-note{font-size:14px;text-align:left;line-height:1.9}
.cmp-hint{font-size:14px}
.cmp{font-size:14px;min-width:850px}
.cmp th,.cmp td{padding:16px}
.cmp th[scope="row"]{background:#fff;color:var(--text);font-weight:500;text-align:left;min-width:220px}
.cmp thead th{font-size:15px}
.cmp .psub{font-size:13px}
.cmp .no{color:var(--sub)}
.cmp-scroll:focus-visible{outline-offset:-4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.faqs summary{font-size:17px;line-height:1.7}
.faqs .a{font-size:16px;line-height:1.95}
.step p,.small-note,.shot figcaption span{font-size:14px}
.shot figcaption strong{font-size:15px}
.partner-lead{font-size:16px}
.partner-box ul,.partner-box ol,.partner-note{font-size:15px}
.guide p{font-size:15px}
.tag,.more,.guide-all{font-size:13px}
.cf-field label{font-size:15px}
.cf-field label span{font-size:13px}
.cf-field input,.cf-field select,.cf-field textarea{font-size:16px}
.cf-field input:focus-visible,.cf-field select:focus-visible,.cf-field textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.cf-field [aria-invalid="true"]{border-color:var(--danger)}
.cf-privacy{font-size:14px;line-height:1.9}
.cf-msg{font-size:15px;line-height:1.8}
.cf-msg:not(:empty){padding:16px;border:1px solid currentColor;border-radius:10px;text-align:left;background:#fff}
.cf-msg:focus{outline:3px solid var(--gold);outline-offset:3px}
.contact-paths>div{padding:20px}
.contact-paths span{font-size:15px}
.foot-group a{font-size:15px;line-height:1.6}
.foot-group{gap:2px}
.foot-bottom{color:#b9c5d1;font-size:13px}
/* Information must never remain invisible when navigating with a keyboard or printing. */
.js-reveal .reveal{opacity:1;transform:none;transition:none}
.mobile-cta[aria-hidden="true"]{visibility:hidden}
.mobile-cta a{font-size:16px}
@media(min-width:821px) and (max-width:1060px){
  .hero>.in{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px}
  .hero h1{font-size:clamp(32px,3.8vw,40px)}
  .hero .lead{font-size:16px}
  .hero-scene{min-height:460px}
  .hero .scene-screen{width:170px;height:365px;right:16px}
  .hero-scene figcaption{left:16px;bottom:16px;padding:12px;max-width:52%}
  .scene-title{font-size:20px}
  .nav .in{gap:14px}
  .nav-links{gap:14px}
}
@media(max-width:820px){
  :root{--lp-header-offset:132px}
  .nav .in{display:flex;flex-wrap:wrap;gap:0 12px;padding-top:8px}
  .nav .brand{min-height:48px}
  .nav .cta{min-height:44px;margin-left:auto}
  .nav-links{display:flex;order:3;justify-content:space-between;width:100%;gap:8px;margin:4px 0 0;border-top:1px solid var(--line)}
  .nav-links a,.nav-links .nav-price{display:inline-flex;justify-content:center;flex:1;font-size:14px;min-height:44px}
  .hero>.in{grid-template-columns:minmax(0,1fr);width:calc(100% - 40px)}
  .hero h1{font-size:clamp(32px,6.8vw,48px)}
  .hero .lead{font-size:16px;max-width:38em}
  .hero-plan-note{margin-inline:auto}
  .hero-scene{max-width:560px}
  #features .features{grid-template-columns:minmax(0,1fr)}
  #features .card{padding:24px}
  #features .card h3{margin-top:10px}
  .onboarding-steps{grid-template-columns:1fr}
  .onboarding-steps .stat{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;padding:22px}
  .onboarding-steps .step-index{grid-row:span 2;align-self:start;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--gold-soft)}
  .onboarding-steps .num{margin-top:0;font-size:19px}
  .onboarding-steps .lbl{grid-column:2}
}
@media(max-width:560px){
  html,body{max-width:none;overflow-x:visible}
  body{font-size:16px;padding-bottom:calc(80px + env(safe-area-inset-bottom))}
  .wrap,.nav .in,.promo-bar .in{width:calc(100% - 32px);max-width:none}
  .promo-bar .in{min-height:40px;gap:8px;font-size:11px}
  .promo-short{white-space:normal;text-overflow:clip}
  .promo-bar a{min-height:44px}
  .nav .in{gap:0 8px}
  .nav .cta{padding:10px 14px;font-size:13px}
  .brand{font-size:18px}
  .hero{padding:28px 0 36px}
  .hero>.in{width:calc(100% - 32px);gap:24px}
  .hero .eyebrow{font-size:12px;gap:8px}
  .hero h1{font-size:clamp(29px,8vw,40px);letter-spacing:-.035em}
  .hero .lead{font-size:16px;line-height:1.8;margin-top:16px}
  .hero .cta-row{gap:2px;margin-top:20px}
  .hero-pills{display:flex;justify-content:center;gap:6px;margin-top:16px}
  .hero-pills span{font-size:12px;padding:5px 10px}
  .hero .note,.hero-plan-note{font-size:13px}
  .hero .note{margin-top:8px}
  .hero-scene{min-height:320px}
  .hero-scene figcaption{max-width:calc(100% - 170px);left:12px;bottom:12px;padding:10px}
  .scene-title{font-size:16px}
  .scene-kicker{font-size:9px;letter-spacing:.05em}
  .hero .scene-screen{right:12px;top:18px;width:140px;height:288px}
  .scene-badge{font-size:11px;padding:8px 10px}
  .trust span{font-size:13px}
  .sec-head h2{font-size:29px}
  .sec-head>p{font-size:16px;text-align:left}
  .plan{padding:26px 22px}
  .plans{gap:24px}
  .plans-hint{padding:18px;font-size:15px}
  .staff-prices{gap:4px 12px;font-size:16px}
  .lp-details{padding-inline:16px}
  .lp-details>summary,.comparison-details>summary{font-size:15px}
  .comparison-details>summary{padding:18px;gap:14px}
  .cmp th:first-child{position:sticky;left:0;z-index:1;box-shadow:2px 0 0 var(--line);max-width:142px;min-width:142px;width:142px}
  .cmp .c-feat{width:142px}
  .cmp-hint{margin-inline:18px;font-size:13px}
  .faqs summary{font-size:16px;padding-right:44px}
  .faqs .a{font-size:16px;padding-right:8px}
  .final .inner{padding:52px 22px}
  .final p{font-size:16px}
  .contact-paths{grid-template-columns:1fr}
  .cform{padding:24px 18px}
  .cf-privacy{font-size:13px}
  .cf-row{grid-template-columns:1fr}
  .guide p,.partner-lead,.partner-note{font-size:15px}
  .foot-groups{gap:24px 16px}
  .foot-group b{font-size:13px}
}
/* Individual plans lead; team pricing stays available with its full cost notes. */
.solo-plans{max-width:1100px;grid-template-columns:repeat(3,minmax(0,1fr))}
.store-plans{max-width:900px;margin:28px auto 0}
.store-plans>.plans{grid-template-columns:1fr;padding-bottom:0}
.store-plans .plans-hint{margin-bottom:22px}
@media(max-width:899px){
  .solo-plans{grid-template-columns:1fr;max-width:560px}
}
@media print{
  :root{--lp-header-offset:0px}
  html,body{overflow:visible!important;background:#fff!important;padding:0!important;color:#14243b}
  .skip-link,.promo-bar,.nav,.mobile-cta,.contact-sec,.hero-scene,.more-tools,.lp-resources,footer{display:none!important}
  .wrap{width:100%!important;max-width:none!important}
  section{padding:24px 0;scroll-margin:0}
  .hero>.in{display:block;width:100%}
  .hero h1{font-size:30pt}
  .hero{background:#fff}
  .hero .guest-link,.hero .cta-row,.team-cta-row,.pbtn,.cmp-cta,.final-section{display:none!important}
  .features,.plans{display:block}
  .card,.plan,.stat,.faqs details{break-inside:avoid;margin-bottom:12px;box-shadow:none}
  .price-sec{background:#fff}
  .lp-details,.comparison-details{border:0;padding:0}
  .cmp-scroll{overflow:visible}
  .cmp{min-width:0;font-size:10pt}
  .cmp th,.cmp td{padding:6px}
  .reveal{opacity:1!important;transform:none!important}
}
