:root{
  --navy:#0E2A4A;--navy-deep:#0A1F38;--navy-mid:#153A61;
  --gold:#B9893D;--gold-light:#D4AF6A;
  --cream:#F3EEE4;--paper:#FBF9F4;--ink:#1F1208;--text:#4B4438;
  --line:rgba(14,42,74,.14);--radius:6px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--cream);color:var(--text);font-family:'Inter',sans-serif;line-height:1.65;}
h1,h2,h3,.display-font{font-family:'Poppins',sans-serif;color:var(--ink);font-weight:700;letter-spacing:-0.01em;}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:.6rem;display:block;}
a{text-decoration:none;}

/* topbar */
.topbar{background:var(--navy-deep);color:#B7C2D1;font-size:.8rem;padding:.55rem 0;}
.topbar a{color:#B7C2D1;}
.topbar a:hover{color:var(--gold-light);}
.topbar .item{display:inline-flex;align-items:center;gap:.5rem;margin-right:1.6rem;}
.topbar .item svg{width:14px;height:14px;color:var(--gold-light);}
@media (max-width:767px){.topbar .item.hide-mobile{display:none;}}

/* logo */
.logo-mark{display:flex;align-items:center;gap:.6rem;}
.logo-mark svg{height:38px;width:auto;}
.logo-text{line-height:1.05;}
.logo-text .l1{font-family:'Poppins',sans-serif;font-weight:800;font-size:1.15rem;color:var(--navy);letter-spacing:.02em;}
.logo-text .l2{font-family:'Poppins',sans-serif;font-weight:700;font-size:.72rem;color:var(--gold);letter-spacing:.14em;}

/* navbar */
.navbar-brandbar{background:var(--paper);border-bottom:1px solid var(--line);padding:.9rem 0;}
.navbar-brandbar .nav-link{font-family:'Inter',sans-serif;font-weight:600;font-size:.92rem;color:var(--ink);margin:0 .6rem;padding:.4rem 0 !important;border-bottom:2px solid transparent;}
.navbar-brandbar .nav-link:hover,.navbar-brandbar .nav-link.active{color:var(--navy);border-bottom:2px solid var(--gold);}
.dropdown-menu{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 40px -20px rgba(14,42,74,.25);padding:.5rem;}
.dropdown-item{font-size:.88rem;font-weight:500;color:var(--text);border-radius:4px;padding:.55rem .8rem;}
.dropdown-item:hover,.dropdown-item.active{background:var(--cream);color:var(--navy);}
.btn-gold{background:var(--gold);color:#fff;font-weight:600;font-size:.88rem;border-radius:var(--radius);padding:.6rem 1.35rem;border:1px solid var(--gold);transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;}
.btn-gold:hover{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 12px 26px -10px rgba(14,42,74,.5);transform:translateY(-2px);}

/* hero (home page) */
.hero{padding:5rem 0 4rem;position:relative;overflow:hidden;}
.hero-tagline{font-size:.95rem;color:var(--navy);font-weight:600;}
.hero h1{font-size:clamp(2.4rem,4.4vw,3.7rem);line-height:1.08;margin:.9rem 0 1.2rem;}
.hero h1 .accent{color:var(--gold);}
.hero p.lead{max-width:44ch;color:var(--text);font-size:1.05rem;}
.hero-rule{width:70px;height:3px;background:var(--gold);margin:1.2rem 0;}
.trust-list{list-style:none;padding:0;margin:2rem 0 0;}
.trust-list li{display:flex;align-items:center;gap:.9rem;margin-bottom:1rem;}
.trust-badge{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.trust-badge.navy{background:var(--navy);}
.trust-badge.gold{background:var(--gold);}
.trust-badge svg{width:22px;height:22px;color:#fff;}
.trust-list .t-title{font-weight:700;color:var(--ink);font-size:.95rem;}
.trust-list .t-sub{font-size:.88rem;color:var(--text);}
.hero-img-wrap{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:0 30px 60px -25px rgba(14,42,74,.35);}
.hero-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;}
.hero-img-tag{position:absolute;bottom:16px;left:16px;background:rgba(14,42,74,.92);color:#fff;font-size:.72rem;font-weight:600;padding:.4rem .8rem;border-radius:4px;letter-spacing:.04em;}

/* page hero (inner pages) */
.page-hero{background:var(--navy);color:#fff;padding:3.5rem 0;position:relative;overflow:hidden;}
.page-hero .eyebrow{color:var(--gold-light);}
.page-hero h1{color:#fff;margin:0;max-width:26ch;}
.page-hero p{color:#C7D2DE;max-width:60ch;margin-top:.7rem;}
.breadcrumb-mini{font-size:.78rem;color:#8FA1B8;margin-bottom:.9rem;}
.breadcrumb-mini a{color:#8FA1B8;}
.breadcrumb-mini a:hover{color:var(--gold-light);}

/* section */
.section{padding:5rem 0;scroll-margin-top:90px;}
.section-alt{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.section h2{font-size:clamp(1.7rem,2.6vw,2.3rem);margin-bottom:1rem;max-width:26ch;}

/* reach strip */
.reach-strip{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2.5rem 0;}
.reach-strip .label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#8A7B62;font-weight:700;text-align:center;margin-bottom:1.5rem;}
.reach-logos{display:flex;flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:1.8rem;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.4rem .3rem 1rem;}
.reach-logo{display:flex;flex-direction:column;align-items:center;gap:.65rem;flex:0 0 auto;}
.reach-logo img{
  width:68px;height:68px;object-fit:contain;
  background:#fff;border-radius:16px;padding:12px;
  border:1px solid var(--line);
  box-shadow:0 10px 22px -14px rgba(14,42,74,.28), 0 2px 6px -3px rgba(14,42,74,.14);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.reach-logo span{font-family:'Poppins',sans-serif;font-weight:700;font-size:.78rem;color:var(--navy);letter-spacing:.02em;white-space:nowrap;transition:color .25s ease;}
.reach-logo:hover img{
  transform:translateY(-4px) scale(1.04);
  box-shadow:0 18px 32px -16px rgba(14,42,74,.35), 0 0 0 3px rgba(184,137,61,.16);
  border-color:rgba(184,137,61,.45);
}
.reach-logo:hover span{color:var(--gold);}
@media (max-width:767px){
  .reach-logos{justify-content:flex-start;}
  .reach-logo img{width:54px;height:54px;padding:9px;border-radius:13px;}
}

/* cert cards */
.cert-card{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:1.6rem 1.3rem;height:100%;text-align:center;transition:transform .2s ease, box-shadow .2s ease;}
.cert-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px -22px rgba(14,42,74,.28);}
.cert-card img{height:56px;margin-bottom:1rem;}
.cert-card h3{font-size:1rem;margin-bottom:.35rem;}
.cert-card p{font-size:.85rem;color:var(--text);margin:0;}

/* product cards */
.product-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;height:100%;transition:transform .2s ease, box-shadow .2s ease;}
.product-card:hover{transform:translateY(-5px);box-shadow:0 22px 40px -22px rgba(14,42,74,.3);}
.product-card img{width:100%;height:200px;object-fit:cover;display:block;}
.product-card .body{padding:1.6rem;}
.product-card .body p{font-size:.9rem;color:var(--text);margin-bottom:.9rem;}
.product-card .kicker{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);}
.spec-list{list-style:none;padding:0;margin:0;font-size:.85rem;}
.spec-list li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px dashed var(--line);}
.spec-list li:last-child{border-bottom:none;}
.spec-list li span:first-child{color:#8A7B62;}
.spec-list li span:last-child{font-weight:600;color:var(--ink);}

/* industries pills */
.pill-industry{border:1.5px solid var(--navy);border-radius:30px;padding:.55rem 1.3rem;font-size:.85rem;font-weight:600;color:var(--navy);display:inline-block;margin:.3rem;background:var(--paper);}

/* stat cards */
.stat-card{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:1.8rem 1.2rem;text-align:center;height:100%;}
.stat-card .num{font-family:'Poppins',sans-serif;font-weight:800;font-size:2.1rem;color:var(--navy);}
.stat-card .lbl{font-size:.78rem;color:#8A7B62;text-transform:uppercase;letter-spacing:.06em;margin-top:.3rem;}
.stat-card .src{font-size:.7rem;color:#B0A48A;margin-top:.6rem;}

/* platform / raw material cards */
.platform-lead{background:var(--navy);color:#fff;border-radius:var(--radius);padding:2rem;margin-bottom:1.5rem;}
.platform-lead h3{color:#fff;margin-bottom:.6rem;}
.platform-lead p{color:#C7D2DE;margin:0;}
.platform-card{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:1.6rem;height:100%;}
.platform-card h3{font-size:1.05rem;margin-bottom:.5rem;}
.platform-card p{font-size:.88rem;color:var(--text);margin:0;}

/* table */
.mapping-table{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);}
.mapping-table table{margin-bottom:0;}
.mapping-table thead th{background:var(--navy);color:#fff;font-weight:600;font-size:.85rem;border:none;padding:.9rem 1rem;}
.mapping-table tbody td{font-size:.85rem;padding:.85rem 1rem;vertical-align:middle;border-color:var(--line);}
.mapping-table .yes{color:#1E4837;font-weight:700;}
.mapping-table .no{color:#B0A48A;}

/* stepper */
.stepper{display:flex;flex-wrap:wrap;gap:1.2rem;counter-reset:step;}
.step-card{flex:1 1 220px;border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:1.5rem;position:relative;}
.step-card .step-num{width:34px;height:34px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;margin-bottom:1rem;}
.step-card h3{font-size:.98rem;margin-bottom:.4rem;}
.step-card p{font-size:.83rem;color:var(--text);margin:0;}

/* roadmap */
.roadmap-card{border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;text-align:center;height:100%;}
.roadmap-card.active{background:var(--navy);color:#fff;}
.roadmap-card.active h3{color:#fff;}
.roadmap-card.active p{color:#C7D2DE;}
.roadmap-card .tag{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-light);}
.roadmap-card:not(.active) .tag{color:var(--gold);}
.roadmap-card p{font-size:.85rem;color:var(--text);margin:0;}

/* accordion (Q&A) */
.accordion-item{border:1px solid var(--line) !important;border-radius:var(--radius) !important;margin-bottom:.8rem;overflow:hidden;}
.accordion-button{font-weight:600;font-size:.95rem;color:var(--ink);background:var(--paper);}
.accordion-button:not(.collapsed){background:var(--navy);color:#fff;}
.accordion-button:focus{box-shadow:none;}
.accordion-body{font-size:.88rem;color:var(--text);background:var(--paper);}

/* testimonials */
.testi-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:2rem 1.7rem;height:100%;position:relative;}
.testi-card .quote-mark{font-family:'Poppins',sans-serif;font-size:3rem;color:var(--gold-light);line-height:1;margin-bottom:.3rem;font-weight:800;}
.testi-card p.msg{font-size:.94rem;color:var(--text);margin-bottom:1.4rem;}
.testi-person{display:flex;align-items:center;gap:.8rem;}
.testi-person img{width:46px;height:46px;border-radius:50%;object-fit:cover;}
.testi-person .name{font-weight:700;color:var(--ink);font-size:.9rem;}
.testi-person .role{font-size:.78rem;color:var(--gold);}

/* CTA band */
.cta-band{background:var(--paper);color:var(--ink);padding:5.5rem 0;position:relative;overflow:hidden;border-top:1px solid var(--line);}
.cta-band .bg-dots{position:absolute;inset:0;background-image:radial-gradient(rgba(14,42,74,.08) 1.5px, transparent 1.5px);background-size:26px 26px;-webkit-mask-image:linear-gradient(to right, black, transparent 70%);mask-image:linear-gradient(to right, black, transparent 70%);}
.cta-band .ring{position:absolute;border-radius:50%;border:1px solid rgba(184,137,61,.35);}
.cta-band .ring.r1{width:420px;height:420px;right:-140px;top:-160px;}
.cta-band .ring.r2{width:280px;height:280px;right:-40px;bottom:-140px;border-color:rgba(14,42,74,.1);}
.cta-band .content{position:relative;z-index:1;}
.cta-eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:rgba(14,42,74,.06);border:1px solid var(--line);padding:.4rem .9rem;border-radius:30px;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:1.3rem;}
.cta-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--gold);}
.cta-band h2{color:var(--ink);max-width:16ch;font-size:clamp(1.9rem,3.2vw,2.6rem);}
.cta-band p{color:var(--text);max-width:40ch;font-size:1.02rem;}
.cta-trust{display:flex;gap:1.8rem;margin-top:2rem;flex-wrap:wrap;}
.cta-trust .item{display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--text);}
.cta-trust .item svg{width:18px;height:18px;color:var(--gold);flex-shrink:0;}
.btn-cta-premium{background:var(--navy);color:#fff;font-weight:700;font-size:.95rem;border-radius:8px;padding:1rem 1.7rem;display:inline-flex;align-items:center;gap:.8rem;transition:all .25s ease;box-shadow:0 18px 40px -14px rgba(14,42,74,.35);}
.btn-cta-premium .arrow-circle{width:30px;height:30px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;transition:transform .25s ease;}
.btn-cta-premium .arrow-circle svg{width:16px;height:16px;color:#fff;}
.btn-cta-premium:hover{transform:translateY(-3px);background:var(--gold);box-shadow:0 22px 48px -12px rgba(184,137,61,.45);color:#fff;}
.btn-cta-premium:hover .arrow-circle{transform:translateX(4px);background:var(--navy);}
.cta-card-side{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.8rem;box-shadow:0 24px 50px -30px rgba(14,42,74,.25);}
.cta-card-side .row-mini{display:flex;justify-content:space-between;padding:.7rem 0;border-bottom:1px dashed var(--line);font-size:.87rem;}
.cta-card-side .row-mini:last-child{border-bottom:none;}
.cta-card-side .row-mini span:first-child{color:#8A7B62;}
.cta-card-side .row-mini span:last-child{font-weight:600;color:var(--ink);}

/* ============ FOOTER — gradient + pattern, navy ============ */
footer.brand-footer{
  position:relative;
  background:var(--navy-deep);
  color:#D7DEE8;
  padding-top:2rem;
  overflow:hidden;
}
footer.brand-footer::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:24px 24px;
  mask-image:linear-gradient(to bottom, black, transparent 75%);
  -webkit-mask-image:linear-gradient(to bottom, black, transparent 75%);
}
footer.brand-footer .container{position:relative;z-index:1;}
.footer-contact-row{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.12);}
.footer-contact-item{display:flex;align-items:center;gap:.8rem;position:relative;padding-right:1.5rem;}
.footer-contact-item:not(:last-of-type)::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:26px;background:rgba(255,255,255,.25);}
.footer-contact-item .ic{width:38px;height:38px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.footer-contact-item .ic svg{width:18px;height:18px;color:#fff;}
.footer-contact-item span{font-weight:600;color:#fff;font-size:.95rem;}
.footer-tagline{padding-left:1.5rem;border-left:1px solid rgba(255,255,255,.25);text-align:right;font-family:'Poppins',sans-serif;font-weight:600;margin-left:auto;}
.footer-tagline .l1{color:#fff;font-size:.95rem;}
.footer-tagline .l2{color:var(--gold-light);font-size:.95rem;}
footer.brand-footer .cols{padding:3rem 0 1.5rem;}
footer.brand-footer h5{color:#fff;font-family:'Poppins',sans-serif;font-size:1rem;margin-bottom:1rem;}
footer.brand-footer a{color:#B7C2D1;font-size:.9rem;}
footer.brand-footer a:hover{color:var(--gold-light);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:1.2rem 0;font-size:.75rem;color:#8FA1B8;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;}
@media (max-width:767px){.footer-tagline{margin-left:0;text-align:left;}}

/* map */
.map-embed{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:0 24px 50px -30px rgba(14,42,74,.25);}
.map-embed iframe{width:100%;height:100%;border:0;display:block;}

/* contact form */
.contact-form-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:2rem;}
.contact-form-card label{font-size:.85rem;font-weight:600;color:var(--ink);margin-bottom:.35rem;}
.contact-form-card .form-control{border:1px solid var(--line);border-radius:4px;padding:.65rem .9rem;font-size:.9rem;}
.contact-form-card .form-control:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,137,61,.15);}

/* ============ ABOUT US — story / mission-vision / values ============ */
.story-img{border-radius:var(--radius);overflow:hidden;box-shadow:0 30px 60px -25px rgba(14,42,74,.3);}
.story-img img{width:100%;display:block;}

.mv-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:2.2rem;height:100%;}
.mv-card .ic{width:54px;height:54px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;margin-bottom:1.2rem;}
.mv-card.gold .ic{background:var(--gold);}
.mv-card .ic svg{width:26px;height:26px;color:#fff;}
.mv-card h3{font-size:1.3rem;margin-bottom:.7rem;}
.mv-card p{font-size:.95rem;color:var(--text);margin:0;}

.value-strip{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem;}
.value-pill{border:1.5px solid var(--navy);border-radius:30px;padding:.5rem 1.2rem;font-size:.85rem;font-weight:600;color:var(--navy);background:var(--paper);}
