:root{--palette-primary:#353836;--palette-accent:#be9b42;--palette-ink:#262927;--palette-surface:#f7f3ec;--palette-muted:#55644f;--palette-line:#545653;--ground-dark-background:#353836;--ground-dark-text:#f7f3ec;--ground-dark-muted:#c8c6c0;--ground-dark-line:#545653;--ground-dark-link:#d9bf7f;--ground-light-background:#f7f3ec;--ground-light-text:#262927;--ground-light-muted:#55644f;--ground-light-line:#dedbd4;--ground-light-link:#262927;--signal-success:#6e8a67;--type-hero-heading-size:118.5px;--type-hero-heading-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-hero-heading-weight:300;--type-statement-size:119px;--type-statement-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-statement-weight:300;--type-visit-heading-size:108.5px;--type-visit-heading-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-visit-heading-weight:300;--type-section-heading-size:87.5px;--type-section-heading-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-section-heading-weight:300;--type-panel-title-size:45.5px;--type-panel-title-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-panel-title-weight:300;--type-lead-line-size:35.5px;--type-lead-line-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-lead-line-weight:400;--type-card-title-size:34px;--type-card-title-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-card-title-weight:400;--type-lead-size:24.5px;--type-lead-family:"Albert Sans", "Helvetica Neue", Arial, sans-serif;--type-lead-weight:300;--type-price-size:21px;--type-price-family:"Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--type-price-weight:400;--type-hero-subline-size:21px;--type-hero-subline-family:"Albert Sans", "Helvetica Neue", Arial, sans-serif;--type-hero-subline-weight:400;--type-body-size:17px;--type-body-family:"Albert Sans", "Helvetica Neue", Arial, sans-serif;--type-body-weight:400;--type-navigation-size:14px;--type-navigation-family:"Albert Sans", "Helvetica Neue", Arial, sans-serif;--type-navigation-weight:400;--type-button-size:12px;--type-button-family:"Albert Sans", "Helvetica Neue", Arial, sans-serif;--type-button-weight:500;--type-kicker-size:11.5px;--type-kicker-family:"Albert Sans", "Helvetica Neue", Arial, sans-serif;--type-kicker-weight:500;--button-primary-radius:40px;--button-primary-height:44px;--button-primary-weight:500;--button-primary-case:uppercase;--button-primary-style:fill;--button-secondary-radius:40px;--button-secondary-height:44px;--button-secondary-weight:500;--button-secondary-case:uppercase;--button-secondary-style:outline;--button-quiet-radius:0px;--button-quiet-height:29px;--button-quiet-weight:500;--button-quiet-case:uppercase;--button-quiet-style:text;--field-radius:40px;--field-border:1px;--card-radius:16px;--card-border:0px;--card-shadow:none;--rhythm-1:10px;--rhythm-2:16px;--rhythm-3:22.5px;--rhythm-4:38.5px;--rhythm-5:63.5px;--rhythm-6:101px;--rhythm-7:187px;--motion-reveal:on;--motion-reveal-distance:30px;--motion-reveal-duration:1.1s;--motion-hover:.28s;--motion-focus-ring:2px}@media (prefers-reduced-motion:reduce){:root{--motion-reveal-distance:0px;--motion-reveal-duration:0s;--motion-hover:0s}}:root{--ivory:#f7f3ec;--paper:#efe8dc;--charcoal:#353836;--ink:#262927;--sage:#94a490;--sage-deep:#55644f;--gold:#be9b42;--gold-light:#d9bf7f;--gold-deep:#8a6b21;--serif:var(--font-cormorant), "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--sans:var(--font-albert-sans), "Albert Sans", "Helvetica Neue", Arial, sans-serif;--gutter:clamp(20px, 4.4vw, 72px);--max:1440px;--ease-expo:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.65, 0, .25, 1);--reveal-distance:30px;--reveal-duration:1.1s;--reveal-ease:cubic-bezier(.16, 1, .3, 1);--reveal-stagger:90ms;--hover-duration:.28s;--hover-zoom:1.05;--button-radius:999px;--button-bg:var(--charcoal);--button-fg:var(--ivory);--button-pad-y:1.1em;--button-pad-x:1.75em;--button-hover-shadow:0 12px 30px #26292729;--button-arrow-nudge:4px;--divider-space:0;--parallax-shift:5%;--parallax-scale:1.12}*,:before,:after{box-sizing:border-box}html{background:var(--ivory);color:var(--ink);-webkit-text-size-adjust:100%}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:clamp(1rem,.95rem + .2vw,1.0625rem);font-weight:400;line-height:1.65;overflow-x:clip}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,p,figure,dl,dd{margin:0}::selection{background:var(--gold-light);color:var(--ink)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--ink);color:var(--ivory);border-radius:999px;padding:.8em 1.2em;text-decoration:none;transition:top .3s;position:fixed;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.wrap{width:100%;max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.icon{stroke-width:1.6px;flex:none;width:1.1em;height:1.1em}em{font-style:italic}.kicker{font:500 .72rem/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--sage-deep);align-items:center;gap:.9em;display:inline-flex}.kicker .num{font-feature-settings:"tnum";letter-spacing:.12em}.kicker:before{content:"";opacity:.55;background:currentColor;width:2.4rem;height:1px}.kicker.plain:before{display:none}.h2{font-family:var(--serif);letter-spacing:-.015em;font-size:clamp(2.7rem,1.5rem + 4.4vw,5.9rem);font-weight:300;line-height:.96}.h2 em{font-weight:300}.button[data-variant=filled]{background-color:var(--button-bg);color:var(--button-fg)}.button{isolation:isolate;font:500 .76rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;position:relative;overflow:hidden}.button:before{content:"";z-index:-1;border-radius:inherit;background:var(--sweep,var(--gold));transition:transform .55s var(--ease-expo);position:absolute;inset:0;transform:translateY(102%)}.button:hover:before,.button:focus-visible:before{transform:none}.button:hover,.button:focus-visible{color:var(--sweep-fg,var(--ink))}.button .icon{width:1.25em;height:1.25em}.button--light{--button-bg:var(--ivory);--button-fg:var(--ink);--sweep:var(--gold-light)}.button--gold{--button-bg:var(--gold);--button-fg:var(--ink);--sweep:var(--ivory)}.button--line{color:var(--ivory);--sweep:var(--ivory);border-color:#f7f3ec73!important}.button--line-dark{--sweep:var(--ink);--sweep-fg:var(--ivory);border-color:#26292759!important}.link{font:500 .76rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;transition:background-size .6s var(--ease-expo), color .3s;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;align-items:center;gap:.55em;padding:.55em 0;text-decoration:none;display:inline-flex}.link:hover,.link:focus-visible{background-position:100% 100%;background-size:0 1px}.link .icon{width:1.3em;height:1.3em}.site-header{z-index:50;pointer-events:none;transition:transform .7s var(--ease-expo);position:fixed;inset:14px 0 auto}.site-header.is-hidden{transform:translateY(calc(-100% - 24px))}.header-bar{pointer-events:auto;-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);background:#f7f3ecb3;border:1px solid #ffffff8c;border-radius:999px;justify-content:space-between;align-items:center;gap:1.5rem;width:calc(100% - 2*clamp(10px,2.2vw,36px));max-width:1380px;margin-inline:auto;padding:7px 7px 7px clamp(14px,1.6vw,24px);transition:background .4s,box-shadow .4s;display:flex;box-shadow:0 10px 34px #26292712}.site-header.is-scrolled .header-bar{background:#f7f3ecdb;box-shadow:0 10px 34px #2629271a}.brand{border-radius:6px;flex:none;display:block}.brand img{width:auto;height:50px}.header-bar>nav ul{gap:clamp(1.2rem,2.4vw,2.6rem);margin:0;padding:0;list-style:none;display:flex}.header-bar>nav a{font:400 .86rem/1 var(--sans);letter-spacing:.06em;color:var(--ink);padding:.7em 0;text-decoration:none;display:block;position:relative}.header-bar>nav a:after{content:"";background:var(--gold);transform-origin:100%;height:1px;transition:transform .5s var(--ease-expo);position:absolute;bottom:.3em;left:0;right:0;transform:scaleX(0)}.header-bar>nav a:hover:after,.header-bar>nav a:focus-visible:after,.header-bar>nav a.is-current:after{transform-origin:0;transform:scaleX(1)}.header-actions{align-items:center;gap:.35rem;display:flex}.header-phone{letter-spacing:.03em;color:var(--ink);border-radius:999px;align-items:center;gap:.55em;padding:.8em 1.05em;font-size:.86rem;text-decoration:none;transition:background .3s;display:inline-flex}.header-phone:hover{background:#35383612}.header-phone .icon{color:var(--gold-deep)}.header-actions .button{--button-pad-y:1.05em;--button-pad-x:1.45em}.menu-toggle{cursor:pointer;background:var(--ink);width:48px;height:48px;color:var(--ivory);border:0;border-radius:50%;place-items:center;padding:0;display:none}.menu-toggle span{width:18px;height:1px;transition:transform .45s var(--ease-expo), background .2s;background:currentColor;display:block;position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";width:18px;height:1px;transition:transform .45s var(--ease-expo);background:currentColor;position:absolute;left:0}.menu-toggle span:before{transform:translateY(-5px)}.menu-toggle span:after{transform:translateY(5px)}.menu-toggle[aria-expanded=true] span{background:0 0}.menu-toggle[aria-expanded=true] span:before{transform:rotate(45deg)}.menu-toggle[aria-expanded=true] span:after{transform:rotate(-45deg)}.menu{z-index:45;background:var(--ivory);padding:7.5rem var(--gutter) 2.2rem;opacity:0;visibility:hidden;flex-direction:column;justify-content:space-between;transition:opacity .45s,visibility 0s .45s;display:flex;position:fixed;inset:0}.menu.is-open{opacity:1;visibility:visible;transition:opacity .45s}.menu ol{counter-reset:m;margin:0;padding:0;list-style:none}.menu li{border-bottom:1px solid #2629271f;overflow:hidden}.menu li a{font-family:var(--serif);transition:transform .8s var(--ease-expo);align-items:baseline;gap:1rem;padding:.9rem 0;font-size:clamp(2.2rem,9vw,3.2rem);font-weight:300;line-height:1.05;text-decoration:none;display:flex;transform:translateY(105%)}.menu li a:before{counter-increment:m;content:"0" counter(m);font:500 .7rem/1 var(--sans);letter-spacing:.2em;color:var(--sage-deep);transform:translateY(-1.4em)}.menu.is-open li a{transform:none}.menu.is-open li:nth-child(2) a{transition-delay:60ms}.menu.is-open li:nth-child(3) a{transition-delay:.12s}.menu.is-open li:nth-child(4) a{transition-delay:.18s}.menu-foot{gap:1.2rem;display:grid}.menu-foot p{color:var(--charcoal);font-size:.95rem}.menu-foot .button{justify-self:start}.chip{letter-spacing:.02em;color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f3ecbd;border:1px solid #fff9;border-radius:999px;align-items:center;gap:.65em;padding:.7em 1.1em .7em .95em;font-size:.84rem;text-decoration:none;transition:background .3s;display:inline-flex}a.chip:hover{background:var(--ivory)}.dot{background:var(--gold);border-radius:50%;flex:none;width:8px;height:8px;position:relative}.dot.is-open{background:#6e8a67}.dot.is-open:after{content:"";border:1px solid #6e8a67;border-radius:50%;animation:2.4s ease-out infinite pulse;position:absolute;inset:-4px}@keyframes pulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.8)}}@media (prefers-reduced-motion:no-preference){.header-bar{animation:fadeDown 1.1s var(--ease-expo) .7s backwards}}@keyframes fadeDown{0%{opacity:0;translate:0 -14px}to{opacity:1;translate:0}}.lead{color:var(--charcoal);font-size:clamp(1.18rem,.98rem + .62vw,1.56rem);font-weight:300;line-height:1.55}.site-footer{color:#f7f3ecbd;background:#2b2e2c;padding-block:clamp(4.5rem,8vw,6.5rem) 2rem;font-size:.95rem}.footer-grid{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:2.5rem clamp(2rem,4vw,4rem);display:grid}.footer-brand img{width:170px;height:auto}.footer-brand p{max-width:30ch;margin-top:1.4rem}.site-footer h2{font:500 .68rem/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--gold-light);margin-bottom:1.3rem}.site-footer ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--ivory);align-items:center;gap:.5em;text-decoration:none;transition:color .3s;display:inline-flex}.site-footer a:hover,.site-footer a:focus-visible{color:var(--gold-light)}.site-footer address{margin-bottom:.7rem;font-style:normal;line-height:1.7}.footer-base{border-top:1px solid #f7f3ec1f;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:clamp(3.5rem,6vw,5rem);padding-top:1.6rem;font-size:.82rem;display:flex}.footer-mark{align-items:center;gap:.8rem;display:inline-flex}.footer-mark svg{width:12px;height:18px;color:var(--gold)}.to-top .icon{transition:transform .4s var(--ease-expo)}.to-top:hover .icon{transform:translateY(-3px)}@media (max-width:1080px){.header-bar>nav,.header-phone{display:none}.menu-toggle{display:grid}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-brand{grid-column:1/-1}}@media (max-width:860px){.brand img{height:40px}.header-actions .button{--button-pad-x:1.2em}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.header-actions .button .label-long{display:none}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.button-secondary{color:var(--ink);font:500 .76rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #26292759;border-radius:999px;align-items:center;gap:.5em;padding:1.1em 1.75em;text-decoration:none;transition:background-color .35s,color .35s;display:inline-flex}.button-secondary:hover,.button-secondary:focus-visible{background:var(--ink);color:var(--ivory)}.card{background:var(--paper);color:var(--charcoal);border-radius:16px;padding:clamp(1.6rem,2.6vw,2.4rem)}main p a:not([class]){color:var(--ink);text-underline-offset:.2em;text-decoration-thickness:1px;transition:color .3s}main p a:not([class]):hover{color:var(--gold-deep)}[data-block=prose] h2,[data-block=list] h2,[data-block=faq]>h2,[data-block=table] h2{font-family:var(--serif);margin-bottom:1rem;font-size:clamp(2.1rem,1.3rem + 1.7vw,3.3rem);font-weight:300;line-height:1}[data-block=prose] p{max-width:60ch;color:var(--charcoal)}[data-block=faq]{border-top:1px solid #26292738}[data-block=faq] details{border-bottom:1px solid #26292724}[data-block=faq] summary{cursor:pointer;font-family:var(--serif);color:var(--ink);justify-content:space-between;align-items:center;gap:1.5rem;padding:1.35rem 0;font-size:clamp(1.4rem,1.15rem + .6vw,1.8rem);line-height:1.2;list-style:none;display:flex}[data-block=faq] summary::-webkit-details-marker{display:none}[data-block=faq] summary:after{content:"";width:34px;height:34px;transition:rotate .5s var(--ease-expo), background-color .35s;background:linear-gradient(currentColor,currentColor) 50%/12px 1px no-repeat,linear-gradient(currentColor,currentColor) 50%/1px 12px no-repeat;border:1px solid #26292759;border-radius:50%;flex:none}[data-block=faq] details[open] summary:after{rotate:45deg}@media (hover:hover){[data-block=faq] summary:hover:after{background-color:#35383612}}[data-block=faq] details p{max-width:60ch;color:var(--charcoal);padding:0 3.2rem 1.5rem 0}[data-block=table] table,[data-block=schedule] table{border-collapse:collapse;width:100%}[data-block=table] caption{text-align:left;font:500 .72rem/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--sage-deep);padding-bottom:1rem}[data-block=table] th,[data-block=table] td{text-align:left;border-bottom:1px solid #26292724;padding:.85rem 0;font-weight:400}[data-block=table] td{text-align:right;font-family:var(--serif);font-variant-numeric:lining-nums;font-size:1.22rem}[data-block=table] thead th{font:500 .7rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--sage-deep)}.enquiry-form form p{margin:0 0 1.1rem}.enquiry-form label{font:500 .72rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--charcoal);gap:.5rem;display:grid}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{background:var(--ivory);width:100%;min-height:48px;color:var(--ink);font:400 1rem/1.4 var(--sans);letter-spacing:0;text-transform:none;border:1px solid #2629274d;border-radius:40px;padding:.8rem 1.2rem;transition:border-color .3s,box-shadow .3s}.enquiry-form textarea{resize:vertical;border-radius:22px;min-height:9rem}.enquiry-form input:hover,.enquiry-form textarea:hover{border-color:#2629278c}.enquiry-form input:focus-visible,.enquiry-form textarea:focus-visible,.enquiry-form select:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-color:var(--ink)}.enquiry-form [aria-invalid=true]{border-color:#9b3b2f}.enquiry-form .field-error{font:400 .85rem/1.4 var(--sans);letter-spacing:0;text-transform:none;color:#8f3328}.enquiry-form button[type=submit]{isolation:isolate;background:var(--charcoal);min-height:48px;color:var(--ivory);font:500 .76rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:.5em;padding:1.1em 1.9em;transition:color .3s;display:inline-flex;position:relative;overflow:hidden}.enquiry-form button[type=submit]:before{content:"";z-index:-1;border-radius:inherit;background:var(--gold);transition:transform .55s var(--ease-expo);position:absolute;inset:0;transform:translateY(102%)}.enquiry-form button[type=submit]:hover:before,.enquiry-form button[type=submit]:focus-visible:before{transform:none}.enquiry-form button[type=submit]:hover,.enquiry-form button[type=submit]:focus-visible{color:var(--ink)}.enquiry-form button[type=submit]:disabled{opacity:.6;cursor:default}.enquiry-form [role=status],.enquiry-form [role=alert]{color:var(--ink);font-size:1rem}.enquiry-form [role=status]{font-family:var(--serif);font-size:clamp(1.45rem,1.15rem + .7vw,1.95rem);line-height:1.25}.style-guide-page{gap:2.4rem;padding-top:clamp(8.5rem,12vw,11rem);padding-bottom:6rem;display:grid}
