/* ── PHANTOM SYSTEMS — styles2.css — theme system, upgraded components, new pages ── */

/* ══════════════════════════════════════════
   LIGHT THEME — toggled via html[data-theme="light"]
══════════════════════════════════════════ */
html[data-theme="light"] {
  --bg:    #f2efe8;
  --bg2:   #e9e5db;
  --bg3:   #dfdacd;
  --ink:   #161310;
  --dim:   rgba(22,19,16,.62);
  --soft:  rgba(22,19,16,.38);
  --mute:  rgba(22,19,16,.16);
  --gd:    rgba(196,63,15,.12);
  --gd2:   rgba(196,63,15,.05);
}
html[data-theme="light"] body { background: var(--bg); color: var(--ink); }
html[data-theme="light"] .site-header.scrolled {
  background: rgba(242,239,232,.94);
  box-shadow: 0 1px 0 rgba(196,63,15,.1), 0 4px 24px rgba(0,0,0,.12);
}
html[data-theme="light"] .site-nav { }
html[data-theme="light"] .wi--white { color: #161310; text-shadow: none; }
html[data-theme="light"] .wi--stroke { -webkit-text-stroke: 2px rgba(22,19,16,.25); }
html[data-theme="light"] .hero-btn--solid { box-shadow: 0 2px 16px rgba(196,63,15,.25); }
html[data-theme="light"] .home-stat:hover { background: var(--bg3); }
html[data-theme="light"] .cert-item__logo { filter: none; }
html[data-theme="light"] .co-list { box-shadow: 0 8px 28px rgba(0,0,0,.18); }
html[data-theme="light"] .footer__copy,
html[data-theme="light"] .footer__terms { color: rgba(22,19,16,.4); }
html[data-theme="light"] .nav-link { color: rgba(22,19,16,.5); }
html[data-theme="light"] .nav-link[aria-current] { color: rgba(22,19,16,.85); }
html[data-theme="light"] .hero-btn--dim { color: rgba(22,19,16,.6); }
html[data-theme="light"] .footer__divider-text { color: rgba(196,63,15,.5); }
/* hero and video sections keep dark scrims in both themes — content stays readable */
html[data-theme="light"] .hero .hero-btn--ghost,
html[data-theme="light"] .rfq-section,
html[data-theme="light"] .nf { color: #e8dcc8; }
html[data-theme="light"] .hero .hero__cred-pill { color: rgba(255,140,80,.75); }

/* smooth token transitions when switching theme */
body, .site-header, .footer, .home-stmt, .home-caps, .home-ops, .cap-strip, .cert-banner,
.dcard, .princ-card, .home-stat {
  transition: background-color .35s ease, color .35s ease, border-color .35s ease;
}

/* generic utility */
.hidden{display:none!important}
.cage-input-wrap.hidden{display:block!important;max-height:0;opacity:0;pointer-events:none}

/* ══════════════════════════════════════════
   THEME TOGGLE
══════════════════════════════════════════ */
.theme-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:.34rem;
  width:auto;height:26px;padding:0 .55rem;cursor:pointer;flex-shrink:0;
  border:1px solid rgba(232,82,28,.3);color:var(--gb);
  font-family:var(--disp);font-size:.6rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  transition:background .14s,color .14s,border-color .14s;
}
.theme-toggle:hover{background:var(--gd);border-color:var(--gb)}
.theme-toggle svg{width:11px;height:11px}

/* ══════════════════════════════════════════
   UPGRADED BUTTONS — tactical corner brackets
══════════════════════════════════════════ */
.hero-btn{position:relative}
.hero-btn::after{
  content:"";position:absolute;inset:3px;pointer-events:none;opacity:0;
  background:
    linear-gradient(to right,currentColor 7px,transparent 7px) top left/9px 1px no-repeat,
    linear-gradient(to bottom,currentColor 7px,transparent 7px) top left/1px 9px no-repeat,
    linear-gradient(to left,currentColor 7px,transparent 7px) top right/9px 1px no-repeat,
    linear-gradient(to bottom,currentColor 7px,transparent 7px) top right/1px 9px no-repeat,
    linear-gradient(to right,currentColor 7px,transparent 7px) bottom left/9px 1px no-repeat,
    linear-gradient(to top,currentColor 7px,transparent 7px) bottom left/1px 9px no-repeat,
    linear-gradient(to left,currentColor 7px,transparent 7px) bottom right/9px 1px no-repeat,
    linear-gradient(to top,currentColor 7px,transparent 7px) bottom right/1px 9px no-repeat;
  transition:opacity .18s,inset .18s;
}
.hero-btn:hover::after{opacity:.55;inset:5px}
/* (no letter-spacing change on hover — it shifted button text) */
.hero-btn--ghost{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}

.home-stmt__inner,.home-ops__inner{position:relative;z-index:1}
.home-caps__inner{position:relative;z-index:1}

/* ══════════════════════════════════════════
   CERT BANNER — reverted to original: uniform tiles, seamless 2× marquee
══════════════════════════════════════════ */
.cert-banner{
  padding:1.2rem 0 1.4rem;
  border-top:1px solid rgba(232,82,28,.08);
  border-bottom:1px solid rgba(232,82,28,.08);
  background:var(--bg);overflow:hidden;
}
.cert-banner__head{text-align:center;margin-bottom:.85rem;padding:0 var(--gap)}
.cert-banner__track{overflow:hidden;position:relative;-webkit-mask-image:none;mask-image:none}
.cert-banner__track::before,.cert-banner__track::after{
  content:"";position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none;display:block;
}
.cert-banner__track::before{left:0;background:linear-gradient(90deg,var(--bg),transparent)}
.cert-banner__track::after {right:0;background:linear-gradient(-90deg,var(--bg),transparent)}
.cert-banner__inner{
  display:flex;width:max-content;
  animation:cert-scroll 32s linear infinite;
  will-change:transform;
}
.cert-banner__track:hover .cert-banner__inner{animation-play-state:paused}
.cert-item{
  display:flex;align-items:center;gap:.85rem;
  width:300px;flex-shrink:0;
  padding:.5rem 1.4rem;
  border:none;background:transparent;box-shadow:none;transform:none;transition:none;
  border-right:1px solid rgba(232,82,28,.1);
}
.cert-item:hover{transform:none;box-shadow:none;border-color:rgba(232,82,28,.1);background:transparent}
.cert-item__img-wrap{
  width:84px;height:52px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:transparent;border-radius:0;padding:0;
}
.cert-item__logo,
.cert-item__logo--lg{
  height:auto!important;width:auto!important;
  max-width:84px!important;max-height:52px!important;
  object-fit:contain;opacity:.92;
  filter:drop-shadow(0 1px 3px rgba(0,0,0,.35));
}
html[data-theme="light"] .cert-item__logo{filter:none;opacity:.92}
.cert-item:hover .cert-item__logo{opacity:1}

/* ══════════════════════════════════════════
   RFQ — reverted: no glass panel, no blur. Form sits directly
   over the darkened video scrim (original design).
══════════════════════════════════════════ */
.rfq-form-wrap{
  background:transparent;border:none;padding:0;position:relative;
}
.rfq-form-wrap .fl input,
.rfq-form-wrap .fl select,
.rfq-form-wrap .fl textarea{color:#e8dcc8}
.rfq-form-wrap .fl__label{color:rgba(255,140,80,.85)}
.rfq-form-wrap .rfq-h2,.rfq-form-wrap .rfq-desc{color:#e8dcc8}
.rfq-form-wrap .rfq-desc{color:rgba(232,220,200,.66)}
.rfq-form-wrap .fl--ack{color:rgba(232,220,200,.6)}

/* ══════════════════════════════════════════
   PAGE HERO v6 — main-hero language exactly:
   hero video + scrims + noise + scan; left content; right wall =
   page name in giant stroke type building out right-to-left.
══════════════════════════════════════════ */
.phero{
  position:relative;overflow:hidden;
  background:#000;
  display:flex;align-items:center;
  min-height:min(72svh,640px);
  padding:clamp(5.5rem,8vw,7.5rem) 0 clamp(3rem,5vw,4.5rem);
  border-bottom:1px solid rgba(232,82,28,.2);
  color:#e8dcc8;
}
.phero--compact{min-height:min(62svh,540px)}
.phero__video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;z-index:0;
}
.phero .hero__scrim,.phero .hero__scrim2,.phero .hero__noise{position:absolute;inset:0}
.phero .hero__scrim{z-index:1}
.phero .hero__scrim2{z-index:1}
.phero .hero__noise{z-index:2}
.phero .hero__scan{z-index:5}
/* right wall — page name, stroke style, builds out right-to-left */
.phero__band{
  position:absolute;right:0;bottom:clamp(2.5rem,7vh,5rem);z-index:3;
  pointer-events:none;display:flex;flex-direction:column;align-items:flex-end;
  padding-right:clamp(.5rem,1vw,2rem);
}
.phero__band-text{
  font-size:clamp(4.5rem,10vw,13rem); /* slightly smaller than home band — long page names fit */
}
/* left content — same geometry as the main hero */
.phero__content{
  position:relative;z-index:4;
  padding-left:clamp(2rem,5vw,7rem);
  display:flex;flex-direction:column;align-items:flex-start;
  max-width:62%;
}
.phero__title{
  font-family:var(--disp);
  font-size:clamp(3.4rem,7vw,8rem);
  font-weight:900;text-transform:uppercase;
  line-height:.8;letter-spacing:-.02em;
  margin-bottom:2rem;align-self:stretch;
}
.phero__lead{
  font-family:var(--font);font-size:clamp(.85rem,1.05vw,.98rem);font-weight:300;
  color:rgba(235,228,218,.75);max-width:58ch;line-height:1.8;
  margin-bottom:1.8rem;
}
@media(max-width:900px){
  .phero__content{max-width:88%}
  .phero__band-text{font-size:clamp(3rem,12vw,6rem)}
}

/* phero band stays dark in light mode, like the main hero */
html[data-theme="light"] .phero{color:#e8dcc8}
html[data-theme="light"] .phero .hero-btn--ghost{color:#e8dcc8}

/* ══════════════════════════════════════════
   3D TACTICAL MESH — Three.js host
══════════════════════════════════════════ */
.mesh3d{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.9}
.mesh3d__canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.home-stmt,.home-ops{position:relative;overflow:hidden}
html[data-theme="light"] .mesh3d{opacity:.35}

/* page facts strip */
.pfacts{background:var(--bg);border-bottom:1px solid var(--line)}
.pfacts__inner{
  max-width:var(--max);margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);
}
.pfact{
  display:flex;flex-direction:column;gap:.2rem;text-align:center;
  padding:clamp(1.4rem,2.5vw,2.2rem) 1rem;
  border-right:1px solid var(--line);
}
.pfact:last-child{border-right:none}
.pfact__n{font-family:var(--disp);font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:900;line-height:1;color:var(--gb);letter-spacing:-.01em}
.pfact__l{font-family:var(--disp);font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
.pfact__s{font-family:var(--font);font-size:.6rem;font-weight:300;color:var(--soft)}

/* page process steps */
.pproc{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(3.5rem,6vw,6rem) var(--gap)}
.pproc__inner{max-width:var(--max);margin:0 auto}
.pproc__h2{
  font-family:var(--disp);font-size:clamp(2rem,4vw,3.6rem);font-weight:900;
  text-transform:uppercase;line-height:.92;letter-spacing:-.01em;margin:.4rem 0 2.2rem;
}
.pproc__h2 em{font-style:normal;color:var(--gb)}
.pproc__steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,2.5vw,2.5rem)}
.pproc__steps li{display:flex;flex-direction:column;gap:.7rem;padding-top:.9rem;border-top:2px solid var(--line2)}
.pproc__n{font-family:var(--disp);font-size:.62rem;font-weight:700;letter-spacing:.22em;color:var(--gb)}
.pproc__steps strong{font-family:var(--disp);font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:.3rem}
.pproc__steps p{font-family:var(--font);font-size:.76rem;font-weight:300;color:var(--dim);line-height:1.8;margin:0}

/* page closing CTA band */
.pclose{background:var(--bg);padding:clamp(3.5rem,6vw,6rem) var(--gap)}
.pclose__inner{
  max-width:var(--max);margin:0 auto;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:1rem;
  border:1px solid var(--line2);padding:clamp(2.4rem,4vw,4rem) 2rem;
}
.pclose h2{font-family:var(--disp);font-size:clamp(1.6rem,3vw,2.6rem);font-weight:900;text-transform:uppercase;line-height:1}
.pclose p{font-family:var(--font);font-size:.84rem;font-weight:300;color:var(--dim);max-width:52ch;line-height:1.8}

/* contact cards */
.contact-grid{
  max-width:var(--max);margin:0 auto;
  padding:clamp(3rem,5vw,4.5rem) var(--gap) clamp(2rem,3vw,3rem);
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);
}
.contact-card{background:var(--bg);padding:1.8rem 1.6rem;display:flex;flex-direction:column;gap:.4rem}
.contact-card__k{font-family:var(--disp);font-size:.6rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gb)}
.contact-card__v{font-family:var(--disp);font-size:clamp(1rem,1.4vw,1.25rem);font-weight:800;letter-spacing:.02em;color:var(--ink);word-break:break-word}
a.contact-card__v:hover{color:var(--gb)}
.contact-card p{font-family:var(--font);font-size:.74rem;font-weight:300;color:var(--dim);line-height:1.75;margin:0}
@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr}
  .pfacts__inner{grid-template-columns:repeat(2,1fr)}
  .pfact:nth-child(2){border-right:none}
  .pproc__steps{grid-template-columns:1fr 1fr}
}

