*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#162d48;font:16px/1.7 Arial,sans-serif}a{color:#1749ac;text-decoration:none}h1,h2,h3{line-height:1.2}h1{font-size:clamp(36px,5vw,65px)}h2{font-size:32px}img{max-width:100%;height:auto;display:block}.top{background:#103784;color:white;padding:7px 5%;display:flex;justify-content:space-between;font-size:12px}.top a,nav a{color:white}header{background:#1749ac;padding:22px 4%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10;gap:20px}.logo img{width:165px}nav{display:flex;align-items:center;gap:20px;font-size:14px}.button{background:#ff6b00;color:white;border:0;border-radius:30px;padding:13px 25px;display:inline-block;font-weight:bold;cursor:pointer}.hero{background:linear-gradient(90deg,#10243be6,#10243b55),url('home-1.webp') center/cover;color:white;padding:90px 6%;min-height:580px}.hero h1{max-width:900px}.hero p{font-size:21px;max-width:650px}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:bold;color:#1749ac}.hero .eyebrow,.cta .eyebrow{color:#ffb26b}.actions{display:flex;gap:20px}.outline{border:1px solid white;color:white;padding:12px 24px;border-radius:30px}.strip{display:flex;justify-content:space-around;background:#f1f5fa;padding:22px;gap:20px}section{padding:25px max(5vw,calc((100vw - 1160px)/2))}.intro{background:#eef3fb;padding:65px 6%}.intro p{font-size:19px;max-width:850px}.sectionhead{display:flex;justify-content:space-between;align-items:center}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:30px}.card{border:1px solid #dce3eb;border-radius:8px;overflow:hidden}.card>img{width:100%;height:230px;object-fit:contain;background:#f8fafc;padding:15px}.card>div{padding:25px}.card h2{font-size:24px}.card h3{font-size:23px}.card p{color:#5b6877}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.split>img{width:100%;height:350px;object-fit:cover;border-radius:8px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px}figure{margin:0;background:#f1f5fa}figure img{width:100%;height:310px;object-fit:cover}figcaption{padding:15px}.newslist article,.reading article{padding:40px 0;border-bottom:1px solid #dce3eb;scroll-margin-top:110px}.reading{max-width:960px;margin:auto;padding:55px 30px}.answer,.notice{border-left:4px solid #ff6b00;padding:20px;background:#f4f7fb}details{padding:20px 0;border-bottom:1px solid #dce3eb}summary{font-size:18px;font-weight:bold;cursor:pointer}details p{padding:15px 20px;color:#5b6877}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:18px;border-bottom:1px solid #dce3eb}th{background:#eef3fb}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:60px}form{background:#f1f5fa;padding:30px}label{display:block;margin-bottom:20px}input,select,textarea{font:inherit;width:100%;display:block;padding:12px;border:1px solid #bcc9d8;border-radius:4px}.qr{width:150px;height:150px}.cta{background:#1749ac;color:white;padding:55px 6%;display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:650px}footer{background:#11243a;color:#c5d1df;display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:40px;padding:55px 6%;font-size:14px}footer a{display:block;color:inherit}footer small{grid-column:1/-1}.skip{position:absolute;top:-100px}.skip:focus{top:0}.menu{display:none}[hidden]{display:none!important}@media(max-width:1000px){header{flex-wrap:wrap}nav{flex-wrap:wrap;gap:15px}.grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.top{display:none}.menu{display:block;background:none;color:white;border:1px solid white;padding:8px}nav{display:none;width:100%}nav.open{display:flex;flex-direction:column;align-items:flex-start}.grid,.gallery,.split,.contactgrid{grid-template-columns:1fr}.strip{flex-wrap:wrap}.cta{display:block}footer{grid-template-columns:1fr}.hero{padding:65px 6%}.actions{flex-wrap:wrap}.sectionhead{display:block}.gallery img{height:260px}}

