/* Expansive editorial rhythm after the tent reveal. */
:root{--story-space:clamp(100px,13vw,210px)}
.wrap{width:calc(100% - 120px);max-width:1280px}
.section{padding:var(--story-space) 0}
.eyebrow{font-size:.83rem;letter-spacing:.13em;line-height:1.7}
.story-lead{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.55;letter-spacing:-.025em}
.story-support{font-size:1rem;line-height:1.75;max-width:430px}
h2,h3{text-wrap:balance}
.hero,.js .hero{padding:clamp(110px,13vw,200px) 6vw 100px;overflow:hidden}
.hero-panel,.js .hero-panel{max-width:1160px}
.hero h1{max-width:1120px;font-size:clamp(3.4rem,7.3vw,7.5rem);line-height:1.03;margin:38px auto 55px;letter-spacing:-.048em}
.hero-intro{max-width:600px;font-size:clamp(1.12rem,1.7vw,1.4rem);line-height:1.65}
.hero-reassurance{font-size:.92rem;color:var(--soft);margin:18px 0 0}
.hero .actions{margin:38px auto 0;gap:18px}
.button{min-height:56px;padding:17px 30px;font-size:.9rem}
.camp-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:92px auto 0;max-width:960px;padding-top:32px;border-top:1px solid #332f1e25}
.camp-facts dt{font-size:1rem;font-weight:600}.camp-facts dd{margin:8px 0 0;color:var(--soft);font-size:.85rem}
.nav{padding:16px 5vw;background:#faf6eced;backdrop-filter:blur(18px)}.wordmark{font-size:1.7rem}.nav .button{min-height:42px;padding:10px 22px;font-size:.8rem}
.story-pair{display:grid;grid-template-columns:.4fr 1fr;gap:10%;align-items:start;max-width:1100px}
.story-pair>.eyebrow{padding-top:18px}
.familiar{background:var(--cream)}.familiar h2{font-size:clamp(3.3rem,6vw,6.4rem);line-height:1.08;max-width:730px;margin-bottom:45px}
.familiar .story-lead{max-width:600px;margin:0 0 28px}
.familiar .marker{font-size:1.22em}
.order{padding:clamp(110px,15vw,230px) 0;position:relative;overflow:hidden}
.order .wrap{max-width:1160px}.order .eyebrow{margin-bottom:50px}
.order h2{font-size:clamp(3.4rem,8.7vw,9rem);line-height:1.02;letter-spacing:-.05em}
.order h2 span{display:block}.order h2 span+span{margin-top:14px}
.order em{font-family:Marker,cursive;font-weight:400;font-style:normal;letter-spacing:-.045em;color:var(--yellow)}
.order p:last-child{max-width:540px;margin:52px auto 0;font-size:1.15rem;line-height:1.7}
.days{padding-bottom:120px}.days .section-head{max-width:900px;margin-bottom:80px}
.days .section-head h2{font-size:clamp(3.7rem,6.5vw,6.8rem);line-height:1.1;margin:26px 0 35px}
.days .section-head .lead{font-size:1.1rem;max-width:none}
.day-row{max-width:none;grid-template-columns:1fr 1.07fr;gap:10%;min-height:85svh;padding:90px 0;margin:0;align-items:center}
.day-row .photo,.day-row.reverse .photo{order:2;border-radius:2px;overflow:hidden;background:var(--paper);box-shadow:none}
.day-row .day-copy,.day-row.reverse .day-copy{order:1}
.day-row.reverse .photo{order:1}.day-row.reverse .day-copy{order:2}
.day-row .photo img{aspect-ratio:4/4.7;border-radius:2px;object-fit:cover}
.day-row:nth-of-type(2) .photo{transform:rotate(-2deg)}
.day-row:nth-of-type(3) .photo{transform:rotate(2deg)}
.day-copy h3{font-size:clamp(3.4rem,5.9vw,6rem);line-height:1.02;margin:25px 0 35px}
.day-copy>p:not(.eyebrow){font-size:1.08rem;line-height:1.7;max-width:410px}
.day-copy .day-outcome{border-top:1px solid #332f1e28;margin-top:42px;padding-top:24px;font-weight:500}
.day-outcome span{display:block;font-size:.75rem;font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--olive);margin-bottom:9px}
.days>.wrap>.center{margin-top:65px}
.takeaways{background:#E8EBD9;text-align:center;overflow:hidden}
.takeaways .wrap{max-width:1140px}
.takeaways h2{font-size:clamp(3.6rem,7vw,7.5rem);margin:32px auto 45px;line-height:1.09}
.takeaways h2 .marker{font-size:1.02em}.takeaways .story-lead{max-width:580px;margin:auto}
.take-home{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:90px;text-align:left;border-top:1px solid #332f1e2a;padding-top:32px}
.take-home p{font-weight:600;color:var(--ink);font-size:1.08rem;margin:0}.take-home span{display:block;font-weight:400;font-size:.94rem;line-height:1.7;margin-top:14px;color:var(--soft)}
.process{background:var(--cream);color:var(--ink);padding-bottom:100px}
.process .wrap{max-width:1440px;width:calc(100% - 80px)}
.proof-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:0 9%;max-width:1160px;margin:0 auto 80px;align-items:end}
.proof-heading .eyebrow{grid-column:1/-1;margin-bottom:30px}
.process h2{font-size:clamp(3.4rem,5.7vw,6rem);line-height:1.1;max-width:none;margin:0;text-align:left}
.proof-heading>p:last-child{font-size:1.08rem;line-height:1.8;max-width:390px}
.proof-photo{margin:0}.proof-photo img{aspect-ratio:1.65;object-fit:cover;border-radius:3px}.proof-photo figcaption{font-size:.8rem;color:var(--soft);padding:20px 0;text-align:right}
.process-demo{max-width:1160px;margin:25px auto 0;border-top:1px solid #332f1e25;padding:22px 0;font-size:.9rem;color:var(--soft)}
.process-demo summary{cursor:pointer}.process-demo .video-placeholder{margin:28px 0 0;max-width:720px;aspect-ratio:16/9}
.fit .wrap{max-width:1160px}.fit-grid{grid-template-columns:1.1fr 1fr;gap:12%;align-items:start}.fit h2{font-size:clamp(3.2rem,5vw,5.1rem);max-width:none;line-height:1.12}.fit li{padding:30px 0;font-size:1.05rem;line-height:1.8}.fit li:first-child{padding-top:5px}.fit strong{display:block;font-weight:600}
.seats{background:var(--paper)}.seats .wrap{max-width:1100px}.seats h2{font-size:clamp(3.7rem,6.7vw,7rem);line-height:1.08;margin:28px 0 35px}.seat-intro{font-size:1.1rem;max-width:600px;margin:0 auto}
.seat-grid{max-width:none;gap:35px;margin:70px 0 30px;align-items:stretch}.seat-card{border:0;border-radius:4px;padding:48px 42px;background:var(--cream)}.seat-card h3{font-family:Sauce,sans-serif;font-size:1.15rem;letter-spacing:-.02em;margin-bottom:40px}.seat-card h3 span{font-family:Camp,serif;font-size:5.3rem;letter-spacing:-.06em;margin-top:25px}.seat-card li{font-size:.95rem;line-height:1.7;margin-bottom:18px}.seat-card .button{min-height:55px}.seat-card.playbook{background:var(--sage-light)}
.counselor .wrap{max-width:1100px}.counselor-grid{grid-template-columns:1fr 1fr;gap:12%;align-items:center}.counselor h2{font-size:clamp(4rem,7.5vw,8rem);line-height:1.02;margin:30px 0 0}.counselor .marker{font-size:1.15em}.counselor p{font-size:1.05rem;line-height:1.85}.counselor .story-lead{font-size:1.65rem;line-height:1.5;color:var(--ink);margin-bottom:30px}
.questions{background:var(--cream);border-top:1px solid #332f1e20;padding-top:90px}.questions .wrap{max-width:1100px}.faq-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:10%}.faq-grid>h2{text-align:left;font-size:clamp(3rem,4vw,4.2rem);margin:0}.faq-item button{font-size:1rem;padding:27px 0;line-height:1.6}.faq-item p{font-size:.97rem;line-height:1.8}
.close{min-height:100svh;padding:130px 8vw;background:#182410;isolation:isolate}.close::after{content:"";position:absolute;inset:0;z-index:-1;background:#10200bc4}.close-scene{z-index:-2}.close-flap{display:none}.close-panel{background:none;max-width:1040px;padding:0;color:var(--cream)}.close-panel h2{font-size:clamp(3.5rem,6.2vw,6.2rem);line-height:1.08;margin-bottom:45px}.close-panel .fine{color:var(--cream);font-size:.9rem;margin-top:28px}
footer{padding:36px;font-size:.85rem}
/* Reveals move only a short distance; content never waits on a long sequence. */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
.js .reveal.visible{opacity:1;transform:translateY(0)}
.js .hero h1.reveal{transition-duration:1s,1.2s}.js .day-row .photo.reveal{transition:opacity 1s ease,transform 1.2s cubic-bezier(.16,1,.3,1)}
.js .photo img,.js .proof-photo img{opacity:0;transition:opacity .6s ease}.js .photo img.is-loaded,.js .proof-photo img.is-loaded{opacity:1}
.photo,.proof-photo{overflow:hidden;background:var(--paper)}
@media(min-width:1500px){.day-row{gap:13%}.hero,.js .hero{padding-bottom:130px}}
@media(max-width:1000px){.wrap{width:calc(100% - 72px)}.story-pair{grid-template-columns:.3fr 1fr;gap:7%}.day-row{gap:7%;min-height:70svh;padding:70px 0}.day-copy h3{font-size:4rem}.day-copy>p:not(.eyebrow){font-size:1rem}.seat-card{padding:35px 28px}.proof-heading{gap:6%}.take-home{gap:25px}.fit-grid{gap:7%}.counselor-grid{gap:9%}}
@media(max-width:650px){
 :root{--story-space:90px}.wrap{width:calc(100% - 48px)}
 .hero,.js .hero{padding:85px 24px 65px}.hero h1{font-size:clamp(2.8rem,11.2vw,4.1rem);margin:30px 0 35px;line-height:1.07}.hero-intro{font-size:1.13rem;line-height:1.7}.hero .eyebrow{font-size:.78rem}.hero-reassurance{font-size:.88rem}.hero .actions{margin-top:30px}.camp-facts{grid-template-columns:1fr;gap:22px;margin-top:50px;padding-top:28px}.camp-facts>div{display:flex;justify-content:space-between;gap:15px;text-align:left;align-items:center}.camp-facts dt{font-size:.88rem}.camp-facts dd{font-size:.8rem;margin:0;text-align:right;max-width:135px}
 .nav{padding:13px 24px}.wordmark{font-size:1.6rem}.nav .button{font-size:.76rem;padding:10px 16px}
 .story-pair{display:block}.story-pair>.eyebrow{padding:0;margin-bottom:30px}.familiar h2{font-size:3.5rem;margin-bottom:35px}.story-lead{font-size:1.25rem}.familiar .story-support{font-size:1rem}
 .order{padding:105px 0}.order .eyebrow{margin-bottom:38px}.order h2{font-size:clamp(3rem,12vw,4.5rem)}.order p:last-child{font-size:1.05rem;margin-top:38px}
 .days{padding-bottom:90px}.days .section-head{margin-bottom:40px;text-align:left}.days .section-head h2{font-size:3.6rem;margin:25px 0 32px}.days .section-head .lead{font-size:1rem;margin-left:0}
 .day-row,.day-row.reverse{display:flex;flex-direction:column;align-items:stretch;gap:38px;padding:45px 0 55px;min-height:0}.day-row .photo,.day-row.reverse .photo{order:1;max-width:none;width:100%;transform:none}.day-row .day-copy,.day-row.reverse .day-copy{order:2}.day-row .photo img{aspect-ratio:1.12}.day-copy h3{font-size:3.8rem;margin:22px 0 28px}.day-copy>p:not(.eyebrow){font-size:1.05rem;max-width:none}.day-copy .day-outcome{margin-top:28px;padding-top:22px}.days>.wrap>.center{margin-top:25px}
 .takeaways h2{font-size:3.5rem;margin:30px 0 38px}.takeaways .story-lead{font-size:1.12rem}.take-home{grid-template-columns:1fr;gap:28px;margin-top:48px;padding-top:28px}.take-home p{font-size:1.08rem}.take-home span{font-size:1rem;margin-top:7px}
 .process .wrap{width:calc(100% - 48px)}.proof-heading{display:block;margin-bottom:42px}.proof-heading .eyebrow{margin-bottom:28px}.process h2{font-size:3.3rem;margin-bottom:35px}.proof-heading>p:last-child{font-size:1.05rem}.proof-photo img{aspect-ratio:1.03}.proof-photo figcaption{text-align:left;font-size:.8rem;line-height:1.6}.process{padding-bottom:55px}
 .fit-grid{grid-template-columns:1fr;gap:36px}.fit h2{font-size:3.3rem}.fit li{font-size:1rem;padding:25px 0}.fit li:first-child{padding-top:0}
 .seats h2{font-size:3.8rem}.seat-intro{font-size:1.05rem}.seat-grid{grid-template-columns:1fr;gap:26px;margin-top:45px}.seat-card{padding:35px 26px}.seat-card h3{font-size:1.08rem}.seat-card h3 span{font-size:4.5rem}.seat-card li{font-size:1rem}
 .counselor-grid{grid-template-columns:1fr;gap:45px}.counselor h2{font-size:5.5rem}.counselor .story-lead{font-size:1.4rem}.counselor p{font-size:1rem}
 .faq-grid{grid-template-columns:1fr;gap:35px}.faq-grid>h2{font-size:3.3rem}.questions{padding-top:70px}.faq-item button{font-size:1rem;padding:24px 0}.faq-item p{font-size:1rem;padding-right:0}
 .close{min-height:85svh;padding:100px 24px}.close-panel h2{font-size:3.1rem}.close-panel .fine{font-size:.85rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal,.js .hero h1.reveal,.js .day-row .photo.reveal{opacity:1;transform:none;transition:none}.js .photo img,.js .proof-photo img{opacity:1;transition:none}.button{transition:none}}
/* Original Brand Camp objects punctuate the story without becoming containers. */
.foundation-sticker{width:145px;height:145px;object-fit:contain;margin:0 auto 40px;transform:rotate(-8deg)}
.day-sticker{width:86px;height:86px;object-fit:contain;object-position:left center;margin-bottom:24px}
.take-home .story-sticker{width:110px;height:95px;object-fit:contain;object-position:left bottom;margin-bottom:25px}
.seat-card{position:relative}.seat-sticker{position:absolute;top:28px;right:26px;width:90px;height:90px;object-fit:contain;transform:rotate(8deg)}
.seat-card h3{padding-right:70px}.seat-card h3 span{padding-right:0}
.counselor-sticker{width:105px;height:105px;object-fit:contain;object-position:left bottom;margin-bottom:28px}
.close-sticker{width:115px;height:130px;object-fit:contain;margin:0 auto 35px;transform:rotate(-6deg)}
@media(max-width:650px){.foundation-sticker{width:125px;height:125px}.day-sticker{width:70px;height:70px;margin-bottom:20px}.take-home .story-sticker{width:85px;height:75px;margin-bottom:18px}.seat-sticker{width:75px;height:75px;right:22px}.seat-card h3{padding-right:65px}.close-sticker{width:95px;height:110px}}
/* Hero facts stay with the invitation; navigation enters only below it. */
.hero,.js .hero{padding-top:clamp(85px,8vw,125px);padding-bottom:85px}
.hero h1{font-size:clamp(3.25rem,6.3vw,6.5rem);max-width:1050px;margin:28px auto 36px}
.hero-intro{max-width:660px;font-size:1.2rem;line-height:1.65}
.hero-reassurance{margin-top:12px}
.camp-facts{margin:38px auto 0;padding:28px 20px;max-width:950px;border-top:1px solid #332f1e28;border-bottom:1px solid #332f1e28;gap:24px}
.camp-facts dt{font-family:Camp,Georgia,serif;font-weight:700;font-size:1.65rem;letter-spacing:-.035em;color:var(--ink);line-height:1.2}
.camp-facts dd{font-size:.88rem;line-height:1.6;margin-top:10px;color:var(--soft)}
.hero .actions{margin:30px auto 0}
.nav{position:fixed;top:0;left:0;right:0;z-index:30;transform:translateY(-105%);visibility:hidden;pointer-events:none;transition:transform .32s cubic-bezier(.2,.7,.3,1),visibility .32s;border-bottom:1px solid #332f1e20}
.nav.is-sticky{transform:translateY(0);visibility:visible;pointer-events:auto}
.nav .primary{background:var(--yellow);color:var(--ink);border-color:transparent}
/* Consistent corners on framed content; cutout foliage remains unframed. */
.photo,.photo img,.proof-photo,.proof-photo img,.seat-card,.seat-card.playbook,.video-placeholder,.portrait-placeholder,.polaroid,.tiles article,.glance article,.note-list li,.checkout-status{border-radius:12px}
.day-row .photo,.day-row.reverse .photo,.day-row .photo img,.day-row.reverse .photo img{border-radius:12px}
.proof-photo{background:transparent;overflow:visible}.proof-photo img{display:block}
.marker{white-space:normal;display:inline;line-height:1.05}
.hero .marker{display:block;font-size:1.12em;margin-top:.05em}
.days .section-head .marker{font-size:1.05em}.proof-heading .marker{font-size:1.13em}
.counselor h2 .marker{font-size:1em;white-space:nowrap}
.order em{font-size:1.05em;line-height:1.1;display:inline-block}
.day-row{padding-top:75px;padding-bottom:75px}
.take-home{margin-top:70px}.seat-intro{line-height:1.7}.seat-card .checklist{margin-bottom:36px}
@media(max-width:650px){
 .hero,.js .hero{padding:65px 24px 70px}.hero h1{font-size:clamp(2.65rem,10.5vw,3.7rem);margin:26px 0 30px}.hero-intro{font-size:1.07rem}
 .hero .marker{font-size:1.06em}.camp-facts{padding:22px 0;margin-top:30px;gap:22px}.camp-facts dt{font-size:1.25rem;max-width:55%}.camp-facts dd{font-size:.82rem;margin:0;max-width:44%}.hero .actions{margin-top:26px}
 .days .section-head h2{font-size:3.25rem}.days .section-head .marker{display:block;font-size:1.08em;max-width:340px;margin-top:8px}
 .familiar h2{font-size:3.2rem}.proof-heading .marker{display:block;font-size:1.1em}.fit h2{font-size:3.1rem}.fit h2 .marker{font-size:1.15em}.counselor h2{font-size:4.2rem}.counselor h2 .marker{font-size:.95em}
 .day-row{padding:40px 0 50px}.take-home{margin-top:45px}.order h2{font-size:clamp(2.8rem,11.5vw,4.5rem)}
}
@media(prefers-reduced-motion:reduce){.nav{transition:none}}
/* Selective highlighter accents keep the most useful promises easy to find. */
mark{background:var(--yellow);color:var(--ink);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone;border-radius:3px}
.marker mark,.order em mark{background:linear-gradient(transparent 26%,var(--yellow) 26%,var(--yellow) 88%,transparent 88%);color:var(--ink);padding:0 .08em}
.camp-facts mark{padding:.08em .22em}
/* Tighter display leading, with room for the marker letterforms. */
.hero h1{line-height:.98}
.familiar h2,.days .section-head h2,.takeaways h2,.process h2,.fit h2,.seats h2,.close-panel h2{line-height:1.02}
.day-copy h3,.counselor h2,.order h2{line-height:.98}
.hero .marker{line-height:1.02;margin-top:.02em}
.order em{line-height:1.02}
/* Invitation, inline display type, and the finishing details. */
.button.primary,.nav .primary{background:#171714;color:var(--cream)}
.button.primary:hover{background:#34342b}
.hero .marker,.days .section-head .marker,.proof-heading .marker,.counselor h2 .marker{display:inline;white-space:normal;margin:0;max-width:none;line-height:.9}
.marker,.order em{line-height:.9}
.order h2 span{display:inline}.order h2 span+span{margin:0}.order em{display:inline;color:var(--yellow)}
.days .section-head h2,.takeaways h2,.seats h2{line-height:.96}
.takeaways .story-lead{max-width:860px}
.take-home{border:0;padding:0;gap:24px}
.take-home>p{background:var(--cream);border-radius:12px;padding:32px;display:flex;flex-direction:column;align-items:flex-start}
.take-home strong{font-family:Camp,Georgia,serif;font-size:2.1rem;line-height:1.05;letter-spacing:-.035em}
.take-home span{font-size:1rem;line-height:1.65}
.take-home .story-sticker{width:135px;height:120px;margin-bottom:30px}
.day-row.reverse .day-sticker{width:108px;height:108px}
.seat-sticker{width:128px;height:128px;top:35px;right:24px}
.seat-card h3{padding-right:100px}.seat-card.playbook{padding-top:76px}.playbook .seat-sticker{top:62px}
.seat-tag{position:absolute;left:28px;top:22px;background:var(--yellow);color:var(--ink);padding:7px 12px;border-radius:99px;font-size:.7rem;font-weight:600;letter-spacing:.03em}
.counselor h2{font-size:clamp(3.4rem,5vw,5rem)}.counselor-sticker{display:none}
.camp-polaroid{max-width:350px;margin:40px auto 0;background:#fffcf5;padding:15px 15px 18px;transform:rotate(-4deg);border-radius:12px;box-shadow:0 12px 40px #332f1e12}
.portrait-space{aspect-ratio:1;background:var(--sage-light);border-radius:12px;display:grid;place-items:center;padding:40px;text-align:center}
.portrait-space span{font-family:Camp,serif;font-size:2.2rem;color:var(--olive);line-height:1.05;max-width:150px}
.camp-polaroid figcaption{font:400 2.6rem/1 Marker,cursive;color:var(--orange);text-align:center;padding-top:20px}
.tent-invitation{position:absolute;z-index:4;top:38%;left:50%;transform:translate(-50%,-50%);width:90%;text-align:center;text-shadow:0 2px 24px #332f1e90;pointer-events:none}
.tent-invitation p{font:700 clamp(4rem,9vw,9rem)/.96 Camp,Georgia,serif;letter-spacing:-.045em;color:var(--cream)}
.tent-invitation>span{display:block;margin-top:24px;font-size:clamp(.85rem,1.3vw,1.1rem);color:var(--cream);letter-spacing:.04em}
.forest-title small{display:block;font:400 clamp(.7rem,1.1vw,1rem)/1.4 Sauce,sans-serif;letter-spacing:.24em;text-transform:uppercase;margin-bottom:32px;text-shadow:0 2px 15px #112010}
.forest-title .forest-credit{font-size:clamp(.75rem,1.15vw,1rem);letter-spacing:.035em;text-transform:none;margin:34px 0 0}


@media(max-width:650px){
 .take-home>p{padding:28px}.take-home strong{font-size:2rem}.take-home .story-sticker{width:115px;height:105px;margin-bottom:24px}
 .day-row.reverse .day-sticker{width:90px;height:90px}.seat-sticker{width:105px;height:105px;right:20px}.seat-card h3{padding-right:88px}.seat-tag{left:26px;font-size:.65rem}
 .camp-polaroid{width:90%;max-width:320px}.counselor h2{font-size:3.6rem}
 .forest-title small{margin-bottom:26px}.forest-title .forest-credit{margin-top:28px}.tent-invitation{top:40%}
}

/* Final editorial sizing and counselor composition. */
.day-copy h3{font-size:clamp(2.8rem,4.8vw,4.9rem)}
.take-home .story-sticker{object-position:left center}
.camp-polaroid{max-width:430px;width:100%;margin:24px auto 0}
.counselor-grid{align-items:center}
.close .button.primary{background:var(--yellow);color:var(--ink)}
.close .button.primary:hover{background:#edf46a}
@media(max-width:1000px){.day-copy h3{font-size:3.3rem}}
@media(max-width:650px){.day-copy h3{font-size:3.2rem}.camp-polaroid{width:96%;max-width:380px;margin-top:22px}}

/* Clear invitations, quiet depth, and illustrated paths into camp. */
.forest-title{top:50%;text-shadow:0 6px 42px #101b0bb3,0 18px 95px #101b0b80}
.forest-title small{text-shadow:0 3px 20px #101b0bbf,0 8px 40px #101b0b80}
.tent-invitation{top:50%;text-shadow:0 5px 40px #332f1e80,0 12px 75px #332f1e50}
.familiar .story-pair{display:block;max-width:850px}
.familiar-sticker{width:110px;height:110px;object-fit:contain;object-position:left center;margin-bottom:25px;transform:rotate(-8deg)}
.familiar .story-pair>.eyebrow{padding:0;margin-bottom:28px}
.familiar h2{max-width:850px}.familiar .story-lead{max-width:700px}
.order p:last-child{margin-top:26px}.order{padding-bottom:clamp(85px,9vw,130px)}
.days-arrow{display:block;font-family:Sauce,sans-serif;font-size:2.1rem;line-height:1;margin-top:30px;color:var(--olive);animation:camp-arrow 2.2s ease-in-out infinite}
@keyframes camp-arrow{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}
.camp-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;width:100%;padding:48px 56px;margin-top:60px;background:var(--yellow);border-radius:12px;text-align:left}
.camp-cta .eyebrow{color:var(--ink);font-size:.7rem;margin-bottom:16px}.camp-cta h3{font-size:clamp(2.6rem,4.5vw,4.5rem);margin-bottom:14px}.camp-cta p{font-size:1rem;color:var(--ink)}.camp-cta .button{flex-shrink:0;gap:30px}.camp-cta .button span{font-size:1.4rem}
.fit-aside{font-size:.9rem;margin-top:25px;line-height:1.6}.fit-examples>.eyebrow{margin-bottom:24px}
.fit li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:22px;align-items:start}.fit-sticker{width:64px;height:70px;object-fit:contain;object-position:center top}
.seat-card h3{padding-right:0}
.counselor{background:var(--sage-light)}
.counselor .counselor-headline{font-family:Camp,Georgia,serif;font-size:clamp(2.7rem,3.8vw,4rem);line-height:1.03;margin:0 0 32px;letter-spacing:-.035em}
@media(max-width:650px){.familiar-sticker{width:90px;height:90px}.camp-cta{padding:32px 26px;flex-direction:column;align-items:stretch;gap:28px;margin-top:35px}.camp-cta .button{justify-content:space-between}.fit li{grid-template-columns:52px minmax(0,1fr);gap:18px}.fit-sticker{width:52px;height:60px}.counselor .counselor-headline{font-size:2.8rem}.days-arrow{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.days-arrow{animation:none}}
/* A shared 1440px canvas and tighter editorial modules. */
.wrap,.familiar .story-pair,.order .wrap,.takeaways .wrap,.process .wrap,.fit .wrap,.seats .wrap,.counselor .wrap,.questions .wrap{max-width:1440px;width:calc(100% - 120px)}
.hero-panel,.js .hero-panel{max-width:1440px}.close-panel{max-width:1440px}.nav{padding-left:max(30px,calc((100% - 1440px)/2));padding-right:max(30px,calc((100% - 1440px)/2))}
.tent-shade{position:absolute;inset:0;z-index:3;background:#15180c;opacity:1;pointer-events:none;background:rgba(18,22,11,.17)}
.tent-invitation>span{font-size:clamp(1.1rem,1.45vw,1.55rem);font-weight:500;letter-spacing:.025em;text-shadow:0 2px 16px #18200cb3}
.familiar{background:var(--sage-light);padding:clamp(65px,6vw,100px) 0}
.familiar .story-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%;align-items:center}
.familiar-photo{overflow:hidden;border-radius:12px}.familiar-photo img{width:100%;height:auto;aspect-ratio:1.08;object-fit:cover;border-radius:12px}
.familiar-copy{min-width:0}.familiar-sticker{width:85px;height:85px;margin-bottom:20px}.familiar-copy>.eyebrow{margin-bottom:26px}
.familiar h2{font-size:clamp(3rem,4.5vw,5.4rem);margin-bottom:30px}.familiar .story-lead,.familiar .story-support{max-width:none}
.order{padding:clamp(80px,7vw,120px) 0}.foundation-sticker{animation:foundation-turn 28s linear infinite;rotate:-8deg}
@keyframes foundation-turn{to{rotate:352deg}}
.days-arrow{font-size:3.5rem;animation-duration:1.45s}
.days .section-head{margin-bottom:44px}
.day-row,.day-row.reverse{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%;min-height:0;padding:40px 0}
.days .day-row:first-of-type{padding-top:0}
.day-row .photo img{aspect-ratio:1.12}
.day-copy>p:not(.eyebrow),.day-copy .day-outcome{max-width:none;width:100%}
.day-copy h3{margin:22px 0 26px}.day-copy .day-outcome{margin-top:30px;padding-top:20px}
.proof-heading{max-width:1440px}.proof-heading>p:last-child{max-width:none}
.brand-showcase{width:100%}.showcase-stage{position:relative;aspect-ratio:16/10;background:var(--paper);overflow:hidden;border-radius:12px}
.showcase-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s}
.showcase-slide.is-active{opacity:1;visibility:visible}.showcase-slide img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.showcase-footer{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-top:22px}.showcase-caption{font-size:.95rem;line-height:1.5}.showcase-controls{display:flex;align-items:center;gap:12px;flex-shrink:0}.showcase-controls button{min-width:44px;min-height:44px;border:1px solid #332f1e40;border-radius:99px;background:transparent;color:var(--ink);cursor:pointer}.showcase-controls button:hover{background:var(--sage-light)}.showcase-count{font-size:.75rem}.showcase-controls .showcase-pause{font-size:.75rem;padding:0 16px}
.camp-cta{gap:32px}.cta-flag{width:175px;height:150px;object-fit:contain;flex-shrink:0;transform:rotate(-5deg)}.camp-cta>div{flex:1}
.fit{padding:clamp(65px,6vw,100px) 0}.fit-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%}
.fit li{grid-template-columns:84px minmax(0,1fr);gap:26px;padding:25px 0}.fit-sticker{width:84px;height:88px}
.counselor{padding:clamp(65px,6vw,100px) 0}.counselor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%}.camp-polaroid{max-width:490px}.em-portrait{width:100%;aspect-ratio:1;object-fit:cover;object-position:center 47%;border-radius:12px}
.seat-tag{animation:seat-nudge 4.5s ease-in-out infinite;transform-origin:center}
@keyframes seat-nudge{0%,82%,100%{rotate:0deg;scale:1}87%{rotate:-2deg;scale:1.025}93%{rotate:2deg;scale:1.025}}
@media(max-width:1000px){.cta-flag{width:125px;height:115px}.camp-cta{padding:36px;gap:24px}.familiar h2{font-size:3rem}.fit li{grid-template-columns:70px minmax(0,1fr);gap:18px}.fit-sticker{width:70px;height:78px}}
@media(max-width:650px){
.wrap,.familiar .story-pair,.order .wrap,.takeaways .wrap,.process .wrap,.fit .wrap,.seats .wrap,.counselor .wrap,.questions .wrap{width:calc(100% - 48px)}
.familiar .story-pair{display:flex;flex-direction:column;align-items:stretch;gap:38px}.familiar h2{font-size:3.2rem}.familiar-photo img{aspect-ratio:1.12}.familiar-sticker{width:70px;height:70px}
.order{padding:75px 0}.days-arrow{font-size:3rem}.days .section-head{margin-bottom:34px}.day-row,.day-row.reverse{padding:28px 0;gap:28px}.days .day-row:first-of-type{padding-top:0}
.showcase-stage{aspect-ratio:1}.showcase-footer{align-items:flex-start;flex-direction:column;gap:16px}.showcase-caption{font-size:.85rem}.showcase-controls{gap:10px}
.camp-cta{padding:28px;gap:22px}.cta-flag{width:140px;height:115px;align-self:flex-start}.fit-grid,.counselor-grid{grid-template-columns:1fr;gap:36px}.fit li{grid-template-columns:66px minmax(0,1fr);gap:18px}.fit-sticker{width:66px;height:72px}.fit,.counselor{padding:65px 0}
}
@media(prefers-reduced-motion:reduce){.foundation-sticker,.seat-tag,.days-arrow{animation:none}.showcase-slide{transition:none}}
.days .day-row:nth-of-type(3) .photo img{object-fit:cover;background:var(--paper)}

/* Consistent section rhythm and visible proof of the method. */
main>.section,main>.hero,.js main>.hero,main>.close{padding-top:120px;padding-bottom:120px}
.days .day-row,.days .day-row.reverse{padding:0;margin:0}
.days .day-row+.day-row{margin-top:120px}
.forest-title small{font-size:clamp(1rem,1.65vw,1.4rem)}
.forest-title .forest-credit{font-size:clamp(1rem,1.65vw,1.4rem)}
.showcase-controls button{background:var(--yellow);border-color:var(--yellow)}
.showcase-controls button:hover{background:#edf46a;border-color:var(--ink)}
.showcase-controls button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.scroll-label{background:var(--yellow);color:var(--ink);font-weight:600;box-shadow:0 6px 30px #332f1e40;animation:open-invitation 2.1s ease-in-out infinite}
.scroll-label span{display:inline-block;animation:none;transform:none}
@keyframes open-invitation{0%,100%{translate:0 0}50%{translate:0 9px}}

.hero-proof{max-width:800px;margin:32px auto 0;padding:24px 28px;border:1px solid #332f1e30;border-radius:12px;background:var(--sage-light);text-align:left}
.hero-proof p{font-size:1rem;line-height:1.65}.hero-proof strong{display:block;font-size:1.2rem;margin-bottom:5px;color:var(--ink)}
.hero-proof a{display:inline-block;margin-top:12px;color:var(--ink);text-decoration:underline;text-underline-offset:4px;font-weight:600;font-size:.95rem}
@media(max-width:650px){.hero-proof{padding:22px}.hero-proof strong{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.scroll-label,.scroll-label span{animation:none}}

/* Illustrated proof card and warmer showcase background. */
.hero-proof{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:28px;max-width:950px;background:var(--orange);border-color:transparent;color:var(--cream);padding:30px 32px}
.hero-proof p,.hero-proof strong{color:var(--cream)}
.hero-proof-illustration{width:140px;height:auto;object-fit:contain;rotate:-6deg}
.familiar h2{margin-bottom:16px}
.process{background:var(--paper)}
@media(max-width:650px){.hero-proof{grid-template-columns:66px minmax(0,1fr);gap:16px;padding:24px 20px;align-items:start}.hero-proof-illustration{width:66px;margin-top:6px}.hero-proof strong{font-size:1.1rem}}

/* Keep all three social cards and earned patches in frame on phones. */
.showcase-stage{aspect-ratio:16/10}
.showcase-slide img[src$="illustration-sheet-hd.png"]{object-fit:contain;background:#fffdf3}
.waitlist-trigger{font-family:inherit;cursor:pointer}
.waitlist-notice{max-width:min(500px,calc(100% - 48px));margin:auto;border:0;border-radius:12px;padding:32px;background:var(--cream);color:var(--ink)}
.waitlist-notice::backdrop{background:#332f1e99}
.waitlist-notice h2{font-size:2.2rem;margin-bottom:18px}.waitlist-notice p{margin-bottom:24px}

/* Keep the longer opening invitation balanced across screen sizes. */
.tent-invitation p{max-width:12ch;margin-inline:auto;font-size:clamp(3rem,7vw,7rem);line-height:1.02;text-wrap:balance}

/* Highlight the Playbook tier and keep the desktop invitation on two lines. */
.seat-card.playbook{background:var(--orange);color:var(--cream)}
.seat-card.playbook h3,.seat-card.playbook h3 span,.seat-card.playbook li,.seat-card.playbook li::before{color:var(--cream)}
.seat-card.playbook .seat-tag{color:var(--ink)}
@media(min-width:768px){.tent-invitation p{max-width:none}.tent-invitation p>span{display:block;white-space:nowrap}}
