:root{--tpa-ivory:#F2EBDF;--tpa-ivory2:#EEE5D6;--tpa-sand:#E6DAC7;--tpa-ink:#2B2622;--tpa-walnut:#4A4038;--tpa-taupe:#948A7B;--tpa-bronze:#96794A;--tpa-terracotta:#A9542F;--tpa-amber:#E7A94B;--tpa-cream:#F2EBDF;--tpa-rust:#A9542F;--tpa-gold:#96794A;--tpa-white:#F2EBDF}
html{scroll-behavior:smooth}body{margin:0}body:has(.tpa-site),body:has(.tsc-page),body.tpa-booking-page{background:var(--tpa-ivory);color:var(--tpa-ink);font-family:'Space Grotesk',sans-serif;line-height:1.6}
body:has(.tpa-site) .wp-site-blocks,body:has(.tsc-page) .wp-site-blocks,body.tpa-booking-page .wp-site-blocks{padding:0}
body:has(.tpa-site) .wp-site-blocks>header,body:has(.tsc-page) .wp-site-blocks>header,body.tpa-booking-page .wp-site-blocks>header,body:has(.tpa-site) .wp-site-blocks>footer,body:has(.tsc-page) .wp-site-blocks>footer,body.tpa-booking-page .wp-site-blocks>footer,body:has(.tpa-site) .wp-block-post-title,body:has(.tsc-page) .wp-block-post-title,body.tpa-booking-page .wp-block-post-title{display:none}
body:has(.tpa-site) .wp-site-blocks main,body:has(.tsc-page) .wp-site-blocks main,body.tpa-booking-page .wp-site-blocks main,body:has(.tpa-site) .wp-block-post-content,body:has(.tsc-page) .wp-block-post-content,body.tpa-booking-page .wp-block-post-content{max-width:none;margin:0;padding:0;width:100%}
body:has(.tpa-site) main>.wp-block-group.alignfull,body:has(.tsc-page) main>.wp-block-group.alignfull,body.tpa-booking-page main>.wp-block-group.alignfull{box-sizing:border-box;width:100%;max-width:100%;margin-inline:0;margin-block:0;padding:0}
.tpa-site,.tsc-page,.tpa-calendar,.tpa-header,.tpa-legal-footer{box-sizing:border-box}.tpa-site *,.tsc-page *,.tpa-calendar *,.tpa-header *{box-sizing:border-box}
.tpa-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px clamp(22px,4vw,64px);background:var(--tpa-ink);color:var(--tpa-ivory);font-family:'Space Grotesk',sans-serif;position:relative;z-index:20}.tpa-header a{color:inherit;text-decoration:none}.tpa-brandlink{display:flex;gap:10px;align-items:center;min-height:44px;flex-shrink:0}.tpa-brandlink span{font:500 clamp(18px,1.8vw,23px)/1.2 'Fraunces',serif;white-space:nowrap}.tpa-brand-mark{width:36px;height:42px;object-fit:contain}.tpa-header-links{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,2vw,28px);font-size:12px;font-weight:600}.tpa-nav-secondary{text-transform:uppercase;letter-spacing:.04em;display:inline-flex;align-items:center;min-height:44px}.tpa-language{display:flex;align-items:center;gap:2px}.tpa-language a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:44px}.tpa-language a[aria-current]{text-decoration:underline;text-underline-offset:5px}.tpa-language>span{opacity:.65}
.tpa-primary,.tpa-header a.tpa-primary,.tpa-site .tpa-button,.tsc-page .tsc-btn-primary,.tpa-calendar .tpa-continue{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 28px;border:1px solid var(--tpa-terracotta);border-radius:999px;background:var(--tpa-terracotta);color:#fff;font:600 14px/1.4 'Space Grotesk',sans-serif;letter-spacing:.03em;text-decoration:none;cursor:pointer;box-shadow:none;text-align:center}.tpa-header .tpa-primary{min-height:44px;padding:10px 18px;font-size:12px}.tpa-primary:hover,.tpa-site .tpa-button:hover,.tsc-page .tsc-btn-primary:hover,.tpa-calendar .tpa-continue:hover:not(:disabled){background:#8f4327;color:#fff}
.tpa-site :focus-visible,.tsc-page :focus-visible,.tpa-calendar :focus-visible,.tpa-header :focus-visible,.tpa-legal-footer :focus-visible{outline:3px solid var(--tpa-amber);outline-offset:4px}.tpa-site p,.tsc-page p{line-height:1.65}.tpa-legal-footer{padding:28px 22px;background:var(--tpa-ink);color:var(--tpa-ivory);text-align:center;font:400 13px/1.6 'Space Grotesk',sans-serif}.tpa-legal-footer nav{display:flex;justify-content:center;gap:12px 24px;flex-wrap:wrap}.tpa-legal-footer a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-underline-offset:4px}.tpa-legal-footer p{margin:0 0 6px}
@media(max-width:780px){.tpa-header{flex-wrap:wrap;gap:8px 16px;padding:12px 22px}.tpa-header-links{gap:8px 14px;flex-wrap:wrap;justify-content:flex-start}.tpa-header:has(.tpa-nav-secondary) .tpa-header-links{flex-basis:100%}.tpa-header:has(.tpa-nav-secondary) .tpa-header-cta{display:none}.tpa-nav-secondary{font-size:10px;min-height:36px}.tpa-brandlink span{font-size:18px}.tpa-brand-mark{width:30px;height:36px}.tpa-header:not(:has(.tpa-nav-secondary)) .tpa-header-links{margin-left:auto}.tpa-header:not(:has(.tpa-nav-secondary)):has(.tpa-header-cta) .tpa-brandlink{flex-basis:100%}.tpa-header:not(:has(.tpa-nav-secondary)):has(.tpa-header-cta) .tpa-header-links{margin-left:0;width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tpa-site *, .tsc-page *, .tpa-calendar *{animation:none!important;transition:none!important}.tpa-site video,.tsc-page video{display:none}}
.tpa-calendar{--cream:#F2EBDF;--orange:#A9542F;--green:#E6DAC7;--dark:#2B2622;--deep:#2B2622;--mid:#4A4038;--panel:#2B2622;--field:#4A4038;--line:#948A7B;box-sizing:border-box;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.28fr);width:100%;max-width:100%;min-height:100vh;margin:0!important;background:linear-gradient(118deg,var(--mid) 0%,#473728 35%,var(--dark) 58%,var(--panel) 100%);color:var(--cream);font-family:'Space Grotesk',sans-serif}
.tpa-calendar *{box-sizing:border-box}.tpa-brand-panel{position:relative;display:flex;flex-direction:column;height:auto;min-height:100vh;padding:30px 34px 48px;background:linear-gradient(145deg,rgba(123,91,66,.65),rgba(33,21,13,.96))}.admin-bar .tpa-brand-panel{min-height:calc(100vh - 32px)}.tpa-wordmark,.tpa-mantra,.tpa-booking-panel h1,.tpa-price{font-family:'Fraunces',serif}.tpa-wordmark{margin:0;color:#fff;font-size:1.65rem;font-style:italic}.tpa-brand-message{max-width:430px;margin-top:100px;margin-bottom:48px}.tpa-eyebrow{margin:0 0 26px;color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.18em;line-height:1.7;text-transform:uppercase}.tpa-mantra{margin:0;font-size:clamp(2.5rem,4.2vw,4.4rem);line-height:1.1;letter-spacing:-.035em}.tpa-mantra em{color:var(--orange);font-weight:400}
.tpa-booking-panel{max-width:800px;width:100%;margin:0 auto;padding:48px clamp(22px,4vw,64px) 54px}.tpa-booking-panel h1{margin:0 0 12px;font-size:clamp(2.25rem,4vw,3.5rem);font-weight:400;line-height:1}.tpa-description{max-width:650px;margin:0;color:#fff2dc;font-size:1.05rem;font-weight:600;line-height:1.55}.tpa-price{display:flex;align-items:baseline;gap:9px;margin:26px 0 22px;color:var(--cream);font-size:2.5rem}.tpa-price span{font-size:1em}.tpa-price small{color:var(--cream);font-family:'Space Grotesk',sans-serif;font-size:.9rem;font-weight:600}
.tpa-picker{padding:15px 17px 17px;border:1px solid var(--line);border-radius:14px;background:rgba(67,59,49,.72)}.tpa-month-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center}.tpa-month-label{margin:0;text-align:center;color:var(--cream);font-family:'Space Grotesk',sans-serif;font-size:1.1rem;font-weight:400}.tpa-nav{height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--cream);font-size:1.5rem;cursor:pointer}.tpa-nav:hover:not(:disabled){background:var(--orange);border-color:var(--orange)}.tpa-nav:disabled{opacity:.25;cursor:default}.tpa-weekdays,.tpa-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.tpa-weekdays{margin:15px 0 7px}.tpa-weekdays span{text-align:center;color:#d9cbb9;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.tpa-day{min-width:0;min-height:40px;aspect-ratio:1;border:1px solid transparent;border-radius:50%;background:rgba(255,255,255,.07);color:var(--cream);font:inherit;cursor:pointer}.tpa-day:hover:not(:disabled){border-color:var(--orange)}.tpa-day.is-selected{background:var(--orange);color:#fff}.tpa-day:disabled{background:transparent;color:#776e63;cursor:default}.tpa-loading{grid-column:1/-1;padding:42px 0;text-align:center;color:#d9cbb9}
.tpa-times-wrap{margin:22px 0 18px}.tpa-times-wrap h2,.tpa-label{color:#fff;font-size:.92rem;font-weight:700}.tpa-times-wrap h2{margin:0 0 4px}.tpa-status{margin:0 0 10px;color:#d9cbb9;font-size:.82rem}.tpa-times{display:flex;gap:7px;flex-wrap:wrap}.tpa-time{min-height:44px;min-width:68px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--field);color:var(--cream);font:inherit;cursor:pointer}.tpa-time:hover,.tpa-time.is-selected{background:var(--orange);border-color:var(--orange);color:#fff}.tpa-availability{min-height:1.2em;margin:10px 0 0;color:var(--green);font-size:.9rem;font-weight:700}.tpa-label{display:block;margin:18px 0 7px}.tpa-select{width:100%;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--field);color:#fff;font:inherit;font-weight:600}
.tpa-summary{display:grid;grid-template-columns:1fr auto;gap:7px 12px;margin-top:28px;padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.tpa-summary span{color:#d9cbb9;font-size:.75rem}.tpa-summary-value{grid-column:1;color:#fff;line-height:1.45}.tpa-total{grid-column:2;grid-row:1/3;align-self:center;color:var(--cream);font-family:'Fraunces',serif;font-size:1.7rem;font-weight:400}.tpa-continue{width:100%;margin-top:26px;padding:18px 24px;border:0;border-radius:999px;background:var(--orange);color:#fff;font:inherit;font-size:.9rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.tpa-continue:hover:not(:disabled){filter:brightness(1.08)}.tpa-continue:disabled{opacity:.42;cursor:default}.tpa-message{min-height:1.2em;margin:12px 0 0;text-align:center;color:#ffb3a9;font-size:.82rem}.tpa-methods{margin:12px 0 0;text-align:center;color:#dfc8b4;font-size:.72rem;line-height:1.5}
@media(max-width:900px){.tpa-calendar{grid-template-columns:1fr}.tpa-brand-panel,.admin-bar .tpa-brand-panel{position:relative;top:auto;height:auto;min-height:220px;padding:22px 24px 38px}.tpa-brand-message{margin-top:32px;margin-bottom:0}.tpa-mantra{font-size:2.75rem}.tpa-booking-panel{padding:42px 22px 52px}.tpa-booking-panel h1{font-size:2.5rem}}
@media(max-width:520px){.tpa-brand-message{margin-top:40px}.tpa-mantra{font-size:2.75rem}.tpa-booking-panel{padding:32px 22px 40px}.tpa-picker{padding:12px 9px}.tpa-weekdays,.tpa-days{gap:2px}.tpa-day{font-size:.82rem}.tpa-time{min-width:62px;min-height:44px;padding:8px 10px}.tpa-price{font-size:2.45rem}}

.tpa-calendar{font-size:16px;line-height:1.6}.tpa-booking-panel,.tpa-brand-panel,.tpa-summary-value{min-width:0}.tpa-booking-details{margin:12px 0 0;font-size:14px;color:#E6DAC7}.tpa-calendar .tpa-wordmark{display:none}.tpa-calendar .tpa-mantra em{color:#E6DAC7}.tpa-calendar .tpa-day.is-selected,.tpa-calendar .tpa-time.is-selected{outline:2px solid #F2EBDF;outline-offset:1px}.tpa-calendar .tpa-nav:disabled{opacity:.5}.tpa-calendar .tpa-day:disabled{color:#b9afa0}.tpa-summary-value{overflow-wrap:anywhere}.tpa-retry{min-height:44px;padding:8px 16px;background:#F2EBDF;color:#2B2622;border-radius:8px;border:0;font:inherit;cursor:pointer}.tpa-calendar .tpa-continue{width:100%;margin-top:26px}.tpa-calendar .tpa-continue:disabled{opacity:.55;cursor:default}