/* ══════════════════════════════════════════
   FOOTER v3 — compact
══════════════════════════════════════════ */
.footer{
  background:var(--bg);
  border-top:1px solid rgba(232,82,28,.18);
  position:relative;
  color:var(--ink);
  padding:0;
}
.footer::after{display:none}
.footer::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:680px;max-width:100%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(232,82,28,.7),transparent);
  display:block;
}
.footer__inner{
  position:relative;z-index:1;
  max-width:var(--max);margin:0 auto;
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;
  gap:clamp(1.4rem,2.5vw,2.5rem);
  padding:clamp(1.6rem,2.5vw,2.2rem) var(--gap) 1.2rem;
  border-bottom:1px solid rgba(232,82,28,.12);
}
.footer__brand{display:flex;flex-direction:column;gap:.5rem}
.footer__brand-logo{height:20px;width:auto;object-fit:contain;object-position:left center}
.footer__tagline{font-family:var(--font);font-size:.68rem;font-weight:300;color:var(--soft);line-height:1.7;max-width:38ch}
.footer__addr{font-family:var(--font);font-size:.64rem;font-weight:300;color:var(--soft);line-height:1.75}
.footer__addr a{color:rgba(255,140,80,.7)}
.footer__addr a:hover{color:var(--gl)}
.footer__col-head{
  font-family:var(--disp);font-size:.56rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;
  color:var(--gb);padding-bottom:.35rem;margin-bottom:.2rem;
  border-bottom:1px solid rgba(232,82,28,.16);
}
.footer__col a{
  font-family:var(--font);font-size:.7rem;font-weight:300;color:var(--dim);
  display:block;padding:.1rem 0;
  transition:color .12s,padding-left .15s;
}
.footer__col a:hover{color:var(--ink);padding-left:3px}
.footer__warn{
  font-family:var(--font);font-size:.58rem;font-weight:300;color:var(--soft);
  line-height:1.6;border-left:2px solid rgba(232,82,28,.25);padding-left:.5rem;margin-top:.5rem;
}
.footer__search{
  display:flex;align-items:stretch;margin:.15rem 0 .3rem;
  border:1px solid var(--mute);
  transition:border-color .14s;
}
.footer__search:focus-within{border-color:var(--soft)}
.footer__search input{
  flex:1;min-width:0;padding:.42rem .6rem;
  background:transparent;color:var(--ink);
  font-family:var(--font);font-size:.72rem;font-weight:300;
}
.footer__search input::placeholder{color:var(--soft)}
.footer__search button{
  display:flex;align-items:center;justify-content:center;width:32px;cursor:pointer;
  color:var(--soft);background:transparent;
  border-left:1px solid var(--mute);transition:color .12s;
}
.footer__search button:hover{color:var(--ink)}
.footer__search-hint{font-family:var(--font);font-size:.6rem;font-weight:300;color:var(--soft);line-height:1.5;min-height:0}
.footer__bottom{position:relative;z-index:1;max-width:var(--max);margin:0 auto;padding:.7rem var(--gap) .9rem}
.footer__bottom-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.4rem}
.footer__copy{font-family:var(--font);font-size:.62rem;font-weight:300;color:var(--soft)}
.footer__links{display:flex;gap:1.1rem;flex-wrap:wrap}
.footer__links a{font-family:var(--font);font-size:.62rem;font-weight:300;color:var(--soft);transition:color .12s}
.footer__links a:hover{color:var(--gb)}
.footer__social{display:flex;gap:.4rem;margin-top:.25rem}
.footer__social-btn{
  display:flex;align-items:center;justify-content:center;width:26px;height:26px;
  border:1px solid rgba(232,82,28,.2);color:var(--soft);
  transition:border-color .12s,color .12s,background .12s,transform .12s;
}
.footer__social-btn:hover{border-color:var(--gb);color:var(--gb);background:rgba(232,82,28,.08);transform:translateY(-2px)}

/* ══════════════════════════════════════════
   404 — NOT FOUND
══════════════════════════════════════════ */
.nf{
  position:relative;min-height:100svh;overflow:hidden;
  display:flex;align-items:center;justify-content:flex-start;
  background:#020407;color:#e8dcc8;
}
.nf__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.nf__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.72) 45%,rgba(0,0,0,.3) 100%)}
.nf__noise{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E")}
.nf__scan{position:absolute;left:0;right:0;height:1px;z-index:2;background:linear-gradient(90deg,transparent,rgba(232,82,28,.55),transparent);animation:scan-move 8s linear infinite;opacity:.35}
.nf__content{position:relative;z-index:3;padding:0 var(--gap);max-width:880px}
.nf__code{
  font-family:var(--disp);font-weight:900;
  font-size:clamp(6rem,18vw,15rem);line-height:.8;letter-spacing:-.02em;
  color:transparent;-webkit-text-stroke:2px rgba(232,82,28,.65);
  filter:drop-shadow(0 0 50px rgba(232,82,28,.18));
  margin-bottom:1.4rem;
}
.nf__label{
  display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.8rem;
  font-family:var(--disp);font-size:.72rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--gb);
}
.nf__label::before{content:"";width:32px;height:1px;background:var(--gb)}
.nf__type{
  font-family:"Consolas","IBM Plex Mono",monospace;
  font-size:clamp(1rem,2.2vw,1.5rem);font-weight:500;
  min-height:3.2em;line-height:1.6;
  color:#e8dcc8;letter-spacing:.02em;
  margin-bottom:2.4rem;max-width:46ch;
}
.nf__cursor{
  display:inline-block;width:.62em;height:1.18em;
  background:var(--gb);vertical-align:text-bottom;margin-left:2px;
  box-shadow:0 0 12px rgba(232,82,28,.7);
}
.nf__cursor.off{opacity:0}
.nf__btns{display:flex;flex-wrap:wrap;gap:1rem}
.nf__meta{
  margin-top:3rem;display:flex;flex-wrap:wrap;gap:1.6rem;
  font-family:var(--disp);font-size:.56rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(232,220,200,.3);
}
.nf__meta span b{color:rgba(232,82,28,.6);font-weight:700}

