:root{--color-background:#ffffff;--color-foreground:#000000;--color-foreground-rgb:0 0 0;--color-surface:#f1ede8;--color-border:#000000;--color-input-border:#f1ede8;--color-muted:rgb(0 0 0/0.6);--color-subdued:rgb(0 0 0/0.4);--color-primary-button-text:#000000;--color-primary-button-background:#c3cca6;--color-primary-button-border:#000000;--color-primary-button-hover-background:#b8c396;--color-primary-button-hover-border:#262626;--color-secondary-button-text:#ffffff;--color-secondary-button-background:#000000;--color-secondary-button-hover-background:#262626;--color-badge-sale:#fdc656;--font-body:var(--font-instrument-sans),"Instrument Sans",system-ui,sans-serif;--font-heading:var(--font-instrument-serif),"Instrument Serif",Georgia,serif;--font-size-paragraph:0.875rem;--font-size-h1:clamp(3rem,7.2vw,4.5rem);--font-size-h2:clamp(2.25rem,4.8vw,3rem);--font-size-h3:2rem;--font-size-h4:1.5rem;--font-size-h5:1.125rem;--font-size-h6:1rem;--letter-spacing-sm:0.06em;--page-width:120rem;--narrow-page-width:90rem;--content-normal:42rem;--content-narrow:36rem;--gutter:clamp(16px,4vw,40px);--radius:10px;--header-height:64px}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:var(--font-size-paragraph);line-height:1.4;color:var(--color-foreground);background-color:var(--color-background);-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{text-decoration:none}a,button{color:inherit}button{font:inherit;cursor:pointer}h1,h2,h3,h4,h5,h6{margin:0 0 .25em;font-weight:400;line-height:1.1}h1{font-size:var(--font-size-h1)}h1,h2{font-family:var(--font-heading)}h2{font-size:var(--font-size-h2)}h3{font-family:var(--font-heading);font-size:var(--font-size-h3)}h4{font-size:var(--font-size-h4)}h5{font-size:var(--font-size-h5)}h6{font-size:var(--font-size-h6)}p{margin:0 0 .5em}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:12px 16px;background:#fff;border:1px solid #000}.skip-link:focus{left:8px;top:8px}.page-width{width:100%;max-width:var(--page-width);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(32px,6vw,64px)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 24px;border-radius:100px;border:1px solid var(--color-primary-button-border);background:var(--color-primary-button-background);color:var(--color-primary-button-text);font-size:var(--font-size-paragraph);letter-spacing:var(--letter-spacing-sm);text-transform:uppercase;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}.button:hover:not(:disabled){background:var(--color-primary-button-hover-background);border-color:var(--color-primary-button-hover-border)}.button:disabled{opacity:.6;cursor:progress}.button--secondary{background:var(--color-secondary-button-background);color:var(--color-secondary-button-text);border-color:var(--color-secondary-button-background)}.button--secondary:hover:not(:disabled){background:var(--color-secondary-button-hover-background);border-color:var(--color-secondary-button-hover-background)}.button--full{width:100%}.header{position:sticky;top:0;z-index:12;background:var(--color-background);border-bottom:1px solid rgb(0 0 0/.08)}.header__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:var(--header-height);gap:16px}.header__logo{justify-self:start;display:flex;align-items:center}.header__logo img{height:36px;width:auto}.header__nav{justify-self:center;display:flex;gap:24px;font-size:var(--font-size-paragraph)}.header__nav a:hover{text-decoration:underline;text-underline-offset:4px}.header__actions{justify-self:end;display:flex;align-items:center;gap:4px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:100px;background:transparent;position:relative}.icon-button:hover{background:rgb(0 0 0/.05)}.cart-count{position:absolute;top:4px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:100px;background:var(--color-foreground);color:#fff;font-size:10px;line-height:16px;text-align:center}@media (max-width:749px){.header__inner{display:flex;justify-content:space-between;align-items:center}.header__nav{display:none}}.hero{position:relative;overflow:hidden;background:var(--hero-bg,#faf9f7);--hero-ink:#0d0f12}.hero__inner{position:relative;z-index:1;padding-block:clamp(40px,7vw,88px)}.hero__eyebrow{margin:0 0 clamp(24px,4vw,48px);text-align:center;text-transform:uppercase;letter-spacing:.22em;font-size:clamp(.6875rem,1.4vw,.9375rem);font-weight:500;color:var(--hero-ink)}.hero__wordmark-wrap{position:relative;margin-bottom:clamp(28px,5vw,56px);container-type:inline-size}.hero__wordmark{margin:0;font-family:var(--font-archivo),var(--font-instrument-sans),sans-serif;font-weight:900;font-size:min(17rem,100cqi/(var(--wordmark-chars,6) * .85));overflow-wrap:anywhere;line-height:.82;letter-spacing:-.035em;text-align:center;color:var(--hero-ink)}.hero__tags{position:absolute;inset:0;margin:0;padding:0;list-style:none}.hero__tag{position:absolute;left:var(--tag-x);top:var(--tag-y);transform:translate(-50%,-50%);max-width:42vw;padding:.5em 1em;border-radius:100px;font-size:clamp(.625rem,1.15vw,.9375rem);font-weight:500;line-height:1.2;color:#16181d;white-space:nowrap;box-shadow:0 1px 2px rgb(0 0 0/.06)}.hero__body{display:grid;gap:clamp(16px,2vw,24px);max-width:46rem}.hero__headline{margin:0;font-family:var(--font-archivo),var(--font-instrument-sans),sans-serif;font-weight:800;font-size:clamp(2rem,6vw,4.5rem);line-height:1.02;letter-spacing:-.03em;color:var(--hero-ink)}.hero__lede{margin:0;max-width:40rem;font-size:clamp(.9375rem,1.6vw,1.25rem);line-height:1.5;color:#3a3f47}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.hero__stats{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,40px);margin:clamp(8px,1.5vw,16px) 0 0;padding:clamp(20px,3vw,32px);border-radius:16px;background:rgb(0 0 0/.035);max-width:44rem}.hero__stat+.hero__stat{border-left:1px solid rgb(0 0 0/.12);padding-left:clamp(16px,3vw,40px)}.hero__stat-value{font-family:var(--font-archivo),var(--font-instrument-sans),sans-serif;font-weight:800;font-size:clamp(1.5rem,3.4vw,2.75rem);line-height:1.1;letter-spacing:-.02em;color:var(--hero-ink)}.hero__stat-label{margin:4px 0 0;font-size:clamp(.8125rem,1.3vw,1rem);line-height:1.35;color:#3a3f47}.hero__corner{right:-4%;bottom:-12%;width:clamp(180px,32vw,460px);aspect-ratio:1;background:var(--hero-accent,#f5b524);opacity:.9}.hero__corner,.hero__corner:after{position:absolute;clip-path:polygon(100% 0,100% 100%,0 100%)}.hero__corner:after{content:"";inset:34% 0 0 22%;background:#fbd167}@media (max-width:899px){.hero__tags{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}.hero__tag{position:static;transform:none;max-width:none}.hero__stats{grid-template-columns:1fr}.hero__stat+.hero__stat{border-left:0;border-top:1px solid rgb(0 0 0/.12);padding-left:0;padding-top:16px}}.section-resource-list__header{display:flex;justify-content:center;margin-bottom:28px}.section-resource-list__header h4,.section-resource-list__header p{margin:0;letter-spacing:var(--letter-spacing-sm);text-transform:uppercase}.section-resource-list__header--start{justify-content:flex-start}.resource-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media (max-width:749px){.resource-list{grid-template-columns:repeat(2,1fr)}}.product-card{position:relative;display:flex;flex-direction:column;height:100%;border-radius:var(--radius);overflow:clip;background:var(--color-surface);transition:transform .2s ease,box-shadow .2s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.product-card__media{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;background:#f4efe9}.product-card__link{display:block;width:100%;height:100%;position:relative}.product-card__link:after{content:"";position:absolute;inset:0;z-index:1}.product-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.product-card:hover .product-card__media img{transform:scale(1.03)}.product-card__quick-add{position:absolute;right:12px;bottom:12px;z-index:2;min-height:32px;padding:6px 16px;font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:9999px;background:var(--color-primary-button-background);color:var(--color-primary-button-text);border:1px solid var(--color-primary-button-border);box-shadow:0 2px 6px rgba(0,0,0,.12);cursor:pointer;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.product-card__quick-add:hover{background:var(--color-primary-button-hover-background);transform:scale(1.05);box-shadow:0 4px 10px rgba(0,0,0,.18)}.product-card__info{display:flex;flex-direction:column;justify-content:space-between;flex-grow:1;gap:8px;padding:14px 16px 18px}.product-card__title{font-size:.9375rem;font-weight:500;line-height:1.35;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card__price,.product-card__title{font-family:var(--font-body);color:var(--color-foreground)}.product-card__price{font-size:.875rem;font-weight:600;margin-top:auto;white-space:nowrap}@media (max-width:749px){.product-card__info{padding:10px 12px 14px;gap:6px}.product-card__title{font-size:.8125rem;line-height:1.3}.product-card__price{font-size:.8125rem}.product-card__quick-add{right:8px;bottom:8px;min-height:28px;padding:4px 12px;font-size:.6875rem}}.media-with-content{display:grid;grid-template-columns:1fr 1fr;align-items:center}.media-with-content--stack{grid-template-columns:1fr}.media-with-content__media img{width:100%;height:100%;object-fit:cover}.media-with-content__content{display:flex;flex-direction:column;gap:24px;padding:clamp(32px,6vw,64px) var(--gutter)}.media-with-content__content--center{align-items:center;text-align:center}@media (max-width:749px){.media-with-content{grid-template-columns:1fr}}.case-study{background:#fff;text-align:center}.case-study__logo{width:min(220px,60vw);height:auto;margin-inline:auto}.case-study h2{font-family:var(--font-body);font-size:var(--font-size-h3);letter-spacing:var(--letter-spacing-sm)}.case-study p{max-width:var(--content-narrow);margin-inline:auto}.newsletter{background:var(--color-surface)}.newsletter__inner{display:grid;grid-template-columns:1fr 1fr;align-items:center}.newsletter__media img{width:100%;height:100%;object-fit:cover}.newsletter__content{display:flex;flex-direction:column;gap:24px;padding:clamp(32px,6vw,64px) var(--gutter)}.newsletter__content h2{font-family:var(--font-body);font-size:var(--font-size-h3);margin:0}.email-signup{display:flex;width:100%;max-width:34rem;border:1px solid #000;border-radius:100px;background:#fff;overflow:hidden}.email-signup input{flex:1 1;min-width:0;padding:14px 20px;border:0;background:transparent;font:inherit;color:#000}.email-signup input:focus{outline:2px solid #000;outline-offset:-2px}.email-signup button{padding:0 22px;border:0;background:#000;color:#fff}.form-status{font-size:.8125rem;margin:0}.form-status--error{color:#a12121}@media (max-width:749px){.newsletter__inner{grid-template-columns:1fr}}.footer{background:var(--color-surface);padding-block:40px}.footer__inner{display:flex;flex-wrap:wrap;gap:24px 40px;justify-content:space-between;align-items:flex-start}.footer__menu{display:flex;flex-wrap:wrap;gap:20px}.footer__menu a:hover{text-decoration:underline;text-underline-offset:4px}.footer__legal{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;color:var(--color-muted);font-size:.8125rem}.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:start;padding-block:clamp(24px,4vw,48px)}.product__gallery{border-radius:var(--radius);overflow:clip;background:var(--color-surface)}.product__gallery img{width:100%;height:auto}.product__details{display:flex;flex-direction:column;gap:16px}.product__title{font-size:var(--font-size-h2);margin:0}.product__price{font-size:var(--font-size-h5)}.product__buy{display:flex;flex-direction:column;gap:12px;max-width:26rem}.quantity{display:inline-flex;align-items:center;border:1px solid var(--color-input-border);border-radius:100px;overflow:hidden;width:fit-content}.quantity button{width:44px;height:44px;border:0;background:transparent;font-size:1.125rem}.quantity button:hover{background:rgb(0 0 0/.05)}.quantity span{min-width:32px;text-align:center}.rte{max-width:var(--content-normal);font-size:1rem}.rte p{margin:0 0 1em;line-height:1.65}.rte strong{font-weight:700}.rte h3{font-size:1.35rem;margin:1.75em 0 .75em;letter-spacing:-.01em}.rte h3,.rte h4{font-weight:700;color:var(--color-foreground)}.rte h4{font-size:1.125rem;margin:1.5em 0 .5em}.rte ol,.rte ul{margin:0 0 1.25em 1.25em;padding:0}.rte ul{list-style:disc}.rte ol{list-style:decimal}.rte li{margin-bottom:.5em;line-height:1.6}.rte blockquote{margin:1.25em 0;padding:14px 18px;background:var(--color-surface);border-left:3px solid var(--color-border);border-radius:4px}.rte blockquote p:last-child{margin-bottom:0}.rte img{max-width:100%;height:auto;border-radius:8px;margin:1.25em 0;display:block;box-shadow:0 2px 10px rgba(0,0,0,.05)}.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-block:clamp(24px,4vw,48px)}.badge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:clamp(20px,4vw,42px) 12px;border-radius:var(--radius);background:var(--color-surface);text-align:center}.badge p{margin:0;white-space:pre-line}@media (max-width:749px){.product{grid-template-columns:1fr}.badges{grid-template-columns:repeat(2,1fr)}}.drawer-backdrop{position:fixed;inset:0;z-index:18;background:rgb(0 0 0/.35)}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:19;width:min(30rem,100vw);display:flex;flex-direction:column;background:#fff;box-shadow:0 4px 20px rgb(0 0 0/.15)}.drawer__header{display:flex;align-items:center;justify-content:space-between;padding:20px var(--gutter);border-bottom:1px solid var(--color-input-border)}.drawer__body{flex:1 1;overflow-y:auto;padding:20px var(--gutter)}.drawer__footer{padding:20px var(--gutter);border-top:1px solid var(--color-input-border)}.cart-line{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding-block:12px;border-bottom:1px solid var(--color-input-border)}.cart-line img{border-radius:8px}.cart-line__remove{border:0;background:transparent;text-decoration:underline;font-size:.8125rem;padding:0}.cart-total{display:flex;justify-content:space-between;margin-bottom:12px}.prose{max-width:48rem;margin-inline:auto;padding-block:clamp(32px,6vw,64px)}.prose h1{margin-bottom:24px}.prose h2{font-family:var(--font-body);font-size:var(--font-size-h5);text-transform:uppercase;letter-spacing:var(--letter-spacing-sm);margin-top:32px}.prose li,.prose p{line-height:1.6}.prose a{text-decoration:underline}.form-grid{display:grid;gap:16px;max-width:34rem}.field{display:grid;gap:6px}.field label{font-size:.8125rem;letter-spacing:var(--letter-spacing-sm);text-transform:uppercase}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1px solid var(--color-input-border);border-radius:8px;background:#fff;font:inherit}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #000;outline-offset:-1px}.inquiry-form{gap:28px;max-width:40rem;margin-top:32px}.inquiry-form .field>label,.inquiry-form legend{font-size:1rem;font-weight:600;letter-spacing:normal;text-transform:none;line-height:1.4}.inquiry-form__required{color:#a12121}.inquiry-form__help{margin:0;font-size:.875rem;color:var(--color-muted)}.inquiry-form__choices{border:0;margin:0;padding:0;min-width:0;gap:8px}.inquiry-form__choices legend{padding:0;margin-bottom:8px}.inquiry-form__choice{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--color-input-border);border-radius:8px;background:#fff;cursor:pointer}.inquiry-form__choice:has(input:checked){border-color:#000}.inquiry-form .inquiry-form__choice input{width:auto;margin:0;padding:0;accent-color:#000}.inquiry-form__done{margin-top:32px;font-size:1.125rem}.checkout-panel{display:grid;gap:12px;padding:16px;border:1px solid var(--color-input-border);border-radius:var(--radius);background:var(--color-surface)}.checkout-panel__lede{margin:0;font-size:var(--font-size-paragraph)}.checkout-panel__cancel{justify-self:center;border:0;background:none;padding:0;font-size:.8125rem;text-decoration:underline}.checkout{min-height:100vh;display:flex;flex-direction:column;background:#fff}.checkout__header{border-bottom:1px solid var(--color-input-border)}.checkout__header-inner{max-width:68rem;margin-inline:auto;padding:20px var(--gutter)}.checkout__brand{font-family:var(--font-heading);font-size:1.5rem}.checkout__main{flex:1 1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:68rem;width:100%;margin-inline:auto}.checkout__form{display:grid;gap:28px;align-content:start;padding:clamp(24px,4vw,48px) var(--gutter)}.checkout__heading{font-family:var(--font-body);font-size:1.125rem;font-weight:600;margin:0 0 12px}.checkout__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkout__check{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:.875rem}.checkout__note{margin:0;font-size:.8125rem;color:var(--color-muted)}.checkout__note a{text-decoration:underline}.checkout__pay{margin-top:4px}.field__hint{font-size:.75rem;color:var(--color-muted)}.field input[aria-invalid=true]{border-color:#a12121}.checkout__summary{background:#f5f5f5;border-left:1px solid var(--color-input-border)}.checkout__summary-inner{position:sticky;top:0;padding:clamp(24px,4vw,48px) var(--gutter);display:grid;gap:20px}.checkout__line{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center}.checkout__thumb{position:relative}.checkout__thumb img{border-radius:8px;border:1px solid var(--color-input-border);background:#fff}.checkout__qty{position:absolute;top:-8px;right:-8px;min-width:20px;height:20px;padding:0 6px;border-radius:100px;background:rgb(0 0 0/.6);color:#fff;font-size:11px;line-height:20px;text-align:center}.checkout__muted{color:var(--color-muted);font-size:.8125rem}.checkout__totals{display:grid;gap:8px;margin:0;padding-top:16px;border-top:1px solid #e3e3e3}.checkout__totals div{display:flex;justify-content:space-between;align-items:baseline}.checkout__totals dd{margin:0}.checkout__grand{font-size:1.25rem;font-weight:600;padding-top:8px}.checkout__footer{border-top:1px solid var(--color-input-border)}.checkout__footer-inner{max-width:68rem;margin-inline:auto;padding:20px var(--gutter);display:flex;gap:20px;flex-wrap:wrap;font-size:.8125rem}.checkout__footer-inner a{text-decoration:underline}.checkout__empty{padding:clamp(40px,8vw,96px) var(--gutter);grid-column:1/-1;text-align:center}@media (max-width:899px){.checkout__main{grid-template-columns:1fr}.checkout__summary{border-left:0;border-bottom:1px solid var(--color-input-border);order:-1}.checkout__summary-inner{position:static}.checkout__row{grid-template-columns:1fr}}.booking{display:grid;gap:16px}.booking__notice{margin:0;padding:12px 14px;border-radius:var(--radius);background:#eceaf8;font-size:.875rem}.booking__plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.booking__plan{display:grid;gap:4px;padding:16px;border:1px solid var(--color-input-border);border-radius:var(--radius);background:var(--color-surface);text-align:left}.booking__plan--on{border-color:#000;box-shadow:inset 0 0 0 1px #000}.booking__plan-label{font-size:.875rem}.booking__plan-price{font-size:1.375rem;font-weight:600}.booking__plan-meta{font-size:.75rem;color:var(--color-muted)}.booking__panel{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:20px;padding:16px;border:1px solid var(--color-input-border);border-radius:var(--radius)}.booking__month{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.booking__month-nav{display:flex;align-items:center;gap:6px}.booking__nav-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-input-border,#d1d5db);border-radius:8px;background:#ffffff;color:#374151;cursor:pointer;padding:0;transition:all .15s ease;box-shadow:0 1px 2px rgb(0 0 0/.04)}.booking__nav-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af;color:#111827;transform:translateY(-1px)}.booking__nav-btn:disabled{opacity:.25;cursor:not-allowed;background:transparent;border-color:transparent;box-shadow:none}.booking__grid,.booking__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.booking__weekdays span{text-align:center;font-size:.75rem;color:var(--color-muted);padding-bottom:4px}.booking__day{aspect-ratio:1;border:0;border-radius:100px;background:#eef1fb;font-size:.875rem}.booking__day:hover:not(:disabled){background:#dbe2f8}.booking__day--on{background:#1f2fbf;color:#fff}.booking__day--off{background:transparent;color:rgb(0 0 0/.25);cursor:not-allowed}.booking__day--outside{background:transparent;color:#9ca3af;opacity:.55;cursor:pointer;font-weight:400}.booking__day--outside:hover{background:#f1f5f9;color:#111827;opacity:.9}.booking__zone{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;font-size:.75rem;color:var(--color-muted)}.booking__zone button{border:0;background:none;padding:0;text-decoration:underline;font-size:inherit}.booking__month-title-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.booking__pill-jump{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:100px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease}.booking__pill-jump:hover{background:#dbeafe;border-color:#93c5fd;color:#1e40af;transform:translateY(-1px)}.booking__nav-btn--pulse{border-color:#3b82f6;color:#1d4ed8;background:#eff6ff;box-shadow:0 0 0 3px rgb(59 130 246/.2)}.booking__no-openings{padding:16px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;text-align:center;margin-top:4px}.booking__no-openings-badge{display:inline-block;padding:2px 8px;background:#e2e8f0;color:#475569;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.booking__no-openings-title{font-size:.875rem;font-weight:600;color:#0f172a;margin:0 0 4px}.booking__no-openings-desc{font-size:.8125rem;color:#64748b;line-height:1.4;margin:0 0 12px}.booking__jump-btn{font-size:.8125rem;padding:8px 12px;background:#000;color:#fff;border-radius:6px;border:0;cursor:pointer}.booking__jump-btn:hover{background:#1e293b}.booking__outside-label{display:flex;flex-direction:column;align-items:center;line-height:1.05;font-size:.75rem}.booking__outside-label small{font-size:.5625rem;text-transform:uppercase;color:#9ca3af;font-weight:600}.booking__times{display:grid;gap:8px;align-content:start}.booking__times h3{font-family:var(--font-body);font-size:.875rem;margin:0 0 4px}.booking__slot{padding:10px;border:1px solid var(--color-input-border);border-radius:8px;background:#fff;font-size:.875rem}.booking__slot:hover{border-color:#000}.booking__slot--on{background:#000;color:#fff;border-color:#000}.booking__empty{margin:0;font-size:.8125rem;color:var(--color-muted)}@media (max-width:749px){.booking__panel{grid-template-columns:1fr}}.product__rating-summary{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;color:var(--color-foreground);text-decoration:none;width:fit-content}.product__rating-summary:hover{text-decoration:underline}.product__stars,.review-card__stars{color:#f59e0b;letter-spacing:2px;font-size:.95rem}.product__rating-count{color:var(--color-muted)}.reviews-section{padding-block:clamp(32px,5vw,64px);border-top:1px solid var(--color-border)}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:24px}.review-card{flex-direction:column;padding:24px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);gap:16px}.review-card,.review-card__header{display:flex;justify-content:space-between}.review-card__header{align-items:center}.review-card__date{font-size:.75rem;color:var(--color-muted)}.review-card__text{margin:0;font-size:.9375rem;line-height:1.6;color:var(--color-foreground);flex-grow:1}.review-card__author{display:flex;align-items:center;gap:10px;font-size:.8125rem;padding-top:12px;border-top:1px solid rgb(0 0 0/.06)}.review-card__name{font-weight:600;color:var(--color-foreground)}.review-card__badge{display:inline-flex;align-items:center;gap:4px;color:#10b981;font-size:.75rem;font-weight:500}