:root{--sage:#718675;--deep:#244b3c;--mid:#879b8b;--eucalyptus:#aab8ad;--white:#fff;--pale:#f4f1e9;--ink:#29302d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sage);color:#fff;font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{height:104px;padding:0 5vw;display:flex;align-items:center;gap:3rem;background:var(--deep);border-bottom:1px solid #ffffff24;position:relative;z-index:2}.wordmark{display:flex;flex-direction:column;line-height:.72}.wordmark span{font-size:2.55rem;font-weight:500;letter-spacing:-.06em}.wordmark small{font-size:.75rem;font-weight:600;letter-spacing:.4em;margin:.55rem 0 0 .18rem}.site-header nav{display:flex;gap:2.3rem;margin-left:auto;font-size:.82rem}.header-cta{font-size:.8rem;border-bottom:1px solid #ffffffc4;padding-bottom:.25rem}.hero{display:grid;grid-template-columns:52% 48%;min-height:740px}.hero-copy{padding:9.5rem 7vw 4rem 8vw;display:flex;flex-direction:column}.eyebrow{margin:0 0 2rem;text-transform:uppercase;letter-spacing:.23em;font-size:.67rem;font-weight:600}h1,h2{font:500 clamp(3.5rem,6vw,6.6rem)/.87 "Cormorant Garamond",serif;letter-spacing:-.045em;margin:0}em{font-weight:400}.intro{max-width:590px;line-height:1.75;color:#ffffffdb;margin:2rem 0}.actions{display:flex;align-items:center;gap:2rem;margin:1.2rem 0}.button{display:inline-flex;justify-content:space-between;min-width:215px;padding:1.05rem 1.3rem;background:#fff;color:var(--deep);font-size:.78rem}.quiet-link{border-bottom:1px solid #ffffffa8;padding:.2rem 0;font-size:.78rem}.meta{border-top:1px solid #ffffff38;margin-top:auto;padding-top:1.3rem;display:flex;gap:2.5rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.09em}.hero-photo{position:relative;min-height:740px;overflow:hidden}.hero-photo img,.gallery img,.location>img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;right:1.8rem;bottom:1.8rem;width:130px;height:130px;border-radius:50%;background:#244b3cea;display:flex;align-items:center;justify-content:center;text-align:center;font:500 .82rem/1.35 "Cormorant Garamond",serif}.section{padding:8rem 8vw}.two-col,.section-heading{display:grid;grid-template-columns:1fr .8fr;gap:10vw;align-items:start}.two-col h2,.section-heading h2,.booking-copy h2{font-size:clamp(3.5rem,5.3vw,5.8rem)}.two-col>div p,.section-heading>p,.booking-copy>p{line-height:1.8;color:#ffffffdc}.two-col .lead{font:500 1.45rem/1.45 "Cormorant Garamond",serif;color:#fff}.qualities{display:grid;grid-template-columns:repeat(6,1fr);background:var(--mid);border-block:1px solid #ffffff2d}.qualities div{min-height:120px;padding:2.5rem 1.3rem;border-right:1px solid #ffffff2d;font:500 1.1rem "Cormorant Garamond",serif;display:flex;align-items:flex-end}.space{background:var(--sage)}.section-heading{align-items:end;margin-bottom:4rem}.gallery{display:grid;grid-template-columns:2fr 1fr;gap:1.4rem}.gallery figure{margin:0}.main-photo{position:relative;height:680px}.main-photo figcaption{position:absolute;left:0;bottom:0;background:var(--pale);color:var(--ink);padding:1rem 1.4rem;font-size:.74rem}.side{display:grid;grid-template-rows:1fr auto;gap:1.4rem}.side>img{min-height:380px}.included{background:var(--deep);padding:2rem}.included .eyebrow{margin-bottom:1rem}.included p:not(.eyebrow){border-top:1px solid #ffffff27;padding:.75rem 0;margin:0;font:500 1rem "Cormorant Garamond",serif}.appointment{background:var(--sage);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.booking-copy .note{border-top:1px solid #ffffff2f;padding-top:1.3rem;font-size:.8rem}.booking-card{background:var(--pale);color:var(--ink);padding:1rem 2.2rem}.step{display:grid;grid-template-columns:45px 1fr;gap:1rem;padding:2rem 0;border-bottom:1px solid #d4d0c6}.step:last-child{border:0}.step>span{font-size:.6rem;color:var(--sage)}.step label,.label{display:block;font:500 1.35rem "Cormorant Garamond",serif;margin:0 0 1rem}.step input{width:100%;padding:1rem;border:1px solid #bdc5bd;background:#fff;font:inherit}.times{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.times button{padding:.9rem .5rem;border:1px solid #b8c1b9;background:transparent;color:var(--ink);font:inherit}.times button:not(:disabled){cursor:pointer}.times button.selected{background:var(--sage);border-color:var(--sage);color:#fff}.muted{opacity:.45}.request{width:100%;border:0;background:var(--sage);color:#fff;padding:1rem;margin-top:.6rem}.founder{background:var(--mid)}.location{display:grid;grid-template-columns:55% 45%;min-height:650px}.location>div{padding:7rem 7vw;display:flex;flex-direction:column;justify-content:center}.location h2,.final h2{font-size:clamp(3.5rem,5.4vw,5.8rem)}.location p:not(.eyebrow){line-height:1.8;color:#ffffffdc}.final{text-align:center;background:var(--deep);padding:8rem 7vw}.final p:not(.eyebrow){color:#ffffffd7;margin:2rem auto;max-width:560px}.final .button{margin:auto}footer{background:#202522;padding:4rem 5vw;display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:end}footer p,footer a,footer>small{font-size:.7rem;color:#ffffffae}
@media(max-width:900px){.site-header{height:88px;padding:0 6vw}.site-header nav{display:none}.header-cta{margin-left:auto}.wordmark span{font-size:2.1rem}.hero{grid-template-columns:1fr}.hero-copy{padding:6rem 7vw 4rem;min-height:610px}.hero-photo{min-height:600px}.section{padding:6rem 7vw}.two-col,.section-heading,.appointment{grid-template-columns:1fr;gap:3rem}.qualities{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:1fr}.main-photo{height:570px}.side{grid-template-rows:420px auto}.location{grid-template-columns:1fr}.location>img{height:520px}.location>div{padding:6rem 7vw}footer{grid-template-columns:1fr 1fr}.wordmark{grid-column:1/-1}}
@media(max-width:520px){.site-header{padding:0 5vw}.wordmark span{font-size:1.8rem}.wordmark small{font-size:.56rem}.header-cta{font-size:.66rem}.hero-copy{padding:5rem 6vw 3rem}.hero h1{font-size:clamp(3.7rem,16vw,5.3rem)}.actions{flex-direction:column;align-items:flex-start}.meta{flex-wrap:wrap;gap:1rem 1.5rem}.hero-photo{min-height:520px}.section{padding:5rem 6vw}.qualities div{min-height:105px}.main-photo{height:480px}.side{grid-template-rows:380px auto}.booking-card{padding:.4rem 1.2rem}.step{grid-template-columns:32px 1fr}.times{grid-template-columns:repeat(2,1fr)}.location>img{height:420px}footer{grid-template-columns:1fr;padding:3rem 6vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.premium-splash{height:100svh;min-height:680px;position:relative;overflow:hidden;background:linear-gradient(155deg,#16372d 0%,#244b3c 44%,#607b69 100%);display:grid;place-items:center;isolation:isolate}.premium-splash:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 55%,rgba(7,27,20,.35))}.ambient{position:absolute;border-radius:50%;opacity:.42;will-change:transform}.ambient-one{width:min(68vw,920px);height:min(68vw,920px);left:-24vw;top:-30vw;background:radial-gradient(circle at 65% 65%,rgba(203,222,207,.38),rgba(203,222,207,0) 68%);animation:ambientDrift 15s ease-in-out infinite alternate}.ambient-two{width:min(60vw,820px);height:min(60vw,820px);right:-25vw;bottom:-31vw;background:radial-gradient(circle at 35% 35%,rgba(177,203,184,.3),rgba(177,203,184,0) 69%);animation:ambientDrift 19s ease-in-out -5s infinite alternate-reverse}.wind-field{position:absolute;width:70vw;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform-origin:center}.wind-field-one{top:31%;left:-22%;transform:rotate(-8deg);animation:windLine 10s ease-in-out infinite}.wind-field-two{bottom:30%;right:-18%;transform:rotate(7deg);animation:windLine 13s ease-in-out -4s infinite reverse}.splash-lockup{text-align:center;display:flex;flex-direction:column;align-items:center;animation:splashReveal 1.8s cubic-bezier(.22,1,.36,1) both}.splash-mark{width:clamp(78px,8vw,128px);color:#fffffff0;margin-bottom:clamp(1.6rem,3vw,3rem);filter:drop-shadow(0 18px 40px rgba(5,30,21,.2));animation:windSway 7s ease-in-out 1.4s infinite;transform-origin:50% 88%}.splash-wordmark{display:flex;flex-direction:column;line-height:.68;color:#fff;text-shadow:0 20px 60px rgba(5,30,21,.24)}.splash-wordmark span{font-size:clamp(6rem,17vw,16rem);font-weight:400;letter-spacing:-.075em}.splash-wordmark small{font-size:clamp(1rem,2.7vw,2.55rem);font-weight:500;letter-spacing:.62em;margin:.8em 0 0 .58em}.splash-lockup>p{font-size:.64rem;text-transform:uppercase;letter-spacing:.34em;margin-top:3.5rem;color:#ffffffad}.scroll-cue{position:absolute;bottom:2.3rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.8rem;font-size:.62rem;text-transform:uppercase;letter-spacing:.2em;color:#ffffffb3}.scroll-cue i{display:block;width:1px;height:42px;background:linear-gradient(#fff,transparent);animation:scrollPulse 2s ease-in-out infinite}.site-header{position:sticky;top:0;background:#1c4134d1;backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%)}.hero{min-height:780px;background:var(--sage)}.hero-copy{padding-top:11rem}.hero h1{font-size:clamp(4rem,6.5vw,7rem)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#244b3c22,transparent 35%)}.button,.times button,.request{border-radius:999px}.booking-card{border-radius:28px;box-shadow:0 36px 90px #071d1533}
@keyframes splashReveal{0%{opacity:0;transform:translateY(24px) scale(.985);filter:blur(12px)}100%{opacity:1;transform:none;filter:blur(0)}}@keyframes windSway{0%,100%{transform:rotate(-1.2deg) translateX(-2px)}28%{transform:rotate(2deg) translateX(5px) scaleY(.99)}55%{transform:rotate(-.4deg) translateX(1px) scaleY(1.01)}78%{transform:rotate(1.3deg) translateX(3px)}}@keyframes ambientDrift{0%{transform:translate3d(-2%,1%,0) scale(.98)}100%{transform:translate3d(5%,-4%,0) scale(1.06)}}@keyframes windLine{0%,100%{opacity:.08;translate:-8% 0;scale:.82 1}50%{opacity:.5;translate:22% 0;scale:1.16 1}}@keyframes scrollPulse{0%,100%{opacity:.25;transform:scaleY(.55);transform-origin:top}50%{opacity:1;transform:scaleY(1);transform-origin:top}}
@media(max-width:900px){.premium-splash{min-height:620px}.splash-wordmark small{letter-spacing:.5em}.hero-copy{padding-top:7rem}}@media(max-width:520px){.premium-splash{min-height:600px}.splash-wordmark span{font-size:clamp(5.4rem,28vw,8.5rem)}.splash-wordmark small{font-size:.78rem;letter-spacing:.48em;margin-left:.48em}.splash-mark{width:72px}.splash-lockup>p{margin-top:2.6rem}.scroll-cue{bottom:1.4rem}.hero{min-height:auto}.hero-copy{padding-top:6.5rem}}@media(prefers-reduced-motion:reduce){.ambient,.wind-field,.splash-lockup,.splash-mark,.scroll-cue i{animation:none!important}}

/* Clearer conversion journey */
.splash-lockup{width:min(92vw,1100px);position:relative;z-index:2;justify-content:center;transform:translateY(-1vh)}.splash-lockup>p{margin-bottom:0}.splash-purpose{margin-top:1.35rem;color:rgba(255,255,255,.86);font:500 clamp(1rem,1.45vw,1.3rem)/1.5 "Cormorant Garamond",serif}.splash-cta{margin-top:1.65rem;display:inline-flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 1.35rem;border-radius:999px;background:#fff;color:#244b3c;font-size:.78rem;min-width:220px;box-shadow:0 18px 45px rgba(7,29,21,.18)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-grid label{display:flex;flex-direction:column;gap:.45rem}.contact-grid label>span{font-size:.68rem;font-weight:600;color:#576159}.contact-grid input,.contact-grid textarea{width:100%;border:1px solid #c4c9c1;border-radius:14px;background:#fff;color:#29302d;padding:.9rem 1rem;font:inherit}.contact-grid textarea{resize:vertical;min-height:112px;line-height:1.5}.contact-grid .requirements{grid-column:1/-1}.connection-note{display:block;margin-top:.9rem;color:#657068;font-size:.68rem}.connection-note a{text-decoration:underline}
.booking-status{min-height:1.2rem;margin:.8rem 0 0;color:#52645a;font-size:.74rem;line-height:1.5}.booking-status.error{color:#8a4038}.booking-status.success{color:#2c6749}.request:not(:disabled){cursor:pointer}.request:disabled{opacity:.58;cursor:not-allowed}.website-check{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:520px){.splash-purpose{max-width:310px;font-size:.95rem;margin-top:1rem}.splash-cta{margin-top:1.25rem}.scroll-cue{display:none}.contact-grid{grid-template-columns:1fr}.contact-grid .requirements{grid-column:auto}}

/* Five-petal Calm Collective brand mark */
.brand-logo{display:flex;flex-direction:column;align-items:stretch;width:max-content;color:inherit;line-height:1}.brand-main{position:relative;display:block;line-height:.7}.brand-main>span{display:block;font-weight:400;letter-spacing:-.075em}.brand-logo>small{display:block;text-align:center;font-weight:400;letter-spacing:.28em;margin-top:.28em;padding-left:.28em}.brand-lotus{position:absolute;width:34%;height:auto;right:2%;top:-40%;overflow:visible;color:currentColor}.brand-lotus path{fill:none;stroke:currentColor;stroke-width:1.6;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center}.wordmark>.brand-logo .brand-main>span,.wordmark>.brand-logo>.brand-main>span{font-size:2.55rem}.wordmark .brand-logo>small{font-size:.67rem;letter-spacing:.26em;margin-top:.42rem;padding-left:.26em}.wordmark .brand-lotus{top:-52%}
.splash-brand{color:#fff;filter:drop-shadow(0 22px 55px rgba(5,30,21,.2))}.splash-brand .brand-main>span{font-size:clamp(6rem,17vw,16rem)}.splash-brand>small{font-size:clamp(1rem,2.7vw,2.55rem);letter-spacing:.25em;margin-top:.58em;padding-left:.25em}.splash-brand .brand-lotus{top:-36%;width:33%;right:1%;overflow:visible}.splash-brand .logo-petal{animation:petalSwoop 11s cubic-bezier(.42,.03,.18,1) 1.6s infinite;will-change:transform,opacity}.splash-brand .petal-centre{--x1:-55px;--y1:-82px;--x2:-175px;--y2:5px;--x3:-85px;--y3:115px;--x4:145px;--y4:48px;--x5:72px;--y5:-62px;--spin:380deg}.splash-brand .petal-left-mid{--x1:-88px;--y1:-40px;--x2:-145px;--y2:72px;--x3:8px;--y3:126px;--x4:165px;--y4:-18px;--x5:45px;--y5:-78px;--spin:430deg}.splash-brand .petal-right-mid{--x1:52px;--y1:-72px;--x2:-112px;--y2:-50px;--x3:-142px;--y3:78px;--x4:78px;--y4:118px;--x5:128px;--y5:-32px;--spin:470deg}.splash-brand .petal-left-outer{--x1:-118px;--y1:-5px;--x2:-92px;--y2:106px;--x3:78px;--y3:112px;--x4:178px;--y4:-42px;--x5:18px;--y5:-94px;--spin:520deg}.splash-brand .petal-right-outer{--x1:92px;--y1:-30px;--x2:34px;--y2:-112px;--x3:-166px;--y3:-12px;--x4:-48px;--y4:124px;--x5:142px;--y5:38px;--spin:560deg}.splash-brand .logo-base{animation:logoBaseBreathe 11s ease-in-out 1.6s infinite}
@keyframes petalSwoop{0%,16%,88%,100%{transform:translate3d(0,0,0) rotate(0);opacity:1}27%{transform:translate3d(var(--x1),var(--y1),0) rotate(calc(var(--spin) * .16));opacity:.96}40%{transform:translate3d(var(--x2),var(--y2),0) rotate(calc(var(--spin) * .36));opacity:.8}53%{transform:translate3d(var(--x3),var(--y3),0) rotate(calc(var(--spin) * .58));opacity:.72}66%{transform:translate3d(var(--x4),var(--y4),0) rotate(calc(var(--spin) * .78));opacity:.86}78%{transform:translate3d(var(--x5),var(--y5),0) rotate(var(--spin));opacity:.96}86%{transform:translate3d(0,0,0) rotate(calc(var(--spin) + 20deg));opacity:1}}@keyframes logoBaseBreathe{0%,16%,88%,100%{transform:scaleX(1)}53%{transform:scaleX(.94)}}
@media(max-width:900px){.wordmark .brand-main>span{font-size:2.1rem}.wordmark .brand-logo>small{font-size:.56rem}.splash-brand .brand-main>span{font-size:clamp(6rem,20vw,11rem)}}@media(max-width:520px){.wordmark .brand-main>span{font-size:1.8rem}.wordmark .brand-logo>small{font-size:.48rem;margin-top:.35rem}.splash-brand .brand-main>span{font-size:clamp(5.4rem,28vw,8.5rem)}.splash-brand>small{font-size:.88rem}.splash-brand .brand-lotus{top:-34%}}@media(prefers-reduced-motion:reduce){.splash-brand .logo-petal,.splash-brand .logo-base{animation:none!important}}

/* Continuous motion: no holds between the sweep and return */
.splash-brand .logo-petal{animation-duration:10s;animation-timing-function:linear;animation-delay:1.2s}.splash-brand .logo-base{animation-duration:10s;animation-timing-function:linear;animation-delay:1.2s}
@keyframes petalSwoop{0%{transform:translate3d(0,0,0) rotate(0);opacity:1}15%{transform:translate3d(var(--x1),var(--y1),0) rotate(calc(var(--spin) * .16));opacity:.96}32%{transform:translate3d(var(--x2),var(--y2),0) rotate(calc(var(--spin) * .36));opacity:.84}49%{transform:translate3d(var(--x3),var(--y3),0) rotate(calc(var(--spin) * .58));opacity:.76}66%{transform:translate3d(var(--x4),var(--y4),0) rotate(calc(var(--spin) * .78));opacity:.86}83%{transform:translate3d(var(--x5),var(--y5),0) rotate(var(--spin));opacity:.96}100%{transform:translate3d(0,0,0) rotate(calc(var(--spin) + 360deg));opacity:1}}@keyframes logoBaseBreathe{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.94)}}

/* A single calm introductory breeze */
.splash-brand .logo-petal,.splash-brand .logo-base{animation-iteration-count:1;animation-fill-mode:forwards}.wind-field{width:76vw;height:18vh;background:none;border-top:1px solid rgba(255,255,255,.2);border-radius:50%;opacity:0;filter:blur(.2px);animation:windWhisper 10s cubic-bezier(.18,.55,.25,1) 1 forwards}.wind-field-one{--wind-r:-7deg;top:25%;left:-18%;animation-delay:.5s}.wind-field-two{--wind-r:6deg;bottom:22%;right:-15%;animation-delay:1.35s}.wind-field-three{--wind-r:-2deg;top:49%;left:-27%;animation-delay:2.2s;width:64vw;opacity:0}.splash-brand .logo-petal{animation-name:petalSwoopOnce}
@keyframes petalSwoopOnce{0%{transform:translate3d(0,0,0) rotate(0);opacity:1}15%{transform:translate3d(var(--x1),var(--y1),0) rotate(calc(var(--spin) * .16));opacity:.96}32%{transform:translate3d(var(--x2),var(--y2),0) rotate(calc(var(--spin) * .36));opacity:.84}49%{transform:translate3d(var(--x3),var(--y3),0) rotate(calc(var(--spin) * .58));opacity:.76}66%{transform:translate3d(var(--x4),var(--y4),0) rotate(calc(var(--spin) * .78));opacity:.86}83%{transform:translate3d(var(--x5),var(--y5),0) rotate(var(--spin));opacity:.96}100%{transform:translate3d(0,0,0) rotate(720deg);opacity:1}}@keyframes windWhisper{0%{transform:translate3d(-18vw,0,0) rotate(var(--wind-r)) scaleX(.45);opacity:0}18%{opacity:.18}48%{opacity:.42}78%{opacity:.15}100%{transform:translate3d(58vw,-2vh,0) rotate(var(--wind-r)) scaleX(1.12);opacity:0}}@media(prefers-reduced-motion:reduce){.wind-field{animation:none!important;display:none}}


/* Calm Collective sage-led palette and concise introductory motion */
body,.space,.hero{background:var(--sage)}.qualities,.founder{background:var(--mid)}.appointment{background:var(--sage)}.site-header,.included,.final{background:var(--deep)}.booking-card{background:var(--pale)}
.splash-brand .logo-petal,.splash-brand .logo-base{animation-duration:3.4s;animation-delay:.35s;animation-timing-function:linear;animation-iteration-count:1;animation-fill-mode:forwards}.wind-field{animation-duration:3.5s;animation-timing-function:cubic-bezier(.22,.65,.3,1);animation-iteration-count:1}.wind-field-one{animation-delay:.15s}.wind-field-two{animation-delay:.38s}.wind-field-three{animation-delay:.6s}


/* Smooth, single-pass leaf breeze inspired by natural wind */
.splash-brand .logo-petal{
  animation-name:calmPetalDrift;
  animation-duration:5s;
  animation-timing-function:linear;
  animation-iteration-count:1;
  animation-fill-mode:both;
  opacity:1;
  will-change:transform;
}
.splash-brand .petal-centre{animation-delay:.22s}
.splash-brand .petal-left-mid{animation-delay:.3s}
.splash-brand .petal-right-mid{animation-delay:.38s}
.splash-brand .petal-left-outer{animation-delay:.46s}
.splash-brand .petal-right-outer{animation-delay:.54s}
.splash-brand .logo-base{
  animation:calmBaseSettle 5s ease-in-out .22s 1 both;
}
.wind-field{
  animation-name:calmWindTrace;
  animation-duration:5.2s;
  animation-timing-function:cubic-bezier(.3,0,.25,1);
  animation-iteration-count:1;
  animation-fill-mode:both;
}
.wind-field-one{animation-delay:.08s}
.wind-field-two{animation-delay:.32s}
.wind-field-three{animation-delay:.58s}

@keyframes calmPetalDrift{
  0%{transform:translate3d(0,0,0) rotate(0deg)}
  9%{transform:translate3d(-18px,-9px,0) rotate(24deg)}
  18%{transform:translate3d(-45px,-21px,0) rotate(52deg)}
  27%{transform:translate3d(-77px,-24px,0) rotate(82deg)}
  36%{transform:translate3d(-105px,-10px,0) rotate(116deg)}
  45%{transform:translate3d(-121px,18px,0) rotate(151deg)}
  54%{transform:translate3d(-106px,49px,0) rotate(188deg)}
  63%{transform:translate3d(-61px,72px,0) rotate(226deg)}
  72%{transform:translate3d(2px,76px,0) rotate(263deg)}
  81%{transform:translate3d(61px,55px,0) rotate(299deg)}
  89%{transform:translate3d(91px,20px,0) rotate(329deg)}
  95%{transform:translate3d(53px,-7px,0) rotate(350deg)}
  100%{transform:translate3d(0,0,0) rotate(360deg)}
}
@keyframes calmBaseSettle{
  0%,100%{transform:scaleX(1)}
  50%{transform:scaleX(.985)}
}
@keyframes calmWindTrace{
  0%{transform:translate3d(-14vw,0,0) rotate(var(--wind-r)) scaleX(.62);opacity:0}
  18%{opacity:.1}
  48%{opacity:.25}
  78%{opacity:.08}
  100%{transform:translate3d(43vw,-1vh,0) rotate(var(--wind-r)) scaleX(1.06);opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .splash-brand .logo-petal,.splash-brand .logo-base,.wind-field{animation:none!important}
}


/* Visible wind curls and a single-file leaf procession */
.wind-swirl{
  position:absolute;
  inset:8% -2% 5% -8%;
  z-index:1;
  pointer-events:none;
  opacity:0;
  animation:windSwirlArrival 5.8s cubic-bezier(.22,.55,.24,1) .05s 1 both;
  will-change:transform,opacity;
}
.wind-swirl svg{width:100%;height:100%;overflow:visible}
.wind-swirl path{
  fill:none;
  stroke:rgba(255,255,255,.3);
  stroke-width:2.2;
  stroke-linecap:round;
  vector-effect:non-scaling-stroke;
  stroke-dasharray:1;
  stroke-dashoffset:1;
  animation:drawWindSwirl 5.35s cubic-bezier(.2,.52,.25,1) .05s 1 both;
}
.wind-swirl path:nth-child(2){stroke:rgba(255,255,255,.21);animation-delay:.18s}
.wind-swirl path:nth-child(3){stroke:rgba(255,255,255,.14);animation-delay:.32s}

.splash-brand .logo-petal{animation-duration:5.35s}
.splash-brand .petal-centre{animation-delay:.32s}
.splash-brand .petal-left-mid{animation-delay:.5s}
.splash-brand .petal-right-mid{animation-delay:.68s}
.splash-brand .petal-left-outer{animation-delay:.86s}
.splash-brand .petal-right-outer{animation-delay:1.04s}

@keyframes windSwirlArrival{
  0%{transform:translate3d(-13vw,2vh,0) scaleX(.92);opacity:0}
  16%{opacity:.48}
  54%{transform:translate3d(1vw,0,0) scaleX(1);opacity:1}
  84%{opacity:.42}
  100%{transform:translate3d(8vw,-1vh,0) scaleX(1.03);opacity:0}
}
@keyframes drawWindSwirl{
  0%{stroke-dashoffset:1}
  58%,82%{stroke-dashoffset:0}
  100%{stroke-dashoffset:-1}
}
@media(max-width:700px){
  .wind-swirl{inset:13% -28% 10% -42%}
  .wind-swirl path{stroke-width:1.7}
}
@media(prefers-reduced-motion:reduce){.wind-swirl{display:none!important}}


/* Ordered left-to-right leaf orbit with a soft return */
.splash-brand .logo-petal{
  animation-name:orderedLeafOrbit;
  animation-duration:5.8s;
  animation-timing-function:linear;
  animation-iteration-count:1;
  animation-fill-mode:both;
}
.splash-brand .petal-left-outer{animation-delay:.3s}
.splash-brand .petal-left-mid{animation-delay:.58s}
.splash-brand .petal-centre{animation-delay:.86s}
.splash-brand .petal-right-mid{animation-delay:1.14s}
.splash-brand .petal-right-outer{animation-delay:1.42s}

.wind-swirl{
  inset:5% -4% 4% -9%;
  animation-duration:6.6s;
  animation-timing-function:cubic-bezier(.2,.55,.22,1);
}
.wind-swirl path{animation-duration:6.1s}
.wind-swirl path:nth-child(2){animation-delay:.2s}
.wind-swirl path:nth-child(3){animation-delay:.38s}

@keyframes orderedLeafOrbit{
  0%{transform:translate3d(0,0,0) rotate(0deg)}
  7%{transform:translate3d(-3vw,-1.5vh,0) rotate(24deg)}
  16%{transform:translate3d(-13vw,-5vh,0) rotate(62deg)}
  26%{transform:translate3d(-25vw,-4vh,0) rotate(108deg)}
  36%{transform:translate3d(-32vw,5vh,0) rotate(151deg)}
  47%{transform:translate3d(-31vw,17vh,0) rotate(197deg)}
  58%{transform:translate3d(-20vw,26vh,0) rotate(241deg)}
  69%{transform:translate3d(-3vw,28vh,0) rotate(282deg)}
  79%{transform:translate3d(12vw,21vh,0) rotate(316deg)}
  87%{transform:translate3d(15vw,11vh,0) rotate(338deg)}
  93%{transform:translate3d(8vw,3.5vh,0) rotate(350deg)}
  97%{transform:translate3d(2.5vw,.8vh,0) rotate(357deg)}
  100%{transform:translate3d(0,0,0) rotate(360deg)}
}
@media(max-width:700px){
  .wind-swirl{inset:8% -45% 5% -46%}
  @keyframes orderedLeafOrbit{
    0%{transform:translate3d(0,0,0) rotate(0deg)}
    8%{transform:translate3d(-4vw,-1vh,0) rotate(28deg)}
    20%{transform:translate3d(-20vw,-4vh,0) rotate(76deg)}
    34%{transform:translate3d(-35vw,4vh,0) rotate(138deg)}
    48%{transform:translate3d(-33vw,16vh,0) rotate(198deg)}
    62%{transform:translate3d(-15vw,23vh,0) rotate(252deg)}
    76%{transform:translate3d(10vw,20vh,0) rotate(306deg)}
    88%{transform:translate3d(17vw,9vh,0) rotate(342deg)}
    95%{transform:translate3d(7vw,2.5vh,0) rotate(354deg)}
    100%{transform:translate3d(0,0,0) rotate(360deg)}
  }
}


/* Tight orbit: behind, beneath, in front and over the Calm word */
.wind-swirl{
  inset:10% 5% 12% 5%;
  transform-origin:50% 48%;
}
.splash-brand .logo-petal{
  animation-name:tightLogoOrbit;
  animation-duration:5.7s;
}
@keyframes tightLogoOrbit{
  0%{transform:translate3d(0,0,0) rotate(0deg) scale(1)}
  8%{transform:translate3d(3vw,2vh,0) rotate(25deg) scale(.98)}
  18%{transform:translate3d(6vw,9vh,0) rotate(63deg) scale(.94)}
  30%{transform:translate3d(2vw,19vh,0) rotate(111deg) scale(.96)}
  43%{transform:translate3d(-10vw,24vh,0) rotate(164deg) scale(1)}
  56%{transform:translate3d(-22vw,19vh,0) rotate(216deg) scale(1.04)}
  68%{transform:translate3d(-25vw,8vh,0) rotate(263deg) scale(1.03)}
  79%{transform:translate3d(-19vw,-5vh,0) rotate(304deg) scale(1)}
  88%{transform:translate3d(-9vw,-8vh,0) rotate(334deg) scale(.98)}
  94%{transform:translate3d(-3vw,-4vh,0) rotate(350deg) scale(.99)}
  98%{transform:translate3d(-.7vw,-.8vh,0) rotate(358deg) scale(1)}
  100%{transform:translate3d(0,0,0) rotate(360deg) scale(1)}
}
@media(max-width:700px){
  .wind-swirl{inset:14% -18% 16% -18%}
  @keyframes tightLogoOrbit{
    0%{transform:translate3d(0,0,0) rotate(0deg) scale(1)}
    9%{transform:translate3d(4vw,2vh,0) rotate(30deg) scale(.98)}
    21%{transform:translate3d(7vw,10vh,0) rotate(76deg) scale(.95)}
    35%{transform:translate3d(1vw,18vh,0) rotate(130deg) scale(.98)}
    49%{transform:translate3d(-15vw,21vh,0) rotate(186deg) scale(1.03)}
    63%{transform:translate3d(-27vw,13vh,0) rotate(242deg) scale(1.04)}
    76%{transform:translate3d(-25vw,1vh,0) rotate(294deg) scale(1.01)}
    87%{transform:translate3d(-13vw,-6vh,0) rotate(334deg) scale(.99)}
    95%{transform:translate3d(-4vw,-3vh,0) rotate(352deg) scale(1)}
    100%{transform:translate3d(0,0,0) rotate(360deg) scale(1)}
  }
}


/* One open, recognisable wind swoosh */
.wind-field{display:none!important}
.wind-swirl{
  inset:8% 1% 10% 1%;
  opacity:0;
  animation:singleSwooshArrival 6.15s cubic-bezier(.22,.55,.24,1) .08s 1 both;
}
.wind-swirl path{
  stroke:rgba(255,255,255,.38);
  stroke-width:2.35;
  stroke-linecap:round;
  stroke-linejoin:round;
  animation:singleSwooshDraw 5.8s cubic-bezier(.2,.5,.22,1) .08s 1 both;
}
@keyframes singleSwooshArrival{
  0%{transform:translate3d(-9vw,1vh,0);opacity:0}
  16%{opacity:.35}
  48%{transform:translate3d(0,0,0);opacity:1}
  82%{opacity:.5}
  100%{transform:translate3d(4vw,-1vh,0);opacity:0}
}
@keyframes singleSwooshDraw{
  0%{stroke-dashoffset:1}
  64%,82%{stroke-dashoffset:0}
  100%{stroke-dashoffset:-1}
}
@media(max-width:700px){
  .wind-swirl{inset:12% -20% 14% -20%}
  .wind-swirl path{stroke-width:1.9}
}


/* Simple practitioner callback enquiry */
.enquiry-card .step{padding:2.25rem 0}
.contact-grid select{
  width:100%;
  padding:1rem;
  border:1px solid #bdc5bd;
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  font:inherit;
}
.contact-grid label>span em{font-size:.9em;color:#7b847d}
.enquiry-card #request-step p:not(.label):not(.booking-status){color:#657068;line-height:1.6;font-size:.78rem}
.enquiry-card .request{font-weight:600;cursor:pointer}
.enquiry-card .request:disabled{cursor:not-allowed}


/* Practitioner-focused conversion sections */
.practitioner-fit{background:var(--deep)}
.practice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#ffffff2b;border:1px solid #ffffff2b}
.practice-grid div{background:var(--deep);min-height:105px;padding:1.35rem;display:flex;align-items:flex-end;font:500 1.13rem/1.2 "Cormorant Garamond",serif}
.fit-note{display:grid;grid-template-columns:.45fr 1fr;gap:4rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid #ffffff32}
.fit-note strong{font:500 1.55rem "Cormorant Garamond",serif}.fit-note p{margin:0;color:#ffffffcf;line-height:1.75}

.benefits-section{display:grid;grid-template-columns:repeat(3,1fr);background:var(--pale);color:var(--ink);padding:1px;gap:1px}
.benefits-section article{background:var(--pale);min-height:255px;padding:3rem;border:1px solid #d7d4cb}
.benefits-section span,.room-card-copy>span,.process-grid article>span{font-size:.62rem;letter-spacing:.14em;color:var(--sage)}
.benefits-section h3,.room-card h3,.process-grid h3{font:500 1.7rem/1.1 "Cormorant Garamond",serif;margin:2.6rem 0 1rem}
.benefits-section p,.room-card p,.process-grid p{line-height:1.7;color:#667069;margin:0}

.rooms-section{background:var(--sage)}
.room-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem}
.room-card{background:var(--pale);color:var(--ink);border-radius:24px;overflow:hidden}
.room-photo-placeholder{height:330px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#526f61,#95a698);position:relative;overflow:hidden}
.room-photo-placeholder:before,.room-photo-placeholder:after{content:"";position:absolute;border:1px solid #ffffff35;border-radius:50%;width:60%;aspect-ratio:1}
.room-photo-placeholder:before{left:-22%;top:-40%}.room-photo-placeholder:after{right:-25%;bottom:-55%}
.room-photo-placeholder span{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#ffffffc9;position:relative;z-index:1}
.room-card-copy{padding:2rem 2.2rem 2.4rem}.room-card h3{font-size:2rem;margin:1rem 0 .7rem}
.room-disclaimer{font-size:.68rem;color:#ffffffb8;line-height:1.6;margin:1.4rem 0 0}

.process-section{background:var(--mid)}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff28}
.process-grid article{background:var(--mid);padding:3rem;min-height:270px}
.process-grid article>span{color:#fff}.process-grid h3{color:#fff;margin-top:3.5rem}
.process-grid p{color:#ffffffd3}

.independent-section{background:var(--deep)}
.faq-section{background:var(--pale);color:var(--ink)}
.faq-section .section-heading>p{color:#626b65}
.faq-list{border-top:1px solid #cbc9c1}
.faq-list details{border-bottom:1px solid #cbc9c1;padding:0 0}
.faq-list summary{list-style:none;cursor:pointer;padding:1.5rem 3rem 1.5rem 0;font:500 1.35rem/1.25 "Cormorant Garamond",serif;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:.2rem;top:1.35rem;color:var(--sage);font:400 1.5rem "DM Sans",sans-serif}
.faq-list details[open] summary:after{content:"−"}
.faq-list details p{max-width:800px;margin:0;padding:0 2rem 1.6rem 0;color:#626b65;line-height:1.75;font-size:.88rem}

.contact-grid [hidden]{display:none!important}
.contact-grid .other-therapy input{border-color:var(--sage)}
.privacy-prompt{font-size:.68rem!important;color:#69736c!important;margin:1rem 0}
.privacy-prompt a{text-decoration:underline}
.location-note{font-size:.72rem}
.mobile-enquire{display:none}
.footer-links{display:flex;flex-wrap:wrap;gap:.8rem 1.3rem}
footer{grid-template-columns:1.1fr 1fr 1.5fr auto}

@media(max-width:1000px){
  .practice-grid{grid-template-columns:repeat(2,1fr)}
  .benefits-section{grid-template-columns:repeat(2,1fr)}
  .room-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  body{padding-bottom:70px}
  .practice-grid,.benefits-section,.process-grid,.room-grid{grid-template-columns:1fr}
  .practice-grid div{min-height:74px}
  .fit-note{grid-template-columns:1fr;gap:.8rem}
  .benefits-section article{min-height:210px;padding:2.2rem 1.6rem}
  .benefits-section h3{margin-top:2rem}
  .room-photo-placeholder{height:245px}
  .room-card{border-radius:18px}
  .process-grid article{min-height:225px;padding:2.2rem 1.6rem}
  .process-grid h3{margin-top:2.3rem}
  .faq-list summary{font-size:1.2rem;padding-right:2rem}
  .mobile-enquire{display:flex;position:fixed;z-index:20;left:12px;right:12px;bottom:10px;height:52px;border-radius:999px;background:#fff;color:var(--deep);align-items:center;justify-content:center;font-size:.78rem;font-weight:600;box-shadow:0 14px 40px #10271f55;border:1px solid #d8ddd8}
  footer{grid-template-columns:1fr;padding-bottom:5rem}
  .footer-links{flex-direction:column}
}


/* Privacy and website terms */
.legal-body{background:var(--pale);color:var(--ink)}
.legal-header{min-height:78px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;background:var(--deep);color:#fff;font-size:.76rem}
.legal-header a:last-child{border-bottom:1px solid #ffffff9e;padding-bottom:.2rem}
.legal-page{width:min(820px,88vw);margin:0 auto;padding:7rem 0}
.legal-page>.eyebrow{color:var(--sage)}
.legal-page h1{font:500 clamp(4rem,8vw,7rem)/.9 "Cormorant Garamond",serif;letter-spacing:-.045em;margin:0 0 1rem}
.legal-updated{color:#727a74;font-size:.72rem;margin-bottom:4rem}
.legal-page section{padding:2rem 0;border-top:1px solid #d3d0c7}
.legal-page h2{font:500 1.75rem/1.15 "Cormorant Garamond",serif;letter-spacing:-.02em;margin:0 0 1rem}
.legal-page p{line-height:1.75;color:#566059;font-size:.9rem}
.legal-page a{text-decoration:underline}
.legal-note{margin-top:2rem;padding:1.5rem;background:#e3e7df;color:#4e5b53;font-size:.78rem;line-height:1.65;border-left:3px solid var(--sage)}
.legal-footer{display:flex;justify-content:center;gap:2rem;padding:2rem 6vw;background:var(--deep);color:#fff}
.legal-footer a{font-size:.7rem;color:#ffffffc7}
@media(max-width:700px){
  .legal-page{width:min(88vw,820px);padding:4rem 0}
  .legal-page h1{font-size:3.8rem}
  .legal-page section{padding:1.6rem 0}
  .legal-footer{padding-bottom:6rem;flex-wrap:wrap;gap:1rem 1.5rem}
}


/* Calm Window palette — warm, soft and premium */
:root{
  --sage:#718b79;
  --deep:#29483f;
  --mid:#617c6c;
  --eucalyptus:#9eafa3;
  --window-sage:#a8b8ac;
  --mist:#dfe7e1;
  --pale:#f7f3eb;
  --sand:#d9cdbb;
  --clay:#c5a99d;
  --white:#fffdf9;
  --ink:#293730;
}
body{background:var(--pale)}
.premium-splash{
  background:
    radial-gradient(circle at 18% 18%,rgba(201,216,205,.22),transparent 34%),
    radial-gradient(circle at 86% 82%,rgba(221,207,188,.2),transparent 36%),
    linear-gradient(145deg,#234239 0%,#3e6252 48%,#809789 100%);
}
.premium-splash:after{background:linear-gradient(180deg,transparent 50%,rgba(24,54,45,.22))}
.ambient-one{background:radial-gradient(circle at 65% 65%,rgba(222,233,224,.32),rgba(222,233,224,0) 68%)}
.ambient-two{background:radial-gradient(circle at 35% 35%,rgba(229,216,198,.24),rgba(229,216,198,0) 69%)}
.site-header{background:rgba(35,66,57,.9);border-color:rgba(255,255,255,.15)}
.hero{background:linear-gradient(135deg,#688372 0%,#789181 100%)}
.hero-copy{position:relative}
.hero-copy:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:rgba(223,231,225,.08);left:-85px;top:70px;pointer-events:none}
.intro-section{background:linear-gradient(180deg,#748c7c 0%,#6b8474 100%)}
.practitioner-fit{background:linear-gradient(145deg,#29483f,#36594c)}
.practice-grid,.fit-note{border-color:rgba(255,255,255,.18)}
.practice-grid{background:rgba(255,255,255,.18)}
.practice-grid div{background:rgba(41,72,63,.88);transition:background .45s ease}
.practice-grid div:hover{background:rgba(84,116,99,.92)}
.benefits-section{background:var(--mist)}
.benefits-section article{background:linear-gradient(145deg,#f8f5ef,#eef2ed);border-color:#d4ded6}
.benefits-section article:nth-child(3n+2){background:linear-gradient(145deg,#f6f1e8,#eee6da)}
.benefits-section article:nth-child(3n){background:linear-gradient(145deg,#eef3ef,#e3ebe5)}
.benefits-section span,.room-card-copy>span{color:#6d8776}
.rooms-section{background:linear-gradient(150deg,#708a79,#819889)}
.room-card{background:#faf7f1;box-shadow:0 24px 65px rgba(35,65,56,.16)}
.room-photo-placeholder{background:linear-gradient(145deg,#8fa398,#b8c5bc)}
.room-card:nth-child(2) .room-photo-placeholder{background:linear-gradient(145deg,#7f9789,#c3cec6)}
.room-card:nth-child(3) .room-photo-placeholder{background:linear-gradient(145deg,#9aafa1,#d2dcd5)}
.room-card:nth-child(4) .room-photo-placeholder{background:linear-gradient(145deg,#789082,#aab9ae)}
.process-section{background:linear-gradient(145deg,#5f7969,#789080)}
.process-grid{background:rgba(255,255,255,.2)}
.process-grid article{background:rgba(97,124,108,.87)}
.appointment{background:linear-gradient(145deg,#6d8776 0%,#7f9788 100%)}
.booking-card{background:#faf7f1;box-shadow:0 38px 90px rgba(35,65,56,.22)}
.contact-grid input,.contact-grid textarea,.contact-grid select{background:#fffdf9;border-color:#c6d1c8}
.request{background:#607c6b}
.request:not(:disabled):hover{background:#4c6858}
.independent-section{background:linear-gradient(145deg,#29483f,#35584b)}
.faq-section{background:linear-gradient(180deg,#f8f5ee,#f2eee5)}
.faq-list{border-color:#d7d1c5}
.faq-list details{border-color:#d7d1c5}
.location>div{background:linear-gradient(145deg,#8da193,#9dada2)}
.final{background:linear-gradient(145deg,#25443a,#34584b)}
.button,.splash-cta{background:#fffdf9;color:#29483f;transition:transform .4s ease,box-shadow .4s ease,background .4s ease}
.button:hover,.splash-cta:hover{transform:translateY(-2px);background:#f6f1e8;box-shadow:0 20px 50px rgba(31,60,50,.2)}
.mobile-enquire{background:#fffdf9;color:#29483f;border-color:#d5ded7}
footer,.legal-header,.legal-footer{background:#213b33}
.legal-body{background:#f7f3eb}
.legal-note{background:#e6ece7;border-color:#7c9585}
::selection{background:#c8d5cc;color:#243b33}


/* Quiet Light redesign — deliberately different, airy and restorative */
:root{
  --forest:#244239;
  --ink:#2d3934;
  --ivory:#f4efe6;
  --porcelain:#fbf9f5;
  --mist:#d4e0d9;
  --sea-glass:#b7ccc1;
  --soft-sage:#91ab9b;
  --lavender:#cbc6d3;
  --clay:#d8bdb4;
  --oat:#ddd0bd;
  --sage:#91ab9b;
  --deep:#244239;
  --mid:#759383;
  --eucalyptus:#b7ccc1;
  --pale:#f4efe6;
  --white:#fff;
}
body{background:var(--ivory);color:var(--ink)}
.premium-splash{
  background:
    radial-gradient(circle at 9% 15%,rgba(255,255,255,.72),transparent 28%),
    radial-gradient(circle at 87% 82%,rgba(216,189,180,.45),transparent 29%),
    linear-gradient(145deg,#dce7e1 0%,#b8cec2 48%,#9fb9aa 100%);
}
.premium-splash:after{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(36,66,57,.08))}
.ambient-one{background:radial-gradient(circle,rgba(255,255,255,.65),rgba(255,255,255,0) 68%);opacity:.62}
.ambient-two{background:radial-gradient(circle,rgba(203,198,211,.62),rgba(203,198,211,0) 68%);opacity:.5}
.splash-brand{color:var(--forest)!important;text-shadow:none;filter:drop-shadow(0 25px 60px rgba(59,91,79,.12))}
.splash-lockup>p,.splash-purpose{color:rgba(36,66,57,.82)}
.splash-cta{background:var(--forest);color:#fff;box-shadow:0 18px 42px rgba(36,66,57,.18)}
.splash-cta:hover{background:#31594c;color:#fff}
.wind-swirl path{stroke:rgba(36,66,57,.34)}
.scroll-cue{color:rgba(36,66,57,.72)}
.scroll-cue i{background:linear-gradient(var(--forest),transparent)}

.site-header{background:rgba(251,249,245,.9);color:var(--forest);border-bottom:1px solid rgba(55,83,73,.12);box-shadow:0 10px 40px rgba(62,87,78,.05)}
.site-header .header-cta{border-color:rgba(36,66,57,.5)}
.hero{background:var(--ivory);color:var(--ink)}
.hero-copy{background:linear-gradient(145deg,#f7f2ea,#eee7dc)}
.hero-copy:before{width:320px;height:320px;background:rgba(183,204,193,.26);left:-145px;top:-70px}
.hero .eyebrow{color:#61776d}
.hero .intro{color:#58665f}
.hero .quiet-link{border-color:rgba(36,66,57,.45)}
.hero .meta{border-color:rgba(36,66,57,.2);color:#54635c}
.hero .button{background:var(--forest);color:#fff}
.hero-photo:after{background:linear-gradient(90deg,rgba(244,239,230,.18),transparent 35%)}
.badge{background:rgba(244,239,230,.93);color:var(--forest);box-shadow:0 14px 40px rgba(35,61,52,.16)}

.intro-section{background:var(--mist);color:var(--ink)}
.intro-section .two-col>div p{color:#56665e}
.intro-section .two-col .lead{color:var(--forest)}
.practitioner-fit{background:var(--sea-glass);color:var(--ink)}
.practitioner-fit .section-heading>p{color:#4f6259}
.practice-grid{background:rgba(36,66,57,.12);border-color:rgba(36,66,57,.12)}
.practice-grid div{background:rgba(251,249,245,.7);color:var(--forest);border:0}
.practice-grid div:hover{background:#fff}
.fit-note{border-color:rgba(36,66,57,.18)}
.fit-note p{color:#4f6158}
.benefits-section{background:var(--porcelain)}
.benefits-section article{background:#fbf9f5;border-color:#e2ddd4}
.benefits-section article:nth-child(3n+2){background:#ebe7ef}
.benefits-section article:nth-child(3n){background:#edf3ef}
.benefits-section article:nth-child(4){background:#f1e5df}
.benefits-section h3{color:var(--forest)}

.rooms-section{background:linear-gradient(145deg,#e7eee9,#cbdad2);color:var(--ink)}
.rooms-section .section-heading>p{color:#52645b}
.room-card{background:rgba(251,249,245,.95);box-shadow:0 24px 70px rgba(55,83,73,.12)}
.room-photo-placeholder{background:linear-gradient(145deg,#9db7a8,#d6e1da)}
.room-card:nth-child(2) .room-photo-placeholder{background:linear-gradient(145deg,#b5afc1,#ded9e3)}
.room-card:nth-child(3) .room-photo-placeholder{background:linear-gradient(145deg,#c7a89e,#ead8d1)}
.room-card:nth-child(4) .room-photo-placeholder{background:linear-gradient(145deg,#baa98f,#e5dac8)}
.room-photo-placeholder:before,.room-photo-placeholder:after{border-color:rgba(255,255,255,.56)}
.room-disclaimer{color:#52645b}

.process-section{background:var(--lavender);color:var(--ink)}
.process-section .section-heading>p{color:#56545e}
.process-grid{background:rgba(65,61,74,.1)}
.process-grid article{background:rgba(251,249,245,.54)}
.process-grid article>span{color:#655e72}
.process-grid h3{color:#373640}
.process-grid p{color:#5e5b65}

.appointment{background:linear-gradient(145deg,#dfc9c1,#d7e1db);color:var(--ink)}
.booking-copy>p{color:#516158}
.booking-copy .note{border-color:rgba(36,66,57,.18);color:#4d5d55}
.booking-card{background:rgba(251,249,245,.96);box-shadow:0 34px 80px rgba(62,83,74,.15)}
.step{border-color:#ded9cf}
.step>span{color:#789181}
.contact-grid input,.contact-grid textarea,.contact-grid select{background:#fff;border-color:#d0d8d1}
.request{background:var(--forest);color:#fff}
.request:not(:disabled):hover{background:#31594c}

.independent-section{background:var(--forest);color:#fff}
.independent-section .two-col>div p{color:rgba(255,255,255,.78)}
.independent-section .two-col .lead{color:#fff}
.faq-section{background:var(--porcelain);color:var(--ink)}
.faq-list,.faq-list details{border-color:#ded9cf}
.faq-list summary:after{color:#789181}

.location{background:var(--mist);color:var(--ink)}
.location>div{background:linear-gradient(145deg,#c8d8cf,#b5c9bd)}
.location p:not(.eyebrow){color:#4d5f56}
.final{background:linear-gradient(145deg,#244239,#365f51);color:#fff}
.final .button{background:#fff;color:var(--forest)}
footer,.legal-header,.legal-footer{background:#1f3931}
.mobile-enquire{background:var(--forest);color:#fff;border-color:rgba(255,255,255,.2)}
.legal-body{background:var(--ivory)}
.legal-page h1,.legal-page h2{color:var(--forest)}
.legal-note{background:var(--mist);border-color:var(--soft-sage)}
::selection{background:var(--lavender);color:var(--forest)}

@media(max-width:700px){
  .site-header{background:rgba(251,249,245,.94)}
  .hero-copy{background:linear-gradient(160deg,#f7f2ea,#ebe4d8)}
  .room-card{box-shadow:0 18px 50px rgba(55,83,73,.1)}
}


/* Calm Atelier — consistent Apple-inspired luxury system */
:root{
  --forest:#213c33;
  --forest-soft:#31584a;
  --ink:#2b3732;
  --ivory:#f5f1e9;
  --porcelain:#fbfaf7;
  --mist:#e4ece7;
  --sage:#a9bcae;
  --sage-deep:#748e7e;
  --hairline:rgba(33,60,51,.13);
  --shadow:0 28px 80px rgba(37,62,53,.1);
}
html{background:var(--ivory);scroll-padding-top:88px}
body{background:var(--ivory);color:var(--ink)}
.section{padding-top:10rem;padding-bottom:10rem}
h1,h2{letter-spacing:-.052em}
.eyebrow{letter-spacing:.27em}
.premium-splash{background:linear-gradient(145deg,#e5ede8 0%,#c8d8cf 54%,#a9bfae 100%)}
.premium-splash:after{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(33,60,51,.08))}
.site-header{height:82px;background:rgba(251,250,247,.82);backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%);border-color:var(--hairline)}
.site-header nav{gap:2.1rem}
.site-header nav a,.header-cta{font-size:.72rem}
.header-cta{background:var(--forest);color:#fff;border:0;border-radius:999px;padding:.78rem 1.15rem}
.hero{padding:22px;gap:22px;background:var(--ivory);grid-template-columns:1fr 1fr}
.hero-copy,.hero-photo{border-radius:38px;overflow:hidden;min-height:740px}
.hero-copy{padding:10rem 7vw 4rem;background:linear-gradient(150deg,#eef3ef,#e3ebe6)}
.hero-copy:before{background:rgba(255,255,255,.32)}
.hero h1{font-size:clamp(4.2rem,6.6vw,7.2rem)}
.hero-photo{min-height:740px}
.actions .button{min-width:230px}
.button,.splash-cta,.request{min-height:52px;align-items:center;border-radius:999px}
.intro-section{background:var(--ivory);color:var(--ink)}
.intro-section .two-col{padding-bottom:1rem}
.practitioner-fit{background:var(--mist);color:var(--ink)}
.practice-grid{gap:.75rem;background:transparent;border:0}
.practice-grid div{background:rgba(251,250,247,.8);border:1px solid var(--hairline);border-radius:18px;min-height:112px;padding:1.5rem;box-shadow:0 12px 36px rgba(44,70,60,.045)}
.fit-note{border-color:var(--hairline)}
.benefits-section{padding:6rem 5vw;gap:1rem;background:var(--ivory)}
.benefits-section article,.benefits-section article:nth-child(n){background:var(--porcelain);border:1px solid var(--hairline);border-radius:28px;box-shadow:0 18px 55px rgba(44,70,60,.055)}
.benefits-section article:nth-child(2),.benefits-section article:nth-child(5){background:var(--mist)}
.rooms-section{background:var(--porcelain);color:var(--ink)}
.room-grid{gap:1.5rem}
.room-card{border:1px solid var(--hairline);border-radius:32px;box-shadow:var(--shadow);transition:transform .6s cubic-bezier(.22,1,.36,1),box-shadow .6s ease}
.room-card:hover{transform:translateY(-7px);box-shadow:0 38px 95px rgba(37,62,53,.15)}
.room-photo-placeholder,.room-card:nth-child(n) .room-photo-placeholder{background:linear-gradient(145deg,#91aa9b,#d4e0d8)}
.room-card:nth-child(even) .room-photo-placeholder{background:linear-gradient(145deg,#7f9989,#c7d6cd)}
.process-section{background:var(--forest);color:#fff}
.process-section .section-heading>p{color:rgba(255,255,255,.72)}
.process-grid{gap:1rem;background:transparent}
.process-grid article{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.14);border-radius:28px;backdrop-filter:blur(8px)}
.process-grid article>span,.process-grid h3{color:#fff}
.process-grid p{color:rgba(255,255,255,.7)}
.appointment{background:var(--mist);color:var(--ink);align-items:start}
.booking-card{border:1px solid var(--hairline);border-radius:34px;box-shadow:var(--shadow)}
.contact-grid input,.contact-grid textarea,.contact-grid select{border:1px solid rgba(33,60,51,.16);transition:border-color .3s ease,box-shadow .3s ease}
.contact-grid input:focus,.contact-grid textarea:focus,.contact-grid select:focus{outline:0;border-color:var(--sage-deep);box-shadow:0 0 0 4px rgba(116,142,126,.14)}
.independent-section{background:var(--ivory);color:var(--ink)}
.independent-section .two-col>div p{color:#58675f}
.independent-section .two-col .lead{color:var(--forest)}
.faq-section{background:var(--porcelain)}
.faq-list details{transition:background .35s ease}
.faq-list details[open]{background:var(--mist);padding-left:1.2rem;padding-right:1.2rem;border-radius:16px}
.location{margin:22px;background:var(--mist);border-radius:38px;overflow:hidden;min-height:680px}
.location>div{background:linear-gradient(145deg,#dbe6df,#c7d7cd)}
.final{margin:22px;border-radius:38px;background:linear-gradient(145deg,#203b32,#31594b);overflow:hidden}
footer{margin-top:22px}
.mobile-enquire{box-shadow:0 18px 55px rgba(33,60,51,.25)}

/* restrained scroll reveals */
.premium-reveal{opacity:0;transform:translateY(24px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.premium-reveal.is-visible{opacity:1;transform:none}
.premium-reveal:nth-child(2){transition-delay:.06s}
.premium-reveal:nth-child(3){transition-delay:.12s}

@media(max-width:900px){
  .section{padding-top:7rem;padding-bottom:7rem}
  .hero{padding:12px;gap:12px}
  .hero-copy,.hero-photo{border-radius:28px}
  .site-header{height:76px}
  .header-cta{padding:.72rem 1rem}
}
@media(max-width:700px){
  .section{padding:6rem 6vw}
  .hero{padding:8px;display:grid}
  .hero-copy{min-height:590px;padding:7rem 7vw 4rem}
  .hero-photo{min-height:500px}
  .benefits-section{padding:4.5rem 12px}
  .benefits-section article{border-radius:22px}
  .practice-grid div{border-radius:16px;min-height:82px}
  .room-card,.booking-card{border-radius:24px}
  .process-grid article{border-radius:22px}
  .location,.final{margin:10px;border-radius:26px}
  .location{min-height:auto}
}
@media(prefers-reduced-motion:reduce){
  .premium-reveal{opacity:1;transform:none;transition:none}
  .room-card{transition:none}
}


/* Compact lotus orbit — one small circle around the base line */
.wind-swirl{display:none!important}
.splash-brand .logo-base{animation:none!important}
.splash-brand .logo-petal{
  animation-name:microLotusOrbit;
  animation-duration:4.4s;
  animation-timing-function:linear;
  animation-iteration-count:1;
  animation-fill-mode:both;
}
@keyframes microLotusOrbit{
  0%{transform:translate3d(0,0,0) rotate(0deg)}
  10%{transform:translate3d(-8px,-8px,0) rotate(28deg)}
  20%{transform:translate3d(-28px,-14px,0) rotate(67deg)}
  32%{transform:translate3d(-52px,-4px,0) rotate(112deg)}
  44%{transform:translate3d(-58px,22px,0) rotate(158deg)}
  56%{transform:translate3d(-38px,42px,0) rotate(204deg)}
  68%{transform:translate3d(-4px,50px,0) rotate(250deg)}
  80%{transform:translate3d(30px,34px,0) rotate(296deg)}
  90%{transform:translate3d(32px,8px,0) rotate(332deg)}
  96%{transform:translate3d(12px,-2px,0) rotate(352deg)}
  100%{transform:translate3d(0,0,0) rotate(360deg)}
}
@media(max-width:700px){
  @keyframes microLotusOrbit{
    0%{transform:translate3d(0,0,0) rotate(0deg)}
    10%{transform:translate3d(-5px,-5px,0) rotate(28deg)}
    20%{transform:translate3d(-18px,-9px,0) rotate(67deg)}
    32%{transform:translate3d(-34px,-3px,0) rotate(112deg)}
    44%{transform:translate3d(-38px,14px,0) rotate(158deg)}
    56%{transform:translate3d(-25px,27px,0) rotate(204deg)}
    68%{transform:translate3d(-3px,32px,0) rotate(250deg)}
    80%{transform:translate3d(20px,22px,0) rotate(296deg)}
    90%{transform:translate3d(21px,5px,0) rotate(332deg)}
    96%{transform:translate3d(8px,-1px,0) rotate(352deg)}
    100%{transform:translate3d(0,0,0) rotate(360deg)}
  }
}


/* Crystal Jade dimensional hero logo */
.splash-brand{filter:none}
.splash-brand .brand-main>span{
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-background-clip:text;
  background-clip:text;
  background-image:
    linear-gradient(112deg,
      #18372e 0%,
      #274d40 22%,
      #76a994 39%,
      #e8f5ee 47%,
      #4f8a73 53%,
      #1f4437 69%,
      #8db8a5 84%,
      #24483b 100%);
  background-size:220% 100%;
  background-position:100% 50%;
  -webkit-text-stroke:1px rgba(18,52,42,.34);
  text-shadow:
    1px 1px 0 #416b5b,
    2px 2px 0 #365e50,
    3px 3px 0 #2d5447,
    4px 4px 0 #274b40,
    5px 5px 0 #214239,
    7px 9px 16px rgba(26,54,45,.22),
    16px 22px 44px rgba(33,60,51,.18);
  animation:crystalJadeSheen 1.8s cubic-bezier(.22,1,.36,1) 4.35s 1 both;
  transform:translateZ(0);
}
.splash-brand>small{
  color:#26483c;
  text-shadow:
    1px 1px 0 rgba(255,255,255,.7),
    2px 3px 7px rgba(32,67,55,.18);
}
.splash-brand .brand-lotus path{
  stroke:#285747;
  stroke-width:1.75;
  filter:
    drop-shadow(-1px -1px 0 rgba(242,255,248,.75))
    drop-shadow(2px 3px 0 rgba(35,79,63,.32))
    drop-shadow(5px 7px 8px rgba(30,63,52,.18));
}
.splash-brand .logo-base{
  stroke:#315e4e;
  filter:
    drop-shadow(-1px -1px 0 rgba(255,255,255,.7))
    drop-shadow(2px 3px 2px rgba(30,63,52,.22));
}
@keyframes crystalJadeSheen{
  0%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@media(max-width:700px){
  .splash-brand .brand-main>span{
    -webkit-text-stroke:.6px rgba(18,52,42,.3);
    text-shadow:
      1px 1px 0 #416b5b,
      2px 2px 0 #365e50,
      3px 3px 0 #2d5447,
      4px 5px 11px rgba(26,54,45,.2),
      10px 14px 28px rgba(33,60,51,.14);
  }
}
@media(prefers-reduced-motion:reduce){
  .splash-brand .brand-main>span{animation:none;background-position:35% 50%}
}


/* Soft Form system — organic, rounded and flowing */
.hero-copy,.hero-photo{border-radius:72px}
.hero-copy{background:
  radial-gradient(circle at 0% 100%,rgba(169,188,174,.32),transparent 34%),
  linear-gradient(150deg,#f2f6f3,#e5ede8)}
.badge{border-radius:52% 48% 55% 45%/44% 54% 46% 56%}
.intro-section{position:relative;overflow:hidden}
.intro-section:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-150px;bottom:-180px;background:rgba(169,188,174,.2);pointer-events:none}

.practitioner-fit{margin:22px;border-radius:80px;overflow:hidden;background:
  radial-gradient(circle at 8% 12%,rgba(255,255,255,.55),transparent 26%),
  linear-gradient(145deg,#e7eee9,#d7e4dc)}
.practice-grid{grid-template-columns:repeat(3,1fr);gap:1rem}
.practice-grid div{min-height:72px;justify-content:center;align-items:center;text-align:center;border-radius:999px;padding:1rem 1.4rem;background:rgba(255,255,255,.72);box-shadow:0 14px 34px rgba(45,73,62,.06)}
.practice-grid div:nth-child(even){transform:translateY(9px)}
.fit-note{background:rgba(255,255,255,.5);border:0;border-radius:38px;padding:2rem 2.2rem;margin-top:3rem}

.benefits-section{gap:1.4rem}
.benefits-section article,.benefits-section article:nth-child(n){border:0;min-height:270px;box-shadow:0 24px 70px rgba(45,73,62,.08)}
.benefits-section article:nth-child(1){border-radius:62px 32px 58px 36px}
.benefits-section article:nth-child(2){border-radius:34px 68px 38px 62px}
.benefits-section article:nth-child(3){border-radius:70px 35px 66px 42px}
.benefits-section article:nth-child(4){border-radius:38px 62px 32px 68px}
.benefits-section article:nth-child(5){border-radius:66px 40px 72px 34px}
.benefits-section article:nth-child(6){border-radius:42px 72px 38px 64px}

.rooms-section{position:relative;overflow:hidden}
.rooms-section:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;left:-300px;top:90px;background:rgba(169,188,174,.15);pointer-events:none}
.room-grid{gap:2rem}
.room-card{border:0;border-radius:64px 64px 46px 46px}
.room-card:nth-child(even){border-radius:82px 46px 70px 42px}
.room-photo-placeholder{border-radius:0 0 48% 48%/0 0 12% 12%}
.room-card-copy{padding:2.4rem 2.7rem 3rem}

.process-section{margin:22px;border-radius:84px;overflow:hidden;background:
  radial-gradient(circle at 88% 10%,rgba(169,188,174,.22),transparent 28%),
  linear-gradient(145deg,#203b32,#31594b)}
.process-grid article{border:0;border-radius:58px;background:rgba(255,255,255,.085)}
.process-grid article:nth-child(2){border-radius:80px 45px 75px 48px}
.process-grid article:nth-child(3){border-radius:48px 78px 42px 72px}

.appointment{margin:22px;border-radius:84px;overflow:hidden;background:
  radial-gradient(circle at 5% 85%,rgba(255,255,255,.58),transparent 26%),
  linear-gradient(145deg,#e4ece7,#cfddd5)}
.booking-card{border:0;border-radius:58px}
.contact-grid input,.contact-grid textarea,.contact-grid select{border-radius:22px}
.request{border-radius:999px}

.independent-section{margin:22px;border-radius:84px;background:
  radial-gradient(circle at 90% 20%,rgba(169,188,174,.3),transparent 25%),
  var(--ivory)}
.faq-section{margin:22px;border-radius:84px;overflow:hidden}
.faq-list details{border:0;background:#f3f6f4;border-radius:30px;margin:.75rem 0;padding:0 1.3rem}
.faq-list details[open]{border-radius:38px;background:var(--mist)}

.location,.final{border-radius:84px}
.mobile-enquire{border-radius:999px}

/* soften the dimensional logo into polished glass */
.splash-brand .brand-main>span{
  -webkit-text-stroke:.7px rgba(18,52,42,.24);
  text-shadow:
    0 1px 0 rgba(255,255,255,.72),
    0 5px 10px rgba(44,82,68,.16),
    0 18px 38px rgba(33,60,51,.2);
  filter:drop-shadow(0 12px 24px rgba(33,60,51,.12));
}
.splash-brand .brand-lotus path{
  filter:
    drop-shadow(-1px -1px 0 rgba(245,255,249,.8))
    drop-shadow(0 5px 7px rgba(35,79,63,.22));
}

@media(max-width:900px){
  .hero-copy,.hero-photo{border-radius:46px}
  .practitioner-fit,.process-section,.appointment,.independent-section,.faq-section{margin:12px;border-radius:52px}
  .practice-grid{grid-template-columns:repeat(2,1fr)}
  .practice-grid div:nth-child(even){transform:none}
  .location,.final{border-radius:52px}
}
@media(max-width:700px){
  .hero-copy,.hero-photo{border-radius:34px}
  .practitioner-fit,.process-section,.appointment,.independent-section,.faq-section{margin:8px;border-radius:38px}
  .practice-grid{grid-template-columns:1fr}
  .practice-grid div{min-height:62px}
  .benefits-section article,.benefits-section article:nth-child(n){border-radius:38px}
  .room-card,.room-card:nth-child(even){border-radius:42px}
  .room-photo-placeholder{border-radius:0 0 42% 42%/0 0 9% 9%}
  .process-grid article,.process-grid article:nth-child(n){border-radius:36px}
  .booking-card{border-radius:38px}
  .faq-list details,.faq-list details[open]{border-radius:26px}
  .location,.final{border-radius:38px}
}


/* Stronger crystal-jade contrast against the mist background */
.splash-brand .brand-main>span{
  background-image:linear-gradient(112deg,
    #14362c 0%,
    #1d4638 25%,
    #39715b 40%,
    #9fcdb8 46%,
    #f7fff9 49%,
    #5b947a 53%,
    #275844 62%,
    #16392e 79%,
    #234b3d 100%);
  background-size:250% 100%;
  -webkit-text-stroke:1.35px rgba(13,48,37,.82);
  text-shadow:
    0 1px 0 rgba(239,255,247,.62),
    0 4px 8px rgba(23,59,47,.24),
    0 17px 38px rgba(23,59,47,.3);
  filter:drop-shadow(0 12px 22px rgba(20,54,44,.22));
}
.splash-brand>small{
  color:#183e32;
  text-shadow:0 1px 0 rgba(255,255,255,.75),0 5px 12px rgba(25,63,50,.2);
}
.splash-brand .brand-lotus path{
  stroke:#194a39;
  stroke-width:2.15;
  filter:
    drop-shadow(-1px -1px 0 rgba(247,255,250,.92))
    drop-shadow(0 4px 6px rgba(21,62,48,.3));
}
@keyframes crystalJadeSheen{
  0%{background-position:100% 50%}
  100%{background-position:35% 50%}
}
@media(max-width:700px){
  .splash-brand .brand-main>span{-webkit-text-stroke:.9px rgba(13,48,37,.78)}
}


/* Final hero pairing — original green with pale glass branding */
.premium-splash{
  background:
    radial-gradient(circle at 14% 18%,rgba(201,222,208,.2),transparent 31%),
    radial-gradient(circle at 84% 82%,rgba(177,203,184,.15),transparent 34%),
    linear-gradient(155deg,#16372d 0%,#244b3c 46%,#607b69 100%);
}
.premium-splash:after{background:linear-gradient(180deg,transparent 50%,rgba(7,27,20,.25))}
.ambient-one{background:radial-gradient(circle,rgba(205,225,211,.24),rgba(205,225,211,0) 68%)}
.ambient-two{background:radial-gradient(circle,rgba(177,203,184,.2),rgba(177,203,184,0) 68%)}
.splash-lockup>p,.splash-purpose{color:rgba(255,255,255,.84)}
.splash-cta{background:#fffdf9;color:#244b3c;box-shadow:0 18px 46px rgba(5,30,21,.22)}
.splash-cta:hover{background:#f4efe6;color:#244b3c}
.scroll-cue{color:rgba(255,255,255,.72)}
.scroll-cue i{background:linear-gradient(#fff,transparent)}

.splash-brand .brand-main>span{
  background-image:linear-gradient(112deg,
    #d4e1db 0%,
    #f9fffc 22%,
    #a9c0b5 39%,
    #ffffff 47%,
    #7fa291 54%,
    #dbe8e2 70%,
    #f7fffb 84%,
    #a5bdb2 100%);
  background-size:235% 100%;
  -webkit-text-stroke:1px rgba(221,239,230,.76);
  text-shadow:
    0 1px 0 rgba(255,255,255,.95),
    0 4px 7px rgba(9,44,32,.3),
    0 17px 36px rgba(5,31,22,.38);
  filter:drop-shadow(0 13px 25px rgba(4,29,20,.28));
}
.splash-brand>small{
  color:#f5fbf7;
  text-shadow:0 1px 0 rgba(255,255,255,.55),0 6px 14px rgba(5,31,22,.35);
}
.splash-brand .brand-lotus path{
  stroke:#eef8f2;
  stroke-width:1.9;
  filter:
    drop-shadow(-1px -1px 0 rgba(255,255,255,.9))
    drop-shadow(0 4px 6px rgba(5,35,24,.42));
}
.splash-brand .logo-base{stroke:#eef8f2}
@keyframes crystalJadeSheen{
  0%{background-position:100% 50%}
  100%{background-position:30% 50%}
}
@media(max-width:700px){
  .splash-brand .brand-main>span{-webkit-text-stroke:.7px rgba(221,239,230,.72)}
}


/* Clear crystal wordmark — transparent glass over the original green */
.splash-brand{
  position:relative;
  isolation:isolate;
}
.splash-brand::after{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  bottom:-1.25rem;
  height:2.35rem;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(231,255,243,.34) 0%,rgba(139,194,166,.14) 42%,transparent 74%);
  filter:blur(12px);
  opacity:.78;
}
.splash-brand .brand-main>span{
  position:relative;
  background-image:linear-gradient(112deg,
    rgba(255,255,255,.14) 0%,
    rgba(247,255,251,.62) 14%,
    rgba(135,190,163,.10) 29%,
    rgba(255,255,255,.78) 45%,
    rgba(92,156,126,.15) 54%,
    rgba(239,255,247,.52) 72%,
    rgba(126,184,155,.09) 100%);
  background-size:250% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  -webkit-text-stroke:1.25px rgba(239,255,247,.76);
  text-shadow:
    -1px -1px 0 rgba(255,255,255,.8),
    1px 1px 0 rgba(5,52,34,.78),
    2px 3px 2px rgba(3,37,24,.35),
    0 14px 30px rgba(2,30,19,.35);
  filter:
    drop-shadow(0 1px 0 rgba(255,255,255,.82))
    drop-shadow(0 12px 23px rgba(2,30,19,.3));
}
.splash-brand .brand-main>span::after{
  content:"calm";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  color:rgba(203,238,221,.06);
  -webkit-text-fill-color:rgba(203,238,221,.06);
  -webkit-text-stroke:2.1px rgba(15,76,53,.34);
  transform:translate(2px,3px);
  filter:blur(.25px);
}
.splash-brand>small{
  color:rgba(239,253,246,.9);
  text-shadow:
    -1px -1px 0 rgba(255,255,255,.68),
    1px 1px 0 rgba(6,52,35,.78),
    0 8px 16px rgba(2,31,20,.34);
}
.splash-brand .brand-lotus path,
.splash-brand .logo-base{
  stroke:rgba(239,255,247,.84);
  stroke-width:2;
  filter:
    drop-shadow(-1px -1px 0 rgba(255,255,255,.9))
    drop-shadow(1px 1px 0 rgba(5,55,36,.82))
    drop-shadow(0 8px 9px rgba(2,29,19,.34));
}
@keyframes crystalJadeSheen{
  0%{background-position:100% 50%}
  100%{background-position:20% 50%}
}
@media (prefers-reduced-motion:reduce){
  .splash-brand .brand-main>span{background-position:46% 50%}
}


/* True transparent glass — clear centres with polished crystal rims */
.splash-brand .brand-main>span{
  isolation:isolate;
  background-image:linear-gradient(108deg,
    rgba(238,255,247,.05) 0%,
    rgba(238,255,247,.08) 17%,
    rgba(255,255,255,.42) 20%,
    rgba(255,255,255,.08) 23%,
    rgba(135,193,164,.035) 39%,
    rgba(255,255,255,.52) 47%,
    rgba(255,255,255,.09) 51%,
    rgba(113,178,145,.035) 70%,
    rgba(247,255,251,.28) 82%,
    rgba(238,255,247,.045) 87%,
    rgba(238,255,247,.07) 100%);
  background-size:265% 100%;
  -webkit-text-stroke:1.35px rgba(246,255,251,.88);
  text-shadow:
    -1px -1px 0 rgba(255,255,255,.9),
    1px 1px 0 rgba(4,47,31,.92),
    2px 3px 1px rgba(2,32,21,.58),
    0 12px 25px rgba(1,25,16,.38);
  filter:
    drop-shadow(0 1px 0 rgba(255,255,255,.82))
    drop-shadow(0 10px 19px rgba(1,26,17,.32));
}
.splash-brand .brand-main>span::before{
  content:"calm";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:.65px rgba(255,255,255,.68);
  transform:translate(-1px,-1px);
  filter:drop-shadow(1px 2px 0 rgba(22,86,61,.48));
  opacity:.9;
}
.splash-brand .brand-main>span::after{
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:1.55px rgba(8,67,44,.58);
  transform:translate(2px,3px);
  filter:blur(.15px);
  opacity:.85;
}
.splash-brand .brand-lotus path,
.splash-brand .logo-base{
  stroke:rgba(247,255,251,.9);
  filter:
    drop-shadow(-1px -1px 0 rgba(255,255,255,.95))
    drop-shadow(2px 2px 0 rgba(6,62,41,.8))
    drop-shadow(0 7px 8px rgba(1,27,17,.38));
}
.splash-brand>small{
  color:rgba(229,248,238,.28);
  -webkit-text-stroke:.8px rgba(247,255,251,.78);
  text-shadow:
    -1px -1px 0 rgba(255,255,255,.72),
    1px 2px 0 rgba(4,54,35,.85),
    0 7px 14px rgba(1,27,17,.35);
}
.splash-brand::after{
  opacity:.5;
  background:radial-gradient(ellipse at center,rgba(224,255,239,.25) 0%,rgba(113,183,148,.09) 43%,transparent 74%);
}


/* Shadowless glass — clean crystal directly on green */
.splash-brand::after{
  display:none;
  content:none;
  background:none;
  filter:none;
  opacity:0;
}
.splash-brand .brand-main>span{
  text-shadow:none;
  filter:none;
  -webkit-text-stroke:1.25px rgba(245,255,250,.88);
}
.splash-brand .brand-main>span::before{
  filter:none;
  text-shadow:none;
  -webkit-text-stroke:.55px rgba(255,255,255,.64);
}
.splash-brand .brand-main>span::after{
  filter:none;
  text-shadow:none;
  -webkit-text-stroke:1.15px rgba(9,69,46,.48);
  transform:translate(1.25px,1.5px);
  opacity:.72;
}
.splash-brand .brand-lotus path,
.splash-brand .logo-base{
  filter:none;
  text-shadow:none;
  stroke:rgba(244,255,249,.88);
}
.splash-brand>small{
  text-shadow:none;
  filter:none;
  color:rgba(231,250,240,.22);
  -webkit-text-stroke:.7px rgba(247,255,251,.76);
}


/* Premium convex bubble glass — dimensional without a background shadow */
.splash-brand .brand-main>span{
  background-image:
    linear-gradient(180deg,
      rgba(255,255,255,.52) 0%,
      rgba(246,255,251,.22) 13%,
      rgba(196,235,216,.07) 39%,
      rgba(87,151,120,.07) 68%,
      rgba(222,250,235,.24) 88%,
      rgba(255,255,255,.42) 100%),
    linear-gradient(108deg,
      rgba(255,255,255,.06) 0%,
      rgba(255,255,255,.34) 18%,
      rgba(255,255,255,.06) 24%,
      rgba(113,178,145,.025) 43%,
      rgba(255,255,255,.42) 49%,
      rgba(255,255,255,.05) 55%,
      rgba(244,255,249,.19) 82%,
      rgba(238,255,247,.05) 100%);
  background-size:100% 100%,265% 100%;
  background-blend-mode:screen;
  -webkit-text-stroke:1.35px rgba(249,255,252,.93);
  text-shadow:
    -1px -1px 0 rgba(255,255,255,.82),
    1px 1px 0 rgba(8,66,44,.72);
  filter:none;
}
.splash-brand .brand-main>span::before{
  -webkit-text-stroke:.8px rgba(255,255,255,.76);
  transform:translate(-.75px,-.9px);
  opacity:.88;
}
.splash-brand .brand-main>span::after{
  -webkit-text-stroke:1.35px rgba(7,65,43,.6);
  transform:translate(1.5px,1.8px);
  opacity:.82;
}
.splash-brand>small{
  background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(181,226,204,.12) 52%,rgba(255,255,255,.34));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:.75px rgba(247,255,251,.78);
  text-shadow:-.7px -.7px 0 rgba(255,255,255,.66),.8px .8px 0 rgba(8,65,43,.62);
}
.splash-brand .brand-lotus path,
.splash-brand .logo-base{
  stroke:rgba(246,255,250,.93);
  filter:none;
}


/* ==========================================================
   FINAL MOBILE-FIRST SYSTEM — iPhone, Android and small tablet
   ========================================================== */
@media(max-width:1024px){
  html{scroll-padding-top:82px}
  body{overflow-x:hidden}
  .site-header{
    position:sticky;
    top:0;
    z-index:50;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }
  .section-heading{gap:1.75rem}
  .room-grid{gap:1.25rem}
  .appointment{align-items:start}
  .booking-card{width:100%;max-width:720px;margin-inline:auto}
}

@media(max-width:760px){
  :root{--mobile-gutter:20px}
  html{
    scroll-behavior:smooth;
    scroll-padding-top:72px;
    -webkit-text-size-adjust:100%;
  }
  body{
    width:100%;
    padding-bottom:calc(76px + env(safe-area-inset-bottom));
    overflow-x:clip;
  }
  button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
  input,select,textarea{font-size:16px!important}

  /* Opening screen */
  .premium-splash{
    width:100%;
    min-height:100svh;
    height:auto;
    padding:
      max(24px,env(safe-area-inset-top))
      var(--mobile-gutter)
      max(30px,env(safe-area-inset-bottom));
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
  }
  .splash-lockup{
    width:100%;
    max-width:430px;
    padding:0;
    transform:none;
  }
  .splash-brand{width:min(88vw,390px);margin-inline:auto}
  .splash-brand .brand-main>span{
    font-size:clamp(5.7rem,25vw,7.6rem);
    line-height:.82;
    letter-spacing:-.075em;
  }
  .splash-brand .brand-lotus{
    width:clamp(76px,23vw,108px);
    right:2%;
    top:-36%;
  }
  .splash-brand>small{
    margin-top:.72rem;
    font-size:clamp(.78rem,3.8vw,1rem);
    letter-spacing:.43em;
    padding-left:.43em;
  }
  .splash-lockup>p{
    margin:2rem auto .7rem;
    font-size:.66rem;
    letter-spacing:.17em;
    line-height:1.5;
  }
  .splash-purpose{
    max-width:330px;
    margin:0 auto 1.5rem;
    font-size:clamp(1rem,4.25vw,1.14rem);
    line-height:1.5;
  }
  .splash-cta{
    width:min(100%,330px);
    min-height:54px;
    margin-inline:auto;
    padding:0 1.25rem;
    border-radius:999px;
    justify-content:center;
    gap:.8rem;
    font-size:.82rem;
  }
  .scroll-cue{display:none}
  .wind-swirl{inset:23% -18% 25% -18%;opacity:.52}
  .wind-swirl path{stroke-width:1.45}
  .ambient{opacity:.42}

  /* Compact, usable navigation */
  .site-header{
    height:72px;
    padding:0 14px 0 16px;
    gap:10px;
    background:rgba(247,244,237,.92);
    border-bottom:1px solid rgba(36,75,60,.1);
  }
  .site-header .wordmark{min-width:0}
  .site-header .brand-logo{width:92px}
  .site-header .wordmark .brand-main>span{font-size:1.82rem}
  .site-header .wordmark .brand-lotus{width:32px;right:-2px;top:-13px}
  .site-header .wordmark .brand-logo>small{font-size:.45rem;letter-spacing:.31em}
  .site-header nav{display:none}
  .header-cta{
    min-height:44px;
    margin-left:auto;
    padding:.7rem .95rem;
    border:1px solid rgba(36,75,60,.16);
    border-radius:999px;
    background:#244b3c;
    color:#fff;
    font-size:.7rem;
    line-height:1.15;
    white-space:nowrap;
  }

  /* Main hero */
  .hero{
    grid-template-columns:1fr;
    gap:8px;
    padding:8px;
    min-height:0;
  }
  .hero-copy{
    min-height:0;
    padding:4.5rem var(--mobile-gutter) 2.2rem;
    border-radius:30px;
  }
  .hero-copy .eyebrow{margin-bottom:1.35rem}
  .hero-copy h1{
    font-size:clamp(3.55rem,16.5vw,5rem);
    line-height:.83;
    letter-spacing:-.052em;
  }
  .hero-copy .intro{
    margin:1.5rem 0 1.6rem;
    font-size:.98rem;
    line-height:1.68;
  }
  .actions{
    width:100%;
    margin:.4rem 0 1.9rem;
    flex-direction:column;
    align-items:stretch;
    gap:.75rem;
  }
  .actions .button,.actions .quiet-link{
    width:100%;
    min-width:0;
    min-height:54px;
    padding:0 1.2rem;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
  }
  .actions .quiet-link{border:1px solid rgba(36,75,60,.16)}
  .meta{
    margin-top:.2rem;
    padding-top:1.1rem;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.45rem;
  }
  .meta span{
    min-width:0;
    font-size:.58rem;
    line-height:1.35;
    text-align:center;
  }
  .meta b{display:block;margin-bottom:.18rem;font-size:.68rem}
  .hero-photo{
    min-height:420px;
    height:68svh;
    max-height:580px;
    border-radius:30px;
  }
  .hero-photo img{object-position:center}
  .badge{
    width:96px;
    height:96px;
    right:14px;
    bottom:14px;
    font-size:.72rem;
  }

  /* Shared section rhythm */
  .section{
    padding:4.8rem var(--mobile-gutter);
  }
  .section .eyebrow{margin-bottom:1.15rem}
  .two-col,.section-heading{
    grid-template-columns:1fr;
    gap:1.45rem;
  }
  .two-col h2,.section-heading h2,.booking-copy h2{
    font-size:clamp(3.05rem,14vw,4.3rem);
    line-height:.9;
  }
  .two-col>div p,.section-heading>p,.booking-copy>p{
    font-size:.96rem;
    line-height:1.7;
  }
  .two-col .lead{
    font-size:1.26rem;
    line-height:1.45;
  }
  .section-heading{margin-bottom:2.3rem}

  /* Practitioner fit */
  .practitioner-fit,.process-section,.appointment,.independent-section,.faq-section{
    margin:8px;
    padding:4.4rem 16px;
    border-radius:30px;
  }
  .practice-grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  .practice-grid div{
    min-height:58px;
    padding:1rem 1.1rem;
    border-radius:16px;
    font-size:.92rem;
  }
  .fit-note{
    grid-template-columns:1fr;
    gap:.65rem;
    margin-top:1.4rem;
    padding:1.3rem;
    border-radius:18px;
  }
  .fit-note p{margin:0;font-size:.88rem;line-height:1.6}

  /* Benefits */
  .benefits-section{
    grid-template-columns:1fr;
    gap:10px;
    padding:4rem 8px;
  }
  .benefits-section article,
  .benefits-section article:nth-child(n){
    min-height:190px;
    padding:1.7rem 1.35rem;
    border-radius:28px;
  }
  .benefits-section h3{margin-top:1.8rem;font-size:1.55rem}
  .benefits-section p{font-size:.92rem;line-height:1.55}

  /* Rooms */
  .rooms-section{padding-inline:var(--mobile-gutter)}
  .room-grid{grid-template-columns:1fr;gap:1rem}
  .room-card,.room-card:nth-child(even){
    border-radius:28px;
    transform:none;
    overflow:hidden;
  }
  .room-photo-placeholder{
    height:230px;
    border-radius:0 0 34% 34%/0 0 7% 7%;
  }
  .room-card-copy{padding:1.45rem 1.35rem 1.7rem}
  .room-card-copy h3{font-size:1.9rem;margin:.5rem 0}
  .room-card-copy p{font-size:.92rem;line-height:1.55}
  .room-disclaimer{margin-top:1.4rem;font-size:.78rem;line-height:1.55}

  /* How it works */
  .process-grid{grid-template-columns:1fr;gap:10px}
  .process-grid article,.process-grid article:nth-child(n){
    min-height:205px;
    padding:1.65rem 1.35rem;
    border-radius:26px;
  }
  .process-grid h3{margin-top:1.7rem;font-size:1.55rem}
  .process-grid p{font-size:.92rem;line-height:1.55}

  /* Enquiry form */
  .appointment{
    grid-template-columns:1fr;
    gap:2.2rem;
  }
  .booking-copy{padding:0 4px}
  .booking-copy .note{
    margin-top:1.35rem;
    padding-top:1rem;
    font-size:.82rem;
  }
  .booking-card{
    padding:0 1.15rem;
    border-radius:26px;
    overflow:hidden;
  }
  .step{
    grid-template-columns:1fr;
    gap:.65rem;
    padding:1.6rem 0;
  }
  .step>span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:rgba(113,134,117,.12);
  }
  .step label,.label{font-size:1.25rem;margin-bottom:.9rem}
  .contact-grid{grid-template-columns:1fr;gap:1rem}
  .contact-grid label>span{
    display:block;
    margin-bottom:.45rem;
    font-size:.78rem;
    line-height:1.35;
  }
  .contact-grid input,.contact-grid select,.contact-grid textarea{
    width:100%;
    min-height:54px;
    padding:.9rem 1rem;
    border-radius:16px;
  }
  .contact-grid textarea{min-height:132px;resize:vertical}
  .privacy-prompt,.connection-note{font-size:.77rem;line-height:1.55}
  .request{
    min-height:54px;
    border-radius:999px;
    font-size:.9rem;
    font-weight:700;
  }
  .booking-status{font-size:.86rem;line-height:1.5}

  /* FAQ */
  .faq-list{gap:8px}
  .faq-list details,.faq-list details[open]{
    border-radius:20px;
    padding:0 1.1rem;
  }
  .faq-list summary{
    min-height:66px;
    padding:1rem 2rem 1rem 0;
    font-size:1.08rem;
    line-height:1.28;
  }
  .faq-list details p{font-size:.9rem;line-height:1.62;padding-bottom:1.2rem}

  /* Location and close */
  .location{
    grid-template-columns:1fr;
    min-height:0;
    margin:8px;
    border-radius:30px;
    overflow:hidden;
  }
  .location>img{height:320px;min-height:0}
  .location>div{padding:4rem var(--mobile-gutter)}
  .location h2,.final h2{font-size:clamp(3.1rem,14vw,4.35rem)}
  .location p:not(.eyebrow){font-size:.95rem;line-height:1.65}
  .final{
    margin:8px;
    padding:4.6rem var(--mobile-gutter);
    border-radius:30px;
  }
  .final .button{
    width:100%;
    max-width:330px;
    min-height:54px;
    border-radius:999px;
    align-items:center;
    justify-content:center;
  }

  /* Mobile conversion bar + footer */
  .mobile-enquire{
    display:flex;
    position:fixed;
    z-index:100;
    left:12px;
    right:12px;
    bottom:max(10px,env(safe-area-inset-bottom));
    height:54px;
    border-radius:999px;
    background:#244b3c;
    color:#fff;
    align-items:center;
    justify-content:center;
    font-size:.82rem;
    font-weight:700;
    border:1px solid rgba(255,255,255,.28);
    box-shadow:0 10px 28px rgba(16,39,31,.26);
  }
  footer{
    grid-template-columns:1fr;
    gap:1.5rem;
    padding:4rem var(--mobile-gutter) calc(3rem + env(safe-area-inset-bottom));
    text-align:left;
  }
  footer .wordmark{grid-column:auto}
  .footer-links{flex-direction:column;align-items:flex-start;gap:.9rem}
  .footer-links a{min-height:30px;display:flex;align-items:center}
}

@media(max-width:390px){
  :root{--mobile-gutter:17px}
  .site-header{padding-inline:12px}
  .site-header .brand-logo{width:82px}
  .site-header .wordmark .brand-main>span{font-size:1.65rem}
  .header-cta{padding:.65rem .78rem;font-size:.65rem}
  .splash-brand .brand-main>span{font-size:24vw}
  .hero-copy h1{font-size:15.7vw}
  .meta span{font-size:.53rem}
  .meta b{font-size:.62rem}
  .practitioner-fit,.process-section,.appointment,.independent-section,.faq-section{padding-inline:14px}
}

@media(hover:none) and (pointer:coarse){
  .button,.header-cta,.splash-cta,.mobile-enquire,.request,
  .faq-list summary,.footer-links a{touch-action:manipulation}
}


/* Confirmed premises: three rooms and Market Place address */
@media(min-width:1001px){
  .room-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.location-address{
  margin:1.5rem 0 1.25rem;
  font:500 clamp(1.45rem,2.2vw,2rem)/1.25 "Cormorant Garamond",serif;
  font-style:normal;
  letter-spacing:-.015em;
}
.location-address a{
  display:inline-block;
  border-bottom:1px solid currentColor;
  padding-bottom:.35rem;
}
@media(max-width:760px){
  .location-address{font-size:1.55rem;margin:1.25rem 0}
  .location-address a{min-height:54px}
}


/* Early location proof — directly below the opening hero */
.location-preview{
  margin:12px;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  min-height:620px;
  border-radius:48px;
  overflow:hidden;
  background:#eef1ea;
  color:#244b3c;
}
.location-preview-photo{position:relative;min-height:620px;overflow:hidden}
.location-preview-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}
.location-preview-photo span{
  position:absolute;
  left:22px;
  bottom:22px;
  padding:.8rem 1rem;
  border:1px solid rgba(255,255,255,.5);
  border-radius:999px;
  background:rgba(28,58,47,.74);
  color:#fff;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font-size:.7rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.location-preview-copy{
  padding:clamp(4rem,7vw,7.5rem) clamp(2rem,5vw,6rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.location-preview-copy h2{
  font-size:clamp(3.7rem,5.6vw,6.2rem);
  line-height:.88;
}
.location-preview-copy>p:not(.eyebrow){
  max-width:580px;
  margin:1.8rem 0 1.4rem;
  color:#54665e;
  font-size:1rem;
  line-height:1.75;
}
.location-preview-copy address{
  margin:0 0 2rem;
  font:500 1.5rem/1.32 "Cormorant Garamond",serif;
  font-style:normal;
}
.location-preview-actions{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}
.location-preview-actions .button{
  min-height:54px;
  border-radius:999px;
  background:#244b3c;
  color:#fff;
  align-items:center;
}
.location-preview-actions .map-link{
  padding:.35rem 0;
  border-bottom:1px solid rgba(36,75,60,.48);
  font-size:.8rem;
}
@media(max-width:900px){
  .location-preview{grid-template-columns:1fr;min-height:0;border-radius:38px}
  .location-preview-photo{min-height:500px;height:62svh}
  .location-preview-copy{padding:5rem 7vw}
}
@media(max-width:760px){
  .location-preview{
    margin:8px;
    border-radius:30px;
  }
  .location-preview-photo{min-height:340px;height:54svh;max-height:470px}
  .location-preview-photo span{left:14px;bottom:14px;font-size:.6rem}
  .location-preview-copy{padding:4.2rem 20px}
  .location-preview-copy h2{font-size:clamp(3.05rem,14vw,4.3rem)}
  .location-preview-copy>p:not(.eyebrow){font-size:.95rem;line-height:1.65}
  .location-preview-copy address{font-size:1.4rem}
  .location-preview-actions{flex-direction:column;align-items:stretch;gap:.75rem}
  .location-preview-actions .button,.location-preview-actions .map-link{
    width:100%;
    min-height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-radius:999px;
  }
  .location-preview-actions .map-link{border:1px solid rgba(36,75,60,.18)}
}
