/* Konndor Industries v2 — Onyx & Gold */
:root{
  --bg:#0d0c0a; --bg-2:#1a1814; --card:#16140f; --ink:#f5efe2; --text:#d8d2c4;
  --muted:#8e8779; --gold:#d4a857; --gold-light:#e6c684; --gold-deep:#9a7a3b;
  --border:rgba(212,168,87,.18); --border-strong:rgba(212,168,87,.35);
  --slate-deep:#1a1814;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Manrope',system-ui,sans-serif;font-size:15.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Sora',sans-serif;color:var(--ink);font-weight:600;letter-spacing:-.035em;line-height:1.1}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}

/* === Header === */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(13,12,10,.92);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:all .3s}
.site-header.scrolled{border-bottom-color:var(--border);box-shadow:0 1px 0 rgba(0,0,0,.4)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:80px}
.brand-logo{height:36px;width:auto}
.nav-desktop{display:flex;align-items:center;gap:.25rem}
.nav-link{padding:.5rem 1rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:rgba(245,239,226,.75);background:none;border:none;cursor:pointer;transition:color .2s;font-family:inherit;display:inline-flex;align-items:center;gap:.4rem}
.nav-link:hover,.nav-link.active{color:var(--gold)}
.chev{font-size:10px;transition:transform .2s}
.nav-dropdown.open .chev{transform:rotate(180deg)}

/* About small dropdown */
.nav-dropdown{position:relative}
.dropdown-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-6px);width:280px;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:.5rem;margin-top:.5rem;box-shadow:0 24px 60px -20px rgba(0,0,0,.7);opacity:0;pointer-events:none;transition:all .25s cubic-bezier(.22,1,.36,1);z-index:60}
.dropdown-panel::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.nav-dropdown.open .dropdown-panel{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.dropdown-panel a{display:block;padding:.7rem .8rem;border-radius:3px;transition:background .2s}
.dropdown-panel a:hover{background:var(--bg-2)}
.dropdown-panel strong{display:block;color:var(--ink);font-size:13px;font-weight:500;font-family:'Manrope'}
.dropdown-panel span{display:block;font-size:11px;color:var(--muted);margin-top:2px}

/* Services mega menu */
.mega-menu{position:fixed;left:0;right:0;top:80px;background:var(--bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-height:0;overflow:hidden;opacity:0;transition:all .3s cubic-bezier(.22,1,.36,1);z-index:55}
.nav-dropdown[data-dropdown="services"].open .mega-menu{max-height:720px;opacity:1}
.mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;padding:2.5rem 1.5rem 2rem}
.mega-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin-bottom:1.1rem}
.mega-col ul{list-style:none}
.mega-col li{margin-bottom:.7rem}
.mega-col a{display:block;padding:.15rem 0;transition:transform .2s}
.mega-col a:hover{transform:translateX(4px)}
.mega-col strong{display:block;font-family:'Sora';font-size:15px;font-weight:500;color:var(--ink);transition:color .2s}
.mega-col strong .mi{display:inline-block;width:22px;font-size:14px}
.mega-col a:hover strong{color:var(--gold)}
.mega-col span{display:block;font-size:11.5px;color:var(--muted);margin-top:1px;/*padding-left:22px*/}
.mega-footer{border-top:1px solid var(--border)}
.mega-footer a{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold)}
.mega-footer a span{transition:transform .25s}
.mega-footer a:hover span{transform:translateX(5px)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.5rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;border-radius:3px;border:1px solid transparent;cursor:pointer;transition:all .25s;font-family:inherit}
.btn-sm{padding:.65rem 1.25rem}
.btn-gold{background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#1a1408}
.btn-gold:hover{box-shadow:0 12px 30px -10px rgba(212,168,87,.6);transform:translateY(-1px)}
.btn-outline{border-color:var(--border-strong);color:var(--ink)}
.btn-outline:hover{border-color:var(--gold);color:var(--gold)}
.btn-block{display:flex;justify-content:center;margin-top:1rem}

/* Mobile */
.mobile-toggle{display:none;width:40px;height:40px;background:none;border:none;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:0;align-items:center}
.mobile-toggle span{width:22px;height:1.5px;background:var(--ink);transition:all .3s}
.mobile-toggle.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.mobile-toggle.open span:nth-child(2){opacity:0}
.mobile-toggle.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
/* The drawer is rendered OUTSIDE the header (see navigation.php) so fixed
   positioning is always relative to the viewport on every browser. */
.mobile-drawer{display:none;position:fixed;top:80px;left:0;right:0;height:calc(100vh - 80px);height:calc(100dvh - 80px);background:var(--bg);border-top:1px solid var(--border);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem 0 3rem;z-index:95}
.mobile-drawer.open{display:block}
.m-link,.m-accordion{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.9rem 1rem;font-size:14px;font-weight:500;color:var(--ink);background:none;border:none;border-radius:4px;text-align:left;cursor:pointer;font-family:inherit;text-transform:none;letter-spacing:0}
.m-link:hover,.m-accordion:hover{background:var(--bg-2)}
.m-sub{max-height:0;overflow:hidden;transition:max-height .3s;padding-left:1rem}
.m-sub.open{max-height:1200px}
.m-sub a{display:block;padding:.6rem 1rem;font-size:13px;color:var(--muted)}
.m-sub a:hover{color:var(--gold)}

/* === Sections === */
main{padding-top:80px}
section{position:relative}
.eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin-bottom:1rem;display:block}
.text-gold{color:var(--gold)}
.text-gradient{background:linear-gradient(135deg,#f0d68a,#d4a857 50%,#9a7a3b);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border)}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.22}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),rgba(13,12,10,.85) 50%,rgba(13,12,10,.4));}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;padding:6rem 0 8rem}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border-strong);background:var(--bg-2);padding:.4rem 1rem;border-radius:99px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:1.5rem}
.hero-badge .dot{width:6px;height:6px;background:var(--gold);border-radius:50%}
.hero h1{font-size:clamp(2.5rem,6vw,5.5rem);font-weight:600;line-height:1;letter-spacing:-.04em;color:var(--ink)}
.hero h1 .light{font-weight:300}
.hero-lead{margin-top:2rem;max-width:560px;font-size:17px;line-height:1.65;color:var(--muted)}
.hero-cta{margin-top:2.5rem;display:flex;flex-wrap:wrap;gap:.75rem}
.hero-stats{margin-top:4rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;max-width:560px;padding-top:2.5rem;border-top:1px solid var(--border)}
.hero-stats .k{font-family:'Sora';font-size:28px;font-weight:500;color:var(--ink)}
.hero-stats .v{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:4px}

.hero-video-wrap{position:relative}
.hero-video-wrap::before{content:"";position:absolute;inset:-40px;background:radial-gradient(circle at center,rgba(212,168,87,.22),transparent 65%);z-index:0}
.hero-video{position:relative;width:100%;height:640px;border-radius:4px;overflow:hidden;border:1px solid var(--border-strong);box-shadow:0 30px 80px -20px rgba(0,0,0,.7);z-index:1}
.hero-video video{width:100%;height:100%;object-fit:cover}
.hero-video::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(13,12,10,.7),transparent 50%),linear-gradient(135deg,rgba(26,24,20,.3),transparent,rgba(212,168,87,.1));pointer-events:none}
.hero-watermark{position:absolute;bottom:1.5rem;left:1.5rem;z-index:3}
.hero-watermark .l1{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--gold)}
.hero-watermark .l2{font-family:'Sora';font-size:18px;color:#fff;margin-top:4px}

/* Full-bleed video hero */
.hero-full{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-end}
.hero-video-bg{position:absolute;inset:0;z-index:0}
.hero-video-bg video{width:100%;height:100%;object-fit:cover}
.hero-video-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,12,10,.93),rgba(13,12,10,.6) 52%,rgba(13,12,10,.28)),linear-gradient(to top,var(--bg) 2%,transparent 38%),linear-gradient(to bottom,rgba(13,12,10,.65),transparent 22%)}
.hero-full-inner{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:9rem;padding-bottom:5rem}
.hero-full h1{max-width:900px;text-shadow:0 4px 40px rgba(0,0,0,.45)}
.hero-full .hero-lead{color:var(--text)}
.hero-full .hero-stats{border-top-color:var(--border-strong)}
.hero-full-mark{position:absolute;right:2.5rem;bottom:7.5rem;left:auto;z-index:2;text-align:right}
/* Mobile: a portrait screen would crop a landscape video to a sliver, so the
   hero stacks instead — a stable 16:9 video block (the video's own shape, so
   nothing is cut) with the content below. Desktop keeps the full-bleed look. */
