/* ================= HANGAR — shared styles ================= */
:root {
  --ink: #08111f;
  --ink-soft: #101d30;
  --steel: #667386;
  --steel-light: #b6c0cc;
  --paper: #f7f5ef;
  --paper-dim: #ece9e1;
  --white: #ffffff;
  --runway: #ffc845;
  --runway-dark: #d8a72f;
  --line: rgba(255,255,255,.13);
  --line-dark: rgba(8,17,31,.11);
  --accent: var(--ink);
  --accent-text: var(--paper);
  --tint: var(--paper-dim);
  --secondary: var(--runway);
  --maxw: 1180px;
  --radius: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4,.display { font-family: "Space Grotesk", Inter, sans-serif; margin: 0; letter-spacing: -.03em; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font: inherit; }
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 32px; }
@media (max-width: 640px) { .wrap { padding: 0 18px; } }

/* ---------- Shared aviation language ---------- */
.mono { font-family: "SFMono-Regular", Consolas, monospace; letter-spacing: .06em; text-transform: uppercase; }
.perf { height: 1px; background-image: linear-gradient(to right, var(--line-dark) 50%, transparent 0%); background-size: 14px 1px; }
.perf-dark { background-image: linear-gradient(to right, var(--line) 50%, transparent 0%); }

/* ---------- Nav ---------- */
.nav { position: sticky; top: 0; z-index: 50; background: rgba(8,17,31,.96); color: var(--paper); border-bottom: 1px solid var(--line); backdrop-filter: blur(14px); }
.nav .wrap { min-height: 70px; display:flex; align-items:center; justify-content:space-between; gap: 20px; }
.logo { display:flex; align-items:center; color:var(--white); flex-shrink:0; }
.logo img { width:154px; height:auto; display:block; }
.footer-logo img { width:172px; }
.nav-links { display:flex; gap:30px; font-size:14px; color:var(--steel-light); }
.nav-links a:hover { color:var(--white); }
.nav-cta { background:var(--runway); color:var(--ink); padding:10px 18px; border-radius:999px; font-weight:700; font-size:14px; box-shadow:0 8px 24px rgba(0,0,0,.12); }
.nav-cta:hover { transform:translateY(-1px); }
@media(max-width:720px){ .nav-links{display:none;} .nav .wrap{min-height:64px;} .nav-cta{padding:9px 14px;font-size:13px;} .logo img{width:136px;} .footer-logo img{width:158px;} }
@media(max-width:640px){
  .hero .wrap{min-height:0;display:block;position:relative;padding-top:34px;padding-bottom:22px;align-items:stretch;}
  .hero .wrap > div:first-child{position:relative;z-index:2;padding-top:76px;}
  .hero-art{position:absolute;z-index:1;top:-10px;left:-18%;width:136%;height:260px;margin:0;pointer-events:none;overflow:visible;}
  .hero-art::before{top:8px;left:18px;font-size:8px;opacity:.55;}
  .hero-art img{width:100%;max-width:none;height:260px;object-fit:contain;object-position:center top;filter:drop-shadow(0 24px 26px rgba(0,0,0,.22));opacity:.92;}
  .eyebrow-tag{margin-bottom:9px;font-size:10.5px;}
  .hero h1{font-size:39px;line-height:.98;max-width:350px;}
  .hero p.sub{font-size:15px;margin-top:12px;}
  .hero-actions{margin-top:18px;display:grid;grid-template-columns:1fr;gap:9px;}
  .btn-primary,.btn-ghost{min-height:48px;width:100%;}
  .hero .rating-proof{margin-top:14px;}
  .trust .wrap{gap:10px;overflow:hidden;flex-wrap:nowrap;padding-top:13px;padding-bottom:13px;}
  .trust .wrap span{white-space:nowrap;font-size:11.5px;}
  #shop.section{padding-top:28px;}
  #shop .section-head{margin-bottom:16px;}
  #shop .section-head h2{font-size:28px;}
  #shop .section-head p{font-size:13px;line-height:1.45;}
}

