/* YC Light — Figma 455:395, 455:163. Theme only; grids and scene logic stay in existing files. */
:root{
 --yc-light-canvas:#fff;--yc-light-surface:#fff;--yc-light-subtle:#f5f6f7;--yc-light-field:#fff;
 --yc-light-border:#a0a6ae;--yc-light-divider:#e2e5e9;--yc-light-primary:#0267b7;--yc-light-hover:#025da5;--yc-light-pressed:#025292;
 --yc-light-navy:#171c3e;--yc-light-text:#24262b;--yc-light-secondary:#5c6066;--yc-light-muted:#70757c;
 --yc-light-disabled:#959aa1;--yc-light-disabledBg:#eceef1;--yc-light-inverse:#fff;--yc-light-red:#e60615;
 --yc-light-environment:#f3f7fb;--yc-light-error:#b42318;--yc-light-success:#167647;--yc-light-warning:#8a5a00;--yc-light-info:#0267b7;
 --ink:var(--yc-light-text);--blue:var(--yc-light-primary);--silver:var(--yc-light-muted);
 --brand-blue:var(--yc-light-primary);--brand-navy:var(--yc-light-navy);--brand-red:var(--yc-light-red);
 --surface:var(--yc-light-surface);--field:var(--yc-light-field);--field-border:var(--yc-light-border);--feedback-border:var(--yc-light-divider);
 --text-secondary:var(--yc-light-secondary);--text-footer:var(--yc-light-muted);--text-disabled:var(--yc-light-disabled);
 --yc-radius-button:2px;--yc-radius-card:14px;--yc-radius-field:6px;--yc-radius-feedback:8px;
 --yc-card-hover-shadow:0 9px 24px rgb(23 28 62 / 5%);
 color-scheme:light;
}
html,body{background:var(--yc-light-canvas);color:var(--yc-light-text)}
#app,.dark,.product-details,.article-page,.reference-shelf,.contact-page{background:var(--yc-light-surface);color:var(--yc-light-text)}
p{opacity:1;color:var(--yc-light-secondary)}
h1,h2,h3,h4,strong,th{color:inherit}
a,button{transition-property:color,background-color,border-color,opacity,transform;transition-duration:.4s}
:focus-visible{outline-color:var(--yc-light-primary)}
.muted,.notice,figcaption,.card-summary,.business-facts dt,.selection-summary dt,.breadcrumbs,.article-layout time,.editorial span{color:var(--yc-light-secondary)}
.notice{border-left-color:var(--yc-light-primary)}
/* Navigation and popup surfaces are bright, including the homepage and scrolled states. */
header,body.at-home header,body.at-home header.scrolled,header.panel-open,body.at-home header.panel-open{
 --nav-surface:var(--yc-light-surface);background:rgb(255 255 255 / 97%);color:var(--yc-light-text);border-bottom-color:var(--yc-light-divider);backdrop-filter:blur(12px)
}
header nav,header nav.open,header .mega,#header-search,#language-options{background:var(--yc-light-surface);color:var(--yc-light-text)}
header nav{background:transparent}
header .nav-item>a:hover,header .nav-item>a:focus-visible,header .nav-item>a.active{color:var(--yc-light-primary);border-color:var(--yc-light-primary)}
header .mega a:hover,header .mega a:focus-visible{color:var(--yc-light-primary)}
#language-options{border:1px solid var(--yc-light-divider);box-shadow:0 8px 24px #172b4210}
#language-options button:hover,#language-options button:focus-visible{background:var(--yc-light-subtle);color:var(--yc-light-primary)}
header button:disabled{color:var(--yc-light-disabled)}
#header-search input{background:var(--yc-light-field);color:var(--yc-light-text);border-color:var(--yc-light-border)}
/* Buttons: blue primary, white/blue secondary. Focus intentionally matches hover. */
.btn{background:var(--yc-light-surface);color:var(--yc-light-primary);border:1px solid var(--yc-light-primary);padding:0 24px;min-height:48px;line-height:22px;border-radius:100px;box-shadow:none}
.btn:after{background:var(--yc-light-surface)}
.btn:hover,.btn:focus-visible{background:var(--yc-light-subtle);color:var(--yc-light-primary);border-color:var(--yc-light-primary);outline:none;box-shadow:none;transform:none}
.btn:hover:after,.btn:focus-visible:after{background:var(--yc-light-subtle)}
.btn:active,.btn:active:after{background:var(--yc-light-disabledBg);color:var(--yc-light-primary)}
.hero-product-link,.contactband .btn,.product-detail-hero .business-actions .btn:first-child,#contactform button[type="submit"]{background:var(--yc-light-primary);border-color:var(--yc-light-primary);color:var(--yc-light-inverse)}
.hero-product-link:hover,.hero-product-link:focus-visible,.contactband .btn:hover,.contactband .btn:focus-visible,.product-detail-hero .business-actions .btn:first-child:hover,.product-detail-hero .business-actions .btn:first-child:focus-visible,#contactform button[type="submit"]:hover,#contactform button[type="submit"]:focus-visible{background:var(--yc-light-hover);color:var(--yc-light-inverse);border-color:var(--yc-light-hover);outline:none}
.contactband .btn:after,.product-detail-hero .business-actions .btn:first-child:after,#contactform button[type="submit"]:after{background:var(--yc-light-primary)}
.contactband .btn:hover:after,.contactband .btn:focus-visible:after,.product-detail-hero .business-actions .btn:first-child:hover:after,.product-detail-hero .business-actions .btn:first-child:focus-visible:after,#contactform button[type="submit"]:hover:after,#contactform button[type="submit"]:focus-visible:after{background:var(--yc-light-hover)}
.hero-product-link:active,.contactband .btn:active:after,.product-detail-hero .business-actions .btn:first-child:active:after,#contactform button[type="submit"]:active:after{background:var(--yc-light-pressed)}
.btn:disabled,.btn[aria-disabled="true"],#contactform button[type="submit"]:disabled{background:var(--yc-light-disabledBg);border-color:var(--yc-light-disabledBg);color:var(--yc-light-disabled);pointer-events:none}
.btn:disabled:after,.btn[aria-disabled="true"]:after,#contactform button[type="submit"]:disabled:after{background:var(--yc-light-disabledBg)}
.text-link,.office a,.contact-offices>a,.footer-office a:hover{color:var(--yc-light-primary)}
/* Photo-based banners keep inverse text for legibility; no image inversion or replacement. */
.refhero,.hero{color:var(--yc-light-inverse)}
.refhero h1,.refhero .hero-benefits,.refhero .scroll-cue{color:var(--yc-light-inverse)}
.refhero .hero-benefits em{color:var(--yc-light-inverse)}
.media-header{background:var(--yc-light-surface);color:var(--yc-light-text)}
.media-header:has(img){color:var(--yc-light-inverse)}
.media-header.support-header,.media-header:not(:has(img)),.pagehero{background:var(--yc-light-surface);color:var(--yc-light-text)}
.pagehero{border-color:var(--yc-light-divider)}
/* Three-stage enterprise presentation. Existing height/scroll calculation is untouched. */
.enterprise-scene-shell,.enterprise-scene-stage,.enterprise-section{background:var(--yc-light-canvas);color:var(--yc-light-text)}
.enterprise-trigger,.enterprise-node{color:var(--yc-light-secondary)}
.enterprise-item.is-active .enterprise-trigger{color:var(--yc-light-text)}
.enterprise-item.is-active .enterprise-node{color:var(--yc-light-primary)}
.enterprise-item:not(:last-child)::before{background:var(--yc-light-divider)}
.node-track{stroke:var(--yc-light-border)}.node-ring{stroke:var(--yc-light-primary)}
.enterprise-copy p{color:var(--yc-light-secondary)}
.enterprise-copy dt{color:var(--yc-light-secondary)}.enterprise-copy dd{color:var(--yc-light-text)}
.enterprise-pictures,.enterprise-mobile-picture,.picture-unavailable{background:var(--yc-light-subtle)}
.world-map-layers{background:var(--yc-light-subtle)}
.world-map-layers>span{color:var(--yc-light-navy)}
/* Homepage ranges, product cards, partners and editorial remain distinct. */
.product-world,.featured-products{background:var(--yc-light-surface);color:var(--yc-light-text)}
.category-tile{background:var(--yc-light-subtle)}
.category-tile-label{background:linear-gradient(transparent,rgba(255,255,255,.96) 70%);color:var(--yc-light-text)}
.category-tile:focus-visible{outline-color:var(--yc-light-primary)}
.card{background:var(--yc-light-subtle);color:var(--yc-light-text);border:2px solid var(--yc-light-divider)}
.card:hover,.card:focus-visible{border-color:var(--yc-light-primary)}
.card .muted{color:var(--yc-light-secondary)}
.catalogue .card h3,.product-details .card h3{color:var(--yc-light-text);font-size:clamp(28px,2.5vw,40px);line-height:1.5;overflow-wrap:anywhere}
.partner-section{background:var(--yc-light-canvas);color:var(--yc-light-text)}
.partner-wall img{filter:none;opacity:1}
.editorial{background:var(--yc-light-surface);color:var(--yc-light-text);border-color:var(--yc-light-divider)}
.editorial-list a,.editorial-main{border-color:var(--yc-light-divider)}
.editorial a:hover h3,.editorial a:focus-visible h3{color:var(--yc-light-primary)}
.contactband{background:var(--yc-light-navy);color:var(--yc-light-inverse)}
.contactband h2{color:var(--yc-light-inverse)}
.contactband p{color:rgb(255 255 255 / 80%)}
.contactband::before{border-color:#0267b714;box-shadow:0 0 0 45px #0267b705,0 0 0 95px #0267b703}
/* Lists, detail content, chapter navigation and resources. */
.chip{color:var(--yc-light-secondary);background:transparent;border-color:var(--yc-light-border)}
.chip.active,.chip:hover,.chip:focus-visible{background:var(--yc-light-primary);border-color:var(--yc-light-primary);color:var(--yc-light-inverse)}
.reference-shelf .category:first-child,.support-tabs{border-color:var(--yc-light-divider)}
.reference-shelf .category:first-child .chip,.support-tabs a{color:var(--yc-light-secondary);background:transparent}
.reference-shelf .category:first-child .chip.active,.reference-shelf .category:first-child .chip:hover,.reference-shelf .category:first-child .chip:focus-visible,.support-tabs a[aria-current],.support-tabs a:hover,.support-tabs a:focus-visible{color:var(--yc-light-primary);border-color:var(--yc-light-primary)}
.about-anchors{background:var(--yc-light-surface);border-color:var(--yc-light-divider)}
.about-anchors a{color:var(--yc-light-secondary)}.about-anchors a[aria-current],.about-anchors a:hover,.about-anchors a:focus-visible{color:var(--yc-light-primary);border-color:var(--yc-light-primary)}
.product-detail-hero{background:var(--yc-light-surface);color:var(--yc-light-text)}
.product-detail-hero h1{color:var(--yc-light-text)}
.product-detail-hero img{background:var(--yc-light-surface)}
.product-details table td,.product-details table th,td,details{border-color:var(--yc-light-divider)}
.news-feature>div a:first-child,.download-empty,.selected-product{background:var(--yc-light-subtle);color:var(--yc-light-text)}
.news-feature time{color:var(--yc-light-secondary)}
.download-grid .card h3{color:var(--yc-light-text);font-size:18px;line-height:27px}
.download-grid .card .body>span:last-child{color:var(--yc-light-primary)}
.business-facts dd{color:var(--yc-light-text)}
.office address,.business-photos figcaption{color:var(--yc-light-secondary)}
/* Fields and feedback: keep the original simulation and input state. */
input,textarea,select,#contactform input,#contactform textarea,#contactform select,#header-search input{color:var(--yc-light-text);background:var(--yc-light-field);border:1px solid var(--yc-light-border);border-radius:6px}
input::placeholder,textarea::placeholder{color:var(--yc-light-secondary);opacity:1}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:0;border-color:var(--yc-light-primary)}
#contactform label{color:var(--yc-light-text);font-size:14px;line-height:22px;font-weight:400}
#contactform input{height:42px;min-height:42px;padding:8px 12px;font-size:14px;line-height:22px}
#contactform textarea{height:86px;min-height:86px;padding:12px;font-size:14px;line-height:22px}
#contact-method-help{color:var(--yc-light-secondary)}
#contactform em{color:var(--yc-light-error)}
.field-error{color:var(--yc-light-error)}
.field-error:not(:empty){padding-left:20px;position:relative}
.field-error:not(:empty)::before{content:'';position:absolute;left:0;top:2px;width:14px;height:14px;background:url('assets/ui/field-error.svg') center/contain no-repeat}
[aria-invalid="true"]{border-color:var(--yc-light-error)!important}
#feedback:not(:empty){background:var(--yc-light-environment);color:var(--yc-light-text);border:2px solid var(--yc-light-border);border-radius:8px;padding:16px;font-size:14px;line-height:22px}
#feedback[data-status="success"]::before,#feedback[data-status="failed"]::before{content:'';display:inline-block;width:20px;height:20px;margin-right:12px;vertical-align:middle;background:center/contain no-repeat}
#feedback[data-status="success"]::before{background-image:url('assets/ui/status-success.svg')}
#feedback[data-status="failed"]::before{background-image:url('assets/ui/status-error.svg')}
#feedback .btn{margin-top:12px}
.faq-list details{background:var(--yc-light-surface);border:2px solid var(--yc-light-border)}
.faq-list summary{color:var(--yc-light-secondary)}.faq-list details[open] summary{color:var(--yc-light-text)}
.faq-list b{color:var(--yc-light-secondary)}.faq-list p{background:var(--yc-light-canvas);color:var(--yc-light-text)}
.certificate-preview{background:var(--yc-light-canvas);color:var(--yc-light-text);border:1px solid var(--yc-light-divider)}
.certificate-hint{background:var(--yc-light-subtle);color:var(--yc-light-primary)}
.certificate-dialog::backdrop{background:#172b42b3}
/* Footer keeps both offices, business channels and legal links. */
footer#footer{background:var(--yc-light-navy);color:var(--yc-light-inverse)}
.footer-brand,.footer-office h2,.footer-links h2{color:var(--yc-light-inverse)}
.footer-office dt,.footer-links a,.footer-office a,.footer-office address,.footer-legal{color:rgb(255 255 255 / 76%)}
.footer-legal{border-color:rgb(255 255 255 / 20%)}
.footer-links a:hover,.footer-links a:focus-visible,.footer-office a:hover,.footer-office a:focus-visible,.footer-legal a:hover{color:var(--yc-light-inverse)}
#top{background:#fff;border:1px solid #D5E1EB;color:#000}
#top:hover,#top:focus-visible{background:#fff;border-color:#D5E1EB;color:#000}
#top:focus-visible{outline:2px solid var(--yc-light-primary);outline-offset:3px}
@media(max-width:900px){header nav.open{background:var(--yc-light-surface)}}
/* Review fixes: keep form heading readable and search action on one line. */
.contact-content>h2{color:var(--yc-light-text)}
#find{align-items:stretch;gap:16px}
#find input{flex:1;min-width:0;width:auto;min-height:42px;padding:8px 12px;font-size:14px;line-height:22px}
#find button{flex:none;min-width:88px;min-height:42px;padding:8px 24px;white-space:nowrap;font-size:14px;line-height:22px;color:var(--yc-light-inverse);background:var(--yc-light-primary);border-color:var(--yc-light-primary)}
#find button:hover,#find button:focus-visible{background:var(--yc-light-hover)}
.certificate-preview:hover .certificate-hint,.certificate-preview:focus-visible .certificate-hint{background:var(--yc-light-primary);color:var(--yc-light-inverse)}
#contactform input:focus,#contactform textarea:focus{border-color:var(--yc-light-primary)}
.language-tool:focus-within{outline:none}
#language-button:hover,#language-button:focus-visible,#search:hover,#search:focus-visible,#menu:hover,#menu:focus-visible{color:var(--yc-light-primary);background:var(--yc-light-subtle);outline:none;border-radius:6px}
.hero-product-link{min-height:48px;padding:0 24px;font-size:14px;line-height:22px;font-weight:700}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Color roles: content stays neutral; blue marks actions and selection. */
.enterprise-copy dd{color:var(--yc-light-text)}
.contactband .btn,.contactband .btn:after{background:var(--yc-light-surface);color:var(--yc-light-navy);border-color:var(--yc-light-surface)}
.contactband .btn:hover,.contactband .btn:focus-visible,.contactband .btn:hover:after,.contactband .btn:focus-visible:after{background:var(--yc-light-subtle);color:var(--yc-light-navy);border-color:var(--yc-light-subtle)}
.contactband .btn:active,.contactband .btn:active:after{background:var(--yc-light-disabledBg);color:var(--yc-light-navy)}
/* Reference sequence: a compact blue-white contact ending. */
.contactband.contact-motion{padding:64px 0;background:#eaf3fa;min-height:0;color:#172b42}
.contactband.contact-motion::before{display:none}
.contactband.contact-motion .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}
.contact-motion-copy h2{color:#172b42;font-size:clamp(28px,3vw,44px);line-height:1.4}
.contact-motion-image{display:block;width:100%;height:auto;border-radius:12px;aspect-ratio:1.6;object-fit:contain;background:#0e1230}
.contactband.contact-motion .btn{background:#0267b7;color:white;border-color:#0267b7}
.contactband.contact-motion .btn:after{background:#0267b7}
@media(max-width:767px){.contactband.contact-motion{padding:44px 0}.contactband.contact-motion .wrap{grid-template-columns:1fr;gap:28px}.contact-motion-copy h2{margin-top:0}.contact-motion-image{border-radius:8px}}
/* Full-bleed contact sequence, with an independent readable text layer. */
.contactband.contact-motion{position:relative;isolation:isolate;height:clamp(560px,76svh,900px);padding:0;background:#0e1230;color:#fff;overflow:hidden}
.contactband.contact-motion .wrap{position:static;display:flex;align-items:flex-start;height:100%;padding-top:clamp(65px,9vh,110px)}
.contactband.contact-motion .contact-motion-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center;border-radius:0}
.contactband.contact-motion::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,12,32,.78),rgba(5,12,32,.2) 48%,transparent 75%);pointer-events:none}
.contact-motion-copy{position:relative;z-index:1;max-width:720px}
.contactband.contact-motion .contact-motion-copy h2{color:#fff;margin-top:0;margin-bottom:28px;text-shadow:0 2px 20px #0005}
.contactband.contact-motion .btn,.contactband.contact-motion .btn:after{background:#0267b7;color:#fff;border-color:#0267b7}
.contactband.contact-motion .btn:hover,.contactband.contact-motion .btn:focus-visible,.contactband.contact-motion .btn:hover:after{background:#025292;color:#fff;border-color:#fff}
@media(max-width:767px){.contactband.contact-motion{height:640px;max-height:90svh;min-height:480px}.contactband.contact-motion .wrap{padding-top:48px}.contactband.contact-motion .contact-motion-image{object-position:56% center}.contact-motion-copy{max-width:100%}.contactband.contact-motion .contact-motion-copy h2{font-size:30px}}

/* Inverse logo on the shared deep-navy footer. */
footer#footer .footer-brand img{filter:brightness(0) invert(1)}
/* Preserve the original contact band's content-driven height; crop only the media. */
.contactband.contact-motion{height:auto;min-height:330px;max-height:none;padding:110px 0}
.contactband.contact-motion .wrap{display:block;height:auto;padding-top:0}
.contactband.contact-motion .contact-motion-copy h2{font-size:44px;line-height:1.4;margin:12px 0 30px}
.contactband.contact-motion .contact-motion-image{object-fit:cover;object-position:56% 50%}
/* Center the invitation; keep the moving connection on the right. */
.contactband.contact-motion{background:#090d1e}
.contactband.contact-motion .contact-motion-copy{max-width:800px;margin:0 auto;text-align:center}
.contactband.contact-motion .contact-motion-image{left:auto;right:0;width:72%;object-position:center;mask-image:linear-gradient(90deg,transparent 0%,#000 28%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 28%)}
.contactband.contact-motion::after{background:linear-gradient(180deg,rgba(5,10,25,.65),rgba(5,10,25,.45) 65%,rgba(5,10,25,.12));}
@media(max-width:767px){.contactband.contact-motion .contact-motion-image{width:100%;right:-22%;object-position:45% center;opacity:.65}.contactband.contact-motion .contact-motion-copy{position:relative;z-index:1}}

/* Support and contact title bands share a quiet neutral surface. */
#app[data-section=support]>.media-header.support-header,
#app[data-section=contact]>.media-header.support-header,
#app[data-section=search]>.media-header.support-header{background:#F5F6F7}
/* Contact uses the same centred reading measure as news details. */
#app .contact-page>.contact-layout{display:block;width:86%;max-width:820px;margin-inline:auto}
#app .contact-content{width:100%;min-width:0}
@media(max-width:767px){#app .contact-page>.contact-layout{width:88%}}

/* Contact fields and submit states follow the shared component specification. */
#app[data-section=contact],#app[data-section=search]{background:#F5F6F7}
#app .contact-page{padding-top:clamp(31px,4vw,62.5px)}
#app .contact-page,#app .site-search-page{position:relative;margin-top:-17px;border-radius:20px 20px 0 0;background:var(--yc-light-surface)}
#contactform button[type=submit]{width:116px;min-width:116px;height:36px;min-height:36px;padding:0 8px;gap:6px;line-height:22px;white-space:nowrap}
#contactform[aria-busy=true] button[type=submit]:disabled{background:var(--yc-light-primary);border-color:var(--yc-light-primary);color:var(--yc-light-inverse)}
#contactform[aria-busy=true] button[type=submit]:disabled::after{background:var(--yc-light-primary)}
#contactform[aria-busy=true] button[type=submit]:disabled::before{position:static;width:12px;height:12px;flex:none;border:1px solid currentColor;border-right-color:transparent;border-radius:50%;background:none;animation:yc-submit-spin 1s linear infinite}
@keyframes yc-submit-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#contactform[aria-busy=true] button[type=submit]:disabled::before{animation:none}}
#contactform input,#contactform textarea{border:1px solid var(--yc-light-border);border-radius:var(--yc-radius-field)}
#contactform input:focus,#contactform textarea:focus{border-color:var(--yc-light-primary)}
