.source-content h2{font-size:2.2rem;line-height:1.2;margin:2rem 0 1.2rem}.source-content h2:first-child{margin-top:0}.source-content h3{font-size:1.6rem;line-height:1.3}.source-content li{overflow-wrap:anywhere}.source-content blockquote{font-family:inherit;font-size:1rem;line-height:1.8;margin:1rem 0;padding-left:1rem;border-left:2px solid #72764a}.source-content ol{padding-left:1.7rem}.page-subtitle{margin-top:1.3rem;max-width:850px;line-height:1.7}.source-gif{margin:0 0 2rem}.source-gif img{display:block;max-width:100%;max-height:180px;border:5px solid #fffaf0}.source-table{margin:1.5rem 0 2.5rem}.source-table td{min-width:90px}.source-table td:first-child{min-width:180px}.source-table td p:last-child{margin-bottom:0}.source-table input{width:25px;height:25px}.source-table progress{width:100%;accent-color:#34432d}.source-table:has([data-check]) td:first-child{width:88%}.video{aspect-ratio:16/9;margin:1.5rem 0}.video iframe{width:100%;height:100%;border:0}.source-content .day-tabs button{line-height:1.5;text-align:left}.source-content .day-panel{max-width:100%}.source-content .day-panel h3{border-top:1px solid #352b2530;padding-top:1.2rem}#page-schedule .split,#page-gear .split{grid-template-columns:1fr}#page-schedule .side-story,#page-gear .side-story{display:none}@media(max-width:800px){.nav-link{padding:11px 12px}.source-content h2{font-size:1.9rem}.source-content ul ul{padding-left:16px}.page-heading h1{overflow-wrap:anywhere}.source-content .day-tabs{display:grid;grid-template-columns:1fr}.source-content .day-tabs button{font-size:.95rem}.source-table td,.source-table th{font-size:.9rem}}
.page-opening{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,28%);align-items:center;gap:clamp(24px,4vw,56px);margin-bottom:36px}
.page-opening.landscape{grid-template-columns:minmax(0,1fr) minmax(240px,42%)}
.page-opening .page-heading{margin:0;min-width:0}
.page-opening .page-heading h1{font-size:clamp(2.5rem,3.8vw,4.3rem);overflow-wrap:anywhere}
.page-opening .page-subtitle{margin-bottom:0}
.page-opening .opening-print{margin:0;justify-self:center;width:100%;max-width:220px;transform:rotate(-1.5deg)}
.page-opening.landscape .opening-print{max-width:420px;transform:rotate(1.5deg)}
.page-opening .film img{aspect-ratio:auto}
.split.without-sidebar{grid-template-columns:minmax(0,1fr)}
@media(max-width:800px){
 .page-opening,.page-opening.landscape{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:28px}
 .page-opening .page-heading h1{font-size:clamp(2rem,7.5vw,3rem)}
 .page-opening .opening-print{width:164px;max-width:100%;justify-self:end;margin-right:8px}
 .page-opening.landscape .opening-print{width:100%;max-width:420px;justify-self:center;margin-right:0}
}
@media(min-width:1100px){
 .intro{gap:28px;padding-bottom:42px}
 .intro>div{flex:1;min-width:0}
 .intro h1{font-size:clamp(2.8rem,4.3vw,5.7rem);white-space:nowrap}
 .intro h1 br{display:none}
 .intro h1 em:before{content:' '}
 .intro .verse{font-size:clamp(1.7rem,2.3vw,2.5rem);margin-top:16px}
 .intro .tree{width:clamp(130px,12vw,190px);flex-shrink:0}
}
.film-hero{position:relative;isolation:isolate;overflow:hidden;min-height:360px;display:flex;align-items:center;margin-bottom:36px;background:#34432d url('assets/bookcloth.png') center/1100px}
.hero-backdrop{position:absolute;inset:0;z-index:-2;container-type:size;pointer-events:none;opacity:.65}
.hero-backdrop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.film-hero:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#172811c9,#243b2099)}
.film-hero .intro{width:100%;padding:44px 28px;position:relative;text-shadow:0 2px 12px #0005}

@media(max-width:800px){.film-hero{min-height:320px;margin-bottom:28px}.film-hero .intro{padding:28px 18px;gap:14px}.film-hero .intro h1{font-size:clamp(2rem,8vw,3.5rem)}}
.page-opening.text-only{grid-template-columns:minmax(0,1fr)}
#page-deliverables .source-content{background:transparent;padding:0;box-shadow:none}
.source-content .goal-cards{list-style:none;margin:0;padding:6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.source-content .goal-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:22px;margin:0;padding:26px;background:#f6f1e5;color:#34432d;border:7px solid #fffaf0;box-shadow:0 6px 12px #0004;transform:rotate(-1deg)}
.source-content .goal-card:nth-child(even){transform:rotate(1deg)}
.source-content .goal-card h2{font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.2;margin:0}
.goal-check{width:25px;height:25px;accent-color:#34432d;cursor:pointer}
.goal-card .check-target{flex-shrink:0}
.goal-card label{cursor:pointer}.goal-card:has(.goal-check:checked){box-shadow:0 6px 12px #0004,inset 0 0 0 1px #72764a}
@media(max-width:600px){.source-content .goal-cards{grid-template-columns:1fr;gap:18px}.source-content .goal-card,.source-content .goal-card:first-child{flex-direction:row;align-items:center;padding:20px 16px;gap:16px}.source-content .goal-card h2{font-size:1.6rem}}
.direction-section{border-bottom:1px solid #72764a60}
.direction-section>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;min-height:64px;padding:22px 0;cursor:pointer;color:#34432d}
.direction-section>summary::-webkit-details-marker{display:none}
.source-content .direction-section>summary h2,.source-content .direction-section>summary h3{margin:0;line-height:1.25}
.accordion-symbol{flex:0 0 28px;text-align:center;font:28px/1 Arial,sans-serif}
.accordion-symbol:before{content:'+'}.direction-section[open]>summary>.accordion-symbol:before{content:'−'}
.accordion-content{padding:4px 0 24px}.accordion-content>:last-child{margin-bottom:0}
.direction-section.nested{padding-left:16px;border-left:2px solid #72764a50;margin:0 0 16px}
.playlist-buttons{display:flex;flex-wrap:wrap;gap:14px}
.playlist-button{display:flex;align-items:center;gap:12px;padding:14px 18px;min-height:52px;border:1px solid #34432d;background:#fffaf0;color:#34432d;text-decoration:none;line-height:1.5}
.playlist-button:hover{background:#e4e6d7}.playlist-button img{flex-shrink:0;display:block}
.message-tree{float:right;margin:0 0 24px 24px}.message-tree .tree{width:180px;transform:rotate(180deg)}
.accordion-content:after{content:'';display:block;clear:both}
@media(max-width:600px){.message-tree{float:none;margin:0 auto 28px;width:150px}.message-tree .tree{width:150px}.playlist-buttons{display:grid;grid-template-columns:minmax(0,1fr)}.playlist-button{font-size:1rem}.direction-section.nested{padding-left:12px}}
.community-count{font-size:1rem;color:#fff;background:#34432d;border:0;border-radius:0;padding:16px 20px;margin:16px 0;line-height:1.6}
.eyebrow,.quick-grid span,.nav-label{text-transform:none}
.opening-photos{width:100%;min-width:0;display:flex;justify-content:center}
@media(max-width:800px){
 .page-opening.portrait .opening-print{width:min(220px,75%);margin:0;justify-self:center}
 .opening-photos{padding:5px 4px}
 .opening-photos.is-paired{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:16px;max-width:460px;justify-self:center}
 .opening-photos.is-paired .print{width:100%;max-width:none;margin:0;padding:7px}
 .opening-photos.is-paired .print:last-child{transform:rotate(2deg)}
}
.split>*,.paper,.page,.source-content{min-width:0}
img{max-width:100%}
.check-target{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;cursor:pointer}
.check-target input{margin:0}
.nav-backdrop{position:fixed;inset:68px 0 0;background:#101b1680;z-index:25}
@media(min-width:801px){.nav-backdrop{display:none}}
@media(max-width:800px){
 html{scroll-padding-top:84px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body.menu-open{overflow:hidden}
 main{padding:0 max(16px,env(safe-area-inset-left)) 20px max(16px,env(safe-area-inset-right))}
 .topbar{gap:12px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
 .menu-button{min-width:64px;min-height:44px;flex-shrink:0}
 .sidebar{overscroll-behavior:contain;max-height:calc(100dvh - 68px);padding-bottom:max(24px,env(safe-area-inset-bottom))}
 .nav-link{font-size:1rem;line-height:1.45;min-height:44px;overflow-wrap:anywhere}
 .page{padding-top:24px}.page-heading{margin-bottom:24px}
 .page-heading h1{font-size:clamp(2rem,7.5vw,3rem);line-height:1.12}
 .page-subtitle{font-size:1rem;margin-top:16px}
 .paper{padding:24px 18px}.source-content{line-height:1.75;font-size:1rem}
 .source-content ul,.source-content ol{padding-left:20px}.source-content li{padding-left:0;margin:12px 0}
 .source-content ul ul,.source-content ul ol,.source-content ol ul{padding-left:14px;margin-left:0}
 .source-content .small,.source-table td,.source-table th{font-size:1rem}
 .source-content h2{font-size:1.9rem}.source-content h3{font-size:1.5rem}
 .intro{display:grid;grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:16px}
 .intro h1{font-size:clamp(2.25rem,9vw,3.5rem)}.intro .tree{width:90px}.intro .eyebrow{font-size:.75rem}
 .source-content .day-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:4px 4px 12px;scroll-snap-type:x proximity}
 .source-content .day-tabs button{flex:0 0 190px;min-height:48px;scroll-snap-align:start;font-size:1rem}
 .source-table .table-wrap{overflow:visible}
 .source-table table,.source-table tbody{display:block;width:100%}
 .source-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .source-table tr{display:block;padding:16px 0;border-bottom:1px solid #352b2530}
 .source-table td,.source-table td:first-child,.source-table:has([data-check]) td:first-child{display:block;width:100%;min-width:0;padding:8px 0;border:0;overflow-wrap:anywhere}
 .source-table td:before{content:attr(data-label);display:block;font-size:.875rem;color:#566044;margin-bottom:4px}
 .source-table td:has(input){display:flex;align-items:center;justify-content:space-between;gap:12px}
 .source-table td:has(input):before{margin:0}.source-table td:empty{display:none}
 .source-table tr:has([data-check]:checked){opacity:.7}
 .page-footer{font-size:.875rem}.page-footer a{padding:10px 0;min-height:44px}
 .toast{left:16px;right:16px;bottom:max(16px,env(safe-area-inset-bottom));font-size:1rem}
 .side-story{display:block;max-width:260px;margin:8px auto 0}.side-story .print{margin-bottom:0}
}
.source-content .study-photo{float:none;width:100%;max-width:640px;margin:20px auto 10px;transform:none}
.source-content .study-photo img{width:100%;height:auto;max-height:380px;object-fit:cover;display:block}
.source-content .photo-credit{font-size:.875rem;line-height:1.5;margin:0 0 28px;opacity:.8}
.source-content .accordion-content h4{font-size:1.25rem;line-height:1.4;margin:32px 0 16px}
.source-content .demo-button{margin:14px 0;max-width:100%;white-space:normal}
.direction-section#garden-study{scroll-margin-top:24px}
.guideline-highlight{background:#34432d;color:#fff;padding:.12em .22em;box-decoration-break:clone;-webkit-box-decoration-break:clone;font-weight:600}
#page-guidelines .source-content li{line-height:1.95;margin-bottom:1.3rem}
.source-content .thursday-schedule{font-family:Nineties,Georgia,serif;font-size:1.25rem;line-height:1.6}
.source-content .thursday-schedule>ul{padding-left:1.5rem;margin:1rem 0}
.source-content .thursday-schedule li{padding-left:.25rem}
.source-content .thursday-schedule details{border:0;margin:1rem 0;padding:0}
.source-content .thursday-schedule summary{display:list-item;list-style:disclosure-closed;margin-left:.2rem;padding:0;border:0;font:inherit}
.source-content .thursday-schedule details[open]>summary{list-style:disclosure-open}
.source-content .thursday-schedule details ul{list-style:square;margin:.8rem 0 0 2.2rem;padding-left:1.5rem}
.source-content .friday-schedule{font-size:1rem;line-height:1.75}
.source-content .friday-schedule ul{padding-left:1.5rem;margin:.75rem 0;list-style:disc}
.source-content .friday-schedule ul ul{list-style:circle}
.source-content .friday-schedule ul ul ul{list-style:square}
.source-content .friday-schedule li{margin:.65rem 0;padding-left:.15rem}
.source-content .friday-schedule details{border:0;padding:0;margin:1rem 0}
.source-content .friday-schedule summary{display:list-item;list-style:disclosure-closed;cursor:pointer;padding:.25rem 0;border:0;font:inherit;overflow-wrap:anywhere}
.source-content .friday-schedule details[open]>summary{list-style:disclosure-open}
.source-content .friday-schedule .schedule-children{margin-left:1.5rem}
.source-content .friday-schedule .schedule-children>details{margin-left:.25rem}
.team-prints{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;padding:28px 8px 40px}
#page-team .split{display:block}
#page-team .split>.side-story{display:none}
#page-team .paper{background:transparent;padding:0;box-shadow:none;color:#f6f1e5}
#page-team .team-section{border-color:#f6f1e540}
#page-team .team-section>summary{color:#f6f1e5}
.team-print{min-width:0;background:#f6f1e5;color:#34432d;padding:8px;box-shadow:0 9px 18px #101b1840;transform:rotate(var(--tilt));transition:transform .25s}
.team-print .team-portrait img{aspect-ratio:1;object-fit:cover;width:100%;height:auto}
.team-caption{padding:16px 12px 10px;display:flex;flex-direction:column;align-items:flex-start}
#page-team .team-caption h3{font-size:1.65rem;line-height:1.15;margin:0 0 8px;color:#34432d}
#page-team .team-caption p{font-family:Neue,Arial,sans-serif;font-size:.8rem;line-height:1.5;margin:0 0 16px;color:#34432d}
.team-instagram{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;background:#34432d;color:#fff!important;text-decoration:none;font-family:Neue,Arial,sans-serif;font-size:.8rem}
.team-arrived{animation:team-settle .7s backwards;animation-delay:var(--delay)}
.team-arrived img{animation:team-develop 1.2s both;animation-delay:var(--delay)}
@keyframes team-settle{from{opacity:.2;transform:translateY(28px) rotate(calc(var(--tilt) * 3))}to{opacity:1;transform:translateY(0) rotate(var(--tilt))}}
@keyframes team-develop{from{filter:contrast(.65) sepia(.5) saturate(.25);opacity:.5}to{filter:contrast(.92) sepia(.13) saturate(.9);opacity:1}}
@media(hover:hover){.team-print:hover{transform:translateY(-5px) rotate(0deg)}.team-instagram:hover{background:#4c603f}}
@media(max-width:1100px){.team-prints{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.team-prints{grid-template-columns:minmax(0,1fr);max-width:360px;margin:auto;padding:22px 8px 32px;gap:26px}}
@media(prefers-reduced-motion:reduce){.team-print{transform:none}.team-arrived,.team-arrived img{animation:none!important}}
.location-section-content{padding:8px 0 24px}
.parking-map{margin:20px 0 0}
.parking-map img{display:block;width:100%;height:auto}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
body.at-entrance>.topbar,body.at-entrance>.sidebar,body.at-entrance>.nav-backdrop,body.at-entrance>.skip{display:none!important}
body.at-entrance main{margin:0;padding:0;max-width:none}
.page.entrance{padding:0;position:relative;isolation:isolate;min-height:100svh;height:100dvh;width:100%;overflow:hidden;background:#34432d}
.entrance[hidden]{display:none!important}
#entrance-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.entrance-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(#10201455,transparent 25%,transparent 60%,#10201499)}
.entrance-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 36px;color:#f6f1e5;text-shadow:0 1px 8px #0008}
.entrance-top>span{font-family:Nineties,Georgia,serif;font-size:1.6rem}
.intro-skip{font-size:.85rem;text-decoration:none;padding:12px}
.entrance-invitation{position:absolute;bottom:15%;left:0;width:100%;display:flex;justify-content:center}
#enter-camp{background:#f6f1e5;color:#34432d;padding:15px 38px;min-height:58px;font-family:Nineties,Georgia,serif;font-size:1.7rem;text-decoration:none;box-shadow:0 4px 28px #0003;animation:entrance-button .8s both}
#enter-camp[hidden]{display:none}
#enter-camp span{margin-left:20px}
.entrance-controls{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:0;width:100%;display:flex;justify-content:center;gap:12px}
.entrance-controls button{min-height:44px;padding:8px 18px;border:1px solid #f6f1e580;color:#f6f1e5;background:#24321e99;font-size:.8rem}
@keyframes entrance-button{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.entrance-top{padding:18px 14px}.entrance-top>span{font-size:1.25rem}.intro-skip{font-size:.75rem}.entrance-invitation{bottom:17%}}

svg.site-arrow{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.12em}

/* Align disclosure markers with list bullets, including nested schedule sections. */
.source-content .friday-schedule details,
.source-content .friday-schedule .schedule-children>details,
.source-content .thursday-schedule details{margin-left:1.5rem}
.source-content .friday-schedule summary,
.source-content .thursday-schedule summary{margin-left:0;padding-left:.15rem;min-height:44px}
.source-content .thursday-schedule details ul{margin-left:0}

#page-team .page-footer{border-top:0}

.entrance-controls button.music-invitation{background:#f6f1e5;color:#34432d;border-color:#f6f1e5;font-size:1rem;padding:12px 24px;box-shadow:0 4px 24px #0004}
