/* Whale52 Ocean UI v02 / DeepNeon. Public pages opt into this isolated layer.
   Tokens: 01-foundation/tokens and brands.json; type/components: system.css.
   No shared platform stylesheet or application selector is replaced. */
@font-face{font-family:Whale52Onest;src:url('onest400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Whale52Onest;src:url('onest500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Whale52Onest;src:url('onest600.ttf') format('truetype');font-weight:600 900;font-display:swap}
.whale52-public{--w-paper:#fff;--w-ink:#0B0E12;--w-muted:#58636B;--w-line:#DDE3E7;--w-surface:#F4F6F7;--w-brand:#FF3DF2;--w-soft:#FDEBFB;--w-font:Whale52Onest,Arial,sans-serif;--w-focus:var(--w-ink);background:var(--w-paper);color:var(--w-ink);font-family:var(--w-font)}
.whale52-public :is(h1,h2,h3,h4,p,a,button,input,textarea,label,summary,span,.eyebrow,.section-meta,.feature-num,.step-number,.pricing-label){font-family:var(--w-font)}
.whale52-public :is(h1,h2,h3){font-weight:400;letter-spacing:-.035em}
.whale52-public .hero h1{font-size:clamp(38px,4.5vw,68px);line-height:1.08;font-weight:400;letter-spacing:-.045em}
.whale52-public .hero h1 em{color:var(--w-brand);font-style:normal}
.whale52-public :is(.section h2,.pricing-intro h2){font-family:var(--w-font);font-weight:400;font-size:clamp(30px,3vw,44px);line-height:1.14;letter-spacing:-.035em}
.whale52-public .header{height:88px;background:var(--w-paper);border-bottom:1px solid var(--w-line)}
.whale52-public .header-inner{gap:24px}
.whale52-public .whale52-logo{display:block;width:179px;height:66px;object-fit:contain;flex:none}
.whale52-public .footer .whale52-logo{width:200px;height:auto;max-height:none}
.whale52-public .main-nav{font-size:14px;gap:24px}
.whale52-public :is(.hero,.usecases,.access,.footer){background:var(--w-ink);color:var(--w-paper)}
.whale52-public .hero{border-bottom:1px solid var(--w-line)}
.whale52-public :is(.hero-lead,.usecases-heading p,.case p,.access p,.footer-grid p,.footer-last){color:#B5C1C8}
.whale52-public :is(.hero-content .eyebrow,.live){color:var(--w-paper)}
.whale52-public .live{background:var(--w-brand);box-shadow:none}
.whale52-public :is(.hero-video-shell,.demo-video-shell,.demo-video-frame){border-radius:4px;box-shadow:none;border-color:var(--w-line)}
.whale52-public :is(.hero-video-head,.hero-video-foot){background:var(--w-ink);color:#B5C1C8;border-color:#58636B;font-family:var(--w-font)}
.whale52-public :is(.hero-video-head,.demo-video-toolbar){border-top:0}
.whale52-public :is(.btn,.feature-tabs button,.neon-demo-tab){border-radius:4px;font-family:var(--w-font);font-weight:500;box-shadow:none;min-height:44px}
.whale52-public .btn{background:var(--w-brand);color:var(--w-ink);border:1px solid transparent}
.whale52-public .btn:hover{background:var(--w-brand);filter:brightness(.94);box-shadow:none;transform:none}
.whale52-public .btn.auth-login{background:var(--w-paper);color:var(--w-ink);border-color:var(--w-line)}
.whale52-public .btn.hero-download{background:transparent;color:white;border-color:#B5C1C8;opacity:1}
.whale52-public :is(a,button,input,textarea,summary):focus-visible{outline:3px solid var(--w-focus);outline-offset:4px}
.whale52-public :is(section.intro,.workflow,.seo-faq){background:var(--w-surface)}
.whale52-public :is(.demo,.pricing){background:var(--w-paper)}
.whale52-public .section{padding-block:88px}
.whale52-public .section-meta{color:var(--w-muted);border-color:var(--w-line);font-size:12px;letter-spacing:.06em}
.whale52-public :is(.usecases,.access) .section-meta{color:#B5C1C8;border-color:#58636B}
.whale52-public :is(.intro-grid p,.feature-intro p,.workflow-grid p,.pricing-intro p,.seo-faq-lead){color:var(--w-muted)}
.whale52-public :where(.steps article,.feature-card,.pricing-card,.seo-faq-item){background:var(--w-paper);border:1px solid var(--w-line);border-radius:4px;box-shadow:none}
.whale52-public .steps article{border-top:1px solid var(--w-line)}
.whale52-public .feature-card:hover{border-color:var(--w-ink);box-shadow:none;transform:none}
.whale52-public :is(.feature-num,.step-number,.pricing-label){color:var(--w-muted)}
.whale52-public :is(.feature-card p,.steps p,.pricing-description,.pricing-card>p:not(.pricing-price),.seo-faq-item p){color:var(--w-muted)}
.whale52-public :is(.feature-arrow,.feature-tabs button.selected){color:var(--w-ink);background:var(--w-soft)}
.whale52-public .feature-tabs button{border:1px solid var(--w-line);color:var(--w-muted);background:var(--w-paper)}
.whale52-public .feature-tabs button.selected{border-color:var(--w-ink);box-shadow:inset 0 -2px var(--w-brand)}
.whale52-public .case{border-radius:4px;background:var(--w-ink);border-color:#58636B;border-top:1px solid var(--w-line)}
.whale52-public :is(.case-tag,.case-icon){color:inherit;background:transparent}
.whale52-public .pricing-card{padding:32px;border-top:1px solid var(--w-line)}
.whale52-public :is(.pricing-amount strong,.pricing-price){font-family:var(--w-font);font-weight:400;letter-spacing:-.045em;color:var(--w-ink)}
.whale52-public :is(.pricing-amount span,.pricing-tier-note,.pricing-vat-note,.pricing-tier-table p){color:var(--w-muted)!important}
.whale52-public :is(.pricing-contact-link,.pricing-discounts summary,.seo-faq-actions .faq-demo-link){color:var(--w-ink)}
.whale52-public .pricing-discounts{border-color:var(--w-line)}
.whale52-public .lead-form{border-radius:4px;background:var(--w-paper);color:var(--w-ink);box-shadow:none}
.whale52-public :is(.lead-form input:not([type=checkbox]),.lead-form textarea,.pricing-corporate-calc input){border-radius:4px;border-color:#A7B1B8;background:var(--w-paper);color:var(--w-ink);font-family:var(--w-font);min-height:44px}
.whale52-public .lead-form :is(p,label,.consent){color:var(--w-muted)}
.whale52-public .lead-form a{color:var(--w-ink);text-decoration:underline}
.whale52-public input[type=checkbox]{accent-color:var(--w-ink)}
.whale52-public .seo-faq-item summary{color:var(--w-ink);font-weight:500}
.whale52-public .seo-faq-item summary::marker{color:var(--w-ink)}
.whale52-public .seo-faq-item[open] summary{border-color:var(--w-line);background:var(--w-soft)}
.whale52-public .footer{border-color:#58636B}
@media(max-width:1100px){.whale52-public .main-nav{gap:14px;font-size:12px}.whale52-public .header-inner{gap:14px}.whale52-public .whale52-logo{width:145px}}
@media(max-width:760px){.whale52-public .header{height:76px}.whale52-public .main-nav{top:76px;background:var(--w-paper);font-size:16px;gap:20px}.whale52-public .section{padding-block:56px}.whale52-public .header-inner{gap:10px}.whale52-public .whale52-logo{width:140px;height:56px}.whale52-public .hero h1{font-size:clamp(36px,8.7vw,56px)}.whale52-public .section-meta{font-size:10px}.whale52-public .pricing-card{padding:24px}}
@media(max-width:390px){.whale52-public .whale52-logo{width:116px}.whale52-public .header-inner{gap:8px}.whale52-public .header-auth .btn{padding:10px 8px;font-size:11px}.whale52-public .hero h1{font-size:36px}.whale52-public .section h2{font-size:30px}}
.whale52-public :is(.hero h1 em,.access h2 em){border:0}
.whale52-public :is(.section-meta span:first-child,.quote-label,.copy,.prompt-line button){color:var(--w-ink)}
.whale52-public :is(.usecases,.access) .section-meta span:first-child{color:var(--w-brand)}
.whale52-public :is(.main-nav a:hover,.inline-link:hover){color:var(--w-ink);text-decoration:underline;text-decoration-color:var(--w-brand);text-underline-offset:5px}
.whale52-public .lead-form .consent input[type=checkbox]{accent-color:var(--w-ink)}
.whale52-public .lead-form :is(input:focus,textarea:focus){border-color:var(--w-ink)}
.whale52-public .lead-form .consent input:focus-visible{outline-color:var(--w-ink)}
.whale52-public .intro-grid h2 span{color:var(--w-muted)}
.whale52-public .neon-demo-tabs button{border-radius:4px;font-family:var(--w-font);color:var(--w-ink);background:var(--w-paper);border-color:var(--w-line)}
.whale52-public .neon-demo-tabs button.neon-active{background:var(--w-soft);border-color:var(--w-ink);color:var(--w-ink)}
.whale52-public footer{background:var(--w-ink);color:var(--w-paper);border-color:#58636B}
.whale52-public footer .whale52-logo{width:200px;height:auto;max-height:none}
@media(min-width:761px) and (max-width:900px){.whale52-public .header .main-nav{top:100%;font-size:16px;gap:20px}}

/* Explicit surfaces prevent both faint focus and inherited legacy component outlines. */
.whale52-public :where(.hero,.usecases,.access,footer,.top,.last,.section.dark,.legal-contact){--w-focus:var(--w-brand)}
.whale52-public :is(.lead-form,.main-nav){--w-focus:var(--w-ink)}
.whale52-public :is(a,button,input,textarea,summary):focus-visible{outline:3px solid var(--w-focus)!important;outline-offset:4px}
.whale52-public :is(.hero-video-stage,.demo-video-frame).dn-video-paused::after{font-family:var(--w-font)}

/* Contact actions and footer: consistent geometry, clear separation, no decorative arrows. */
.whale52-public .seo-faq-actions .faq-demo-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;border:1px solid var(--w-line);background:var(--w-paper);color:var(--w-ink);text-decoration:none;line-height:1.4}
.whale52-public .seo-faq-actions .faq-demo-link:hover{background:var(--w-surface);filter:none;color:var(--w-ink)}
body.whale52-public footer{background:var(--w-paper);color:var(--w-ink);border-top:1px solid var(--w-line);--w-focus:var(--w-ink)}
body.whale52-public footer :is(p,.footer-links,.footer-last,.legal-footer-links,.legal-footer-meta,.company-requisites){color:var(--w-muted);border-color:var(--w-line)}
body.whale52-public footer a:hover{color:var(--w-ink)}

.whale52-public .seo-faq-actions .btn{min-height:48px;padding:14px 22px;line-height:1.4}

.whale52-public .seo-faq-item summary::after{color:var(--w-ink)}

/* Whale52 typography/rhythm: clear controls and compact mobile reading. */
.whale52-public .seo-faq-item summary{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:24px;align-items:center;list-style:none;min-height:56px}
.whale52-public .seo-faq-item summary::after{display:block;justify-self:end;width:24px;text-align:center;line-height:1;content:"+";color:var(--w-ink)}
.whale52-public .seo-faq-item[open] summary::after{content:"−"}
.whale52-public .pricing-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:24px}
.whale52-public .pricing-actions .pricing-contact-link{margin:0;min-height:44px;display:inline-flex;align-items:center}
@media(max-width:900px){
 .whale52-public .hero-layout{min-height:0;gap:24px;padding-top:32px;padding-bottom:32px}
 .whale52-public .hero-content{padding:0}
 .whale52-public .hero h1{min-height:0;margin:24px 0;font-size:clamp(34px,4.7vw,44px);line-height:1.1}
 .whale52-public .hero-lead{font-size:15px;line-height:1.6;margin:0}
 .whale52-public .hero-actions{margin-top:24px;gap:12px}
 .whale52-public .hero-video-showcase{height:auto;margin:0;padding:0}
}
@media(max-width:760px){
 .whale52-public .section{padding-block:48px}
 .whale52-public .feature-grid{gap:12px}
 .whale52-public .feature-card{min-height:0;padding:20px}
 .whale52-public .feature-card h3{margin:12px 0 8px;line-height:1.3}
 .whale52-public .feature-card p{font-size:13px;line-height:1.6}
 .whale52-public .steps{margin-top:24px}
 .whale52-public .steps article{padding:20px}
 .whale52-public .steps h3{margin:16px 0 8px}
 .whale52-public .seo-faq-item summary{gap:16px;padding:16px 20px}
 body.whale52-public footer .footer-grid,body.whale52-public footer .legal-footer-grid{grid-template-columns:1fr;gap:24px}
 body.whale52-public footer .footer-last{grid-column:auto;gap:16px}
 body.whale52-public footer .footer-links,body.whale52-public footer .legal-footer-links{gap:12px}
 body.whale52-public footer :is(.footer-links,.legal-footer-links,.footer-last,.legal-footer-meta){font-size:13px;line-height:1.6}
}

@media(max-width:760px){body.whale52-public footer :is(.footer-grid p,.legal-footer p){font-size:13px;line-height:1.6;max-width:330px}}
