/* v7-C - ANGLE: Poster (magazine cover). Scoped entirely under #program / #mission. */

:root{
  --v7c-charcoal:#211e1c;
  --v7c-surface:#2b2725;
  --v7c-cream:#eae2d7;
  --v7c-cream-hi:#f4eee6;
  --v7c-copper-oncream:#805434;
  --v7c-copper-ondark:#dcae90;
  --v7c-dur:420ms;
  --v7c-dur-fast:180ms;
}
@media (prefers-reduced-motion:reduce){
  :root{--v7c-dur:140ms;--v7c-dur-fast:80ms;}
}

/* ============ shared poster helpers (scoped) ============ */
#program .v7c-grain,#mission .v7c-grain{position:absolute;inset:0;pointer-events:none;mix-blend-mode:overlay;opacity:.5;z-index:1;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
#program .v7c-vignette,#mission .v7c-vignette{position:absolute;inset:0;pointer-events:none;z-index:1;
  background:radial-gradient(120% 90% at 50% 20%,rgba(0,0,0,0) 45%,rgba(0,0,0,.55) 100%);}
#program .v7c-prog-poster,#program .v7c-prog-wall,#program .v7c-prog-foot{position:relative}

/* ================= #program : dog wall + poster headline ================= */
#program.v7c-program{position:relative;overflow:hidden;background:var(--v7c-charcoal);padding-bottom:clamp(48px,7vw,96px)}

#program .v7c-prog-poster{position:relative;z-index:3;padding:0 var(--ix-gutter,64px);max-width:1180px;margin:0 auto}
#program .v7c-prog-mark{display:block;width:64px;height:auto;opacity:.9;margin-bottom:18px}
#program .v7c-prog-headline{
  font:600 clamp(48px,9.2vw,148px)/.86 var(--ix-font-display,'NC Oswald',Arial,sans-serif);
  letter-spacing:-.03em;text-transform:uppercase;color:var(--v7c-cream-hi);
  margin:0 0 clamp(-56px,-4vw,-12px);position:relative;z-index:4;
  text-shadow:0 2px 0 rgba(0,0,0,.35);
}
#program .v7c-prog-copy{position:relative;z-index:3;max-width:640px;margin-top:clamp(64px,8vw,120px);
  padding:24px clamp(20px,2.4vw,32px);background:rgba(43,39,37,.72);backdrop-filter:blur(2px);
  border-left:4px solid var(--v7c-copper-ondark);}
#program .v7c-prog-copy .ix-lead{color:var(--v7c-cream-hi);margin:0 0 14px}
#program .v7c-prog-copy p{color:#c5bbb2}
#program .v7c-prog-link{color:var(--v7c-copper-ondark);display:inline-block;margin-top:12px}

/* staggered wall, not a row: three offset columns */
#program .v7c-prog-wall{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);
  gap:clamp(16px,2.2vw,28px);align-items:start;padding:0 clamp(20px,4vw,64px);margin-top:clamp(28px,4vw,56px)}
#program .v7c-dogcard{position:relative;isolation:isolate;background:var(--v7c-surface);cursor:pointer;
  border-radius:6px;overflow:hidden;outline:none;}
#program .v7c-dogcard-harry{transform:translateY(0)}
#program .v7c-dogcard-mid{transform:translateY(clamp(28px,4vw,64px))}
#program .v7c-dogcard-thing{transform:translateY(clamp(10px,1.6vw,24px))}
#program .v7c-dogcard-photo{aspect-ratio:1/1;overflow:hidden;border-radius:0}
#program .v7c-dogcard-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;
  transition:transform var(--v7c-dur) cubic-bezier(.2,.7,.2,1);}
#program .v7c-dogcard:hover .v7c-dogcard-photo img,
#program .v7c-dogcard.is-open .v7c-dogcard-photo img{transform:scale(1.06)}
#program .v7c-dogcard-face{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;z-index:2;
  background:linear-gradient(0deg,rgba(33,30,28,.92) 10%,rgba(33,30,28,0) 100%);
  transition:opacity var(--v7c-dur) ease;}
#program .v7c-dogcard-name{display:block;font:600 18px/1.15 var(--ix-font-display,'NC Oswald',Arial,sans-serif);
  text-transform:uppercase;color:var(--v7c-cream-hi)}
#program .v7c-dogcard-role{display:block;color:var(--v7c-copper-ondark);font-size:12px;letter-spacing:.04em;
  text-transform:uppercase;margin-top:2px}
#program .v7c-dogcard-panel{position:absolute;inset:0;z-index:3;background:rgba(33,30,28,.94);
  padding:20px;display:flex;align-items:center;opacity:0;transform:translateY(8px);
  transition:opacity var(--v7c-dur) ease,transform var(--v7c-dur) ease;pointer-events:none}
#program .v7c-dogcard-panel dl{width:100%;margin:0;display:grid;gap:10px}
#program .v7c-dogcard-panel dl>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(220,174,144,.25);padding-bottom:6px}
#program .v7c-dogcard-panel dt{color:#a8988b;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
#program .v7c-dogcard-panel dd{margin:0;color:var(--v7c-cream-hi);font-weight:600;text-align:right}
#program .v7c-pending{color:var(--v7c-copper-ondark)!important;font-weight:600}
#program .v7c-pending-tag{display:inline-block;background:var(--v7c-copper-ondark);color:var(--v7c-charcoal);
  font-size:10px;letter-spacing:.05em;text-transform:uppercase;padding:2px 6px;border-radius:2px;margin-right:6px}

@media (hover:hover){
  #program .v7c-dogcard:hover .v7c-dogcard-panel{opacity:1;transform:translateY(0);pointer-events:auto}
  #program .v7c-dogcard:hover .v7c-dogcard-face{opacity:0}
}
#program .v7c-dogcard.is-open .v7c-dogcard-panel{opacity:1;transform:translateY(0);pointer-events:auto}
#program .v7c-dogcard.is-open .v7c-dogcard-face{opacity:0}
#program .v7c-dogcard:focus-visible{box-shadow:0 0 0 3px var(--v7c-copper-ondark)}

#program .v7c-prog-foot{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;padding:clamp(28px,4vw,40px) clamp(20px,4vw,64px) 0;color:#a8988b;
  border-top:1px solid rgba(220,174,144,.2);margin-top:clamp(28px,4vw,48px)}
#program .v7c-prog-foot p{margin:0}
#program .v7c-prog-foot .ix-bullymax{display:flex;align-items:center;gap:8px}

/* scroll reveal (poster type + wall) - JS toggles .is-seen; motion always runs, only duration shortens */
#program .v7c-prog-headline,#program .v7c-prog-copy{opacity:0;transform:translateY(24px);
  transition:opacity var(--v7c-dur) ease,transform var(--v7c-dur) ease}
#program .v7c-prog-headline.is-seen,#program .v7c-prog-copy.is-seen{opacity:1;transform:translateY(0)}
#program .v7c-dogcard{opacity:0;transform:translateY(28px);
  transition:opacity var(--v7c-dur) ease,transform var(--v7c-dur) ease,box-shadow var(--v7c-dur) ease}