.procurement{background:#f1f5fa}.procurement article{padding:10px}.floating-contact{position:fixed;bottom:20px;right:20px;background:#116e43;color:white;padding:12px 20px;border-radius:28px;z-index:30;box-shadow:0 4px 18px #0003}.whatsapp-submit{margin-top:15px;background:#116e43}footer{padding-bottom:90px}

/* Product cards: fill image area without distortion. */
.card>img{padding:0;object-fit:cover;object-position:center;width:100%;height:260px;background:#fff}
@media(max-width:650px){.card>img{height:auto;aspect-ratio:4/3;object-fit:cover}}

.contactgrid{grid-template-columns:1fr}.contactgrid>div{max-width:760px}

.contact-intro{background:linear-gradient(115deg,#e8f0fc,#f6f9fd)}.contact-mail{align-self:center;font-weight:bold}.channel-icon{display:block;font-size:14px;color:#ff6b00;font-weight:bold;letter-spacing:.1em;margin-bottom:22px}.contact-channels .card a{overflow-wrap:anywhere}.contact-topics{background:#f3f6fa}.contact-brief,.factory-contact,.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.brief-list article{padding:18px 0;border-bottom:1px solid #dce3eb}.brief-list p{margin:8px 0;color:#5b6877}.factory-contact{background:#f1f5fa}.factory-contact address{font-style:normal;margin:20px 0;padding-left:20px;border-left:3px solid #ff6b00}.factory-contact figure img{height:350px;object-fit:cover}.contact-bottom{grid-template-columns:1fr 210px}.contact-bottom>img{background:white;padding:12px;border:1px solid #dce3eb;width:180px;height:180px;object-fit:contain}@media(max-width:750px){.contact-brief,.factory-contact,.contact-bottom{grid-template-columns:1fr;gap:30px}}

.home-hero{background:linear-gradient(90deg,#0b203de8 5%,#0b203d80 65%,#0b203d22),url('home-1.webp') center/cover;color:white;padding:85px 6%;min-height:620px;display:flex;align-items:center}.home-hero h1{font-size:clamp(44px,5.5vw,76px);letter-spacing:-.045em;line-height:1.04;margin:22px 0}.home-hero p{max-width:570px;color:#e0e9f5;font-size:18px}.home-hero .eyebrow{color:#ffb66e}.hero-note{margin-top:38px;font-size:12px;letter-spacing:.08em;color:#cddcf0}.hero-note span{margin:0 12px;color:#ff8b35}.home-band{display:flex;justify-content:space-between;padding:25px 6%;background:#112d51;color:#ff9b4e;gap:25px;font-size:13px}.home-band b{color:white;margin-left:16px;font-weight:500}.home-products .sectionhead{margin-bottom:35px;gap:45px}.section-caption{max-width:400px;color:#596b80}.home-kit-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:25px}.home-kit{background:#f0f4f9;border-radius:6px;overflow:hidden}.home-kit img{width:100%;height:270px;object-fit:cover}.home-kit>div{padding:25px}.home-kit p{color:#596b80;font-size:15px}.home-kit h3{font-size:25px}.home-components{background:#112d51;color:white;display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.home-components .eyebrow{color:#ffab66}.home-components p{color:#c9d6e7}.home-components>div>a{color:#ffaf70}.component-links a{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid #ffffff30;color:white}.component-links small{display:block;color:#b9c9dd;margin-top:5px}.component-links em{font-style:normal;font-size:27px;color:#ffab66}.home-factory{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.factory-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center}.factory-mosaic img{object-fit:cover;width:100%;height:370px;border-radius:6px}.factory-mosaic img+img{height:270px}.home-factory p{color:#596b80}.home-process{background:#f0f4f9}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:35px}.process-grid article{border-top:2px solid #c7d4e4;padding-top:22px}.process-grid article>span{font-size:36px;color:#1749ac;letter-spacing:-.06em}.process-grid h3{margin-bottom:15px}.process-grid p{color:#596b80}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.resource-grid article{padding-left:22px;border-left:3px solid #ff6b00}.resource-grid p{color:#596b80}.home-news{background:#f7f9fc}.news-feature{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;background:white;border:1px solid #dce3eb;color:#162d48;border-radius:8px;overflow:hidden}.news-feature:hover{text-decoration:none}.news-feature img{height:330px;width:100%;object-fit:cover}.news-feature>div{padding:40px}.news-feature time{font-size:12px;color:#1749ac;letter-spacing:.08em}.news-feature h3{font-size:30px}.news-feature b{color:#1749ac}@media(max-width:850px){.home-kit-grid{grid-template-columns:1fr 1fr}.home-kit:last-child{grid-column:1/-1}.home-components,.home-factory{grid-template-columns:1fr;gap:35px}.home-band{flex-wrap:wrap}.process-grid,.resource-grid{gap:25px}.news-feature>div{padding:25px}}@media(max-width:600px){.home-hero{padding:65px 6%;min-height:600px}.home-kit-grid,.process-grid,.resource-grid,.news-feature{grid-template-columns:1fr}.home-kit:last-child{grid-column:auto}.home-kit img{height:260px}.factory-mosaic img{height:280px}.factory-mosaic img+img{height:220px}.home-band{flex-direction:column;gap:12px}.news-feature img{height:260px}.section-caption{margin-top:20px}}

.home-models{background:#f4f7fb}.model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:35px}.model-card{background:white;border:1px solid #dce3eb;border-radius:7px;overflow:hidden}.model-card>a>img{width:100%;height:225px;object-fit:cover}.model-card>div{padding:22px}.model-fuel{font-size:11px;letter-spacing:.09em;color:#1749ac;font-weight:bold}.model-card h3{font-size:30px;margin:12px 0}.model-card p{font-size:15px;color:#596b80;min-height:76px}.model-detail,.model-ask{display:block;font-size:14px;font-weight:bold}.model-ask{margin-top:14px;padding-top:14px;border-top:1px solid #dce3eb;color:#116e43}.home-partners{background:#fff}.partner-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin-top:30px}.partner-grid article{border:1px solid #dce3eb;padding:30px;border-radius:6px}.partner-grid p{color:#596b80}.reference-item{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:45px;padding:40px 0;border-bottom:1px solid #dce3eb;scroll-margin-top:130px}.reference-item img{width:100%;height:320px;object-fit:cover;border-radius:6px}.reference-item p{color:#596b80}@media(max-width:950px){.model-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.model-grid,.partner-grid,.reference-item{grid-template-columns:1fr}.model-card p{min-height:0}.model-card>a>img{height:280px}.reference-item{gap:20px}}

.factory-mosaic.factory-panorama{display:block}.factory-panorama img{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:6px}

.top{background:#203448;color:#eef3f8}.top a{color:#eef3f8}

/* Bottom project callout */
.cta{background:#eaf0f6;color:#162d48}.cta .eyebrow{color:#1749ac}.cta h2{color:#162d48}.cta p{color:#52657a}

/* Progressive homepage motion: content stays visible without JavaScript. */
@keyframes home-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
.home-page .home-hero .eyebrow{animation:home-enter .65s ease-out both}
.home-page .home-hero h1{animation:home-enter .8s .1s ease-out both}
.home-page .home-hero p{animation:home-enter .8s .2s ease-out both}
.home-page .home-hero .actions{animation:home-enter .8s .3s ease-out both}
.home-page .hero-note{animation:home-enter .8s .4s ease-out both}
.home-page .motion-ready{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.3,1);transition-delay:var(--reveal-delay,0ms)}
.home-page .motion-ready:not(.is-visible){opacity:0;transform:translateY(24px)}
.home-page .motion-ready.is-visible{opacity:1;transform:translateY(0)}
.home-page .home-kit,.home-page .model-card,.home-page .partner-grid article{transition:transform .25s ease,box-shadow .25s ease}
.home-page .home-kit:hover,.home-page .model-card:hover,.home-page .partner-grid article:hover{transform:translateY(-5px);box-shadow:0 14px 30px #112d5114}
.home-page .home-kit img,.home-page .model-card img,.home-page .news-feature img{transition:transform .5s ease}
.home-page .home-kit:hover img,.home-page .model-card:hover img{transform:scale(1.025)}
.home-page .button{transition:background-color .2s ease,box-shadow .2s ease}
.home-page .button:hover{box-shadow:0 6px 18px #ff6b0030}
.home-page .component-links a{transition:padding-left .25s ease,background-color .25s ease}
.home-page .component-links a:hover{padding-left:12px;background:#ffffff08}
}
@media(prefers-reduced-motion:reduce){.home-page .motion-ready{opacity:1!important;transform:none!important;transition:none!important}.home-page *{animation:none!important;scroll-behavior:auto!important}}

/* Wider homepage banner copy */
.home-hero-inner{width:100%;max-width:1120px}.home-hero h1{max-width:1080px}.home-hero p{max-width:820px}@media(max-width:600px){.home-hero h1{font-size:clamp(36px,9vw,44px)}.home-hero p{max-width:100%}}

/* Interior page banners — original company imagery, local WebP files. */
.intro.inner-banner{position:relative;background:linear-gradient(90deg,rgba(9,30,55,.91),rgba(9,30,55,.64)),var(--banner-image) center/cover no-repeat;color:#fff;min-height:340px;display:flex;flex-direction:column;justify-content:center;padding-top:65px;padding-bottom:65px;border-bottom:0}
.intro.inner-banner h1{color:#fff;text-shadow:0 2px 14px #0002}.intro.inner-banner .eyebrow{color:#ffc18b}.intro.inner-banner p{color:#edf3fa;max-width:850px}.intro.inner-banner .contact-mail{color:#fff}.intro.inner-banner .actions{margin-top:15px}
@media(max-width:650px){.intro.inner-banner{min-height:290px;padding-top:45px;padding-bottom:45px}.intro.inner-banner h1{font-size:35px}.intro.inner-banner p{font-size:17px}}

/* Explicit image layer avoids CSS variable URL resolution differences. */
.intro.inner-banner{position:relative;isolation:isolate;overflow:hidden;background:#18364e;display:block;padding-top:65px;padding-bottom:65px}
.intro.inner-banner>.inner-banner-photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:-2;display:block}
.intro.inner-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,43,.67),rgba(7,24,43,.23));z-index:-1;pointer-events:none}
.intro.inner-banner h1,.intro.inner-banner p,.intro.inner-banner .eyebrow{position:relative}.intro.inner-banner h1{text-shadow:0 2px 8px #0007}.intro.inner-banner p{text-shadow:0 1px 5px #0008}
@media(max-width:650px){.intro.inner-banner{padding-top:45px;padding-bottom:45px}}

.intro.product-banner>.inner-banner-photo{object-position:70% center}.intro.product-banner::before{background:linear-gradient(90deg,rgba(7,24,43,.78),rgba(7,24,43,.18))}.intro.news-banner>.inner-banner-photo{object-position:center 56%}.intro.news-banner::before{background:linear-gradient(90deg,rgba(7,24,43,.8),rgba(7,24,43,.35))}
