/* Shared public website layout. */
:root{--blue:#087c9b;--navy:#122c42;--ink:#263b4b;--muted:#71818d;--line:#e2e8ed;--pale:#f3f6f8}
body{font-family:'Ubuntu','Noto Sans SC','Microsoft YaHei',Arial,sans-serif}
.wrap{width:min(1140px,calc(100% - 48px))}
.header{background:#143b56;color:#fff;border:0;backdrop-filter:none}
.header.scrolled{background:#123b56f5;box-shadow:0 3px 18px #0002}
.header-inner{width:min(1320px,calc(100% - 64px));height:94px;gap:32px}
.header .brand{font-size:22px;letter-spacing:1px}
.header .brand img{background:#fff;border-radius:4px;padding:3px;width:56px;height:56px}
.header .brand small{font-size:9px;letter-spacing:4px}
.header nav{gap:33px;font-size:16px;font-weight:500}
.header nav>a:hover,.header nav>a.active{color:#fff}
.header nav>a:not(.nav-cta)::after{background:white;bottom:-12px}
#language-toggle{border-color:#ffffff66;color:white;min-height:42px;font-size:14px;width:110px;cursor:pointer;padding:8px}
#language-toggle option{background:#fff;color:#263b4b}
#language-toggle:hover{background:#ffffff1f}
html[lang=sw] .header nav{font-size:14px;gap:20px;line-height:1.35}
.scroll-progress{background:#ffffffa6}
.hero{position:relative;background:#143f5b;isolation:isolate}
.banner-slides{display:grid}
.banner-slide{grid-area:1/1;display:grid;grid-template-columns:1fr 1.08fr;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .7s ease,visibility .7s}
.banner-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.banner-copy{position:relative;z-index:1;color:white;padding:55px 55px 80px max(42px,calc((100vw - 1140px)/2));align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#174e6c,#102d46)}
.banner-copy::after{content:'';position:absolute;inset:0 -50px 0 0;background:linear-gradient(130deg,#174e6c,#102d46);clip-path:polygon(0 0,100% 0,calc(100% - 65px) 100%,0 100%);z-index:-1}
.banner-eyebrow{font-size:14px;font-weight:700;letter-spacing:2px;margin-bottom:21px;color:#aadae7}
.banner-copy h1,.banner-copy h2{color:white;font-size:clamp(38px,3.8vw,60px);font-weight:700;letter-spacing:-1.2px;line-height:1.12;max-width:550px}
html[lang=zh-CN] .banner-copy h1,html[lang=zh-CN] .banner-copy h2{font-size:clamp(34px,3.4vw,51px);letter-spacing:0;line-height:1.32}
.banner-description{font-size:18px;line-height:1.75;max-width:430px;margin-top:23px;color:#deedf3}
.banner-cta{align-self:flex-start;background:white;color:#0b6886;margin-top:30px;font-size:16px;min-width:180px}
.banner-cta:hover{background:#eef7fa;transform:translateY(-2px);box-shadow:0 8px 20px #082d442b}
.banner-visual{width:100%;aspect-ratio:4/3;overflow:hidden}
.banner-visual img{width:100%;height:100%;object-fit:contain}
.banner-controls{position:absolute;z-index:3;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;padding:5px 10px;background:#122c426b;border-radius:30px;backdrop-filter:blur(4px)}
.banner-arrow,#banner-pause{display:grid;place-items:center;width:30px;height:30px;color:white;background:none;border:0;padding:0;font-size:27px}
#banner-pause{border-left:1px solid #fff5;font-size:16px;padding-left:9px;width:34px}
.banner-dots{display:flex;gap:8px}
.banner-dots button{padding:0;width:10px;height:10px;border-radius:50%;border:1px solid #fff;background:#ffffff55;transition:background .2s,transform .2s}
.banner-dots button[aria-pressed=true]{background:white;transform:scale(1.15)}
.banner-arrow:hover,#banner-pause:hover{background:#ffffff20;border-radius:50%}
.primary{background:#087c9b}.primary:hover{background:#09627c;box-shadow:0 8px 22px #087c9b22}.outline:hover{background:#eef7fa;border-color:#087c9b}
@media(max-width:1100px){.header-inner{width:calc(100% - 40px);gap:20px}.header nav{gap:22px;font-size:15px}.header .brand{font-size:19px}.header .brand img{width:47px;height:47px}.banner-copy{padding:40px 35px 70px}.banner-copy h1,.banner-copy h2{font-size:42px}.banner-description{font-size:16px}}
@media(max-width:820px){.header-inner{height:74px}.header nav{top:74px;background:#143b56;padding:16px 24px}.header nav>a{border-color:#ffffff2b;padding:15px 0}.menu-toggle{border-color:#ffffff66;background:transparent}.menu-toggle span{background:white}.banner-slide{grid-template-columns:1fr 1fr}.banner-copy{padding:28px 20px 54px}.banner-copy::after{right:-20px;clip-path:polygon(0 0,100% 0,calc(100% - 20px) 100%,0 100%)}.banner-eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:12px}.banner-copy h1,.banner-copy h2{font-size:31px}.banner-description{font-size:15px;margin-top:15px}.banner-cta{font-size:14px;margin-top:20px;min-width:0;min-height:44px;padding:10px 15px}.banner-visual{height:100%;aspect-ratio:auto;background:#174862}.banner-visual img{object-fit:contain}.banner-controls{bottom:11px}html[lang=zh-CN] .banner-copy h1,html[lang=zh-CN] .banner-copy h2{font-size:30px}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.header-inner{width:calc(100% - 30px);height:68px;gap:10px}.header .brand{font-size:17px;gap:8px}.header .brand img{width:42px;height:42px}.header .brand small{font-size:8px;letter-spacing:2.9px}.header nav{top:68px}.header-controls{gap:7px}#language-toggle{min-width:45px;min-height:38px}.menu-toggle{width:38px;height:38px}.banner-slide{display:flex;flex-direction:column;align-items:stretch}.banner-copy{padding:30px 24px 27px;min-height:256px}.banner-copy::after{display:none}.banner-copy h1,.banner-copy h2{font-size:35px;letter-spacing:-.7px;max-width:360px}.banner-description{font-size:16px;max-width:360px;margin-top:15px}.banner-eyebrow{font-size:12px;margin-bottom:12px}.banner-cta{margin-top:21px;font-size:14px}.banner-visual{width:100%;height:auto;aspect-ratio:4/3}.banner-controls{bottom:13px}.banner-visual img{width:100%;height:100%;object-fit:contain}html[lang=zh-CN] .banner-copy h1,html[lang=zh-CN] .banner-copy h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.banner-slide,.banner-dots button{transition:none}}
.section{padding-block:58px}
.centered-heading{text-align:center;display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:38px}
.centered-heading h2,html[lang=zh-CN] .centered-heading h2{font-size:36px;font-weight:700;letter-spacing:0;line-height:1.25}
.heading-rule{width:70px;height:2px;background:#087c9b;display:block;margin-top:20px}
.centered-heading>p{margin-top:17px;font-size:16px;color:#757575}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:22px}
.catalog-search{width:min(420px,65%);display:flex;align-items:center;gap:10px;border:1px solid #ddd;padding:0 14px;height:46px;background:#fafafa}
.catalog-search svg{width:19px;height:19px;fill:none;stroke:#888;stroke-width:1.7;flex-shrink:0}
.catalog-search input{border:0;padding:10px 0;background:transparent;font-size:14px;box-shadow:none;outline:0}
.catalog-search:focus-within{outline:2px solid #188fab;outline-offset:2px}
.catalog-search button{border:0;background:none;padding:0;font-size:24px;color:#777;line-height:1}
.download-link{margin:0;font-size:14px;color:#0b718e;gap:10px}
.category-tabs{padding:0;gap:8px;margin:0;border:0;grid-template-columns:repeat(8,minmax(0,1fr))}
.category-tab{padding:14px 5px;min-height:104px;background:#fafafa;border:1px solid #eee;font-size:14px;gap:8px}
.category-tab:hover{background:#f0f8fa;border-color:#b0d4df;color:#11748f}
.category-tab[aria-pressed=true]{background:#edf7fa;color:#087c9b;border-color:#acd4df}
.category-icon{width:59px;height:36px}.category-label small{font-size:12px;margin-top:3px;color:inherit}
.catalog-status{padding:18px 0;color:#777;font-size:14px}
.truck-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 25px}
.product-card{border:0;box-shadow:none;background:white;transition:transform .3s}
.product-photo{border:1px solid #e0e0e0;border-radius:3px;aspect-ratio:4/3;background:#eee}
.product-body{padding:17px 3px 0;text-align:center}
.product-brand{font-size:12px;color:#8b8b8b;letter-spacing:.4px;margin-bottom:7px;line-height:1.4}
.product-card h3,html[lang=zh-CN] .product-card h3{font-size:18px;font-weight:500;letter-spacing:0;line-height:1.45;min-height:52px}

.product-actions{margin-top:15px;padding-top:10px;border-color:#eee;gap:8px}
.product-actions button,.product-actions .product-enquire{font-size:14px;padding:6px 3px;font-weight:500}
.product-actions .product-enquire{color:#087c9b}
.product-card:hover{box-shadow:none;transform:translateY(-4px)}
.product-card:hover .product-photo{border-color:#69adc1;box-shadow:0 7px 18px #0000000b}
.catalog-more{margin-top:40px}.catalog-more .button{min-width:190px;border-color:#d3d3d3;color:#555}.catalog-more p{font-size:13px}
.catalog-empty{text-align:center;padding:55px 20px;background:#f6f6f6;font-size:16px;color:#666}
.company{background:#f3f6f8;color:#333;padding-block:58px}
.company-layout{grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}
.company-photo img{width:100%;height:auto;aspect-ratio:9/5;object-fit:cover}
.company-copy h3{font-size:26px;line-height:1.35;font-weight:500;letter-spacing:0}
.company-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#717171;margin-top:20px}
.company-facts{grid-template-columns:1fr 1fr;gap:30px;border-color:#ddd;margin-top:24px;padding:21px 0 0}
.company-facts>div{gap:7px}.company-facts strong,.company-facts>div:first-child strong{font-size:27px;color:#0b7a99;font-weight:500;letter-spacing:0;line-height:1.2}
.company-facts span{font-size:13px;color:#777;line-height:1.6}.company-copy>.button{margin-top:27px;font-size:14px;min-height:46px;padding:11px 22px}
.contact-details{background:white}
.contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;text-align:center}
.contact-card{display:flex;flex-direction:column;align-items:center}
.contact-card svg{width:35px;height:35px;stroke:#137f9d;stroke-width:1.6;fill:none;margin-bottom:19px}
.contact-card h3{font-size:20px;font-weight:500;line-height:1.4;margin-bottom:12px}
.contact-card p{font-size:15px;color:#777;line-height:1.8;max-width:310px}
a.contact-card:hover h3{color:#087c9b}a.contact-card:hover svg{transform:translateY(-3px)}.contact-card svg{transition:transform .2s}
.contact{background:#122c42;color:white;padding-block:44px 36px}
.enquiry-grid{display:block;max-width:1000px}
.contact-intro.centered-heading{margin-bottom:24px}
.contact-intro.centered-heading h2,html[lang=zh-CN] .contact-intro.centered-heading h2{font-size:32px;font-weight:500}
.contact-intro.centered-heading>p{color:#b7babf;margin-top:10px;max-width:none;font-size:16px}
.contact-intro .heading-rule{background:#42b3cd}
.enquiry-form{background:#fff;color:#333;box-shadow:none;border:0;padding:22px 35px;max-width:900px;margin:auto}
.form-heading{margin-bottom:14px}.enquiry-form .form-heading :is(h2,h3){font-size:22px;font-weight:500;letter-spacing:0}.form-heading>span{font-size:13px}
.form-grid{gap:12px 22px}.form-grid label{font-size:14px;gap:5px}.form-grid input,.form-grid select,.form-grid textarea{border-color:#ddd;color:#333;font-size:15px}
.form-grid textarea{height:78px;min-height:78px}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:2px solid #b8dce7;border-color:#137f9d}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:#929292}
.submit{margin-top:16px;min-height:48px;padding-block:11px}.form-note{font-size:13px;color:#828282;margin-top:8px}
.enquiry-form .privacy-form-link{margin-top:6px}
.selected-model{background:#edf7fa;color:#0d6b87;border-color:#137f9d}
footer{background:#122c42;color:#ddd;padding:16px 0 24px}
.footer-columns{display:grid;grid-template-columns:1.5fr 1fr .85fr 1fr;gap:50px;padding-top:38px;border-top:1px solid #ffffff22}
.footer-columns h3{font-size:20px;line-height:1.4;color:white;font-weight:500;margin-bottom:19px}
.footer-columns>div>a:not(.brand){display:block;font-size:15px;line-height:1.6;color:#b0b3b8;margin-bottom:11px}
.footer-columns>div>a:not(.brand):hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-brand .brand{font-size:22px;color:#fff;gap:9px}.footer-brand .brand img{width:48px;height:48px;background:#fff;padding:3px;border-radius:3px}.footer-brand .brand small{font-size:9px;letter-spacing:3.9px}
.footer-brand p{font-size:14px;color:#a5a9af;line-height:1.8;margin-top:17px}.footer-brand p+p{margin-top:9px}
.footer-bottom{margin-top:35px;padding-top:21px;border-color:#ffffff22;font-size:12px;color:#8f949c}
.quick-actions{position:fixed;right:0;top:39%;z-index:25;background:#087c9b;box-shadow:0 4px 18px #0002;display:flex;flex-direction:column}
.quick-actions a{width:56px;min-height:66px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;color:white;border-bottom:1px solid #ffffff38;font-size:10px;transition:background .2s}
.quick-actions a:last-child{border:0}.quick-actions a:hover{background:#09627c}.quick-actions svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5}
#close-dialog:hover{background:#eef7fa}.toast{background:#292c30;border-color:#51545a}
@media(max-width:1200px){.quick-actions a{width:45px;min-height:59px;font-size:9px}.quick-actions svg{width:22px;height:22px}.wrap{width:calc(100% - 84px)}.truck-grid{gap:25px 18px}.company-layout{gap:35px}.footer-columns{gap:30px}}
@media(max-width:900px){.truck-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.category-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.category-tab{min-height:96px}.company-layout{grid-template-columns:1fr 1fr;gap:28px}.company-copy h3{font-size:23px}.company-copy>p:not(.eyebrow){font-size:15px;margin-top:15px}.company-facts{gap:15px}.company-facts strong,.company-facts>div:first-child strong{font-size:23px}.footer-columns{grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer-columns>div:last-child{grid-column:2/-1}.contact-cards{gap:20px}.contact-card p{font-size:14px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.quick-actions{top:auto;bottom:0;left:0;right:0;flex-direction:row;box-shadow:0 -3px 18px #0001}.quick-actions a{width:33.333%;min-height:57px;border:0;border-right:1px solid #ffffff33;gap:3px;font-size:12px}.quick-actions svg{width:21px;height:21px}body{padding-bottom:57px}.toast{bottom:75px}.section{padding-block:43px}.contact.section{padding-block:32px 28px}.centered-heading{margin-bottom:28px}.centered-heading h2,html[lang=zh-CN] .centered-heading h2{font-size:30px}.heading-rule{margin-top:16px;width:56px}.centered-heading>p{font-size:15px;margin-top:14px}.catalog-toolbar{gap:14px;margin-bottom:19px}.catalog-search{width:65%;padding-inline:10px}.catalog-search input{font-size:13px}.download-link{font-size:13px;gap:5px}.truck-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}.product-body{padding:12px 1px 0}.product-brand{font-size:11px;line-height:1.4}.product-card h3,html[lang=zh-CN] .product-card h3{font-size:17px;line-height:1.4;min-height:48px}.product-actions{margin-top:10px;padding-top:7px;gap:5px}.product-actions button,.product-actions .product-enquire{font-size:14px;padding:5px 1px}.category-tab{font-size:13px;min-height:90px;gap:6px;padding:10px 2px}.category-icon{width:53px;height:32px}.category-tab small{font-size:11px}.catalog-status{font-size:13px;padding-block:16px}.company-layout{grid-template-columns:1fr;gap:28px}.company-copy h3{font-size:24px}.company-copy>p:not(.eyebrow){font-size:16px}.company-facts{grid-template-columns:1fr 1fr;padding:20px 0 0;margin-top:23px;gap:20px}.company-facts>div{gap:8px}.company-facts span{font-size:13px}.company-facts strong,.company-facts>div:first-child strong{font-size:26px}.contact-cards{grid-template-columns:1fr;gap:30px}.contact-card svg{width:30px;height:30px;margin-bottom:12px}.contact-card h3{font-size:20px;margin-bottom:8px}.contact-card p{font-size:15px}.contact-intro.centered-heading h2,html[lang=zh-CN] .contact-intro.centered-heading h2{font-size:28px;line-height:1.35}.contact-intro.centered-heading>p{font-size:15px}.enquiry-form{padding:18px}.enquiry-form .form-heading :is(h2,h3){font-size:21px}.form-grid{gap:12px}.form-note{font-size:12px}.footer-columns{grid-template-columns:1fr 1fr;gap:28px 20px;padding-top:30px}.footer-columns .footer-brand{grid-column:1/-1}.footer-columns>div:last-child{grid-column:auto}.footer-columns h3{font-size:18px;margin-bottom:15px}.footer-columns>div>a:not(.brand){font-size:14px;margin-bottom:9px}.footer-brand p{font-size:14px;max-width:300px}.footer-bottom{display:flex;flex-direction:column;gap:8px;margin-top:26px;font-size:12px}.catalog-more{margin-top:28px}}
@media(max-width:359px){.header .brand>span{font-size:15px}.header .brand small{font-size:7px}.header .brand img{width:35px;height:35px}.product-actions{flex-wrap:wrap}.catalog-toolbar{flex-wrap:wrap}.catalog-search{width:100%}}
@media(prefers-reduced-motion:reduce){.contact-card svg,.details-toggle{transition:none}}
.banner-copy h1>span,.banner-copy h2>span{display:block}
.banner-arrow,#banner-pause{line-height:1}
.centered-heading h2{text-wrap:balance}

.enquiry-page .contact-intro h1{font-size:32px;font-weight:500;line-height:1.35;letter-spacing:0}
.enquiry-page .enquiry-form{scroll-margin-top:100px}
@media(max-width:700px){.enquiry-page .contact-intro h1,html[lang=zh-CN] .enquiry-page .contact-intro h1{font-size:28px}.enquiry-page .enquiry-form{scroll-margin-top:84px}}
@media(max-width:380px){.header-inner{width:calc(100% - 24px);gap:8px}.header .brand{gap:6px}.header .brand img{width:34px;height:34px}.header .brand>span{font-size:14px}.header .brand small{font-size:7px;letter-spacing:2px}.header-controls{gap:6px}#language-toggle{width:98px;min-width:0;padding:6px;font-size:13px}.menu-toggle{width:34px}}

/* Navigation and footer while the company identity is being finalized. */
.header nav{margin-left:0}.header-controls{margin-left:auto}.mobile-home{display:none}.contact-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-toolbar .catalog-search{width:min(560px,100%)}
@media(max-width:820px){.mobile-home{display:block;font-size:16px;font-weight:600}.header nav{margin:0}}
@media(max-width:700px){.contact-cards{grid-template-columns:1fr}}

/* Direct sales contact and reply details. */
.contact-detail{display:block;margin-top:9px;color:#087c9b;font-size:14px;font-weight:600;letter-spacing:.01em}
.footer-whatsapp{display:inline-flex;margin-top:12px;color:#c8eaf5;font-size:14px;font-weight:600;line-height:1.5}
.footer-whatsapp:hover,.footer-whatsapp:focus-visible{color:#fff;text-decoration:underline}
.enquiry-direct-contact{display:inline-flex;align-items:center;gap:9px;margin-top:17px;padding:10px 14px;border:1px solid #b7d7e4;color:#087293;font-size:14px;font-weight:600;transition:background .2s,border-color .2s,transform .2s}
.enquiry-direct-contact:hover,.enquiry-direct-contact:focus-visible{background:#e7f5f9;border-color:#087c9b;transform:translateY(-2px)}
.contact-required-note{grid-column:1/-1;margin:1px 0 -7px;color:#586e7c;font-size:12px;line-height:1.5}
.form-grid [aria-invalid="true"]{border-color:#a52424}
@media(max-width:900px) and (min-width:701px){.contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-cards>.contact-card:last-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.enquiry-direct-contact{transition:none}.enquiry-direct-contact:hover{transform:none}}
