@font-face{font-family:Zaolang Display;src:url(assets/fonts/zaolang-display-latin.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Zaolang Display;src:url(assets/fonts/zaolang-display-ext.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Zaolang Display;src:url(assets/fonts/zaolang-display-vi.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}
/* Shared brand tokens. Keep page layouts in their existing component styles. */
:root{
  --brand-violet:#9c72f4;--brand-water:#3189f5;--brand-cyan:#73e5e6;
  --paper:#fff;--ink:#17112f;--ink-hover:#302344;--muted:#665b75;--accent:#6335a7;
  --soft:#f5f0fc;--surface:var(--soft);--selected:#e9ddfb;--line:#c6bcd3;--edge:#665575;
  --error:#ad2450;--error-soft:#fff0f4;--error-line:#d992a7;--backdrop:#17112f70;
  --stroke:1.5px;--stroke-strong:2px;--radius-control:12px;--radius-panel:20px;
  --shadow-flat:3px 4px 0 #17112f12;--shadow-panel:6px 8px 0 #17112f1f;
  --section-space:80px;--section-gap:36px;--panel-padding:32px;
  --orange:var(--accent);--pink:var(--brand-violet);--ui-glass:var(--paper);--ui-radius:var(--radius-control);
  --nav-width:min(1280px,calc(100% - 64px));--nav-height:76px;--nav-top:20px;--nav-radius:20px;--nav-padding:24px;
  color-scheme:light;background:var(--paper);color:var(--ink)
}
body{background:var(--paper);letter-spacing:0;color:var(--ink)}
body p{color:var(--muted)}
::selection{background:var(--selected);color:var(--ink)}
html{scroll-padding-top:120px}
.section-wrap{width:calc(100% - 96px);max-width:1200px}
.section-space{padding-block:var(--section-space)}
h1,h2,h3{letter-spacing:-.025em;text-wrap:balance}
body h1,body h2{color:var(--ink)}
h2{font-size:clamp(30px,3vw,42px);font-weight:700;line-height:1.35}
body .section-intro{font-size:16px;line-height:1.8;color:var(--muted)}
body .button{min-height:50px;border-radius:var(--radius-control);border-width:var(--stroke);font-size:15px;font-weight:650;letter-spacing:0;gap:18px}
body :is(.button-orange,.button-dark,.cc-primary,.auth-submit,.auth-continue,.auth-session-retry){background:var(--ink);color:var(--paper);border-color:var(--ink)}
body :is(.button-orange,.button-dark,.cc-primary,.auth-submit,.auth-continue,.auth-session-retry):hover{background:var(--ink-hover);color:var(--paper);border-color:var(--ink);box-shadow:var(--shadow-flat)}
body .button-outline{border-color:var(--ink);color:var(--ink);background:var(--paper)}
body .button-outline:hover{background:var(--selected);border-color:var(--ink)}
body .text-link{font-size:15px;color:inherit;font-weight:600;letter-spacing:0}
body :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
body :is(button,a):active{transform:scale(.98)}
body .brand-symbol{background:transparent;box-shadow:none;border-radius:0;overflow:visible}
body .brand-symbol img{display:block;width:100%;height:100%;object-fit:contain}
html:root .site-header,html.nav-is-compact:root .site-header{display:flex;top:var(--nav-top);width:var(--nav-width);height:var(--nav-height);padding-inline:var(--nav-padding);gap:20px;border:var(--stroke) solid var(--ink);border-radius:var(--nav-radius);background:var(--paper);box-shadow:var(--shadow-flat)}
html:root .site-header::before,html:root .site-header::after{display:none}
html.nav-is-compact:root{--nav-width:min(1180px,calc(100% - 64px));--nav-height:68px;--nav-top:14px;--nav-radius:20px}
html:root .site-header .brand{gap:10px;margin-right:auto}
html:root .site-header .brand-name.brand-name-english{font-size:22px;letter-spacing:.025em;color:var(--ink)}
html:root .site-header .brand-symbol{width:38px;height:38px}
html:root .site-header .desktop-nav{gap:24px;font-size:14px;color:var(--ink);letter-spacing:0;font-weight:600;white-space:nowrap}
html:root .site-header .desktop-nav a[aria-current],html:root .site-header .desktop-nav a:hover{color:var(--accent)}
html:root .site-header .desktop-nav a::after{display:none}
html:root .site-header .header-cta{border-radius:var(--radius-control);border-color:var(--ink);background:var(--ink);color:var(--paper);font-size:14px;min-height:44px;padding:10px 16px;gap:12px;letter-spacing:0}
html:root .site-header .header-cta:hover{background:var(--ink-hover)}
html:root .site-header .header-auth{color:var(--ink);background:var(--soft);border:var(--stroke) solid var(--ink);border-radius:var(--radius-control);font-size:14px;min-height:44px;padding-inline:17px}
html:root .site-header .header-auth:hover{background:var(--selected)}
html:root .site-header .language-picker{margin:0}
body .language-trigger{color:var(--ink);background:var(--paper);border:var(--stroke) solid var(--edge);font-size:14px;min-height:44px;border-radius:var(--radius-control)}
body .language-trigger:hover,body .language-trigger[aria-expanded=true]{background:var(--selected);border-color:var(--ink)}
body .language-popover{background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--ink);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);backdrop-filter:none}
body .language-option:hover,body .language-option:focus,body .language-option[aria-selected=true]{background:var(--selected);color:var(--ink)}
html:root .site-header .menu-toggle span{background:var(--ink)}
body .mobile-nav{background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--ink);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}
body .mobile-nav a[aria-current=page],body .mobile-nav .mobile-auth{color:var(--accent)}
body .account-entry{color:var(--ink);background:var(--soft);border:var(--stroke) solid var(--edge);box-shadow:none}
body .account-entry-avatar{background:var(--ink);color:var(--paper);border:0}
body .account-entry:hover{background:var(--selected);border-color:var(--ink)}
body .site-footer{padding-block:48px 24px;background:var(--soft);border-top:var(--stroke) solid var(--line);color:var(--ink)}
body .site-footer p,body .footer-bottom{color:var(--muted)}
body .footer-cta{color:var(--accent);font-size:16px}
body .footer-bottom{border-color:var(--line);font-size:12px}
body .legal-link{color:var(--muted)}

