/* Approved public-site typography. Not loaded by Owner UI or demo iframe.
   Onest 2.001, SIL OFL 1.1: /public/assets/onest-OFL.txt */
@font-face{
 font-family:'AI Support Onest';
 src:url('/public/assets/onest-v2.001.woff2') format('woff2');
 font-style:normal;
 font-weight:100 900;
 font-display:swap;
}
.public-site{font-family:'AI Support Onest',ui-sans-serif,system-ui,sans-serif;font-weight:400}
.public-site h1,.public-site .section h1,.public-site .hero h1{font-weight:600;letter-spacing:-.025em;line-height:1.16;text-wrap:balance}
.public-site h2,.public-site .control-card h2,.public-site .capability-copy h2{font-weight:600;letter-spacing:-.018em;line-height:1.22;text-wrap:balance}
.public-site h3,.public-site .features h3{font-weight:550;letter-spacing:-.01em;line-height:1.35}
.public-site p{font-weight:400;line-height:1.65}
.public-site .button,.public-site .header nav a{font-weight:600;letter-spacing:0}
.public-site .steps li strong,.public-site .pilot-route strong,.public-site .inbox-heading strong{font-weight:600}
.public-site .brand{letter-spacing:-.02em}
@media(max-width:700px){
 .public-site .section h1,.public-site .hero h1{letter-spacing:-.015em;line-height:1.2}
}

/* Shared inner-page hierarchy. Home hero, body copy and controls are unchanged. */
.public-inner{
 --inner-h1-size:clamp(2.25rem,calc(1.5rem + 3.125vw),3.25rem);
 --inner-h2-size:clamp(1.625rem,2.2vw,2rem);
 --inner-card-title-size:clamp(1.5rem,2vw,1.75rem);
 --inner-title-gap:24px;
 --inner-content-gap:32px;
}
.public-site .public-inner h1{font-size:var(--inner-h1-size);margin-bottom:var(--inner-title-gap)}
.public-site .public-inner h2{font-size:var(--inner-h2-size)}
.public-site .public-inner :is(.pricing,.control-grid) h2{font-size:var(--inner-card-title-size)}
.public-site .public-inner .page-intro{margin-bottom:var(--inner-title-gap)}
.public-site .public-inner .page-intro .lead{margin-bottom:0}
.public-site .public-inner .page-intro+.capability-row{padding-top:var(--inner-content-gap)}
.public-site .public-inner .pricing{margin-top:var(--inner-content-gap)}
@media(max-width:700px){.public-inner{--inner-title-gap:20px;--inner-content-gap:24px}}

/* Compact public navigation shares product touch targets and green palette. */
@media(max-width:600px){.public-site .header{padding:1rem;gap:.5rem}.public-site .header .brand{font-size:1.125rem}.public-site .header nav{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.25rem 1rem}.public-site .header nav a{font-size:.875rem;min-height:2.75rem}.public-site .header .button{font-size:.8125rem;padding:.625rem .75rem}.public-site .hero{padding-top:1.5rem}.public-site .hero .lead{font-size:1rem;line-height:1.6}.public-site .hero h1{font-size:clamp(1.75rem,7vw,2.5rem)}.public-site .hero .eyebrow{margin-bottom:1rem}}

@media(max-width:600px){.public-site .section:not(.hero) h1{font-size:clamp(1.5rem,6vw,2rem);line-height:1.25;letter-spacing:-.02em}.public-site .pricing .price{font-size:2rem}}

