@font-face{font-family:Display;src:url(fonts/display.woff2) format("woff2");font-display:swap}@font-face{font-family:Text;src:url(fonts/text.woff2) format("woff2");font-display:swap}:root{--violet:#6E0FB2;--pink:#EF9ECE;--paper:#FAFAF7;--ink:#151515}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--violet) var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.65 Text,Arial,sans-serif}::selection{background:var(--violet);color:#fff}a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-underline-offset:5px;overflow-wrap:anywhere}a:hover{text-decoration-thickness:3px}button,input{font:inherit;min-height:46px;padding:10px 16px;border:1px solid var(--ink);background:var(--paper);color:var(--ink);max-width:100%;border-radius:0}button{cursor:pointer}button:hover{background:var(--ink);color:var(--paper)}:focus-visible{outline:3px solid currentColor;outline-offset:5px}.skip{position:absolute;top:-100px;z-index:5;background:var(--paper);padding:12px}.skip:focus{top:0}[hidden]{display:none!important}h1,h2{font-family:Display,Arial,sans-serif;font-weight:400;line-height:1.08;text-wrap:balance;margin:0 0 28px}h1{font-size:clamp(48px,5.4vw,78px)}h2{font-size:clamp(34px,3.8vw,54px)}h3{font-size:25px;font-weight:600;line-height:1.2;margin:28px 0 14px}p{max-width:66ch;margin:0 0 22px}.caption,figcaption{font-size:14px;line-height:1.6}header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 4vw;border-bottom:1px solid var(--ink)}.brand{font:32px/1.1 Display,Arial,sans-serif;text-decoration:none}header span{font-size:14px}header>a:last-child{font-size:15px}.opening{display:grid;grid-template-columns:2fr 1fr;gap:48px;padding:64px 4vw;background:var(--violet);color:#fff}.lead{padding:32px 40px 24px 0;position:relative}.lead:before{content:"";position:absolute;top:0;left:0;right:25%;height:1px;background:#fff}.lead:after{content:"";position:absolute;right:0;top:30px;bottom:30px;width:1px;background:#fff}.lead h1{max-width:13ch}.opening nav{padding-top:32px}.opening nav h2{font-size:34px}.opening nav ol{list-style:none;margin:0;padding:0}.opening nav li{border-top:1px solid #fff}.opening nav a{display:flex;padding:9px 0;text-decoration:none}.button{padding:12px 22px;background:var(--ink);color:#fff;text-decoration:none;margin:8px 0}.opening .button,.title .button{background:var(--pink);color:#000}.spread{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;padding:72px 4vw;position:relative}.spread:before{content:"";position:absolute;left:4vw;right:20vw;top:0;height:1px;background:currentColor}.spread.reverse{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.spread article+article{margin-top:28px;padding-top:18px;border-top:1px solid var(--ink)}.spread aside{padding-top:48px}.spread h2{max-width:20ch}.pink{background:var(--pink);color:#000}.frame-photo{margin:0 0 24px}.frame-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--pink)}figcaption{margin-top:16px}.practical-band{background:var(--pink);color:#000}.practical-band>.spread{padding-top:72px}.hours-example h2{font-size:38px}.example-notice{font-size:17px;padding:18px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--ink)}.hours-example p{font-size:16px}.hours-controls{display:flex;flex-wrap:wrap;gap:14px;padding:22px 0;border-top:1px solid var(--ink)}.hours-controls label{width:100%;font-size:16px}.hours-controls input{width:100%;max-width:360px;min-width:0}.hours-controls p{width:100%;margin:0}table{width:100%;border-collapse:collapse;font-size:16px}th,td{text-align:left;padding:14px 8px 14px 0;vertical-align:top;border-bottom:1px solid var(--ink)}th{font-weight:600}caption{caption-side:bottom;text-align:left;padding:14px 0;font-size:14px}.hours-example ul{padding-left:22px;font-size:16px}.questions details{border-top:1px solid var(--ink);padding:10px 0}.questions summary{min-height:48px;padding:10px 0;cursor:pointer;font-size:22px}.questions details p{margin-top:18px}.title{display:grid;grid-template-columns:2fr 1fr;gap:48px;padding:64px 4vw;background:var(--violet);color:#fff}.title p{align-self:end}.offer-list{padding:24px 4vw 64px}.offer-list article{display:grid;grid-template-columns:1fr 2fr;gap:18px 48px;padding:36px 0;border-bottom:1px solid var(--ink)}.offer-list a{grid-column:2;width:fit-content}.offer-list h2{margin:0;font-size:42px}.reading{max-width:940px;margin:auto;padding:64px 4vw}.reading h2{margin-top:48px}.reading h2:first-child{margin-top:0}.photo{margin:0 0 24px}.reserve{min-height:280px;border:1px dashed currentColor;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px;text-align:center}.reserve strong{font:30px/1.2 Display,Arial,sans-serif}.reserve span{font-size:14px}.review-slot{border-top:2px solid var(--ink);padding-top:24px}.review-slot h3{margin-top:0}dl>div{display:flex;flex-wrap:wrap;gap:20px;border-top:1px solid currentColor;padding:14px 0}dd{margin:0}footer{display:grid;grid-template-columns:2fr 1fr;gap:48px;padding:56px 4vw;background:var(--violet);color:#fff}footer h2{font-size:34px}footer a{display:flex;width:fit-content}footer p{font-size:15px;margin:8px 0}@media(max-width:760px){header{padding:22px;flex-wrap:wrap;gap:18px}.brand{font-size:28px}header span{width:100%;order:3;font-size:13px}.opening,.spread,.spread.reverse,.title,.offer-list article,footer{grid-template-columns:1fr;gap:28px;padding:44px 22px}.lead{padding:24px 0 0}.lead:after{display:none}.opening h1,.title h1{font-size:52px;overflow-wrap:anywhere}.opening nav{padding-top:0}.spread:before{left:22px;right:70px}.spread aside{padding-top:0}.spread h2{max-width:none}h2{font-size:38px}.offer-list{padding:0 22px 40px}.offer-list article{padding:32px 0}.offer-list a{grid-column:1}.offer-list h2{font-size:40px}.reading{padding:44px 22px}.practical-band>.spread{padding-top:44px}.hours-example h2{font-size:34px}.hours-controls button{width:100%}.hours-controls input{font-size:16px}.hours-example p,.hours-example ul,table{font-size:16px}.reserve{min-height:240px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}