/* Haze — Terminal Editorial: dark technical canvas, lime signal, precise grid. */
:root{--bg:#090a09;--fg:#f1f2eb;--lime:#eaff00;--soft:#b8bcb2;--dim:#73786f;--border:rgba(241,242,235,.17);--line:rgba(234,255,0,.34)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);color:var(--fg);font-family:'Space Grotesk',Arial,sans-serif;-webkit-font-smoothing:antialiased}body:before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.035;background-image:linear-gradient(90deg,rgba(234,255,0,.08) 1px,transparent 1px),linear-gradient(rgba(234,255,0,.05) 1px,transparent 1px);background-size:33.333% 100%,100% 84px;z-index:10}a{color:inherit;text-decoration:none}::selection{background:var(--lime);color:var(--bg)}
.site-shell{max-width:1440px;margin:0 auto;padding:0 5vw;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:92px;border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:12px;font-size:1.36rem;font-weight:700;letter-spacing:.12em}.topbar-meta,.hero-meta,.toc-label,.eyebrow,.footer,.section-number{font-family:'IBM Plex Mono',monospace}.topbar-meta{display:flex;align-items:center;gap:24px;color:var(--dim);font-size:.64rem;letter-spacing:.13em}.topbar-year{border:1px solid var(--lime);color:var(--lime);padding:7px 10px}.registration-line{display:grid;grid-template-columns:repeat(3,1fr);height:11px}.registration-line span{border-right:1px solid var(--line)}.registration-line span:first-child{border-left:1px solid var(--line)}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 190px;min-height:420px;padding:92px 0 72px;border-bottom:1px solid var(--border);background-image:linear-gradient(90deg,rgba(234,255,0,.08) 1px,transparent 1px),linear-gradient(rgba(234,255,0,.055) 1px,transparent 1px);background-size:33.333% 100%,100% 84px}.hero-copy{position:relative;z-index:1;max-width:770px;animation:reveal .65s cubic-bezier(.23,1,.32,1) both}.eyebrow{margin:0 0 20px;color:var(--soft);font-size:.68rem;letter-spacing:.22em}.eyebrow.lime{color:var(--lime)}.hero h1{margin:0;font-family:'Barlow Condensed',sans-serif;font-size:clamp(5.3rem,12vw,11.4rem);line-height:.78;letter-spacing:-.055em;font-weight:600;text-transform:uppercase}.hero h1 em{color:var(--lime);font-style:normal}.hero-lede{max-width:490px;margin:38px 0 0 7px;color:var(--soft);font-size:clamp(1rem,1.7vw,1.24rem);line-height:1.6}.hero-meta{align-self:end;display:flex;flex-direction:column;gap:9px;color:var(--dim);font-size:.6rem;letter-spacing:.1em}.hero-meta strong{color:var(--fg);font-size:.72rem;font-weight:500}.hero:after{content:'HZ / 001';position:absolute;right:0;bottom:11px;color:var(--dim);font-family:'IBM Plex Mono',monospace;font-size:.56rem;letter-spacing:.16em}
.content-layout{display:grid;grid-template-columns:240px minmax(0,710px);gap:clamp(60px,10vw,160px);justify-content:center;padding:92px 0 140px}.toc{align-self:start;position:sticky;top:32px}.toc-label{color:var(--lime);font-size:.62rem;letter-spacing:.18em;margin-bottom:18px}.toc nav{border-top:1px solid var(--border)}.toc nav a{display:grid;grid-template-columns:26px 1fr 13px;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid var(--border);color:var(--soft);font-size:.8rem;transition:color .18s ease,padding-left .18s ease}.toc nav a span{color:var(--lime);font-family:'IBM Plex Mono',monospace;font-size:.62rem}.toc nav a i{width:9px;height:9px;background:var(--lime);clip-path:polygon(0 0,100% 0,42% 100%);opacity:0;transition:opacity .18s ease}.toc nav a:hover{padding-left:8px;color:var(--fg)}.toc nav a:hover i{opacity:1}.toc-note{display:flex;gap:10px;margin-top:38px;color:var(--dim);font-size:.72rem;line-height:1.45}.signal-check{width:16px;height:16px;flex:0 0 auto;background:var(--lime);clip-path:polygon(0 0,100% 0,42% 42%,100% 42%,42% 100%,0 100%,58% 42%,0 42%)}
.policy-content{min-width:0}.policy-section{scroll-margin-top:32px;padding:0 0 74px;margin-bottom:74px;border-bottom:1px solid var(--border);animation:reveal .7s cubic-bezier(.23,1,.32,1) both}.first-section{padding-top:0}.last-section{padding-bottom:0;margin-bottom:0;border-bottom:0}.section-heading{display:grid;grid-template-columns:56px 1fr;gap:22px;margin-bottom:31px}.section-number{color:var(--lime);font-size:.72rem;letter-spacing:.1em;padding-top:7px}.section-heading h2{margin:0;max-width:560px;font-family:'Barlow Condensed',sans-serif;font-size:clamp(2.25rem,4.4vw,3.65rem);line-height:.9;letter-spacing:-.025em;font-weight:600;text-transform:uppercase}.section-heading .eyebrow{margin-bottom:12px}.policy-content p{margin:0 0 20px;color:var(--soft);font-size:1.03rem;line-height:1.8}.signal-list{margin:28px 0 26px;padding:0;list-style:none}.signal-list li{position:relative;padding:12px 0 12px 24px;border-top:1px solid var(--border);color:var(--soft);font-size:.98rem;line-height:1.55}.signal-list li:last-child{border-bottom:1px solid var(--border)}.signal-list li:before{content:'';position:absolute;left:2px;top:18px;width:9px;height:9px;background:var(--lime);clip-path:polygon(0 0,100% 0,40% 100%)}.callout{display:grid;grid-template-columns:36px 1fr;gap:15px;margin-top:32px;padding:22px 20px;border-left:2px solid var(--lime);background:rgba(234,255,0,.055)}.callout p{margin:0;color:var(--fg);font-size:.92rem;line-height:1.55}.callout-marker{width:18px;height:18px;margin-top:2px;background:var(--lime);clip-path:polygon(0 0,100% 0,38% 38%,100% 38%,38% 100%,0 100%,62% 38%,0 38%)}.contact-placeholder{display:inline-flex;align-items:center;gap:8px;color:var(--lime);border-bottom:1px solid var(--lime);padding:5px 0;font-family:'IBM Plex Mono',monospace;font-size:.78rem;letter-spacing:.04em}.whatsapp-button{display:inline-flex;align-items:center;gap:12px;margin-top:6px;padding:15px 18px;background:var(--lime);color:var(--bg);font-family:'IBM Plex Mono',monospace;font-size:.76rem;font-weight:600;letter-spacing:.06em;transition:transform .18s ease,background .18s ease}.whatsapp-button:hover{background:var(--fg);transform:translateY(-2px)}.whatsapp-button .angular-link-mark{background:var(--bg)}.angular-link-mark{display:inline-block;width:10px;height:10px;background:var(--lime);clip-path:polygon(0 0,100% 0,44% 100%)}.review-note{display:flex;gap:10px;align-items:flex-start;margin-top:38px;padding-top:18px;border-top:1px solid var(--border);color:var(--dim);font-family:'IBM Plex Mono',monospace;font-size:.64rem;line-height:1.5}.review-mark{width:16px;height:16px;flex:0 0 auto;background:var(--lime);clip-path:polygon(0 0,100% 0,100% 35%,35% 100%,0 100%,0 65%,65% 0)}
.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0 31px;border-top:1px solid var(--border);color:var(--dim);font-size:.58rem;letter-spacing:.12em}.footer-brand{display:flex;align-items:center;gap:10px;color:var(--fg)}.footer a{color:var(--lime);letter-spacing:.08em}@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:800px){.site-shell{padding:0 6vw}.topbar{min-height:76px}.topbar-meta span:first-child{display:none}.hero{display:block;min-height:470px;padding:74px 0 50px}.hero-lede{margin-top:30px;margin-left:0;max-width:390px}.hero-meta{margin-top:52px}.content-layout{display:block;padding:60px 0 95px}.toc{position:static;margin-bottom:72px}.toc nav{display:grid;grid-template-columns:1fr 1fr}.toc nav a{padding:13px 8px 13px 0}.toc-note{margin-top:24px;max-width:260px}.policy-section{padding-bottom:55px;margin-bottom:55px}.policy-content p{font-size:.98rem}.footer{align-items:flex-start;flex-direction:column;padding-bottom:25px}}@media(max-width:480px){.topbar-meta{gap:10px;font-size:.56rem}.brand{font-size:1.1rem}.hero h1{font-size:clamp(4.1rem,19vw,6.4rem)}.section-heading{grid-template-columns:38px 1fr;gap:13px}.section-heading h2{font-size:2rem}.toc nav{grid-template-columns:1fr}.toc nav a{max-width:310px}}