@media(max-width:900px){
  .hero-full{min-height:0;display:block}
  .hero-video-bg{position:relative;inset:auto;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--bg-2);border-bottom:1px solid var(--border)}
  .hero-video-bg::after{background:linear-gradient(to bottom,rgba(13,12,10,.15),transparent 30%,transparent 80%,rgba(13,12,10,.5))}
  .hero-full-inner{padding-top:2.5rem;padding-bottom:3rem}
  .hero-full h1{text-shadow:none}
  .hero-full .hero-stats{margin-top:2.5rem}
  .hero-full-mark{display:none}
}

/* Marquee */
.marquee{background:var(--bg-2);border-top:1px solid var(--border);padding:1rem 0;color:#fff;overflow:hidden}
.marquee-track{display:flex;gap:2.5rem;white-space:nowrap;animation:marquee 45s linear infinite;font-size:12px;text-transform:uppercase;letter-spacing:.22em;color:rgba(255,255,255,.7)}
.marquee-track span.diamond{color:var(--gold)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Grid matrix */
.section{padding:7rem 0}
.section-head{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3.5rem}
@media(min-width:768px){.section-head{flex-direction:row;justify-content:space-between;align-items:flex-end}}
.section-head h2{font-size:clamp(2rem,4vw,3rem);font-weight:500;letter-spacing:-.03em}
.section-head em{font-style:italic;color:var(--gold);font-family:'Sora'}
.section-head p{max-width:420px;color:var(--muted)}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.feature-card{background:var(--card);border:1px solid var(--border);padding:2rem;border-radius:4px;transition:all .3s}
.feature-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 30px 60px -30px rgba(212,168,87,.25)}
.feature-icon{width:48px;height:48px;background:var(--bg-2);color:var(--gold);display:flex;align-items:center;justify-content:center;border-radius:4px;margin-bottom:2rem;font-size:20px;transition:all .3s}
.feature-card:hover .feature-icon{background:var(--gold);color:#1a1408}
.feature-card h3{font-size:24px;font-weight:500}
.feature-card p{margin-top:.75rem;font-size:14px;color:var(--muted)}
.feature-link{margin-top:2rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold)}

/* Who we are */
.who{background:rgba(22,20,15,.4);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.who-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;padding:7rem 0}
.who-img{position:relative;aspect-ratio:4/5;border-radius:4px;overflow:hidden;border:1px solid var(--border-strong)}
.who-img img{width:100%;height:100%;object-fit:cover}
.who-img .cap{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(to top,rgba(13,12,10,.95),transparent);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--gold)}
.who h2{font-size:clamp(2rem,4.5vw,3.5rem);font-weight:500;line-height:1.05;letter-spacing:-.03em}
.who em{font-style:italic;color:var(--gold);font-family:'Sora'}
.who p{margin-top:1.5rem;font-size:17px;line-height:1.7;color:var(--muted)}
.who .read-more{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--ink)}
.who .read-more:hover{color:var(--gold)}

.divisions{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden;margin-bottom:7rem}
.division{background:var(--card);padding:2rem;transition:background .2s}
.division:hover{background:var(--bg-2)}
.division-icon{font-size:24px;color:var(--gold)}
.division h4{font-family:'Sora';font-size:20px;font-weight:500;margin-top:1.5rem}
.division p{margin-top:.5rem;font-size:13px;color:var(--muted)}

/* Verticals */
.vert-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.vert{background:var(--card);padding:1.25rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s;cursor:pointer}
.vert:hover{background:var(--bg-2);color:#fff}
.vert .num{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.vert .name{font-size:14px;font-weight:500;margin-top:4px;color:var(--ink)}
.vert .arrow{opacity:0;transition:opacity .2s;color:var(--gold)}
.vert:hover .arrow{opacity:1}

/* Vision/Mission/Values */
.vmv{position:relative;background:var(--bg-2);border-top:1px solid var(--border);color:#fff;overflow:hidden}
.vmv-bg{position:absolute;inset:0;z-index:0}
.vmv-bg img{width:100%;height:100%;object-fit:cover;opacity:.18}
.vmv-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(26,24,20,.85),rgba(26,24,20,.97))}
.vmv-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(212,168,87,.18)}
.vmv-card{background:rgba(26,24,20,.85);backdrop-filter:blur(8px);padding:3.5rem 2.5rem}
.vmv-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--gold)}
.vmv-card h3{font-family:'Sora';font-size:28px;font-weight:500;margin-top:1rem;color:#fff}
.vmv-card p{margin-top:1rem;color:rgba(255,255,255,.7);line-height:1.65}

/* Investor + CTA */
.investor{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.investor h2{font-size:clamp(2rem,4vw,3rem);font-weight:500}
.investor em{color:var(--gold);font-style:italic;font-family:'Sora'}
.investor-lead{margin-top:1.5rem;color:var(--muted);max-width:480px;line-height:1.7}
.investor-card{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2rem}
.investor-card dl{display:grid;grid-template-columns:1fr 1fr;row-gap:1.5rem}
.investor-card dt{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.investor-card dd{text-align:right;font-family:'Sora';font-size:18px;color:var(--ink)}

.cta-box{position:relative;margin-top:6rem;border:1px solid var(--border-strong);border-radius:4px;padding:5rem 2rem;text-align:center;overflow:hidden}
.cta-box img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3;z-index:0}
.cta-box::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(13,12,10,.7),rgba(13,12,10,.95));z-index:1}
.cta-box>*{position:relative;z-index:2}
.cta-box h2{font-size:clamp(2rem,5vw,3.5rem);font-weight:500}
.cta-box em{color:var(--gold);font-style:italic;font-family:'Sora'}
.cta-box p{margin:1.5rem auto 0;max-width:480px;color:var(--muted)}

