/* Public customer journey audit. Scoped to public pages, checkout and authentication. */
.public-page .site-header nav{gap:22px}
.public-page .site-header nav>a:not(.button){font-size:14px}
.public-page .site-header .button-small{font-size:14px}
.public-page .site-header [aria-current=page]{color:var(--blue)}
.public-page .site-header [aria-current=page]::after{right:0!important}
.public-page .contact-intro>*,.public-page .contact-location>*,.public-page .questions-layout>*{min-width:0}
.public-page .contact-intro h1{font-size:clamp(38px,5.4vw,76px)}
.public-page .contact-intro .highlight{white-space:normal;overflow-wrap:anywhere}
.public-page .contact-intro p,.public-page .location-copy p{font-size:18px;line-height:1.75}
.public-page .contact-intro .lead{font-size:22px;line-height:1.6}
.public-page .contact-intro .text-link,.public-page .text-link{font-size:16px;line-height:1.5;max-width:100%;gap:20px}
.public-page .contact-panel .contact-tip{font-size:15px;line-height:1.7}
.public-page .contact-panel{padding:32px;min-width:0}
.public-page .contact-panel h2{font-size:clamp(30px,3.1vw,43px)}
.public-page .contact-email{overflow-wrap:anywhere;font-size:20px}
.public-page .contact-number{font-size:32px}
.public-page .contact-location figcaption{font-size:14px;line-height:1.65}
.public-page .contact-record dt,.public-page .contact-record dd{font-size:16px}
.public-page .button{font-size:16px;white-space:normal}
.public-page .questions-heading>p:last-child{font-size:20px;line-height:1.7}
.public-page .eyebrow,.public-page .mini-label{font-size:12px}
.public-page .question-index{font-size:16px;gap:12px}
.public-page .question-index>a{padding:7px 0}
.public-page .question-index>.button{padding:16px;color:#fff}
.public-page .faq-list summary{font-size:18px;line-height:1.5;min-height:56px}
.public-page .faq-list details p{font-size:17px;line-height:1.75}
.public-page .faq-list details a{text-decoration:underline;text-underline-offset:4px}
.public-page .task-list dt{font-size:18px}
.public-page .task-list dd{font-size:16px;line-height:1.7}
.public-page .small-note{font-size:14px}
.public-page .specialist-service-list strong{font-size:23px;line-height:1.35}
.public-page .specialist-service-list span span{font-size:17px;line-height:1.65}
.public-page .specialist-service-list>a>span{min-width:0}
.public-page .specialist-request p{font-size:17px}
.public-page .specialist-request label{font-size:16px;line-height:1.5}
.public-page .specialist-request .specialist-demo-note,.public-page .specialist-request .specialist-form-hint{font-size:14px!important}
.public-page .beam-footer-intro>p:not(.beam-label),.public-page .beam-column a{font-size:16px}
.public-page .beam-label{font-size:12px}
.public-page .company-identity,.public-page .beam-footer-note,.public-page .beam-footer-note .motion-toggle{font-size:13px;line-height:1.7}
.public-page .beam-column a{min-height:46px;overflow-wrap:anywhere}
.public-page .beam-footer-content{gap:42px}
body[data-surface=checkout] .field-label{font-size:16px;line-height:1.5}
body[data-surface=checkout] .hint,body[data-surface=checkout] .local-note,body[data-surface=checkout] #draft-state{font-size:15px;line-height:1.7}
body[data-surface=checkout] .portal-page-head>.eyebrow{font-size:12px}
body[data-surface=checkout] .portal-page-head>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:65ch}
body[data-surface=checkout] .btn{font-size:16px;min-height:48px;white-space:normal}
body[data-surface=checkout] .text-btn{font-size:15px;min-height:44px}
body[data-surface=checkout] .checkout-progress{font-size:15px}
.auth-screen .auth-form-area label{font-size:16px}
.auth-screen .auth-intro{font-size:17px;line-height:1.7}
.auth-screen .auth-form-area .auth-hint,.auth-screen .auth-help,.auth-screen .auth-help p,.auth-screen .auth-test-note,.auth-screen .auth-next,.auth-screen .auth-top,.auth-screen .auth-status{font-size:14px;line-height:1.7}
.auth-screen .auth-help summary{min-height:44px;padding-block:10px}
.auth-screen .auth-primary{font-size:16px}
.auth-screen .auth-password button{font-size:14px}
.auth-screen .auth-footer{margin-inline:0;min-width:0;flex-wrap:wrap;font-size:13px;gap:12px}
.auth-screen .auth-form-area>.auth-eyebrow,.auth-screen .auth-eyebrow{font-size:12px}
@media(max-width:1000px){
 .public-page .site-header .menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line);background:#fff;color:var(--blue);padding:10px 14px;font:700 14px var(--font)}
 .public-page .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:16px 32px 24px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 18px #003da516;flex-direction:column;align-items:stretch;gap:0}
 .public-page .site-header nav.is-open{display:flex}
 .public-page .site-header nav>a:not(.button){font-size:16px;padding:14px 0;border-bottom:1px solid var(--line)}
 .public-page .site-header nav>.button{font-size:16px;margin-top:16px;padding:16px}
 .public-page .site-header .brand{font-size:23px}
 .public-page .contact-intro{grid-template-columns:1fr;gap:32px}
 .public-page .contact-intro>div:first-child{max-width:700px}
 .public-page .contact-panel{max-width:700px;width:100%}
 .public-page .questions-layout{grid-template-columns:1fr;gap:32px}
 .public-page .question-index{position:static;display:flex;flex-wrap:wrap;flex-direction:row;gap:10px 24px;border-block:1px solid var(--line);padding:20px 0}
 .public-page .question-index .mini-label{width:100%}
 .public-page .question-index>.button{margin:0}
}
@media(max-width:600px){
 .public-page .contact-intro{padding:30px 0 48px}
 .public-page .contact-intro h1{font-size:clamp(36px,9.6vw,52px)}
 .public-page .contact-intro .lead{font-size:20px}
 .public-page .contact-panel{padding:24px 20px}
 .public-page .contact-number{font-size:28px}
 .public-page .contact-email{font-size:17px}
 .public-page .contact-record dl>div{grid-template-columns:1fr;gap:6px}
 .public-page .contact-record dd{margin:0}
 .public-page .faq-list summary{font-size:17px;gap:14px}
 .public-page .specialist-intro h1{font-size:clamp(38px,10vw,52px)}
 .public-page .specialist-intro .button{margin-right:0}
 .public-page .specialist-service-list strong{font-size:21px}
 .public-page .specialist-request .button{font-size:16px}
 .public-page .beam-footer-content{grid-template-columns:1fr;gap:28px}
 .public-page .beam-label{margin-bottom:10px}
 body[data-surface=checkout] .checkout-progress{font-size:13px;gap:10px}
}