/* Shared form controls, lists and disclosures retain their keyboard behavior. */
body :is(.control-trigger,.request-form input,.request-form select,.request-form textarea,.cc-form input,.cc-form select,.ad-dialog input,.ad-dialog textarea){background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--edge);border-radius:var(--radius-control);color-scheme:light;box-shadow:none}
body :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
body .control-trigger:hover{background:var(--soft);border-color:var(--ink)}
body .control-trigger[aria-expanded=true]{border-color:var(--ink);box-shadow:0 0 0 3px var(--selected)}
body .control-trigger.is-placeholder,body :is(.control-chevron,.control-calendar-icon){color:var(--muted)}
body .control-popup{background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--ink);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);scrollbar-color:var(--edge) transparent}
body :is(.control-select-header,.control-search,.control-category-trigger){background:var(--soft);color:var(--ink);border-color:var(--line)}
body .control-category-trigger:hover{background:var(--selected)}
body :is(.control-option,.control-category,.control-page,.calendar-day,.calendar-nav,.calendar-clear){color:var(--ink);border-color:var(--line);background:var(--paper)}
body :is(.control-option:hover,.control-option.is-active,.control-category:hover,.control-page:hover,.calendar-day:hover){color:var(--ink);background:var(--soft)}
body .control-option[aria-selected=true],body .calendar-day[aria-selected=true]{background:var(--selected);color:var(--ink)}
body :is(.control-group-title,.control-empty,.control-select-footer,.calendar-weekday,.control-group,.control-results,.control-option-code,.control-category-label,.catalog-filter-field>label,.calendar-title){color:var(--muted)}
body .control-select-list{color:var(--ink)}
body .control-results,body .calendar-step{background:var(--soft);border-color:var(--line);color:var(--muted)}
body .control-option[aria-selected=true]::after{color:var(--ink)}
body .calendar-day:not(:disabled):hover,body .calendar-step:hover,body .calendar-clear:hover{background:var(--selected);color:var(--ink)}
body .calendar-day[aria-selected=true]:hover{background:var(--selected);color:var(--ink)}
body .control-platform{color:var(--muted);background:var(--paper);border-color:var(--line)}
body .control-platform[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
body .control-platform img,body .platform-icon img{filter:brightness(0);opacity:.88}
body .control-platform[aria-pressed=true] img{filter:brightness(0) invert(1);opacity:1}
body .control-platform-row.request-platforms{background:var(--paper);border:var(--stroke) solid var(--ink);box-shadow:none;backdrop-filter:none}
body .control-platform-filter{border-color:var(--line)}
body .request-form{background:var(--paper);border:var(--stroke) solid var(--ink);box-shadow:var(--shadow-flat);border-radius:var(--radius-panel);color:var(--ink)}
body .request-form :is(label,h3){color:var(--ink)}
body .request-form input:focus,body .request-form textarea:focus{background:var(--paper);border-color:var(--ink)}
body .order-instructions{border:var(--stroke) solid var(--line);background:var(--soft);color:var(--ink);border-radius:var(--radius-control)}
body .estimate-line{border-color:var(--line);background:transparent;color:var(--ink)}
body .order-instructions h4,body #order-instructions-content{color:var(--muted)}
body :is(.form-disclaimer,.form-disclaimer p,#estimate-note,.request-assurance p,.checkout-status,.checkout-service-note){color:var(--muted)}
body .estimate-line strong{color:var(--ink)}
body .form-submit{color:var(--paper)}
body .request-assurance>span{color:var(--ink);background:var(--selected);border-color:var(--ink)}
body .faq-list details,body .faq-list details:first-child,body .faq-list details[data-expanded=true]{background:var(--paper);border:var(--stroke) solid var(--edge);box-shadow:none;backdrop-filter:none;border-radius:var(--radius-control)}
body .faq-list details:hover{border-color:var(--ink)}
body .faq-list summary{color:var(--ink);min-height:66px}
body .faq-list summary>span[aria-hidden=true]{color:var(--ink);background:var(--selected)}
body .faq-list .faq-panel p{color:var(--muted);font-size:15px;line-height:1.8}

/* Authentication and quote dialogs use the same ink outline and flat surfaces. */
body :is(.enquiry-dialog,.auth-dialog,.ad-dialog){background:var(--paper);color:var(--ink);border:var(--stroke-strong) solid var(--ink);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);backdrop-filter:none}
body :is(.enquiry-dialog,.auth-dialog,.ad-dialog)::backdrop{background:var(--backdrop);backdrop-filter:blur(5px)}
body :is(.dialog-close,.auth-close){background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--edge)}
body :is(.dialog-close,.auth-close):hover{background:var(--selected);color:var(--ink)}
body :is(.checkout-summary dt,.checkout-notice,.auth-intro,.auth-password-hint,.auth-optional,.auth-account-email-label,.auth-session-status){color:var(--muted)}
body .checkout-summary dd{color:var(--ink)}
body .checkout-summary .checkout-money{border-color:var(--line);color:var(--ink)}
body :is(.checkout-error,.form-error){color:var(--error)}
body .auth-brand>img{display:block;width:44px;height:44px;flex:none;object-fit:contain}
body .auth-dialog{padding:var(--panel-padding)}
body .auth-heading{margin-bottom:24px}
body .auth-intro{margin-bottom:24px}
body .auth-tabs{background:var(--soft);border:var(--stroke) solid var(--edge);border-radius:var(--radius-control)}
body .auth-tabs>button{color:var(--muted);border-radius:8px}
body .auth-tabs>button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--paper);box-shadow:none}
body .auth-field label,body .auth-account-email{color:var(--ink)}
body .auth-field input{background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--edge);border-radius:var(--radius-control)}
body .auth-field input:focus{background:var(--paper);border-color:var(--ink);box-shadow:0 0 0 3px var(--selected)}
body .auth-field input[aria-invalid=true]{border-color:var(--error)}
body .auth-field input:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px var(--paper) inset;caret-color:var(--ink)}
body .auth-password-toggle{color:var(--muted)}
body .auth-password-toggle:hover{color:var(--ink);background:var(--soft)}
body .auth-dialog .auth-feedback,body .auth-account-feedback{color:var(--ink);border-color:var(--line);background:var(--soft)}
body .auth-dialog .auth-feedback-error,body .auth-account-feedback.auth-feedback-error{color:var(--error);border-color:var(--error-line);background:var(--error-soft)}
body .auth-account-card{background:var(--soft);border-color:var(--line)}
body .auth-avatar{background:var(--selected);color:var(--ink);border-color:var(--edge)}
body .auth-logout{color:var(--ink);border-color:var(--edge);background:var(--paper)}
body .auth-logout:hover{background:var(--soft);border-color:var(--ink)}
body .auth-remember{color:var(--muted)}
body .auth-remember input{accent-color:var(--accent)}