/* Footer */
.site-footer{margin-top:8rem;background:var(--bg-2);color:#fff;border-top:1px solid var(--border)}
/* Pages ending in a full-bleed band sit flush against the footer */
main:has(.ir-cta:last-child) + .site-footer,
main:has(.lux-bottom-banner:last-child) + .site-footer,
main:has(.finance-bottom-banner:last-child) + .site-footer,
main:has(.cta-band:last-child) + .site-footer{margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding:5rem 0}
.footer-logo{height:40px;width:auto;opacity:.9}
.footer-tag{margin-top:1.5rem;max-width:320px;font-size:14px;line-height:1.65;color:rgba(255,255,255,.6)}
.footer-badge{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;border:1px solid rgba(255,255,255,.15);padding:.3rem .8rem;border-radius:99px;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.7)}
.footer-badge .dot{width:6px;height:6px;background:var(--gold);border-radius:50%}
.footer-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:rgba(255,255,255,.4);margin-bottom:1rem}
.footer-grid ul{list-style:none}
.footer-grid li{margin-bottom:.6rem}
.footer-grid li a{font-size:14px;color:rgba(255,255,255,.8)}
.footer-grid li a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1)}
.footer-bottom-inner{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem 0;font-size:12px;color:rgba(255,255,255,.5)}
@media(min-width:768px){.footer-bottom-inner{flex-direction:row;justify-content:space-between;align-items:center}}

/* Page hero (about/contact/services) */
.page-hero{padding:8rem 0 4rem;border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.page-hero h1{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:500;letter-spacing:-.03em}
.page-hero em{color:var(--gold);font-style:italic;font-family:'Sora'}
.page-hero p{margin-top:1.5rem;max-width:640px;color:var(--muted);font-size:17px;line-height:1.65}

/* Forms */
.form-grid{display:grid;gap:1.25rem;max-width:560px}
.form-field label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:.5rem}
.form-field input,.form-field textarea{width:100%;background:var(--card);border:1px solid var(--border);border-radius:3px;padding:.85rem 1rem;color:var(--ink);font-family:inherit;font-size:14px;transition:border .2s}
.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--gold)}
.alert{padding:1rem;border-radius:3px;margin-bottom:1.5rem;font-size:14px}
.alert-success{background:rgba(212,168,87,.1);border:1px solid var(--gold);color:var(--gold-light)}
.alert-error{background:rgba(255,80,80,.1);border:1px solid rgba(255,80,80,.4);color:#ff9090}

/* === Responsive === */
@media(max-width:900px){
  .nav-desktop{display:none}
  .mobile-toggle{display:flex}
  .hero-inner{grid-template-columns:1fr;padding:3rem 0 4rem;gap:3rem}
  .hero-video{height:420px}
  .hero-stats{grid-template-columns:repeat(2,1fr);gap:1.5rem}
  .grid-3{grid-template-columns:1fr;gap:1rem}
  .who-grid{grid-template-columns:1fr;gap:2.5rem;padding:4rem 0}
  .who-img{aspect-ratio:4/3}
  .divisions{grid-template-columns:repeat(2,1fr);margin-bottom:4rem}
  .vert-grid{grid-template-columns:repeat(2,1fr)}
  .vmv-grid{grid-template-columns:1fr}
  .investor{grid-template-columns:1fr;gap:2rem}
  .investor-card dl{grid-template-columns:1fr 1fr}
  .cta-box{padding:3rem 1.25rem;margin-top:3rem}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem;padding:3rem 0}
  .section{padding:4rem 0}
  .mega-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .vert-grid{grid-template-columns:1fr}
  .divisions{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .pdt1rem{padding-top:1rem !important;}
}


/* ============ ABOUT PAGE (Onyx & Gold v2) — append to css/style.css ============ */
.page-hero{border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(212,168,87,.04),transparent);padding:96px 0 64px}
.crumbs{font-size:12px;color:var(--muted);margin-bottom:24px;letter-spacing:.04em}
.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--gold)}
.crumbs .cur{color:var(--ink)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin-bottom:18px}
.eyebrow.gold{color:var(--gold)}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--gold)}
.eyebrow .ico{font-size:14px}
.display{font-family:Sora,Inter,sans-serif;font-size:clamp(40px,6vw,84px);line-height:1.02;letter-spacing:-.04em;font-weight:600;color:var(--ink);margin:0}
.display em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#e6c684,#d4a857 50%,#9a7a3a);-webkit-background-clip:text;background-clip:text;color:transparent}
.display-sm{font-family:Sora,Inter,sans-serif;font-size:clamp(28px,3.6vw,48px);line-height:1.08;letter-spacing:-.03em;font-weight:500;color:var(--ink);margin:0}
.display-sm em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#e6c684,#d4a857 50%,#9a7a3a);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:18px;line-height:1.65;color:var(--muted);max-width:640px;margin-top:24px}
.lede.sm{font-size:16px;margin-top:18px}
.section{padding:96px 0}
.section.band{background:rgba(212,168,87,.03);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.section-head{max-width:640px;margin-bottom:56px}
.section-head.row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;max-width:none;flex-wrap:wrap}
.section-head.wide{max-width:none}
.who-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start;margin-bottom:80px}
.who-grid .prose p{font-size:16.5px;line-height:1.75;color:var(--muted);margin:0 0 18px}
.who-grid .prose strong{color:var(--ink);font-weight:600}
.img-frame{margin-top:32px;border:1px solid var(--border);border-radius:4px;overflow:hidden}
.img-frame img{width:100%;height:300px;object-fit:cover;display:block}
.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:4px;overflow:hidden;background:var(--border)}
.stat-strip>div{background:var(--card);padding:32px}
.stat-strip .k{font-family:Sora,Inter,sans-serif;font-size:44px;font-weight:600;background:linear-gradient(135deg,#e6c684,#d4a857 50%,#9a7a3a);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}
.stat-strip .v{margin-top:12px;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:4px;overflow:hidden;background:var(--border);gap:1px}
.pillar{background:var(--card);padding:40px}
.pillar .pico{width:48px;height:48px;border-radius:4px;border:1px solid rgba(212,168,87,.4);background:var(--slate-deep);display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--gold)}
.pillar h3{font-family:Sora,Inter,sans-serif;font-size:24px;font-weight:500;color:var(--ink);margin:24px 0 0;letter-spacing:-.02em}
.pillar p{font-size:15px;line-height:1.7;color:var(--muted);margin:16px 0 0}
.pillar ul{list-style:none;padding:0;margin:20px 0 0}
.pillar ul li{position:relative;padding-left:18px;font-size:15px;line-height:1.6;color:var(--muted);margin-bottom:10px}
.pillar ul li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.pillar ul li strong{color:var(--ink);font-weight:600}
.leaders{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:4px;overflow:hidden;background:var(--border);gap:1px}
.leader{background:var(--card);padding:32px;transition:background .2s}
.leader:hover{background:rgba(212,168,87,.05)}
.leader .lico{width:56px;height:56px;border-radius:4px;border:1px solid rgba(212,168,87,.4);background:var(--slate-deep);display:flex;align-items:center;justify-content:center;font-size:26px}
.leader h4{font-family:Sora,Inter,sans-serif;font-size:18px;font-weight:500;color:var(--ink);margin:24px 0 4px;letter-spacing:-.01em}
.leader span{font-size:13px;color:var(--muted)}
.link-gold{color:var(--gold);font-size:14px;font-weight:600;text-decoration:none}.link-gold:hover{color:#e6c684}
.cta-band{border-top:1px solid var(--border);background:linear-gradient(90deg,rgba(212,168,87,.08),transparent 60%)}
.cta-grid{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:40px}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:4px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;border:1px solid transparent}
.btn-gold{background:var(--gold);color:#0d0c0a}.btn-gold:hover{background:#e6c684}
.btn-ghost{background:var(--card);color:var(--ink);border-color:var(--border)}.btn-ghost:hover{border-color:var(--gold)}
@media (max-width:900px){
  .who-grid,.cta-grid{grid-template-columns:1fr}
  .stat-strip,.leaders{grid-template-columns:repeat(2,1fr)}
  .pillars{grid-template-columns:1fr}
  .cta-actions{justify-content:flex-start}
}


/* ============ PRODUCTS SHOWCASE ENGINE (Onyx & Gold v2) ============ */
/* ============ LUXURY EDITORIAL SPECIFICATION (Onyx & Gold v3) ============ */
.lux-product-hero {
  padding: 11rem 0 6rem;
  background: radial-gradient(circle at 0% 0%, rgba(212,168,87,0.04), transparent 65%);
  position: relative;
  border-bottom: 1px solid rgba(212,168,87,0.08);
}
.hero-decorative-line {
  position: absolute;
  bottom: 0;
  left: 8%;
  width: 1px;
  height: 70px;
  background: linear-gradient(to top, var(--gold), transparent);
}
.lux-hero-split {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 4rem;
  align-items: flex-end;
}
.lux-breadcrumbs {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .22em;
  color: var(--muted);
  margin-bottom: 1.5rem;
}
.lux-breadcrumbs .divider { color: rgba(212,168,87,0.15); margin: 0 8px; }
.lux-breadcrumbs .active-page { color: var(--gold); }
.lux-heading-heavy {
  font-family: 'Sora', sans-serif;
  font-size: clamp(2.6rem, 5vw, 4.2rem);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.04em;
  color: var(--ink);
}
.lux-heading-heavy em {
  font-style: italic;
  font-weight: 300;
  color: transparent;
  background: linear-gradient(135deg, var(--gold-light), var(--gold));
  -webkit-background-clip: text;
  background-clip: text;
}
.lux-body-lede {
  font-size: 16px;
  line-height: 1.75;
  color: var(--muted);
  border-left: 1px solid var(--border);
  padding-left: 2.5rem;
}

/* INTERACTIVE PILL CONTROL MATRIX */
.lux-control-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(212,168,87,0.08);
  padding: 1.75rem 0;
  margin-bottom: 5rem;
}
.lux-strip-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .18em;
  color: var(--muted);
}
.lux-pill-wrapper {
  display: flex;
  gap: 2rem;
}
.lux-pill {
  background: transparent;
  border: none;
  color: var(--muted);
  font-family: 'Manrope', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  cursor: pointer;
  padding: 6px 0;
  position: relative;
  transition: color .3s ease;
}
.lux-pill::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--gold);
  transition: width .3s cubic-bezier(.25, .8, .25, 1);
}
.lux-pill:hover, .lux-pill.active { color: var(--ink); }
.lux-pill.active::after { width: 100%; }