#program .v7c-dogcard.is-seen{opacity:1}
#program .v7c-dogcard-harry.is-seen{transform:translateY(0)}
#program .v7c-dogcard-mid.is-seen{transform:translateY(clamp(28px,4vw,64px))}
#program .v7c-dogcard-thing.is-seen{transform:translateY(clamp(10px,1.6vw,24px))}

@media (max-width:860px){
  #program .v7c-prog-wall{grid-template-columns:1fr;gap:18px;padding:0 20px}
  #program .v7c-dogcard-mid,#program .v7c-dogcard-thing{transform:translateY(0)}
  #program .v7c-dogcard-mid.is-seen,#program .v7c-dogcard-thing.is-seen{transform:translateY(0)}
  #program .v7c-prog-headline{margin-bottom:20px}
  #program .v7c-prog-copy{margin-top:24px}
  #program .v7c-dogcard-panel{padding:16px}
}

/* ================= #mission : Poldo-style rescue band ================= */
#mission.v7c-mission{position:relative}

#mission .v7c-rescue-band{position:relative;margin-top:clamp(56px,8vw,96px);background:var(--v7c-charcoal);
  color:var(--v7c-cream-hi)}

#mission .v7c-rescue-photo{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--v7c-charcoal)}
#mission .v7c-rescue-photo-texture{position:absolute;inset:0;background-size:cover;background-position:center;
  filter:grayscale(1) brightness(.22) contrast(1.1) blur(10px);transform:scale(1.12);
  transition:transform calc(var(--v7c-dur) * 3) ease}
#mission .v7c-rescue-photo::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(33,30,28,.55) 0%,rgba(33,30,28,.75) 100%)}
#mission .v7c-rescue-band.is-seen .v7c-rescue-photo-texture{transform:scale(1)}
#mission .v7c-rescue-photo-slot{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;
  border:1px dashed rgba(234,226,215,.4);margin:20px}
#mission .v7c-slot-label{font:600 13px/1.4 var(--ix-font-text,Arial,sans-serif);letter-spacing:.04em;
  text-transform:uppercase;color:var(--v7c-cream);background:rgba(43,39,37,.85);padding:10px 16px;border-radius:6px}
#mission .v7c-rescue-photo .v7c-grain{z-index:2}
#mission .v7c-rescue-photo .v7c-vignette{z-index:3}
#mission .v7c-rescue-seal{position:absolute;right:clamp(16px,3vw,40px);bottom:clamp(-28px,-3vw,-18px);z-index:5;
  width:clamp(64px,7vw,96px);height:auto;background:var(--v7c-cream-hi);border-radius:6px;padding:8px;
  box-shadow:0 8px 24px rgba(0,0,0,.35)}

#mission .v7c-rescue-wordband{position:relative;background:var(--v7c-surface);padding:clamp(20px,4vw,40px) clamp(20px,4vw,64px);
  overflow:hidden;border-top:1px solid rgba(220,174,144,.18);border-bottom:1px solid rgba(220,174,144,.18)}
#mission .v7c-rescue-word{margin:0;text-align:center;text-transform:uppercase;
  font:600 clamp(40px,10vw,128px)/.86 var(--ix-font-display,'NC Oswald',Arial,sans-serif);
  letter-spacing:.04em;color:var(--v7c-copper-ondark);
  opacity:0;transform:translateY(18px);transition:opacity var(--v7c-dur) ease,transform var(--v7c-dur) ease}
#mission .v7c-rescue-wordband.is-seen .v7c-rescue-word{opacity:1;transform:translateY(0)}

#mission .v7c-rescue-cards{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:rgba(220,174,144,.18)}
#mission .v7c-rescue-card{display:flex;flex-direction:column;gap:8px;background:var(--v7c-charcoal);
  color:var(--v7c-cream-hi);text-decoration:none;padding:clamp(24px,3vw,36px) clamp(20px,2.6vw,28px);
  transition:background var(--v7c-dur) ease,transform var(--v7c-dur-fast) ease}
#mission .v7c-rescue-card-title{font:600 22px/1.1 var(--ix-font-display,'NC Oswald',Arial,sans-serif);
  text-transform:uppercase;color:var(--v7c-copper-ondark)}
#mission .v7c-rescue-card-copy{color:#c5bbb2;font-size:15px;line-height:1.45}
#mission .v7c-rescue-card:hover,#mission .v7c-rescue-card:focus-visible{background:var(--v7c-surface);transform:translateY(-2px)}
#mission .v7c-rescue-card:focus-visible{outline:2px solid var(--v7c-copper-ondark);outline-offset:-2px}

@media (max-width:860px){
  #mission .v7c-rescue-photo{aspect-ratio:4/5}
  #mission .v7c-rescue-cards{grid-template-columns:1fr}
  #mission .v7c-rescue-seal{width:64px;bottom:-20px;right:16px}
}

/* ================= v8 additions ================= */
/* 1. #program Harry dive: pinned stage, Harry right, copy on dark left */
#program .v8-dive{position:relative;height:220vh;z-index:2}
#program .v8-dive-stage{position:sticky;top:0;height:100vh;overflow:hidden;background:var(--v7c-charcoal)}
#program .v8-dive-photo{position:absolute;top:0;right:0;bottom:0;width:64%;overflow:hidden}
#program .v8-dive-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 30%;
  transform-origin:60% 38%;transform:scale(calc(1 + .1 * var(--v8-p,0)));border-radius:0}
#program .v8-dive-scrim{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,#211e1c 0%,#211e1c 38%,rgba(33,30,28,.85) 44%,rgba(33,30,28,0) 58%)}
#program .v8-dive-copy{position:absolute;left:clamp(20px,5vw,80px);top:50%;transform:translateY(-50%);width:min(36%,520px);z-index:3}
#program .v8-dive-copy .v7c-prog-headline{color:#f4eee6}
#program .v8-dive-copy p{color:#e6ddd2}
#program .v8-dive-copy .v7c-prog-mark{width:72px;height:auto}
@media (max-width:860px){
  #program .v8-dive{height:200vh}
  #program .v8-dive-photo{top:auto;left:0;width:100%;height:46%}
  #program .v8-dive-photo img{object-position:50% 30%;transform-origin:50% 35%}
  #program .v8-dive-scrim{background:linear-gradient(180deg,#211e1c 0%,#211e1c 54%,rgba(33,30,28,.8) 57%,rgba(33,30,28,0) 64%)}
  #program .v8-dive-copy{top:20px;transform:none;left:16px;right:16px;width:auto}
  #program .v8-dive-copy .v7c-prog-mark{width:48px}
  #program .v8-dive-copy .v7c-prog-headline{font-size:40px;margin-bottom:12px}
  #program .v8-dive-copy .v7c-prog-copy{margin-top:8px}
  #program .v8-dive-copy p{font-size:15px;line-height:1.45;margin-bottom:10px}
}
#program .v8-dive-copy .v7c-prog-headline,#program .v8-dive-copy .v7c-prog-copy{opacity:1;transform:none}