/* ══════════════════════════════════════════
   PRIVACY POLICY PAGE
══════════════════════════════════════════ */
.pp{max-width:var(--max);margin:0 auto;padding:0 var(--gap) clamp(4rem,7vw,7rem);display:grid;grid-template-columns:280px 1fr;gap:clamp(2rem,4vw,4.5rem);align-items:start}
.pp__side{position:sticky;top:84px;max-height:calc(100svh - 110px);overflow-y:auto;padding-right:.6rem;scrollbar-width:thin}
.pp__here{
  display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem;
  font-family:var(--disp);font-size:.6rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gb);
}
.pp__here-arrow{display:inline-block;animation:here-bob 1.6s ease-in-out infinite}
@keyframes here-bob{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
.pp__here-box{
  border:1px solid rgba(232,82,28,.4);background:var(--gd2);
  padding:.5rem .7rem;margin-bottom:1.2rem;
  font-family:var(--disp);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);
  min-height:2.4em;display:flex;align-items:center;gap:.5rem;
  transition:border-color .2s;
}
.pp__here-box::before{content:"▸";color:var(--gb)}
.pp__toc{display:flex;flex-direction:column;border-left:1px solid rgba(232,82,28,.14)}
.pp__toc a{
  font-family:var(--font);font-size:.72rem;font-weight:300;color:var(--dim);
  padding:.3rem 0 .3rem .85rem;line-height:1.4;position:relative;
  border-left:2px solid transparent;margin-left:-1px;
  transition:color .14s,border-color .14s,background .14s;
}
.pp__toc a:hover{color:var(--ink)}
.pp__toc a.active{color:var(--gb);border-left-color:var(--gb);background:var(--gd2);font-weight:500}
.pp__toc a .n{font-family:var(--disp);font-weight:700;color:rgba(232,82,28,.6);margin-right:.4em;font-size:.66rem}
.pp__main{min-width:0}
.pp__head{padding:clamp(7rem,11vw,9rem) 0 2rem;max-width:var(--max);margin:0 auto}
.pp__meta{
  display:flex;flex-wrap:wrap;gap:.4rem;margin:1.4rem 0;
}
.pp__meta span{
  font-family:var(--disp);font-size:.58rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  padding:.22rem .55rem;border:1px solid rgba(232,82,28,.2);background:var(--gd2);color:var(--dim);
}
.pp__tools{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.pp section{margin-bottom:2.6rem;scroll-margin-top:90px}
.pp h2{
  font-family:var(--disp);font-size:1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;
  margin-bottom:.9rem;padding-bottom:.5rem;border-bottom:1px solid rgba(232,82,28,.18);
  display:flex;align-items:baseline;gap:.6rem;
}
.pp h2 .sn{font-size:.78rem;color:var(--gb);font-weight:700;letter-spacing:.14em}
.pp h3{font-family:var(--disp);font-size:1.02rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:1.3rem 0 .5rem;color:var(--ink)}
.pp p{font-family:var(--font);font-size:.85rem;font-weight:300;color:var(--dim);line-height:1.9;margin-bottom:.8rem}
.pp ul{list-style:none;margin:.6rem 0 1rem;display:flex;flex-direction:column;gap:.5rem}
.pp ul li{
  font-family:var(--font);font-size:.82rem;font-weight:300;color:var(--dim);line-height:1.8;
  padding-left:1.1rem;position:relative;
}
.pp ul li::before{content:"—";position:absolute;left:0;color:var(--gb)}
.pp strong{color:var(--ink);font-weight:600}
.pp .pp-shout{
  font-family:var(--font);font-size:.78rem;font-weight:500;color:var(--ink);line-height:1.85;
  border:1px solid rgba(232,82,28,.25);border-left:3px solid var(--gb);
  background:var(--gd2);padding:.9rem 1.1rem;margin:.9rem 0;
}
.pp table{width:100%;border-collapse:collapse;margin:.8rem 0;font-size:.8rem}
.pp table td{padding:.55rem .7rem;border:1px solid rgba(232,82,28,.14);font-weight:300;color:var(--dim);vertical-align:top;line-height:1.7}
.pp table td:first-child{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);white-space:nowrap;font-size:.72rem}