/* ---------- Home hero ---------- */
.hero { background: radial-gradient(circle at 76% 35%, rgba(255,200,69,.12), transparent 26%), linear-gradient(135deg, #08111f 0%, #0e1c30 100%); color:var(--paper); overflow:hidden; position:relative; }
.hero::after { content:""; position:absolute; inset:auto 0 0; height:1px; background:rgba(255,255,255,.09); }
.hero .wrap { min-height:650px; padding-top:72px; padding-bottom:44px; display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr); gap:42px; align-items:center; }
.eyebrow-tag { display:inline-flex; align-items:center; gap:8px; margin-bottom:20px; color:var(--runway); font-size:13px; font-weight:700; letter-spacing:.02em; }
.eyebrow-tag::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--runway); box-shadow:0 0 0 5px rgba(255,200,69,.1); }
.hero h1 { color:var(--white); font-size:clamp(44px,6vw,72px); line-height:.99; max-width:650px; }
.hero p.sub { color:var(--steel-light); max-width:535px; margin:22px 0 0; font-size:17px; }
.hero-actions { margin-top:30px; display:flex; gap:12px; flex-wrap:wrap; }
.btn-primary,.btn-ghost { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 24px; border-radius:999px; font-size:15px; font-weight:700; }
.btn-primary { background:var(--runway); color:var(--ink); }
.btn-ghost { border:1px solid var(--line); color:var(--white); }
.hero-art { position:relative; }
.hero-art::before { content:"HANGAR / DEPARTURES"; position:absolute; top:10px; left:12px; color:rgba(255,255,255,.3); font:700 10px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; z-index:2; }
.hero-art img { width:100%; max-width:600px; margin-left:auto; filter:drop-shadow(0 30px 50px rgba(0,0,0,.26)); }
@media(max-width:860px){ .hero .wrap{grid-template-columns:1fr;min-height:auto;padding-top:48px;} .hero-art{padding-top:12px;} .hero-art img{margin:0 auto;max-width:520px;} .hero h1{font-size:clamp(42px,12vw,62px);} }