/* Final public presentation, requested 17 October. Operational behavior unchanged. */
body[data-surface=checkout]>.test-banner,body.auth-screen>.test-banner{display:none}
body[data-surface=checkout] .product-footer details,body[data-surface=checkout] #example{display:none}
body.auth-screen .auth-layout{min-height:100svh}

/* Clear choices and continuous pricing throughout the public application. */
body[data-surface=checkout] .checkout-workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:28px;align-items:start;margin:24px 0}
body[data-surface=checkout] .checkout-workspace #order-form{min-width:0;margin:0;padding:32px}
body[data-surface=checkout] #order-form[data-journey]>.portal-split{display:block;margin:0}
body[data-surface=checkout] #order-form[data-journey]>.portal-split>section{padding:0;border:0;background:none}
body[data-surface=checkout] #order-form[data-journey] h2{font-size:25px;line-height:1.3;margin:24px 0}
body[data-surface=checkout] #order-form[data-journey] .field{min-height:50px;font-size:17px}
body[data-surface=checkout] .checkout-form-progress{display:flex;gap:20px;border-bottom:1px solid #d5deed;padding-bottom:18px;color:#5b6a80;font-size:15px;line-height:1.5}
body[data-surface=checkout] .checkout-form-progress [aria-current]{color:#003da5;font-weight:700}
body[data-surface=checkout] .checkout-field-note{font-size:14px;line-height:1.6;color:#52627b;margin:16px 0}
body[data-surface=checkout] .checkout-summary{position:sticky;top:24px;min-width:0;background:#003da5;color:#fff;padding:30px;border-radius:12px}
body[data-surface=checkout] .checkout-summary .eyebrow{font-size:12px;letter-spacing:1.5px;color:#fff;margin:0 0 12px}
body[data-surface=checkout] .checkout-summary h2{color:#fff;font-size:29px;margin:0 0 24px}
body[data-surface=checkout] .checkout-summary .checkout-amount{font-family:Space,Arial,sans-serif;font-weight:700;font-size:clamp(29px,3vw,42px);line-height:1.2;letter-spacing:-1px;color:#fff;margin:0 0 20px}
body[data-surface=checkout] .checkout-amount span{display:block;margin-top:7px;font-family:Arial,sans-serif;font-size:15px;font-weight:400;letter-spacing:0}
body[data-surface=checkout] .checkout-summary p{font-size:16px;line-height:1.6;color:#fff}
body[data-surface=checkout] .checkout-breakdown{border-top:1px solid #ffffff50;padding-top:12px;margin-top:20px}
body[data-surface=checkout] .checkout-breakdown summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:16px;font-weight:700}
body[data-surface=checkout] .checkout-breakdown summary:focus-visible{outline-color:#ffd200}
body[data-surface=checkout] .checkout-breakdown dl{font-size:15px;line-height:1.5;margin:12px 0 20px}
body[data-surface=checkout] .checkout-breakdown dl>div{display:flex;justify-content:space-between;gap:16px;margin:10px 0}
body[data-surface=checkout] .checkout-breakdown dd{margin:0;white-space:nowrap;font-weight:700}
body[data-surface=checkout] .checkout-breakdown ul{padding-left:20px;line-height:1.6;font-size:15px}
body[data-surface=checkout] .checkout-breakdown li{margin:9px 0}
body[data-surface=checkout] .checkout-breakdown>p{font-size:14px;border-top:1px solid #ffffff50;margin:20px 0 0;padding-top:18px}
body[data-surface=checkout] #order-form[data-journey] .button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px;align-items:center}
body[data-surface=checkout] #order-form[data-journey] .button-row>.text-btn{flex-basis:100%;text-align:left}
body[data-surface=checkout] .school-handoff{padding:26px 30px;background:#eef4ff;border-left:4px solid #003da5;margin:24px 0 32px}
body[data-surface=checkout] .school-handoff h2{font-size:25px;margin:0 0 12px;color:#003da5}
body[data-surface=checkout] .school-handoff p,body[data-surface=checkout] .school-handoff li{font-size:17px;line-height:1.7}
body[data-surface=checkout] .school-handoff ol{padding-left:23px;margin:18px 0 0;display:grid;gap:8px}
.public-page .question-search{max-width:880px;margin:0 0 50px}
.public-page .question-search label{display:block;font-family:Space,Arial,sans-serif;font-size:24px;font-weight:700;margin-bottom:14px}
.public-page .question-search-field{display:flex;gap:12px;align-items:stretch}
.public-page .question-search input{font:17px Arial,sans-serif;color:#182b49;background:#fff;border:1px solid #8b9ebd;border-radius:6px;min-height:58px;padding:14px 18px;width:100%;min-width:0}
.public-page .question-search input::placeholder{color:#52627b;opacity:1}
.public-page .question-search button{font:700 15px Arial,sans-serif;min-height:48px;padding:10px 15px;color:#003da5;background:#edf3ff;border-radius:6px;flex-shrink:0}
.public-page .question-search-status{font-size:15px;line-height:1.6;margin:12px 0;color:#52627b}
.public-page .question-search-empty{font-size:18px;line-height:1.7;background:#f0f5ff;padding:22px;border-left:3px solid #003da5}
.public-page .question-search-empty a{color:#003da5;text-decoration:underline}
.public-page .question-groups>section{scroll-margin-top:120px}
@media(max-width:900px){
 body[data-surface=checkout] .checkout-workspace{grid-template-columns:1fr;gap:20px}
 body[data-surface=checkout] .checkout-summary{position:static;grid-row:1;padding:24px}
 body[data-surface=checkout] .checkout-summary h2{font-size:24px;margin-bottom:12px}
 body[data-surface=checkout] .checkout-summary .checkout-amount{font-size:34px;margin-bottom:12px}
 body[data-surface=checkout] .checkout-summary [data-selection]{margin-bottom:0}
 body[data-surface=checkout] .checkout-breakdown{margin-top:14px;padding-top:4px}
}
@media(max-width:600px){
 body[data-surface=checkout] .checkout-workspace #order-form{padding:22px 18px}
 body[data-surface=checkout] .checkout-summary{padding:22px 20px}
 body[data-surface=checkout] .checkout-form-progress{gap:16px;font-size:14px}
 body[data-surface=checkout] .school-handoff{padding:22px 18px}
 body[data-surface=checkout] .school-handoff h2{font-size:23px}
 .public-page .question-search-field{flex-wrap:wrap}
 .public-page .question-search label{font-size:22px}
 .public-page .question-search input{font-size:16px;padding:14px 12px}
 .public-page .question-search button{width:100%}
}

body[data-surface=checkout] .checkout-summary :is(summary,li,dt,dd){color:#fff;font-size:15px}
body[data-surface=checkout] .checkout-summary summary{font-size:16px}
body[data-surface=checkout] #order-form[data-journey]>.hint{margin:24px 0 0;border-top:1px solid #d5deed;padding-top:20px}
body[data-surface=checkout] #order-form[data-journey] #draft-state{margin:14px 0 0}