/* 3. dog wall: square media, no pill */
#program .v7c-dogcard{border-radius:0}
#program .v7c-dogcard-photo{aspect-ratio:4/5}
#program .v7c-dogcard-photo img{object-fit:cover;object-position:50% 40%}

/* 4. mission rescue photo warm texture + lockup */
#mission .v7c-rescue-photo-texture{filter:sepia(.35) saturate(1.05) brightness(.62) blur(2px);background-position:70% 40%}
#mission .v7c-rescue-photo::after{background:linear-gradient(90deg,rgba(33,30,28,.55) 0%,rgba(33,30,28,.15) 60%,rgba(33,30,28,.25) 100%)}
#mission .v7c-rescue-photo-slot{align-items:flex-end;justify-content:flex-start;padding:16px}
#mission .v7c-slot-label{background:#211e1c;color:#f4eee6}
#mission .v7c-rescue-wordband{padding:clamp(28px,4vw,48px) clamp(16px,4vw,64px) clamp(20px,3vw,32px)}
#mission .v8-lockup{display:flex;align-items:flex-end;justify-content:center;gap:clamp(12px,2vw,28px)}
#mission .v8-lockup-logo{width:clamp(44px,8vw,112px);height:auto;background:#f4eee6;padding:6px;border-radius:0;
  opacity:var(--v8-logo,0);transform:translateX(calc(-24px * (1 - var(--v8-logo,0))))}
#mission .v8-sweep .v7c-rescue-word{opacity:1;transform:none;transition:none;white-space:nowrap;
  font-size:clamp(34px,9vw,128px);line-height:.86}
#mission .v8-l{display:inline-block;will-change:transform,opacity}
#mission .v8-lockup-rule{display:block;height:1px;background:#dcae90;margin:clamp(12px,1.6vw,20px) auto 0;width:min(100%,1100px)}
#mission .v7c-rescue-band{margin-top:clamp(40px,6vw,72px)}
#mission.v7c-mission{padding-bottom:0!important}

/* 7. family headline, word arrival */
#family .v8-fam-head{margin:0!important;font:600 clamp(44px,6.4vw,104px)/.95 'NC Oswald',Arial,sans-serif;letter-spacing:-.02em;text-transform:uppercase;color:#211e1c}
#family .v8-fam-row{display:block}
#family .v8-fam-copper{color:#805434}
#family .v8-w{display:inline-block;opacity:.08;transform:translateY(.25em);transition:opacity var(--v7c-dur-fast) ease,transform var(--v7c-dur-fast) ease}
#family .v8-w.is-in{opacity:1;transform:none}
@media (max-width:760px){#family .v8-fam-head{font-size:46px}}

/* 8. chains poster: cream ground, feathered edge, drift */
#chains.v8-chains{background:#eae2d7}
#chains .v8-poster img{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4%,#000 96%,transparent 100%);
  -webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4%,#000 96%,transparent 100%);
  mask-composite:intersect;box-shadow:none;border:0;border-radius:0;transform:translateY(calc(var(--v8-drift,0) * 1px))}
#chains .ix-campaign-caption{color:#5a5048}
#program .v8-dive-copy .v7c-prog-copy{margin-top:20px;max-width:none}
#program .v8-dive-copy .v7c-prog-headline{font-size:clamp(40px,5.2vw,88px);line-height:.92;margin:16px 0 0}
#program.v7c-program,#program{overflow:visible!important;overflow-x:clip!important}