/* ---------- Trust strip ---------- */
.trust { background:var(--ink-soft); border-top:1px solid var(--line); }
.trust .wrap { padding-top:14px; padding-bottom:14px; display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.trust span { display:flex; align-items:center; gap:9px; justify-content:center; color:var(--steel-light); font-size:13px; text-align:center; }
.trust span::before { content:"✓"; color:var(--runway); font-weight:800; }
@media(max-width:760px){ .trust .wrap{grid-template-columns:repeat(2,1fr);gap:10px 6px;} .trust span{font-size:12px;} }

/* ---------- Sections ---------- */
.section { padding:84px 0; }
.section.alt { background:var(--paper-dim); }
.section-head { display:flex; justify-content:space-between; align-items:end; gap:22px; margin-bottom:34px; flex-wrap:wrap; }
.section-head h2 { font-size:clamp(30px,4vw,42px); line-height:1.05; }
.section-head p { max-width:460px; margin:0; color:var(--steel); font-size:15.5px; }

/* ---------- Product cards ---------- */
.grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.tag-card { background:var(--white); border:1px solid var(--line-dark); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column; position:relative; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
.tag-card:hover { transform:translateY(-5px); box-shadow:0 20px 40px rgba(8,17,31,.12); border-color:rgba(8,17,31,.2); }
.tag-card .thumb { aspect-ratio:1/1; background:linear-gradient(145deg,var(--paper-dim),#f8f6f0); display:flex; align-items:center; justify-content:center; padding:22px; position:relative; }
.tag-card .thumb img { width:100%; height:100%; object-fit:contain; transition:transform .22s ease; }
.tag-card:hover .thumb img { transform:scale(1.03) rotate(-.5deg); }
.alliance-chip,.soon-badge { position:absolute; top:12px; left:12px; background:var(--ink); color:var(--paper); font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:6px 9px; border-radius:999px; }
.tag-card .info { padding:16px 17px 17px; border-top:1px dashed var(--line-dark); display:flex; flex-direction:column; gap:5px; min-height:120px; }
.tag-card .info h3 { font-size:16px; line-height:1.15; }
.tag-card .micro { color:var(--steel); font-size:12px; }
.tag-card .price-row { margin-top:auto; padding-top:12px; display:flex; justify-content:space-between; align-items:center; }
.tag-card .price { font-family:"Space Grotesk",sans-serif; font-size:17px; font-weight:700; }
.tag-card .shop-link { font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; border-bottom:1px solid currentColor; }
.tag-card.soon .thumb { background:repeating-linear-gradient(135deg,var(--paper-dim),var(--paper-dim) 10px,#e4e0d8 10px,#e4e0d8 20px); }
@media(max-width:980px){ .grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media(max-width:700px){ .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;} .tag-card .thumb{padding:16px;} .tag-card .info{padding:13px 13px 14px;min-height:105px;} .tag-card .info h3{font-size:14.5px;} }
@media(max-width:420px){ .grid{grid-template-columns:1fr 1fr;} .tag-card .info .micro{display:none;} }

/* ---------- Alliance blocks ---------- */
.alliance-block { margin-bottom:52px; }
.alliance-head { display:flex; align-items:baseline; gap:12px; margin-bottom:18px; }
.alliance-head h3 { font-size:21px; }
.alliance-head .count { color:var(--steel); font-size:13px; }

/* ---------- About ---------- */
.about-block { display:grid; grid-template-columns:1.1fr .9fr; gap:54px; align-items:center; }
.about-block h2 { font-size:clamp(30px,4vw,42px); line-height:1.04; margin-bottom:18px; }
.about-block p { margin:0 0 14px; color:var(--steel); font-size:15.5px; }
.about-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.about-stats div { padding-left:14px; border-left:2px solid var(--runway); }
.about-stats .num { font-family:"Space Grotesk",sans-serif; font-weight:700; font-size:32px; }
.about-stats .label { color:var(--steel); font-size:12.5px; }
@media(max-width:800px){ .about-block{grid-template-columns:1fr;gap:30px;} }

/* ---------- Footer ---------- */
footer { background:var(--ink); color:var(--steel-light); padding:58px 0 28px; }
.footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:32px; padding-bottom:38px; }
.footer-grid h4 { color:var(--white); font-size:13px; text-transform:uppercase; letter-spacing:.08em; margin:0 0 13px; }
.footer-grid a,.footer-grid p { display:block; color:var(--steel-light); font-size:14px; margin:0 0 8px; }
.footer-grid a:hover { color:var(--white); }
.footer-bottom { margin-top:22px; padding-top:22px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; color:var(--steel); font-size:12px; }
@media(max-width:700px){ .footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px;} .footer-grid>div:first-child{grid-column:1/-1;} }

/* ================= PRODUCT PAGE ================= */
.product-topbar { background:var(--accent); color:var(--accent-text); border-bottom:4px solid var(--secondary); }
.product-topbar .wrap { display:flex; justify-content:space-between; gap:20px; align-items:center; padding-top:11px; padding-bottom:11px; }
.product-topbar .route { font:700 11px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; opacity:.92; }
.product-topbar .status { font-size:12px; font-weight:700; opacity:.9; }
.breadcrumb { padding:18px 0 12px; font-size:12.5px; color:var(--steel); }
.breadcrumb a:hover{color:var(--ink);}
.product-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.88fr); gap:58px; padding:18px 0 70px; align-items:start; }
.product-gallery { background:radial-gradient(circle at 50% 42%, rgba(255,255,255,.72), transparent 52%), var(--tint); border-radius:24px; min-height:560px; display:flex; justify-content:center; align-items:center; padding:46px; position:relative; overflow:hidden; }
.product-gallery::before { content:""; position:absolute; inset:18px; border:1px dashed color-mix(in srgb,var(--accent) 22%,transparent); border-radius:19px; pointer-events:none; }
.product-gallery::after { content:"HANGAR / COLLECTOR SERIES"; position:absolute; top:24px; left:26px; font:700 9px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; color:color-mix(in srgb,var(--accent) 62%, #6d7682); }
.product-gallery img { width:min(92%,520px); filter:drop-shadow(0 32px 36px rgba(8,17,31,.17)); position:relative; z-index:1; }
.product-info .airline-kicker { display:inline-flex; align-items:center; gap:8px; color:var(--accent); font:700 11px/1 "SFMono-Regular",Consolas,monospace; text-transform:uppercase; letter-spacing:.11em; }
.product-info .airline-kicker::before { content:""; width:9px; height:9px; border-radius:50%; background:var(--secondary); box-shadow:0 0 0 4px color-mix(in srgb,var(--secondary) 18%,transparent); }
.product-info h1 { margin-top:14px; font-size:clamp(36px,4.5vw,56px); line-height:1; }
.product-info .tagline { margin:15px 0 0; color:var(--accent); font:700 clamp(17px,2.2vw,21px)/1.2 "Space Grotesk",sans-serif; }
.product-info .price { margin-top:25px; color:var(--accent); font:700 31px/1 "Space Grotesk",sans-serif; }
.product-info .price small { color:var(--steel); font:500 13px/1.2 Inter,sans-serif; margin-left:8px; }
.product-info .blurb { margin:15px 0 0; color:var(--steel); max-width:520px; font-size:16px; }
.buy-btn { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; max-width:390px; min-height:58px; margin-top:25px; border-radius:14px; background:var(--accent); color:var(--accent-text); font-size:16px; font-weight:800; border:0; box-shadow:0 15px 30px color-mix(in srgb,var(--accent) 18%,transparent); }
.buy-btn:hover { filter:brightness(1.08); transform:translateY(-1px); }
.buy-btn .runway-dot { width:8px;height:8px;border-radius:50%;background:var(--secondary); }
.trust-mini { display:flex; flex-wrap:wrap; gap:14px 20px; margin-top:16px; color:var(--steel); font-size:12.5px; }
.trust-mini span::before { content:"✓"; color:var(--accent); font-weight:800; margin-right:6px; }
.spec-list { margin-top:28px; border-top:1px solid var(--line-dark); }
.spec-list .row { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid var(--line-dark); font-size:13.5px; }
.spec-list .row span:first-child{color:var(--steel);} .spec-list .row span:last-child{font-weight:700;text-align:right;}
.airline-feature { margin:0 0 82px; background:var(--accent); color:var(--accent-text); border-radius:24px; overflow:hidden; position:relative; }
.airline-feature::before { content:""; position:absolute; inset:0; background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.09) 35%,rgba(255,255,255,.09) 55%,transparent 55%); opacity:.5; }
.airline-feature .inner { position:relative; z-index:1; display:grid; grid-template-columns:1fr .9fr; gap:40px; padding:42px; }
.feature-label { color:var(--secondary); font:700 10px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; text-transform:uppercase; }
.airline-feature h2 { margin-top:12px; font-size:clamp(28px,4vw,42px); line-height:1.02; }
.airline-feature p { color:color-mix(in srgb,var(--accent-text) 76%,transparent); margin:15px 0 0; font-size:15px; max-width:560px; }
.flight-card { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:18px; padding:22px; align-self:stretch; display:flex; flex-direction:column; justify-content:space-between; min-height:200px; }
.flight-card .top { display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.6); font:700 10px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.08em; text-transform:uppercase; }
.flight-card .route { margin-top:28px; font:700 clamp(29px,5vw,42px)/1 "Space Grotesk",sans-serif; letter-spacing:-.04em; }
.flight-card .callsign { margin-top:8px; color:var(--secondary); font:700 11px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; }
.flight-card .barcode { height:34px; margin-top:22px; background:repeating-linear-gradient(90deg,rgba(255,255,255,.85) 0 2px, transparent 2px 4px, rgba(255,255,255,.55) 4px 5px, transparent 5px 8px); opacity:.7; }
.crosssell { padding:0 0 88px; }
.crosssell-head { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:22px; }
.crosssell h2 { font-size:28px; }
.crosssell p { margin:0; color:var(--steel); font-size:14px; }
@media(max-width:920px){ .product-layout{grid-template-columns:1fr;gap:28px;} .product-gallery{min-height:430px;} .airline-feature .inner{grid-template-columns:1fr;} }
@media(max-width:640px){ .product-topbar .wrap{padding-top:9px;padding-bottom:9px;} .product-topbar .status{display:none;} .breadcrumb{padding-top:14px;} .product-layout{padding-bottom:42px;} .product-gallery{min-height:360px;padding:28px;border-radius:18px;} .product-gallery::before{inset:12px;border-radius:14px;} .product-gallery::after{top:18px;left:20px;} .product-info h1{font-size:40px;} .product-info .price{font-size:28px;margin-top:20px;} .buy-btn{max-width:none;} .airline-feature{border-radius:18px;margin-bottom:54px;} .airline-feature .inner{padding:26px 22px;} .flight-card{min-height:180px;padding:18px;} .crosssell{padding-bottom:58px;} .crosssell-head{display:block;} .crosssell p{margin-top:6px;} }

/* ---------- Rating / social proof ---------- */
.rating-proof { display:inline-flex; align-items:center; gap:9px; margin-top:18px; color:var(--paper); }
.rating-proof .stars { color:var(--runway); letter-spacing:.08em; font-size:15px; line-height:1; }
.rating-proof .score { font:800 13px/1 "Space Grotesk",sans-serif; color:var(--white); }
.rating-proof .verified { color:var(--steel-light); font-size:12px; }
.rating-proof .check { display:inline-flex; align-items:center; justify-content:center; width:15px; height:15px; margin-right:4px; border-radius:50%; background:var(--runway); color:var(--ink); font-size:9px; font-weight:900; vertical-align:-1px; }
.product-rating { margin-top:16px; }
.product-info .rating-proof { color:var(--ink); }
.product-info .rating-proof .score { color:var(--ink); }
.product-info .rating-proof .verified { color:var(--steel); }
@media(max-width:640px){ .rating-proof{gap:7px;flex-wrap:wrap;row-gap:5px;} .rating-proof .verified{font-size:11.5px;} }

/* ---------- Returns policy ---------- */
.policy-page { background:var(--paper); }
.policy-page .product-topbar { border-bottom-width:4px; }
.policy-hero { background:linear-gradient(135deg,var(--ink) 0%,var(--ink-soft) 100%); color:var(--paper); padding:76px 0 62px; position:relative; overflow:hidden; }
.policy-hero::after { content:"HANGAR / CUSTOMER CARE"; position:absolute; right:32px; bottom:22px; color:rgba(255,255,255,.18); font:700 10px/1 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; }
.policy-hero .narrow { max-width:900px; }
.policy-hero h1 { color:var(--white); font-size:clamp(3rem,7vw,5.8rem); line-height:.95; margin:8px 0 20px; }
.policy-hero .lead { max-width:680px; margin:0; color:var(--steel-light); font-size:clamp(1.05rem,2.2vw,1.3rem); }
.policy-body { padding:54px 0 90px; }
.policy-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr); gap:22px; align-items:start; }
.policy-card,.policy-side { background:var(--white); border:1px solid var(--line-dark); border-radius:18px; box-shadow:0 18px 45px rgba(8,17,31,.06); }
.policy-card { padding:clamp(28px,5vw,48px); }
.policy-card h2 { font-size:clamp(2rem,4vw,3rem); line-height:1; margin-bottom:12px; }
.policy-card h3 { font-size:1.05rem; margin:30px 0 8px; letter-spacing:-.02em; }
.policy-card p { margin:0; color:var(--steel); }
.policy-email { font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.policy-note { margin-top:32px; padding:17px 18px; border-left:3px solid var(--runway); background:var(--paper-dim); color:var(--ink); border-radius:0 12px 12px 0; }
.policy-side { padding:24px; background:var(--ink); color:var(--paper); border-color:rgba(255,255,255,.12); }
.policy-side .eyebrow-tag { margin-bottom:15px; }
.policy-side h3 { color:var(--white); font-size:22px; margin:0 0 15px; }
.policy-side .flight-card { min-height:0; margin:0; background:rgba(255,255,255,.06); }
.policy-side .flight-card .route { font-size:29px; }
.policy-side .small-print { margin:18px 0 0; color:var(--steel-light); font-size:12px; line-height:1.5; }
.policy-page .breadcrumb { padding-top:14px; }
@media(max-width:820px){ .policy-layout{grid-template-columns:1fr;} .policy-side{order:-1;} }
@media(max-width:640px){ .policy-hero{padding:54px 0 52px;} .policy-hero::after{right:18px;bottom:16px;} .policy-body{padding:28px 0 60px;} .policy-card,.policy-side{border-radius:18px;} .policy-card{padding:24px;} .policy-side{padding:18px;} }

.mobile-collector-note{display:none;}
@media(max-width:640px){.mobile-collector-note{display:flex;align-items:center;gap:8px;margin:-2px 0 14px;padding:11px 13px;background:var(--ink);color:var(--paper);border-radius:12px;font-size:11px}.mobile-collector-note strong{font-family:"Space Grotesk",sans-serif;letter-spacing:-.01em}.mobile-collector-note span:last-child{margin-left:auto;color:var(--steel-light)}.mini-dot{width:7px;height:7px;border-radius:50%;background:var(--runway);box-shadow:0 0 0 4px rgba(255,200,69,.10);flex:0 0 auto;}}

/* ---------- Mobile hero: tags raining behind the headline ---------- */
@media (max-width:640px){
  .hero .wrap{
    display:block;
    position:relative;
    min-height:0;
    padding:0 0 24px;
    overflow:hidden;
  }
  .hero .wrap > div:first-child{
    position:relative;
    z-index:3;
    padding:48px 18px 0;
  }
  .hero .wrap > div:first-child::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:120px;
    left:0;
    right:0;
    height:190px;
    background:linear-gradient(180deg,
      rgba(8,17,31,.18) 0%,
      rgba(8,17,31,.78) 42%,
      rgba(8,17,31,.97) 100%);
    pointer-events:none;
  }
  .hero-art{
    position:absolute;
    z-index:1;
    top:-24px;
    left:-35%;
    width:170%;
    height:275px;
    margin:0;
    padding:0;
    pointer-events:none;
    overflow:hidden;
  }
  .hero-art::before{
    content:"HANGAR / DEPARTURES";
    position:absolute;
    top:9px;
    left:28px;
    z-index:2;
    color:rgba(255,255,255,.20);
    font:700 8px/1 "SFMono-Regular",Consolas,monospace;
    letter-spacing:.12em;
  }
  .hero-art::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(8,17,31,.10) 0%,rgba(8,17,31,.16) 36%,rgba(8,17,31,.78) 78%,rgba(8,17,31,1) 100%);
    pointer-events:none;
  }
  .hero-art img{
    display:block;
    width:100%;
    max-width:none;
    height:275px;
    object-fit:contain;
    object-position:center top;
    margin:0;
    opacity:.92;
    filter:drop-shadow(0 24px 26px rgba(0,0,0,.25));
  }
  .eyebrow-tag{
    margin:0 0 8px;
    font-size:11px;
  }
  .hero h1{
    position:relative;
    z-index:4;
    max-width:360px;
    margin:0;
    font-size:clamp(42px,11.5vw,55px);
    line-height:.92;
    letter-spacing:-.04em;
    text-wrap:balance;
  }
  .hero p.sub{
    position:relative;
    z-index:4;
    max-width:345px;
    margin-top:14px;
    font-size:15px;
    line-height:1.48;
  }
  .hero-actions{
    position:relative;
    z-index:4;
    margin-top:17px;
  }
  .hero-actions a{width:100%;}
  .hero .rating-proof{
    position:relative;
    z-index:4;
    margin-top:13px;
  }
}

/* Live Stripe stock state */
.tag-card.sold-out { opacity:.82; }
.tag-card.sold-out .thumb { position:relative; }
.tag-card.sold-out .thumb::after {
  content:'SOLD OUT'; position:absolute; left:12px; top:12px; z-index:2;
  padding:7px 9px; border-radius:999px; background:rgba(8,17,31,.92); color:#fff;
  font:700 10px/1 'Space Grotesk',sans-serif; letter-spacing:.08em;
}
.tag-card.sold-out .shop-link { opacity:.5; }
.buy-btn.sold-out { background:#111827 !important; color:#fff !important; cursor:not-allowed; box-shadow:none; }
.buy-btn.sold-out .runway-dot { background:#6b7280; }