/* 3-COLUMN ASYMMETRIC GRID WORK */
.lux-editorial-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.5rem 2.5rem;
}
.lux-product-item {
  display: flex;
  flex-direction: column;
  background: transparent;
  transition: opacity .4s cubic-bezier(.25, .8, .25, 1);
}
.lux-image-box {
  position: relative;
  background: #12110e; /* Surface styling matching corporate canvas specs */
  height: 270px;
  width: 100%;
  overflow: hidden;
  border: 1px solid rgba(212,168,87,0.05);
}
.lux-image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.16, 1, .3, 1);
}
.lux-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(13,12,10,0.4), transparent);
  z-index: 2;
  transition: background .3s;
}
.lux-image-fallback-ui {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  color: rgba(212,168,87,0.08);
}
.lux-item-index {
  position: absolute;
  bottom: 1.25rem;
  left: 1.25rem;
  font-family: 'Sora', sans-serif;
  font-size: 12px;
  font-weight: 300;
  color: rgba(255,255,255,0.4);
  z-index: 3;
}
.lux-content-box {
  padding: 1.5rem 0 0;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.lux-content-top-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
}
.lux-item-tag {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .15em;
  color: var(--gold);
  font-weight: 600;
}
.lux-item-metric {
  font-size: 11px;
  color: var(--muted);
}
.lux-item-title {
  font-family: 'Sora', sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.01em;
  margin-bottom: 0.75rem;
  color: var(--ink);
}
.lux-item-prose {
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted);
  margin-bottom: 1.5rem;
  flex-grow: 1;
}
.lux-item-action-wrapper {
  border-top: 1px solid rgba(212,168,87,0.06);
  padding-top: 1rem;
}
.lux-action-anchor {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--ink);
  transition: color .3s ease;
  font-weight: 600;
}
.lux-action-anchor .lbl-arrow {
  color: var(--gold);
  transition: transform .3s cubic-bezier(.16, 1, .3, 1);
}

/* INTERACTION ANIMATION MODIFIERS */
.lux-product-item:hover .lux-image-box img { transform: scale(1.05); }
.lux-product-item:hover .lux-image-overlay { background: rgba(13,12,10,0.1); }
.lux-product-item:hover .lux-action-anchor { color: var(--gold-light); }
.lux-product-item:hover .lux-action-anchor .lbl-arrow { transform: translateX(6px); }

/* BOTTOM BANNER ASYMMETRY */
.lux-bottom-banner {
  margin-top: 8rem;
  border-top: 1px solid rgba(212,168,87,0.08);
  padding: 6rem 0;
  background: linear-gradient(180deg, transparent, rgba(212,168,87,0.02));
}
.lux-banner-split {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
}
.lux-banner-eyebrow {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .2em;
  color: var(--gold);
  margin-bottom: 0.5rem;
  display: block;
}
.lux-banner-split h2 { font-size: 32px; font-weight: 400; letter-spacing: -.03em; }
.lux-heavy-action-btn {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-weight: 600;
  color: #0d0c0a;
  background: var(--gold);
  padding: 1.25rem 2.5rem;
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  transition: background .2s ease, box-shadow .2s;
}
.lux-heavy-action-btn:hover { background: var(--gold-light); box-shadow: 0 10px 30px -10px rgba(212,168,87,0.4); }

