:root{
  --ink:#0b0b0d;
  --ink-2:#161619;
  --line: rgba(255,255,255,.09);
  --paper:#f7f4ee;
  --paper-2:#efe9df;
  --orange:#f2600c;
  --ember:#ff8a3d;
  --steel:#6e7076;
  --steel-light:#9a9ca1;
  --cream:#fbf9f4;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Work Sans', sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,.display{
  font-family:'Anton', sans-serif;
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:.01em;
  line-height:.95;
  margin:0;
}
.script{ font-family:'Caveat', cursive; font-weight:700; text-transform:none; letter-spacing:0; }
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
ul{padding:0; margin:0;}
.wrap{max-width:1280px; margin:0 auto; padding:0 32px;}
@media(max-width:640px){ .wrap{padding:0 20px;} }

/* ---------- signature stripe motif ---------- */
.stripes{ display:inline-flex; gap:6px; align-items:flex-end; }
.stripes span{ width:7px; height:26px; background:var(--orange); transform: skewX(-18deg); }
.stripes span:nth-child(2){opacity:.7;}
.stripes span:nth-child(3){opacity:.4;}
.stripes.sm span{height:14px; width:4px;}

/* ---------- nav ---------- */
header{
  position:fixed; top:0; left:0; right:0; z-index:100;
  background:rgba(11,11,13,.86);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav{ display:flex; align-items:center; justify-content:space-between; padding:16px 32px; max-width:1280px; margin:0 auto; }
.logo{ display:flex; align-items:center; gap:10px; }
.logo svg{width:30px; height:30px;}
.logo-text{ font-family:'Anton'; font-size:22px; letter-spacing:.06em; color:#fff; }
nav ul, #navList{list-style:none; display:flex; gap:34px; margin:0; padding:0;}
#navList a{ color:#cfcfd2; font-size:14px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; transition:color .2s; position:relative; padding-bottom:4px;}
#navList a:hover{color:var(--orange);}
#navList a.active{ color:var(--orange); }
#navList a.active::after{ content:""; position:absolute; left:0; right:0; bottom:-6px; height:2px; background:var(--orange); }
.nav-cta{ background:var(--orange); color:#fff; padding:11px 22px; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; border-radius:2px; transition:background .2s, transform .2s;}
.nav-cta:hover{background:var(--ember); transform:translateY(-1px);}
.menu-btn{display:none; background:none; border:none; color:#fff; font-size:26px; cursor:pointer;}
@media(max-width:880px){
  #navList{position:fixed; top:64px; left:0; right:0; background:var(--ink); flex-direction:column; gap:0; padding:8px 0 24px; transform:translateY(-140%); transition:transform .3s; border-bottom:1px solid var(--line); max-height:calc(100svh - 64px); overflow-y:auto;}
  #navList.open{transform:translateY(0);}
  #navList > li > a{display:block; padding:14px 32px; border-bottom:1px solid var(--line);}
  .menu-btn{display:block;}
  .nav-cta{display:none;}
}

/* ---------- mega menu ---------- */
.has-mega{ position:relative; }
.mega-trigger{
  background:none; border:none; cursor:pointer; font-family:inherit;
  display:flex; align-items:center; gap:6px;
  color:#cfcfd2; font-size:14px; font-weight:600; letter-spacing:.04em; text-transform:uppercase;
  padding:0 0 4px; position:relative; transition:color .2s;
}
.mega-trigger:hover, .mega-trigger.active{ color:var(--orange); }
.mega-trigger.active::after{ content:""; position:absolute; left:0; right:0; bottom:-6px; height:2px; background:var(--orange); }
.mega-trigger .chev{ width:13px; height:13px; transition:transform .2s; }
.has-mega.open .mega-trigger .chev{ transform:rotate(180deg); }

.mega-panel{
  position:absolute; top:calc(100% + 22px); left:50%; transform:translateX(-50%);
  background:var(--ink-2); border:1px solid var(--line); border-radius:8px;
  box-shadow:0 24px 48px rgba(0,0,0,.45);
  min-width:560px; padding:28px;
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .2s ease, transform .2s ease, visibility .2s;
}
.has-mega.open .mega-panel{ opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0); top:calc(100% + 14px); }
.mega-panel-narrow{ min-width:280px; }

.mega-inner{ display:grid; grid-template-columns:2.2fr 1fr; gap:32px; }
.mega-inner-list{ grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); }

.mega-col-tiles{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.mega-tile{ display:flex; flex-direction:column; border-radius:6px; overflow:hidden; background:var(--ink); border:1px solid var(--line); transition:border-color .2s, transform .2s; }
.mega-tile:hover{ border-color:rgba(242,96,12,.5); transform:translateY(-3px); }
.mega-tile img{ width:100%; aspect-ratio:16/10; object-fit:cover; background:#111; }
.mega-tile-name{ font-family:'Anton'; font-size:14px; color:#fff; text-transform:uppercase; padding:10px 12px 0; }
.mega-tile-tag{ font-size:11.5px; color:var(--steel-light); padding:2px 12px 12px; }

.mega-col-links{ display:flex; flex-direction:column; gap:2px; }
.mega-col-links h4{ color:var(--ember); font-size:12px; text-transform:uppercase; letter-spacing:.1em; margin:0 0 12px; }
.mega-col-links a{ font-size:14px; color:#d5d5d8; padding:9px 0; border-bottom:1px solid var(--line); transition:color .2s, padding-left .2s; }
.mega-col-links a:last-child{ border-bottom:none; }
.mega-col-links a:hover{ color:var(--orange); padding-left:4px; }

@media(max-width:880px){
  .mega-panel{
    position:static; transform:none; min-width:0; width:100%; box-shadow:none; border:none;
    border-radius:0; background:#111114; padding:18px 32px 22px; display:none;
  }
  .has-mega.open .mega-panel{ display:block; opacity:1; visibility:visible; pointer-events:auto; }
  .mega-trigger{ width:100%; padding:14px 32px; border-bottom:1px solid var(--line); justify-content:space-between; }
  .mega-inner, .mega-inner-list{ grid-template-columns:1fr; gap:22px; }
  .mega-col-tiles{ grid-template-columns:repeat(2,1fr); }
}

/* ---------- hero (home) ---------- */
.hero{ position:relative; min-height:100svh; display:grid; grid-template-columns: 1.1fr 1fr; background:var(--ink); color:#fff; overflow:hidden; }
@media(max-width:900px){ .hero{grid-template-columns:1fr; min-height:auto;} }
.hero-left{ display:flex; flex-direction:column; justify-content:center; padding:150px 56px 90px 5vw; position:relative; z-index:3; }
@media(max-width:900px){ .hero-left{padding:140px 24px 60px;} }
.kicker{ display:flex; align-items:center; gap:12px; color:var(--ember); font-weight:700; letter-spacing:.22em; font-size:13px; text-transform:uppercase; margin-bottom:22px; }
.kicker::before{content:""; width:34px; height:2px; background:var(--orange);}
.hero h1{ font-size:clamp(48px, 7vw, 96px); color:#fff; }
.hero h1 .accent{color:var(--orange);}
.hero p.lede{ max-width:460px; margin-top:26px; font-size:17px; line-height:1.7; color:#c9c9cc; font-weight:400; }
.hero-actions{ display:flex; gap:16px; margin-top:40px; flex-wrap:wrap; }
.btn{ display:inline-flex; align-items:center; gap:10px; padding:15px 30px; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; border-radius:2px; transition:all .2s; cursor:pointer; border:1px solid transparent;}
.btn-primary{ background:var(--orange); color:#fff; }
.btn-primary:hover{ background:var(--ember); transform:translateY(-2px); }
.btn-ghost{ border-color:rgba(255,255,255,.3); color:#fff; }
.btn-ghost:hover{ border-color:#fff; background:rgba(255,255,255,.06); }
.hero-stats{ display:flex; gap:44px; margin-top:64px; flex-wrap:wrap; }
.hero-stats div b{ display:block; font-family:'Anton'; font-size:30px; color:#fff; }
.hero-stats div span{ font-size:12px; color:var(--steel-light); text-transform:uppercase; letter-spacing:.08em; }
.hero-right{ position:relative; }
.hero-right img{ width:100%; height:100%; object-fit:cover; object-position:60% 20%; min-height:420px; }
.hero-right::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, var(--ink) 0%, rgba(11,11,13,0) 22%); }
@media(max-width:900px){ .hero-right{height:52vh;} .hero-right::after{background:linear-gradient(180deg, var(--ink) 0%, rgba(11,11,13,0) 18%);} }
.hero-diag{ position:absolute; bottom:0; right:0; display:flex; gap:10px; padding:26px; z-index:4; }
.hero-diag span{ width:14px; height:64px; background:var(--orange); transform:skewX(-18deg); }
.hero-diag span:nth-child(2){opacity:.65;}
.hero-diag span:nth-child(3){opacity:.35;}

/* ---------- page header banner (about/products/contact) ---------- */
.page-header{
  position:relative; background:var(--ink); color:#fff; padding:180px 0 80px; overflow:hidden;
}
.page-header .wrap{ position:relative; z-index:2; }
.page-header .eyebrow{ color:var(--ember); }
.page-header h1{ font-size:clamp(38px,6vw,72px); color:#fff; }
.page-header p{ max-width:520px; margin-top:18px; color:var(--steel-light); font-size:16px; line-height:1.7; }
.page-header .stripes{ position:absolute; right:5vw; bottom:24px; opacity:.9; }
.page-header::after{
  content:""; position:absolute; inset:0;
  background:
    repeating-linear-gradient(0deg, transparent 0 39px, rgba(255,255,255,.035) 39px 40px),
    repeating-linear-gradient(90deg, transparent 0 39px, rgba(255,255,255,.035) 39px 40px);
  mask-image:linear-gradient(180deg, transparent, #000 40%, #000 70%, transparent);
}
.breadcrumb{ display:flex; gap:8px; align-items:center; font-size:13px; color:var(--steel-light); margin-bottom:20px; text-transform:uppercase; letter-spacing:.06em;}
.breadcrumb a{color:var(--steel-light);}
.breadcrumb a:hover{color:var(--orange);}

/* ---------- ticker ---------- */
.ticker{ background:var(--orange); overflow:hidden; white-space:nowrap; border-top:1px solid #00000022; border-bottom:1px solid #00000022; }
.ticker-track{ display:inline-block; padding:12px 0; animation:scroll 26s linear infinite; }
.ticker-track span{ font-family:'Anton'; font-size:16px; letter-spacing:.05em; color:#0b0b0d; margin:0 22px; }
@keyframes scroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* ---------- section basics ---------- */
section{ padding:110px 0; position:relative; }
@media(max-width:640px){ section{padding:70px 0;} }
.eyebrow{ display:flex; align-items:center; gap:12px; color:var(--orange); font-weight:700; letter-spacing:.2em; font-size:13px; text-transform:uppercase; margin-bottom:18px; }
.eyebrow::before{content:""; width:28px; height:2px; background:var(--orange);}
.section-title{ font-size:clamp(34px,4.4vw,58px); max-width:820px; }
.section-title .o{color:var(--orange);}

/* ---------- about ---------- */
.about{ background:var(--paper); }
.about-grid{ display:grid; grid-template-columns: 1fr 1fr; gap:70px; align-items:start; margin-top:56px; }
@media(max-width:900px){ .about-grid{grid-template-columns:1fr; gap:44px;} }
.about p{ font-size:16.5px; line-height:1.8; color:#3a3a3d; margin:0 0 18px; }
.why-list{ list-style:none; margin:26px 0 0; padding:0; display:grid; gap:0; }
.why-list li{ display:flex; align-items:center; gap:16px; padding:16px 0; border-bottom:1px solid #dedad0; font-weight:600; font-size:15.5px; }
.why-list li:first-child{border-top:1px solid #dedad0;}
.why-list b{ font-family:'Anton'; color:var(--orange); font-size:13px; width:26px; flex-shrink:0;}
.about-photo{ position:relative; }
.about-photo img{ width:100%; border-radius:4px; aspect-ratio:4/5; object-fit:cover; }
.about-photo .tag{ position:absolute; bottom:-24px; left:-24px; background:var(--ink); color:#fff; padding:22px 26px; max-width:230px; border-left:4px solid var(--orange); }
.about-photo .tag b{ display:block; font-family:'Anton'; font-size:15px; letter-spacing:.02em; }
.about-photo .tag span{ font-size:13px; color:var(--steel-light); }
@media(max-width:640px){ .about-photo .tag{position:static; margin-top:16px; max-width:none;} }
.mission-row{ display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:64px; }
@media(max-width:640px){ .mission-row{grid-template-columns:1fr;} }
.mission-card{ background:var(--cream); border:1px solid #e3ded2; padding:32px; border-radius:4px; }
.mission-card h3{ font-size:20px; margin-bottom:12px; }
.mission-card p{ margin:0; font-size:15px; color:#555; }

/* numbered why-choose (about page) */
.why-numbered{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:56px; }
@media(max-width:900px){ .why-numbered{grid-template-columns:repeat(2,1fr);} }
@media(max-width:600px){ .why-numbered{grid-template-columns:1fr;} }
.why-num-card{ background:var(--ink); color:#fff; padding:30px 26px; border-radius:6px; position:relative; overflow:hidden;}
.why-num-card .num{ font-family:'Anton'; font-size:44px; color:var(--orange); opacity:.5; line-height:1;}
.why-num-card p{ margin-top:14px; font-size:14.5px; color:#d8d8da; line-height:1.6;}

/* ---------- feature strip ---------- */
.feature-strip{ background:var(--ink); color:#fff; padding:34px 0; }
.feature-strip .wrap{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; }
.feature{ display:flex; align-items:center; gap:12px; font-size:13.5px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; color:#dcdcdf;}
.feature svg{width:22px; height:22px; stroke:var(--orange); flex-shrink:0;}

/* ---------- catalog / product cards ---------- */
.catalog{ background:var(--ink); color:#fff; }
.catalog .eyebrow{color:var(--ember);}
.catalog .section-title{color:#fff;}
.catalog-lead{ max-width:560px; color:var(--steel-light); font-size:16px; line-height:1.7; margin-top:20px;}

.filter-row{ display:flex; gap:10px; flex-wrap:wrap; margin-top:36px; }
.filter-btn{
  background:transparent; border:1px solid var(--line); color:#cfcfd2; padding:9px 18px; font-size:12.5px;
  font-weight:700; text-transform:uppercase; letter-spacing:.06em; border-radius:20px; cursor:pointer; transition:all .2s;
}
.filter-btn:hover{ border-color:var(--orange); color:#fff; }
.filter-btn.active{ background:var(--orange); border-color:var(--orange); color:#fff; }

.grid-cards{ display:grid; grid-template-columns:repeat(3, 1fr); gap:26px; margin-top:46px; }
@media(max-width:980px){ .grid-cards{grid-template-columns:repeat(2,1fr);} }
@media(max-width:620px){ .grid-cards{grid-template-columns:1fr;} }

.card{ background:var(--ink-2); border:1px solid var(--line); border-radius:6px; overflow:hidden; display:flex; flex-direction:column; transition:transform .25s, border-color .25s;}
.card:hover{ transform:translateY(-6px); border-color:rgba(242,96,12,.5); }
.card-media{
  position:relative; aspect-ratio:4/3;
  background:
    linear-gradient(rgba(255,255,255,.05),rgba(255,255,255,.05)),
    repeating-linear-gradient(0deg, transparent 0 30px, rgba(255,255,255,.05) 30px 31px),
    repeating-linear-gradient(90deg, transparent 0 30px, rgba(255,255,255,.05) 30px 31px),
    #1c1c20;
  display:flex; align-items:center; justify-content:center; padding:14px;
}
.card-media img{ width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 14px 18px rgba(0,0,0,.5)); }
.card-badge{ position:absolute; top:12px; left:12px; background:var(--orange); color:#fff; font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; padding:5px 10px; border-radius:2px; }
.card-body{ padding:22px 24px 26px; display:flex; flex-direction:column; gap:14px; flex:1; }
.card-name{ font-size:26px; }
.card-name.script{ font-size:32px; color:var(--ember); }
.card-tagline{ font-size:12.5px; color:var(--steel-light); text-transform:uppercase; letter-spacing:.1em; margin-top:-8px;}
.spec-mini{ display:grid; grid-template-columns:1fr 1fr; gap:8px 14px; margin-top:auto; padding-top:14px; border-top:1px solid var(--line); }
.spec-mini div{ font-size:12px; }
.spec-mini div b{ display:block; color:#8d8f96; font-weight:600; font-size:10.5px; text-transform:uppercase; letter-spacing:.06em; margin-bottom:3px;}
.spec-mini div span{ color:#f1f1f2; font-weight:600; font-size:13px; }
.card-cta{ margin-top:16px; display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--orange); background:none; border:none; cursor:pointer; padding:0; font-family:inherit;}
.card-cta svg{width:14px;height:14px; transition:transform .2s;}
.card:hover .card-cta svg{ transform:translateX(4px); }

/* ---------- lineup banner ---------- */
.lineup{ position:relative; background:var(--paper-2); overflow:hidden; }
.lineup-photo{ position:relative; }
.lineup-photo img{ width:100%; display:block; }
.lineup-caption{ position:absolute; left:0; top:0; padding:60px 5vw; color:#fff; z-index:2; background:linear-gradient(90deg, rgba(11,11,13,.82), rgba(11,11,13,0) 60%); width:100%; height:100%; display:flex; flex-direction:column; justify-content:center; }
.lineup-caption h2{ color:#fff; font-size:clamp(30px,4.2vw,52px); max-width:520px; }
.lineup-caption p{ color:#d8d8da; max-width:400px; margin-top:16px; font-size:15.5px; line-height:1.7; }
@media(max-width:700px){ .lineup-caption{ position:static; background:var(--ink); } }

/* ---------- CTA / contact ---------- */
.contact-section{ background:var(--cream); }
.contact-grid{ display:grid; grid-template-columns:1fr 1.2fr; gap:60px; margin-top:50px; align-items:start;}
@media(max-width:900px){ .contact-grid{grid-template-columns:1fr;} }
.contact-info-card{ background:var(--ink); color:#fff; padding:40px; border-radius:6px; margin-bottom:20px;}
.contact-info-card h3{ font-size:15px; text-transform:uppercase; letter-spacing:.08em; color:var(--steel-light); margin-bottom:8px;}
.contact-info-card a, .contact-info-card div.val{ font-size:20px; font-weight:700; color:#fff; }
.contact-info-card + .contact-info-card{ margin-top:16px; }
.contact-list{ display:flex; flex-direction:column; gap:16px; }
.contact-card{
  background:var(--ink); color:#fff; padding:26px 28px; border-radius:6px; display:flex; gap:16px; align-items:flex-start;
}
.contact-card svg{ width:22px; height:22px; stroke:var(--orange); flex-shrink:0; margin-top:2px;}
.contact-card b{display:block; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--steel-light); margin-bottom:4px;}
.contact-card a{ font-size:16px; font-weight:700; }
.contact-card a:hover{ color:var(--orange); }

.form-card{ background:#fff; border:1px solid #e3ded2; border-radius:6px; padding:40px; }
.form-row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
@media(max-width:560px){ .form-row{grid-template-columns:1fr;} }
.field{ margin-bottom:18px; }
.field label{ display:block; font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--steel); margin-bottom:8px; }
.field input, .field select, .field textarea{
  width:100%; padding:13px 16px; border:1px solid #ddd6c8; border-radius:4px; font-family:inherit; font-size:14.5px;
  background:var(--cream); transition:border-color .2s;
}
.field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--orange); }
.field textarea{ resize:vertical; min-height:120px; }
.form-msg{ padding:14px 18px; border-radius:4px; font-size:14.5px; font-weight:600; margin-bottom:22px; }
.form-msg.success{ background:#e7f5ea; color:#1e6b34; border:1px solid #bfe3c8; }
.form-msg.error{ background:#fdeceb; color:#a3271b; border:1px solid #f3c3bd; }
.map-embed{ margin-top:20px; border-radius:6px; overflow:hidden; border:1px solid #e3ded2; }
.map-embed iframe{ width:100%; height:280px; border:0; display:block; }

/* ---------- footer ---------- */
footer{ background:var(--ink); color:#8d8f96; padding:70px 0 30px; }
.foot-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:44px; border-bottom:1px solid var(--line); }
@media(max-width:820px){ .foot-grid{grid-template-columns:1fr 1fr;} }
@media(max-width:520px){ .foot-grid{grid-template-columns:1fr;} }
.foot-brand p{ font-size:14px; line-height:1.7; max-width:280px; margin:0 0 18px; }
.foot-col h4{ color:#fff; font-size:13px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:16px; }
.foot-col ul{ list-style:none; display:flex; flex-direction:column; gap:10px; }
.foot-col a{ font-size:14px; color:#8d8f96; transition:color .2s;}
.foot-col a:hover{ color:var(--orange); }
.foot-contact li{ font-size:14px; }
.foot-word{ font-family:'Anton'; font-size:clamp(32px,6vw,72px); color:#fff; line-height:.9; padding:36px 0 20px; }
.foot-word .o{color:var(--orange);}
.foot-bottom{ display:flex; justify-content:space-between; padding-top:14px; font-size:13px; flex-wrap:wrap; gap:10px;}
.foot-bottom a{color:#8d8f96;}
.foot-bottom a:hover{color:var(--orange);}

.reveal{ opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; }
.reveal.in{ opacity:1; transform:none; }

/* ---------- side-nav layout (investors / network pages) ---------- */
.side-layout{ display:grid; grid-template-columns:240px 1fr; gap:56px; margin-top:56px; align-items:start; }
@media(max-width:820px){ .side-layout{grid-template-columns:1fr;} }
.side-nav{ position:sticky; top:100px; display:flex; flex-direction:column; gap:2px; }
@media(max-width:820px){ .side-nav{ position:static; flex-direction:row; flex-wrap:wrap; gap:8px; margin-bottom:10px;} }
.side-nav a{
  font-size:13.5px; font-weight:600; padding:11px 16px; color:#555; border-left:2px solid #e3ded2; transition:all .2s;
}
@media(max-width:820px){ .side-nav a{ border-left:none; border:1px solid #e3ded2; border-radius:20px; padding:8px 16px;} }
.side-nav a:hover{ color:var(--orange); border-color:var(--orange); }
.info-block{ margin-bottom:64px; scroll-margin-top:100px; }
.info-block h2{ font-size:28px; text-transform:uppercase; margin-bottom:16px; }
.info-block p{ font-size:15.5px; line-height:1.8; color:#444; margin:0 0 14px; max-width:700px; }
.policy-list{ list-style:none; display:grid; gap:10px; margin-top:18px; max-width:640px; }
.policy-list li{ display:flex; gap:12px; align-items:center; padding:14px 18px; background:var(--cream); border:1px solid #e3ded2; border-radius:6px; font-size:14.5px; font-weight:600; }
.policy-list li svg{ width:18px; height:18px; stroke:var(--orange); flex-shrink:0; }
.stat-row{ display:flex; gap:40px; flex-wrap:wrap; margin:26px 0 8px; }
.stat-row div b{ display:block; font-family:'Anton'; font-size:32px; color:var(--orange); }
.stat-row div span{ font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--steel); }

/* ---------- network: sales/service action cards ---------- */
.action-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:26px; }
@media(max-width:820px){ .action-grid{grid-template-columns:1fr 1fr;} }
@media(max-width:560px){ .action-grid{grid-template-columns:1fr;} }
.action-card{ background:var(--ink); color:#fff; border-radius:6px; padding:28px 24px; display:flex; flex-direction:column; gap:14px;}
.action-card svg{ width:26px; height:26px; stroke:var(--orange); }
.action-card h3{ font-size:17px; text-transform:uppercase; margin:0; }
.action-card p{ font-size:13.5px; color:var(--steel-light); line-height:1.6; margin:0; flex:1; }
.action-card a.btn{ align-self:flex-start; padding:10px 20px; font-size:12px; }

/* ---------- news & events card details ---------- */
.news-details{ margin-top:auto; padding-top:14px; border-top:1px solid var(--line); }
.news-details summary{
  cursor:pointer; list-style:none; font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em;
  color:var(--orange); display:flex; align-items:center; gap:8px;
}
.news-details summary::-webkit-details-marker{ display:none; }
.news-details summary::after{ content:"→"; transition:transform .2s; }
.news-details[open] summary::after{ transform:rotate(90deg); }
.news-details p{ margin:14px 0 0; font-size:13.5px; color:#c7c7ca; line-height:1.7; }

/* ---------- faq accordion ---------- */
.faq-list{ max-width:760px; margin-top:20px; }
.faq-item{ border-bottom:1px solid #e3ded2; }
.faq-item summary{
  padding:20px 4px; font-size:16px; font-weight:700; cursor:pointer; list-style:none;
  display:flex; justify-content:space-between; align-items:center; gap:16px;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary::after{
  content:"+"; font-family:'Anton'; font-size:22px; color:var(--orange); flex-shrink:0; transition:transform .2s;
}
.faq-item[open] summary::after{ transform:rotate(45deg); }
.faq-item p{ margin:0 4px 22px; font-size:14.5px; color:#555; line-height:1.7; max-width:640px; }

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  .ticker-track{animation:none;}
  .reveal{opacity:1; transform:none; transition:none;}
  .card, .btn, .nav-cta{transition:none;}
}

/* ---------- product detail page ---------- */
.detail-section{ background:var(--ink); color:#fff; }
.detail-grid{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; margin-top:44px; }
@media(max-width:900px){ .detail-grid{grid-template-columns:1fr; gap:36px;} }

.detail-media{
  position:relative; aspect-ratio:4/3; border-radius:8px; overflow:hidden;
  background:
    linear-gradient(rgba(255,255,255,.05),rgba(255,255,255,.05)),
    repeating-linear-gradient(0deg, transparent 0 30px, rgba(255,255,255,.05) 30px 31px),
    repeating-linear-gradient(90deg, transparent 0 30px, rgba(255,255,255,.05) 30px 31px),
    #1c1c20;
  display:flex; align-items:center; justify-content:center; padding:30px;
}
.detail-media img{ width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 20px 26px rgba(0,0,0,.5)); }
.detail-media .card-badge{ position:absolute; top:18px; left:18px; }

.detail-info .card-name{ font-size:44px; }
.detail-info .card-name.script{ font-size:56px; }
.detail-info .card-tagline{ font-size:14px; margin-top:2px; margin-bottom:22px; }
.detail-description{ font-size:15.5px; line-height:1.8; color:#c9c9cc; margin-bottom:28px; max-width:520px; }

.spec-table{ display:grid; grid-template-columns:1fr 1fr; gap:14px 28px; margin-bottom:32px; padding-top:22px; border-top:1px solid var(--line); }
.spec-table div b{ display:block; font-size:11px; color:#8d8f96; text-transform:uppercase; letter-spacing:.08em; margin-bottom:4px; }
.spec-table div span{ font-size:15px; font-weight:600; color:#f1f1f2; }

.detail-actions{ display:flex; gap:14px; flex-wrap:wrap; }

.related-heading{ margin-top:90px; }