/* Consistent navigation cues and reading rhythm; approved marketing/legal copy stays intact. */
.public-site .header nav a{padding:.375rem .625rem;border-radius:.5rem;transition:background .15s,color .15s}
.public-site .header nav a[aria-current=page],.public-site .header nav a:hover{background:#e3f3e8;color:#245c48;text-decoration:none}
.public-site .header nav a[aria-current=page]{box-shadow:inset 0 -2px #28734f}
.benefit-symbol{display:inline-grid;place-items:center;flex:0 0 2rem;width:2rem;height:2rem;border-radius:.625rem;background:#e3f3e8;color:#28734f;margin-right:.625rem;vertical-align:middle}
.benefit-symbol svg{width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.public-site .home-benefits h3{display:flex;align-items:center}.public-site .home-benefits li>p{max-width:48ch}
.public-site .faq details{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;margin:0;padding:0}
.public-site .faq summary{position:relative;list-style:none;padding:1rem 2.5rem 1rem 0;min-height:3.25rem;line-height:1.5;font-weight:550}
.public-site .faq summary::-webkit-details-marker{display:none}.public-site .faq summary::after{content:'+';position:absolute;right:0;top:.875rem;display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:#e3f3e8;color:#245c48}
.public-site .faq details[open] summary::after{content:'\2212'}.public-site .faq details[open]{padding:0 1rem;margin-inline:-1rem;border-radius:.75rem;background:white;box-shadow:0 2px 12px #183a2808}
.public-site .faq details>p{max-width:65ch;padding-bottom:.75rem;margin-bottom:0;color:var(--ink)}
.public-site .pricing article:first-child{border-top:4px solid #62ac7d}.public-site .pricing li{margin:.625rem 0;padding-left:.25rem}.public-site .pricing li::marker{color:#28734f}
.public-site footer nav a{display:block;min-height:2.75rem;padding:.5rem .625rem;border-radius:.5rem;text-decoration:none}.public-site footer nav a:hover{background:#e3f3e8}
.public-site[data-page='/contacts'] .public-inner>.section{max-width:54rem}.public-site[data-page='/contacts'] .public-inner>.section>p:last-child{padding:1rem 1.25rem;background:white;border:1px solid var(--line);border-left:3px solid #62ac7d;border-radius:.5rem}
/* Shared public shell: compact navigation, calm surfaces, readable groups. */
.public-site{--surface-soft:#eef4ef;--surface-warm:#fff7e8;--reading-width:62ch}
.public-site .header{border-bottom:1px solid var(--line)}
.public-site .site-account-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.5rem .75rem;text-decoration:none;font-weight:600;white-space:nowrap}
.public-site .site-menu-toggle{min-height:44px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);padding:.5rem .75rem}
.public-site .site-menu-toggle span{margin-left:.4rem}
.public-site .header .mobile-pilot-link{display:none}
.public-site .capability-copy p{max-width:var(--reading-width)}
.public-site .capability-copy>p:last-of-type{padding:1rem 1.25rem;border:1px solid #c5d3dd;border-left:3px solid #7f9bac;background:#e7eef3;color:#293e4b;border-radius:0 .75rem .75rem 0}
.public-site .control-card{background:white;border:1px solid var(--line);border-radius:16px;padding:clamp(20px,3vw,32px)}
.public-site .control-card p:last-child{margin-bottom:0}
.public-site .pricing article:last-child{background:var(--surface-soft);box-shadow:none}
.public-site .pricing article:last-child>p:not(.pricing-note){max-width:var(--reading-width)}
.public-site .contact-panel{background:white;border:1px solid var(--line);border-left:3px solid #86b39a;border-radius:14px;padding:24px}
.public-site footer{border-top:1px solid var(--line);gap:24px}
.public-site footer nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .75rem}
.public-site footer nav a{line-height:1.45;font-size:.875rem}
@media(max-width:1000px) and (min-width:701px){.public-site .header{flex-wrap:wrap;gap:12px}.public-site .header nav{order:3;flex-basis:100%;justify-content:center}.public-site .site-account-link{margin-left:auto}}
@media(max-width:700px){
 .public-site .header{padding:12px 16px;gap:8px;align-items:center}
 .public-site .header .brand{margin-right:auto;font-size:1rem}
 .public-site .brand-icon{width:30px;height:30px;border-radius:9px}
 .public-site .site-account-link{padding:.5rem;font-size:.875rem}
 .public-site .site-menu-toggle{font-size:.875rem}
 .public-site .header .header-pilot{display:none}
 .public-site .header nav{order:5;width:100%;margin:0;display:grid;grid-template-columns:1fr;gap:0;padding:8px;background:white;border:1px solid var(--line);border-radius:12px}
 .public-site .header nav a{justify-content:flex-start;min-height:44px;border:0;background:transparent;padding:.625rem .75rem;font-size:.9375rem}
 .public-site .header .mobile-pilot-link{display:flex;color:var(--accent);border-top:1px solid var(--line);border-radius:0;margin-top:4px}
 .public-site .header nav[hidden]{display:none}
 .public-site .public-inner .section{padding-top:28px}
 .public-site .faq summary{font-size:1rem}
 .public-site .home-benefits li{padding-block:1rem}
 .public-site .home-benefits h3{font-size:1.125rem}
 .public-site .capability-row{gap:24px}
 .public-site .capability-copy>p:last-of-type{padding:14px 16px}
 .public-site .product-figure{padding:20px}
 .public-site footer{padding-top:28px}
 .public-site footer nav{grid-template-columns:1fr 1fr;gap:4px 8px}
}