/* ===== v8 fix round 2 ===== */
/* F1: family pin identical with reduce on/off (override site.css reduce branch) */
html body #family.ix-family[data-sc-act]{height:130vh!important}
html body #family.ix-family[data-sc-act] .sc-stage{position:sticky!important;top:0!important}
/* F6: headline block clear of photo, no low-opacity arriving words */
#family .v8-w{opacity:0;transform:translateY(.2em)}
#family .v8-w.is-in{opacity:1;transform:none}
@media (min-width:761px){#family .ix-family-headwrap{padding-left:72px!important;position:relative;z-index:3}
  #family .ix-family-photo::after{display:none}}
@media (max-width:760px){#family .ix-family-headwrap{padding-bottom:24px!important;position:relative;z-index:3;background:#eae2d7}
  #family .ix-family-photo img{transform:scale(calc(.82 + .18 * var(--sc-p,1)))!important}}
/* F2: chains poster own column, tower own column */
#chains .ix-chains-tower{margin-left:0!important}
#chains .v8-poster img{width:100%;height:auto;object-fit:contain;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%),linear-gradient(180deg,transparent 0,#000 3%,#000 97%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%),linear-gradient(180deg,transparent 0,#000 3%,#000 97%,transparent 100%)}
@media (min-width:761px){
  #chains .ix-chains-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px;align-items:center;padding:48px var(--ix-gutter,64px)}
  #chains .v8-poster{width:100%;max-width:520px;justify-self:end}
  #chains .v8-poster figcaption{padding-left:0}
  #chains .ix-chain-copy{padding-left:0;padding-right:0;min-width:0}}
@media (max-width:760px){#chains .ix-chains-row{gap:48px}#chains .v8-poster img{transform:none}}
/* F3/F4: program dive scrim + no bands + no tail crop */
#program .v8-dive{height:160vh}
#program .v8-dive-scrim{background:linear-gradient(90deg,#211e1c 0 38%,rgba(33,30,28,.6) 50%,transparent 62%)!important}
#program .v8-dive-copy{width:min(40%,520px)}
#program .v8-dive-photo{left:0;width:100%}
#program .v8-dive-photo img{left:auto;right:0;width:64%;object-fit:cover;object-position:50% 60%;transform-origin:60% 60%;transform:scale(calc(1 + .05 * var(--v8-p,0)))}
@media (max-width:860px){
  #program .v8-dive{height:150vh}
  #program .v8-dive-photo{top:0;height:100%}
  #program .v8-dive-photo img{width:100%;object-position:72% 60%}
  #program .v8-dive-scrim{background:linear-gradient(90deg,#211e1c 0 38%,rgba(33,30,28,.6) 50%,transparent 62%)!important}
  #program .v8-dive-copy{top:auto;bottom:32px;left:16px;right:auto;width:58%}
  #program .v8-dive-copy .v7c-prog-headline{font-size:32px}
  #program .v8-dive-copy p{font-size:14px}}
/* F5: dog card face contrast */
#program .v7c-dogcard-face{background:#211e1c!important}
#program .v7c-dogcard-role{color:#dcae90}
/* F7: rescue slot warm fence texture (CSS, ~35% visible) */
#mission .v7c-rescue-photo-texture[data-texture="fence"]{filter:none;opacity:.35;background-color:#5a3a24;
  background-image:repeating-linear-gradient(45deg,transparent 0 22px,#dcae90 22px 25px),repeating-linear-gradient(-45deg,transparent 0 22px,#dcae90 22px 25px),linear-gradient(180deg,#805434,#3a2a1f)}
/* F8: trim dead gaps */
#mission .v7c-rescue-band{margin-top:32px}
#mission .v7c-rescue-photo{aspect-ratio:21/9}
#program.v7c-program{padding-bottom:48px}
#program.v7c-program,#program.ix-chapter{padding-top:0!important}
/* ===== R3: Incredibullz lockup, Harry slot, Max, drift, gaps ===== */
#program .v8-ib{margin:0 0 8px;display:inline-block;max-width:100%}
#program .v8-ib-row{display:flex;align-items:center;gap:clamp(12px,1.4vw,20px)}
#program .v8-ib-logo{width:clamp(72px,9vw,136px);height:auto;flex:0 0 auto;border-radius:0;opacity:var(--v8-ib,0)}
#program .v8-ib-word{margin:0;white-space:nowrap;text-transform:uppercase;color:#dcae90;
  font:600 clamp(26px,2.9vw,44px)/1 var(--ix-font-display,'NC Oswald',Arial,sans-serif);letter-spacing:.04em}
#program .v8-ib .v8-l{display:inline-block;opacity:0;will-change:transform,opacity}
#program .v8-ib-rule{display:block;height:1px;background:#dcae90;margin-top:12px;width:100%}
#program .v8-dive-copy .v7c-prog-headline{text-transform:uppercase}
@media (min-width:861px){
  #program .v8-dive-photo img{width:60%;object-fit:cover;object-position:85% 50%;transform-origin:85% 50%;transform:scale(calc(1 + .03 * var(--v8-p,0)))}
  #program .v8-dive-scrim{background:linear-gradient(90deg,#211e1c 0 40%,rgba(33,30,28,.85) 44%,rgba(33,30,28,0) 52%)!important}
  #program .v8-dive-copy{width:min(38%,540px)}
}
@media (max-width:860px){
  #program .v8-dive{height:auto}
  #program .v8-dive-stage{position:relative;height:auto;overflow:visible}
  #program .v8-dive-photo{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:100%;height:60vh}
  #program .v8-dive-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:85% 50%;transform:none}
  #program .v8-dive-scrim{display:none}
  #program .v8-dive-copy{position:relative;top:auto;bottom:auto;left:auto;right:auto;transform:none;width:auto;
    padding:28px 16px 8px;background:#211e1c}
  #program .v8-ib-logo{width:72px}
  #program .v8-ib-word{font-size:clamp(24px,7.4vw,34px)}
  #program .v8-dive-copy .v7c-prog-headline{font-size:40px}
  #program .v8-dive-copy p{font-size:15px}
}
/* Max */
#mission .v8-max{position:relative;height:220vh;background:#211e1c}
#mission .v8-max-stage{position:sticky;top:0;height:100vh;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;
  align-items:center;gap:clamp(24px,4vw,64px);padding:0 clamp(16px,5vw,80px);background:#211e1c}
#mission .v8-max-photo{height:88vh;display:flex;justify-content:center;align-items:center}
#mission .v8-max-photo img{height:100%;width:auto;max-width:100%;object-fit:contain;border-radius:0;box-shadow:none;border:0;
  -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 72%,transparent 100%);
  mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 72%,transparent 100%);
  transform:scale(calc(.96 + .06 * var(--v8-mp,0)));transform-origin:50% 60%}
#mission .v8-max-copy{color:#f4eee6;max-width:520px}
#mission .v8-max-copy .ix-kicker{color:#dcae90;letter-spacing:.08em;margin:0 0 12px}
#mission .v8-max-head{font:600 clamp(40px,5vw,80px)/.95 var(--ix-font-display,'NC Oswald',Arial,sans-serif);color:#f4eee6;margin:0 0 18px;text-transform:none}
#mission .v8-max-copy p{font-size:clamp(17px,1.5vw,22px);line-height:1.45;margin:0 0 10px;color:#e6ddd2}
#mission .v8-max-btn{display:inline-block;margin-top:14px;padding:12px 22px;border-radius:6px;background:#dcae90;color:#211e1c;font-weight:700;text-decoration:none}
#mission .v8-max-line{opacity:0;transform:translateY(14px);transition:opacity var(--v7c-dur) ease,transform var(--v7c-dur) ease}
#mission .v8-max-line.is-in{opacity:1;transform:none}
@media (max-width:860px){
  #mission .v8-max{height:200vh}
  #mission .v8-max-stage{grid-template-columns:1fr;grid-template-rows:auto 1fr;align-content:start;gap:12px;padding:16px 16px 0}
  #mission .v8-max-photo{height:50vh}
  #mission .v8-max-copy p{font-size:16px;margin-bottom:6px}
  #mission .v8-max-head{font-size:36px;margin-bottom:10px}
}
/* Stray lockup logo: full once letters land */
#mission .v8-lockup-logo{opacity:var(--v8-logo,0)}
/* Chains drift all widths (on figure), trim cream */
#chains .v8-poster{transform:translateY(calc(var(--v8-drift,0) * 1px));margin-bottom:0}
#chains .v8-poster figcaption{margin-bottom:0;padding-bottom:0}
#chains.v8-chains,#chains .ix-chains-row{padding-bottom:24px!important}
#program .v8-dive-copy p.v8-ib-word{font-size:clamp(26px,2.9vw,44px);line-height:1;margin:0;color:#dcae90}
@media (max-width:860px){#program .v8-dive-copy p.v8-ib-word{font-size:clamp(24px,7.4vw,34px)}}
#mission .v8-max-photo img{
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%),linear-gradient(180deg,transparent 0,#000 10%,#000 90%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%),linear-gradient(180deg,transparent 0,#000 10%,#000 90%,transparent 100%);
  mask-composite:intersect}
@media (max-width:860px){#mission .v8-max-photo{height:52vh}#mission .v8-max-stage{gap:4px}}
/* v8 smooth pass: no JS smoother on this page, so native smooth anchors (runs regardless of reduced-motion) */
html{scroll-behavior:smooth}
#mission .v8-sweep .v8-l,#program .v8-ib .v8-l,#program .v8-dive-photo img,#chains .v8-poster,#mission .v8-max-photo img{will-change:transform,opacity}
@media (min-width:861px){#mission .v8-max-copy p:not(.ix-kicker){font-size:clamp(20px,1.6vw,24px)}}

/* smooth2: continuous scroll-linked words/lines (JS writes opacity/transform inline) */
#family .v8-w,#mission .v8-max-line{transition:none!important}
@media (max-width:860px){
  #program .v8-dive-photo img{transform-origin:50% 55%;transform:scale(calc(1 + .06 * var(--v8-hp,0)))!important}
}
/* smooth2: pure scroll-linked, no transitions on scrubbed items; stacked Harry push-in */
#family .v8-w,#mission .v8-max-line,#mission .v8-l,#program .v8-ib .v8-l{transition:none!important;will-change:transform,opacity}
@media (max-width:860px){#program .v8-dive-photo img{transform-origin:50% 45%;transform:scale(calc(1 + .06 * var(--v8-hp,0)))!important}}

/* ===== R4 ===== */
/* 1. hero tagline lockup, CSS-only arrival (visible without JS, same with reduced motion) */
.ix-hero .ix-hero-copy{position:relative;z-index:4}
.ix-hero .ix-hero-copy::before{content:"";position:absolute;inset:-40px -60px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 30% 55%,rgba(33,30,28,.78) 0,rgba(33,30,28,.45) 55%,transparent 80%)}
.ix-hero .v8-tag{margin:0 0 24px;font:600 clamp(48px,7.4vw,124px)/.9 var(--ix-font-display,'NC Oswald',Arial,sans-serif);
  text-transform:uppercase;letter-spacing:-.01em}
.ix-hero .v8-tag span{display:block;animation:v8TagIn 900ms cubic-bezier(.2,.7,.2,1) both}
.ix-hero .v8-tag-l1{color:#f4eee6;animation-delay:200ms!important}
.ix-hero .v8-tag-l2{color:#dcae90;animation-delay:750ms!important}
@keyframes v8TagIn{from{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ix-hero .v8-tag span{animation-duration:900ms!important;animation-iteration-count:1!important}}
@media (max-width:760px){.ix-hero .v8-tag{font-size:clamp(40px,12vw,60px)}}

/* 2. collab band charcoal + Harry photo */
#collab.v8-collab{position:relative;background:#211e1c!important;color:#f4eee6;overflow:hidden;min-height:clamp(420px,52vw,760px);display:flex;align-items:center}
#collab.v8-collab .ix-collab-stair{position:relative;z-index:2}
#collab.v8-collab .ix-collab-headwrap,#collab.v8-collab .ix-kicker{max-width:46%}
#collab.v8-collab .ix-collab-head,#collab.v8-collab .ix-collab-line1{color:#f4eee6!important}
#collab.v8-collab .ix-collab-line2{color:#dcae90!important}
#collab.v8-collab .ix-kicker{color:#dcae90!important}
#collab.v8-collab .ix-lead{color:#e6ddd2!important}
#collab.v8-collab .ix-text-link{color:#dcae90!important}
#collab .v8-collab-photo{position:absolute;top:0;right:0;bottom:0;width:62%;margin:0;overflow:hidden;z-index:1;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 28%);mask-image:linear-gradient(90deg,transparent 0,#000 28%)}
#collab .v8-collab-photo img{width:100%;height:100%;object-fit:cover;object-position:78% 40%;border-radius:0;display:block;
  transform:scale(calc(1 + .06 * var(--v8-cp,0)));transform-origin:75% 45%;will-change:transform}
@media (max-width:760px){
  #collab.v8-collab{display:block;min-height:0;padding-top:0!important}
  #collab .v8-collab-photo{position:relative;width:100%;height:auto;aspect-ratio:1672/941;
    -webkit-mask-image:linear-gradient(180deg,#000 75%,transparent 100%);mask-image:linear-gradient(180deg,#000 75%,transparent 100%)}
  #collab.v8-collab .ix-collab-headwrap,#collab.v8-collab .ix-kicker{max-width:none}
  #collab.v8-collab .ix-collab-stair{padding-top:8px}
}

/* 3. contact photo + headline lines */
#contact.v8-contact{position:relative;overflow:hidden;background:#211e1c}
#contact .v8-contact-photo{position:absolute;top:0;right:0;width:50%;height:min(100%,900px);z-index:0;pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 35%),linear-gradient(180deg,transparent 0,#000 15%,#000 70%,transparent 100%);
  -webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 35%),linear-gradient(180deg,transparent 0,#000 15%,#000 70%,transparent 100%);mask-composite:intersect}
#contact .v8-contact-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;opacity:.6;border-radius:0}
#contact .ix-contact-grid{position:relative;z-index:1}
#contact .v8-ct-line{display:block;will-change:transform,opacity}
@media (max-width:760px){#contact .v8-contact-photo{width:100%;height:420px;opacity:.55}}

/* 4. footer photo */
.v8-footer{position:relative;overflow:hidden;background:#211e1c}
.v8-footer .v8-footer-photo{position:absolute;inset:0;z-index:0;pointer-events:none;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 140px);mask-image:linear-gradient(180deg,transparent 0,#000 140px)}
.v8-footer .v8-footer-photo img{width:100%;height:100%;object-fit:contain;object-position:right bottom;opacity:.28;border-radius:0}
.v8-footer .v8-footer-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(33,30,28,.85) 0,rgba(33,30,28,.35) 70%)}
.v8-footer>*:not(.v8-footer-photo){position:relative;z-index:1}

/* 5. nutcase: contained film, one viewport */
#nutcase .nc-layout{min-height:0!important;height:auto!important}
#nutcase .nc-film-column{position:relative!important;height:auto!important;min-height:0!important}
#nutcase .nc-film-stage{position:relative!important;top:auto!important;height:auto!important;aspect-ratio:16/9;width:100%;max-width:1100px;margin:0 auto}
#nutcase .nc-film-stage video{width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important}
@media (min-width:861px){
  #nutcase .nc-layout{display:grid!important;grid-template-columns:1fr!important;justify-items:center;gap:32px}
  #nutcase .nc-copy{max-width:1100px;width:70vw}
  #nutcase .nc-film-column{width:70vw;max-width:1100px}
}
.ix-nutcase-wrap,#nutcase{height:auto!important;min-height:0!important}

/* 6. brushed silver wordmark + breathing room */
#program .v8-dive-copy p.v8-ib-word .v8-l{background:linear-gradient(180deg,#f7f7f7 0%,#c9ccd0 38%,#8f949a 52%,#e4e6e8 70%,#b3b7bc 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
html body #program.v7c-program.ix-chapter{padding-top:112px!important}
#program .v8-dive-stage{overflow:visible}

/* 7. soft seams: light sections dissolve from/to charcoal */
#family.ix-family{background:linear-gradient(180deg,#211e1c 0,#eae2d7 120px,#eae2d7 calc(100% - 120px),#211e1c 100%)!important}
#chains.v8-chains{background:linear-gradient(180deg,#211e1c 0,#eae2d7 120px,#eae2d7 calc(100% - 120px),#211e1c 100%)!important;padding-top:120px!important;padding-bottom:120px!important}
#mission.v7c-mission{background:linear-gradient(180deg,#211e1c 0,#eae2d7 120px)!important}
#family .sc-stage{background:transparent!important}
#nutcase.nc-section .nc-film-stage{min-height:0!important;aspect-ratio:16/9!important;height:auto!important}
#nutcase.nc-section .nc-film-stage video{aspect-ratio:16/9!important}
@media (max-width:860px){#nutcase .nc-film-column,#nutcase .nc-copy{width:100%}}
/* R4 fix: keep words off faces, compact nutcase */
.ix-hero .v8-tag{font-size:clamp(44px,5.4vw,88px)}
#collab.v8-collab .ix-collab-head{font-size:clamp(44px,5vw,84px)!important;line-height:.95}
@media (min-width:861px){
  #nutcase .nc-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;align-items:start}
  #nutcase .nc-copy>*{grid-column:1}
  #nutcase .nc-copy>.nc-intro,#nutcase .nc-copy>.nc-details,#nutcase .nc-copy>.nc-bottom-copy,#nutcase .nc-copy>.nc-pick-link{grid-column:2}
  #nutcase .nc-copy>.nc-intro{grid-row:1/span 2;margin-top:0}
  #nutcase .nc-lockup{width:240px!important;height:auto;margin:8px 0 12px}
  #nutcase .nc-copy h1{font-size:clamp(40px,4vw,64px)!important;margin:0!important}
  #nutcase.nc-section{padding-top:40px!important;padding-bottom:40px!important}
  #nutcase .nc-film-column{width:min(70vw,1100px)}
  #nutcase .nc-film-stage{max-width:none;width:100%}
}
/* R4 fix 2: seams carried by the dark side, contact photo in the empty column */
#collab.v8-collab{background:linear-gradient(180deg,#211e1c 0,#211e1c calc(100% - 120px),#eae2d7 100%)!important;padding-bottom:140px!important}
#family.ix-family{background:linear-gradient(180deg,#eae2d7 0,#eae2d7 calc(100% - 120px),#211e1c 100%)!important;padding-bottom:140px!important}
#contact .v8-contact-photo{left:0;right:auto;top:360px;bottom:0;height:auto;width:48%;
  -webkit-mask-image:linear-gradient(90deg,#000 55%,transparent 100%),linear-gradient(180deg,transparent 0,#000 25%,#000 75%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 55%,transparent 100%),linear-gradient(180deg,transparent 0,#000 25%,#000 75%,transparent 100%)}
#contact .v8-contact-photo img{opacity:.75}
@media (max-width:860px){#contact .v8-contact-photo{display:none}}
@media (max-width:860px){#program .v8-dive-photo{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 110px);mask-image:linear-gradient(180deg,transparent 0,#000 110px)}}

/* ===== v8 final: hero film, contained 16:9, whole film on one screen ===== */
.v9-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px}
.ix-hero.v9-hero{--v9-row:96px;min-height:0!important;height:auto!important;padding:0!important;background:#211e1c!important;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;position:relative;overflow:hidden}
.v9-hero .v9-hero-stage{position:relative;width:min(100vw,calc((100svh - var(--v9-row) - var(--v9-top,72px)) * 16 / 9));
  aspect-ratio:16/9;margin:0 auto;background:#211e1c;
  -webkit-mask-image:radial-gradient(ellipse 100% 100% at 50% 50%,#000 88%,transparent 100%);
  mask-image:radial-gradient(ellipse 100% 100% at 50% 50%,#000 88%,transparent 100%)}
@supports (mask-composite:intersect){.v9-hero .v9-hero-stage{
  mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4%,#000 96%,transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%),linear-gradient(180deg,transparent 0,#000 4%,#000 96%,transparent 100%);
  mask-composite:intersect;-webkit-mask-composite:source-in}}
.v9-hero .v9-hero-film{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;border-radius:0;background:#211e1c}
.v9-hero .v9-hero-row{height:var(--v9-row);display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:nowrap;padding:12px 16px}
.v9-hero .v9-hero-mark{width:40px;height:auto;flex:0 0 auto}
.v9-hero .v9-hero-row{height:auto;min-height:var(--v9-row)}
.v9-hero .v9-hero-cta,.v9-hero .v9-full-btn{border-radius:10px!important;margin:0!important}
.v9-hero [hidden]{display:none!important}
.v9-lightbox{position:fixed;inset:0;z-index:1000;background:rgba(18,16,15,.94);display:flex;align-items:center;justify-content:center;padding:16px}
.v9-lightbox video{width:min(100%,1280px);max-height:86vh;border-radius:0}
.v9-lb-close{position:absolute;top:16px;right:16px;border-radius:10px;padding:10px 16px;background:#f4eee6;color:#211e1c;border:0;font-weight:600}
@media (max-width:767px){.ix-hero.v9-hero{--v9-row:88px;justify-content:flex-start}
  .v9-hero .v9-hero-stage{width:100vw}}

/* ===== Nutcase: about one screen ===== */
@media (min-width:861px){
  #nutcase.nc-section{padding-top:48px!important;padding-bottom:48px!important}
  #nutcase .nc-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 58vw!important;align-items:center;gap:40px;justify-items:stretch;max-width:none;padding:0 32px}
  #nutcase .nc-copy{display:block!important;width:auto!important;max-width:none}
  #nutcase .nc-copy>*{margin-top:0}
  #nutcase .nc-copy p{margin:0 0 10px}
  #nutcase .nc-lockup{width:180px!important;margin:4px 0 8px}
  #nutcase .nc-copy h1{font-size:clamp(34px,3.2vw,52px)!important;margin:0 0 10px!important}
  #nutcase .nc-film-column{width:58vw!important;max-width:none;grid-column:2;grid-row:1}
  #nutcase .nc-film-stage{width:100%;max-height:calc(100vh - 140px)}
  #nutcase .nc-film-stage video{object-fit:contain!important;background:#000}
}
@media (max-width:860px){
  #nutcase.nc-section{padding-top:32px!important;padding-bottom:32px!important}
  #nutcase .nc-layout{gap:16px!important}
  #nutcase .nc-film-column{order:-1;width:100%!important}
  #nutcase .nc-film-stage video{object-fit:contain!important;background:#000}
  #nutcase .nc-copy p{margin:0 0 8px}
  #nutcase .nc-lockup{width:150px!important;margin:4px 0}
}

/* ===== Seams: full-width dissolves, no 1px lines ===== */
.ix-footer.v8-footer{border-top:0!important}
.v8-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:120px;z-index:1;pointer-events:none;background:linear-gradient(180deg,var(--v9-prev,#211e1c),rgba(33,30,28,0))}
#program,#mission,#family,#collab{position:relative}
#program::before,#mission::before{content:"";position:absolute;left:0;right:0;top:-1px;height:120px;z-index:3;pointer-events:none}
#program::before{background:linear-gradient(180deg,#f4eee6 0,rgba(244,238,230,0) 100%)}
#mission::before{background:linear-gradient(180deg,#211e1c 0,rgba(33,30,28,0) 100%)}
#family::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;z-index:3;pointer-events:none;background:linear-gradient(180deg,rgba(33,30,28,0),#211e1c)}
#family img,#program img{-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 80%,transparent 100%)}
#collab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:130px;z-index:3;pointer-events:none;background:linear-gradient(180deg,rgba(33,30,28,0),#211e1c)}
#collab .v8-collab-photo{-webkit-mask-image:linear-gradient(180deg,#000 75%,transparent 100%),linear-gradient(90deg,transparent 0,#000 18%);mask-image:linear-gradient(180deg,#000 75%,transparent 100%),linear-gradient(90deg,transparent 0,#000 18%);-webkit-mask-composite:source-in;mask-composite:intersect}

/* ===== Contact sub-line legibility ===== */
#contact .ix-contact-intro>p{position:relative;z-index:2;display:inline-block;background:rgba(24,21,19,.82);padding:8px 12px;color:#f4eee6}

/* ===== Footer platform line ===== */
.v9-powered{position:relative;z-index:1;text-align:center;font-size:12px;letter-spacing:.04em;color:#bdb3a9;margin:24px 0 0;padding-bottom:8px}
/* final pass: seam colors match both neighbours */
#program::before{background:none;display:none}
#family::before{content:"";position:absolute;left:0;right:0;top:-1px;height:130px;z-index:3;pointer-events:none;background:linear-gradient(180deg,#211e1c 0,rgba(33,30,28,0) 100%)}
#family{position:relative}
/* contact sub-line local scrim */
#contact .v8-sub-scrim{position:relative;display:inline-block;padding:6px 12px;margin-left:-12px;border-radius:10px;background:rgba(33,30,28,.72)}

/* Errol 12:03: full story film, EDGE TO EDGE hero (no side matte). Height capped to the
   first screen; cover crop biased to the top so the baked tagline and dog heads stay in. */
.v9-hero .v9-hero-stage{width:100vw!important;max-width:none!important;aspect-ratio:auto!important;
  height:min(56.25vw,calc(100svh - var(--v9-top,72px)))!important;
  -webkit-mask-image:linear-gradient(180deg,#000 0,#000 90%,transparent 100%)!important;
  mask-image:linear-gradient(180deg,#000 0,#000 90%,transparent 100%)!important;-webkit-mask-composite:source-over!important;mask-composite:add!important}
.v9-hero .v9-hero-film{object-fit:cover!important;object-position:50% 38%!important}
@media (min-width:768px){
  .v9-hero .v9-hero-row{position:absolute;right:clamp(16px,3vw,48px);bottom:clamp(24px,5vh,56px);min-height:0;padding:0;z-index:2}
}
@media (max-width:767px){.v9-hero .v9-hero-stage{height:56.25vw!important}}
.ix-brand span{align-self:center}

/* Errol 12:08: NEVER cut the top of a head. Hero shows the full 16:9 frame edge to edge
   (no height cap, so no vertical crop at any width). */
.v9-hero .v9-hero-stage{height:56.25vw!important}
.v9-hero .v9-hero-film{object-fit:cover!important;object-position:50% 50%!important}
/* Collab: whole Harry incl. cap and the full Nutcase can. Photo box matches the image ratio
   (no crop), fades only on the empty left edge and the very bottom. */
@media (min-width:768px){
  #collab .v8-collab-photo{top:50%!important;bottom:auto!important;height:auto!important;aspect-ratio:1672/941;transform:translateY(-50%)}
  #collab .v8-collab-photo img{object-fit:contain!important;object-position:50% 50%!important;height:auto!important}
}
#collab .v8-collab-photo{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14%),linear-gradient(180deg,#000 88%,transparent 100%)!important;mask-image:linear-gradient(90deg,transparent 0,#000 14%),linear-gradient(180deg,#000 88%,transparent 100%)!important;-webkit-mask-composite:source-in!important;mask-composite:intersect!important}

/* edge-to-edge seams (9/28): every boundary fades full viewport width */
html,body{overflow-x:clip}
#program{position:relative}
#program::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,rgba(33,30,28,0) 0,#211e1c 100%)}
#nutcase.nc-section{padding-top:112px!important}
@media (max-width:860px){#nutcase.nc-section{padding-top:96px!important}}
/* keep the hero CTA clear of the host's corner badge on the preview */
@media (min-width:768px){.v9-hero .v9-hero-row{bottom:clamp(76px,11vh,110px)!important}}

/* Errol 12:11 LAST CHANGE: whole film AND whole hero in one screen. The film keeps its full
   16:9 frame (never cropped) sized to the space under the header; a blurred copy of the same
   film fills the rest of the width so it still reads edge to edge. */
.ix-hero.v9-hero{height:calc(100svh - var(--v9-top,72px))!important;max-height:calc(100svh - var(--v9-top,72px));justify-content:center!important}
.v9-hero .v9-hero-amb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(38px) brightness(.55) saturate(1.1);transform:scale(1.12);z-index:0;pointer-events:none}
.v9-hero .v9-hero-stage{position:relative;z-index:1;height:min(56.25vw,calc(100svh - var(--v9-top,72px)))!important;
  width:min(100vw,calc((100svh - var(--v9-top,72px)) * 16 / 9))!important;margin:0 auto!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)!important}
.v9-hero .v9-hero-film{object-fit:contain!important;object-position:50% 50%!important;background:transparent!important}
@media (min-width:768px){.v9-hero .v9-hero-row{position:absolute;z-index:3;bottom:clamp(76px,11vh,110px)!important}}
@media (max-width:767px){
  .ix-hero.v9-hero{height:auto!important;max-height:none}
  .v9-hero .v9-hero-amb{display:none}
  .v9-hero .v9-hero-stage{width:100vw!important;height:56.25vw!important;-webkit-mask-image:none!important;mask-image:none!important}
}

/* Errol 12:13: NO blur. Whole film, crisp, fits the first screen; nothing else behind it. */
.v9-hero .v9-hero-amb{display:none!important}
.v9-hero .v9-hero-stage{-webkit-mask-image:none!important;mask-image:none!important}
/* Errol 12:14: fill the SIDES (edge to edge, no bars, no blur) AND fit the first screen.
   Film covers the full width at screen height; crop comes only off the BOTTOM (floor),
   never the top, so heads and the baked tagline always stay whole. */
.v9-hero .v9-hero-stage{width:100vw!important;height:calc(100svh - var(--v9-top,72px))!important;max-height:56.25vw}
.v9-hero .v9-hero-film{object-fit:cover!important;object-position:50% 0%!important}
@media (max-width:767px){.v9-hero .v9-hero-stage{height:56.25vw!important;max-height:none}}
/* Errol 12:17: ZOOM OUT. The whole film frame is always visible (the Nutcase can hitting the
   floor at the bottom, heads and tagline at the top). Nothing cropped, no blur. It fills the
   width wherever the screen shape allows; only on screens wider than 16:9 do thin charcoal
   sides remain. Still one screen tall. */
.v9-hero .v9-hero-stage{width:min(100vw,calc((100svh - var(--v9-top,72px)) * 16 / 9))!important;
  height:auto!important;max-height:none!important;aspect-ratio:16/9;margin:0 auto!important}
.v9-hero .v9-hero-film{object-fit:contain!important;object-position:50% 50%!important}
@media (max-width:767px){.v9-hero .v9-hero-stage{width:100vw!important;height:56.25vw!important}}
/* Errol 12:20: edge to edge AND never cropped. Full viewport width at the film's own 16:9
   shape: nothing trimmed, no side bars. On a normal laptop it fits the first screen; on a
   very wide, short window the bottom of the film runs just under the fold. */
.ix-hero.v9-hero{height:auto!important;max-height:none!important}
.v9-hero .v9-hero-stage{width:100vw!important;height:56.25vw!important;aspect-ratio:auto!important;max-height:none!important}
.v9-hero .v9-hero-film{object-fit:contain!important}
/* Errol 12:22: can + side to side. Header floats over the top of the film (soft dark
   gradient, fully readable) so the film starts at the very top and its whole frame,
   including the can on the floor, fits a standard full-screen laptop, edge to edge. */
body{position:relative}
header.ix-nav{position:absolute!important;top:0;left:0;right:0;margin-inline:auto;z-index:20;background:transparent!important}
header.ix-nav::before{content:"";position:absolute;top:0;bottom:-28px;left:50%;width:100vw;transform:translateX(-50%);z-index:-1;
  background:linear-gradient(180deg,rgba(24,21,20,.82) 0,rgba(24,21,20,.55) 60%,rgba(24,21,20,0) 100%);pointer-events:none}
/* Errol 12:27: platform credit small, centered, at the very bottom of the page */
.ix-footer .v9-powered,p.v9-powered{display:block!important;width:100%!important;max-width:none!important;text-align:center!important;
  margin:0 auto!important;padding:18px 16px 22px!important;font:500 11px/1.4 Arial,sans-serif!important;letter-spacing:.08em;
  color:rgba(234,226,215,.62)!important;position:relative;z-index:2;clear:both}

footer.ix-footer{padding-bottom:0!important}
.ix-footer .v9-powered,p.v9-powered{margin-top:clamp(24px,6vh,64px)!important;padding:10px 16px 14px!important}
/* Errol 12:31: exact film, whole frame (can on the floor + necklaces), NO scrolling.
   Film is sized to the full screen height (header floats over it), full width whenever the
   screen is 16:9 or taller; only wider-than-16:9 windows show a narrow charcoal margin. */
.v9-hero .v9-hero-stage{width:min(100vw,calc(100svh * 16 / 9))!important;height:auto!important;aspect-ratio:16/9!important;margin:0 auto!important}
.v9-hero .v9-hero-film{object-fit:contain!important;width:100%!important;height:100%!important}
@media (max-width:767px){.v9-hero .v9-hero-stage{width:100vw!important}}

/* Errol 5:17 PM: soft edges. Same sizing as 12:31; the film fades into the charcoal on all
   four edges (narrow, no blur, no haze) so there are no hard lines. */
.v9-hero .v9-hero-stage{
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%),linear-gradient(180deg,transparent 0,#000 6%,#000 94%,transparent 100%)!important;
  -webkit-mask-composite:source-in!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%),linear-gradient(180deg,transparent 0,#000 6%,#000 94%,transparent 100%)!important;
  mask-composite:intersect!important}

/* Errol 5:58 PM: breathing room above the film so the baked tagline never crowds the floating
   header; film shrinks by the same amount so the whole frame still fits one screen. */
@media (min-width:768px){
  .ix-hero.v9-hero{padding-top:44px!important}
  .v9-hero .v9-hero-stage{width:min(100vw,calc((100svh - 44px) * 16 / 9))!important}
}
/* QR deep link (?src=qr): tight section top, slim discount line, one-tap shop button */
.v10-qr .v8-contact{padding-top:20px!important}
.v10-qr .v8-contact .ix-giveback{display:none}
.v10-qr .v8-contact .ix-flavor-product img{max-height:110px;width:auto;margin-inline:auto}
.v10-qr .v8-contact .ix-field-grid{gap:10px}
.v10-qr .v8-contact .ix-contact-intro{display:none}
.v10-qr-line{margin:0 0 12px;font:600 15px/1.35 Arial,sans-serif;color:#f4eee6;letter-spacing:.01em}
.v10-shop-btn{display:inline-block;margin-top:16px;border-radius:10px!important;text-decoration:none}
.v10-shop-btn[hidden]{display:none!important}
.v10-qr .v8-contact .ix-field:has(#ix-favorite){display:none}

/* DEVQA 9/28 device pass */
/* D1+D2: flavor cards, square well sized to its image, image fills it (no empty band) */
#contact .ix-flavor-product{aspect-ratio:1/1!important;height:auto!important}
#contact .ix-flavor-product img,.v10-qr .v8-contact .ix-flavor-product img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;margin:0!important}
@media (min-width:600px){#contact .ix-flavor-grid{grid-template-columns:repeat(3,1fr)!important}}
@media (min-width:1024px){#contact .ix-flavor{max-height:240px}}
@media (min-width:1024px) and (max-height:800px){#contact .ix-flavor{max-height:200px}#contact .ix-flavor-product{max-height:160px}}
/* D3: QR path tighter form, two-up name/email, sticky Send fallback */
.v10-qr #contact .ix-field{margin-bottom:12px}
.v10-qr #contact .ix-field input,.v10-qr #contact .ix-field select{min-height:48px;height:48px;padding:10px 14px}
.v10-qr #contact .ix-field label,.v10-qr #contact .ix-field-label{margin-bottom:6px}
.v10-qr #contact .ix-field-grid{margin-bottom:12px}
.v10-qr #contact .ix-flavors{margin-bottom:16px}
.v10-qr #contact .ix-flavors legend{margin-bottom:8px}
@media (min-width:600px){.v10-qr #contact .ix-field-grid{grid-template-columns:1fr 1fr;column-gap:12px}}
@media (max-height:760px){.v10-qr #contact .ix-flavor-label{padding:8px 28px 0 8px}.v10-qr #contact .ix-kicker{margin:0 0 8px}.v10-qr #contact .ix-flavor{padding-bottom:8px}}
.v10-qr #ix-contact-form button[type=submit]{position:sticky;bottom:12px;z-index:5;box-shadow:0 6px 24px rgba(0,0,0,.45)}
/* D4: discount line sits in the form column, right above PICK YOUR FLAVOR */
@media (min-width:901px){#contact .v10-qr-line{grid-column:2;margin:0 0 8px}}
/* D6: portrait tablets stack the collab band, photo under the text */
@media (min-width:700px) and (max-width:1024px) and (orientation:portrait){
  #collab.v8-collab{display:flex;flex-direction:column;align-items:stretch;min-height:0}
  #collab.v8-collab .ix-collab-headwrap,#collab.v8-collab .ix-kicker{max-width:none}
  #collab .v8-collab-photo{order:2;position:relative!important;top:auto!important;right:auto;bottom:auto!important;transform:none!important;width:100%;height:auto!important;aspect-ratio:1672/941;margin-top:24px;
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)!important;-webkit-mask-composite:source-over!important;mask-composite:add!important}
}
/* D7: no duplicate CTA + mark over the film from 700px up; header CTA carries it */
@media (min-width:700px){.v9-hero .v9-hero-row{display:none!important}}
