/* Source: /executive-polish.css */
/* immo.quick v238 — Executive Polish */
:root{
  --exec-max:1180px;
  --exec-ivory:#f4f1e9;
  --exec-muted:#93a4b8;
  --exec-panel:rgba(255,255,255,.018);
}
html{scroll-behavior:smooth}
body{overflow-x:hidden}
main p,.lead,.hero-sub{max-width:72ch}

/* executive rhythm */
@media(min-width:901px){
  section.cv-auto{padding-top:82px!important;padding-bottom:82px!important}
  .arch-section{padding-top:76px!important;padding-bottom:76px!important}
}

/* typography: logo-adjacent authority without ornament */
.v230-hero h1,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1{
  letter-spacing:-.018em!important;
  text-wrap:balance;
}
.v230-hero p,.arch-hero p,.iq-system-intro p,.ea-hero p,.wid-hero p,.vf-hero p{
  text-wrap:pretty;
}

/* compact executive orientation strip */
.exec-brief{background:#050914;border-bottom:1px solid var(--border);padding:0 40px 38px}
.exec-brief-inner{max-width:var(--exec-max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);background:rgba(255,255,255,.012)}
.exec-brief-item{padding:20px 22px;min-height:118px;border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:space-between}
.exec-brief-item:last-child{border-right:0}
.exec-brief-k{font:700 .52rem var(--f-mono);letter-spacing:.17em;text-transform:uppercase;color:var(--steel4)}
.exec-brief-v{font-family:var(--f-display);font-size:1.08rem;line-height:1.24;color:var(--exec-ivory);margin-top:14px}
.exec-brief-v strong{color:var(--cyan);font-weight:700}

/* reference rail: one consistent way to move through the proof surface */
.exec-reference-rail{background:#060b14;border-bottom:1px solid var(--border);padding:12px 40px}
.exec-reference-rail-inner{max-width:var(--exec-max);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.exec-reference-label{font:700 .5rem var(--f-mono);letter-spacing:.17em;text-transform:uppercase;color:var(--steel4);white-space:nowrap}
.exec-reference-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.exec-reference-links a{font:700 .52rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel2);padding:8px 10px;border:1px solid transparent;text-decoration:none}
.exec-reference-links a:hover,.exec-reference-links a:focus-visible{color:var(--white);border-color:var(--border3);background:rgba(255,255,255,.025);outline:none}
.exec-reference-links a.verify{color:var(--cyan)}
.exec-reference-links a.access{color:var(--ivory);border-color:rgba(255,255,255,.16)}

/* unified CTA geometry */
.btn-primary,.btn-ghost,.nav-cta,.mobile-nav-cta,.mobile-cta-btn{
  border-radius:3px!important;
}
.btn-primary,.btn-ghost{min-height:44px;display:inline-flex;align-items:center;justify-content:center}

/* stronger but quieter panels */
.iq-visual,.v232-claim-terminal,.authority-card,.dim article,.layer{
  box-shadow:none!important;
}

@media(max-width:900px){
  .exec-brief{padding:0 20px 28px}
  .exec-brief-inner{grid-template-columns:1fr 1fr}
  .exec-brief-item:nth-child(2){border-right:0}
  .exec-brief-item:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .exec-reference-rail{padding:10px 20px}
  .exec-reference-rail-inner{align-items:flex-start;flex-direction:column;gap:7px}
  .exec-reference-links{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;scrollbar-width:none}
  .exec-reference-links::-webkit-scrollbar{display:none}
  .exec-reference-links a{white-space:nowrap}
}
@media(max-width:520px){
  .exec-brief-inner{grid-template-columns:1fr}
  .exec-brief-item{border-right:0!important;border-bottom:1px solid var(--border);min-height:auto;gap:8px}
  .exec-brief-item:last-child{border-bottom:0}
  .exec-brief-item:nth-child(2){border-bottom:1px solid var(--border)}
  .exec-brief-v{font-size:1rem;margin-top:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Source: /launch-candidate.css */

/* immo.quick v239 — Launch Candidate / Authority Finish */
:root{--lc-max:1180px;--lc-ivory:#f4f1e9;--lc-faint:rgba(255,255,255,.035)}
.skip-link{position:fixed;left:16px;top:12px;z-index:10000;transform:translateY(-160%);background:#f4f1e9;color:#06101a;padding:10px 14px;border-radius:3px;font:700 .72rem var(--f-mono);text-decoration:none;transition:transform .16s ease}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
img{height:auto;max-width:100%}
main{display:block}
/* stronger section rhythm: less brochure, more reference surface */
.lc-proofline{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(90deg,rgba(201,166,107,.055),transparent 36%,rgba(0,212,255,.04));padding:16px 40px}
.lc-proofline-inner{max-width:var(--lc-max);margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}
.lc-proofline-k{font:700 .5rem var(--f-mono);letter-spacing:.18em;color:var(--gold2);text-transform:uppercase;white-space:nowrap}
.lc-proofline-v{font-family:var(--f-display);font-size:clamp(.95rem,1.6vw,1.16rem);line-height:1.35;color:var(--lc-ivory)}
.lc-proofline-a{font:700 .51rem var(--f-mono);letter-spacing:.1em;color:var(--cyan);text-decoration:none;text-transform:uppercase;white-space:nowrap}
/* canonical truth table */
.lc-truth{max-width:var(--lc-max);margin:0 auto;padding:52px 40px 12px}
.lc-truth-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);background:#050a12}
.lc-truth-cell{padding:22px;border-right:1px solid var(--border)}
.lc-truth-cell:last-child{border-right:0}
.lc-truth-k{font:700 .49rem var(--f-mono);letter-spacing:.17em;text-transform:uppercase;color:var(--steel4);margin-bottom:10px}
.lc-truth-v{font-family:var(--f-display);font-size:1rem;line-height:1.3;color:var(--lc-ivory)}
.lc-truth-no{display:block;margin-top:9px;font:600 .54rem/1.55 var(--f-mono);color:var(--steel3)}
/* responsive content visibility */
@media(min-width:901px){main>section:not(:first-child){content-visibility:auto;contain-intrinsic-size:700px}}
@media(max-width:900px){.lc-proofline{padding:14px 20px}.lc-proofline-inner{grid-template-columns:1fr;gap:6px}.lc-proofline-a{margin-top:2px}.lc-truth{padding:34px 20px 8px}.lc-truth-grid{grid-template-columns:1fr 1fr}.lc-truth-cell:nth-child(2){border-right:0}.lc-truth-cell:nth-child(-n+2){border-bottom:1px solid var(--border)}}
@media(max-width:520px){.lc-truth-grid{grid-template-columns:1fr}.lc-truth-cell{border-right:0!important;border-bottom:1px solid var(--border)}.lc-truth-cell:last-child{border-bottom:0}.lc-proofline-v{font-size:.96rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* v240 — homepage visual continuity: no cropped pre-hero banner */
body.home-v240 .v230-hero{margin-top:var(--nav-offset,86px)}
body.home-v240 .home-system-visual{margin:42px auto 8px;max-width:1180px;border:1px solid rgba(255,255,255,.08);background:#030812;overflow:hidden;position:relative;box-shadow:0 28px 80px rgba(0,0,0,.28)}
body.home-v240 .home-system-visual picture,body.home-v240 .home-system-visual img{display:block;width:100%}
body.home-v240 .home-system-visual img{height:auto;object-fit:contain;filter:saturate(.92) contrast(1.03) brightness(.91)}
body.home-v240 .home-system-visual::after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),inset 0 -85px 110px rgba(2,7,14,.52)}
body.home-v240 .home-system-visual figcaption{position:relative;z-index:2;margin-top:-1px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;padding:16px 20px;background:#050a12;border-top:1px solid rgba(255,255,255,.07)}
body.home-v240 .home-system-visual figcaption span{font-family:var(--f-mono);font-size:.54rem;letter-spacing:.20em;color:var(--gold2);white-space:nowrap}
body.home-v240 .home-system-visual figcaption b{font-family:var(--f-sans);font-size:.78rem;line-height:1.55;font-weight:500;color:var(--steel2)}
@media(max-width:900px){body.home-v240 .v230-hero{margin-top:var(--nav-offset,56px)!important}body.home-v240 .home-system-visual{margin-top:28px}body.home-v240 .home-system-visual figcaption{grid-template-columns:1fr;gap:8px;padding:14px 16px}body.home-v240 .home-system-visual figcaption span{white-space:normal}}
@media(max-width:520px){body.home-v240 .home-system-visual{margin-left:-4px;margin-right:-4px;border-left:0;border-right:0}body.home-v240 .home-system-visual figcaption b{font-size:.72rem}}

/* v244 — Android headline safety / mobile overflow hardening */
@media (max-width: 600px){
  html,body{max-width:100%;overflow-x:hidden!important}
  main,section,header,footer,nav,.container,.wrap,.inner{max-width:100%}

  /* Large institutional display headings must never clip on Android/WebView. */
  h1,
  .v230-hero h1,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,
  .hero h1,.hero-title,.section-title,.display-title{
    box-sizing:border-box!important;
    max-width:100%!important;
    width:auto!important;
    min-width:0!important;
    font-size:clamp(2.15rem,10.2vw,2.8rem)!important;
    line-height:1.02!important;
    letter-spacing:-.018em!important;
    text-wrap:balance;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    hyphens:auto;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* Uppercase architectural statements can contain unusually long tokens. */
  .arch-display,.authority-display,.hero-statement,.big-statement,
  [class*="headline"],[class*="hero"] h1{
    max-width:100%!important;
    overflow-wrap:break-word!important;
  }

  /* Prevent decorative pseudo-elements/transforms from extending the page canvas. */
  h1::before,h1::after{max-width:100vw}
  main>*{min-width:0}
}

@media (max-width: 430px){
  h1,
  .v230-hero h1,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,
  .hero h1,.hero-title,.section-title,.display-title{
    font-size:clamp(2.05rem,9.8vw,2.62rem)!important;
    line-height:1.03!important;
    letter-spacing:-.015em!important;
  }
}

@media (max-width: 380px){
  h1,
  .v230-hero h1,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,
  .hero h1,.hero-title,.section-title,.display-title{
    font-size:clamp(1.95rem,9.4vw,2.35rem)!important;
    line-height:1.04!important;
  }
}

/* ═══════════════════════════════════════════════════════════
   v263 — Responsive layout hardening / overlap remediation
   Central guardrails for legacy and current surfaces.
   ═══════════════════════════════════════════════════════════ */
html,body{width:100%;max-width:100%;}
body{overflow-x:clip!important;}
:where(main,section,article,aside,header,footer,nav,div,a,li,td,th){min-width:0;}
:where(h1,h2,h3,h4,p,li,a,button,td,th,code,.def-node,.def-card,.def-bound,.gd-card-name,.gd-card-desc,.enterprise-metric-label,.enterprise-metric-val,.enterprise-metric-desc){overflow-wrap:anywhere;word-break:normal;}
img,svg,video,canvas{max-width:100%;}
pre{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;}

/* Dense catalogs: avoid a three-column squeeze before true desktop width. */
@media (max-width: 980px){
  .gd-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .gd-card,.gd-card-name,.gd-card-desc{min-width:0!important;max-width:100%!important;}
}
@media (max-width: 700px){
  .gd-grid{grid-template-columns:1fr!important;}
}

/* Gate pages: long gate identifiers and dependency chains must never push the viewport. */
@media (max-width: 700px){
  .def-wrap{padding-left:18px!important;padding-right:18px!important;}
  .def-hero-grid,.def-grid,.def-chain,.def-split{grid-template-columns:1fr!important;}
  .def-chain,.def-node,.def-source,.def-card,.def-bound{width:100%;max-width:100%;min-width:0!important;}
  .def-node{white-space:normal!important;overflow-wrap:anywhere!important;padding-left:10px!important;padding-right:10px!important;}
  .def-source{flex-direction:column!important;align-items:flex-start!important;}
  .def-source a,.gate-link{max-width:100%;white-space:normal!important;overflow-wrap:anywhere!important;}
  .def-erg{grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;}
  .def-erg>*{min-width:0!important;overflow-wrap:anywhere!important;}
}
@media (max-width: 380px){.def-erg{grid-template-columns:1fr!important;}}

/* Homepage execution-boundary diagram: later desktop rules previously re-expanded it on mobile. */
@media (max-width: 800px){
  .v230-boundary-grid{grid-template-columns:1fr!important;gap:0!important;max-width:100%!important;}
  .v230-before,.v230-after,.v230-cut,.v230-stack,.v230-chiprow{min-width:0!important;max-width:100%!important;width:100%!important;}
  .v230-stack b,.v230-small{white-space:normal!important;overflow-wrap:anywhere!important;}
  .v230-aurora{left:0!important;right:0!important;width:100%!important;max-width:100%!important;inset:-10% 0 auto 0!important;}
  .v230-hero::before{max-width:100%;overflow:hidden;}
  .v232-proof-inner{grid-template-columns:1fr!important;min-width:0!important;}
  .v232-claim-terminal,.v232-claim-body{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
}
@media (max-width: 600px){
  .v230-five{grid-template-columns:1fr 1fr!important;}
  .v230-system-grid{grid-template-columns:1fr!important;}
  .v230-system-card{min-width:0!important;max-width:100%!important;padding:28px 22px!important;}
}
@media (max-width: 390px){.v230-five{grid-template-columns:1fr!important;}}

/* Sector architecture chains: wrapping is more readable than forcing a viewport-wide mono line. */
@media (max-width: 700px){
  .sp-v258 .sp-chain{white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere!important;line-height:1.85!important;}
  .sp-v258 .sp-wrap,.sp-v258 .sp-card,.sp-v258 .sp-panel,.sp-v258 .sp-code{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
}

/* Historical GG Gate-0 receipts: meta strip becomes a responsive matrix. */
@media (max-width: 700px){
  .meta-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:100%!important;}
  .meta-cell{min-width:0!important;width:auto!important;border-right:1px solid var(--border)!important;border-bottom:1px solid var(--border)!important;overflow-wrap:anywhere!important;}
  .meta-val,.meta-label{max-width:100%!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
}
@media (max-width: 420px){
  .meta-row{grid-template-columns:1fr!important;}
  .meta-cell{border-right:0!important;}
}

/* CDS legacy page: collapse fixed timeline/stat dimensions on phones. */
@media (max-width: 700px){
  .cds-hero,.cds-hero-inner,.cds-wrap,.cds-section{width:100%!important;max-width:100%!important;min-width:0!important;}
  .cds-doi{max-width:100%!important;white-space:normal!important;flex-wrap:wrap!important;overflow-wrap:anywhere!important;}
  .cds-hero-actions{width:100%!important;max-width:100%!important;}
  .cds-hero-actions>*{max-width:100%!important;white-space:normal!important;}
  .cds-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;}
  .cds-stat{min-width:0!important;border-bottom:1px solid var(--border)!important;overflow-wrap:anywhere!important;}
  .cds-cycle{overflow:visible!important;}
  .cds-cycle-row{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;}
  .cds-cycle-phase,.cds-cycle-time,.cds-cycle-desc,.cds-cycle-cds{flex:none!important;width:100%!important;max-width:100%!important;min-width:0!important;border-right:0!important;border-left:0!important;overflow-wrap:anywhere!important;text-align:left!important;}
  .cds-cycle-cds{display:block!important;}
  .cds-cost-row{grid-template-columns:1fr!important;overflow:visible!important;}
  .cds-cost-cell{min-width:0!important;overflow-wrap:anywhere!important;}
  .cds-catalog-grid{grid-template-columns:1fr!important;}
}
@media (max-width: 420px){.cds-stats{grid-template-columns:1fr!important;}}

/* Pricing: inline desktop grid declarations previously outranked mobile intent via min-content sizing. */
@media (max-width: 700px){
  .enterprise-body,.enterprise-body[style]{grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;overflow:visible!important;}
  .enterprise-body>*{min-width:0!important;max-width:100%!important;}
  .enterprise-metric,.enterprise-metric-label,.enterprise-metric-val,.enterprise-metric-desc{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
  .hero-glow{left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important;}
}

/* STFL: dense proof-property row and market comparison become viewport-safe. */
@media (max-width: 700px){
  .stfl-hero-glow{left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important;}
  .stfl-hero,.stfl-section{max-width:100%!important;min-width:0!important;}
  .stfl-pp{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
  div[style*="grid-template-columns:repeat(6,1fr)"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .mkt-table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
}
@media (max-width: 420px){div[style*="grid-template-columns:repeat(6,1fr)"]{grid-template-columns:1fr!important;}}

/* Mobile data tables: keep the page fixed and make the table itself scroll when columns matter. */
@media (max-width: 700px){
  table{max-width:100%!important;}
  table:not(.no-mobile-scroll){display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  table th,table td{overflow-wrap:anywhere;}
}

/* v263 — second-pass fixes from rendered layout audit */
@media (max-width: 700px){
  .arch-chain{grid-template-columns:1fr!important;}
  .arch-chain .node,.dim>*{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  .fm-erg,.hi-erg,.bk-erg,.iq-erg-wheel{grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;}
  .fm-erg>*,.hi-erg>*,.bk-erg>*,.iq-erg-wheel>*{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  .cj-str,.c2,[class*="hash"],[class*="digest"],[class*="receipt-id"],.mono code,.mono span{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;max-width:100%!important;}
  .mle-table-wrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
  .mle-table{min-width:720px!important;max-width:none!important;display:table!important;}
  .mle-table th,.mle-table td{white-space:nowrap!important;}
  .pipeline-outer{max-width:none!important;}
  .sec-wrap.wide{max-width:100%!important;overflow-x:auto!important;}
  .stage{overflow:visible!important;}
  .g0-pill{white-space:normal!important;overflow-wrap:anywhere!important;}
  .as-hero::before,.ea-hero::before,.inv-hero::before,.mle-hero::before,.sec-hero::before{left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important;}
  .iq-system-intro::before,.authority-surface::before{left:0!important;right:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;text-align:center!important;}
  .iq-system-intro::after{right:0!important;width:100%!important;max-width:100%!important;}
  .v232-proof-surface::before{left:0!important;right:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;}
  .hero-glow{left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important;}
}
@media (max-width: 420px){
  .fm-erg,.hi-erg,.bk-erg,.iq-erg-wheel{grid-template-columns:1fr!important;}
}

/* v263 — final mobile matrix and decorative-layer containment */
@media (max-width: 900px){
  .hero-glow,.stfl-hero-glow{left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important;}
  .sp-v258 .sp-chain{white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere!important;}
  .cj-str,.c2{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;max-width:100%!important;}
}
@media (max-width: 700px){
  .authority-invariants,.iq-closure{grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important;padding-left:18px!important;padding-right:18px!important;}
  .authority-invariants>div,.iq-closure>div{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}
  .vf-section span{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
  div[style*="position:absolute"][style*="width:600px"],div[style*="position:absolute"][style*="width:700px"],div[style*="position:absolute"][style*="width:800px"],div[style*="position:absolute"][style*="width:900px"]{left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important;}
}
@media (max-width: 420px){
  .authority-invariants,.iq-closure{grid-template-columns:1fr!important;}
}

/* v263 — canonical global gate-domain layout
   Covers all .def-v245 surfaces, including normalized pages that previously
   had the markup but no local base definitions. */
.def-v245{background:var(--ink);overflow:hidden}
.def-v245 .def-wrap{max-width:1260px;margin:0 auto;padding:88px 48px;min-width:0}
.def-v245 .def-kicker{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.22em;color:var(--def-gold,#d6b76a);text-transform:uppercase}
.def-v245 .def-hero{position:relative;border-bottom:1px solid var(--border);background:radial-gradient(circle at 68% 28%,rgba(38,91,126,.20),transparent 38%),linear-gradient(180deg,#04090f,#07111b)}
.def-v245 .def-hero .def-wrap{padding-top:110px;padding-bottom:105px}
.def-v245 .def-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:58px;align-items:center}
.def-v245 .def-h1{font-family:var(--f-display);font-size:clamp(3.2rem,6.4vw,7.6rem);line-height:.92;letter-spacing:-.045em;color:#f2efe8;margin:20px 0 26px;max-width:980px;overflow-wrap:anywhere}
.def-v245 .def-h1 em{font-style:normal;color:var(--def-gold,#d6b76a)}
.def-v245 .def-lead{font-size:1.16rem;line-height:1.75;color:var(--steel3);max-width:780px;overflow-wrap:anywhere}
.def-v245 .def-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.def-v245 .def-visual{border:1px solid var(--def-line,rgba(214,183,106,.28));background:rgba(4,9,15,.75);padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.28);min-width:0}
.def-v245 .def-visual img{width:100%;height:auto;display:block;object-fit:contain}
.def-v245 .def-doctrine{margin-top:28px;padding:16px 18px;border-left:2px solid var(--def-gold,#d6b76a);background:rgba(214,183,106,.055);font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;line-height:1.75;color:#d9d4c7;overflow-wrap:anywhere}
.def-v245 .def-section{border-bottom:1px solid var(--border)}
.def-v245 .def-section.alt{background:var(--ink2)}
.def-v245 .def-h2{font-family:var(--f-display);font-size:clamp(2.3rem,4.1vw,4.8rem);line-height:1.02;letter-spacing:-.035em;color:#f2efe8;margin:14px 0 22px;overflow-wrap:anywhere}
.def-v245 .def-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);margin-top:34px;min-width:0}
.def-v245 .def-card{background:#06101a;padding:28px;min-height:190px;min-width:0}
.def-v245 .def-card h3{font-family:var(--f-display);font-size:1.55rem;color:#f2efe8;margin:6px 0 12px;overflow-wrap:anywhere}
.def-v245 .def-card p{color:var(--steel3);line-height:1.65;font-size:.93rem;overflow-wrap:anywhere}
.def-v245 .def-num{font-family:var(--f-mono);color:var(--def-gold,#d6b76a);font-size:.62rem;letter-spacing:.14em}
.def-v245 .def-chain{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:34px;min-width:0}
.def-v245 .def-node{border:1px solid var(--border2);background:#06101a;padding:18px 12px;text-align:center;min-height:90px;display:flex;align-items:center;justify-content:center;font-family:var(--f-mono);font-size:.65rem;letter-spacing:.07em;color:#d8e5ef;position:relative;min-width:0;overflow-wrap:anywhere;word-break:break-word}
.def-v245 .def-node:not(:last-child):after{content:'→';position:absolute;right:-10px;color:var(--def-gold,#d6b76a);z-index:2}
.def-v245 .def-erg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:22px;min-width:0}
.def-v245 .def-erg div{border:1px solid var(--def-line,rgba(214,183,106,.28));padding:20px 14px;background:rgba(214,183,106,.035);text-align:center;min-width:0}
.def-v245 .def-erg b{display:block;font-family:var(--f-display);font-size:2rem;color:var(--def-gold,#d6b76a)}
.def-v245 .def-erg span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.10em;color:var(--steel3);overflow-wrap:anywhere}
.def-v245 .def-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;margin-top:34px}
.def-v245 .def-bound{padding:28px;border:1px solid var(--border2);background:#06101a;min-width:0}
.def-v245 .def-bound.can{border-top:2px solid var(--green)}
.def-v245 .def-bound.cannot{border-top:2px solid #c76b6b}
.def-v245 .def-bound h3{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.16em;color:#fff;overflow-wrap:anywhere}
.def-v245 .def-bound ul{margin:18px 0 0;padding-left:20px;color:var(--steel3);line-height:1.75}
.def-v245 .def-source{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 0;border-top:1px solid var(--border);min-width:0}
.def-v245 .def-source>*{min-width:0}
.def-v245 .def-source strong{color:#eee;font-family:var(--f-display);font-size:1.35rem;overflow-wrap:anywhere}
.def-v245 .def-source a{color:var(--cyan);text-decoration:none;font-family:var(--f-mono);font-size:.68rem;overflow-wrap:anywhere;word-break:break-word}
.def-v245 .def-cta{text-align:center;background:radial-gradient(circle at 50% 0%,rgba(214,183,106,.12),transparent 42%)}
.def-v245 .def-cta .def-lead{margin:0 auto}
.def-v245 .gate-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.7rem;color:var(--cyan);text-decoration:none;margin-top:12px;max-width:100%;overflow-wrap:anywhere}

@media(max-width:980px){
  .def-v245 .def-hero-grid,.def-v245 .def-split{grid-template-columns:1fr}
  .def-v245 .def-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .def-v245 .def-chain{grid-template-columns:1fr}
  .def-v245 .def-node:not(:last-child):after{content:'↓';right:auto;left:50%;bottom:-14px;top:auto;transform:translateX(-50%)}
  .def-v245 .def-erg{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .def-v245 .def-wrap{padding:58px 18px}
  .def-v245 .def-hero .def-wrap{padding-top:68px;padding-bottom:64px}
  .def-v245 .def-grid,.def-v245 .def-split,.def-v245 .def-chain{grid-template-columns:1fr}
  .def-v245 .def-source{display:grid;grid-template-columns:1fr;gap:9px}
  .def-v245 .def-visual{padding:14px}
  .def-v245 .def-card,.def-v245 .def-bound{padding:22px 18px}
  .def-v245 .def-node{min-height:74px;padding:16px 12px}
}
@media(max-width:420px){
  .def-v245 .def-erg{grid-template-columns:1fr}
  .def-v245 .def-h1{font-size:clamp(2.55rem,13vw,4.2rem)}
}

/* v264 — architecture/control surface normalization */
.control-v264{--cv-bg:#07111c;--cv-card:#0b1724;--cv-line:rgba(142,190,220,.20);--cv-cyan:#65d7ff;--cv-gold:#d6b66b;max-width:1180px;margin:0 auto;padding:clamp(36px,6vw,78px) 22px 86px;color:#edf5fb;overflow-wrap:anywhere}
.control-v264 *{box-sizing:border-box;min-width:0}.control-v264 a{overflow-wrap:anywhere}.cv-kicker{font:700 11px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em;color:var(--cv-cyan);text-transform:uppercase;margin-bottom:16px}.cv-hero{padding:clamp(26px,5vw,54px);border:1px solid var(--cv-line);background:linear-gradient(135deg,rgba(101,215,255,.06),rgba(214,182,107,.035));border-radius:18px;position:relative;overflow:hidden}.cv-hero:after{content:"";position:absolute;right:-90px;top:-110px;width:280px;height:280px;border:1px solid rgba(101,215,255,.11);border-radius:50%;pointer-events:none}.cv-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.25rem,6vw,5rem);line-height:.98;letter-spacing:-.035em;margin:0 0 22px;max-width:980px}.cv-lead{font-size:clamp(1rem,2vw,1.22rem);line-height:1.7;color:#c8d6e1;max-width:890px}.cv-flags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.cv-flag{font:700 10px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;padding:8px 10px;border:1px solid var(--cv-line);border-radius:999px;background:rgba(255,255,255,.025);color:#cfe9f5}.cv-boundary{margin:22px 0 0;padding:17px 18px;border-left:3px solid var(--cv-gold);background:rgba(214,182,107,.055);font:700 clamp(.95rem,1.8vw,1.1rem)/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#f3dfad}.cv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.cv-card{border:1px solid var(--cv-line);background:var(--cv-card);border-radius:14px;padding:22px}.cv-card h2{margin:0 0 12px;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;color:#fff}.cv-card p,.cv-card li{color:#b9cad7;line-height:1.65;font-size:.96rem}.cv-card ul{margin:0;padding-left:19px}.cv-card li+li{margin-top:8px}.cv-full{grid-column:1/-1}.cv-chain{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.cv-node{font:700 10px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;padding:9px 10px;border:1px solid rgba(101,215,255,.22);background:rgba(101,215,255,.035);border-radius:8px;color:#d9f5ff}.cv-arrow{color:#6f8b9f}.cv-dims{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.cv-dim{padding:12px 8px;text-align:center;border:1px solid var(--cv-line);border-radius:8px;font:700 9px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em;color:#d9e9f2}.cv-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.cv-link{display:inline-flex;align-items:center;justify-content:center;padding:11px 14px;border:1px solid rgba(101,215,255,.27);border-radius:8px;text-decoration:none;color:#dff7ff;font-weight:700;font-size:.92rem}.cv-link:hover{background:rgba(101,215,255,.08)}
@media(max-width:760px){.control-v264{padding-left:16px;padding-right:16px}.cv-grid{grid-template-columns:1fr}.cv-full{grid-column:auto}.cv-dims{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-dim:last-child{grid-column:1/-1}.cv-hero{padding:26px 20px}.cv-hero h1{font-size:clamp(2rem,11vw,3.5rem)}}

/* ═══════════════════════════════════════════════════════════
   v265 — Universal headline readability / no-hyphen policy
   Headings must remain fully visible at every supported width.
   ═══════════════════════════════════════════════════════════ */
:where(h1,h2,h3,h4,h5,h6,
  .hero-h1,.hero-title,.section-title,.display-title,.display-authority,
  .arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,
  .def-h1,.def-h2,.bk-h1,.bk-h2,.fm-h1,.fm-h2,
  [class*="headline"],[class*="-h1"],[class*="-h2"]){
  max-width:100%!important;
  min-width:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
  hyphens:none!important;
  text-wrap:balance;
}

/* Slightly calmer institutional type scale sitewide. */
:where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){
  font-size:clamp(2.2rem,5.15vw,4.85rem)!important;
  line-height:1.00!important;
  letter-spacing:-.028em!important;
}
:where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){
  font-size:clamp(1.65rem,3.15vw,3.05rem)!important;
  line-height:1.08!important;
  letter-spacing:-.022em!important;
}
:where(h3){
  font-size:min(1.35rem,5.2vw)!important;
  line-height:1.18!important;
}

@media(max-width:900px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){
    font-size:clamp(2.0rem,7.3vw,3.35rem)!important;
    line-height:1.03!important;
  }
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){
    font-size:clamp(1.55rem,5.4vw,2.45rem)!important;
    line-height:1.10!important;
  }
}

@media(max-width:600px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){
    font-size:clamp(1.78rem,8.35vw,2.55rem)!important;
    line-height:1.06!important;
    letter-spacing:-.014em!important;
  }
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){
    font-size:clamp(1.38rem,6.4vw,2.05rem)!important;
    line-height:1.12!important;
    letter-spacing:-.012em!important;
  }
  :where(h3){font-size:clamp(1.02rem,4.8vw,1.28rem)!important;line-height:1.22!important;}
}

@media(max-width:390px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){
    font-size:clamp(1.68rem,8.15vw,2.25rem)!important;
    line-height:1.08!important;
  }
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){
    font-size:clamp(1.30rem,6.15vw,1.82rem)!important;
  }
}


/* v266 — Homepage institutional brand presence */
.v266-hero-brand{
  width:min(430px,62vw);
  margin:0 auto 20px;
  display:flex;
  justify-content:center;
  align-items:center;
}
.v266-hero-brand img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  filter:drop-shadow(0 14px 32px rgba(0,0,0,.32));
}
@media(max-width:800px){
  .v266-hero-brand{width:min(360px,74vw);margin-bottom:18px}
}
@media(max-width:480px){
  .v266-hero-brand{width:min(300px,82vw);margin-bottom:16px}
}
@media(max-width:340px){
  .v266-hero-brand{width:min(260px,84vw);margin-bottom:14px}
}

/* ═══════════════════════════════════════════════════════════
   v271 — Conservative universal headline scale
   Readability outranks display size. No heading may depend on
   mid-word breaking to fit the viewport.
   ═══════════════════════════════════════════════════════════ */
:where(h1,h2,h3,h4,h5,h6,
  .hero-h1,.hero-title,.section-title,.display-title,.display-authority,
  .arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,
  .def-h1,.def-h2,.bk-h1,.bk-h2,.fm-h1,.fm-h2,
  [class*="headline"],[class*="-h1"],[class*="-h2"]){
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  text-wrap:balance;
}
:where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){
  font-size:clamp(2rem,4.15vw,4rem)!important;
  line-height:1.04!important;
  letter-spacing:-.022em!important;
}
:where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){
  font-size:clamp(1.5rem,2.75vw,2.65rem)!important;
  line-height:1.12!important;
  letter-spacing:-.016em!important;
}
@media(max-width:900px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){font-size:clamp(1.82rem,6vw,2.85rem)!important;line-height:1.06!important}
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){font-size:clamp(1.38rem,4.6vw,2.15rem)!important;line-height:1.14!important}
}
@media(max-width:600px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){font-size:clamp(1.55rem,6.6vw,2.15rem)!important;line-height:1.09!important;letter-spacing:-.01em!important}
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){font-size:clamp(1.25rem,5.15vw,1.8rem)!important;line-height:1.16!important}
}
@media(max-width:390px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,[class*="-h1"]){font-size:clamp(1.38rem,6vw,1.72rem)!important;line-height:1.1!important}
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]){font-size:clamp(1.16rem,4.8vw,1.48rem)!important}
}

/* ═══════════════════════════════════════════════════════════
   v274 — Editorial & Visual Consistency
   Meaning parity, not wording parity. Headings stay readable,
   optically balanced and inside their own layout at all widths.
   ═══════════════════════════════════════════════════════════ */
:root{--v274-reading-width:1180px;--v274-heading-width:1040px}

/* A heading is never allowed to create layout height by overflowing its box. */
:where(h1,h2,h3,h4,h5,h6,
  .hero-h1,.hero-title,.display-title,.display-authority,.section-title,
  .arch-hero h1,.iq-system-intro h1,.ea-h1,.wid-h1,.vf-hero h1,
  .def-h1,.bk-h1,.fm-h1,.pc-h1,.sp-h1,.iv-h1,.ps254-h1,.i255-h1,.hi-h1,.av-h1,
  [class*="-h1"],[class*="-h2"]){
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  text-wrap:balance;
}

/* One calm institutional H1 scale across all historical page generations. */
:where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,
  .ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,.pc-h1,.sp-h1,.iv-h1,
  .ps254-h1,.i255-h1,.hi-h1,.av-h1,[class*="-h1"]):not(.visually-hidden){
  font-size:clamp(2rem,3.65vw,3.65rem)!important;
  line-height:1.065!important;
  letter-spacing:-.018em!important;
  margin-top:clamp(10px,1.2vw,18px)!important;
  margin-bottom:clamp(18px,2vw,28px)!important;
}

/* H2s must read as section titles, not compete with the hero. */
:where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]):not(.visually-hidden){
  font-size:clamp(1.42rem,2.25vw,2.28rem)!important;
  line-height:1.16!important;
  letter-spacing:-.012em!important;
}

/* Older sector templates used narrow text columns beside visuals. Stack before typography becomes cramped. */
:where(.pc-hero-grid,.fm-hero-grid,.bk-hero-grid,.sp-hero-grid,.iv-hero-grid,.ps254-hero-grid,.i255-hero-grid,.hi-hero-grid,.av-hero-grid){
  min-width:0!important;
}
@media(max-width:1120px){
  :where(.pc-hero-grid,.fm-hero-grid,.bk-hero-grid,.sp-hero-grid,.iv-hero-grid,.ps254-hero-grid,.i255-hero-grid,.hi-hero-grid,.av-hero-grid){
    grid-template-columns:1fr!important;
    gap:clamp(26px,5vw,44px)!important;
    align-items:start!important;
  }
  :where(.pc-visual,.fm-visual,.bk-visual,.sp-visual,.iv-visual,.ps254-visual,.i255-visual,.hi-visual,.av-visual){
    justify-self:start!important;
    width:min(100%,560px)!important;
    max-width:560px!important;
  }
}
@media(max-width:900px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,
    .ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,.pc-h1,.sp-h1,.iv-h1,
    .ps254-h1,.i255-h1,.hi-h1,.av-h1,[class*="-h1"]):not(.visually-hidden){
    font-size:clamp(1.78rem,5.3vw,2.7rem)!important;
    line-height:1.085!important;
  }
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]):not(.visually-hidden){
    font-size:clamp(1.32rem,4vw,1.95rem)!important;
    line-height:1.18!important;
  }
}
@media(max-width:600px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,
    .ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,.pc-h1,.sp-h1,.iv-h1,
    .ps254-h1,.i255-h1,.hi-h1,.av-h1,[class*="-h1"]):not(.visually-hidden){
    font-size:clamp(1.48rem,6.15vw,1.92rem)!important;
    line-height:1.12!important;
    letter-spacing:-.006em!important;
  }
  :where(h2,.h2,.section-title,.display-authority,.def-h2,.bk-h2,.fm-h2,[class*="-h2"]):not(.visually-hidden){
    font-size:clamp(1.18rem,4.7vw,1.55rem)!important;
    line-height:1.2!important;
  }
}
@media(max-width:390px){
  :where(h1,.hero-h1,.hero-title,.display-title,.arch-hero h1,.iq-system-intro h1,
    .ea-h1,.wid-h1,.vf-hero h1,.def-h1,.bk-h1,.fm-h1,.pc-h1,.sp-h1,.iv-h1,
    .ps254-h1,.i255-h1,.hi-h1,.av-h1,[class*="-h1"]):not(.visually-hidden){
    font-size:clamp(1.34rem,5.8vw,1.62rem)!important;
    line-height:1.14!important;
  }
}

/* Machine Law keeps its deliberate three-line composition, with safer mobile sizing. */
.ml-h1{font-size:clamp(1.9rem,2.7vw,2.7rem)!important;max-width:780px!important;line-height:1.07!important}
.ml-h1-line{display:block!important;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important}
@media(max-width:620px){.ml-h1{font-size:clamp(1.24rem,5.25vw,1.72rem)!important;line-height:1.12!important}}
@media(max-width:350px){.ml-h1{font-size:1.18rem!important}}


/* v274 FINAL — layout containment and German editorial release guard */
html,body{max-width:100%;overflow-x:clip}
main,section,article,header,footer,nav,div{min-width:0}
:where(.wrap,.container,.inner,[class*="-wrap"],[class*="-inner"],[class*="-grid"],[class*="-hero"]){min-width:0;max-width:100%}
:where(h1,h2,h3,h4,h5,h6){contain:inline-size none;max-inline-size:100%;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;-webkit-hyphens:none!important}
:where(p,li,dd,dt,figcaption,blockquote){max-width:100%}
:where(code,pre,.mono,[class*="hash"],[class*="digest"],[class*="receipt"]){max-width:100%;overflow-wrap:anywhere;word-break:break-word}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
pre,table{max-width:100%}
pre{overflow:auto}
.table-wrap,[class*="table-wrap"]{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:760px){
  :where([style*="grid-template-columns:1fr 1fr"],[style*="grid-template-columns: 1fr 1fr"]){grid-template-columns:1fr!important}
}

/* ═══════════════════════════════════════════════════════════
   v275 — Responsive Presentation Repair
   Fixes desktop hero collisions, arbitrary word splitting,
   narrow-screen card pressure and mobile interaction geometry.
   ═══════════════════════════════════════════════════════════ */

/* Historical two-column sector heroes need more room for German compound nouns.
   Stack before a headline can intrude into the visual column. */
@media(max-width:1360px){
  :where(.pc-hero-grid,.fm-hero-grid,.bk-hero-grid,.sp-hero-grid,.iv-hero-grid,
    .ps254-hero-grid,.i255-hero-grid,.hi-hero-grid,.av-hero-grid){
    grid-template-columns:1fr!important;
    gap:clamp(28px,4vw,46px)!important;
    align-items:start!important;
  }
  :where(.pc-visual,.fm-visual,.bk-visual,.sp-visual,.iv-visual,
    .ps254-visual,.i255-visual,.hi-visual,.av-visual){
    width:min(100%,640px)!important;
    max-width:640px!important;
    justify-self:start!important;
  }
}

/* Never split ordinary words letter-by-letter. IDs/hashes still wrap safely. */
:where(.ev-mono-val,.ev-mono-label,.iv-state,.pc-state,.fm-state,.bk-state,.sp-state,
  .ps254-state,.i255-state,.hi-state,.av-state,.gd-card-name,.gd-card-desc){
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

/* Responsive cards, boundaries and action rows across the historical sector templates. */
@media(max-width:760px){
  :where(.pc-grid,.fm-grid,.bk-grid,.sp-grid,.iv-grid,.ps254-grid,.i255-grid,.hi-grid,.av-grid,
    .pc-boundary,.fm-boundary,.bk-boundary,.sp-boundary,.iv-boundary,.ps254-boundary,.i255-boundary,.hi-boundary,.av-boundary){
    grid-template-columns:1fr!important;
  }
  :where(.pc-wrap,.fm-wrap,.bk-wrap,.sp-wrap,.iv-wrap,.ps254-wrap,.i255-wrap,.hi-wrap,.av-wrap){
    width:min(100% - 32px,1180px)!important;
  }
  :where(.pc-card,.fm-card,.bk-card,.sp-card,.iv-card,.ps254-card,.i255-card,.hi-card,.av-card,
    .pc-panel,.fm-panel,.bk-panel,.sp-panel,.iv-panel,.ps254-panel,.i255-panel,.hi-panel,.av-panel){
    padding:20px!important;
    min-height:0!important;
  }
  :where(.pc-actions,.fm-actions,.bk-actions,.sp-actions,.iv-actions,.ps254-actions,.i255-actions,.hi-actions,.av-actions){
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  :where(.pc-actions,.fm-actions,.bk-actions,.sp-actions,.iv-actions,.ps254-actions,.i255-actions,.hi-actions,.av-actions) :where(a,button){
    width:100%!important;
    min-height:44px!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

/* Catalog filters stay usable without squeezing labels into unreadable chips. */
@media(max-width:700px){
  .gd-filters{
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    padding:0 16px 8px!important;
    scrollbar-width:none;
  }
  .gd-filters::-webkit-scrollbar{display:none}
  .gd-filter-btn{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;min-height:40px}
  .gd-hero{padding-left:16px!important;padding-right:16px!important}
  .gd-body{padding-left:16px!important;padding-right:16px!important}
}

/* Evidence pages: readable metadata rather than mid-word fragmentation. */
@media(max-width:600px){
  .ev-body{padding-left:16px!important;padding-right:16px!important}
  .ev-mono-cell,.ev-boundary-col{padding:18px!important}
  .ev-mono-val{font-size:.72rem!important;line-height:1.65!important}
  .ev-verify-row{align-items:flex-start!important;gap:12px!important;flex-direction:column!important}
  .ev-verify-box{padding:22px 16px!important}
  .ev-verify-actions{display:grid!important;grid-template-columns:1fr!important}
  .ev-verify-actions :where(a,button){width:100%!important;min-height:44px!important}
}

/* Global narrow-screen containment: keep content readable, not merely clipped. */
@media(max-width:600px){
  :where(.section-wrap,.section-full,[class*="-wrap"],[class*="-inner"]){min-width:0!important}
  :where(p,li,dd,dt,figcaption){overflow-wrap:anywhere}
  :where(.btn,.btn-primary,.btn-ghost,.nav-cta,.mobile-nav-cta,.mobile-cta-btn){white-space:normal!important}
  :where(input,select,textarea,button){max-width:100%}
  figure{max-width:100%;margin-left:0;margin-right:0}
}

/* Catalog doctrine belongs to the catalog flow, never in front of the fixed navigation. */
.gd-boundary-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--ink2)}
.gd-boundary-inner{max-width:1100px;margin:0 auto;padding:34px 40px;text-align:center}
.gd-boundary-kicker{font:700 .58rem var(--f-mono);letter-spacing:.18em;color:var(--gold2);text-transform:uppercase;margin-bottom:10px}
.gd-boundary-title{font-family:var(--f-display);color:var(--white);margin:0 auto 12px!important;max-width:900px!important}
.gd-boundary-copy{font-size:.82rem;line-height:1.75;color:var(--steel2);max-width:820px!important;margin:0 auto}
@media(max-width:700px){.gd-boundary-inner{padding:28px 16px}.gd-boundary-title{font-size:1.22rem!important}.gd-boundary-copy{font-size:.78rem}}

/* At wide desktop sizes, give two-column sector heroes enough real width before they split. */
@media(min-width:1361px){
  :where(.pc-wrap,.fm-wrap,.bk-wrap,.sp-wrap,.iv-wrap,.ps254-wrap,.i255-wrap,.hi-wrap,.av-wrap){
    width:min(1400px,calc(100% - 64px))!important;
    max-width:1400px!important;
  }
  :where(.pc-hero-grid,.fm-hero-grid,.bk-hero-grid,.sp-hero-grid,.iv-hero-grid,.ps254-hero-grid,.i255-hero-grid,.hi-hero-grid,.av-hero-grid){
    grid-template-columns:minmax(0,1.38fr) minmax(320px,.62fr)!important;
    gap:52px!important;
  }
}