/* SCANNABLE RESPONSIVE ADAPTATIONS */
@media(max-width: 1100px) {
  .lux-editorial-grid { grid-template-columns: repeat(2, 1fr); gap: 3.5rem 2rem; }
}
@media(max-width: 850px) {
  .lux-hero-split { grid-template-columns: 1fr; gap: 1.5rem; }
  .lux-body-lede { border-left: none; padding-left: 0; }
  .lux-control-strip { flex-direction: column; align-items: flex-start; gap: 1.25rem; margin-bottom: 3rem; }
  .lux-pill-wrapper { gap: 1.25rem; flex-wrap: wrap; }
  .lux-editorial-grid { grid-template-columns: 1fr; gap: 3.5rem; }
}


/* ============ FINANCIAL EDITORIAL SYSTEM (Onyx & Gold v3) ============ */
.lux-hero-finance {
  padding: 11rem 0 6rem;
  background: radial-gradient(circle at 100% 0%, rgba(212,168,87,0.03), transparent 60%);
  position: relative;
  border-bottom: 1px solid rgba(212,168,87,0.08);
}
.finance-line-accent {
  position: absolute;
  bottom: 0;
  left: 5%;
  width: 1px;
  height: 80px;
  background: linear-gradient(to top, var(--gold), transparent);
}
.finance-hero-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 4rem;
  align-items: flex-end;
}

/* TECHNICAL STRIP CONTROLLER */
.finance-control-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(212,168,87,0.08);
  padding: 1.5rem 0;
  margin-bottom: 4rem;
}
.finance-strip-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .18em;
  color: var(--muted);
}
.finance-pill-wrapper {
  display: flex;
  gap: 2.5rem;
}
.finance-pill {
  background: transparent;
  border: none;
  color: var(--muted);
  font-family: 'Manrope', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  cursor: pointer;
  padding: 8px 0;
  position: relative;
  transition: color .2s;
}
.finance-pill::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--gold);
  transition: width .3s cubic-bezier(.25, .8, .25, 1);
}
.finance-pill:hover, .finance-pill.active { color: var(--ink); }
.finance-pill.active::after { width: 100%; }

/* ASYMMETRIC DOCUMENT LIST LAYOUT */
.finance-tab-content {
  display: none;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .3s ease, transform .3s ease;
}
.finance-tab-content.active {
  display: block;
  opacity: 1;
  transform: translateY(0);
}
.editorial-document-list {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(212,168,87,0.08);
}
.document-row {
  display: grid;
  grid-template-columns: 180px 1fr auto;
  align-items: center;
  gap: 2rem;
  padding: 2rem 0;
  border-bottom: 1px solid rgba(212,168,87,0.08);
  transition: background .2s ease;
}
.document-row:hover {
  background: linear-gradient(90deg, rgba(212,168,87,0.01), transparent);
}
.doc-meta {
  font-family: 'Sora', sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--gold);
  font-weight: 500;
}
.doc-title {
  font-size: 16px;
  font-weight: 500;
  color: var(--ink);
  letter-spacing: -.01em;
}
.btn-document-download {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-weight: 600;
  color: var(--muted);
  border: 1px solid rgba(212,168,87,0.15);
  padding: 10px 20px;
  border-radius: 2px;
  transition: all .2s ease;
}
.document-row:hover .btn-document-download {
  color: #0d0c0a;
  background: var(--gold);
  border-color: var(--gold);
}

/* LOWER BANNER SPECIFICATIONS */
.finance-bottom-banner {
  margin-top: 8rem;
  border-top: 1px solid rgba(212,168,87,0.08);
  padding: 6rem 0;
}
.finance-banner-split {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3rem;
  flex-wrap: wrap;
}
.finance-banner-eyebrow {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .2em;
  color: var(--gold);
  margin-bottom: 0.5rem;
  display: block;
}
.finance-banner-split h2 { font-size: 32px; font-weight: 400; letter-spacing: -.03em; }

/* SCRUPULOUS RESPONSIVE MATRIX */
@media(max-width: 900px) {
  .finance-hero-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .finance-control-strip { flex-direction: column; align-items: flex-start; gap: 1.5rem; }
  .finance-pill-wrapper { gap: 1.5rem; flex-wrap: wrap; }
  .document-row { grid-template-columns: 1fr; gap: 0.75rem; padding: 1.5rem 0; }
  .doc-action { margin-top: 0.5rem; }
  .btn-document-download { display: block; text-align: center; }
}


/* ============ HISTORY TIMELINE (Onyx & Gold v2) ============ */
.timeline{position:relative;max-width:840px}
.timeline::before{content:"";position:absolute;left:23px;top:8px;bottom:8px;width:1px;background:linear-gradient(to bottom,var(--gold),rgba(212,168,87,.08))}
.timeline-item{position:relative;display:flex;gap:2rem;padding-bottom:3.5rem}
.timeline-item:last-child{padding-bottom:0}
.timeline-marker{flex-shrink:0;width:48px;height:48px;border-radius:4px;border:1px solid var(--border-strong);background:var(--card);display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.timeline-marker span{font-family:'Sora',sans-serif;font-size:13px;font-weight:600;color:var(--gold)}
.timeline-body h3{font-family:'Sora',sans-serif;font-size:22px;font-weight:500;color:var(--ink);letter-spacing:-.02em;margin-top:.5rem}
.timeline-body p{margin-top:.6rem;font-size:15px;line-height:1.7;color:var(--muted);max-width:600px}
.timeline-item:hover .timeline-marker{border-color:var(--gold);background:rgba(212,168,87,.08)}

/* ============ INVESTOR RELATIONS (Onyx & Gold v3) ============ */
.ir-hero{padding:11rem 0 5.5rem;position:relative;overflow:hidden;border-bottom:1px solid rgba(212,168,87,.08)}
.ir-hero-glow{position:absolute;top:-30%;right:-10%;width:55%;height:120%;background:radial-gradient(circle at center,rgba(212,168,87,.07),transparent 65%);pointer-events:none}
.ir-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:4rem;align-items:flex-end;position:relative;z-index:2}
.ir-display{font-family:'Sora',sans-serif;font-size:clamp(2.8rem,6.5vw,5.5rem);font-weight:500;line-height:1.02;letter-spacing:-.045em;color:var(--ink);margin-top:1.75rem}
.ir-display em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#f0d68a,#d4a857 55%,#9a7a3b);-webkit-background-clip:text;background-clip:text;color:transparent}
.ir-lede{margin-top:2rem;max-width:560px}

/* Hero aside — on-this-page quick nav */
.ir-hero-aside{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:1.75rem;backdrop-filter:blur(8px)}
.ir-aside-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin-bottom:1.25rem}
.ir-chip{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;margin-bottom:.5rem;border:1px solid rgba(212,168,87,.12);border-radius:3px;font-size:13px;font-weight:500;color:var(--ink);transition:all .25s cubic-bezier(.16,1,.3,1)}
.ir-chip:last-child{margin-bottom:0}
.ir-chip .arr{color:var(--gold);transition:transform .25s cubic-bezier(.16,1,.3,1)}
.ir-chip:hover{border-color:var(--gold);background:rgba(212,168,87,.06);transform:translateX(4px)}
.ir-chip:hover .arr{transform:translateX(4px)}

/* Ticker strip */
.ir-ticker{border-bottom:1px solid var(--border)}
.ir-ticker .marquee-track{animation-duration:60s}

