/* ogs — page theme (moved out of the blade). Base reset/.reveal/.home-btn in company-base.css */
:root{
    --green-900:#11281a;--green-800:#163220;--green-700:#1e4429;--green-600:#2c5d39;
    --green-500:#3f7a4c;--green-400:#5a9968;--gold:#c9a227;--gold-light:#e0c558;
    --cream:#f6f3e9;--cream-2:#efebdc;--ink:#15201a;--muted:#5c6b5e;
    --line:rgba(201,162,39,.25);
    --radius:18px;--radius-sm:14px;
    --e1:0 2px 8px -2px rgba(17,40,26,.12);
    --e2:0 14px 34px -16px rgba(17,40,26,.32);
    --shadow:0 24px 60px -20px rgba(17,40,26,.45);
    --ease:cubic-bezier(.16,1,.3,1);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--cream);color:var(--ink);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
  h1,h2,h3,.serif{font-family:'Montserrat',sans-serif}
  /* B2B project standard: every company page uses the single Montserrat typeface (per design-system convention). Safe wildcard — this page has no icon fonts (icons are inline SVG). */
  *{font-family:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif!important}
  ::selection{background:var(--gold);color:var(--green-900)}
  img{max-width:100%;display:block}
  a{-webkit-tap-highlight-color:transparent}
  .dimples{background-image:radial-gradient(circle at center, rgba(255,255,255,.05) 1.5px, transparent 1.6px);background-size:18px 18px}

  /* ---- Shared SVG icon system (Lucide-style, stroke = currentColor) ---- */
  .ico{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
  .chip{display:grid;place-items:center;flex-shrink:0}
  .chip .ico{width:26px;height:26px;stroke-width:1.6}

  /* ---- Focus visibility (accessibility) ---- */
  a:focus-visible,button:focus-visible,.btn:focus-visible{outline:3px solid var(--gold-light);outline-offset:3px;border-radius:8px}
  nav a:focus-visible{outline-offset:5px}

  nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,5vw,64px);transition:.4s var(--ease)}
  nav.scrolled{background:rgba(17,40,26,.94);backdrop-filter:blur(12px);padding:12px clamp(20px,5vw,64px);box-shadow:0 10px 30px -12px rgba(0,0,0,.5)}
  .logo{display:flex;align-items:center;gap:12px;text-decoration:none}
  .logo svg{width:54px;height:auto;display:block}
  .logo .lt{color:var(--cream);line-height:1.05}
  .logo .lt b{font-family:'Montserrat',serif;font-size:1.05rem;letter-spacing:.5px;display:block}
  .logo .lt span{font-size:.62rem;letter-spacing:2px;color:var(--gold-light);text-transform:uppercase}
  .nav-links{display:flex;gap:28px;align-items:center}
  .nav-links a{color:var(--cream);text-decoration:none;font-size:.82rem;font-weight:500;letter-spacing:.3px;opacity:.85;transition:color .25s,opacity .25s;position:relative}
  .nav-links a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--gold-light);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
  .nav-links a:not(.nav-cta):hover{opacity:1;color:var(--gold-light)}
  .nav-links a:not(.nav-cta):hover::after{transform:scaleX(1)}
  .nav-cta{background:var(--gold);color:var(--green-900)!important;opacity:1!important;padding:9px 22px;border-radius:40px;font-weight:600;transition:background .25s,transform .25s,box-shadow .25s}
  .nav-cta:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(201,162,39,.7)}
  .nav-back{display:inline-flex;align-items:center;gap:6px;color:#e0c558!important;font-weight:700!important;opacity:1!important}
  .burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px}
  .burger span{width:26px;height:2px;background:var(--cream);border-radius:2px;transition:.3s}

  header{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden}
  .hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05)}
  .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,var(--green-900) 0%,rgba(22,50,32,.92) 42%,rgba(30,68,41,.6) 70%,rgba(17,40,26,.35) 100%)}
  .hero-grain{position:absolute;inset:0;opacity:.4;z-index:1}
  .hero-inner{position:relative;z-index:2;width:100%;max-width:1280px;margin:0 auto;padding:120px clamp(20px,5vw,64px) 96px}
  .eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--gold-light);font-size:.78rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;margin-bottom:24px}
  .eyebrow::before{content:"";width:38px;height:1px;background:var(--gold)}
  .hero-inner h1{color:var(--cream);font-size:clamp(2.5rem,6vw,5rem);font-weight:800;line-height:1.04;letter-spacing:-1px;margin-bottom:10px;max-width:860px;text-shadow:0 2px 30px rgba(0,0,0,.3)}
  .hero-inner h1 em{font-style:italic;color:var(--gold-light);font-weight:500}
  .hero-sub{color:rgba(246,243,233,.9);font-size:clamp(1.05rem,2vw,1.4rem);font-weight:300;max-width:600px;margin:18px 0 36px}
  .hero-sub b{color:var(--gold-light);font-weight:600}
  .hero-tags{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:42px}
  .hero-tags span{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);color:var(--cream);padding:9px 18px;border-radius:40px;font-size:.82rem;font-weight:500;background:rgba(255,255,255,.06);backdrop-filter:blur(4px)}
  .hero-tags .ico{width:16px;height:16px;color:var(--gold-light)}
  .hero-btns{display:flex;flex-wrap:wrap;gap:16px}
  .btn{text-decoration:none;font-weight:600;font-size:.92rem;padding:15px 32px;border-radius:46px;transition:background .3s,transform .3s,box-shadow .3s,border-color .3s;display:inline-flex;align-items:center;gap:10px;cursor:pointer;border:none}
  .btn .ico{width:18px;height:18px}
  .btn-gold{background:var(--gold);color:var(--green-900)}
  .btn-gold:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 14px 30px -10px rgba(201,162,39,.6)}
  .btn-gold:hover .ico.arrow{transform:translateX(4px)}
  .btn .ico.arrow{transition:transform .3s var(--ease)}
  .btn-ghost{border:1px solid rgba(246,243,233,.45);color:var(--cream);background:rgba(255,255,255,.04)}
  .btn-ghost:hover{background:rgba(246,243,233,.12);border-color:var(--cream);transform:translateY(-2px)}
  .hero-meta{position:absolute;bottom:30px;left:0;right:0;z-index:2;max-width:1280px;margin:0 auto;padding:0 clamp(20px,5vw,64px);display:flex;flex-wrap:wrap;align-items:center;gap:10px 30px;color:rgba(246,243,233,.7);font-size:.8rem}
  .hero-meta span{display:inline-flex;align-items:center;gap:8px}
  .hero-meta .ico{width:15px;height:15px;color:var(--gold-light)}
  .hero-meta b{color:var(--gold-light);font-weight:600}
  .scroll-cue{position:absolute;bottom:30px;right:clamp(20px,5vw,64px);z-index:2;color:rgba(246,243,233,.6);display:inline-flex;flex-direction:column;align-items:center;gap:6px;font-size:.66rem;letter-spacing:1.5px;text-transform:uppercase}
  .scroll-cue .ico{width:18px;height:18px;animation:bob 1.8s ease-in-out infinite}
  @keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

  .stats{background:var(--green-800);padding:0 clamp(20px,5vw,64px)}
  .stats-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
  .stat{padding:46px 26px;text-align:center;border-right:1px solid rgba(201,162,39,.18);transition:background .3s}
  .stat:last-child{border-right:none}
  .stat:hover{background:rgba(201,162,39,.05)}
  .stat .num{font-family:'Montserrat',serif;color:var(--gold-light);font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
  .stat .lab{color:rgba(246,243,233,.7);font-size:.84rem;margin-top:10px;letter-spacing:.4px}

  section{padding:clamp(70px,9vw,128px) clamp(20px,5vw,64px);position:relative}
  .wrap{max-width:1280px;margin:0 auto}
  .sec-head{margin-bottom:54px;max-width:780px}
  .sec-num{color:var(--gold);font-family:'Montserrat',serif;font-size:1rem;font-weight:700;letter-spacing:4px;display:block;margin-bottom:12px}
  .sec-head h2{font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.08;font-weight:700;color:var(--green-800);letter-spacing:-.5px}
  .sec-head h2 em{font-style:italic;color:var(--gold)}
  .sec-head p{color:var(--muted);font-size:1.05rem;margin-top:18px;font-weight:300}

  .ov-split{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
  .ov-imgs{position:relative}
  .ov-imgs .big{width:100%;border-radius:var(--radius);display:block;box-shadow:var(--shadow)}
  .ov-imgs .small{position:absolute;bottom:-34px;right:-18px;width:46%;border-radius:var(--radius-sm);border:5px solid var(--cream);box-shadow:0 18px 40px -14px rgba(17,40,26,.5)}
  .ov-grid{border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:#fff;box-shadow:var(--e1)}
  .ov-row{display:grid;grid-template-columns:140px 1fr;border-bottom:1px solid rgba(201,162,39,.14)}
  .ov-row:last-child{border-bottom:none}
  .ov-row .k{background:var(--green-700);color:var(--cream);padding:13px 18px;font-weight:600;font-size:.82rem;display:flex;align-items:center}
  .ov-row:nth-child(even) .k{background:var(--green-600)}
  .ov-row .v{padding:13px 18px;font-size:.86rem;color:var(--ink);display:flex;align-items:center}

  #products{background:linear-gradient(180deg,var(--cream) 0%,var(--cream-2) 100%)}
  .prod-top{display:grid;grid-template-columns:1fr 360px;gap:46px;align-items:end;margin-bottom:48px}
  .prod-top .brochure{width:100%;border-radius:var(--radius-sm);box-shadow:var(--shadow);display:block}
  .prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
  .prod{background:#fff;border-radius:var(--radius-sm);padding:28px 24px;border:1px solid rgba(17,40,26,.07);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;position:relative;overflow:hidden}
  .prod::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--gold),var(--green-500));transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
  .prod:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}
  .prod:hover::before{transform:scaleX(1)}
  .prod .ic{width:54px;height:54px;border-radius:13px;background:linear-gradient(160deg,var(--green-700),var(--green-500));color:var(--gold-light);margin-bottom:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
  .prod h3{font-family:'Montserrat';font-size:1rem;font-weight:600;color:var(--green-800);margin-bottom:7px;line-height:1.3}
  .prod p{font-size:.84rem;color:var(--muted);font-weight:300}
  .prod .tag{display:inline-flex;align-items:center;gap:5px;margin-top:13px;font-size:.7rem;letter-spacing:.5px;color:#8a6d12;background:rgba(201,162,39,.14);padding:5px 11px;border-radius:20px;font-weight:600}
  .prod .tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}

  #cap{background:var(--green-900);color:var(--cream);overflow:hidden}
  #cap .dimples{position:absolute;inset:0;opacity:.55}
  #cap .wrap{position:relative;z-index:2}
  #cap .sec-head h2{color:var(--cream)}#cap .sec-head p{color:rgba(246,243,233,.72)}
  .cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .cap{background:rgba(255,255,255,.04);border:1px solid rgba(201,162,39,.18);border-radius:var(--radius-sm);padding:32px 28px;transition:background .35s,border-color .35s,transform .35s var(--ease)}
  .cap:hover{background:rgba(201,162,39,.08);border-color:var(--gold);transform:translateY(-5px)}
  .cap .ic{width:52px;height:52px;border-radius:13px;background:rgba(201,162,39,.12);border:1px solid rgba(201,162,39,.3);color:var(--gold-light);margin-bottom:18px}
  .cap h3{font-family:'Montserrat';font-size:1.06rem;font-weight:600;color:var(--gold-light);margin-bottom:10px}
  .cap p{font-size:.87rem;opacity:.82;font-weight:300}

  #export{background:var(--cream-2);overflow:hidden}
  .exp-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:46px;align-items:stretch}
  .exp-left{position:relative;border-radius:var(--radius);overflow:hidden;min-height:420px;box-shadow:var(--shadow)}
  .exp-left .imga,.exp-left .imgb{position:absolute;background-size:cover;background-position:center}
  .exp-left .imga{top:0;left:0;right:0;height:58%}
  .exp-left .imgb{bottom:0;left:0;right:0;height:42%;border-top:3px solid var(--gold)}
  .exp-left .ovl{position:absolute;left:0;right:0;bottom:0;padding:26px;background:linear-gradient(0deg,rgba(17,40,26,.95),transparent);z-index:2}
  .exp-left .ovl .badge{display:inline-flex;align-items:center;gap:7px;background:var(--gold);color:var(--green-900);font-weight:700;font-size:.72rem;letter-spacing:1px;padding:7px 14px;border-radius:30px;margin-bottom:10px}
  .exp-left .ovl .badge .ico{width:14px;height:14px}
  .exp-left .ovl p{font-size:.9rem;color:#fff;opacity:.95}
  .markets{display:flex;flex-direction:column;gap:16px;justify-content:center}
  .market{background:#fff;border:1px solid rgba(17,40,26,.07);border-radius:var(--radius-sm);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;transition:transform .3s var(--ease),box-shadow .3s}
  .market:hover{transform:translateX(6px);box-shadow:0 14px 30px -16px rgba(17,40,26,.3)}
  .market .mi{display:flex;align-items:center;gap:16px}
  .market .flag{font-size:1.6rem;line-height:1}
  .market h4{font-family:'Montserrat';font-size:1.04rem;font-weight:600;color:var(--green-800)}
  .market p{font-size:.8rem;color:var(--muted)}
  .market .pct{font-family:'Montserrat',serif;font-size:1.6rem;font-weight:700;color:var(--gold);white-space:nowrap;font-variant-numeric:tabular-nums}
  .market .pct.new{color:var(--green-500);font-size:1.05rem;font-style:italic}
  .exp-note{margin-top:30px;text-align:center;font-size:.9rem;color:var(--muted)}
  .exp-note b{color:var(--green-700)}

  #certs{background:var(--cream)}
  .cert-top{display:grid;grid-template-columns:1fr 420px;gap:46px;align-items:center;margin-bottom:48px}
  .cert-top .ezimg{width:100%;border-radius:var(--radius-sm);box-shadow:var(--shadow);display:block;border:1px solid var(--line)}
  .cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .cert{background:#fff;border-radius:var(--radius-sm);padding:28px;border:1px solid rgba(17,40,26,.07);border-left:4px solid var(--gold);transition:transform .3s var(--ease),box-shadow .3s;display:flex;gap:18px;align-items:flex-start}
  .cert:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
  .cert .ic{width:46px;height:46px;border-radius:12px;background:rgba(201,162,39,.1);color:var(--green-700);margin-top:2px}
  .cert h3{font-family:'Montserrat';font-size:1rem;font-weight:600;color:var(--green-800);margin-bottom:7px;line-height:1.35}
  .cert p{font-size:.84rem;color:var(--muted);font-weight:300}

  #vision{background:linear-gradient(160deg,var(--green-900),var(--green-800));color:var(--cream);overflow:hidden}
  #vision .wrap{position:relative;z-index:2}
  .vision-quote{font-family:'Montserrat',serif;font-style:italic;font-size:clamp(1.4rem,3vw,2.2rem);line-height:1.42;font-weight:500;max-width:920px;margin-bottom:66px;padding-left:34px;position:relative}
  .vision-quote::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:4px;background:var(--gold);border-radius:4px}
  .vision-quote b{color:var(--gold-light);font-style:normal}
  .chart-title{font-family:'Montserrat';font-size:1.1rem;font-weight:600;color:var(--gold-light);margin-bottom:8px}
  .chart-legend{display:flex;gap:26px;margin-bottom:36px;font-size:.82rem}
  .chart-legend span{display:inline-flex;align-items:center;gap:8px;opacity:.85}
  .chart-legend i{width:16px;height:16px;border-radius:4px;display:inline-block}
  .chart{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(14px,3vw,40px);align-items:end;height:320px;border-bottom:1px solid rgba(201,162,39,.3)}
  .yr{display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}
  .bars{display:flex;gap:8px;align-items:flex-end;height:100%;width:100%;justify-content:center}
  .bar{width:clamp(20px,4vw,42px);border-radius:7px 7px 0 0;position:relative;height:0;transition:height 1.1s var(--ease)}
  .bar.rev{background:linear-gradient(180deg,var(--green-400),var(--green-600))}
  .bar.exp{background:linear-gradient(180deg,var(--gold-light),var(--gold))}
  .bar .val{position:absolute;top:-24px;left:50%;transform:translateX(-50%);font-size:.82rem;font-weight:700;font-family:'Montserrat',serif;color:var(--cream);font-variant-numeric:tabular-nums}
  .yr .ylab{margin-top:14px;font-size:.85rem;font-weight:600;color:rgba(246,243,233,.8)}

  #contact{background:var(--green-800);color:var(--cream);position:relative;overflow:hidden}
  #contact .cbg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.14}
  #contact .wrap{position:relative;z-index:2}
  .ct-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
  .ct-left h2{font-size:clamp(2.2rem,5vw,3.6rem);color:var(--cream);line-height:1.05;margin-bottom:8px;margin-top:12px}
  .ct-left h2 em{font-style:italic;color:var(--gold-light)}
  .ct-left p{opacity:.8;font-weight:300;max-width:440px;margin-top:18px}
  .ct-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
  .ct-card{background:rgba(255,255,255,.05);border:1px solid rgba(201,162,39,.22);border-radius:var(--radius);padding:36px;backdrop-filter:blur(4px)}
  .ct-row{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid rgba(201,162,39,.14);align-items:flex-start}
  .ct-row:last-child{border-bottom:none}
  .ct-row .ci{width:34px;height:34px;border-radius:10px;background:rgba(201,162,39,.12);color:var(--gold-light);flex-shrink:0}
  .ct-row .ci .ico{width:18px;height:18px}
  .ct-row .cl{font-size:.72rem;letter-spacing:1px;text-transform:uppercase;opacity:.6;margin-bottom:2px}
  .ct-row .cv{font-size:.9rem;font-weight:500}
  .ct-row .cv a{color:var(--gold-light);text-decoration:none}
  .ct-row .cv a:hover{text-decoration:underline}

  footer{background:var(--green-900);border-top:1px solid rgba(201,162,39,.15);padding:30px clamp(20px,5vw,64px);text-align:center;color:rgba(246,243,233,.5);font-size:.82rem}
  footer .fl{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:8px}
  footer .fl svg{width:40px}

  .home-fab{position:fixed;left:18px;bottom:18px;z-index:9999;display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--green-900);text-decoration:none;font-size:.82rem;font-weight:700;padding:11px 20px;border-radius:40px;box-shadow:0 10px 30px -8px rgba(0,0,0,.5);transition:background .25s,transform .25s}
  .home-fab .ico{width:16px;height:16px}
  .home-fab:hover{background:var(--gold-light);transform:translateY(-2px)}

  .reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
  .reveal.in{opacity:1;transform:none}
  .reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}

  @media(max-width:1024px){
    .prod-grid{grid-template-columns:repeat(2,1fr)}
    .cap-grid,.cert-grid{grid-template-columns:repeat(2,1fr)}
    .ov-split,.exp-layout,.ct-layout,.prod-top,.cert-top{grid-template-columns:1fr;gap:40px}
    .ov-imgs .small{position:static;width:48%;margin:14px 0 0 auto;display:block}
    .scroll-cue{display:none}
  }
  @media(max-width:720px){
    .nav-links{display:none}.burger{display:flex}
    .stats-inner{grid-template-columns:repeat(2,1fr)}
    .stat{border-right:none;border-bottom:1px solid rgba(201,162,39,.18)}
    .prod-grid,.cap-grid,.cert-grid{grid-template-columns:1fr}
    .ov-row{grid-template-columns:120px 1fr}
    .chart{height:230px;gap:8px}.bar{width:clamp(14px,8vw,30px)}.bar .val{font-size:.66rem;top:-20px}
  }

  /* Respect users who prefer reduced motion */
  @media(prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
    .reveal{opacity:1!important;transform:none!important}
    .scroll-cue .ico{animation:none}
  }