/* printer-friendly bright mode */
html.pp-bright .pp,
html.pp-bright .pp__head{
  --bg:#ffffff;--bg2:#f7f7f7;--bg3:#efefef;--ink:#111;--dim:#333;--soft:#666;--mute:#999;
  background:#fff;color:#111;
}
html.pp-bright .pp p,html.pp-bright .pp ul li,html.pp-bright .pp table td{color:#333}
html.pp-bright .pp h2,html.pp-bright .pp h3,html.pp-bright .pp strong,html.pp-bright .pp table td:first-child{color:#111}
html.pp-bright .pp__toc a{color:#444}
html.pp-bright body{background:#fff}
html.pp-bright .pp__here-box{color:#111}

/* print header — hidden on screen, shown on paper */
.pp-print-head{display:none}

/* meta chips + tools sit on the dark hero band — keep them light in both themes */
.phero .pp__meta{margin:1.2rem 0 0}
.phero .pp__meta span{
  color:rgba(235,228,218,.7);
  border-color:rgba(232,82,28,.35);
  background:rgba(232,82,28,.08);
}
.phero .pp__tools{margin-top:1.2rem}

@media print {
  .site-header,.footer,.pp__tools,.chatw,.cookie-banner,.hero__scroll,
  .theme-toggle,.nav-toggle,.phero,.site-banner{display:none!important}
  html,body{background:#fff!important;color:#000!important}
  /* company header on page 1 */
  .pp-print-head{
    display:flex!important;align-items:center;gap:14pt;
    padding:0 0 10pt;margin-bottom:12pt;border-bottom:2pt solid #b3360c;
  }
  .pp-print-head img{height:26pt;width:auto;filter:brightness(0)}
  .pp-print-head div{font-family:Arial,sans-serif;font-size:8pt;line-height:1.5;color:#222}
  .pp-print-head strong{font-size:10.5pt;color:#000}
  /* table of contents prints before the policy body */
  .pp{display:block;padding:0}
  .pp__side{
    display:block!important;position:static!important;max-height:none!important;
    overflow:visible!important;padding:0;margin-bottom:14pt;
    page-break-after:always;
  }
  .pp__here,.pp__here-box{display:none!important}
  .pp__toc{border-left:none}
  .pp__toc::before{
    content:"Table of Contents";display:block;
    font-family:Arial,sans-serif;font-weight:700;font-size:13pt;color:#000;
    margin-bottom:8pt;
  }
  .pp__toc a{
    color:#222!important;border:none;background:none!important;
    padding:2.5pt 0;font-size:9pt;display:block;
  }
  .pp__toc a .n{color:#b3360c!important}
  /* body flows naturally — no forced keeps that strand half-empty pages */
  .pp section{page-break-inside:auto;break-inside:auto;margin-bottom:12pt}
  .pp h2{page-break-after:avoid;break-after:avoid-page}
  .pp h3{page-break-after:avoid;break-after:avoid-page}
  .pp ul,.pp table,.pp .pp-shout{page-break-inside:avoid;break-inside:avoid}
  .pp p,.pp ul li,.pp table td{color:#222!important;orphans:3;widows:3}
  .pp h1,.pp h2,.pp h3,.pp strong,.pp table td:first-child{color:#000!important}
  .pp h2 .sn{color:#b3360c!important}
  .pp .pp-shout{background:#f5f5f5!important;border-color:#b3360c!important}
  main{padding:0!important}
}

/* ══════════════════════════════════════════
   AUTH / ACCOUNT
══════════════════════════════════════════ */
@keyframes auth-rise{
  0%  {opacity:0;transform:perspective(1100px) rotateX(7deg) translateY(34px) scale(.97)}
  100%{opacity:1;transform:perspective(1100px) rotateX(0) translateY(0) scale(1)}
}
.auth{
  min-height:100svh;display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
  background:#000;
  color:#e8dcc8;
  padding:7rem var(--gap) 4rem;
  perspective:900px;
}
.auth__panel{
  position:relative;z-index:1;width:100%;max-width:500px;
  background:#0e1014;
  border:1px solid rgba(232,220,200,.12);
  border-top:2px solid var(--gb);
  box-shadow:0 30px 80px rgba(0,0,0,.6);
  padding:clamp(1.8rem,3.5vw,2.8rem);
  animation:auth-rise .7s cubic-bezier(.22,1,.36,1) both;
  transition:transform .18s ease-out;
  will-change:transform;
}
.reduced-motion .auth__panel{animation:none}
.auth__panel--wide{max-width:560px}
.auth__row{display:grid;grid-template-columns:1fr 1fr;gap:.95rem}
@media(max-width:480px){.auth__row{grid-template-columns:1fr}}
.auth__uname-status{font-family:var(--font);font-size:.66rem;font-weight:300;color:rgba(232,220,200,.45);min-height:1em;margin-top:.15rem}
.auth__uname-status.good{color:#8be08b}
.auth__uname-status.bad{color:#ff8866}
.auth__section-head{
  font-family:var(--disp);font-size:.64rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;
  color:var(--gb);border-bottom:1px solid rgba(232,82,28,.2);padding-bottom:.4rem;
}
.auth__verify{
  border:1px solid rgba(255,167,38,.4);border-left:3px solid #ffb74d;
  background:rgba(255,167,38,.06);padding:.9rem 1rem;margin-bottom:1.2rem;
  display:flex;flex-direction:column;gap:.5rem;
}
.auth__verify strong{font-family:var(--disp);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#ffb74d}
.auth__verify p{font-family:var(--font);font-size:.74rem;font-weight:300;color:rgba(232,220,200,.65);line-height:1.7;margin:0}
.auth__verify-btns{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.2rem}
.acct__row .v b{font-family:var(--disp);font-size:.6rem;letter-spacing:.14em;margin-left:.3rem}
.auth__panel h1{font-family:var(--disp);font-size:1.9rem;font-weight:900;text-transform:uppercase;letter-spacing:.01em;margin-bottom:.4rem;color:#fff}
.auth__sub{font-family:var(--font);font-size:.78rem;font-weight:300;color:rgba(232,220,200,.5);line-height:1.7;margin-bottom:1.6rem}
.auth__form{display:flex;flex-direction:column;gap:.95rem}
.auth__form .fl input{
  background:rgba(0,0,0,.4);border:1px solid rgba(232,220,200,.16);
  border-bottom:1px solid rgba(232,82,28,.4);
  padding:.7rem .9rem;color:#e8dcc8;font-size:.88rem;
}
.auth__form .fl input:focus{border-color:var(--gb);box-shadow:0 0 0 2px rgba(232,82,28,.12)}
.auth__form .fl__label{color:rgba(255,140,80,.8)}
.auth__switch{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.3rem;justify-content:space-between}
.auth__switch button,.auth__switch a{
  font-family:var(--disp);font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(232,220,200,.45);cursor:pointer;transition:color .13s;background:none;border:none;
}
.auth__switch button:hover,.auth__switch a:hover{color:var(--gb)}
.auth__err{
  font-family:var(--font);font-size:.74rem;color:#ff8866;line-height:1.6;
  background:rgba(232,82,28,.07);border-left:2px solid var(--gb);padding:.55rem .75rem;
}
.auth__ok{
  font-family:var(--font);font-size:.74rem;color:#8be08b;line-height:1.6;
  background:rgba(76,175,80,.08);border-left:2px solid #4caf50;padding:.55rem .75rem;
}
.pw-meter{display:flex;flex-direction:column;gap:.3rem;margin-top:.2rem}
.pw-meter span{
  font-family:var(--font);font-size:.64rem;font-weight:300;color:rgba(232,220,200,.35);
  display:flex;align-items:center;gap:.4rem;transition:color .15s;
}
.pw-meter span::before{content:"○";color:rgba(232,82,28,.5)}
.pw-meter span.ok{color:#8be08b}
.pw-meter span.ok::before{content:"●";color:#4caf50}
.acct__row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.7rem 0;border-bottom:1px solid rgba(232,82,28,.12)}
.acct__row .k{font-family:var(--disp);font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,140,80,.7)}
.acct__row .v{font-family:var(--font);font-size:.8rem;font-weight:300;color:#e8dcc8;text-align:right;word-break:break-all}
.totp-qr{display:flex;flex-direction:column;align-items:center;gap:.8rem;margin:1rem 0;padding:1rem;background:#fff}
.totp-qr img{width:180px;height:180px}
.totp-key{font-family:"Consolas",monospace;font-size:.7rem;color:#111;word-break:break-all;text-align:center}

/* ══════════════════════════════════════════
   SUPPORT CHAT — bottom-left
══════════════════════════════════════════ */
.chatw{position:fixed;right:1.2rem;bottom:1.2rem;z-index:300;display:flex;flex-direction:column;align-items:flex-end;gap:.6rem}
.chatw__btn{
  display:flex;align-items:center;gap:.5rem;cursor:pointer;
  background:#020407;border:1px solid rgba(232,82,28,.45);color:#e8dcc8;
  padding:.55rem .95rem;
  font-family:var(--disp);font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  box-shadow:0 4px 24px rgba(0,0,0,.6);
  transition:border-color .15s,background .15s,transform .15s;
}
.chatw__btn:hover{border-color:var(--gb);background:#0a0a0a;transform:translateY(-2px)}
.chatw__btn svg{color:var(--gb)}
.chatw__panel{
  width:min(340px,calc(100vw - 2.4rem));height:430px;
  display:flex;flex-direction:column;
  background:rgba(2,4,7,.92);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  border:1px solid rgba(232,82,28,.3);
  box-shadow:0 12px 48px rgba(0,0,0,.7);
  color:#e8dcc8;
}
.chatw__head{
  display:flex;align-items:center;justify-content:space-between;
  padding:.7rem .9rem;border-bottom:1px solid rgba(232,82,28,.2);
  font-family:var(--disp);font-size:.64rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gb);
}
.chatw__close{cursor:pointer;color:rgba(232,220,200,.5);background:none;border:none;font-size:.85rem}
.chatw__close:hover{color:var(--gb)}
.chatw__msgs{flex:1;overflow-y:auto;padding:.9rem;display:flex;flex-direction:column;gap:.55rem;scrollbar-width:thin}
.chatw__m{max-width:85%;padding:.5rem .7rem;font-family:var(--font);font-size:.76rem;font-weight:300;line-height:1.6;word-break:break-word}
.chatw__m--user{align-self:flex-end;background:rgba(232,82,28,.14);border:1px solid rgba(232,82,28,.25)}
.chatw__m--admin{align-self:flex-start;background:rgba(232,220,200,.06);border:1px solid rgba(232,220,200,.12)}
.chatw__m .t{display:block;font-size:.56rem;color:rgba(232,220,200,.32);margin-top:.25rem}
.chatw__input{display:flex;border-top:1px solid rgba(232,82,28,.2)}
.chatw__input input{flex:1;padding:.7rem .8rem;background:transparent;color:#e8dcc8;font-size:.8rem;font-weight:300}
.chatw__input button{
  padding:0 1rem;cursor:pointer;color:var(--gb);background:rgba(232,82,28,.08);
  font-family:var(--disp);font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  border-left:1px solid rgba(232,82,28,.2);transition:background .14s;
}
.chatw__input button:hover{background:rgba(232,82,28,.2)}
.chatw__note{padding:.8rem .9rem;font-family:var(--font);font-size:.7rem;font-weight:300;color:rgba(232,220,200,.45);line-height:1.7}

/* ══════════════════════════════════════════
   COOKIE BANNER
══════════════════════════════════════════ */
.cookie-banner{
  position:fixed;left:0;right:0;bottom:0;z-index:400;
  background:rgba(2,4,7,.96);
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  border-top:2px solid var(--gb);color:#e8dcc8;
  padding:1rem var(--gap);
  display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;
  box-shadow:0 -8px 40px rgba(0,0,0,.6);
}
.cookie-banner p{flex:1;min-width:260px;font-family:var(--font);font-size:.74rem;font-weight:300;color:rgba(232,220,200,.6);line-height:1.7;margin:0}
.cookie-banner p a{color:var(--gb);text-decoration:underline}
.cookie-banner__btns{display:flex;gap:.7rem;flex-wrap:wrap}

/* ══════════════════════════════════════════
   ADMIN-CONTROLLED HOME BANNER
══════════════════════════════════════════ */
@keyframes banner-in{from{transform:translateY(-100%);opacity:0}to{transform:none;opacity:1}}
@keyframes banner-pulse{0%,100%{box-shadow:inset 0 0 0 0 rgba(232,82,28,0)}50%{box-shadow:inset 0 0 40px 0 rgba(232,82,28,.16)}}
.site-banner{
  position:relative;z-index:5;
  display:flex;align-items:center;justify-content:center;gap:.7rem;
  padding:.55rem var(--gap);
  font-family:var(--disp);font-size:.74rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  animation:banner-in .5s cubic-bezier(.22,1,.36,1) both;
  text-align:center;
}
.site-banner--alert{background:#3d1002;color:#ffb195;border-bottom:1px solid var(--gb);animation:banner-in .5s cubic-bezier(.22,1,.36,1) both,banner-pulse 2.6s ease-in-out infinite}
.site-banner--info{background:#16181c;color:#d9d2c6;border-bottom:1px solid rgba(232,220,200,.3)}
.site-banner--ok{background:#0d1f0e;color:#9fe0a2;border-bottom:1px solid #2e7d32}
.site-banner::before{content:"◆";font-size:.5rem;opacity:.7}
.site-banner::after{content:"◆";font-size:.5rem;opacity:.7}

/* ══════════════════════════════════════════
   ADMIN PORTAL
══════════════════════════════════════════ */
.adm{max-width:var(--max);margin:0 auto;padding:clamp(6.5rem,10vw,8rem) var(--gap) 5rem;min-height:100svh}
.adm h1{font-family:var(--disp);font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:900;text-transform:uppercase;line-height:.86;margin-bottom:.5rem}
.adm__sub{font-family:var(--font);font-size:.78rem;font-weight:300;color:var(--dim);margin-bottom:1.8rem}
.adm__tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem;border-bottom:1px solid rgba(232,82,28,.16);padding-bottom:.8rem}
.adm__tab{
  font-family:var(--disp);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  padding:.45rem 1rem;cursor:pointer;border:1px solid rgba(232,82,28,.2);color:var(--dim);
  background:transparent;transition:all .14s;
}
.adm__tab:hover{color:var(--gb);border-color:var(--gb)}
.adm__tab.on{background:var(--gb);color:#fff;border-color:var(--gb)}
.adm__panel{display:flex;flex-direction:column;gap:1rem}
.adm__bar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}
.adm__bar input,.adm__bar select{
  background:var(--bg2);border:1px solid rgba(232,82,28,.2);padding:.5rem .8rem;color:var(--ink);font-size:.8rem;
}
.adm table{width:100%;border-collapse:collapse;font-size:.76rem}
.adm thead th{
  font-family:var(--disp);font-size:.58rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gb);
  text-align:left;padding:.5rem .6rem;border-bottom:2px solid rgba(232,82,28,.3);white-space:nowrap;
}
.adm tbody td{padding:.55rem .6rem;border-bottom:1px solid rgba(232,82,28,.1);color:var(--dim);font-weight:300;vertical-align:top}
.adm tbody tr:hover{background:var(--gd2)}
.adm .pill{
  display:inline-block;font-family:var(--disp);font-size:.56rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:.14rem .45rem;border:1px solid;
}
.pill--active{color:#7bc67e;border-color:rgba(76,175,80,.4);background:rgba(76,175,80,.06)}
.pill--banned{color:#ff7a5c;border-color:rgba(232,82,28,.5);background:rgba(232,82,28,.08)}
.pill--tempban{color:#ffb74d;border-color:rgba(255,167,38,.45);background:rgba(255,167,38,.07)}
.pill--hold{color:#90a4ae;border-color:rgba(144,164,174,.4);background:rgba(144,164,174,.07)}
.pill--admin{color:var(--gb);border-color:rgba(232,82,28,.45);background:rgba(232,82,28,.07)}
.adm__act{display:flex;gap:.3rem;flex-wrap:wrap}
.adm__act button{
  font-family:var(--disp);font-size:.56rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  padding:.2rem .5rem;cursor:pointer;border:1px solid rgba(232,82,28,.25);color:var(--dim);
  transition:all .12s;background:transparent;
}
.adm__act button:hover{color:var(--gb);border-color:var(--gb);background:var(--gd2)}
.adm__live{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem}
.adm__live-card{
  border:1px solid rgba(232,82,28,.18);padding:.9rem 1rem;background:var(--bg2);
  display:flex;flex-direction:column;gap:.3rem;
}
.adm__live-card .e{font-family:var(--font);font-size:.78rem;color:var(--ink);font-weight:500;word-break:break-all}
.adm__live-card .p{font-family:"Consolas",monospace;font-size:.68rem;color:var(--gb)}
.adm__live-card .t{font-size:.62rem;color:var(--soft)}
.adm__live-card::before{
  content:"LIVE";font-family:var(--disp);font-size:.5rem;font-weight:700;letter-spacing:.2em;color:#4caf50;
  display:flex;align-items:center;gap:.35rem;
}
.adm__detail{
  border:1px solid rgba(232,82,28,.25);background:var(--bg2);padding:1.4rem;
  display:flex;flex-direction:column;gap:.9rem;
}
.adm__detail h3{font-family:var(--disp);font-size:1.05rem;font-weight:800;text-transform:uppercase}
.adm__note{font-size:.72rem;color:var(--dim);border-left:2px solid rgba(232,82,28,.3);padding-left:.6rem;line-height:1.6}
.adm__note .by{color:var(--soft);font-size:.62rem;display:block}
.adm__check{display:flex;flex-direction:column;gap:.5rem;border:1px solid rgba(232,82,28,.3);background:var(--gd2);padding:1rem}
.adm__check strong{font-family:var(--disp);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gb)}
.adm__check label{display:flex;gap:.5rem;align-items:flex-start;font-size:.74rem;color:var(--dim);font-weight:300;line-height:1.6;cursor:pointer}
.adm__check input{accent-color:var(--gb);margin-top:.2rem}
.adm__threads{display:grid;grid-template-columns:240px 1fr;gap:1rem;min-height:380px}
.adm__threads-list{display:flex;flex-direction:column;border:1px solid rgba(232,82,28,.16);overflow-y:auto;max-height:480px}
.adm__threads-list button{
  text-align:left;padding:.7rem .8rem;border-bottom:1px solid rgba(232,82,28,.08);cursor:pointer;
  font-size:.72rem;color:var(--dim);font-weight:300;transition:background .12s;background:transparent;
}
.adm__threads-list button:hover,.adm__threads-list button.on{background:var(--gd2);color:var(--ink)}
.adm__threads-list .lt{display:block;font-size:.62rem;color:var(--soft);margin-top:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.adm__convo{display:flex;flex-direction:column;border:1px solid rgba(232,82,28,.16)}
.adm__convo-msgs{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.5rem;max-height:400px}
.adm__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.adm textarea,.adm input[type="text"],.adm input[type="date"],.adm select{
  background:var(--bg2);border:1px solid rgba(232,82,28,.2);padding:.55rem .75rem;color:var(--ink);font-size:.8rem;font-weight:300;width:100%;
}
.adm textarea{min-height:80px;resize:vertical}

/* ══════════════════════════════════════════
   ACCESS DENIED / GUARD
══════════════════════════════════════════ */
.guard{min-height:70svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;text-align:center;padding:7rem var(--gap) 4rem}
.guard h1{font-family:var(--disp);font-size:clamp(1.8rem,4vw,3rem);font-weight:900;text-transform:uppercase}
.guard p{font-family:var(--font);font-size:.82rem;font-weight:300;color:var(--dim);max-width:46ch;line-height:1.8}

/* ══════════════════════════════════════════
   RESPONSIVE — new components
══════════════════════════════════════════ */
@media(max-width:1000px){
  .pp{grid-template-columns:1fr}
  .pp__side{position:static;max-height:none;order:-1}
  .adm__threads{grid-template-columns:1fr}
  .adm__form-grid{grid-template-columns:1fr}
  .footer__inner{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .footer__inner{grid-template-columns:1fr}
  .nf__code{font-size:5.2rem}
  .chatw{right:.8rem;bottom:.8rem}
  .adm table{font-size:.68rem}
  .adm thead{display:none}
  .adm tbody td{display:block;border-bottom:none}
  .adm tbody tr{display:block;border-bottom:1px solid rgba(232,82,28,.2);padding:.5rem 0}
}

/* ══════════════════════════════════════════
   v3 OVERHAUL — remove residual glows, light-mode upgrade
══════════════════════════════════════════ */
/* no ambient orange corner glow anywhere */
.hero__glow{display:none!important}

/* LIGHT MODE v2 — real light surfaces, proper contrast */
html[data-theme="light"]{
  --bg:#f7f5f1;
  --bg2:#ffffff;
  --bg3:#eceae4;
  --ink:#15120f;
  --dim:rgba(21,18,15,.8);
  --soft:rgba(21,18,15,.58);
  --mute:rgba(21,18,15,.22);
  --line:rgba(21,18,15,.1);
  --line2:rgba(21,18,15,.16);
  --line3:rgba(196,63,15,.45);
}
html[data-theme="light"] .home-stat,
html[data-theme="light"] .dcard,
html[data-theme="light"] .princ-card,
html[data-theme="light"] .contact-card{background:#fff}
html[data-theme="light"] .home-stmt__stats,
html[data-theme="light"] .detail-grid,
html[data-theme="light"] .princ-grid,
html[data-theme="light"] .contact-grid{background:rgba(25,22,19,.1);border-color:rgba(25,22,19,.1)}
html[data-theme="light"] .dcard:hover{background:#faf8f4}
html[data-theme="light"] .cap-strip,
html[data-theme="light"] .home-caps,
html[data-theme="light"] .home-stmt,
html[data-theme="light"] .home-ops,
html[data-theme="light"] .cert-banner,
html[data-theme="light"] .pfacts,
html[data-theme="light"] .pclose{background:var(--bg);border-color:rgba(25,22,19,.1)}
html[data-theme="light"] .pproc{background:#efede7;border-color:rgba(25,22,19,.1)}
html[data-theme="light"] .cert-item{background:#fff;border-color:rgba(25,22,19,.12)}
html[data-theme="light"] .cert-item:hover{box-shadow:0 10px 24px rgba(25,22,19,.12)}
html[data-theme="light"] .fl input,
html[data-theme="light"] .rfq-section .fl input,
html[data-theme="light"] .adm input,
html[data-theme="light"] .adm select,
html[data-theme="light"] .adm textarea{color:inherit}
html[data-theme="light"] .site-header.scrolled{background:rgba(247,245,241,.96)}
html[data-theme="light"] .nav-link{color:rgba(25,22,19,.55)}
html[data-theme="light"] .nav-link:hover,
html[data-theme="light"] .nav-link[aria-current]{color:#191613}
html[data-theme="light"] .nav-toggle span{background:#191613}
html[data-theme="light"] .home-cap__num,
html[data-theme="light"] .ops-row__num{-webkit-text-stroke-color:rgba(196,63,15,.35)}
html[data-theme="light"] .kicker{color:var(--gm)}
html[data-theme="light"] .cap-item--accent,
html[data-theme="light"] .home-stat__n{color:var(--gm)}
html[data-theme="light"] .pp__here-box,
html[data-theme="light"] .pp .pp-shout{background:#fff}
/* dark bands stay dark in light mode (hero, phero, auth, rfq, 404, footer) — by design */

/* responsive for compact footer */
@media(max-width:1000px){
  .footer__inner{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .footer__inner{grid-template-columns:1fr;gap:1.2rem}
  .pproc__steps{grid-template-columns:1fr}
}

/* cookie banner is always dark — keep its ghost button light in light mode */
html[data-theme="light"] .cookie-banner .hero-btn--ghost{color:#e8dcc8;border-color:rgba(232,220,200,.4)}

/* ══════════════════════════════════════════
   ACCOUNT — full page (not a floating block)
══════════════════════════════════════════ */
.acctpg{
  position:relative;overflow:hidden;min-height:100svh;
  background:#000;color:#e8dcc8;
  max-width:none;margin:0;
  padding:clamp(6.5rem,10vw,8rem) var(--gap) 5rem;
}
.acctpg__head{position:relative;z-index:1;margin-bottom:2rem;max-width:var(--max)}
.acctpg__head h1{
  font-family:var(--disp);font-size:clamp(3rem,6vw,5.5rem);font-weight:900;
  text-transform:uppercase;line-height:.84;letter-spacing:-.01em;color:#fff;
}
.acctpg__sub{font-family:var(--font);font-size:.8rem;font-weight:300;color:rgba(232,220,200,.55);margin-top:.6rem;line-height:1.7}
.acctpg__sub strong{color:var(--gl)}
.acctpg__verify{position:relative;z-index:1;max-width:720px;margin-bottom:1.6rem}
.acctpg__grid{
  position:relative;z-index:1;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.2rem;max-width:1100px;
}
@media(max-width:860px){.acctpg__grid{grid-template-columns:1fr}}
.acct-card{
  background:#0c0e12;border:1px solid rgba(232,220,200,.1);
  border-top:2px solid var(--gb);
  padding:1.6rem 1.5rem;
  display:flex;flex-direction:column;gap:.4rem;
}
.acct-card__head{
  font-family:var(--disp);font-size:.7rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;
  color:var(--gb);margin-bottom:.7rem;
  display:flex;align-items:center;gap:.5rem;
}
.acct-card__head::after{content:"";flex:1;height:1px;background:rgba(232,82,28,.18)}
.acct-card__note{font-family:var(--font);font-size:.74rem;font-weight:300;color:rgba(232,220,200,.55);margin-bottom:.7rem;line-height:1.6}
.acct-card .auth__form{gap:.85rem}
.acct-card .fl input{
  background:rgba(0,0,0,.45);border:1px solid rgba(232,220,200,.14);
  border-bottom:1px solid rgba(232,82,28,.35);
  padding:.65rem .85rem;color:#e8dcc8;font-size:.85rem;
}
.acct-card .fl input:focus{border-color:var(--gb)}
.acct-card .fl__label{color:rgba(255,140,80,.8)}
.acctpg__msg{position:relative;z-index:1;max-width:1100px;margin-top:1rem}

/* ══════════════════════════════════════════
   SUPPORT CHAT v2
══════════════════════════════════════════ */
@keyframes chatw-bounce{0%,100%{transform:translateY(0)}30%{transform:translateY(-7px)}55%{transform:translateY(0)}70%{transform:translateY(-3px)}}
@keyframes chatw-badge-pop{0%{transform:scale(0)}70%{transform:scale(1.25)}100%{transform:scale(1)}}
.chatw__btn{position:relative}
.chatw__btn--alert{animation:chatw-bounce 1.1s cubic-bezier(.36,1.6,.4,1) infinite;border-color:var(--gb)}
.chatw__badge{
  position:absolute;top:-7px;right:-7px;min-width:17px;height:17px;
  display:flex;align-items:center;justify-content:center;
  background:var(--gb);color:#fff;border-radius:50%;
  font-family:var(--disp);font-size:.58rem;font-weight:700;padding:0 4px;
  box-shadow:0 0 10px rgba(232,82,28,.7);
  animation:chatw-badge-pop .3s cubic-bezier(.36,1.6,.4,1) both;
}
.chatw__panel{height:auto;max-height:min(560px,calc(100svh - 7rem));width:min(360px,calc(100vw - 2.4rem))}
.chatw__head-main{display:flex;flex-direction:column;gap:.18rem;min-width:0}
.chatw__avail{
  font-family:var(--font);font-size:.62rem;font-weight:300;letter-spacing:.04em;text-transform:none;
  color:rgba(232,220,200,.55);display:flex;align-items:center;gap:.35rem;
}
.chatw__dot{width:7px;height:7px;border-radius:50%;background:#777;display:inline-block;flex-shrink:0}
.chatw__dot--on{background:#4caf50;box-shadow:0 0 8px rgba(76,175,80,.8);animation:pulse-dot 2.2s ease-in-out infinite}
.chatw__dot--off{background:#b35309}
.chatw__intake{padding:.9rem;display:flex;flex-direction:column;gap:.7rem;overflow-y:auto;scrollbar-width:thin}
.chatw__offline{
  font-family:var(--font);font-size:.7rem;font-weight:300;line-height:1.65;color:#ffcf9e;
  border:1px solid rgba(255,167,38,.35);border-left:3px solid #ffb74d;
  background:rgba(255,167,38,.06);padding:.6rem .75rem;
}
.chatw__form{display:flex;flex-direction:column;gap:.55rem}
.chatw__form-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.chatw__form input,.chatw__form textarea{
  background:rgba(0,0,0,.45);border:1px solid rgba(232,220,200,.14);
  border-bottom:1px solid rgba(232,82,28,.3);
  padding:.55rem .7rem;color:#e8dcc8;font-family:var(--font);font-size:.76rem;font-weight:300;
}
.chatw__form input:focus,.chatw__form textarea:focus{border-color:var(--gb)}
.chatw__form input::placeholder,.chatw__form textarea::placeholder{color:rgba(232,220,200,.35)}
.chatw__form textarea{min-height:84px;resize:vertical;line-height:1.6}
.chatw__form .hero-btn{margin-top:.2rem}
.chatw__err{font-family:var(--font);font-size:.68rem;color:#ff8866;line-height:1.5}
.chatw__thread{display:flex;flex-direction:column;min-height:0;flex:1}
.chatw__queue{
  font-family:var(--font);font-size:.66rem;font-weight:300;line-height:1.55;color:rgba(232,220,200,.7);
  padding:.5rem .9rem;border-bottom:1px solid rgba(232,82,28,.15);
  background:rgba(232,82,28,.05);
}
.chatw__queue strong{color:var(--gl)}
.chatw__msgs{min-height:180px;max-height:300px}
.chatw__m--user{border-radius:7px 7px 2px 7px}
.chatw__m--admin{border-radius:7px 7px 7px 2px}
.chatw__m .t{opacity:.8}

/* ══════════════════════════════════════════
   DETAIL PAGES — bento telemetry grid
══════════════════════════════════════════ */
.detail-grid{
  grid-template-columns:repeat(6,1fr);
  gap:1px;background:rgba(232,82,28,.14);border:1px solid rgba(232,82,28,.14);
}
.detail-grid .dcard{padding:2rem 1.8rem;position:relative}
.detail-grid .dcard:nth-child(1),.detail-grid .dcard:nth-child(4){grid-column:span 4}
.detail-grid .dcard:nth-child(2),.detail-grid .dcard:nth-child(3){grid-column:span 2}
.detail-grid .dcard:nth-child(5),.detail-grid .dcard:nth-child(6){grid-column:span 3}
.detail-grid .dcard::before{
  content:"";position:absolute;top:10px;right:10px;width:14px;height:14px;pointer-events:none;
  border-top:1px solid rgba(232,82,28,.4);border-right:1px solid rgba(232,82,28,.4);
  opacity:0;transition:opacity .2s;
}
.detail-grid .dcard:hover::before{opacity:1}
@media(max-width:1100px){
  .detail-grid{grid-template-columns:1fr 1fr}
  .detail-grid .dcard{grid-column:span 1!important}
}
@media(max-width:640px){
  .detail-grid{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════
   v9 — page-hero 3D backdrop, RFQ fixes, cookie v2, chat end,
   privacy toolbar/follower, light-nav fix, cursors, partner form
══════════════════════════════════════════ */

/* PAGE HERO — custom designed backdrop, no video */
.phero{background:radial-gradient(ellipse at 75% 35%,#101311 0%,#050605 55%,#000 100%)}
.phero__vig{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(98deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.55) 38%,rgba(0,0,0,.05) 75%),
             linear-gradient(to bottom,rgba(0,0,0,.45) 0%,transparent 22%,transparent 62%,rgba(0,0,0,.92) 100%);
}
.phero .mesh3d{z-index:0;opacity:.95}
.phero__band{z-index:2}
/* band text — DELIVER-style cream stroke, glow flicker per character */
@keyframes band-char-in{
  0%{opacity:0;transform:translateX(30px) skewX(-8deg);filter:blur(6px)}
  55%{opacity:1;filter:blur(0)}
  70%{opacity:.4}
  82%{opacity:1}
  100%{opacity:1;transform:none}
}
.phero__band-text{
  -webkit-text-stroke:2px rgba(232,220,200,.34);
  color:transparent;
  filter:drop-shadow(0 0 36px rgba(232,82,28,.12));
}
.phero__band-text .ps-char{display:inline-block;opacity:0}
html.hero-ready .phero__band-text .ps-char{animation:band-char-in .55s cubic-bezier(.22,1,.36,1) forwards}
.reduced-motion .phero__band-text .ps-char{opacity:1!important;animation:none!important}

/* mesh overlay variant for the RFQ section (sits above scrim, below content) */
.mesh3d--overlay{z-index:2;opacity:.5}

/* HOME — capabilities section gets a mesh host */
.home-caps{position:relative;overflow:hidden}
.home-caps .mesh3d{opacity:.55}
.home-ops .mesh3d,.home-stmt .mesh3d{opacity:.8}

/* RFQ — kill the line-2 gap: org field wide, CAGE compact */
.rfq-org-row{grid-template-columns:1.6fr 1fr;align-items:start}
/* group titles — uniform full-strength accent orange, no washed white */
.rfq-group-head{
  color:var(--gb)!important;opacity:1!important;
  font-family:var(--disp);font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:.76rem;
  display:flex;align-items:center;gap:.6rem;
  border-top:1px solid rgba(232,82,28,.22);
  padding-top:1.1rem;margin-bottom:1rem;
}
.rfq-group-n{
  color:#fff;background:var(--gb);
  font-size:.62rem;padding:.12rem .45rem;letter-spacing:.1em;
}
.rfq-group + .rfq-group{margin-top:.4rem}
/* attach box — visible tactical outline */
.file-upload__zone{
  border:1.5px dashed rgba(232,82,28,.55);
  background:rgba(232,82,28,.05);
  padding:1.6rem 1rem;
}
.file-upload__zone:hover,.file-upload__zone.over{border-color:var(--gb);background:rgba(232,82,28,.1)}
.file-upload__icon{color:var(--gb)}
.file-upload__text{color:rgba(235,228,218,.85);font-weight:400}
.file-upload__sub{color:rgba(235,228,218,.45)}

/* HOME — How We Operate left column: larger, fitted */
.home-ops__h2{font-size:clamp(2.4rem,4.6vw,5rem)}
.home-ops__sub{font-size:.92rem;line-height:1.85;max-width:38ch}

/* main hero — CAGE pill prominent */
.hero__cred-pill--cage{
  font-size:.66rem;color:#fff;background:rgba(232,82,28,.85);
  padding:.18rem .55rem;letter-spacing:.18em;
}
.hero__creds .hero__cred-pill{font-size:.56rem;color:rgba(232,220,200,.55)}
.hero__creds .hero__cred-pill--cage{color:#fff}

/* LIGHT MODE NAV — readable over dark hero bands AND when scrolled */
html[data-theme="light"] .site-header:not(.scrolled) .nav-link{color:rgba(235,228,218,.6)}
html[data-theme="light"] .site-header:not(.scrolled) .nav-link:hover,
html[data-theme="light"] .site-header:not(.scrolled) .nav-link[aria-current]{color:#fff}
html[data-theme="light"] .site-header:not(.scrolled) .nav-toggle span{background:#e8dcc8}
html[data-theme="light"] .site-header.scrolled{background:rgba(247,245,241,.98);border-bottom-color:rgba(21,18,15,.12)}
html[data-theme="light"] .site-header.scrolled .nav-link{color:rgba(21,18,15,.6)}
html[data-theme="light"] .site-header.scrolled .nav-link:hover,
html[data-theme="light"] .site-header.scrolled .nav-link[aria-current]{color:#15120f}
html[data-theme="light"] .site-header.scrolled .nav-toggle span{background:#15120f}

/* structural elements keep a standard cursor — no I-beam on layout */
.home-stat,.home-stat *,.cap-item,.cap-strip *,.pfact,.pfact *,.ist,.ist *,
.home-cap,.home-cap__num,.home-ops__item,.cert-item,.cert-item *,
.hero__creds *,.footer__tags span{cursor:default}

/* CERT MARQUEE — never pauses */
.cert-banner__track:hover .cert-banner__inner{animation-play-state:running}

/* AUTH PANEL — warm obsidian, no bluish grey */
.auth__panel{background:#0c0b0a;border-color:rgba(232,220,200,.14)}
.acct-card{background:#0c0b0a}

/* PRIVACY — toolbar under hero, upgraded buttons */
.pp-toolbar{
  display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;
  max-width:var(--max);margin:0 auto;
  padding:.9rem var(--gap);
  border-bottom:1px solid var(--line);
}
.pp-toolbar__label{
  font-family:var(--disp);font-size:.6rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--gb);
  display:flex;align-items:center;gap:.5rem;
}
.pp-toolbar__label::before{content:"";width:5px;height:5px;background:var(--gb)}
.pp-toolbar__btns{display:flex;gap:.6rem;flex-wrap:wrap}
.pp-btn{
  display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;
  font-family:var(--disp);font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  padding:.5rem 1rem;
  border:1px solid var(--line2);color:var(--dim);background:transparent;
  transition:color .14s,border-color .14s,background .14s;
}
.pp-btn:hover{color:var(--gb);border-color:var(--gb);background:var(--gd2)}
.pp-btn--solid{background:var(--gb);color:#fff;border-color:var(--gb)}
.pp-btn--solid:hover{background:var(--gl);color:#fff;border-color:var(--gl)}
.pp-btn svg{flex-shrink:0}

/* PRIVACY — only the You-Are-Here box follows; the index stays put */
.pp__side{position:static;max-height:none;overflow:visible;padding-right:0}
.pp__follow{position:sticky;top:78px;z-index:5;background:var(--bg);padding:.4rem 0 .2rem}
.pp__here-box{margin-bottom:.6rem}
.pp__toc{position:relative}

/* COOKIE CONSENT v2 — tactical card bottom-right */
.ckbar{
  position:fixed;right:1.2rem;bottom:1.2rem;left:auto;z-index:400;
  max-width:min(420px,calc(100vw - 2.4rem));
  opacity:0;transform:translateY(24px) scale(.97);
  transition:opacity .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1);
}
.ckbar.on{opacity:1;transform:none}
.ckbar__card{
  background:#0c0b0a;border:1px solid rgba(232,220,200,.14);border-top:2px solid var(--gb);
  box-shadow:0 24px 70px rgba(0,0,0,.65);
  padding:1.2rem 1.3rem;color:#e8dcc8;
  display:flex;flex-direction:column;gap:.7rem;
}
.ckbar__head{display:flex;flex-direction:column;gap:.1rem}
.ckbar__title{font-family:var(--disp);font-size:.88rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.ckbar__sub{font-family:var(--disp);font-size:.56rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gb)}
.ckbar__txt{font-family:var(--font);font-size:.72rem;font-weight:300;color:rgba(232,220,200,.6);line-height:1.7;margin:0}
.ckbar__txt a{color:var(--gl);text-decoration:underline}
.ckbar__details-toggle{
  align-self:flex-start;cursor:pointer;background:none;border:none;
  font-family:var(--disp);font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gb);
  padding:0;transition:color .13s;
}
.ckbar__details-toggle:hover{color:var(--gl)}
.ckbar__details{display:flex;flex-direction:column;gap:.6rem;border-top:1px solid rgba(232,82,28,.18);padding-top:.7rem}
.ckbar__cat-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}
.ckbar__cat-head strong{font-family:var(--disp);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#e8dcc8}
.ckbar__cat-flag{font-family:var(--disp);font-size:.52rem;font-weight:700;letter-spacing:.14em;color:var(--gb);border:1px solid rgba(232,82,28,.35);padding:.08rem .35rem}
.ckbar__cat p{font-family:var(--font);font-size:.66rem;font-weight:300;color:rgba(232,220,200,.5);line-height:1.6;margin:.25rem 0 0}
.ckbar__btns{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.2rem}
.ck-toast{
  position:fixed;left:50%;bottom:1.4rem;transform:translate(-50%,20px);z-index:450;
  background:#0c0b0a;border:1px solid rgba(232,82,28,.45);border-left:3px solid var(--gb);
  color:#e8dcc8;font-family:var(--font);font-size:.76rem;font-weight:300;
  padding:.7rem 1.1rem;box-shadow:0 12px 40px rgba(0,0,0,.6);
  opacity:0;transition:opacity .35s,transform .35s;
  pointer-events:none;white-space:nowrap;max-width:calc(100vw - 2rem);
}
.ck-toast.on{opacity:1;transform:translate(-50%,0)}

/* CHAT — end button + confirm */
.chatw__head-actions{display:flex;align-items:center;gap:.6rem}
.chatw__end{
  cursor:pointer;background:transparent;border:1px solid rgba(232,82,28,.4);color:var(--gb);
  font-family:var(--disp);font-size:.54rem;font-weight:700;letter-spacing:.16em;
  padding:.18rem .5rem;transition:background .13s,color .13s;
}
.chatw__end:hover{background:var(--gb);color:#fff}
.chatw__confirm{
  padding:.9rem;display:flex;flex-direction:column;gap:.7rem;
  border-bottom:1px solid rgba(232,82,28,.25);background:rgba(232,82,28,.06);
}
.chatw__confirm p{font-family:var(--font);font-size:.76rem;font-weight:400;color:#e8dcc8;line-height:1.6;margin:0}
.chatw__confirm-btns{display:flex;gap:.6rem;flex-wrap:wrap}

/* PARTNER FORM */
.pform{background:var(--bg2);border-top:1px solid var(--line);padding:clamp(3.5rem,6vw,6rem) var(--gap)}
.pform__inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.pform__h2{font-family:var(--disp);font-size:clamp(2rem,4vw,3.4rem);font-weight:900;text-transform:uppercase;line-height:.9;margin:.4rem 0 1rem}
.pform__intro p{font-family:var(--font);font-size:.84rem;font-weight:300;color:var(--dim);line-height:1.85}
.pform__form{display:flex;flex-direction:column;gap:1rem}
.pform__form .fl input,.pform__form .fl textarea{
  background:var(--bg);border:1px solid var(--line2);border-bottom:1px solid rgba(232,82,28,.4);
  -webkit-backdrop-filter:none;backdrop-filter:none;
}
.pform__form .fl textarea{min-height:120px}
@media(max-width:900px){.pform__inner{grid-template-columns:1fr}}

/* ADMIN — banner live preview frame */
.adm__preview{
  border:1px dashed rgba(232,82,28,.35);background:var(--bg);
  padding:.7rem;display:flex;flex-direction:column;gap:.4rem;min-height:56px;justify-content:center;
}

/* ══════════════════════════════════════════
   v10 — editorial page layouts (no boxes), auth split redesign
══════════════════════════════════════════ */

/* STATEMENT BAND — big editorial line, like the home mission statement */
.pstmt{
  background:var(--bg);position:relative;
  padding:clamp(4rem,7vw,7rem) var(--gap);
  border-bottom:1px solid var(--line);
}
.pstmt::before{
  content:"";position:absolute;top:0;left:var(--gap);
  width:clamp(40px,6vw,80px);height:2px;background:var(--gb);
}
.pstmt__inner{max-width:var(--max);margin:0 auto}
.pstmt__q{
  font-family:var(--disp);
  font-size:clamp(1.8rem,3.8vw,3.6rem);
  font-weight:700;line-height:1.22;color:var(--ink);
  max-width:24ch;margin:0;
}
.pstmt__q em{font-style:normal;color:var(--gb)}

/* FEATURE ROWS — full-width numbered rows, same language as home capabilities */
.frows{background:var(--bg);border-bottom:1px solid var(--line)}
.frows__inner{max-width:var(--max);margin:0 auto;padding:0 var(--gap)}
.frow{
  display:grid;
  grid-template-columns:clamp(6rem,10vw,10rem) 1fr;
  align-items:center;
  gap:clamp(1.5rem,3.5vw,4.5rem);
  padding:clamp(1.8rem,3vw,3rem) 0;
  border-bottom:1px solid var(--line);
  position:relative;transition:background .15s;cursor:default;
}
.frow:last-child{border-bottom:none;padding-bottom:clamp(2.5rem,4vw,4rem)}
.frow::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;
  background:var(--gb);
  transform:scaleY(0);transform-origin:bottom;
  transition:transform .38s cubic-bezier(.22,1,.36,1);
}
.frow:hover::before{transform:scaleY(1)}
.frow:hover{background:rgba(232,82,28,.015)}
.frow__num{
  font-family:var(--disp);
  font-size:clamp(3.4rem,6.5vw,7rem);
  font-weight:900;line-height:1;
  color:transparent;-webkit-text-stroke:1px rgba(232,82,28,.2);
  letter-spacing:-.02em;
  transition:-webkit-text-stroke-color .22s;
}
.frow:hover .frow__num{-webkit-text-stroke-color:rgba(232,82,28,.6)}
.frow__body h3{
  font-family:var(--disp);
  font-size:clamp(1.25rem,2.1vw,1.9rem);
  font-weight:800;text-transform:uppercase;
  letter-spacing:.04em;line-height:1;margin-bottom:.55rem;
}
.frow__body p{
  font-family:var(--font);font-size:.84rem;font-weight:300;
  color:var(--dim);line-height:1.85;max-width:72ch;
}
@media(max-width:640px){
  .frow{grid-template-columns:1fr;gap:.6rem}
  .frow__num{font-size:2.6rem}
}

/* AUTH — split layout: secure-access column + framed panel over terrain */
.auth{justify-content:stretch;align-items:center}
.auth__vig{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.45) 45%,rgba(0,0,0,.15) 100%),
             linear-gradient(to top,rgba(0,0,0,.85),transparent 35%);
}
.auth .mesh3d{opacity:.75}
.auth__wrap{
  position:relative;z-index:1;width:100%;max-width:var(--max);margin:0 auto;
  display:grid;grid-template-columns:1fr minmax(0,500px);
  gap:clamp(2.5rem,6vw,7rem);align-items:center;
}
.auth__intro{display:flex;flex-direction:column;gap:1rem;max-width:46ch}
.auth__intro-h2{
  font-family:var(--disp);font-size:clamp(2.4rem,4.6vw,4.6rem);
  font-weight:900;text-transform:uppercase;line-height:.88;letter-spacing:-.01em;color:#fff;
}
.auth__intro-h2 em{font-style:normal;color:var(--gb)}
.auth__intro-p{font-family:var(--font);font-size:.86rem;font-weight:300;color:rgba(235,228,218,.65);line-height:1.85}
.auth__points{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-top:.4rem}
.auth__points li{
  font-family:var(--font);font-size:.74rem;font-weight:300;color:rgba(235,228,218,.55);
  display:flex;align-items:baseline;gap:.6rem;line-height:1.6;
}
.auth__points li::before{content:"▸";color:var(--gb);flex-shrink:0}
@media(max-width:980px){
  .auth__wrap{grid-template-columns:1fr;gap:2rem}
  .auth__intro{max-width:none}
}
/* framed access panel — corner ticks + designation strip */
.auth__panel{
  position:relative;
  border:1px solid rgba(232,220,200,.16);
  border-top:2px solid var(--gb);
  box-shadow:0 30px 90px rgba(0,0,0,.7);
}
.auth__panel::before{
  content:"";position:absolute;inset:6px;pointer-events:none;
  background:
    linear-gradient(to right,rgba(232,82,28,.7) 12px,transparent 12px) top left/16px 1px no-repeat,
    linear-gradient(to bottom,rgba(232,82,28,.7) 12px,transparent 12px) top left/1px 16px no-repeat,
    linear-gradient(to left,rgba(232,82,28,.7) 12px,transparent 12px) bottom right/16px 1px no-repeat,
    linear-gradient(to top,rgba(232,82,28,.7) 12px,transparent 12px) bottom right/1px 16px no-repeat;
}
.auth__panel::after{
  content:"PHANTOM SYSTEMS // ACCESS CONTROL";
  position:absolute;top:-2px;right:14px;transform:translateY(-100%);
  font-family:var(--disp);font-size:.52rem;font-weight:700;letter-spacing:.3em;
  color:rgba(232,82,28,.6);padding-bottom:.3rem;
}

/* ══════════════════════════════════════════
   v11 — RFQ contrast panel, warm hero blacks, unique page layouts,
   privacy rail + top button, footer always dark, certs polish,
   chat gate, light-mode hero/auth fixes
══════════════════════════════════════════ */

/* RFQ — solid command panel (sharp, ZERO blur) so the form reads over bright video */
.rfq-form-wrap{
  background:rgba(6,7,9,.88);
  border:1px solid rgba(232,82,28,.3);
  border-top:2px solid var(--gb);
  padding:clamp(1.6rem,3vw,2.8rem);
  box-shadow:0 30px 80px rgba(0,0,0,.55);
}
.rfq-success{background:rgba(6,7,9,.88)}

/* warm blacks — no blue-grey cast on hero bands */
.phero{background:radial-gradient(ellipse at 75% 35%,#13100c 0%,#070605 55%,#000 100%)}

/* the stray orange bar under the facts strip — gone */
.pstmt::before{display:none}
.pstmt{padding-top:clamp(3rem,5vw,5rem)}

/* LIGHT MODE — hero bands stay dark, so their type must stay light (was inheriting dark ink) */
html[data-theme="light"] .phero .wi--white,
html[data-theme="light"] .hero .wi--white{color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.95)}
html[data-theme="light"] .phero .wi--stroke,
html[data-theme="light"] .hero .wi--stroke{-webkit-text-stroke:2px rgba(232,220,200,.2);color:transparent}
html[data-theme="light"] .phero .hero__eyebrow-text{color:var(--gb)}
html[data-theme="light"] .phero__lead{color:rgba(235,228,218,.75)}

/* LIGHT MODE — sign-in/account pages follow the theme now */
html[data-theme="light"] .auth{background:#eceae4;color:#15120f}
html[data-theme="light"] .auth .mesh3d{opacity:.3;filter:saturate(1.4)}
html[data-theme="light"] .auth__vig{background:linear-gradient(100deg,rgba(236,234,228,.92) 0%,rgba(236,234,228,.5) 45%,transparent 100%)}
html[data-theme="light"] .auth__intro-h2{color:#15120f}
html[data-theme="light"] .auth__intro-p,
html[data-theme="light"] .auth__points li{color:rgba(21,18,15,.65)}
html[data-theme="light"] .auth__panel{
  background:#fff;border-color:rgba(21,18,15,.16);
  box-shadow:0 24px 70px rgba(21,18,15,.18);color:#15120f;
}
html[data-theme="light"] .auth__panel h1{color:#15120f}
html[data-theme="light"] .auth__sub{color:rgba(21,18,15,.6)}
html[data-theme="light"] .auth__form .fl input{
  background:#f6f4ef;border-color:rgba(21,18,15,.18);color:#15120f;
}
html[data-theme="light"] .auth__form .fl__label{color:var(--gm)}
html[data-theme="light"] .auth__switch button{color:rgba(21,18,15,.55)}
html[data-theme="light"] .pw-meter span{color:rgba(21,18,15,.5)}
html[data-theme="light"] .auth__uname-status{color:rgba(21,18,15,.5)}
html[data-theme="light"] .acctpg{background:#f1efe9;color:#15120f}
html[data-theme="light"] .acctpg__head h1{color:#15120f}
html[data-theme="light"] .acctpg__sub{color:rgba(21,18,15,.6)}
html[data-theme="light"] .acct-card{background:#fff;border-color:rgba(21,18,15,.14);color:#15120f}
html[data-theme="light"] .acct-card .fl input{background:#f6f4ef;border-color:rgba(21,18,15,.18);color:#15120f}
html[data-theme="light"] .acct__row .v{color:#15120f}

/* FOOTER — always dark in both themes, logo + text always visible, compact */
.footer{background:#050505!important;color:#e8dcc8!important}
.footer__brand-logo{filter:none}
.footer__tagline{color:rgba(232,220,200,.55)!important}
.footer__addr{color:rgba(232,220,200,.45)!important}
.footer__col-head{color:var(--gb)!important;border-bottom-color:rgba(232,82,28,.2)!important}
.footer__col a{color:rgba(232,220,200,.6)!important}
.footer__col a:hover{color:#fff!important}
.footer__warn{color:rgba(232,220,200,.38)!important}
.footer__copy,.footer__links a,.footer__links button{color:rgba(232,220,200,.42)!important}
.footer__links a:hover,.footer__links button:hover{color:var(--gb)!important}
.footer__search{border-color:rgba(232,220,200,.2)!important}
.footer__search input{color:#e8dcc8!important}
.footer__search input::placeholder{color:rgba(232,220,200,.35)!important}
.footer__search button{color:rgba(232,220,200,.5)!important;border-left-color:rgba(232,220,200,.18)!important}
.footer__search-hint{color:rgba(232,220,200,.4)!important}
.footer__social-btn{color:rgba(232,220,200,.5)!important}

/* CERTS BAR — design polish, images untouched */
.cert-banner{
  padding:1.6rem 0 1.8rem;
  border-top:1px solid rgba(232,82,28,.22);
  border-bottom:1px solid rgba(232,82,28,.12);
  position:relative;
}
.cert-banner::before{
  content:"";position:absolute;top:3px;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(232,82,28,.35),transparent);
}
.cert-banner__head{margin-bottom:1.1rem}
.cert-banner__head .kicker{margin-bottom:0}
.cert-item{width:312px;padding:.55rem 1.6rem;border-right:1px solid rgba(232,82,28,.14)}
.cert-item__name{font-size:.78rem;letter-spacing:.12em}
.cert-item__sub{font-size:.58rem;color:var(--soft)}
.cert-item__img-wrap{width:92px;height:56px}
.cert-item__logo,.cert-item__logo--lg{max-width:92px!important;max-height:56px!important}

/* MISSION — creed manifesto */
.creed{background:var(--bg);border-bottom:1px solid var(--line);padding:clamp(3.5rem,6vw,6rem) var(--gap)}
.creed__inner{max-width:var(--max);margin:0 auto}
.creed__grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:clamp(2rem,4vw,4rem) clamp(2rem,4vw,5rem);
  margin-top:1.5rem;
}
.creed__item{border-top:2px solid var(--line2);padding-top:1rem}
.creed__item h3{
  font-family:var(--disp);font-size:1.1rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.06em;margin-bottom:.5rem;
  display:flex;align-items:baseline;gap:.5rem;
}
.creed__item h3::before{content:"//";color:var(--gb);font-size:.8em}
.creed__item p{font-family:var(--font);font-size:.8rem;font-weight:300;color:var(--dim);line-height:1.85}
@media(max-width:980px){.creed__grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.creed__grid{grid-template-columns:1fr}}

/* CAPABILITIES — domain register */
.domains{background:var(--bg);border-bottom:1px solid var(--line);padding:clamp(3.5rem,6vw,6rem) var(--gap)}
.domains__inner{max-width:var(--max);margin:0 auto}
.domains__grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:0 clamp(3rem,6vw,7rem);margin-top:1rem;
}
.domain{
  padding:clamp(1.6rem,2.5vw,2.2rem) 0;
  border-bottom:1px solid var(--line);
}
.domain h3{
  font-family:var(--disp);font-size:clamp(1.3rem,2vw,1.8rem);font-weight:800;
  text-transform:uppercase;letter-spacing:.03em;line-height:1;margin-bottom:.6rem;
}
.domain__tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.7rem}
.domain__tags span{
  font-family:var(--disp);font-size:.56rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gb);border:1px solid rgba(232,82,28,.3);padding:.14rem .5rem;
}
.domain p{font-family:var(--font);font-size:.8rem;font-weight:300;color:var(--dim);line-height:1.85;max-width:52ch}
@media(max-width:900px){.domains__grid{grid-template-columns:1fr}}

/* COMPLIANCE — register ledger */
.ledger{background:var(--bg);border-bottom:1px solid var(--line);padding:clamp(3.5rem,6vw,6rem) var(--gap)}
.ledger__inner{max-width:var(--max);margin:0 auto}
.ledger__t{width:100%;border-collapse:collapse;margin-top:1.4rem}
.ledger__t thead th{
  font-family:var(--disp);font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gb);text-align:left;padding:.7rem .9rem;
  border-bottom:2px solid rgba(232,82,28,.4);
}
.ledger__t tbody td{
  font-family:var(--font);font-size:.8rem;font-weight:300;color:var(--dim);
  padding:1rem .9rem;line-height:1.7;vertical-align:top;
  border-bottom:1px solid var(--line);
}
.ledger__t tbody td:first-child{
  font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  color:var(--ink);white-space:nowrap;font-size:.82rem;
}
.ledger__t tbody tr:hover{background:rgba(232,82,28,.025)}
@media(max-width:760px){
  .ledger__t thead{display:none}
  .ledger__t tbody td{display:block;border-bottom:none;padding:.3rem .2rem}
  .ledger__t tbody tr{display:block;border-bottom:1px solid var(--line);padding:.8rem 0}
}

/* PRIVACY — moving left rail follower + back-to-top */
.pp-rail{
  position:fixed;left:10px;top:120px;bottom:90px;width:200px;z-index:90;
  pointer-events:none;opacity:0;transition:opacity .3s;
  display:none;
}
@media(min-width:1280px){.pp-rail{display:block}}
.pp-rail.on{opacity:1}
.pp-rail__line{position:absolute;left:7px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(232,82,28,.35) 12%,rgba(232,82,28,.35) 88%,transparent)}
.pp-rail__cursor{
  position:absolute;left:0;top:0;display:flex;align-items:center;gap:.5rem;
  transition:transform .18s ease-out;will-change:transform;
}
.pp-rail__arrow{color:var(--gb);font-size:.8rem;animation:here-bob 1.6s ease-in-out infinite;text-shadow:0 0 10px rgba(232,82,28,.6)}
.pp-rail__box{
  display:flex;flex-direction:column;gap:.05rem;
  background:var(--bg2);border:1px solid rgba(232,82,28,.4);border-left:3px solid var(--gb);
  padding:.4rem .6rem;max-width:160px;
}
.pp-rail__box b{font-family:var(--disp);font-size:.52rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gb)}
.pp-rail__box i{font-style:normal;font-family:var(--disp);font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);line-height:1.25}
.pp-top{
  position:fixed;right:1.2rem;bottom:5rem;z-index:290;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:.15rem;
  width:46px;height:46px;justify-content:center;
  background:var(--bg2);border:1px solid rgba(232,82,28,.45);color:var(--gb);
  font-family:var(--disp);font-size:.5rem;font-weight:700;letter-spacing:.2em;
  box-shadow:0 8px 28px rgba(0,0,0,.5);
  transition:background .15s,color .15s,transform .15s;
}
.pp-top:hover{background:var(--gb);color:#fff;transform:translateY(-3px)}

/* CHAT — logged-out gate */
.chatw__gate{padding:1.1rem;display:flex;flex-direction:column;gap:.9rem}
.chatw__gate p{font-family:var(--font);font-size:.76rem;font-weight:300;color:rgba(232,220,200,.65);line-height:1.7;margin:0}
.chatw__gate-btns{display:flex;gap:.6rem;flex-wrap:wrap}
.chatw__panel--gate{height:auto}
