@font-face{font-family:Fraunces;src:url(type/fraunces-latin.woff2) format("woff2");font-weight:300 800;font-display:swap}
@font-face{font-family:Fraunces;src:url(type/fraunces-italic-latin.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:Hanken;src:url(type/hanken-grotesk-latin.woff2) format("woff2");font-weight:300 800;font-display:swap}

:root{
	--green:#1E3A2F;--green-2:#2C5243;--brick:#A8472F;--brick-2:#8C3A26;--bone:#F5F1E8;--paper:#FBF8F2;--stone:#DDD6C7;--moss:#5B6B60;--ink:#17201B;--clay:#E7C3B0;--sun:#F2C14E;
	--r:28px;--wrap:min(1180px,calc(100% - 2.5rem));
	--spring:cubic-bezier(.34,1.4,.64,1);--smooth:cubic-bezier(.2,.8,.2,1)
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:5.5rem;-webkit-text-size-adjust:100%}
body{overflow-x:clip;margin:0;background:var(--bone);color:var(--ink);font:400 1.0625rem/1.65 Hanken,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{display:block;max-width:100%;height:auto}
[hidden]{display:none!important}
a{color:inherit}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.015em;word-spacing:.06em;color:var(--green);margin:0;line-height:1.02;font-variation-settings:"opsz" 144}
h2{font-size:clamp(2.3rem,5.4vw,4.2rem)}
i{font-style:italic;font-weight:400;color:var(--brick)}

.pill{display:inline-flex;align-items:center;gap:.6rem;padding:1.05rem 1.6rem;border:0;border-radius:999px;background:var(--brick);color:#fff;font:700 1rem Hanken,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 10px 0 -4px var(--brick-2),0 18px 30px -16px rgba(140,58,38,.7);transition:transform .35s var(--spring),box-shadow .35s var(--smooth)}
.pill:hover{transform:translateY(-3px) rotate(-1deg)}
.pill:active{transform:translateY(2px);box-shadow:0 4px 0 -2px var(--brick-2)}
.pill span{transition:transform .35s var(--spring)}
.pill:hover span{transform:translate(3px,3px)}
.pill--small{padding:.75rem 1.15rem;font-size:.9rem;box-shadow:0 6px 0 -3px var(--brick-2)}
.pill--green{background:var(--green);box-shadow:0 8px 0 -4px #0F241C}
.pill--cream{background:var(--bone);color:var(--green);box-shadow:0 8px 0 -4px var(--stone)}
.pill--wide{width:100%;justify-content:center}
.pill[disabled]{opacity:.65;cursor:progress}
.textlink{font-weight:700;color:var(--green);text-decoration:none;background:linear-gradient(var(--brick),var(--brick)) 0 100%/100% 2px no-repeat;padding-bottom:2px;transition:background-size .35s var(--smooth)}
.textlink:hover{background-size:0 2px;background-position:100% 100%}
.kicker{margin:0 0 .9rem;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--brick)}
.kicker--light{color:var(--clay)}
.sticker{display:inline-block;margin:0 0 1.4rem;padding:.45rem .95rem;border-radius:999px;background:var(--sun);color:var(--ink);font-size:.82rem;font-weight:800;letter-spacing:.02em}
.sticker--tilt{transform:rotate(-3deg)}

.masthead{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:1.4rem;width:100%;padding:.9rem max(1.25rem,calc((100% - 1180px)/2));background:rgba(245,241,232,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(221,214,199,.7)}
.masthead__logo img{width:170px}
.masthead__tel{margin-left:auto;display:flex;align-items:center;gap:.55rem;font-weight:700;text-decoration:none;color:var(--green)}
.pulse{width:9px;height:9px;border-radius:50%;background:#3DAA6D;box-shadow:0 0 0 0 rgba(61,170,109,.6);animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 9px rgba(61,170,109,0)}100%{box-shadow:0 0 0 0 rgba(61,170,109,0)}}

.opening{width:var(--wrap);margin:0 auto;padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,6.5rem);display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.opening h1{font-size:clamp(3.4rem,8.6vw,7.4rem);line-height:.92;letter-spacing:-.035em;word-spacing:.12em;margin-bottom:1.6rem;font-weight:400}
.struck{position:relative;color:var(--moss)}
.struck::after{content:"";position:absolute;left:-4%;right:-4%;top:55%;height:.09em;background:var(--brick);border-radius:4px;transform:rotate(-4deg) scaleX(0);transform-origin:left;animation:strike .7s .5s var(--smooth) forwards}
@keyframes strike{to{transform:rotate(-4deg) scaleX(1)}}
.scribble{position:relative;white-space:nowrap}
.scribble svg{position:absolute;left:0;right:0;bottom:-.12em;width:100%;height:.28em;overflow:visible}
.scribble path{fill:none;stroke:var(--sun);stroke-width:7;stroke-linecap:round;stroke-dasharray:320;stroke-dashoffset:320;animation:scrib .9s 1s var(--smooth) forwards}
@keyframes scrib{to{stroke-dashoffset:0}}
.opening__sub{font-size:1.2rem;color:#3F4B43;max-width:33rem;margin:0 0 2rem}
.opening__go{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem 1.8rem}
.opening__facts{list-style:none;margin:2.6rem 0 0;padding:1.4rem 0 0;border-top:1.5px dashed var(--stone);display:flex;flex-wrap:wrap;gap:1rem 2.4rem}
.opening__facts li{font-size:.92rem;color:var(--moss)}
.opening__facts b{display:block;font:500 2rem/1 Fraunces,serif;color:var(--green);letter-spacing:-.03em}

.flip{margin:0;position:relative}
.flip::before{content:"";position:absolute;inset:8% -6% -6% 10%;border-radius:40px;background:var(--clay);transform:rotate(4deg);z-index:-1}
.flip__card{background:#fff;border-radius:var(--r);padding:1.6rem;box-shadow:0 30px 60px -30px rgba(30,58,47,.45);position:relative;transform:rotate(-2deg);transition:transform .6s var(--spring)}
.flip:hover .flip__card{transform:rotate(0)}
.flip__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.flip__head b{font:500 1.7rem Fraunces,serif;color:var(--green)}
.flip__tag{padding:.3rem .8rem;border-radius:999px;background:var(--bone);font-size:.78rem;font-weight:800;color:var(--moss);transition:background-color .3s,color .3s}
.flip__tag.is-after{background:var(--green);color:var(--bone)}
.flip__dow,.flip__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.flip__dow{margin-bottom:6px;font-size:.72rem;font-weight:800;color:var(--moss);text-align:center}
.flip__stage{position:relative;border-radius:14px;overflow:hidden}
.flip__grid i{aspect-ratio:1;border-radius:10px;display:grid;place-items:center;font:600 .78rem Hanken,sans-serif;font-style:normal}
.flip__grid--empty i{background:var(--bone);color:#B4AC9C}
.flip__grid--full{position:absolute;inset:0;clip-path:inset(0 0 0 var(--cut,38%));transition:clip-path .08s linear}
.flip__grid--full i{background:var(--bone);color:#B4AC9C}
.flip__grid--full i.b{background:var(--green);color:#CFE0D5}
.flip__grid--full i.b.s{border-top-left-radius:22px;border-bottom-left-radius:22px}
.flip__grid--full i.b.e{border-top-right-radius:22px;border-bottom-right-radius:22px}
.flip__grid--full i.b.alt{background:var(--brick);color:#F5D9CE}
.flip__grid i.o{visibility:hidden}
.flip__handle{position:absolute;top:-4px;bottom:-4px;left:var(--cut,38%);width:4px;margin-left:-2px;background:var(--sun);border-radius:4px;pointer-events:none;transition:left .08s linear}
.flip__handle span{position:absolute;top:50%;left:50%;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;background:var(--sun);box-shadow:0 6px 16px -4px rgba(0,0,0,.35)}
.flip__handle span::before,.flip__handle span::after{content:"";position:absolute;top:50%;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent}
.flip__handle span::before{left:8px;border-right:7px solid var(--ink)}
.flip__handle span::after{right:8px;border-left:7px solid var(--ink)}
.flip__range{position:absolute;left:1.6rem;right:1.6rem;top:5.6rem;height:calc(100% - 10.6rem);width:calc(100% - 3.2rem);margin:0;opacity:0;cursor:ew-resize;z-index:3}
.flip__range:focus-visible + *,.flip__range:focus-visible{outline:none}
.flip__card:focus-within{box-shadow:0 0 0 4px var(--sun),0 30px 60px -30px rgba(30,58,47,.45)}
.flip__foot{display:flex;justify-content:space-between;margin-top:1.2rem;padding-top:1rem;border-top:1.5px dashed var(--stone)}
.flip__foot small{display:block;font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--moss)}
.flip__foot b{font:500 1.5rem Fraunces,serif;color:var(--moss)}
.flip__foot b.brick{color:var(--brick)}
.flip figcaption{margin-top:1.4rem;font-size:.82rem;color:var(--moss);text-align:center}

.ticker{background:var(--green);color:var(--bone);overflow:hidden;padding:1.1rem 0;transform:rotate(-1.2deg);margin:0 -2rem;box-shadow:0 20px 40px -24px rgba(30,58,47,.6)}
.ticker__track{display:flex;width:max-content;animation:tick 32s linear infinite}
.ticker__track span{display:flex;align-items:center;gap:1.6rem;padding-right:1.6rem;font:400 1.6rem Fraunces,serif;font-style:italic;white-space:nowrap}
.ticker__track span::after{content:"✦";font-style:normal;font-size:1rem;color:var(--sun)}
@keyframes tick{to{transform:translateX(-50%)}}

.watch{width:var(--wrap);margin:0 auto;padding:clamp(5rem,10vw,8rem) 0 clamp(3rem,6vw,5rem);display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.watch__intro p{font-size:1.12rem;color:#3F4B43;margin:1.2rem 0 0}
.note-hand{font:italic 400 1.6rem Fraunces,serif;color:var(--brick)!important;transform:rotate(-4deg);display:inline-block;margin-top:2rem!important}
.watch__player{position:relative;border-radius:var(--r);overflow:hidden;background:var(--green);box-shadow:0 40px 70px -40px rgba(30,58,47,.6);aspect-ratio:16/9}
.watch__player img,.watch__player video{width:100%;height:100%;object-fit:cover}
.watch__player::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(23,32,27,.45));pointer-events:none}
.watch__player.is-live::after{display:none}
.watch__btn{position:absolute;left:50%;top:50%;z-index:2;width:92px;height:92px;margin:-46px 0 0 -46px;border:0;border-radius:50%;background:var(--bone);cursor:pointer;display:grid;place-items:center;transition:transform .4s var(--spring)}
.watch__btn svg{width:36px;fill:var(--brick);margin-left:4px}
.watch__btn::before{content:"";position:absolute;inset:-10px;border-radius:50%;border:2px solid rgba(245,241,232,.7);animation:ring 2.2s var(--smooth) infinite}
@keyframes ring{from{transform:scale(.85);opacity:1}to{transform:scale(1.35);opacity:0}}
.watch__btn:hover{transform:scale(1.1) rotate(-6deg)}
.watch__len{position:absolute;left:1.2rem;bottom:1.1rem;z-index:2;padding:.3rem .7rem;border-radius:999px;background:rgba(23,32,27,.7);color:#fff;font-size:.82rem;font-weight:700}

.chat{width:var(--wrap);margin:0 auto;padding:clamp(3rem,6vw,5rem) 0 clamp(5rem,10vw,8rem);display:grid;grid-template-columns:1fr auto;gap:clamp(2rem,6vw,6rem);align-items:center}
.chat__words>p:not(.kicker){font-size:1.12rem;color:#3F4B43;max-width:30rem;margin:1.3rem 0 1.6rem}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.ticks li{position:relative;padding-left:2.1rem;font-weight:700}
.ticks li::before{content:"";position:absolute;left:0;top:.15rem;width:1.35rem;height:1.35rem;border-radius:50%;background:var(--green)}
.ticks li::after{content:"";position:absolute;left:.42rem;top:.47rem;width:.5rem;height:.28rem;border-left:2px solid var(--bone);border-bottom:2px solid var(--bone);transform:rotate(-45deg)}
.phone{position:relative;width:min(330px,82vw);padding:.9rem;border-radius:46px;background:var(--ink);box-shadow:0 50px 80px -40px rgba(23,32,27,.7),inset 0 0 0 2px #2D3A33;transform:rotate(3deg)}
.phone__notch{position:absolute;top:1.2rem;left:50%;width:90px;height:22px;margin-left:-45px;border-radius:12px;background:#000;z-index:2}
.phone__top{display:flex;align-items:center;gap:.7rem;padding:2.6rem 1.1rem .9rem;border-radius:36px 36px 0 0;background:#EFE9DC}
.phone__top img{width:26px;height:auto}
.phone__top b{display:block;font-size:.92rem;color:var(--green)}
.phone__top small{font-size:.72rem;color:var(--moss)}
.phone__body{display:flex;flex-direction:column;gap:.55rem;min-height:330px;padding:1rem;border-radius:0 0 36px 36px;background:#F8F4EC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Ccircle cx='2' cy='2' r='1' fill='%23E5DED0'/%3E%3C/svg%3E")}
.msg{max-width:82%;margin:0;padding:.65rem .9rem;border-radius:18px;font-size:.88rem;line-height:1.4;opacity:0;transform:translateY(10px) scale(.96);transition:opacity .4s var(--smooth),transform .5s var(--spring)}
.msg.in{align-self:flex-start;background:#fff;border-bottom-left-radius:5px;color:var(--ink)}
.msg.out{align-self:flex-end;background:var(--green);color:var(--bone);border-bottom-right-radius:5px}
.msg.show{opacity:1;transform:none}
.typing{align-self:flex-end;display:flex;gap:4px;margin:0;padding:.7rem .9rem;border-radius:18px;background:var(--green-2);opacity:0;transition:opacity .3s}
.typing.show{opacity:1}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--bone);animation:dots 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes dots{50%{transform:translateY(-4px);opacity:.5}}
.phone__cap{position:absolute;left:0;right:0;bottom:-2.2rem;margin:0;text-align:center;font-size:.8rem;color:var(--moss);transform:rotate(-3deg)}

.bento{width:var(--wrap);margin:0 auto;padding-bottom:clamp(5rem,10vw,8rem)}
.bento__title{max-width:44rem;margin-bottom:2.6rem}
.bento__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.tile{position:relative;background:#fff;border-radius:var(--r);padding:1.7rem;overflow:hidden;transition:transform .5s var(--spring),box-shadow .5s var(--smooth);box-shadow:0 1px 0 var(--stone)}
.tile:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 30px 50px -30px rgba(30,58,47,.45)}
.tile h3{font-size:1.5rem;margin:.6rem 0 .5rem}
.tile p{margin:0;color:var(--moss);font-size:.98rem}
.tile--wide{grid-column:span 2}
.tile--green{background:var(--green)}
.tile--green h3{color:var(--bone);font-size:2rem}
.tile--green p{color:#C9D6CE;max-width:26rem}
.tile--clay{background:var(--clay)}
.tile--clay p{color:#6B4A3E}
.tile__ico{display:grid;place-items:center;width:3rem;height:3rem;border-radius:16px;background:var(--bone);color:var(--brick)}
.tile__ico svg{width:1.5rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tile--clay .tile__ico{background:#fff}
.spark{margin-top:1.4rem;width:100%;overflow:visible}
.spark path{fill:none;stroke:var(--sun);stroke-width:3;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 1.8s var(--smooth)}
.spark .spark__fill{fill:rgba(242,193,78,.14);stroke:none;opacity:0;transition:opacity 1s 1s}
.seen .spark path{stroke-dashoffset:0}
.seen .spark .spark__fill{opacity:1}
.tile--statement{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:center;background:var(--paper);border:1.5px dashed var(--stone);box-shadow:none}
.mini{margin:0;padding:1.1rem 1.2rem;background:#fff;border-radius:18px;box-shadow:0 20px 30px -24px rgba(30,58,47,.5);transform:rotate(2deg)}
.mini div{display:flex;justify-content:space-between;gap:.6rem;padding:.35rem 0;font-size:.88rem;border-bottom:1px solid #F0EBE0}
.mini dt{color:var(--moss)}
.mini dd{margin:0;font-weight:700}
.mini__total{border-bottom:0!important}
.mini__total dd{font:500 1.5rem Fraunces,serif;color:var(--brick)}
.mini p{margin:.2rem 0 0;font-size:.7rem;color:var(--moss)}

.fitcheck{padding:0 1.25rem clamp(5rem,10vw,8rem)}
.fitcheck__card{width:min(860px,100%);margin:0 auto;padding:clamp(1.8rem,5vw,3.4rem);background:var(--sun);border-radius:40px;text-align:center;box-shadow:0 14px 0 -4px #D9A733}
.fitcheck__card .sticker{background:#fff}
.fitcheck__card h2{font-size:clamp(2rem,4.6vw,3.4rem);color:var(--ink)}
.fitcheck__card h2 i{color:var(--brick-2)}
.quiz{list-style:none;margin:2.2rem 0 0;padding:0;display:grid;gap:.7rem;text-align:left}
.quiz li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem .9rem .9rem 1.3rem;background:#fff;border-radius:20px;font-weight:700}
.yn{display:flex;gap:.4rem;flex:none}
.yn button{padding:.6rem 1rem;border:2px solid var(--stone);border-radius:999px;background:#fff;font:700 .9rem Hanken,sans-serif;color:var(--ink);cursor:pointer;transition:all .25s var(--spring)}
.yn button:hover{border-color:var(--green)}
.yn button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff;transform:scale(1.05)}
.verdict{margin-top:1.6rem;padding:1.4rem;border-radius:22px;background:var(--ink);color:var(--bone);text-align:left;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;animation:pop .5s var(--spring)}
.verdict p{margin:0;max-width:34rem}
.verdict b{display:block;font:500 1.5rem Fraunces,serif;color:var(--sun)}
@keyframes pop{from{transform:scale(.94);opacity:0}}

.review{width:var(--wrap);margin:0 auto;padding-bottom:clamp(5rem,10vw,8rem);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.review__side{position:sticky;top:7rem}
.review__side>p:not(.kicker):not(.review__alt){font-size:1.12rem;color:#3F4B43;margin:1.2rem 0 1.6rem}
.review__what{margin:0;padding:0;list-style:none;counter-reset:w;display:grid;gap:.8rem}
.review__what li{counter-increment:w;display:flex;gap:.9rem;align-items:center;font-weight:700}
.review__what li::before{content:counter(w);display:grid;place-items:center;flex:none;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--clay);color:var(--brick-2);font:500 1rem Fraunces,serif}
.review__alt{margin-top:1.8rem;color:var(--moss)}
.review__alt a{font-weight:800;color:var(--brick)}

.sheetform,.booked{background:#fff;border-radius:34px;padding:clamp(1.2rem,3vw,2rem);box-shadow:0 40px 70px -40px rgba(30,58,47,.5)}
.part{border-radius:24px;transition:background-color .3s}
.part+.part{margin-top:.6rem}
.part h3{display:flex;align-items:center;gap:.8rem;padding:1rem 1.1rem;font-size:1.45rem;color:var(--moss);cursor:default}
.part h3 span{display:grid;place-items:center;flex:none;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--bone);font:800 .95rem Hanken,sans-serif;color:var(--moss)}
.part h3 em{margin-left:auto;font:700 .85rem Hanken,sans-serif;font-style:normal;color:var(--brick)}
.part.is-open{background:var(--paper)}
.part.is-open h3{color:var(--green)}
.part.is-open h3 span{background:var(--brick);color:#fff}
.part.is-done h3{cursor:pointer;color:var(--green)}
.part.is-done h3 span{background:var(--green);color:transparent;position:relative}
.part.is-done h3 span::after{content:"";position:absolute;width:.55rem;height:.3rem;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.part__body{display:none;padding:0 1.1rem 1.3rem}
.part.is-open .part__body{display:block;animation:pop .45s var(--spring)}
.input{display:block;margin-bottom:1rem;font-size:.9rem;font-weight:700;color:#3F4B43}
.input input{display:block;width:100%;margin-top:.45rem;padding:.95rem 1.1rem;border:2px solid var(--stone);border-radius:16px;background:#fff;font:500 1rem Hanken,sans-serif;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.input input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 4px rgba(30,58,47,.12)}
.input-label{margin:0 0 .5rem;font-size:.9rem;font-weight:700;color:#3F4B43}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.2rem}
.chips label{cursor:pointer}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips span{display:block;padding:.7rem 1.15rem;border:2px solid var(--stone);border-radius:999px;background:#fff;font-weight:700;transition:all .25s var(--spring)}
.chips span:hover{border-color:var(--green)}
.chips input:checked+span{background:var(--green);border-color:var(--green);color:#fff;transform:scale(1.04)}
.chips input:focus-visible+span{box-shadow:0 0 0 4px rgba(168,71,47,.3)}
.dates{display:flex;gap:.5rem;overflow-x:auto;padding:.3rem .1rem .8rem;scroll-snap-type:x mandatory;scrollbar-width:none}
.dates::-webkit-scrollbar{display:none}
.date{flex:0 0 4.6rem;scroll-snap-align:start;padding:.75rem .3rem;border:2px solid var(--stone);border-radius:20px;background:#fff;text-align:center;cursor:pointer;font:inherit;color:var(--ink);transition:all .25s var(--spring)}
.date small{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;color:var(--moss)}
.date b{display:block;font:500 1.7rem/1.1 Fraunces,serif;color:var(--green)}
.date:hover{border-color:var(--green)}
.date.on{background:var(--brick);border-color:var(--brick);transform:translateY(-3px)}
.date.on small,.date.on b{color:#fff}
.slots{display:flex;flex-wrap:wrap;gap:.45rem;margin:.6rem 0 1.3rem}
.slot{padding:.65rem 1rem;border:2px solid var(--stone);border-radius:999px;background:#fff;font:700 .95rem Hanken,sans-serif;font-variant-numeric:tabular-nums;color:var(--ink);cursor:pointer;transition:all .2s var(--spring)}
.slot:hover{border-color:var(--green)}
.slot.on{background:var(--green);border-color:var(--green);color:#fff;transform:scale(1.05)}
.slots__msg{margin:0;padding:1rem;border:2px dashed var(--stone);border-radius:16px;color:var(--moss);width:100%;text-align:center}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:0 .8rem}
.tick{display:flex;gap:.7rem;align-items:flex-start;margin:.2rem 0 1.4rem;font-size:.92rem;color:var(--moss);cursor:pointer}
.tick input{margin-top:.25rem;width:1.1rem;height:1.1rem;accent-color:var(--green)}
.honey{position:absolute;left:-10000px}
.sheetform__err{margin:1rem .4rem 0;padding:.85rem 1.1rem;border-radius:14px;background:#FBEDE8;color:var(--brick-2);font-weight:700}

.booked{text-align:center;animation:pop .6s var(--spring)}
.booked h2{font-size:clamp(2.2rem,4.6vw,3.4rem)}
.booked__line{display:inline-block;margin:1rem 0 1.4rem;padding:.6rem 1.1rem;border-radius:999px;background:var(--green);color:var(--bone);font-weight:700}
.booked__video video{width:100%;aspect-ratio:16/9;border-radius:22px;background:var(--green)}
.booked>p:not(.sticker):not(.booked__line){color:var(--moss);margin:1.3rem auto 1.2rem;max-width:34rem}

.faqs{width:var(--wrap);margin:0 auto;padding-bottom:clamp(5rem,10vw,8rem)}
.faqs h2{margin-bottom:2.2rem}
.faqs__grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;align-items:start}
.faqs details{background:#fff;border-radius:22px;padding:1.2rem 1.4rem;transition:background-color .3s}
.faqs details[open]{background:var(--paper);box-shadow:inset 0 0 0 2px var(--stone)}
.faqs summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;cursor:pointer;list-style:none;font:500 1.2rem/1.3 Fraunces,serif;color:var(--green)}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary::after{content:"+";flex:none;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--bone);font:700 1.2rem Hanken,sans-serif;color:var(--brick);transition:transform .35s var(--spring)}
.faqs details[open] summary::after{transform:rotate(45deg)}
.faqs details p{margin:.8rem 0 0;color:#3F4B43}

.bottom{background:var(--green);color:#C9D6CE;padding:clamp(3.5rem,8vw,6rem) max(1.25rem,calc((100% - 1180px)/2)) 2rem;border-radius:48px 48px 0 0}
.bottom__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding-bottom:2.6rem;border-bottom:1px solid rgba(245,241,232,.14)}
.bottom__big{margin:0;font:400 clamp(2.4rem,6vw,4.8rem)/1 Fraunces,serif;letter-spacing:-.04em;color:var(--bone)}
.bottom__big i{color:var(--clay)}
.bottom__cols{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:2rem;padding:2.4rem 0;font-size:.92rem}
.bottom__cols p{margin:0}
.bottom strong{color:var(--bone)}
.bottom a:not(.pill){color:var(--bone)}
.bottom__small{margin:0;padding-top:1.4rem;border-top:1px solid rgba(245,241,232,.14);font-size:.8rem;color:#93A79B}

.rise{opacity:0;transform:translateY(40px) rotate(1deg);transition:opacity .9s var(--smooth),transform .9s var(--spring)}
.rise.seen{opacity:1;transform:none}

@media (max-width:980px){
	.opening,.watch,.chat,.review{grid-template-columns:1fr}
	.flip{max-width:440px}
	.phone{justify-self:center}
	.review__side{position:static}
	.bento__grid{grid-template-columns:1fr 1fr}
	.tile--statement{grid-template-columns:1fr}
}
@media (max-width:620px){
	.masthead__tel{display:none}
	.masthead .pill--small{margin-left:auto}
	.masthead__logo img{width:140px}
	.opening{padding-top:2rem}
	.opening h1{font-size:clamp(3rem,15vw,4.4rem)}
	.bento__grid,.faqs__grid,.pair,.bottom__cols{grid-template-columns:1fr}
	.tile--wide{grid-column:auto}
	.quiz li{flex-direction:column;align-items:flex-start}
	.ticker__track span{font-size:1.25rem}
	.watch__btn{width:74px;height:74px;margin:-37px 0 0 -37px}
}
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
	.rise{opacity:1;transform:none}
	.msg{opacity:1;transform:none}
	.ticker__track{animation:none}
}