/* Snapshot stat cards */
.ir-snapshot-section{padding-bottom:5rem}
.ir-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.ir-stat{position:relative;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2.5rem 2rem;text-align:center;overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,border-color .35s}
.ir-stat::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transition:width .4s cubic-bezier(.16,1,.3,1)}
.ir-stat:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 30px 60px -28px rgba(212,168,87,.35)}
.ir-stat:hover::before{width:100%}
.ir-stat-icon{font-size:2rem;margin-bottom:1rem}
.ir-stat-k{font-family:'Sora',sans-serif;font-size:34px;font-weight:600;color:var(--ink);line-height:1}
.ir-stat-v{margin-top:.6rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.ir-stat.gold{background:linear-gradient(160deg,rgba(212,168,87,.16),rgba(212,168,87,.05));border-color:var(--border-strong)}
.ir-stat.gold .ir-stat-k{background:linear-gradient(135deg,#f0d68a,#d4a857 55%,#9a7a3b);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Resource cards */
.ir-resources{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.ir-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2.25rem 2rem;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s}
.ir-card:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 30px 60px -30px rgba(212,168,87,.28)}
.ir-card-icon{width:52px;height:52px;border-radius:4px;border:1px solid rgba(212,168,87,.35);background:var(--bg-2);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:1.75rem;transition:all .35s}
.ir-card:hover .ir-card-icon{background:rgba(212,168,87,.14);transform:rotate(-4deg) scale(1.06)}
.ir-card h4{font-family:'Sora',sans-serif;font-size:20px;font-weight:500;color:var(--ink);letter-spacing:-.015em}
.ir-card p{margin-top:.75rem;font-size:14px;line-height:1.65;color:var(--muted);flex-grow:1}
.ir-card-link{display:inline-flex;align-items:center;gap:.75rem;margin-top:1.75rem;padding-top:1rem;border-top:1px solid rgba(212,168,87,.08);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}
.ir-card-link .arr{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ir-card:hover .ir-card-link .arr{transform:translateX(6px)}

/* Company information panel */
.ir-panel{position:relative;background:var(--bg-2);border:1px solid var(--border-strong);border-radius:4px;padding:3.5rem;overflow:hidden}
.ir-panel::after{content:"";position:absolute;top:-40%;right:-15%;width:50%;height:150%;background:radial-gradient(circle at center,rgba(212,168,87,.08),transparent 65%);pointer-events:none}
.ir-panel-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:start}
.ir-panel-title{font-family:'Sora',sans-serif;font-size:26px;font-weight:500;color:var(--ink);letter-spacing:-.02em;margin:.75rem 0 1.75rem}
.ir-dl{margin:0}
.ir-dl-row{display:grid;grid-template-columns:160px 1fr;gap:1.5rem;padding:1rem 0;border-bottom:1px solid rgba(212,168,87,.12);transition:background .2s}
.ir-dl-row:last-child{border-bottom:none}
.ir-dl-row:hover{background:linear-gradient(90deg,rgba(212,168,87,.04),transparent)}
.ir-dl-row dt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);padding-top:3px}
.ir-dl-row dd{font-family:'Sora',sans-serif;font-size:15px;color:var(--ink);margin:0}
.ir-panel-contact{border-left:1px solid rgba(212,168,87,.15);padding-left:4rem}
.ir-panel-contact p{font-size:14.5px;line-height:1.75;color:var(--muted);margin-bottom:2rem}

/* IR CTA band */
.ir-cta{margin-top:2rem;border-top:1px solid var(--border);background:linear-gradient(180deg,transparent,rgba(212,168,87,.05));padding:7rem 0;text-align:center}
.ir-cta-inner h2{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:500;letter-spacing:-.03em;margin-top:.5rem}
.ir-cta-inner em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#f0d68a,#d4a857 55%,#9a7a3b);-webkit-background-clip:text;background-clip:text;color:transparent;font-family:'Sora'}
.ir-cta-inner p{margin:1.25rem auto 0;max-width:480px;color:var(--muted);font-size:16px}
.ir-cta-actions{margin-top:2.5rem;display:flex;justify-content:center;gap:.85rem;flex-wrap:wrap}

/* Scroll reveal utility */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:var(--rd,0s)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ============ SERVICES OVERVIEW ENGINE (Onyx & Gold v3) ============ */
.sv-hero{padding:11rem 0 5.5rem;position:relative;overflow:hidden;border-bottom:1px solid rgba(212,168,87,.08);background:radial-gradient(circle at 90% 0%,rgba(212,168,87,.05),transparent 60%)}
.sv-hero-watermark{position:absolute;right:-2rem;bottom:-7rem;font-family:'Sora',sans-serif;font-size:clamp(16rem,30vw,28rem);font-weight:700;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(212,168,87,.10);pointer-events:none;user-select:none}
.sv-lede{margin-top:2rem;max-width:640px}