/* Compact catalogue keeps all filtering, limits and real service details. */
body.catalog-page{background:var(--soft)}
body.catalog-page .pricing-section{background:transparent;border:0}
body.catalog-page .pricing-section>.section-wrap{padding-top:148px;padding-bottom:var(--section-space)}
body.catalog-page #pricing-title{font-size:44px;line-height:1.25;letter-spacing:-.025em}
body .catalog-toolbar{border-color:var(--line)}
body .supplier-catalog-filters>.form-field>label{color:var(--muted)}
body :is(.platform-tab,.product-kind,.product-code,.product-limits,.catalog-meta,.pricing-footnote){color:var(--muted)}
body .platform-tab{border-radius:var(--radius-control);min-height:42px;font-size:13px}
body .platform-tab:hover{color:var(--ink);background:var(--selected)}
body .platform-tab.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}
body .search-box{background:var(--paper);border:var(--stroke) solid var(--edge);border-radius:var(--radius-control)}
body .search-box input{color:var(--ink);font-size:14px}
body .search-box>span{color:var(--muted)}
body.catalog-page .product-card{background:var(--paper);border:var(--stroke) solid var(--ink);border-radius:var(--radius-panel);padding:22px;box-shadow:none;transition:transform .22s,border-color .22s,box-shadow .22s}
body.catalog-page .product-card:hover{border-color:var(--ink);box-shadow:var(--shadow-flat);transform:translateY(-3px)}
body .product-platform{color:var(--ink);font-size:13px}
body.catalog-page .product-card h3{font-size:16px;line-height:1.65;color:var(--ink)}
body .product-price{color:var(--ink)}
body .product-price small{color:var(--muted)}
body .choose-service{color:var(--ink);background:var(--soft);border:var(--stroke) solid var(--edge);border-radius:var(--radius-control)}
body .choose-service:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* Account pages remain open and list-oriented, with no extra dashboard cards. */
body.customer-center{background:var(--paper);color:var(--ink)}
body.customer-center .cc-header{background:var(--soft);border:var(--stroke) solid var(--ink);border-radius:var(--radius-panel);box-shadow:none;backdrop-filter:none}
body.customer-center .cc-brand{color:var(--ink)}
body.customer-center .cc-nav{background:transparent;border:0;border-inline-end:var(--stroke) solid var(--line);border-radius:0;box-shadow:none;backdrop-filter:none;padding:8px 16px 8px 0}
body.customer-center .cc-nav a{color:var(--muted);border:var(--stroke) solid transparent;border-radius:var(--radius-control)}
body.customer-center .cc-nav a:hover{color:var(--ink);background:var(--soft)}
body.customer-center .cc-nav a[aria-current=page]{background:var(--selected);color:var(--ink);border-color:var(--ink)}
body.customer-center :is(p,.cc-meta,.cc-profile dt,.cc-stats h2,.cc-wallet-balances h2){color:var(--muted)}
body.customer-center :is(.cc-profile dd,.cc-summary strong,.cc-wallet-balances strong){color:var(--ink)}
body.customer-center :is(.cc-section,.cc-stats,.cc-summary,.cc-wallet-balances,.cc-record,.cc-record-row,.cc-notice,.cc-quote){border-color:var(--line)}
body.customer-center :is(.cc-status,.cc-link,.ad-nav a,.cc-record summary::after){color:var(--accent)}
body.customer-center .cc-button{border:var(--stroke) solid var(--edge);color:var(--ink);background:var(--paper);border-radius:var(--radius-control)}
body.customer-center .cc-button:hover{background:var(--selected);border-color:var(--ink)}
body.customer-center .cc-primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}
body.customer-center .cc-primary:hover{background:var(--ink-hover);color:var(--paper)}
body.customer-center .cc-avatar{background:var(--selected);border-color:var(--edge);color:var(--ink)}
body.customer-center .cc-instructions{border-color:var(--accent)}
body.customer-center .cc-instructions h3{color:var(--ink)}
body.customer-center .cc-payment-links a{color:var(--accent)}
body.customer-center :is(.cc-form>label,.cc-form>.form-field,#cc-currency-wrap label,.cc-payment-code figcaption,.cc-stats span){color:var(--muted)}
body.customer-center .cc-badge{color:var(--ink);border-color:var(--edge);background:var(--soft)}
body.customer-center :is(a,button,input,summary,[tabindex]):focus-visible{outline-color:var(--accent)}
body.customer-center .cc-content{scrollbar-color:var(--edge) transparent}
body .checkout-status a{color:var(--accent)}
body .checkout-status[role=alert]{color:var(--error)}
body .toast{background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--ink);box-shadow:var(--shadow-flat)}
body.admin-center{--ad-line:var(--line)}
body .ad-dialog label,body .ad-dialog p{color:var(--muted)}
html:is([lang=en],[lang=fr],[lang=es],[lang=vi]) body:not(.customer-center) :is(.section-heading h2,.how-copy h2,.request-copy h2,.faq-section h2,#pricing-title),html:is([lang=en],[lang=fr],[lang=es],[lang=vi]) body.customer-center #cc-view-title,html:is([lang=en],[lang=fr],[lang=es],[lang=vi]) body.admin-center .ad-heading h1{font-family:Zaolang Display,var(--font);font-weight:400;letter-spacing:0;text-transform:uppercase}
@media(min-width:981px) and (max-width:1280px){html:root .site-header{gap:14px;--nav-padding:20px}html:root .site-header .header-cta{display:none}html:root .site-header .desktop-nav{gap:18px;font-size:14px}}
@media(max-width:980px){:root{--section-space:64px}html:root .site-header .desktop-nav,html:root .site-header .header-auth{display:none}html:root .site-header .menu-toggle{display:block}html:root .site-header{height:70px;--nav-width:calc(100% - 40px);--nav-padding:20px;gap:12px}html:root .site-header .language-picker{margin-left:auto}html:root .site-header .brand{margin-right:0}.section-wrap{width:calc(100% - 48px)}body.catalog-page #pricing-title{font-size:38px}}
@media(max-width:760px){body.customer-center .cc-nav{padding:5px;border:var(--stroke) solid var(--ink);border-radius:var(--radius-panel);background:var(--paper)}body.customer-center .cc-nav a{border-radius:var(--radius-control)}}
@media(max-width:600px){:root{--section-space:48px;--section-gap:28px;--panel-padding:24px;--nav-width:calc(100% - 24px);--nav-top:12px;--nav-height:68px}html:root .site-header,html.nav-is-compact:root .site-header{top:12px;--nav-width:calc(100% - 24px);--nav-padding:14px;gap:9px;height:66px;border-radius:18px}html:root .site-header .header-cta{display:none}html:root .site-header .brand-name.brand-name-english{font-size:18px}html:root .site-header .brand-symbol{width:32px;height:32px}.section-wrap{width:calc(100% - 40px)}body .section-heading{align-items:start;gap:22px;flex-direction:column;margin-bottom:30px}body h2,html:not([lang^=zh]) body h2{font-size:30px;line-height:1.4}body .language-trigger{font-size:13px;min-height:40px;padding-inline:10px}body.catalog-page #pricing-title{font-size:34px}body.catalog-page .pricing-section>.section-wrap{padding-top:120px}body .site-footer{padding-top:40px}body .footer-top{gap:24px;flex-wrap:wrap}body .footer-bottom{gap:16px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Bilingual header wordmark. */
.brand-wordmark{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;line-height:1;white-space:nowrap;letter-spacing:0}
.brand-wordmark .brand-name-chinese{display:block;color:var(--ink);font-family:var(--font);font-size:18px;font-weight:700;line-height:1.1;letter-spacing:.06em}
.cc-brand .brand-wordmark>strong{font-size:20px;line-height:1;letter-spacing:.025em}
@media(max-width:600px){.brand-wordmark{gap:3px}.brand-wordmark .brand-name-chinese{font-size:16px}.cc-brand .brand-wordmark>strong{font-size:18px}}
