.booking-policy{padding:20px 22px;border:1px solid #b8ac8c66;border-radius:12px;background:linear-gradient(130deg,#fffaf0,#e9e4d4);margin:20px 0}
.booking-policy .eyebrow{margin-bottom:12px}.booking-policy p{font-size:16px;line-height:1.75;margin:8px 0}.booking-policy .text-link{font-size:16px;margin-top:12px}
.information-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:75px;padding-top:10px;align-items:start}.information-grid h2{font-size:36.8px}.information-grid h3{font-size:30.2px;margin:35px 0 16px}.information-grid p{font-size:16px;line-height:1.8;margin:20px 0}.information-grid .button{margin-top:10px}.information-grid aside{padding:28px;border:1px solid #c9b98f70;border-radius:14px;background:linear-gradient(130deg,#f7f4e9,#e5dfce)}.information-grid .booking-policy{margin-top:0}.information-grid .rental-note h3{margin-top:15px;font-size:33.5px}.information-grid ul{padding-left:18px;line-height:2;color:var(--muted);margin:25px 0}.secondary-action{margin-left:18px}
.appointment-form select{width:100%;min-height:46px;border:1px solid #c9b98f88;border-radius:7px;background:#fffaf4;color:var(--ink);padding:10px 12px;font:inherit;margin:5px 0 15px}.appointment-form .form-status{font-size:16px}.appointment-consent{font-size:16px;line-height:1.6;margin:15px 0}.availability-copy{padding:15px 0;font-size:16px}.article-pricing{border-top:1px solid var(--line);margin-top:36px;padding-top:22px;font-size:16px}
@media(max-width:760px){.information-grid{grid-template-columns:1fr;gap:35px}.information-grid h2{font-size:33.5px}.information-grid aside{padding:22px}.information-grid p{font-size:16px}}

/* Featured service: a clear treatment name and prominent price. */
.hydro-spotlight{padding-bottom:30px}
.hydro-feature{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:44px;align-items:center;padding:46px;border:1px solid #a99a70;border-radius:22px;background:radial-gradient(ellipse at 0% 0%,#7b8060,transparent 65%),linear-gradient(115deg,#424c3d,#303c34);box-shadow:0 18px 45px #303c3425;color:#fff9e9}
.hydro-feature-copy{min-width:0}.hydro-feature-copy>.eyebrow{color:#e8d7a6;font-size:16px;letter-spacing:.17em}.hydro-feature-copy h2{color:#fff9e9;font-size:clamp(22px,2.7vw,39.8px);line-height:1.08;letter-spacing:-.035em;margin:18px 0}.hydro-feature-copy h2 span{display:block;font-size:18px;letter-spacing:0;margin-bottom:6px;color:#e8d7a6;font-style:italic}.hydro-feature-copy>p{max-width:510px;font-size:16px;line-height:1.75;color:#e6e8dc;margin:16px 0}.hydro-feature-copy .hydro-feature-tagline{font-family:var(--serif);font-size:22px;line-height:1.2;color:#fff9e9}.hydro-feature-tagline em{color:#e8d7a6}.hydro-steps{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:24px 0 0}.hydro-steps li{font-size:16px;padding:8px 12px;border:1px solid #e8d7a64d;border-radius:30px;color:#f3ead1;background:#ffffff08}
.hydro-feature-details{text-align:center;padding:30px 22px;border-radius:15px;border:1px solid #fff7dc;background:radial-gradient(ellipse at top,#fffced,#e3d5ac);color:#344036;box-shadow:0 10px 28px #15271b26}.hydro-feature-details>.eyebrow{font-size:16px;color:#575f49;letter-spacing:.15em}.hydro-feature-meta{margin:12px 0 24px;display:flex;flex-direction:column;align-items:center;gap:7px}.hydro-price{font-family:var(--serif);font-size:45px;line-height:1.05;font-weight:500;letter-spacing:-.055em;color:#344036}.hydro-duration{font-size:16px;font-weight:600}.hydro-feature-meta small{font-size:16px;color:#62664f}.hydro-feature-details .button{width:100%;font-size:16px;padding:16px 18px;gap:20px;min-height:48px}.hydro-feature-details .hydro-price-note{font-size:16px;line-height:1.5;margin:13px 0 0;color:#62664f}
@media(max-width:1000px){.hydro-feature{grid-template-columns:minmax(0,1fr) 240px;gap:25px;padding:32px}.hydro-feature-copy h2{font-size:32px}.hydro-feature-details{padding:25px 16px}}
@media(max-width:760px){.hydro-feature{grid-template-columns:1fr;gap:26px;padding:27px 22px}.hydro-feature-copy h2{font-size:clamp(22px,5.2vw,34.5px)}.hydro-feature-copy .hydro-feature-tagline{font-size:22px}.hydro-feature-copy>p{font-size:16px}.hydro-feature-details{padding:23px}.hydro-price{font-size:42.8px}.hydro-feature-meta{margin:8px 0 20px}.hydro-steps{gap:7px}.hydro-steps li{font-size:16px;padding:7px 10px}}

/* Match the treatment collection, with a dedicated featured-service price band. */
.hydro-feature{background:radial-gradient(ellipse at 15% 0,#b89d6250,transparent 65%),linear-gradient(145deg,#75755d,#4b5043 58%,#353b32);border:1px solid #d8c697;box-shadow:inset 0 2px 0 #fff4,0 18px 35px #151a1530}
.hydro-feature-details{background:none;border:0;box-shadow:none;padding:0;text-align:left;color:#fff5dc}.hydro-feature-details>.eyebrow{display:none}
.hydro-feature-meta{align-items:flex-start;padding:25px 27px;border:1px solid #f0e3c3;border-radius:12px;background:linear-gradient(120deg,#eee4c9,#c9b98f 65%,#b89d62);box-shadow:inset 0 2px 0 #fff9,0 7px 15px #20231c26;margin:0 0 23px;color:#30362b;gap:7px}.hydro-price{font-size:41.1px;font-weight:600;letter-spacing:-.035em;color:#30362b}.hydro-duration{font-size:16px;color:#30362b}.hydro-feature-meta small{font-size:16px;color:#484d3c}
.hydro-feature-details .button{width:auto;min-height:44px;padding:9px 0;background:none;box-shadow:none;border:0;border-bottom:1px solid #c9b98f;border-radius:0;color:#fff5dc;justify-content:space-between;gap:24px}.hydro-feature-details .button::before,.hydro-feature-details .button::after{display:none}.hydro-feature-details .hydro-price-note{color:#e0d8c3}
@media(max-width:760px){.hydro-feature-meta{padding:22px 25px}.hydro-price{font-size:39.8px}}
/* Slow, occasional gleam; text remains dark and readable throughout. */
.treatment-meta,.hydro-feature-meta{position:relative;overflow:hidden;isolation:isolate}
.treatment-meta::after,.hydro-feature-meta::after{content:"";position:absolute;inset:-50% auto -50% -65%;width:45%;pointer-events:none;background:linear-gradient(90deg,transparent,#fffaf06b,transparent);transform:translateX(-100%) rotate(20deg);opacity:0}
@media(prefers-reduced-motion:no-preference){.treatment-meta::after,.hydro-feature-meta::after{animation:price-gleam 7s ease-in-out infinite}.treatment-choice:nth-child(2) .treatment-meta::after{animation-delay:1s}.treatment-choice:nth-child(3) .treatment-meta::after{animation-delay:2s}.treatment-choice:nth-child(4) .treatment-meta::after{animation-delay:3s}@keyframes price-gleam{0%,65%{transform:translateX(-100%) rotate(20deg);opacity:0}70%{opacity:1}90%{transform:translateX(520%) rotate(20deg);opacity:1}91%,100%{transform:translateX(520%) rotate(20deg);opacity:0}}}

/* Strong editorial label: no pill, ornaments, or floating badge. */
.hydro-spotlight{padding-top:0}.hydro-feature{position:relative;padding-top:42px}.hydro-feature-label{font-family:var(--sans);font-size:clamp(18px,2.2vw,30.9px);line-height:1.1;font-weight:800;letter-spacing:-.025em;text-transform:uppercase;color:#f5e7bd;margin:0 0 26px}.hydro-feature-copy h2{margin-top:0}
@media(max-width:760px){.hydro-feature{padding-top:30px}.hydro-feature-label{font-size:22px;margin-bottom:22px}}
#hydro-spotlight-title{scroll-margin-top:210px}

/* A separate, typographic ribbon above the card; no invented award seal. */
.hydro-award{display:flex;justify-content:center;padding:0 26px 28px;position:relative;z-index:1}
.hydro-award .hydro-feature-label{position:relative;isolation:isolate;display:block;margin:0;width:clamp(260px,29.2vw,372px);max-width:100%;padding:14px 30px;border-radius:0;background:linear-gradient(110deg,#ecdfb9,#d5bd7d 60%,#bda268);color:#30362b;font-family:var(--serif);font-size:clamp(18px,1.7vw,22px);font-weight:500;font-style:italic;text-transform:none;line-height:1.12;letter-spacing:0;border-top:1px solid #fff6d7;border-bottom:1px solid #9d844d;box-shadow:0 8px 18px #303c341a;text-align:center}
.hydro-award .hydro-feature-label::before,.hydro-award .hydro-feature-label::after{content:"";position:absolute;top:9.6px;width:30px;height:100%;z-index:-1;background:linear-gradient(135deg,#bca167,#d9c48a);filter:drop-shadow(0 4px 3px #303c3415)}
.hydro-award .hydro-feature-label::before{left:-22px;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,24% 50%)}
.hydro-award .hydro-feature-label::after{right:-22px;clip-path:polygon(0 0,100% 0,76% 50%,100% 100%,0 100%)}
@media(prefers-reduced-motion:no-preference){.hydro-award .hydro-feature-label{background:linear-gradient(110deg,#ecdfb9 0%,#d5bd7d 35%,#fff2cc 49%,#d5bd7d 63%,#bda268 100%);background-size:240% 100%;animation:award-ribbon-light 7s ease-in-out infinite,award-ribbon-enter .7s ease-out both}@keyframes award-ribbon-light{0%,30%{background-position:100% 50%}75%,100%{background-position:0% 50%}}@keyframes award-ribbon-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:760px){.hydro-award{padding:0 24px 25px}.hydro-award .hydro-feature-label{width:260px;font-size:18px;padding:12px 14px}.hydro-award .hydro-feature-label::before{left:-16px;width:22px}.hydro-award .hydro-feature-label::after{right:-16px;width:22px}}

/* Studio introduction; the media area also accommodates a future tour video. */
.studio-tour-intro{padding-top:170px;padding-bottom:55px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end}.studio-tour-intro h1{font-size:clamp(38.9px,3.4vw,45px);line-height:1.02;margin:20px 0 0}.studio-tour-intro>p{font-size:16px;line-height:1.85;max-width:410px;padding-bottom:8px}.studio-tour-scene{display:grid;grid-template-columns:1.3fr 1fr;align-items:stretch}.studio-tour-scene figure{margin:0;position:relative;min-width:0}.studio-tour-scene img{width:100%;height:100%;min-height:510px;max-height:650px;object-fit:cover;display:block;border-radius:18px 0 0 18px}.studio-tour-scene figcaption{position:absolute;bottom:20px;left:24px;color:#fff;font-size:16px;background:#303c34d9;padding:10px 14px;border-radius:3px}.studio-tour-welcome{padding:60px 42px;background:radial-gradient(ellipse at top left,#8c896b55,transparent 70%),linear-gradient(135deg,#555d48,#303c34);border-radius:0 18px 18px 0;display:flex;flex-direction:column;justify-content:center;color:#fff8e8}.studio-tour-welcome .eyebrow{color:#e1cea1}.studio-tour-welcome h2{font-size:clamp(32.4px,2.8vw,39.3px);line-height:1.08;margin:24px 0;color:#fff8e8}.studio-tour-welcome em{color:#e1cea1}.studio-tour-welcome p{font-size:16px;line-height:1.9;color:#eeeadd}.studio-tour-welcome .text-link{color:#fff8e8;align-self:flex-start;margin-top:25px}.studio-tour-details{display:block}.studio-tour-details h2{font-size:36.8px;margin:20px 0}.studio-tour-details p{font-size:16px;line-height:1.85;margin:18px 0}.studio-tour-details aside{align-self:center;padding:38px;border:1px solid #c9b98f88;background:linear-gradient(140deg,#f5efdf,#e5dcc5);border-radius:12px}.studio-tour-details h3{font-size:33.5px;line-height:1.1;margin:20px 0}.studio-tour-details .button{margin-top:15px}
@media(max-width:760px){.studio-tour-intro{padding-top:125px;padding-bottom:30px;grid-template-columns:1fr;gap:22px}.studio-tour-intro h1{font-size:38.9px}.studio-tour-intro>p{font-size:16px;margin:0}.studio-tour-scene{grid-template-columns:1fr}.studio-tour-scene img{height:390px;min-height:0;border-radius:14px 14px 0 0}.studio-tour-scene figcaption{left:16px;bottom:16px;font-size:16px}.studio-tour-welcome{border-radius:0 0 14px 14px;padding:34px 26px}.studio-tour-details{grid-template-columns:1fr;gap:30px}.studio-tour-details h2{font-size:33.5px}.studio-tour-details aside{padding:28px}}

.hydro-offer-link{display:block;border-radius:14px;cursor:pointer}.hydro-offer-link:focus-visible{outline:3px solid #fff5cd;outline-offset:5px}.hydro-offer-link:hover .october-promo{box-shadow:0 8px 24px #17190f35;filter:brightness(1.04)}
/* Keep paired form controls aligned independently of label wrapping. */
.appointment-name-row,.checkout-fields{align-items:end;grid-template-columns:repeat(2,minmax(0,1fr))}
.appointment-name-row>label,.checkout-fields>label{min-width:0}
.appointment-name-row input,.checkout-fields input,.checkout-fields select{box-sizing:border-box;min-height:48px}
@media(max-width:600px){.appointment-name-row,.checkout-fields{grid-template-columns:1fr}}
.checkout-fields input,.checkout-fields select{height:58px}
/* Mobile hero: let content determine height rather than overlap fixed offsets. */
@media(max-width:750px){
 .hero{height:auto;min-height:0;max-height:none;padding-bottom:32px}
 .hero .hero-inner{padding-top:38px;padding-bottom:0}
 .hero .hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:28px}
 .hero .hero-actions a{text-align:center;justify-content:center;width:100%;box-sizing:border-box}
 .hero .hero-location{position:static;max-width:100%;margin:26px 0 0;font-size:16px;line-height:1.6;letter-spacing:.02em}
 .hero .hero-caption,.hero .hero-scroll{display:none}
 .hero .hero-wash{background:linear-gradient(180deg,#eae2d2eb 0%,#eae2d299 45%,#eae2d2e8 85%,#eae2d2 100%)}
}

