/* Each row is a real suspension: rope → peg → photograph. */
body.camp-page.camp-native-home #top .camp-advantages-board {
 grid-template-columns:repeat(4,minmax(0,1fr)); gap:78px 44px;
 margin-top:28px; padding:52px 16px 24px; background:none; isolation:isolate;
}
body.camp-page.camp-native-home #top .camp-advantage-card {
 --hang-angle:-1deg; position:relative; z-index:2; margin:0; inset:auto;
 transform:rotate(var(--hang-angle)); transform-origin:50% -6px;
 box-shadow:0 10px 18px #283c2b13,0 2px 4px #283c2b0c;
 transition:transform .35s ease,box-shadow .35s ease; will-change:auto;
}
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(even) { --hang-angle:1deg; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+1) { margin-top:0px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+2) { margin-top:28px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+3) { margin-top:42px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+4) { margin-top:16px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+5) { margin-top:12px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+6) { margin-top:46px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+7) { margin-top:32px; }
body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(8n+8) { margin-top:0px; }
body.camp-page.camp-native-home #top .camp-advantage-card:is(:hover,:focus-visible) {
 transform:rotate(0deg); box-shadow:0 14px 22px #283c2b1a,0 2px 4px #283c2b0c;
}
body.camp-page.camp-native-home #top .camp-advantage-card:focus-visible { outline:2px solid var(--brand-green); outline-offset:5px; }
body.camp-page.camp-native-home #top .camp-advantage-card::after,
body.camp-page.camp-native-home #top .camp-promo-snapshot::after {
 content:""; display:block; position:absolute; top:2px; left:50%; right:auto;
 width:13px; height:5px; border:0; border-radius:50%; z-index:5; pointer-events:none;
 transform:translateX(-40%); background:radial-gradient(ellipse,#35271560,transparent 72%);
 box-shadow:none; opacity:1; filter:blur(.6px);
}
/* The rope sits in the jaw recess; the lower jaw overlaps the paper by 6px. */
body.camp-page.camp-native-home #top .camp-advantage-card::before,
body.camp-page.camp-native-home #top .camp-promo-snapshot::before,
body.camp-page.camp-native-home #top .camp-promo-main-tape {
 content:""; display:block; position:absolute; top:-42px; left:50%; right:auto;
 width:32px; height:48px; z-index:6; opacity:1; pointer-events:none; mix-blend-mode:normal;
 border:0; border-radius:0; clip-path:none;
 background:url("./seasons/peg-real-v1.ea52be0e570d.webp") center/100% 100% no-repeat;
 box-shadow:none; filter:drop-shadow(1px 2px 1px #3c332929);
 transform:translateX(-56%);
}
body.camp-page.camp-native-home[data-season="winter"] #top .camp-advantage-card::before,
body.camp-page.camp-native-home[data-season="winter"] #top .camp-promo-snapshot::before,
body.camp-page.camp-native-home[data-season="winter"] #top .camp-promo-main-tape {
 background:url("./seasons/frost-corner.18f059b6e826.svg") center top/13px 10px no-repeat,
  url("./seasons/peg-real-v1.ea52be0e570d.webp") center/100% 100% no-repeat;
}
.album-suspension { position:absolute; inset:0; width:100%; height:100%; z-index:1; overflow:visible; pointer-events:none; }
.album-light-spill { position:absolute; inset:0; width:100%; height:100%; z-index:3; overflow:visible; pointer-events:none; }
.album-cord { filter:drop-shadow(0 2px 1px #3c332926); }
.album-cord-snow { fill:none; stroke:#f7fbfa; stroke-width:3; stroke-linecap:round; transform:translateY(-3px); opacity:.9; }
.album-bulb { overflow:visible; }
.album-peg-contact { fill:#3e2c1d; opacity:.24; filter:blur(.7px); }
.album-lamp-front { filter:drop-shadow(.6px .8px .45px #30231970); }
body.camp-page.camp-native-home #top .camp-promo-main-tape::after {
 content:""; position:absolute; bottom:-2px; left:40%; width:13px; height:5px;
 background:radial-gradient(ellipse,#35271560,transparent 72%); filter:blur(.6px);
}
/* The video has two pegs; the three supporting photographs get their own row. */
body.camp-page.camp-native-home #top .camp-promo-album {
 width:calc(100% - 40px); max-width:none; grid-template-columns:minmax(200px,.3fr) minmax(0,1fr);
 align-items:start; gap:40px;
}
body.camp-page.camp-native-home #top .camp-promo-album-copy {
 align-self:start; justify-self:start; margin-top:62px; width:100%; padding:0 0 0 8px;
 background:none; border:0; box-shadow:none; transform:none;
}
body.camp-page.camp-native-home #top .camp-promo-album-copy::before { display:none; }
body.camp-page.camp-native-home #top .camp-promo-album-copy h2 { font-size:clamp(32px,3.5vw,50px); line-height:1.05; }
body.camp-page.camp-native-home #top .camp-promo-album-copy>span { font-weight:500; line-height:1.6; }
body.camp-page.camp-native-home #top .camp-promo-album-board {
 display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:68px 44px;
 padding:48px 16px 20px; min-height:0;
}
body.camp-page.camp-native-home #top .camp-promo-album-board::before,
body.camp-page.camp-native-home #top .camp-promo-album-board::after,
body.camp-page.camp-native-home #top .camp-promo-album-ornament { display:none; }
body.camp-page.camp-native-home #top .camp-promo-main-polaroid {
 grid-column:1/-1; position:relative; inset:auto; width:auto; min-width:0; margin:0;
 transform:none; z-index:2; gap:12px; padding:12px 12px 18px;
 box-shadow:0 12px 25px #283c2b17,0 2px 5px #283c2b0a;
}
body.camp-page.camp-native-home #top .camp-promo-video-window { aspect-ratio:16/9; }
body.camp-page.camp-native-home #top .camp-promo-video { width:100%; height:100%; object-fit:cover; }
body.camp-page.camp-native-home #top .camp-promo-video-texture,
body.camp-page.camp-native-home #top .camp-promo-video-window::before,
body.camp-page.camp-native-home #top .camp-promo-video-window::after { display:none; }
body.camp-page.camp-native-home #top .camp-promo-main-tape-left { left:25%; }
body.camp-page.camp-native-home #top .camp-promo-main-tape-right { left:75%; }
body.camp-page.camp-native-home #top .camp-promo-snapshots { display:contents; }
body.camp-page.camp-native-home #top .camp-promo-snapshot {
 display:block; position:relative; inset:auto; z-index:2; width:auto; height:auto;
 min-width:0; margin:0; aspect-ratio:4/3; padding:7px 7px 20px;
 animation:none; transform:rotate(-1deg); transform-origin:50% -6px;
 box-shadow:0 8px 16px #283c2b17; border-radius:2px;
}
body.camp-page.camp-native-home #top .camp-promo-snapshot:nth-child(2) { margin-top:24px; transform:rotate(1deg); }
body.camp-page.camp-native-home #top .camp-promo-snapshot img { height:100%; object-fit:cover; }
@media(max-width:1000px) {
 body.camp-page.camp-native-home #top .camp-advantages-board { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(n) { margin-top:0; }
  body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(4n+1) { margin-top:0px; }
 body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(4n+2) { margin-top:26px; }
 body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(4n+3) { margin-top:24px; }
 body.camp-page.camp-native-home #top .camp-advantage-card:nth-child(4n+4) { margin-top:0px; }
 body.camp-page.camp-native-home #top .camp-promo-album { grid-template-columns:1fr; gap:12px; }
 body.camp-page.camp-native-home #top .camp-promo-album-copy { margin-top:0; max-width:680px; }
}
@media(max-width:600px) {
 body.camp-page.camp-native-home #top .camp-advantages-board { grid-template-columns:1fr; gap:64px; padding:48px 12px 20px; margin-top:18px; }
 body.camp-page.camp-native-home #top .camp-advantages-board .camp-advantage-card:nth-child(n) { margin-top:0; }
 body.camp-page.camp-native-home #top .camp-promo-album { width:calc(100% - 24px); }
 body.camp-page.camp-native-home #top .camp-promo-album-board { gap:42px 12px; padding:42px 6px 12px; }
 body.camp-page.camp-native-home #top .camp-promo-main-polaroid { padding:7px 7px 12px; }
 body.camp-page.camp-native-home #top .camp-promo-snapshot { padding:4px 4px 12px; }
 body.camp-page.camp-native-home #top .camp-promo-snapshot::before { width:24px; height:36px; top:-32px; }
 body.camp-page.camp-native-home #top .camp-promo-polaroid-caption span { font-size:9px; letter-spacing:.08em; }
}
@media(prefers-reduced-motion:reduce) { body.camp-page.camp-native-home #top .camp-advantage-card { transition:none; } }

body.camp-page.camp-native-home #top .camp-promo-album-copy .season-title-mark { display:none; }

.album-lamp-halo {
 opacity:.6; transform-box:fill-box; transform-origin:center; animation:album-lamp-breathe var(--lamp-cycle,7s) ease-in-out var(--lamp-delay,0s) infinite;
}
.album-lamp-filament {
 opacity:.25; mix-blend-mode:screen;
 animation:album-filament-breathe var(--lamp-cycle,7s) ease-in-out var(--lamp-delay,0s) infinite;
}
@keyframes album-lamp-breathe {
 0%,18%,100% { opacity:.12; transform:scale(.75); }
 48%,60% { opacity:.95; transform:scale(1.12); }
 80% { opacity:.4; transform:scale(.93); }
}
@keyframes album-filament-breathe {
 0%,18%,100% { opacity:.12; }
 48%,60% { opacity:.78; }
 80% { opacity:.3; }
}
body[data-season-motion="paused"] .album-lamp-halo,
body[data-season-motion="paused"] .album-lamp-filament { animation-play-state:paused; }
@media(prefers-reduced-motion:reduce) {
 .album-lamp-halo,.album-lamp-filament { animation:none; opacity:.55; }
}