.sv-filterbar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid rgba(212,168,87,.08);padding:1.5rem 0;margin-bottom:4rem;flex-wrap:wrap}
.sv-strip-title{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.sv-pills{display:flex;gap:1.75rem;flex-wrap:wrap}
.sv-pill{background:transparent;border:none;color:var(--muted);font-family:'Manrope',sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;padding:6px 0;position:relative;transition:color .3s ease;display:inline-flex;align-items:center;gap:.5rem}
.sv-pill .ct{font-size:10px;color:var(--gold);border:1px solid rgba(212,168,87,.25);border-radius:99px;padding:1px 7px;transition:all .3s}
.sv-pill::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width .3s cubic-bezier(.25,.8,.25,1)}
.sv-pill:hover,.sv-pill.active{color:var(--ink)}
.sv-pill.active::after{width:100%}
.sv-pill.active .ct{background:var(--gold);color:#1a1408;border-color:var(--gold)}

.sv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.sv-card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2rem;overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s,opacity .3s}
.sv-card::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-light));transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.sv-card:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 30px 60px -30px rgba(212,168,87,.3)}
.sv-card:hover::after{transform:scaleX(1)}
.sv-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.75rem}
.sv-num{font-family:'Sora',sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--muted);transition:color .3s}
.sv-card:hover .sv-num{color:var(--gold)}
.sv-icon{width:52px;height:52px;border-radius:4px;border:1px solid rgba(212,168,87,.3);background:var(--bg-2);display:flex;align-items:center;justify-content:center;font-size:22px;transition:all .35s cubic-bezier(.16,1,.3,1)}
.sv-card:hover .sv-icon{background:rgba(212,168,87,.14);transform:rotate(-5deg) scale(1.08)}
.sv-card h3{font-family:'Sora',sans-serif;font-size:20px;font-weight:500;color:var(--ink);letter-spacing:-.015em}
.sv-card p{margin-top:.6rem;font-size:13.5px;line-height:1.65;color:var(--muted);flex-grow:1}
.sv-link{display:inline-flex;align-items:center;gap:.75rem;margin-top:1.75rem;padding-top:1rem;border-top:1px solid rgba(212,168,87,.08);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}
.sv-link .arr{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.sv-card:hover .sv-link .arr{transform:translateX(6px)}
.sv-card.featured{background:linear-gradient(160deg,rgba(212,168,87,.12),var(--card) 55%);border-color:var(--border-strong)}
.sv-card.ngo{background:linear-gradient(160deg,rgba(212,120,87,.10),var(--card) 55%)}
.sv-card.hidden-by-filter{display:none}

/* ============ SERVICE DETAIL (Onyx & Gold v3) ============ */
.sd-hero{padding:11rem 0 5rem;position:relative;overflow:hidden;border-bottom:1px solid rgba(212,168,87,.08);background:radial-gradient(circle at 0% 20%,rgba(212,168,87,.05),transparent 55%)}
.sd-hero-watermark{position:absolute;right:2rem;top:50%;transform:translateY(-46%);font-size:clamp(8rem,18vw,16rem);opacity:.07;filter:grayscale(35%);pointer-events:none;user-select:none}
.sd-display{font-family:'Sora',sans-serif;font-size:clamp(2.3rem,5vw,4rem);font-weight:500;line-height:1.06;letter-spacing:-.035em;color:var(--ink);max-width:840px;margin-top:.5rem}
.sd-hero .lede{max-width:680px}
.sd-hero-meta{display:flex;align-items:center;gap:1.25rem;margin-top:2.5rem}
.sd-vert-count{font-family:'Sora',sans-serif;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.sd-vert-count em{font-style:normal;color:var(--gold)}
.sd-vert-sep{width:48px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.sd-vert-cat{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);border:1px solid rgba(212,168,87,.25);border-radius:99px;padding:.35rem .9rem}

.sd-grid{display:grid;grid-template-columns:1fr 360px;gap:4.5rem;align-items:start}
.sd-visual{position:relative;height:300px;border:1px solid var(--border-strong);border-radius:4px;background:radial-gradient(circle at 70% 30%,rgba(212,168,87,.14),var(--bg-2) 70%);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:3rem}
.sd-visual-icon{font-size:6rem;filter:drop-shadow(0 20px 40px rgba(0,0,0,.45));transition:transform .6s cubic-bezier(.16,1,.3,1)}
.sd-visual:hover .sd-visual-icon{transform:scale(1.12) rotate(-4deg)}
.sd-visual-cap{position:absolute;bottom:0;left:0;right:0;padding:1.25rem 1.5rem;background:linear-gradient(to top,rgba(13,12,10,.92),transparent);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--gold)}
.sd-prose{margin-top:1.75rem}
.sd-prose p{font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:1.25rem}
.sd-prose p:first-child::first-letter{font-family:'Sora',sans-serif;font-size:3.1em;font-weight:600;float:left;line-height:.85;margin:.06em .12em 0 0;background:linear-gradient(135deg,#f0d68a,#d4a857 55%,#9a7a3b);-webkit-background-clip:text;background-clip:text;color:transparent}
.sd-prose strong{color:var(--ink)}
.sd-feat-title{font-family:'Sora',sans-serif;font-size:24px;font-weight:500;color:var(--ink);letter-spacing:-.02em;margin:3.5rem 0 1.75rem}
.sd-features{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.sd-feature{display:flex;gap:.9rem;align-items:flex-start;background:var(--card);padding:1.2rem 1.4rem;font-size:14px;line-height:1.55;color:var(--text);transition:background .25s,transform .25s}
.sd-feature .mark{color:var(--gold);font-size:10px;padding-top:5px;transition:transform .25s}
.sd-feature:hover{background:var(--bg-2)}
.sd-feature:hover .mark{transform:scale(1.4)}
.sd-why{position:relative;margin-top:3.5rem;background:linear-gradient(135deg,rgba(212,168,87,.09),rgba(212,168,87,.02));border:1px solid var(--border-strong);border-left:3px solid var(--gold);border-radius:4px;padding:2.5rem;overflow:hidden}
.sd-why-glyph{position:absolute;top:-1.5rem;right:-.5rem;font-size:7rem;color:rgba(212,168,87,.08);pointer-events:none}
.sd-why h3{font-family:'Sora',sans-serif;font-size:22px;font-weight:500;color:var(--ink);letter-spacing:-.02em}
.sd-why p{margin-top:1rem;font-size:15px;line-height:1.8;color:var(--muted)}

/* Sidebar */
.sd-sidebar{position:sticky;top:104px;display:flex;flex-direction:column;gap:1.5rem}
.sd-side-card{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:1.9rem}
.sd-side-card h4{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--gold);margin-bottom:1rem}
.sd-side-contact{background:linear-gradient(160deg,rgba(212,168,87,.13),var(--card) 60%);border-color:var(--border-strong)}
.sd-side-contact p{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:1.5rem}
.sd-other{list-style:none;margin:0;padding:0}
.sd-other li{border-bottom:1px solid rgba(212,168,87,.08)}
.sd-other li:last-child{border-bottom:none}
.sd-other a{display:flex;align-items:center;gap:.8rem;padding:.7rem .25rem;font-size:13.5px;font-weight:500;color:var(--text);transition:all .25s}
.sd-other a .ic{font-size:15px;width:22px;text-align:center}
.sd-other a .arr{margin-left:auto;color:var(--gold);opacity:0;transform:translateX(-6px);transition:all .25s}
.sd-other a:hover{color:var(--gold);padding-left:.6rem}
.sd-other a:hover .arr{opacity:1;transform:translateX(0)}
.sd-other-all{display:inline-block;margin-top:1rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--gold)}
.sd-other-all:hover{color:var(--gold-light)}

/* Prev / next vertical */
.sd-pn{border-top:1px solid var(--border);background:rgba(22,20,15,.4)}
.sd-pn-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch}
.sd-pn-link{display:flex;flex-direction:column;gap:.5rem;padding:2.5rem 1.5rem;transition:background .3s}
.sd-pn-link:hover{background:rgba(212,168,87,.05)}
.sd-pn-link .dir{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--muted)}
.sd-pn-link .nm{font-family:'Sora',sans-serif;font-size:19px;font-weight:500;color:var(--ink);display:flex;align-items:center;gap:.6rem;transition:color .3s}
.sd-pn-link:hover .nm{color:var(--gold)}
.sd-pn-next{align-items:flex-end;text-align:right}
.sd-pn-all{display:flex;align-items:center;justify-content:center;padding:0 2.25rem;border-left:1px solid var(--border);border-right:1px solid var(--border);font-size:20px;color:var(--muted);transition:all .3s}
.sd-pn-all:hover{color:var(--gold);background:rgba(212,168,87,.05)}

/* Services / detail responsive */
@media(max-width:1100px){
  .sv-grid{grid-template-columns:repeat(2,1fr)}
  .sd-grid{grid-template-columns:1fr 320px;gap:3rem}
}
@media(max-width:900px){
  .sv-hero,.sd-hero{padding:9rem 0 4rem}
  .sd-hero-watermark{opacity:.04;right:-2rem}
  .sd-grid{grid-template-columns:1fr}
  .sd-sidebar{position:static}
  .sd-features{grid-template-columns:1fr}
  .sv-filterbar{flex-direction:column;align-items:flex-start;gap:1.25rem;margin-bottom:3rem}
  .sv-pills{gap:1.25rem}
  .sd-pn-grid{grid-template-columns:1fr}
  .sd-pn-all{display:none}
  .sd-pn-next{align-items:flex-start;text-align:left;border-top:1px solid var(--border)}
}
@media(max-width:560px){
  .sv-grid{grid-template-columns:1fr}
  .sd-visual{height:220px}
  .sd-visual-icon{font-size:4.5rem}
}

