:root{--navy:#050b1c;--bone:#f6f0e8;--copper:#c1734d;--copper2:#e7a077;--choc:#28180f;--ink:#101827;--soft:#fffaf3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);font-family:Inter,system-ui,sans-serif;color:var(--soft);overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.cursor-glow{position:fixed;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(193,115,77,.2),transparent 62%);pointer-events:none;z-index:2;mix-blend-mode:screen;transform:translate(-50%,-50%);opacity:.85}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:16px 6vw;background:linear-gradient(180deg,rgba(5,11,28,.82),rgba(5,11,28,0));backdrop-filter:blur(6px);transition:.35s}.site-header.scrolled{background:rgba(5,11,28,.76);border-bottom:1px solid rgba(193,115,77,.18)}.brand img{width:124px;filter:drop-shadow(0 10px 22px rgba(0,0,0,.35))}nav{display:flex;gap:24px;align-items:center;text-transform:uppercase;letter-spacing:.18em;font-size:11px}nav a{opacity:.86}.reserve{border:1px solid var(--copper);padding:12px 18px;color:var(--copper2)}.section{position:relative;min-height:100vh;padding:110px 6vw;overflow:hidden}.container{max-width:1180px;margin:0 auto}.hero{display:flex;align-items:center;background:#050b1c}.hero-bg{position:absolute;inset:0;background-image:url('assets/hero-real.jpg');background-size:cover;background-position:76% 42%;transform:scale(1.01);animation:heroDrift 18s ease-in-out infinite alternate}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,11,28,.94) 0%,rgba(5,11,28,.72) 38%,rgba(5,11,28,.08) 100%)}.hero-halo{position:absolute;inset:0;background:radial-gradient(circle at var(--mx,30%) var(--my,45%),rgba(193,115,77,.16),transparent 28%);z-index:1}.hero-content{position:relative;z-index:3;max-width:600px}.hero-logo{width:min(520px,80vw);margin-bottom:14px;filter:drop-shadow(0 18px 40px rgba(0,0,0,.55))}.eyebrow{text-transform:uppercase;letter-spacing:.32em;font-size:12px}.copper{color:var(--copper)}h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:400;line-height:.95;margin:0}h1{font-size:clamp(62px,8.5vw,120px)}h2{font-size:clamp(54px,8vw,118px)}h3{font-size:clamp(34px,4vw,54px)}.lead{font-size:clamp(18px,2.1vw,24px);line-height:1.7;max-width:760px;margin:26px auto}.btn,.email-form button{display:inline-flex;align-items:center;justify-content:center;background:var(--copper);color:white;border:1px solid var(--copper);padding:18px 34px;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.btn.ghost{background:rgba(255,255,255,.04);border-color:rgba(193,115,77,.8)}.bone{background:radial-gradient(circle at 20% 0%,#fff 0,#f6f0e8 42%,#eee3d8 100%);color:var(--ink)}.navy{background:linear-gradient(135deg,#050b1c,#111827);color:var(--soft)}.centered{text-align:center}.why-kicker{font-size:clamp(24px,3.4vw,52px);letter-spacing:.2em}.why h2{font-size:clamp(76px,10vw,150px)}.breath-card{margin:55px auto 0;max-width:430px}.breath-circle{width:160px;height:160px;margin:0 auto 25px;border:1px solid var(--copper);border-radius:50%;animation:breathe 7s ease-in-out infinite;background:rgba(193,115,77,.07);box-shadow:0 0 45px rgba(193,115,77,.18)}@keyframes breathe{0%,100%{transform:scale(.76);opacity:.7}50%{transform:scale(1.14);opacity:1}}.section-heading{margin-bottom:60px}.section-heading p{max-width:620px;line-height:1.8}.experience-grid,.rhythm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card,.rhythm-card{cursor:pointer;border:1px solid rgba(193,115,77,.28);background:rgba(255,255,255,.06);padding:22px;min-height:500px;transition:transform .35s ease,border-color .35s ease}.service-card:hover,.rhythm-card:hover{transform:translateY(-8px);border-color:var(--copper)}.service-card span{color:var(--copper);letter-spacing:.25em}.service-card p,.rhythm-card p{line-height:1.7}.service-card h3{white-space:nowrap;font-size:clamp(34px,3.5vw,50px)}.service-image{height:310px;margin:-2px -2px 28px;border:1px solid rgba(255,255,255,.12);background-size:cover;background-position:center;box-shadow:inset 0 -80px 120px rgba(0,0,0,.25)}.image-temple{background-image:linear-gradient(rgba(5,11,28,.08),rgba(5,11,28,.18)),url('assets/service-temple.jpg');background-position:center}.image-sole{background-image:linear-gradient(rgba(5,11,28,.08),rgba(5,11,28,.18)),url('assets/service-sole.jpg');background-position:center}.image-reset{background-image:linear-gradient(rgba(5,11,28,.05),rgba(5,11,28,.2)),url('assets/service-reset.jpg');background-position:center}.rhythm-card{background:rgba(255,255,255,.55);box-shadow:0 30px 80px rgba(40,24,15,.08);text-align:center;color:var(--ink)}.rhythm-card img{height:150px;object-fit:contain;margin:0 auto 25px}.studio{display:grid;grid-template-columns:1.05fr .95fr;gap:0;padding:0;min-height:100vh}.studio-photo{min-height:100vh;background:linear-gradient(90deg,rgba(5,11,28,.05),rgba(5,11,28,.38)),url('assets/studio-photo.jpg') center/cover no-repeat}.studio-copy{display:flex;flex-direction:column;justify-content:center;padding:8vw;background:linear-gradient(135deg,#050b1c,#0b1020)}.studio-copy p:not(.eyebrow){font-size:18px;line-height:1.8;color:rgba(255,255,255,.72)}.coming .eyebrow{font-size:clamp(26px,4vw,62px);letter-spacing:.22em}.coming h2{font-size:clamp(72px,10vw,145px)}.email-form{margin:46px auto 0;max-width:680px}.email-form label{display:block;font-family:'Cormorant Garamond',serif;font-size:38px;margin-bottom:20px}.email-row{display:flex;gap:12px}.email-row input{flex:1;border:1px solid rgba(40,24,15,.2);background:white;padding:18px 20px;font:inherit}.email-form small{display:block;margin-top:14px;opacity:.72}footer{padding:80px 6vw;text-align:center;background:var(--navy);color:var(--soft)}footer img{width:220px;margin:0 auto 20px}.modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.65);display:none;align-items:center;justify-content:center;padding:24px}.modal.active{display:flex}.modal-panel{max-width:680px;background:var(--bone);color:var(--ink);padding:46px;position:relative;box-shadow:0 30px 100px rgba(0,0,0,.4)}.modal-panel p{font-size:18px;line-height:1.8}.modal-panel .btn{margin-top:12px}.close{position:absolute;top:12px;right:15px;border:0;background:transparent;font-size:36px;cursor:pointer;color:var(--choc)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@keyframes heroDrift{to{transform:scale(1.035) translateX(-.6%) translateY(.6%)}}@media(max-width:1000px){nav a:not(.reserve){display:none}.experience-grid,.rhythm-grid,.studio{grid-template-columns:1fr}.studio-photo{min-height:70vh}.service-card h3{white-space:normal}}@media(max-width:900px){.brand img{width:100px}.hero{min-height:90vh}.hero-bg{background-position:72% 34%}.hero-overlay{background:linear-gradient(90deg,rgba(5,11,28,.93),rgba(5,11,28,.55))}.section{padding:96px 22px}.experience-grid,.rhythm-grid{grid-template-columns:1fr}.service-card{min-height:auto}.email-row{flex-direction:column}.hero-logo{width:310px}h1{font-size:64px}.why h2,.coming h2{font-size:70px}.cursor-glow{display:none}.studio{padding:0}.studio-copy{padding:80px 24px}}

.hidden{display:none!important}.thank-you-page{min-height:100vh;display:flex;align-items:center;padding:110px 6vw}.thank-logo{width:min(420px,80vw);margin:0 auto 34px;filter:drop-shadow(0 18px 36px rgba(40,24,15,.14))}
/* V7 refinements */
.hero-bg{background-position:78% 30%;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.breath-prompt{position:absolute;right:5vw;bottom:18vh;z-index:3;text-transform:uppercase;letter-spacing:.28em;font-size:12px;color:var(--copper2);text-align:center}.mini-breath{width:110px;height:110px;border:1px solid var(--copper2);border-radius:50%;margin:14px auto;animation:breathe 7s ease-in-out infinite;box-shadow:0 0 32px rgba(231,160,119,.26)}.service-card{position:relative;overflow:hidden}.service-card .service-image{position:relative;overflow:hidden}.service-card .service-image::before{content:"";position:absolute;inset:-20%;opacity:0;transition:opacity .7s ease;pointer-events:none}.ripple-card .service-image::before{background:repeating-radial-gradient(circle at 50% 58%,rgba(231,160,119,.18) 0 1px,transparent 2px 28px);animation:slowRipple 14s linear infinite}.light-card .service-image::before{background:linear-gradient(110deg,transparent 0%,rgba(231,160,119,.18) 45%,transparent 65%);transform:translateX(-25%);animation:lightSweep 15s ease-in-out infinite}.steam-card .service-image::before{background:radial-gradient(ellipse at 52% 60%,rgba(255,255,255,.14),transparent 40%);filter:blur(10px);animation:steamFloat 13s ease-in-out infinite}.service-card:hover .service-image::before{opacity:1}@keyframes slowRipple{to{transform:scale(1.08)}}@keyframes lightSweep{50%{transform:translateX(20%)}}@keyframes steamFloat{50%{transform:translateY(-12px)}}.booking-transition{position:fixed;inset:0;z-index:999;background:rgba(5,11,28,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s ease}.booking-transition.active{opacity:1;pointer-events:auto}.transition-circle{width:150px;height:150px;border:1px solid var(--copper2);border-radius:50%;animation:breathe 1.8s ease-in-out infinite;box-shadow:0 0 50px rgba(231,160,119,.28)}.booking-transition p{display:flex;flex-direction:column;gap:10px;align-items:center;text-transform:uppercase;letter-spacing:.22em;color:var(--copper2);font-size:12px}.booking-transition strong{color:#fff;font-weight:400}.form-promise{font-size:18px;line-height:1.7;margin-top:-8px;margin-bottom:24px}.reserve-page{display:flex;align-items:center;min-height:100vh}.reserve-logo{width:min(360px,70vw);margin:0 auto 24px;filter:drop-shadow(0 18px 40px rgba(0,0,0,.45))}.reserve-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}.reserve-choice{border:1px solid rgba(193,115,77,.45);padding:34px 20px;min-height:170px;display:flex;flex-direction:column;justify-content:center;gap:14px;background:rgba(255,255,255,.04);transition:transform .35s ease,border-color .35s ease,background .35s ease}.reserve-choice:hover{transform:translateY(-8px);border-color:var(--copper2);background:rgba(193,115,77,.09)}.reserve-choice span{font-family:'Cormorant Garamond',serif;font-size:42px}.reserve-choice small{text-transform:uppercase;letter-spacing:.22em;color:rgba(255,255,255,.68)}
@media(max-width:900px){.hero-bg{background-position:73% 22%;}.breath-prompt{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.reserve-grid{grid-template-columns:1fr}.reserve-choice span{font-size:36px}}

/* Final polish refinements */
:root{--radius:28px;--radius-sm:18px}
.site-header{padding-top:18px;padding-bottom:18px}.brand img{width:138px}.hero-bg{background-position:76% 16%!important;filter:saturate(.96) contrast(1.03)}.hero-logo{width:min(560px,82vw);image-rendering:auto;filter:drop-shadow(0 20px 42px rgba(0,0,0,.55))}.hero-content .eyebrow{color:var(--copper2);margin-top:6px}.hero-content h1{font-size:clamp(58px,7vw,108px);margin-top:8px}.hero-actions .btn{border-radius:var(--radius-sm);transition:transform .55s cubic-bezier(.19,1,.22,1),background .55s ease,border-color .55s ease}.hero-actions .btn:hover{transform:translateY(-4px)}.btn,.email-form button,.reserve{border-radius:var(--radius-sm)}
.breath-card,.modal-panel,.reserve-choice,.service-card,.rhythm-card,.email-row input{border-radius:var(--radius)}.service-image{border-radius:calc(var(--radius) - 8px)}.modal-panel{border:1px solid rgba(193,115,77,.28)}
.service-card,.rhythm-card{transition:transform .75s cubic-bezier(.19,1,.22,1),border-color .75s ease,box-shadow .75s ease}.service-card:hover,.rhythm-card:hover{transform:translateY(-10px);box-shadow:0 35px 90px rgba(0,0,0,.24)}.service-card .service-image{height:340px}.image-reset{background-position:center 42%}.image-temple{background-position:center 45%}.image-sole{background-position:center 52%}.experience-grid{gap:26px}.service-card{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border-color:rgba(193,115,77,.36)}
.why{padding-top:140px;padding-bottom:140px}.why-kicker{font-size:clamp(34px,4vw,68px);margin-bottom:28px}.breath-circle{width:190px;height:190px}.mini-breath{width:132px;height:132px}.breath-prompt{right:4.4vw;bottom:15vh}.coming .eyebrow{font-size:clamp(34px,4.8vw,78px);margin-bottom:22px}.coming h2{font-size:clamp(76px,10.5vw,152px)}.email-form{padding:36px;background:rgba(255,255,255,.42);border:1px solid rgba(193,115,77,.22);border-radius:var(--radius);box-shadow:0 35px 90px rgba(40,24,15,.08)}.email-form button{white-space:nowrap}.studio-photo{background-position:center 45%}.rhythm-card{border-color:rgba(193,115,77,.2);border-radius:32px}.rhythm-card img{filter:drop-shadow(0 18px 30px rgba(193,115,77,.18));transition:transform 1.2s cubic-bezier(.19,1,.22,1)}.rhythm-card:hover img{transform:rotate(2deg) scale(1.03)}
@media(max-width:900px){.hero-bg{background-position:74% 10%!important}.brand img{width:112px}.service-card .service-image{height:300px}.hero-logo{width:330px}.email-form{padding:26px}.email-form button{width:100%}}

/* V9 logo + breathing cleanup */
.brand img,.hero-logo,.reserve-logo,footer img,.thank-logo{background:transparent!important;mix-blend-mode:normal;}
.brand img{width:128px;height:auto;object-fit:contain;}
.hero-logo{width:min(500px,78vw);height:auto;object-fit:contain;}
.reserve-logo{width:min(360px,70vw);height:auto;}
footer img{width:210px;height:auto;}
.thank-logo{width:min(360px,78vw);height:auto;}
/* keep the signature breathing moment in Our Why + the booking transition only */
.breath-prompt,.mini-breath{display:none!important;}
@media(max-width:900px){.hero-logo{width:310px}.brand img{width:104px}}


/* V10 launch polish: socials, functioning form, cinematic service effects */
.brand img,.hero-logo,.reserve-logo,footer img,.thank-logo{background:transparent!important;box-shadow:none!important;}
footer .social-links,.reserve-footer .social-links{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;margin-top:22px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:rgba(255,250,243,.78)}
footer .social-links a,.reserve-footer .social-links a{transition:color .35s ease,opacity .35s ease;color:rgba(255,250,243,.78)}
footer .social-links a:hover,.reserve-footer .social-links a:hover{color:var(--copper2);opacity:1}
.reserve-footer{padding:56px 6vw;background:#050b1c;border-top:1px solid rgba(193,115,77,.18)}
.reserve-footer img{width:170px;margin:0 auto 8px}.form-status{min-height:24px;margin:18px 0 0;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--choc)}
.email-form.is-submitting{opacity:.76;pointer-events:none}.email-form.is-submitting button::after{content:'...';}
/* Make the experience-card motion visible without feeling busy */
.service-card .service-image::before,.service-card .service-image::after{content:"";position:absolute;inset:-22%;pointer-events:none;opacity:.22;transition:opacity .8s ease,transform .8s cubic-bezier(.19,1,.22,1);mix-blend-mode:screen;z-index:1}.service-card:hover .service-image::before,.service-card:hover .service-image::after{opacity:.72}.service-card .service-image{isolation:isolate;transform:translateZ(0)}
.ripple-card .service-image::before{background:repeating-radial-gradient(circle at 42% 50%,rgba(231,160,119,.22) 0 1px,transparent 2px 22px);animation:pourRipple 12s linear infinite}.ripple-card .service-image::after{background:radial-gradient(circle at 42% 50%,rgba(255,255,255,.14),transparent 28%);animation:pourRipplePulse 7s ease-in-out infinite}
.light-card .service-image::before{background:linear-gradient(115deg,transparent 8%,rgba(255,225,184,.18) 36%,rgba(231,160,119,.22) 48%,transparent 68%);animation:pourSunSweep 14s ease-in-out infinite}.light-card .service-image::after{background:radial-gradient(circle at 72% 16%,rgba(255,218,163,.22),transparent 26%);animation:pourSunGlow 9s ease-in-out infinite}
.steam-card .service-image::before{background:radial-gradient(ellipse at 62% 62%,rgba(255,255,255,.16),transparent 28%),radial-gradient(ellipse at 45% 58%,rgba(231,160,119,.12),transparent 34%);filter:blur(12px);animation:pourSteam 10s ease-in-out infinite}.steam-card .service-image::after{background:linear-gradient(180deg,transparent 10%,rgba(255,255,255,.10) 48%,transparent 70%);filter:blur(18px);animation:pourSteamRise 12s ease-in-out infinite}
@keyframes pourRipple{0%{transform:scale(.92);opacity:.20}50%{transform:scale(1.08);opacity:.55}100%{transform:scale(1.22);opacity:.18}}
@keyframes pourRipplePulse{50%{transform:scale(1.16);opacity:.42}}
@keyframes pourSunSweep{0%,100%{transform:translateX(-30%)}50%{transform:translateX(22%)}}
@keyframes pourSunGlow{50%{transform:scale(1.08);opacity:.62}}
@keyframes pourSteam{0%,100%{transform:translateY(10px) scale(.98);opacity:.20}50%{transform:translateY(-16px) scale(1.05);opacity:.64}}
@keyframes pourSteamRise{0%,100%{transform:translateY(14px);opacity:.12}50%{transform:translateY(-18px);opacity:.42}}
@media(max-width:900px){footer .social-links,.reserve-footer .social-links{font-size:10px;gap:10px}.service-card .service-image::before,.service-card .service-image::after{opacity:.35}}
.email-form button:disabled{opacity:.62;cursor:wait}.form-status{min-height:24px;margin-top:14px;font-size:14px;letter-spacing:.08em;color:var(--copper)}.hidden{display:none!important}


/* V13 service effects: original images stay unchanged; effects appear only on hover */
.svg-filters{position:absolute;width:0;height:0;overflow:hidden}

/* Typography refinements requested */
.why-kicker{
  font-size:clamp(14px,1.3vw,20px)!important;
  letter-spacing:.34em!important;
  margin-bottom:20px!important;
}
.coming .eyebrow{
  font-size:clamp(15px,1.5vw,24px)!important;
  letter-spacing:.32em!important;
  margin-bottom:18px!important;
}
.coming h2{
  font-size:clamp(44px,6vw,84px)!important;
  line-height:1!important;
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}

/* Remove previous always-on overlays and rebuild the three hover states cleanly */
.service-card .service-image{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.service-card .service-image::before,
.service-card .service-image::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0!important;
  transition:opacity .85s ease, transform 1.2s cubic-bezier(.19,1,.22,1);
  z-index:2;
}
.service-card:hover .service-image::before,
.service-card:hover .service-image::after{
  opacity:1!important;
}

/* The Reset: actual image distortion/ripple + soft concentric water rings */
.ripple-card .service-image::before{
  background-image:linear-gradient(rgba(5,11,28,.03),rgba(5,11,28,.10)),url('assets/service-reset.jpg');
  background-size:cover;
  background-position:center 42%;
  filter:url(#pourWaterRipple);
  transform:scale(1.012);
  mix-blend-mode:normal;
  animation:resetImageRipple 12s ease-in-out infinite;
}
.ripple-card .service-image::after{
  inset:-18%;
  background:
    repeating-radial-gradient(circle at 42% 52%, rgba(231,160,119,.28) 0 1px, transparent 2px 34px),
    radial-gradient(circle at 42% 52%, rgba(255,255,255,.16), transparent 25%);
  mix-blend-mode:screen;
  animation:resetRingRipple 11s linear infinite;
}
@keyframes resetImageRipple{
  0%,100%{transform:scale(1.01) translate3d(0,0,0)}
  45%{transform:scale(1.035) translate3d(.45%,-.25%,0)}
  70%{transform:scale(1.02) translate3d(-.35%,.22%,0)}
}
@keyframes resetRingRipple{
  0%{transform:scale(.86);opacity:.18}
  45%{transform:scale(1.08);opacity:.56}
  100%{transform:scale(1.34);opacity:.10}
}

/* Temple Reset: warm sun rays sweep over the existing image */
.light-card .service-image::before{
  inset:-35%;
  background:
    radial-gradient(circle at 16% 0%, rgba(255,224,176,.52), transparent 18%),
    repeating-conic-gradient(from 200deg at 16% -4%, transparent 0deg 8deg, rgba(255,218,160,.32) 9deg 12deg, transparent 13deg 25deg);
  mix-blend-mode:screen;
  filter:blur(.4px);
  transform:rotate(-7deg) translate3d(-10%,-4%,0);
  animation:templeSunRays 12s ease-in-out infinite;
}
.light-card .service-image::after{
  inset:-18%;
  background:linear-gradient(112deg, transparent 18%, rgba(255,236,200,.26) 40%, rgba(231,160,119,.18) 50%, transparent 68%);
  mix-blend-mode:screen;
  transform:translateX(-20%);
  animation:templeSunSweep 9s ease-in-out infinite;
}
@keyframes templeSunRays{
  0%,100%{transform:rotate(-7deg) translate3d(-12%,-5%,0);opacity:.28}
  50%{transform:rotate(-3deg) translate3d(2%,1%,0);opacity:.72}
}
@keyframes templeSunSweep{
  0%,100%{transform:translateX(-28%);opacity:.18}
  50%{transform:translateX(24%);opacity:.58}
}

/* Sole Reset: visible soft steam rising from the foot soak */
.steam-card .service-image::before{
  inset:0;
  background:
    radial-gradient(ellipse at 68% 54%, rgba(255,255,255,.34), transparent 22%),
    radial-gradient(ellipse at 52% 58%, rgba(255,255,255,.22), transparent 24%),
    radial-gradient(ellipse at 78% 62%, rgba(231,160,119,.18), transparent 28%);
  filter:blur(16px);
  mix-blend-mode:screen;
  transform:translateY(22px);
  animation:soleSteamRise 7s ease-in-out infinite;
}
.steam-card .service-image::after{
  inset:8% 8% 18% 16%;
  background:
    radial-gradient(ellipse at 62% 78%, rgba(255,255,255,.20), transparent 18%),
    radial-gradient(ellipse at 72% 70%, rgba(255,255,255,.18), transparent 22%),
    linear-gradient(75deg, transparent 38%, rgba(255,255,255,.15) 48%, transparent 58%);
  filter:blur(22px);
  mix-blend-mode:screen;
  transform:translateY(28px) scale(.95);
  animation:soleSteamDrift 9s ease-in-out infinite;
}
@keyframes soleSteamRise{
  0%,100%{transform:translateY(24px) scale(.96);opacity:.14}
  45%{transform:translateY(-22px) scale(1.08);opacity:.62}
  75%{transform:translateY(-36px) scale(1.16);opacity:.32}
}
@keyframes soleSteamDrift{
  0%,100%{transform:translate3d(-8px,26px,0) scale(.95);opacity:.12}
  50%{transform:translate3d(14px,-26px,0) scale(1.1);opacity:.48}
}

/* native Netlify form: no script interception */
.email-form button:disabled{opacity:1;cursor:pointer}
@media(max-width:900px){
  .coming h2{font-size:clamp(40px,12vw,66px)!important}
  .why-kicker,.coming .eyebrow{font-size:13px!important}
}


/* V14 email form fix: no thank-you redirect needed, success appears inline */
.email-form.submitted{
  border-color:rgba(193,115,77,.38);
  box-shadow:0 24px 70px rgba(193,115,77,.10);
}
.email-form.submitted .form-status{
  padding:16px 18px;
  border:1px solid rgba(193,115,77,.32);
  background:rgba(193,115,77,.08);
  color:var(--choc);
  line-height:1.6;
  text-transform:none;
  letter-spacing:.04em;
}
.email-form.submitted .form-status strong{
  color:var(--copper);
  font-family:'Cormorant Garamond',serif;
  font-size:24px;
  font-weight:400;
}


/* V16 form fix: hidden Netlify blueprint + inline success, no redirect page */
.netlify-form-blueprint{display:none!important;visibility:hidden!important;position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.email-form .form-status:empty{display:none}
.email-form .form-status{display:block;margin-top:16px;line-height:1.6;text-transform:none;font-size:15px;letter-spacing:.03em;color:var(--choc);min-height:0}
.email-form .form-status strong{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;color:var(--choc)}
.email-form.submitted{border-color:rgba(193,115,77,.42);box-shadow:0 35px 100px rgba(193,115,77,.14)}
.email-form.is-submitting{opacity:.78;pointer-events:none}


/* V19: embedded Vagaro booking widget */
.reserve-widget-page .container{max-width:1180px;}
.booking-widget-shell{margin:42px auto 0;width:min(1120px,100%);min-height:780px;border:1px solid rgba(193,115,77,.34);border-radius:28px;overflow:hidden;background:rgba(255,255,255,.96);box-shadow:0 36px 120px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.05) inset;}
.vagaro-widget{display:block;width:100%;height:840px;border:0;background:#fff;}
.widget-helper{margin:18px auto 0;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.58);}
.widget-helper a{color:var(--copper2);border-bottom:1px solid rgba(231,160,119,.55);}
.reserve-widget-page h1{font-size:clamp(58px,7vw,110px);}
@media(max-width:900px){.booking-widget-shell{min-height:720px;border-radius:18px;margin-top:28px}.vagaro-widget{height:760px}.reserve-widget-page .lead{font-size:17px}.widget-helper{font-size:11px;line-height:1.7}}


/* POUR V1.0 — FAQ, Contact, Poured Pages, and launch polish */
footer address{font-style:normal;line-height:1.8;color:rgba(255,255,255,.72);margin:12px 0}.footer-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:16px 0}.footer-links a{color:var(--copper2)}
.inner-page{padding-top:84px}.page-hero{padding:150px 0 90px}.page-hero h1,.article-hero h1{font-size:clamp(58px,9vw,118px);margin:.15em 0}.faq-wrap{max-width:900px}.faq-group{margin-bottom:64px}.faq-group h2{font-size:clamp(38px,5vw,62px);margin-bottom:24px}.faq-group details{border-top:1px solid rgba(89,48,16,.18);padding:0}.faq-group details:last-child{border-bottom:1px solid rgba(89,48,16,.18)}.faq-group summary{cursor:pointer;list-style:none;padding:24px 44px 24px 0;font-size:18px;font-weight:500;position:relative}.faq-group summary::-webkit-details-marker{display:none}.faq-group summary:after{content:'+';position:absolute;right:8px;top:20px;font-family:'Cormorant Garamond',serif;font-size:30px;color:var(--copper)}.faq-group details[open] summary:after{content:'–'}.faq-group details p{padding:0 40px 24px 0;line-height:1.8;color:rgba(50,35,25,.78)}.faq-cta{text-align:center;padding:64px 24px 20px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}.contact-card,.contact-form{background:#fff;padding:42px;border:1px solid rgba(193,115,77,.22);box-shadow:0 28px 80px rgba(89,48,16,.08)}.contact-card h2{font-size:48px}.contact-card p{line-height:1.9}.contact-form label{display:block;margin-bottom:20px;font-size:13px;text-transform:uppercase;letter-spacing:.12em}.contact-form input,.contact-form textarea{width:100%;margin-top:9px;padding:15px;border:1px solid rgba(89,48,16,.22);background:#fbf8f3;font:inherit}.journal-preview .section-heading{max-width:720px}.journal-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:0;margin-top:42px;background:rgba(255,255,255,.05);border:1px solid rgba(231,160,119,.22)}.journal-feature-image,.journal-card-image,.article-image{background-image:linear-gradient(rgba(1,9,84,.12),rgba(1,9,84,.12)),url('/assets/poured-pages-rhythm.jpg');background-size:cover;background-position:center}.journal-feature-image{min-height:480px}.journal-feature-copy{padding:56px;align-self:center}.journal-feature-copy h3{font-size:clamp(38px,4.7vw,66px);line-height:1.02}.journal-grid{max-width:960px}.journal-card{background:#fff;padding:28px;border:1px solid rgba(193,115,77,.2)}.journal-card-image{height:460px;margin-bottom:30px}.journal-card h2{font-size:clamp(40px,5.5vw,68px)}.text-link{color:var(--copper);font-weight:600}.article-hero{padding:160px 0 90px}.article-header{max-width:980px}.article-deck{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,48px);color:rgba(255,255,255,.78)}.article-meta{letter-spacing:.1em;text-transform:uppercase;font-size:12px;color:rgba(255,255,255,.55)}.article-image{height:min(62vw,760px);background-position:center 30%}.article-body{max-width:760px;margin:0 auto;padding:80px 28px 110px;font-size:18px;line-height:1.9}.article-body h2{font-size:42px;margin:58px 0 14px}.article-body blockquote{font-family:'Cormorant Garamond',serif;font-size:38px;line-height:1.2;border-left:2px solid var(--copper);padding-left:28px;margin:58px 0;color:var(--choc)}.dropcap:first-letter{float:left;font-family:'Cormorant Garamond',serif;font-size:88px;line-height:.75;padding:10px 12px 0 0;color:var(--copper)}.article-cta{text-align:center;margin-top:80px;padding:55px 30px;background:#f2ece3}.hidden{position:absolute!important;left:-9999px!important}
@media(max-width:900px){.site-header nav a:not(.reserve){display:none}.contact-grid,.journal-feature{grid-template-columns:1fr}.journal-feature-image{min-height:320px}.journal-feature-copy{padding:32px}.journal-card-image{height:300px}.page-hero{padding:120px 0 70px}.contact-card,.contact-form{padding:28px}.article-body{padding-top:54px}.article-body h2{font-size:34px}}
