/* Home hero (from d4-photo-nohaze.html). Loaded after site.css. */
html body main section.hero{background:var(--navy);color:var(--paper);position:relative;overflow:hidden;padding-block:52px 44px}
html body main section.peek{padding-block:0}
html body .d-grid h1{font-size:clamp(44px,4.6vw,64px);font-weight:600;line-height:1.02;letter-spacing:-.04em}
.d-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.d-text{max-width:580px}
.hero .eyebrow{font-size:12px;letter-spacing:.18em;color:var(--teal)}
.d-grid h1{margin:22px 0 0;font:600 clamp(44px,4.6vw,64px)/1.02 var(--display);letter-spacing:-.04em;text-wrap:balance;max-width:12ch;color:var(--paper)}
.d-grid .sub{color:#A9B6C8;max-width:480px;margin-top:22px;font-size:20px;line-height:1.5}
.hero-cta{display:flex;gap:26px;flex-wrap:wrap;align-items:center;margin-top:30px}
.hero a:focus-visible{outline:3px solid var(--paper);outline-offset:3px;box-shadow:0 0 0 6px var(--navy)}
.textlink{display:inline-flex;align-items:center;min-height:44px;font-weight:700;font-size:16px;color:var(--paper);text-decoration:underline;text-decoration-color:var(--teal);text-decoration-thickness:2px;text-underline-offset:6px}
/* ledger aside */
.aside{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;border-top:1px solid #ffffff22;max-width:480px}
.aside-col{padding:14px 18px 0 0;min-width:0}
.aside-col+.aside-col{border-left:1px solid #ffffff22;padding-left:20px}
.aside-col b{display:block;font:700 30px/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--paper)}
.aside-col.with b{color:var(--teal)}
.aside-col span{display:block;font-size:15px;line-height:1.35;color:#C3CEDD;margin-top:6px}
.aside-col small{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#A9B6C8;margin-left:4px}
.aside-src{grid-column:1/-1;margin-top:12px;font-size:13px;color:#A9B6C8}
/* stage */
.d-stage{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:0;align-items:center;min-width:0}
.d-phonewrap{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}
.d-cap{display:flex;align-items:center;gap:10px;font-size:14px;color:#D3DCE8;font-weight:600}
.st{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:14px;border-radius:999px;padding:3px 10px 3px 8px;line-height:1.25;color:var(--navy);vertical-align:1px}
.st svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round}
.st.a{background:var(--accepting)}.st.f{background:var(--full);color:#fff}
.smp{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--amber-soft);color:var(--amber-ink);border-radius:999px;padding:2px 10px;white-space:nowrap}
/* map card */
.mapc{margin-left:-8px;position:relative;z-index:2;background:var(--paper);color:var(--navy);border-radius:16px;overflow:hidden;box-shadow:0 30px 60px -26px #000b}
.mapc svg.map{display:block;width:100%;height:150px}
.mapc-b{padding:10px 12px 12px;border-top:1px solid var(--line)}
.mapc-b b{display:block;font:600 15px/1.25 var(--display)}
.mapc-t{font-size:13px;max-width:none;font-size:13px;line-height:1.35;color:var(--muted);margin:3px 0 7px}
.mapc-h{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;font:600 13px/1 var(--display);border-bottom:1px solid var(--line);background:var(--cream)}
.aside-m{display:none}
@media(max-width:1100px){.d-grid{grid-template-columns:1fr;gap:40px}.d-text .aside{display:none}.aside-m{display:grid;order:3;margin-top:0;max-width:none}.d-stage{order:2}.d-stage{max-width:620px;justify-self:center;width:100%}}
@media(max-width:640px){
  html body main section.hero{padding-block:36px 40px}
  .d-grid h1{font-size:42px}
  .d-grid .sub{font-size:18px}
  .hero-cta{flex-direction:column;align-items:stretch;gap:2px}
  .hero-cta .btn{justify-content:center;min-height:52px}
  .textlink{justify-content:center}
  .aside{margin-top:26px}
  .aside-col b{font-size:28px}
  .d-stage{grid-template-columns:1fr;gap:20px;max-width:340px}
  .mapc{margin-left:0}
  .mapc svg.map{height:130px}}

/* real phone */
.rp{position:relative;width:322px;margin:0;padding:11px;border-radius:54px;background:linear-gradient(145deg,#2A3341,#0A0F17 55%,#1B2330);box-shadow:inset 0 0 0 1.5px #59647A,inset 0 0 0 4px #0B111A,0 40px 80px -28px rgba(0,0,0,.75)}
.rp-btn{position:absolute;width:4px;border-radius:2px;background:#3A4456}
.rp-vol1{left:-3px;top:150px;height:52px}.rp-vol2{left:-3px;top:214px;height:52px}.rp-pwr{right:-3px;top:184px;height:84px}
.rp-scr{position:relative;border-radius:44px;overflow:hidden;background:#fff;height:640px;display:flex;flex-direction:column;font-family:inherit}
.rp-status{display:flex;align-items:center;justify-content:space-between;height:50px;padding:0 26px 0 34px;color:#0B1F3A;font-size:15px}
.rp-status b{font-weight:600;letter-spacing:-.01em}
.rp-island{position:absolute;left:50%;top:11px;transform:translateX(-50%);width:104px;height:30px;border-radius:20px;background:#05080D}
.rp-icons{display:flex;gap:6px;align-items:center}.rp-icons svg{height:11px;width:auto;fill:#0B1F3A}.rp-icons svg:last-child{height:12px}
.rp-nav{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;padding:2px 12px 10px;border-bottom:1px solid #E7E7EA;background:#F7F7F8}
.rp-back svg{width:11px;height:19px;fill:none;stroke:#0C857C;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.rp-contact{display:flex;flex-direction:column;align-items:center;gap:4px}
.rp-contact b{font-size:12px;font-weight:600;color:#0B1F3A}
.rp-av{width:42px;height:42px;border-radius:50%;background:#0B1F3A;display:grid;place-items:center}.rp-av img{width:20px;height:20px}
.rp-thread{flex:1;padding:8px 14px 6px;display:flex;flex-direction:column;gap:3px;overflow:hidden;background:#fff}
.rp-day{margin:6px 0 4px;text-align:center;font-size:11px;font-weight:600;color:#8A8F98}
.rp-m{max-width:78%;padding:8px 13px;border-radius:19px;font-size:15px;line-height:1.3}
.rp-m.out{align-self:flex-end;background:#0C857C;color:#fff;font-weight:700;border-bottom-right-radius:6px}
.rp-m.in{align-self:flex-start;background:#ECECEF;color:#0B1F3A;border-bottom-left-radius:6px}
.rp-m .st{vertical-align:1px;margin:4px 0}
.rp-card{display:flex;flex-direction:column;gap:3px;padding:10px 13px}
.rp-card-k{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5A6B82}
.rp-card b{font-size:14px}
.rp-card .st{align-self:flex-start}
.rp-meta{margin:0 4px 6px;font-size:11px;color:#8A8F98;font-variant-numeric:tabular-nums}.rp-meta.r{text-align:right}
.rp-compose{display:flex;align-items:center;gap:8px;padding:6px 12px 22px;background:#fff}
.rp-plus{width:30px;height:30px;border-radius:50%;background:#ECECEF;display:grid;place-items:center;color:#5A6B82;font-size:20px;line-height:1}
.rp-field{flex:1;border:1px solid #D9D9DE;border-radius:18px;padding:6px 14px;font-size:14px;color:#9AA0A8}
.rp-home{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);width:120px;height:5px;border-radius:3px;background:#0B1F3A}
@media (max-width:700px){.rp{width:min(310px,100%);margin:0 auto}.rp-scr{height:620px}.rp-island{width:88px}.rp-status{padding:0 20px 0 28px}}

html body section.hero.dark{position:relative;overflow:hidden}
html body section.hero.dark > .wrap{position:relative;z-index:1}
.d-stage{grid-template-columns:minmax(0,1fr) 230px}
.popwrap{position:relative;display:flex;flex-direction:column;align-items:center;margin-left:-6px;transform:translateY(40px)}
.popwrap .mapc{margin:0;width:230px;overflow:visible;border-radius:14px}
.popwrap .mapc-h{border-radius:14px 14px 0 0}
.popwrap .mapc::after{content:"";position:absolute;left:50%;bottom:-11px;width:22px;height:22px;background:var(--paper);transform:translateX(-50%) rotate(45deg);border-radius:0 0 5px 0;box-shadow:6px 6px 14px -8px #0008}
.popwrap .mapc-b{position:relative;z-index:1;background:var(--paper);border-radius:0 0 14px 14px}
@media (max-width:900px){.d-stage{grid-template-columns:1fr}.popwrap{transform:none;margin:8px auto 0}}.popwrap .mapc::after{display:none}.popwrap{transform:translateY(-10px)}.d-cap{background:rgba(11,31,58,.82);border-radius:999px;padding:4px 12px 4px 4px;display:inline-flex;align-items:center;gap:8px}

/* D4: full-color photo, no overlay; text sits on its own solid panel */
html body section.hero.dark{background:url(../../photos/opt/coat-4-1600.jpg) center 40%/cover no-repeat,var(--navy)}
.d-text{background:var(--navy);border-radius:20px;padding:36px 36px 30px;box-shadow:0 30px 70px -30px rgba(0,0,0,.6)}
.d-cap{background:var(--navy)!important}
@media (max-width:900px){
  html body main section.hero.dark,html body section.hero.dark{background:var(--navy);padding-top:0!important}
  html body section.hero.dark::before{content:"";display:block;height:240px;margin:0 -16px 0;background:url(../../photos/opt/coat-4-800.jpg) center 40%/cover no-repeat}
  .d-text{border-radius:0;box-shadow:none;padding:28px 0 8px;background:transparent}}