/* IR responsive */
@media(max-width:1100px){
  .ir-resources{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .ir-hero{padding:9rem 0 4rem}
  .ir-hero-grid{grid-template-columns:1fr;gap:2.5rem;align-items:start}
  .ir-stats{grid-template-columns:repeat(2,1fr);gap:1rem}
  .ir-panel{padding:2.25rem 1.5rem}
  .ir-panel-grid{grid-template-columns:1fr;gap:3rem}
  .ir-panel-contact{border-left:none;padding-left:0;border-top:1px solid rgba(212,168,87,.15);padding-top:3rem}
  .ir-dl-row{grid-template-columns:1fr;gap:.25rem}
}
@media(max-width:560px){
  .ir-stats,.ir-resources{grid-template-columns:1fr}
  .ir-cta-actions .btn{width:100%;justify-content:center}
}

/* ============ LEGAL PAGES (Privacy / Terms) ============ */
.legal-prose{max-width:760px}
.legal-prose .legal-updated{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin-bottom:3rem}
.legal-prose h2{font-family:'Sora',sans-serif;font-size:22px;font-weight:500;color:var(--ink);letter-spacing:-.02em;margin:2.75rem 0 1rem}
.legal-prose h2:first-of-type{margin-top:0}
.legal-prose p{font-size:15.5px;line-height:1.75;color:var(--muted);margin-bottom:1rem}
.legal-prose ul{list-style:none;padding:0;margin:0 0 1rem}
.legal-prose ul li{position:relative;padding-left:18px;font-size:15.5px;line-height:1.7;color:var(--muted);margin-bottom:.6rem}
.legal-prose ul li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.legal-prose strong{color:var(--ink);font-weight:600}
.legal-prose a{color:var(--gold)}
.legal-prose a:hover{color:var(--gold-light)}
/* ============ GLOBAL MOBILE SPACING (final overrides) ============ */
/* The later .section{padding:96px 0} definition outranks the earlier mobile
   rule, so re-assert compact section padding for small screens here. */
@media(max-width:900px){
  .section{padding:4rem 0}
  .page-hero{padding:6.5rem 0 3rem}
  .site-footer{margin-top:4rem}
  .cta-box{margin-top:3rem}
}
@media(max-width:560px){
  .container{padding:0 1.25rem}
  .hero-stats{gap:1.25rem}
  .ir-cta{padding:4.5rem 0}
  .sd-pn-link{padding:1.75rem 1.25rem}
}

/* ============ CONSTRUCTION PROJECT PORTFOLIO (Onyx & Gold v3) ============ */
.pj-sub{display:flex;align-items:center;gap:1rem;font-family:'Sora',sans-serif;font-size:22px;font-weight:500;color:var(--ink);letter-spacing:-.02em;margin:3rem 0 1.75rem}
.pj-sub .num{font-size:11px;font-weight:600;letter-spacing:.18em;color:var(--gold);border:1px solid rgba(212,168,87,.35);border-radius:99px;padding:.3rem .8rem}
.pj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.pj-grid-4{grid-template-columns:repeat(4,1fr)}
.pj-card{background:var(--card);border:1px solid var(--border);border-radius:4px;overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s}
.pj-card:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 30px 60px -30px rgba(212,168,87,.3)}
.pj-img{position:relative;aspect-ratio:16/9;background:radial-gradient(circle at 60% 35%,rgba(212,168,87,.12),var(--bg-2) 75%);overflow:hidden}
.pj-img-43{aspect-ratio:4/3}
.pj-img .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:46px;opacity:.35;filter:grayscale(20%)}
.pj-img img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.pj-card:hover .pj-img img{transform:scale(1.06)}
.pj-img::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(to top,rgba(13,12,10,.45),transparent 45%);pointer-events:none}
.pj-flag{position:absolute;top:1rem;left:1rem;z-index:3;background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#1a1408;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;padding:.4rem .85rem;border-radius:99px}
.pj-body{padding:1.4rem 1.5rem 1.6rem}
.pj-body h4{font-family:'Sora',sans-serif;font-size:17px;font-weight:500;color:var(--ink);letter-spacing:-.01em;line-height:1.35}
.pj-type{margin-top:.5rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--gold)}
.pj-mega{display:grid;grid-template-columns:1.5fr 1fr;margin-top:1.5rem;border-color:var(--border-strong);background:linear-gradient(160deg,rgba(212,168,87,.08),var(--card) 60%)}
.pj-mega .pj-img{aspect-ratio:auto;min-height:300px;height:100%}
.pj-mega .pj-body{display:flex;flex-direction:column;justify-content:center;padding:2.5rem}
.pj-mega-title{font-family:'Sora',sans-serif;font-size:clamp(20px,2.4vw,28px);font-weight:500;color:var(--ink);letter-spacing:-.02em;line-height:1.25}

/* Geographic presence */
.pj-geo{border:1px solid var(--border);border-radius:4px;overflow:hidden}
.pj-geo-row{display:grid;grid-template-columns:56px 220px 1fr;align-items:center;gap:1.25rem;padding:1.4rem 1.5rem;background:var(--card);border-bottom:1px solid var(--border);transition:background .25s}
.pj-geo-row:last-child{border-bottom:none}
.pj-geo-row:hover{background:rgba(212,168,87,.05)}
.pj-geo-pin{width:42px;height:42px;border-radius:4px;border:1px solid rgba(212,168,87,.35);background:var(--bg-2);display:flex;align-items:center;justify-content:center;font-size:17px}
.pj-geo-city{font-family:'Sora',sans-serif;font-size:18px;font-weight:500;color:var(--ink)}
.pj-geo-desc{font-size:14.5px;color:var(--muted);line-height:1.6}

/* Execution philosophy band */
.pj-philosophy{padding:7rem 0;border-top:1px solid var(--border);background:linear-gradient(135deg,rgba(212,168,87,.09),transparent 55%),var(--bg-2)}
.pj-phil-lede{max-width:760px;font-size:17px;line-height:1.8;color:var(--text);margin-top:1.5rem}
.pj-pills{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.5rem}
.pj-pill{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border-strong);background:var(--card);border-radius:99px;padding:.75rem 1.5rem;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);transition:all .3s}
.pj-pill:hover{background:var(--gold);color:#1a1408;transform:translateY(-2px)}

@media(max-width:1100px){
  .pj-grid,.pj-grid-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .pj-mega{grid-template-columns:1fr}
  .pj-mega .pj-img{min-height:0;aspect-ratio:16/9}
  .pj-geo-row{grid-template-columns:42px 1fr;row-gap:.25rem}
  .pj-geo-desc{grid-column:2}
  .pj-philosophy{padding:4.5rem 0}
}
@media(max-width:560px){
  .pj-grid,.pj-grid-4{grid-template-columns:1fr}
}