/* Responsive pass: preserve hierarchy from 320px upward. */
@media (min-width: 801px) and (max-width: 1100px) {
  .site-shell { padding: 0 4vw; }
  .content-layout { grid-template-columns: 200px minmax(0, 1fr); gap: 7vw; }
  .hero h1 { font-size: clamp(5rem, 11vw, 8.5rem); }
}
@media (max-width: 800px) {
  .site-shell { width: 100%; max-width: 100%; padding: 0 6vw; }
  .topbar { min-height: 72px; }
  .brand { font-size: 1.08rem; }
  .topbar-meta { gap: 10px; font-size: .56rem; }
  .topbar-meta span:first-child { display: none; }
  .hero { display: block; min-height: 0; padding: 68px 0 54px; background-size: 50% 100%, 100% 72px; }
  .hero h1 { font-size: clamp(4rem, 17vw, 7rem); line-height: .8; letter-spacing: -.06em; overflow-wrap: anywhere; }
  .hero-lede { max-width: 33rem; margin: 30px 0 0; font-size: 1rem; line-height: 1.55; }
  .hero-meta { margin-top: 48px; }
  .hero:after { right: 0; }
  .content-layout { display: block; padding: 58px 0 92px; }
  .toc { position: static; margin-bottom: 66px; }
  .toc nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .toc nav a { min-width: 0; padding: 13px 8px 13px 0; font-size: .75rem; }
  .toc nav a i { display: none; }
  .toc-note { margin-top: 24px; max-width: 260px; }
  .section-heading { grid-template-columns: 38px minmax(0, 1fr); gap: 13px; }
  .section-heading h2 { font-size: clamp(2rem, 9vw, 3.2rem); overflow-wrap: anywhere; }
  .policy-content p { font-size: .98rem; line-height: 1.7; }
  .signal-list li { font-size: .9rem; }
  .whatsapp-button { max-width: 100%; font-size: .68rem; line-height: 1.35; }
  .review-note { font-size: .6rem; }
  .footer { align-items: flex-start; flex-direction: column; padding-bottom: 25px; }
}
@media (max-width: 480px) {
  .site-shell { padding: 0 5vw; }
  .topbar { min-height: 66px; }
  .topbar-year { padding: 6px 8px; }
  .hero { padding-top: 58px; }
  .hero h1 { font-size: clamp(3.6rem, 18vw, 5.6rem); }
  .hero-lede { font-size: .94rem; }
  .toc nav { grid-template-columns: 1fr; }
  .toc nav a { max-width: 320px; }
  .policy-section { padding-bottom: 50px; margin-bottom: 50px; }
  .section-heading { margin-bottom: 25px; }
  .callout { grid-template-columns: 25px minmax(0, 1fr); gap: 10px; padding: 17px 14px; }
  .whatsapp-button { width: 100%; justify-content: space-between; padding: 14px; }
  .footer { gap: 14px; font-size: .52rem; }
}
@media (max-width: 360px) {
  .site-shell { padding: 0 16px; }
  .topbar-meta { font-size: .5rem; }
  .brand { font-size: 1rem; letter-spacing: .1em; }
  .hero { padding: 52px 0 44px; }
  .hero h1 { font-size: clamp(3.15rem, 17vw, 4.8rem); line-height: .82; }
  .eyebrow { font-size: .58rem; letter-spacing: .16em; }
  .hero-lede { font-size: .88rem; line-height: 1.55; }
  .hero-meta { font-size: .52rem; }
  .content-layout { padding-top: 46px; }
  .toc-label { font-size: .55rem; }
  .toc nav a { font-size: .72rem; }
  .section-heading { grid-template-columns: 30px minmax(0, 1fr); gap: 9px; }
  .section-number { font-size: .62rem; }
  .section-heading h2 { font-size: clamp(1.85rem, 10vw, 2.65rem); }
  .policy-content p { font-size: .9rem; }
  .signal-list li { padding-left: 20px; font-size: .84rem; }
  .whatsapp-button { font-size: .61rem; letter-spacing: .035em; }
  .review-note { font-size: .55rem; }
}
