/* Interactive prototype refinements. All imagery comes from the provided course deck. */
html{scroll-behavior:smooth}main{padding-bottom:104px}button,input,select{font-family:var(--sans)}nav button{font-size:11px}.prototype-note{font-size:10px;padding:0 16px;margin:21px 0 4px}.hero>img{object-position:53% 52%}.hero:after{background:linear-gradient(90deg,rgba(24,23,17,.64),rgba(24,23,17,.08)),linear-gradient(0deg,rgba(24,23,17,.14),transparent 60%)}.hero h1{font-size:31px}.hero p{font-size:11px}.hero-mark{top:23px;right:17px}.location{font-size:11px}.venue p{font-size:12px}.story h3{font-size:14px}.story p{font-size:11px}.story img{width:59px;height:76px}.home-picks{display:flex;overflow:auto;gap:12px;padding-bottom:8px;scroll-snap-type:x mandatory}.home-pick{flex:0 0 142px;min-width:0;text-align:left;scroll-snap-align:start}.home-pick>img{width:142px;height:150px;object-fit:cover;border-radius:6px;background:#e7e0d5}.home-pick>span:not(.price){display:block;font-size:12px;line-height:1.6;min-height:37px;margin:9px 0 4px}.price.compact{font-size:19px}.activity-panel{display:block;width:100%;text-align:left}.activity-panel img{width:100%;height:160px;object-fit:cover;border-radius:6px}.activity-panel>span{display:flex;align-items:center;justify-content:space-between;padding-top:12px;font-size:12px}.activity-panel svg{width:17px;height:17px}.catalog-intro{padding-bottom:16px}.catalog-intro p{font-size:12px}.search{height:42px}.search input{font-size:12px}.catalog-toolbar{padding:2px 20px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.catalog-toolbar select{font-size:11px;border:0;background:transparent;color:var(--muted);padding:8px 0 8px 10px;max-width:135px}.catalog-toolbar .text-link{margin-left:9px;color:var(--accent)}.catalog-note{font-size:11px;line-height:1.7;align-items:flex-start}.catalog-note svg{flex:none}.course-grid{align-items:start;gap:22px 14px}.course-card{display:flex;flex-direction:column;position:relative}.course-photo{height:auto;aspect-ratio:1/1;width:100%;background:#e7dfd3}.photo-button{display:block;width:100%;height:100%;position:relative}.course-photo img{display:block;object-fit:cover}.course-label{font-size:9px;max-width:calc(100% - 46px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:4px 6px;left:8px;top:8px;background:#fffaf1ec}.favorite{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#fffaf1ed;color:#775d46}.favorite svg{width:17px;height:17px}.favorite.saved{color:var(--accent)}.favorite.saved svg{fill:#b86c5355}.course-copy{display:flex;flex-direction:column;flex:1}.course-title-button{text-align:left}.course-card h2{font-size:13px;line-height:1.7;margin-top:10px;min-height:43px;font-weight:500;overflow-wrap:anywhere}.course-card .course-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:10px;line-height:1.8;min-height:36px;margin-top:3px}.course-bottom{margin-top:9px}.course-bottom .round-arrow{width:28px;height:28px}.course-bottom .price{font-size:21px}.price-note{font-size:9px;color:var(--accent);line-height:1.8;margin-top:7px}.immersive-intro{font:17px/1.8 var(--serif);margin:0 20px 20px;color:#74624f}.empty svg{display:block;margin:0 auto 15px;width:34px;height:34px;color:#ad957b;stroke-width:1.3}.empty h3{font-size:15px;font-weight:500;color:#6f604d;margin-bottom:7px}.empty p{font-size:11px;line-height:1.9;padding:0 12px}.empty .outline-button{margin-top:17px;font-size:12px;padding:10px 16px}.booking-empty{background:#f0ece4;padding:32px 12px;border-radius:8px}.booking-empty .outline-button{display:inline-flex;align-items:center;gap:7px}.booking-empty .outline-button svg{width:14px;height:14px;margin:0}.booking-price-note{font-size:11px;line-height:1.8;padding:12px 20px 0;color:#895b40}.booking-intro p{font-size:12px}.booking-course h2{line-height:1.7;font-size:13px;max-width:190px}.booking-course p{font-size:11px}.booking-course .text-link{flex:none}.date-caption{font-size:10px;color:var(--muted);margin-top:9px;line-height:1.7}.other-date{position:relative;font-size:10px;line-height:27px;cursor:pointer;color:var(--accent)}.other-date input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.session{min-height:41px}.stepper{gap:8px}.stepper input#participant-count{padding:4px 0;width:34px;font-size:13px;text-align:center;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper button{width:28px;height:29px}.field>label{font-size:12px}.field input{font-size:12px}.field:focus-within{box-shadow:0 1px 0 var(--accent)}.booking-tip{font-size:11px}.submit-caption{font-size:10px;line-height:1.8}.reservation{margin-bottom:14px}.reservation-course h3{line-height:1.7;font-size:13px}.reservation-course p{font-size:10px}.state.confirmed{background:#e9eee1;color:#5a6d4d}.state.completed{background:#ece9e2;color:#6f675b}.state.cancelled{background:#efebe5;color:#8b7b6c}.my-stats button{font-size:11px}.my-stats .badge{right:-3px}.my-footer small{font-size:9px}.details{padding-top:7px}.detail-image{position:relative}.detail-image>button:first-child{width:100%;display:block}.detail-image>button>img{width:100%;height:310px;object-fit:cover;border-radius:7px;background:#e5dfd3;display:block}.detail-image .favorite{width:36px;height:36px;right:10px;top:10px}.photo-caption{position:absolute;bottom:12px;left:12px;padding:4px 8px;background:#fffaf0df;border-radius:3px;font-size:10px;color:#6f5943}.detail-category{font-size:11px;color:var(--accent);margin-top:19px}.details h1{font-size:25px;margin-top:7px}.detail-price{display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding-bottom:18px;border-bottom:1px solid var(--line)}.detail-price>.price{font-size:29px}.detail-price>span:last-child{font-size:10px;color:var(--muted)}.price-clarification{background:#f0e5d5;padding:14px;margin-top:17px;border-radius:6px;font-size:12px;color:#81583a}.price-clarification p{font-size:11px;margin-top:5px;color:#81583a}.detail-rule{padding:15px;background:#eeece4;border-radius:5px;margin-top:22px}.detail-rule h3{font-size:12px;font-weight:500}.detail-rule p{font-size:11px}.related-courses{display:flex;overflow:auto;gap:12px;margin-top:14px;padding-bottom:7px}.related-courses button{width:130px;text-align:left;flex:none}.related-courses img{width:130px;height:130px;object-fit:cover;border-radius:5px}.related-courses button>span:not(.price){display:block;font-size:11px;line-height:1.7;margin:8px 0 5px;min-height:36px}dialog{max-height:87dvh;overflow:auto}dialog .large-preview{height:auto;max-height:60dvh;object-fit:contain;background:#e8e2d7}dialog .primary-button{letter-spacing:0}.story-menu{max-height:55dvh;overflow:auto;margin-top:10px}.activity-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}.activity-gallery img{width:100%;height:155px;object-fit:cover;margin-top:0}.activity-gallery img:first-child{grid-column:1/-1;height:210px}
html[data-variant="B"] .course-grid{grid-template-columns:1fr;gap:0}html[data-variant="B"] .course-card{display:grid;grid-template-columns:116px minmax(0,1fr);gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}html[data-variant="B"] .course-card:first-child{padding-top:0}html[data-variant="B"] .course-photo{width:116px;height:130px;aspect-ratio:auto}html[data-variant="B"] .course-card h2{font-size:14px;margin-top:1px;min-height:0}html[data-variant="B"] .course-card .course-desc{font-size:11px;margin-top:7px;min-height:0}html[data-variant="B"] .course-bottom{margin-top:auto;padding-top:8px}html[data-variant="B"] .course-label{max-width:75px;font-size:8px}html[data-variant="B"] .favorite{right:5px;top:5px;width:27px;height:27px}html[data-variant="B"] .course-card .price-note{font-size:9px}
html[data-variant="C"] .course-grid{grid-template-columns:1fr;gap:31px}html[data-variant="C"] .course-photo{aspect-ratio:1.25}html[data-variant="C"] .course-card h2{font:500 21px/1.6 var(--serif);margin-top:14px;min-height:0}html[data-variant="C"] .course-card .course-desc{font-size:12px;margin-top:7px;min-height:0}html[data-variant="C"] .course-bottom{margin-top:14px}html[data-variant="C"] .course-bottom .price{font-size:27px}html[data-variant="C"] .course-bottom .round-arrow{width:34px;height:34px}html[data-variant="C"] .course-label{font-size:11px;padding:6px 9px}
@media(max-width:360px){.catalog-intro{padding-left:15px;padding-right:15px}.catalog-note{margin-left:15px;margin-right:15px;font-size:10px}.catalog-toolbar{padding-left:15px;padding-right:15px}.hero h1{font-size:28px}.hero p{font-size:10px}.hero-copy{left:17px}.hero-mark{right:12px;font-size:11px}.course-card h2{font-size:12px}.course-card .course-desc{font-size:10px}.course-bottom .price{font-size:20px}.booking-intro h1{font-size:23px}.other-date{font-size:10px}.story{gap:7px}.story img{width:47px;height:74px}.story h3{font-size:12px}.story p{font-size:10px}.story-link{font-size:9px}.flow{gap:5px}.flow span{font-size:9px}.receipt-flow{font-size:8px}.booking-course h2{max-width:155px}.detail-image>button>img{height:270px}html[data-variant="B"] .course-card{grid-template-columns:99px minmax(0,1fr);gap:11px}html[data-variant="B"] .course-photo{width:99px;height:125px}html[data-variant="B"] .course-card h2{font-size:13px}}

.catalog-category-picker{display:flex;align-items:center;gap:12px;margin:0 20px 10px;padding:10px 13px;background:#efede7;border-radius:6px}.catalog-category-picker>label{font-size:12px;color:var(--muted);white-space:nowrap}.catalog-category-picker>select{flex:1;min-width:0;border:0;background:transparent;font-size:13px;padding:3px 2px;color:var(--ink);cursor:pointer}.catalog-category-picker:focus-within{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:360px){.catalog-category-picker{margin-left:15px;margin-right:15px}}
