#arrival-photo,.main-event-image{display:none!important}
.hero-date,.housing-lead{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(28px,3vw,46px);line-height:1.08;color:var(--ink);margin:8px 0 20px;letter-spacing:-.01em}
.hero-date{color:var(--orange)}
.hero-description{display:block}
#recap-reveal .recap-heading{font-size:clamp(32px,4vw,64px);margin:0 0 22px}
#recap-play{font-size:12px!important}
.chapter .note:empty{display:none}
#recap-play{min-width:44px;min-height:44px;font-size:18px!important}
#recap-sound{min-height:44px}
@media(max-width:700px){#chapter-4 .chapter-inner{z-index:8}#recap-reveal .recap-controls{align-items:center;gap:14px}}
/* A brief moving bridge, not another full-page stop before wellness. */
#chapter-6{height:45vh!important;overflow:hidden}
#chapter-6 .chapter-inner{visibility:hidden}
.motion-off #chapter-6{height:0!important}
#supporting-media{left:5vw;right:auto;top:23vh;transform:none;width:41vw;display:flex;flex-direction:column;gap:18px}
#venue-panel{order:-1}#supporting-media .venue-images{grid-template-columns:1fr}#supporting-media .venue-images img:first-child{height:26vh;mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent)}#supporting-media .venue-images img:last-child{display:none}
#chapter-4 h2{font-size:clamp(48px,5.2vw,90px)}
.chapter small .day-number{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(64px,8vw,130px);line-height:1;letter-spacing:-.03em;margin-bottom:12px;color:var(--orange)}
.chapter small .day-detail{display:block;font-size:10px;letter-spacing:.15em}
#chapter-4 .chapter-inner h2{animation:main-text-rise .8s both}
@keyframes main-text-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){#supporting-media{top:11vh;left:8vw;width:84vw;gap:8px}#supporting-media .venue-images img:first-child{height:18vh}#supporting-media .portrait-row img{max-height:36px}#supporting-media .support-note{display:none}#chapter-4 .chapter-inner{max-width:100%;padding:42vh 8vw 5vh;margin:0}#chapter-4 h2{font-size:40px}.chapter small .day-number{font-size:62px;margin-bottom:8px}#chapter-4 .chapter-inner p{font-size:12px;line-height:1.45}#chapter-4 .chapter-inner .note{font-size:8px}}
@media(prefers-reduced-motion:reduce){#chapter-4 .chapter-inner h2{animation:none}}
.lineup-chapter{height:190vh!important;background:linear-gradient(transparent,#15191df5 15%,#15191df5 85%,transparent)}
.lineup-chapter .chapter-inner{max-width:100%;width:100%;padding:9vh 7vw 5vh;margin:0!important}
.lineup-chapter h2{font-size:clamp(36px,4vw,64px);margin:8px 0 18px}
.lineup-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:16px 22px;max-width:1150px}
.lineup-grid figure{margin:0;text-align:center}.lineup-grid img{width:clamp(48px,5.5vw,88px);aspect-ratio:1;object-fit:cover;border-radius:50%;border:1px solid #f0783c66}
.lineup-grid figcaption{font-size:11px;margin-top:6px}.lineup-grid span{display:block;font-size:8px;color:var(--orange);margin-top:3px}
.guest-chapter{isolation:isolate;background:linear-gradient(90deg,#15191df5,transparent);height:150vh!important}
.guest-chapter .chapter-inner{z-index:2}.guest-photo{position:sticky;top:8vh;float:right;margin-top:-95vh;width:49vw;height:85vh;object-fit:cover;object-position:top;z-index:0;mask-image:linear-gradient(90deg,transparent,#000 25%,#000 85%,transparent)}
.details{overflow:hidden;background:linear-gradient(transparent,#15191de8 90px),radial-gradient(ellipse at 90% 45%,#70361544,transparent 65%)}
.details::before{content:'';position:absolute;width:70vw;height:70vw;right:-45vw;top:10%;border:1px solid #f0783c33;border-radius:50%;box-shadow:0 0 160px #f0783c12;pointer-events:none;animation:orbit-drift 18s ease-in-out infinite alternate}
@keyframes orbit-drift{to{transform:translate(-15vw,30vh) rotate(25deg)}}
.tickets{gap:22px;align-items:stretch}.tickets article{position:relative;display:flex;flex-direction:column;padding:35px 28px;border:1px solid #ffffff24;border-radius:18px;background:linear-gradient(145deg,#ffffff0d,#15191de6);backdrop-filter:blur(12px)}
.tickets article.featured{border-color:var(--orange);background:linear-gradient(145deg,#f0783c22,#15191d)}
.tickets h4{font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;font-size:36px;margin:24px 0 0}.tickets h3{font-size:clamp(54px,5.2vw,80px)}
.tickets ul{padding-left:18px;line-height:1.8;font-size:13px;color:var(--ink);flex:1}.tickets li{margin-bottom:10px}.tickets .ticket-exclusion{font-size:10px}.tickets .pill{font-size:11px;text-align:center;padding:16px 10px}.tickets .featured .pill{background:var(--orange)}
.closing{position:relative;padding-bottom:70px}.closing-copy{max-width:660px}.closing-copy>p:not(.lead){font-size:16px;line-height:1.8;color:var(--muted)}
@media(max-width:700px){.lineup-chapter{height:auto!important;padding:60px 0}.lineup-chapter .chapter-inner{position:relative;height:auto;padding:30px 8vw}.lineup-grid{grid-template-columns:repeat(4,1fr);gap:18px 10px}.lineup-grid img{width:54px}.lineup-grid figcaption{font-size:9px}.lineup-grid span{font-size:7px}.guest-photo{width:100%;opacity:.55;top:5vh}.guest-chapter .chapter-inner{position:sticky}.tickets{gap:28px}.tickets h3{font-size:70px}.tickets article{padding:28px}.closing-copy>p:not(.lead){font-size:14px}}
.motion-off .details::before{animation:none}.motion-off .lineup-chapter{height:auto!important}.motion-off .lineup-chapter .chapter-inner{height:auto;min-height:100svh}
@media(prefers-reduced-motion:reduce){.details::before{animation:none}}
/* Lineup follows the Cape Town setting, before check-in. */
.lineup-chapter .chapter-inner{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:5vw;align-items:center;padding:11vh 7vw 6vh}
.builders-column{min-width:0}.builders-column>p:empty{display:none}
.lineup-chapter .lineup-grid{grid-template-columns:repeat(5,1fr);gap:12px 10px}
.lineup-chapter .lineup-grid img{width:clamp(42px,4vw,65px)}
.lineup-chapter .lineup-grid figcaption{font-size:10px}.lineup-chapter .lineup-grid span{font-size:7px}
.lineup-chapter h2{font-size:clamp(32px,3.8vw,60px)}
.lineup-guest{min-width:0}.lineup-guest img{display:block;width:100%;height:36vh;object-fit:cover;object-position:50% 15%;mask-image:linear-gradient(#000 80%,transparent)}
.lineup-guest h2{margin:10px 0}.lineup-guest p{font-size:13px}.lineup-guest .note{font-size:9px}
.chapter[data-day="1"]{--orange:#f6d34a}.chapter[data-day="2"]{--orange:#f0783c}.chapter[data-day="3"]{--orange:#ff6262}.chapter[data-day="4"]{--orange:#6cb8ff}.chapter[data-day="5"]{--orange:#f0783c}
@media(max-width:700px){.lineup-chapter .chapter-inner{display:flex;flex-direction:column;height:auto;padding:30px 8vw;gap:36px}.builders-column,.lineup-guest{width:100%}.lineup-chapter .lineup-grid{grid-template-columns:repeat(4,1fr)}.lineup-chapter .lineup-grid img{width:52px}.lineup-guest img{height:40vh;object-fit:contain}.lineup-guest{text-align:center}.lineup-guest p{margin-left:auto;margin-right:auto}}
/* Readable phone typography, without shrinking the cinematic scenes. */
@media(max-width:700px){
 .chapter p{font-size:17px;line-height:1.55}
 .chapter .note{font-size:10px;line-height:1.5}
 .chapter .chapter-inner{padding-top:20vh;padding-bottom:8vh}
 #top .chapter-inner{padding-top:14vh;padding-bottom:6vh}
 #top .hero-date{font-size:34px;line-height:1.05;margin:10px 0 18px}
 #top .hero-description{font-size:17px}
 .housing-lead{font-size:28px;line-height:1.1;margin:8px 0 16px}
 #chapter-4 .chapter-inner{padding:29vh 8vw 5vh}
 #chapter-4 .chapter-inner p{font-size:16px;line-height:1.5}
 #chapter-4 .chapter-inner .note{font-size:10px}
 #recap-reveal .recap-controls{gap:12px;flex-wrap:wrap;margin-top:14px}
 #recap-reveal .recap-controls button,#recap-reveal .recap-controls a{font-size:12px!important;min-height:44px;display:inline-flex;align-items:center}
 #recap-reveal .recap-heading{font-size:38px;margin-bottom:20px}
}
/* Experience names stay distinct from day numbers, with real villa references. */
.labeled-chapter .chapter-inner>small{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:24px;align-items:center;width:100%}
.labeled-chapter .day-number{grid-column:1;grid-row:1;margin:0}
.labeled-chapter .day-detail{grid-column:1/-1;grid-row:2;margin-top:12px}
.labeled-chapter .experience-label{grid-column:2;grid-row:1;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(30px,3.4vw,56px);font-weight:600;line-height:.98;letter-spacing:-.015em;color:var(--ink)}
.label-right .experience-label{text-align:right}
.label-left .experience-label{text-align:left}
.labeled-chapter h2{font-size:clamp(50px,5.1vw,84px)}
.labeled-chapter .chapter-inner{max-width:56vw}
.labeled-chapter .audience-target{display:block;margin:0 0 16px;font-size:18px;line-height:1.3;color:var(--ink)}
.audience-target strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:48px;color:var(--orange);line-height:1}
.chapter .audience-target small{display:block;font-size:9px;letter-spacing:.12em;margin-top:5px}
#supporting-media .venue-main-label{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(36px,4vw,64px);color:#f6d34a;line-height:1;margin:8px 0 10px;letter-spacing:-.02em}
.villa-chapter .chapter-inner{max-width:100%;padding-right:53vw}
.villa-circles{position:absolute;left:55vw;right:7vw;top:21vh;bottom:12vh;pointer-events:none}
.villa-circles figure{position:absolute;width:clamp(110px,14vw,210px);margin:0;animation:villa-float 6s ease-in-out infinite alternate;animation-delay:calc(var(--villa-order) * -1.4s)}
.villa-circles figure:nth-child(1){left:0;top:0}.villa-circles figure:nth-child(2){right:0;top:18%}.villa-circles figure:nth-child(3){left:0;bottom:0}.villa-circles figure:nth-child(4){right:0;bottom:0}
.villa-circles img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;border:1px solid #f0783c99;box-shadow:0 0 35px #f0783c18}
.villa-circles figcaption{text-align:center;font-size:9px;letter-spacing:.12em;margin-top:9px;color:var(--ink)}
@keyframes villa-float{to{transform:translateY(-12px)}}
@media(max-width:700px){
 .labeled-chapter .chapter-inner{max-width:100%}
 .labeled-chapter .chapter-inner>small{column-gap:16px}
 .labeled-chapter .experience-label{font-size:32px}
 .labeled-chapter h2{font-size:46px;margin:14px 0}
 .labeled-chapter .day-detail{font-size:9px!important;margin-top:8px}
 .labeled-chapter .audience-target{font-size:16px;margin-bottom:12px}
 .audience-target strong{font-size:38px}
 #chapter-4 .experience-label{font-size:30px}
 #chapter-4 .chapter-inner{padding-top:32vh}
 #chapter-4 .chapter-inner h2{font-size:34px}
 #chapter-4 .chapter-inner p{font-size:15px;line-height:1.4;margin:8px 0}
 #chapter-4 .chapter-inner .note{font-size:9px}
 #supporting-media .venue-main-label{font-size:32px;margin:5px 0}
 .villa-chapter .chapter-inner{padding:15vh 8vw 5vh;justify-content:center}
 .villa-chapter h2{font-size:56px;margin:12px 0}
 .villa-chapter .housing-lead{font-size:27px;margin-bottom:12px}
 .villa-chapter p{font-size:16px;margin:8px 0}
 .villa-chapter .note{font-size:10px}
 .villa-circles{position:relative;inset:auto;display:flex;gap:10px;justify-content:space-between;width:100%;margin-top:20px}
 .villa-circles figure{position:relative!important;inset:auto!important;width:calc((100% - 30px)/4);animation:none}
 .villa-circles figcaption{font-size:8px}
}
@media(max-height:760px) and (max-width:700px){.labeled-chapter h2{font-size:38px}.labeled-chapter .day-number{font-size:52px}.labeled-chapter .chapter-inner p{font-size:15px;line-height:1.4}.labeled-chapter .housing-lead{font-size:24px}.villa-chapter h2{font-size:44px}.villa-chapter .housing-lead{font-size:23px}.villa-circles{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.villa-circles figure{animation:none}}
.motion-off .villa-circles figure{animation:none}
/* Full-width editorial split: separate activity copy from the day/headline. */
.chapter.split-experience .chapter-inner,#chapter-4.split-experience .chapter-inner{max-width:100%;width:100%;margin:0;padding:14vh 7vw 8vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10vw;align-items:center}
.split-experience .experience-detail{grid-column:1;grid-row:1;max-width:440px;text-align:left}
.split-experience .experience-heading{grid-column:2;grid-row:1;min-width:0}
.split-experience.detail-on-right .experience-detail{grid-column:2;justify-self:end}
.split-experience.detail-on-right .experience-heading{grid-column:1}
.split-experience .experience-label{display:block;text-align:left;font-size:clamp(38px,4.3vw,70px);line-height:1;margin-bottom:24px;color:var(--orange)}
.split-experience .experience-heading>small{display:block}
.split-experience .experience-heading h2{font-size:clamp(44px,5.1vw,82px)}
.split-experience .experience-detail p{font-size:clamp(16px,1.35vw,20px);line-height:1.6}
.split-experience .experience-detail .note{font-size:10px}
.split-experience .experience-detail .housing-lead{font-size:clamp(26px,2.6vw,40px)}
#chapter-4 .venue-images{grid-template-columns:1fr}
#chapter-4 .venue-images img:first-child{height:23vh;mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent)}
#chapter-4 .venue-images img:last-child,#chapter-4 #venue-panel .support-note{display:none}
#chapter-4 .venue-main-label{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(38px,4.3vw,70px);color:var(--orange);line-height:1;margin:12px 0 20px}
#chapter-4 .experience-detail>p{margin:10px 0}
#supporting-media{display:none}
@media(max-width:700px){
 .chapter.split-experience .chapter-inner,#chapter-4.split-experience .chapter-inner{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:22px;padding:14vh 8vw 7vh;height:100svh}
 .split-experience .experience-heading{order:0}
 .split-experience .experience-detail{order:1;width:100%;max-width:none}
 .split-experience .experience-heading h2{font-size:36px;margin:12px 0 0}
 .split-experience .experience-label{font-size:34px;margin:0 0 14px}
 .split-experience .experience-detail p{font-size:15px;line-height:1.45;margin:10px 0}
 .split-experience .experience-detail .note{font-size:9px}
 .split-experience .experience-detail .housing-lead{font-size:25px}
 #chapter-4 .venue-images img:first-child{height:15vh}
 #chapter-4 .experience-detail #venue-panel .venue-main-label{font-size:32px;line-height:1;margin:7px 0}
 #chapter-4 .audience-target{margin-bottom:8px}
 #chapter-4 .experience-heading h2{font-size:30px}
 #chapter-4 .chapter-inner{gap:14px}
}
