:root{--brand:#70822c;--brand-deep:#5a6a23;--brand-soft:#8c9d3e;--brand-tint:#e8ead9;--ink:#1a1a16;--ink-soft:#34342d;--ink-muted:#6c6c64;--ink-faint:#a8a89e;--paper:#fbfaf6;--ivory:#f5f0e6;--bone:#ecead9;--stone:#d8d3c4;--champagne:#b89968;--champagne-soft:#d9c6a2;--shadow-xs:0 1px 2px rgba(40,32,16,0.04);--shadow-sm:0 4px 12px rgba(40,32,16,0.06);--shadow-md:0 16px 40px rgba(40,32,16,0.08);--shadow-lg:0 32px 80px rgba(40,32,16,0.12);--font-display:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--space-1:0.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4rem;--space-7:6rem;--space-8:8rem;--space-9:10rem;--maxw:1320px;--gutter:clamp(1.25rem,4vw,3rem);--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--dur-1:200ms;--dur-2:400ms;--dur-3:700ms;--dur-4:1100ms}*,*::before,*::after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;overflow-x:hidden}a,button,[role="button"],input,select,textarea,label,.showcase-tab,.faq-trigger{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}img,video,svg{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none;transition:color var(--dur-1) var(--ease-out),opacity var(--dur-1) var(--ease-out)}button{font-family:inherit;cursor:pointer}::selection{background:var(--brand);color:var(--paper)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;color:var(--ink);letter-spacing:-0.02em;line-height:1.15;margin:0}h1{font-size:clamp(2.5rem,6.5vw,5rem);font-weight:600;letter-spacing:-0.035em;line-height:1.08}h2{font-size:clamp(2rem,4.2vw,3.25rem);font-weight:600;letter-spacing:-0.025em;line-height:1.12}h3{font-size:clamp(1.35rem,2.2vw,1.85rem);font-weight:600;letter-spacing:-0.015em}h4{font-size:clamp(1.1rem,1.5vw,1.25rem);font-weight:500}p{margin:0;color:var(--ink-soft);font-weight:400}h1 i,h2 i,h3 i,h4 i{font-style:italic;font-weight:400;color:var(--brand)}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.eyebrow{font-family:var(--font-body);font-size:0.75rem;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:var(--brand);display:inline-flex;align-items:center;gap:0.75rem}.eyebrow::before{content:"";width:28px;height:1px;background:var(--brand);display:inline-block}.lead{font-size:clamp(1.05rem,1.2vw,1.18rem);line-height:1.65;color:var(--ink-muted);max-width:56ch}.divider{width:1px;height:56px;background:var(--stone);margin:0 auto}.btn{display:inline-flex;align-items:center;gap:0.65rem;padding:1.05rem 2.1rem;font-family:var(--font-body);font-size:0.82rem;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;border:1px solid transparent;border-radius:var(--radius-xs);transition:all var(--dur-2) var(--ease-out);position:relative;overflow:hidden}.btn--primary{background:var(--ink);color:var(--paper)}.btn--primary:hover{background:var(--brand);transform:translateY(-2px)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn--ghost:hover{background:var(--ink);color:var(--paper)}.btn--brand{background:var(--brand);color:var(--paper)}.btn--brand:hover{background:var(--brand-deep);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn--light:hover{background:transparent;color:var(--paper);border-color:var(--paper)}.btn .arrow{transition:transform var(--dur-2) var(--ease-out)}.btn:hover .arrow{transform:translateX(4px)}.section{padding-block:clamp(3rem,7vw,7rem);padding-inline:0;position:relative}.section--tight{padding-block:clamp(2.5rem,5vw,4.5rem)}.section--dark{background:var(--ink);color:var(--paper)}.section--dark p{color:rgba(255,255,255,0.72)}.section--dark h1,.section--dark h2,.section--dark h3{color:var(--paper)}.section--bone{background:var(--bone)}.section-head{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:clamp(3rem,5vw,4.5rem);max-width:720px}.section-head--center{margin-left:auto;margin-right:auto;align-items:center;text-align:center}.section-head h2 i{font-style:italic;color:var(--brand)}.reveal{opacity:1;transform:none}.js-on .reveal{opacity:0;transform:translateY(22px);transition:opacity 800ms var(--ease-out),transform 800ms var(--ease-out);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}.js-on .reveal.is-visible{opacity:1;transform:translateY(0)}.reviews-track .review-card.reveal{transition-duration:700ms}.reviews-track .review-card.reveal:nth-child(1){transition-delay:0ms}.reviews-track .review-card.reveal:nth-child(2){transition-delay:80ms}.reviews-track .review-card.reveal:nth-child(3){transition-delay:160ms}.reviews-track .review-card.reveal:nth-child(4){transition-delay:240ms}.reviews-track .review-card.reveal:nth-child(5){transition-delay:320ms}.reviews-track .review-card.reveal:nth-child(6){transition-delay:400ms}.faq-item.reveal{transition-duration:600ms}.faq-item.reveal:nth-child(1){transition-delay:0ms}.faq-item.reveal:nth-child(2){transition-delay:60ms}.faq-item.reveal:nth-child(3){transition-delay:120ms}.faq-item.reveal:nth-child(4){transition-delay:180ms}.faq-item.reveal:nth-child(5){transition-delay:240ms}.faq-item.reveal:nth-child(6){transition-delay:300ms}.faq-item.reveal:nth-child(7){transition-delay:360ms}.gallery-item.reveal{transition-duration:700ms}.gallery-item.reveal:nth-child(1){transition-delay:0ms}.gallery-item.reveal:nth-child(2){transition-delay:100ms}.gallery-item.reveal:nth-child(3){transition-delay:200ms}.gallery-item.reveal:nth-child(4){transition-delay:300ms}.gallery-item.reveal:nth-child(5){transition-delay:400ms}.gallery-item.reveal:nth-child(6){transition-delay:500ms}.gallery-item.reveal:nth-child(7){transition-delay:600ms}.gallery-item.reveal:nth-child(8){transition-delay:700ms}.gallery-item.reveal:nth-child(9){transition-delay:800ms}.hero-meta.reveal{transition-delay:200ms}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:0.85rem 0;background:var(--brand);box-shadow:0 1px 0 rgba(0,0,0,0.08);transition:padding var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.site-header.is-scrolled{padding:0.5rem 0;box-shadow:0 6px 22px rgba(20,20,18,0.18)}.nav-wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}.brand-mark{display:flex;align-items:center;z-index:60;line-height:1}.brand-mark .mark{width:92px;height:92px;display:grid;place-items:center;background:transparent;transition:width var(--dur-2) var(--ease-out),height var(--dur-2) var(--ease-out)}.site-header.is-scrolled .brand-mark .mark{width:72px;height:72px}.brand-mark .mark img{width:100%;height:100%;object-fit:contain;display:block;image-rendering:auto}.brand-mark .brand-text{display:none}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(1.25rem,2.4vw,2.4rem);justify-self:center}.nav a{font-size:0.85rem;letter-spacing:0.04em;text-transform:none;font-weight:500;color:rgba(255,255,255,0.88);position:relative;padding:0.45rem 0.15rem;transition:color var(--dur-1) var(--ease-out)}.nav a::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:0;height:2px;background:var(--paper);border-radius:2px;transition:width var(--dur-2) var(--ease-out)}.nav a:hover{color:var(--paper)}.nav a:hover::after{width:80%}.nav-right{display:flex;align-items:center;gap:0.75rem;justify-self:end}.nav-cta{display:inline-flex;align-items:center;gap:0.5rem;padding:0.78rem 1.6rem;font-family:var(--font-body);font-size:0.85rem;font-weight:600;letter-spacing:0.01em;text-transform:none;color:var(--brand-deep);background:#ffffff;border:1px solid #ffffff;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,0.12);transition:transform var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out);white-space:nowrap}.nav-cta:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-1px) scale(1.03);box-shadow:0 8px 22px rgba(0,0,0,0.22)}.nav-cta:active{transform:translateY(0) scale(1)}.nav-cta::after{display:none}.menu-toggle{display:none;background:transparent;border:0;width:48px;height:48px;align-items:center;justify-content:center;padding:0;z-index:60;border-radius:50%;cursor:pointer;transition:background var(--dur-2) var(--ease-out)}.menu-toggle:hover{background:rgba(255,255,255,0.10)}.menu-toggle:active{background:rgba(255,255,255,0.18)}.menu-toggle span{display:block;width:28px;height:2.5px;background:var(--paper);position:relative;border-radius:2px;transition:transform var(--dur-2) var(--ease-out),opacity var(--dur-2) var(--ease-out)}.menu-toggle span::before,.menu-toggle span::after{content:"";position:absolute;left:0;width:28px;height:2.5px;background:var(--paper);border-radius:2px;transition:transform var(--dur-2) var(--ease-out)}.menu-toggle span::before{top:-9px}.menu-toggle span::after{top:9px}.menu-toggle.is-open{display:none}.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;padding:clamp(6rem,12vw,9rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden;color:var(--paper);isolation:isolate}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,15,12,0.55) 0%,rgba(15,15,12,0.30) 40%,rgba(15,15,12,0.78) 100%);z-index:1}.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden}.hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.6s var(--ease-out);will-change:opacity,transform;animation:heroFloat 18s var(--ease-in-out) infinite alternate}.hero-bg img.is-active{opacity:1}@keyframes heroFloat{from{transform:scale(1.06) translateY(0)}to{transform:scale(1.14) translateY(-2.5%)}}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3.5rem;width:100%;padding-bottom:3.5rem}.hero h1{color:var(--paper);font-weight:600;max-width:15ch;letter-spacing:-0.035em;line-height:1.05}.hero h1 i{font-style:italic;color:var(--champagne-soft);font-weight:400}.hero-eyebrow{color:var(--champagne-soft);margin-bottom:1.75rem;font-weight:500}.hero-eyebrow::before{background:var(--champagne-soft)}.hero-sub{color:rgba(255,255,255,0.88);font-size:1.05rem;max-width:48ch;margin:1.85rem 0 2.65rem;line-height:1.75;font-weight:400}.hero-cta-row{display:flex;gap:1rem;flex-wrap:wrap}.hero-meta{display:flex;flex-direction:column;align-items:flex-end;gap:1.5rem;text-align:right}.hero-meta .stars{display:flex;gap:3px;color:var(--champagne-soft)}.hero-meta .rating-line{font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.78)}.hero-scroll{position:absolute;left:50%;bottom:2rem;transform:translateX(-50%);z-index:3;font-size:0.7rem;letter-spacing:0.32em;text-transform:uppercase;color:rgba(255,255,255,0.7);display:flex;flex-direction:column;align-items:center;gap:0.6rem}.hero-scroll .line{width:1px;height:40px;background:rgba(255,255,255,0.5);position:relative;overflow:hidden}.hero-scroll .line::after{content:"";position:absolute;top:-40px;left:0;width:100%;height:40px;background:var(--paper);animation:scrollLine 2.2s var(--ease-in-out) infinite}@keyframes scrollLine{0%{top:-40px}50%{top:100%}100%{top:100%}}.hero-ticker{position:absolute;left:0;right:0;bottom:0;z-index:4;background:rgba(15,15,12,0.55);border-top:1px solid rgba(255,255,255,0.08);border-bottom:1px solid rgba(255,255,255,0.08);padding:0.95rem 0;overflow:hidden}.ticker-track{display:flex;gap:4rem;white-space:nowrap;animation:tickerScroll 38s linear infinite;font-family:var(--font-display);font-size:0.95rem;letter-spacing:0.08em;color:rgba(255,255,255,0.78);font-style:italic}.ticker-track span{display:inline-flex;align-items:center;gap:4rem}.ticker-track .dot{width:6px;height:6px;border-radius:50%;background:var(--champagne);display:inline-block}@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.about-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2.5rem,6vw,6rem);align-items:center}.about-imgs{position:relative;height:clamp(460px,64vw,680px)}.about-imgs .ai-main{position:absolute;inset:0;overflow:hidden;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}.about-imgs .ai-accent{display:none}.about-stamp{display:none}.about-imgs img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-out)}.about-imgs:hover img{transform:scale(1.04)}.about-stats{margin-top:2.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:2rem;border-top:1px solid var(--stone)}.stat .num{font-family:var(--font-display);font-size:clamp(2rem,3vw,2.8rem);color:var(--brand);display:block;line-height:1}.stat .label{font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-muted);margin-top:0.5rem}.services-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}.service-card{position:relative;overflow:hidden;background:var(--paper);border:1px solid var(--stone);padding:0;border-radius:var(--radius-sm);transition:transform var(--dur-3) var(--ease-out),box-shadow var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out);display:flex;flex-direction:column;min-height:460px}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--brand)}.service-card .sc-img{position:relative;height:240px;overflow:hidden}.service-card .sc-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}.service-card:hover .sc-img img{transform:scale(1.07)}.service-card .sc-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(15,15,12,0.45))}.service-card .sc-num{position:absolute;top:1rem;left:1rem;font-family:var(--font-display);font-size:0.85rem;letter-spacing:0.18em;color:var(--paper);z-index:2;background:rgba(0,0,0,0.32);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:0.35rem 0.7rem;border-radius:var(--radius-xs)}.service-card .sc-body{padding:1.75rem;flex:1;display:flex;flex-direction:column;gap:0.85rem}.service-card h3{font-size:1.45rem;line-height:1.18}.service-card .sc-desc{color:var(--ink-muted);font-size:0.95rem;line-height:1.6;flex:1}.service-card .sc-meta{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--stone);font-size:0.82rem}.service-card .sc-duration{color:var(--ink-muted);letter-spacing:0.1em;text-transform:uppercase;font-size:0.7rem}.service-card .sc-price{font-family:var(--font-display);font-size:1.4rem;color:var(--brand)}.service-card.span-6{grid-column:span 6}.service-card.span-4{grid-column:span 4}.service-card.span-8{grid-column:span 8}.showcase{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.showcase .section-head h2{color:var(--paper)}.showcase .lead{color:rgba(255,255,255,0.75)}.showcase-stage{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-top:0}.showcase-visual{position:relative;height:600px}.showcase-visual .frame{position:absolute;inset:0;overflow:hidden;border-radius:var(--radius-sm)}.showcase-visual .frame img{width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity 1s var(--ease-out),transform 1.6s var(--ease-out);position:absolute;inset:0}.showcase-visual .frame img.is-active{opacity:1;transform:scale(1)}.showcase-visual .badge{position:absolute;bottom:1.5rem;left:1.5rem;z-index:2;display:inline-flex;align-items:center;gap:0.65rem;background:rgba(15,15,12,0.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0.65rem 1rem;border-radius:999px;font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--paper)}.showcase-visual .badge .dot{width:6px;height:6px;border-radius:50%;background:var(--brand-soft);animation:pulse 2s var(--ease-in-out) infinite}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.8)}}.showcase-panel{position:relative;min-height:600px}.showcase-slide{position:absolute;inset:0;opacity:0;transform:translateY(20px);transition:opacity 0.7s var(--ease-out),transform 0.7s var(--ease-out);pointer-events:none}.showcase-slide.is-active{opacity:1;transform:translateY(0);pointer-events:auto}.showcase-slide .ss-num{font-family:var(--font-display);font-size:0.9rem;letter-spacing:0.3em;color:var(--brand-soft);margin-bottom:1.25rem;font-style:italic}.showcase-slide h3{color:var(--paper);font-size:clamp(2rem,3.5vw,3rem);margin-bottom:1.5rem;line-height:1.12}.showcase-slide h3 i{color:var(--brand-soft);font-style:italic}.showcase-slide p{color:rgba(255,255,255,0.78);font-size:1.04rem;line-height:1.75;max-width:52ch;margin-bottom:2rem}.ss-benefits{list-style:none;padding:0;margin:0 0 2.25rem;display:grid;grid-template-columns:1fr 1fr;gap:0.85rem 2rem}.ss-benefits li{font-size:0.92rem;color:rgba(255,255,255,0.78);display:flex;align-items:flex-start;gap:0.65rem}.ss-benefits li svg{flex-shrink:0;margin-top:4px;color:var(--brand-soft)}.ss-meta{display:flex;align-items:center;gap:2rem;padding:1.5rem 0;border-top:1px solid rgba(255,255,255,0.12);border-bottom:1px solid rgba(255,255,255,0.12);margin-bottom:2rem;flex-wrap:wrap}.ss-meta .ss-pair{display:flex;flex-direction:column;gap:0.35rem}.ss-meta .label{font-size:0.7rem;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.55)}.ss-meta .value{font-family:var(--font-display);font-size:1.35rem;color:var(--paper)}.ss-meta .ss-price .value{color:var(--brand-soft)}.showcase-nav{display:flex;align-items:center;gap:1.5rem;margin-top:2.5rem;margin-bottom:3rem;padding-bottom:1.75rem;border-bottom:1px solid rgba(255,255,255,0.10)}.showcase-tabs{display:flex;flex:1;flex-wrap:wrap;gap:0.5rem 2.25rem}.showcase-tab{background:transparent;border:0;color:rgba(255,255,255,0.55);font-family:var(--font-body);font-size:0.86rem;letter-spacing:0.06em;font-weight:500;text-transform:none;padding:0.85rem 0;position:relative;cursor:pointer;transition:color var(--dur-1) var(--ease-out)}.showcase-tab::after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:2px;background:var(--brand-soft);transition:width var(--dur-2) var(--ease-out)}.showcase-tab:hover{color:var(--paper)}.showcase-tab.is-active{color:var(--paper);font-weight:600}.showcase-tab.is-active::after{width:100%}.showcase-arrows{display:flex;gap:0.65rem}.showcase-arrow{width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,0.25);background:transparent;color:var(--paper);display:grid;place-items:center;transition:all var(--dur-2) var(--ease-out)}.showcase-arrow:hover{background:var(--brand);border-color:var(--brand);transform:scale(1.05)}.story-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2.5rem,5vw,5rem);align-items:start}.story-body{padding-top:1rem}.story-quote{font-family:var(--font-display);font-style:italic;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.35;color:var(--ink);margin:2rem 0;padding-left:2rem;border-left:2px solid var(--brand)}.story-quote cite{display:block;font-style:normal;font-family:var(--font-body);font-size:0.78rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-muted);margin-top:1.25rem}.story-visuals{position:relative;height:clamp(480px,60vw,620px)}.story-visuals .sv{position:absolute;overflow:hidden;border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.story-visuals .sv-1{top:0;left:0;width:72%;height:62%}.story-visuals .sv-2{bottom:0;right:0;width:58%;height:52%;border:8px solid var(--paper)}.story-visuals img{width:100%;height:100%;object-fit:cover}.why-section{background:#ffffff;color:var(--ink);position:relative;overflow:hidden}.why-section::after{content:"";position:absolute;top:-20%;left:-10%;width:50%;height:80%;background:radial-gradient(circle,rgba(112,130,44,0.04),transparent 60%);pointer-events:none}.why-section .section-head h2{color:var(--ink)}.why-section .section-head h2 i{color:var(--brand)}.why-section .lead{color:var(--ink-muted)}.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;border-top:0;border-bottom:0;position:relative;z-index:1}.why-cell{padding:2.5rem;border:1px solid var(--stone);background:#fdfcf8;border-radius:var(--radius-sm);position:relative;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out);display:flex;flex-direction:column;gap:0.5rem}.why-cell:hover{background:#ffffff;border-color:var(--brand);transform:translateY(-3px);box-shadow:var(--shadow-md)}.why-cell .icon{width:56px;height:56px;display:grid;place-items:center;color:var(--brand);background:var(--brand-tint);border:1px solid rgba(112,130,44,0.22);border-radius:50%;margin-bottom:1.5rem}.why-cell h3{font-size:1.35rem;margin-bottom:0.6rem;line-height:1.2;color:var(--ink)}.why-cell p{font-size:0.96rem;line-height:1.7;color:var(--ink-muted)}.reviews{background:var(--ivory);position:relative;overflow:hidden}.reviews-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-bottom:3.5rem}.google-badge{display:inline-flex;align-items:center;gap:0.85rem;background:var(--paper);padding:1rem 1.5rem;border-radius:999px;box-shadow:var(--shadow-sm);border:1px solid var(--stone)}.google-badge .gb-stars{color:#fbbc04;display:flex;gap:2px}.google-badge .gb-meta{display:flex;flex-direction:column;line-height:1.2}.google-badge .gb-meta strong{font-family:var(--font-display);font-size:1.1rem;color:var(--ink)}.google-badge .gb-meta span{font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-muted)}.reviews-carousel{position:relative}.reviews-track{display:flex;gap:1.5rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0.5rem 0.5rem 2rem;margin:0 -0.5rem;scrollbar-width:none}.reviews-track::-webkit-scrollbar{display:none}.review-card{flex:0 0 calc((100% - 3rem) / 3);scroll-snap-align:center;background:var(--paper);border:1px solid var(--stone);border-radius:var(--radius-sm);padding:2.25rem;display:flex;flex-direction:column;gap:1.25rem;position:relative;transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out);min-height:380px}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--brand-soft)}.review-card .rc-mark{position:absolute;top:1.5rem;right:1.5rem;opacity:0.18;color:var(--brand)}.review-card .rc-stars{color:#fbbc04;display:flex;gap:2px}.review-card .rc-text{font-size:1rem;line-height:1.7;color:var(--ink-soft);flex:1}.review-card .rc-author{display:flex;align-items:center;gap:0.85rem;padding-top:1rem;border-top:1px solid var(--stone)}.review-card .rc-avatar{width:44px;height:44px;border-radius:50%;background:var(--brand);color:var(--paper);display:grid;place-items:center;font-family:var(--font-display);font-size:1.05rem;font-weight:500}.review-card .rc-name{font-family:var(--font-display);font-size:1.05rem;color:var(--ink);line-height:1.15}.review-card .rc-date{font-size:0.75rem;color:var(--ink-muted);letter-spacing:0.05em;margin-top:2px}.reviews-controls{display:flex;align-items:center;justify-content:space-between;margin-top:2rem;gap:2rem}.reviews-controls .rc-track{flex:1;height:1px;background:var(--stone);position:relative}.reviews-controls .rc-thumb{position:absolute;top:-1px;left:0;height:3px;width:20%;background:var(--brand);transition:left var(--dur-2) var(--ease-out)}.reviews-arrows{display:flex;gap:0.65rem}.reviews-arrow{width:48px;height:48px;border-radius:50%;border:1px solid var(--ink);background:transparent;color:var(--ink);display:grid;place-items:center;transition:all var(--dur-2) var(--ease-out)}.reviews-arrow:hover{background:var(--ink);color:var(--paper)}.reviews-arrow:disabled{opacity:0.3;cursor:default}.reviews-arrow:disabled:hover{background:transparent;color:var(--ink)}.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(2rem,5vw,5rem);align-items:start}.faq-list{border-top:1px solid var(--stone)}.faq-item{border-bottom:1px solid var(--stone)}.faq-trigger{width:100%;background:transparent;border:0;padding:1.4rem 0;display:flex;align-items:center;gap:1.25rem;text-align:left;cursor:pointer;font-family:var(--font-display);font-size:clamp(1rem,1.5vw,1.25rem);font-weight:500;color:var(--ink);letter-spacing:-0.005em;line-height:1.4;transition:color var(--dur-1) var(--ease-out);-webkit-tap-highlight-color:transparent}.faq-trigger>span:not(.plus){flex:1 1 auto;min-width:0;overflow-wrap:break-word}.faq-trigger:hover{color:var(--brand)}.faq-trigger .plus{width:34px;height:34px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;position:relative;flex-shrink:0;margin-left:auto;align-self:center;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.faq-trigger .plus::before,.faq-trigger .plus::after{content:"";position:absolute;background:var(--ink);transition:transform var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.faq-trigger .plus::before{width:12px;height:1.5px}.faq-trigger .plus::after{width:1.5px;height:12px}.faq-item.is-open .faq-trigger{color:var(--brand)}.faq-item.is-open .plus{background:var(--brand);border-color:var(--brand)}.faq-item.is-open .plus::before,.faq-item.is-open .plus::after{background:var(--paper)}.faq-item.is-open .plus::after{transform:scaleY(0)}.faq-panel{max-height:0;overflow:hidden;transition:max-height 0.5s var(--ease-out)}.faq-panel-inner{padding:0 4rem 1.65rem 0;font-size:0.98rem;line-height:1.7;color:var(--ink-muted)}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:180px;gap:1rem}.gallery-item{overflow:hidden;border-radius:var(--radius-sm);position:relative;cursor:zoom-in}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-out)}.gallery-item:hover img{transform:scale(1.06)}.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(15,15,12,0.45));opacity:0;transition:opacity var(--dur-2) var(--ease-out)}.gallery-item:hover::after{opacity:1}.g-1{grid-column:span 5;grid-row:span 2}.g-2{grid-column:span 4;grid-row:span 2}.g-3{grid-column:span 3;grid-row:span 2}.g-4{grid-column:span 3;grid-row:span 2}.g-5{grid-column:span 5;grid-row:span 2}.g-6{grid-column:span 4;grid-row:span 2}.g-7{grid-column:span 4;grid-row:span 2}.g-8{grid-column:span 5;grid-row:span 2}.g-9{grid-column:span 3;grid-row:span 2}.booking{background:#14140f;color:var(--paper);position:relative;overflow:hidden;isolation:isolate}.booking::before{content:"";position:absolute;inset:0;background-image:url("../img/hero-slide-2.jpg");background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0.22;filter:grayscale(0.4);z-index:0}.booking::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,15,12,0.92),rgba(15,15,12,0.74) 60%,rgba(15,15,12,0.92));z-index:1}.booking>.container{position:relative;z-index:2}.booking-card{position:relative;background:transparent;border:1px solid rgba(255,255,255,0.08);border-radius:var(--radius-sm);padding:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,4vw,4rem);align-items:center}.booking-card h2{color:var(--paper);margin-bottom:1.25rem}.booking-card h2 i{color:var(--champagne-soft);font-style:italic}.booking-card p{color:rgba(255,255,255,0.78);font-size:1.05rem;line-height:1.7;max-width:46ch}.booking-info{display:flex;flex-direction:column;gap:1.25rem}.booking-info .bi{display:flex;gap:1rem;align-items:flex-start}.booking-info .bi .ico{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);display:grid;place-items:center;color:var(--brand-soft);flex-shrink:0}.booking-info .bi-label{font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.55);margin-bottom:0.25rem}.booking-info .bi-value{font-family:var(--font-display);font-size:1.15rem;color:var(--paper);line-height:1.3}.booking-info .bi-value a:hover{color:var(--brand-soft)}.hours-list{list-style:none;padding:0;margin:0.4rem 0 0;display:grid;gap:0.45rem;min-width:220px}.hours-list li{display:flex;align-items:baseline;justify-content:space-between;gap:1.25rem;padding-bottom:0.45rem;border-bottom:1px dashed rgba(255,255,255,0.10);font-family:var(--font-body);font-size:0.9rem;color:rgba(255,255,255,0.78)}.hours-list li:last-child{border-bottom:0;padding-bottom:0}.hours-list li span:first-child{font-weight:500;color:var(--paper);letter-spacing:0.01em}.hours-list li span:last-child{color:rgba(255,255,255,0.7);font-variant-numeric:tabular-nums}.booking-cta-row{margin-top:2.25rem;display:flex;gap:1rem;flex-wrap:wrap}.footer{background:var(--brand);color:rgba(255,255,255,0.88);padding-top:clamp(4rem,6vw,6rem);padding-bottom:2.5rem}.footer h4{color:var(--paper);font-size:0.78rem;font-family:var(--font-body);font-weight:600;letter-spacing:0.22em;text-transform:uppercase;margin-bottom:1.5rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,0.18)}.footer .ft-brand{display:flex;align-items:center;margin-bottom:1.5rem;line-height:1}.footer .ft-brand .mark{width:92px;height:92px;display:grid;place-items:center;background:transparent;overflow:visible}.footer .ft-brand .mark img{width:100%;height:100%;object-fit:contain;display:block}.footer p{color:rgba(255,255,255,0.82);font-size:0.95rem;line-height:1.7;max-width:38ch}.footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.85rem}.footer ul a{font-size:0.92rem;color:rgba(255,255,255,0.88);transition:color var(--dur-1) var(--ease-out)}.footer ul a:hover{color:var(--paper);text-decoration:underline;text-underline-offset:4px}.footer .ft-socials{display:flex;gap:0.65rem;margin-top:1.5rem}.footer .ft-socials a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,0.32);display:grid;place-items:center;color:var(--paper);transition:all var(--dur-2) var(--ease-out)}.footer .ft-socials a:hover{background:var(--paper);border-color:var(--paper);color:var(--brand-deep);transform:translateY(-1px)}.footer-bottom{padding-top:2rem;display:flex;justify-content:space-between;align-items:center;font-size:0.82rem;color:rgba(255,255,255,0.72);flex-wrap:wrap;gap:1rem}.map-section{width:100%;background:var(--ink);position:relative;overflow:hidden}.map-section iframe{display:block;width:100%;height:450px;border:0;filter:contrast(1.02)}.map-address{display:flex;align-items:center;justify-content:center;gap:.65rem;padding:1.1rem 1.5rem;background:var(--ink);color:var(--paper);font-size:.95rem;letter-spacing:.01em;text-align:center}.map-address svg{color:var(--champagne-soft);flex-shrink:0}@media (max-width:720px){.map-section iframe{height:320px}.map-address{padding:.95rem 1rem;font-size:.85rem;gap:.5rem}}.float-cta{position:fixed;right:1.5rem;bottom:1.5rem;z-index:40;background:var(--brand);color:var(--paper);width:60px;height:60px;border-radius:50%;display:grid;place-items:center;box-shadow:var(--shadow-lg);transition:transform var(--dur-2) var(--ease-out);animation:floatBob 4s var(--ease-in-out) infinite}.float-cta:hover{transform:scale(1.08);background:var(--brand-deep)}.float-cta--call{right:auto;left:1.5rem}.float-cta.is-on-dark{background:#0f0f0c;color:var(--paper);box-shadow:0 14px 32px rgba(0,0,0,.45)}.float-cta.is-on-dark:hover{background:#1f1f1a}@keyframes floatBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (max-width:1024px){.hero-content{grid-template-columns:1fr;gap:2rem}.hero-meta{align-items:flex-start;text-align:left}.showcase-stage{grid-template-columns:1fr}.showcase-visual{height:380px}.showcase-panel{min-height:auto}.showcase-slide{display:none;position:relative;opacity:1;transform:none;pointer-events:auto}.showcase-slide.is-active{display:block}.about-grid{grid-template-columns:1fr}.about-imgs{height:460px;max-width:560px;margin:0 auto}.story-grid{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr 1fr;gap:1rem}.why-cell{padding:2rem}.faq-grid{grid-template-columns:1fr}.booking-card{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem}.review-card{flex:0 0 calc((100% - 1.5rem) / 2)}.services-grid>*{grid-column:span 6 !important}.reviews-head{grid-template-columns:1fr}}@media (max-width:720px){.nav{display:none}.nav-close{display:none}.menu-toggle{display:inline-flex}.nav-cta{padding:0.62rem 1.1rem;font-size:0.78rem;box-shadow:0 3px 10px rgba(0,0,0,0.14)}.nav-wrap{gap:0.5rem}.nav.is-open{display:flex;position:fixed;inset:0;width:100vw;height:100vh;background:rgba(20,25,12,0.78);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);flex-direction:column;justify-content:center;align-items:center;gap:1.6rem;z-index:200;padding:5rem 1.5rem 2rem;animation:drawerIn 0.36s var(--ease-out)}.nav.is-open a{font-family:var(--font-display);font-size:1.55rem;font-weight:500;text-transform:none;letter-spacing:-0.005em;color:var(--paper);padding:0.65rem 1rem;min-height:44px;display:inline-flex;align-items:center;transition:color var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out)}.nav.is-open a:hover,.nav.is-open a:focus{color:var(--champagne-soft);transform:translateY(-1px)}.nav.is-open a::after{display:none}.nav.is-open .nav-cta--drawer{margin-top:0.85rem;background:var(--paper);color:var(--brand-deep);font-family:var(--font-body);font-size:0.9rem;font-weight:600;padding:0.85rem 2rem;border-radius:999px;box-shadow:0 6px 22px rgba(0,0,0,0.25)}.nav.is-open .nav-cta--drawer:hover{background:var(--brand);color:var(--paper)}.nav.is-open .nav-close{display:inline-flex;position:absolute;top:1.1rem;right:1.25rem;width:48px;height:48px;align-items:center;justify-content:center;background:rgba(255,255,255,0.10);border:1px solid rgba(255,255,255,0.18);border-radius:50%;color:var(--paper);cursor:pointer;transition:background var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.nav.is-open .nav-close:hover{background:rgba(255,255,255,0.20);transform:rotate(90deg)}}@keyframes drawerIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.nav-close{display:none}.nav-cta--drawer{display:none}@media (max-width:720px){.nav-cta--drawer{display:inline-flex}.section{padding-block:clamp(2.5rem,9vw,3.75rem)}.section-head{margin-bottom:2rem}.hero{min-height:100vh;align-items:center;justify-content:center;padding-top:6rem;padding-bottom:5rem;text-align:center}.hero-content{grid-template-columns:1fr;text-align:center;padding-bottom:0;justify-items:center}.hero-content>div{width:100%}.hero h1{max-width:100%;margin-left:auto;margin-right:auto}.hero-eyebrow{justify-content:center}.hero-sub{margin-left:auto;margin-right:auto;text-align:center;max-width:38ch}.hero-cta-row{justify-content:center}.hero-meta{display:none}.hero-ticker{padding:0.75rem 0}.ticker-track{font-size:0.82rem;gap:2.5rem}.ticker-track span{gap:2.5rem}.about-imgs{display:none}#about .about-grid{grid-template-columns:1fr}#about{padding-top:clamp(2rem,7vw,3rem)}.about-body{text-align:center}.about-body .lead,.about-body p{margin-left:auto;margin-right:auto}.about-body .eyebrow{justify-content:center}.about-stats{justify-content:center}.about-stamp{width:100px;height:100px;font-size:0.7rem;top:-1.25rem;right:-0.75rem}.about-stamp span{font-size:1.2rem}.about-stats{grid-template-columns:repeat(3,1fr);gap:0.5rem}.services-grid{grid-template-columns:1fr}.services-grid>*{grid-column:span 1 !important}.service-card{min-height:0}.service-card .sc-img{height:220px}.showcase{padding-block:clamp(2.5rem,8vw,3.5rem)}.showcase .container>.section-head{margin-bottom:1.75rem}.showcase-stage{gap:0;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:8px;overflow:hidden;grid-template-columns:1fr}.showcase-visual{position:relative;height:auto;aspect-ratio:16 / 9;width:100%;margin:0;border-radius:0;opacity:1 !important;transform:none !important}.showcase-visual .frame{position:absolute;inset:0;border-radius:0}.showcase-visual .frame img{object-fit:cover}.showcase-panel{padding:1.5rem 1.25rem 1.75rem;min-height:0;opacity:1 !important;transform:none !important}.showcase-slide h3{font-size:1.55rem;line-height:1.18;margin-bottom:1rem}.showcase-slide p{font-size:0.96rem;line-height:1.6;margin-bottom:1.25rem}.ss-benefits{grid-template-columns:1fr;gap:0.55rem;margin-bottom:1.5rem}.ss-meta{gap:1.25rem;padding:0.85rem 0;margin-bottom:1.25rem}.ss-meta .value{font-size:1.1rem}.showcase-nav{display:flex;flex-direction:column;margin-top:0;margin-bottom:1.5rem;padding:0;border-bottom:0;overflow:visible}.showcase-tabs{display:flex;flex-direction:column;flex-wrap:nowrap;gap:0.5rem;width:100%}.showcase-tab{display:flex;align-items:center;width:100%;min-height:52px;padding:0.85rem 1rem 0.85rem 1.1rem;font-size:0.92rem;font-weight:500;text-align:left;line-height:1.35;color:rgba(255,255,255,0.85);background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.10);border-radius:8px;gap:0.75rem;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;transition:background var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),opacity var(--dur-1) var(--ease-out);-webkit-tap-highlight-color:transparent}.showcase-tab::after{content:"\203A";flex-shrink:0;margin-left:auto;align-self:center;font-size:1.35rem;line-height:1;color:rgba(255,255,255,0.55);background:transparent;position:static;width:auto;height:auto;border-radius:0;transition:color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out);transform-origin:center}.showcase-tab:hover{background:rgba(255,255,255,0.07);border-color:rgba(255,255,255,0.18)}.showcase-tab:active{opacity:0.85}.showcase-tab.is-active{background:var(--brand);border-color:var(--brand);color:var(--paper);font-weight:600}.showcase-tab.is-active::after{color:var(--paper);width:auto;height:auto;position:static;background:transparent;transform:rotate(90deg)}.showcase-arrows{display:none}.showcase + .section{padding-top:clamp(2.5rem,7vw,3.25rem)}.why-grid{grid-template-columns:1fr;gap:1rem}.why-cell{padding:1.75rem}.reviews-track{gap:0;padding:0.5rem 0 2rem;margin:0;scroll-snap-type:x mandatory}.review-card{flex:0 0 100%;width:100%;padding:1.75rem;min-height:320px;scroll-snap-align:center;scroll-snap-stop:always}.gallery-grid{grid-auto-rows:140px;gap:0.65rem}.g-1,.g-2,.g-3,.g-4,.g-5,.g-6,.g-7,.g-8,.g-9{grid-column:span 6}.booking-card{padding:2rem 1.5rem}.booking-card h2{font-size:2rem}.booking-cta-row .btn{width:100%;justify-content:center}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}.reviews-controls{flex-direction:column;align-items:stretch;gap:1.25rem}.reviews-arrows{align-self:flex-end}.float-cta{width:54px;height:54px;right:1rem;bottom:1rem}.float-cta--call{right:auto;left:1rem}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}.hero-bg img{animation:none;transform:none}}.booking-form-wrap{position:relative;margin-top:2.5rem;padding:clamp(2.25rem,4vw,3.5rem);background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.08);border-radius:var(--radius-sm)}.booking-form-wrap .bf-head{margin-bottom:2.25rem;max-width:540px}.booking-form-wrap .bf-head h3{font-family:var(--font-display);font-weight:600;font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.2}.booking-form-wrap .bf-head h3 i{font-style:italic;color:var(--champagne-soft);font-weight:400}.booking-form{display:grid;gap:1.25rem}.bf-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.bf-field{display:flex;flex-direction:column;gap:0.5rem}.bf-field--full{grid-column:1 / -1}.bf-field>span{font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;font-weight:500;color:rgba(255,255,255,0.65)}.bf-field em{font-style:normal;text-transform:none;letter-spacing:0;color:rgba(255,255,255,0.4);font-size:0.7rem;margin-left:0.4rem}.bf-field input,.bf-field select,.bf-field textarea{width:100%;padding:0.95rem 1.1rem;font-family:var(--font-body);font-size:0.96rem;color:var(--paper);background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.14);border-radius:var(--radius-xs);transition:border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out);-webkit-appearance:none;appearance:none}.bf-field input::placeholder,.bf-field textarea::placeholder{color:rgba(255,255,255,0.36)}.bf-field input:focus,.bf-field select:focus,.bf-field textarea:focus{outline:none;border-color:var(--brand-soft);background:rgba(255,255,255,0.06);box-shadow:0 0 0 3px rgba(140,157,62,0.18)}.bf-field select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d9c6a2' stroke-width='1.6'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 1rem center;background-size:16px;padding-right:2.75rem;cursor:pointer;color:var(--paper)}.bf-field select option{color:var(--ink);background:var(--paper)}.bf-field input[type="date"]::-webkit-calendar-picker-indicator,.bf-field input[type="time"]::-webkit-calendar-picker-indicator{filter:invert(1) opacity(0.6);cursor:pointer}.bf-field textarea{resize:vertical;min-height:110px;font-family:var(--font-body)}.bf-submit-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:0.75rem;flex-wrap:wrap}.bf-note{font-size:0.78rem;color:rgba(255,255,255,0.55);max-width:42ch;line-height:1.55}.booking-form button[type="submit"]{white-space:nowrap}@media (max-width:720px){.booking-form-wrap{padding:1.75rem 1.25rem;margin-top:1.5rem}.bf-row{grid-template-columns:1fr;gap:1rem}.booking-form{gap:1rem}.bf-submit-row{flex-direction:column;align-items:stretch}.booking-form button[type="submit"]{width:100%;justify-content:center}}.nav a.is-current{color:var(--paper)}.nav a.is-current::after{width:80%;left:50%;transform:translateX(-50%)}body.has-page-hero{padding-top:0}.page-hero{background-color:var(--ink);background-image:url("../img/hero-slide-1.jpg");background-size:cover;background-position:center 30%;background-repeat:no-repeat;padding:clamp(9rem,16vw,13rem) 0 clamp(3.5rem,7vw,5.5rem);position:relative;isolation:isolate;color:var(--paper);overflow:hidden}.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,15,12,0.65) 0%,rgba(15,15,12,0.78) 100%);z-index:0}.page-hero>.container{position:relative;z-index:1}.page-hero .eyebrow{color:var(--champagne-soft)}.page-hero .eyebrow::before{background:var(--champagne-soft)}.page-hero h1{margin-top:1.25rem;max-width:24ch;font-size:clamp(1.7rem,4vw,3rem);letter-spacing:-0.03em;color:var(--paper);line-height:1.1}.page-hero h1 i{color:var(--champagne-soft);font-style:italic}.page-hero .lead{margin-top:1.5rem;max-width:56ch;color:rgba(255,255,255,0.86)}.treatments-list{display:grid;gap:clamp(2.5rem,4vw,4rem)}.treatment-row{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,4.5vw,4rem);align-items:center;padding:clamp(1.5rem,3vw,2.5rem) 0}.treatment-row--rev{grid-template-columns:1fr 1.05fr}.treatment-row--rev .tr-media{order:2}.treatment-row--rev .tr-body{order:1}.tr-media{position:relative;border-radius:var(--radius-sm);overflow:hidden;aspect-ratio:4 / 3;box-shadow:var(--shadow-md)}.tr-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease-out)}.tr-media:hover img{transform:scale(1.04)}.tr-body .tr-num{font-family:var(--font-body);font-style:italic;font-weight:500;font-size:0.82rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--brand);margin-bottom:1rem}.tr-body h2{font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.12;margin-bottom:1.25rem;letter-spacing:-0.02em}.tr-body p{color:var(--ink-muted);font-size:1rem;line-height:1.7;margin-bottom:1.5rem}.tr-benefits{list-style:none;padding:0;margin:0 0 1.75rem;display:grid;grid-template-columns:1fr 1fr;gap:0.55rem 1.5rem}.tr-benefits li{font-size:0.92rem;color:var(--ink-soft);position:relative;padding-left:1.4rem}.tr-benefits li::before{content:"";position:absolute;left:0;top:0.55em;width:14px;height:1.5px;background:var(--brand)}.tr-meta{display:flex;gap:clamp(1.25rem,2.5vw,2rem);flex-wrap:wrap;padding:1rem 0;border-top:1px solid var(--stone);border-bottom:1px solid var(--stone);margin-bottom:1.75rem}.tr-meta>div{display:flex;flex-direction:column;gap:0.25rem}.tr-meta .label{font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-muted);font-weight:500}.tr-meta .value{font-family:var(--font-display);font-weight:600;font-size:1.1rem;color:var(--ink)}.tr-price{color:var(--brand) !important}.reviews .reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.reviews .reviews-grid .review-card{flex:none;width:auto;min-height:0;scroll-snap-align:none}.faq-page-grid{display:grid;grid-template-columns:1fr 360px;gap:clamp(2rem,4vw,4rem);align-items:start}.faq-side .faq-cta{position:sticky;top:110px;background:var(--ivory);border:1px solid var(--stone);border-radius:var(--radius-sm);padding:clamp(1.75rem,2.5vw,2.25rem)}.faq-side .faq-cta h3{font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.18}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(2rem,4vw,4rem);align-items:start}.contact-info{display:grid;gap:1.25rem}.ci-card{display:flex;gap:1.5rem;padding:1.75rem;background:#fff;border:1px solid var(--stone);border-radius:var(--radius-sm);transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.ci-card:hover{border-color:var(--brand);box-shadow:var(--shadow-md);transform:translateY(-2px)}.ci-card .ci-ico{width:52px;height:52px;border-radius:50%;background:var(--brand-tint);color:var(--brand);display:grid;place-items:center;flex-shrink:0}.ci-card .ci-label{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--ink-muted);font-weight:500;margin-bottom:0.4rem}.ci-card .ci-value{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--ink);line-height:1.3;margin-bottom:0.5rem}.ci-card .ci-value a:hover{color:var(--brand)}.ci-card p{color:var(--ink-muted);font-size:0.92rem;line-height:1.6;margin-top:0.3rem}.hours-list--light{margin-top:0.6rem;min-width:220px}.hours-list--light li{color:var(--ink-soft);border-bottom:1px dashed var(--stone)}.hours-list--light li span:first-child{color:var(--ink)}.hours-list--light li span:last-child{color:var(--ink-muted)}.contact-side .contact-cta{background:var(--ivory);border:1px solid var(--stone);border-radius:var(--radius-sm);padding:clamp(1.75rem,2.5vw,2.25rem)}.contact-side .contact-cta h3{font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.2}@media (max-width:1024px){.treatment-row,.treatment-row--rev{grid-template-columns:1fr;gap:1.5rem}.treatment-row--rev .tr-media{order:1}.treatment-row--rev .tr-body{order:2}.reviews .reviews-grid{grid-template-columns:1fr 1fr}.faq-page-grid{grid-template-columns:1fr}.faq-side .faq-cta{position:static}.contact-grid{grid-template-columns:1fr}}@media (max-width:720px){.page-hero{padding:clamp(9rem,26vw,13rem) 0 clamp(4.5rem,12vw,6.5rem);text-align:center}.page-hero .container{display:flex;flex-direction:column;align-items:center}.page-hero h1{font-size:clamp(2rem,6.2vw,2.6rem);text-transform:uppercase;letter-spacing:.02em;margin-left:auto;margin-right:auto;max-width:none}.tr-benefits{grid-template-columns:1fr;gap:0.5rem}.tr-meta{gap:1rem;padding:0.85rem 0}.tr-meta .value{font-size:1rem}.reviews .reviews-grid{grid-template-columns:1fr;gap:1rem}.ci-card{padding:1.25rem;gap:1rem}.ci-card .ci-ico{width:44px;height:44px}.ci-card .ci-value{font-size:1.05rem}}.contact-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.contact-tile{text-align:center;padding:clamp(2rem,3vw,2.75rem) 1.5rem;background:#fff;border:1px solid var(--stone);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;gap:0.55rem;transition:transform var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.contact-tile:hover{transform:translateY(-3px);border-color:var(--brand);box-shadow:var(--shadow-md)}.contact-tile .ct-ico{width:56px;height:56px;border-radius:50%;background:var(--brand-tint);color:var(--brand);display:grid;place-items:center;margin-bottom:0.75rem}.contact-tile .ct-label{font-size:0.72rem;letter-spacing:0.22em;text-transform:uppercase;font-weight:600;color:var(--ink-muted)}.contact-tile .ct-value{font-family:var(--font-display);font-size:clamp(1.05rem,1.4vw,1.25rem);font-weight:600;color:var(--ink);text-decoration:none;line-height:1.3;word-break:break-word}.contact-tile a.ct-value:hover{color:var(--brand)}.contact-tile .ct-value--hours{display:grid;grid-template-columns:auto auto;gap:0.3rem 1rem;font-size:0.96rem;font-weight:500;margin-top:0.1rem;justify-content:center}.contact-tile .ct-value--hours span:nth-child(odd){color:var(--ink)}.contact-tile .ct-value--hours span:nth-child(even){color:var(--ink-muted);font-variant-numeric:tabular-nums}.contact-tile .ct-desc{font-size:0.88rem;color:var(--ink-muted);line-height:1.55;max-width:30ch;margin-top:0.5rem}.contact-cta-row{display:flex;justify-content:center;gap:1rem;margin-top:clamp(2.5rem,4vw,3.5rem);flex-wrap:wrap}@media (max-width:1024px){.contact-row{grid-template-columns:1fr;gap:1rem;max-width:540px;margin:0 auto}.contact-tile{padding:1.75rem 1.5rem}}@media (max-width:720px){.contact-cta-row .btn{width:100%;justify-content:center}}.section.booking--bright{background:var(--paper);color:var(--ink)}.section.booking--bright::before,.section.booking--bright::after{display:none}.booking-form-wrap--light{background:#ffffff;border:1px solid var(--stone);box-shadow:var(--shadow-md);border-radius:var(--radius-sm);margin-top:0;padding:clamp(2rem,4vw,3.5rem);max-width:880px;margin-left:auto;margin-right:auto}.booking-form-wrap--light .bf-head .eyebrow{color:var(--brand)}.booking-form-wrap--light .bf-head h3{color:var(--ink);font-size:clamp(1.5rem,2.4vw,2rem)}.booking-form-wrap--light .bf-head h3 i{color:var(--brand);font-style:italic}.booking-form-wrap--light .bf-head p{color:var(--ink-muted)}.booking-form-wrap--light .bf-field>span{color:var(--ink-soft)}.booking-form-wrap--light .bf-field em{color:var(--ink-muted)}.booking-form-wrap--light .bf-field input,.booking-form-wrap--light .bf-field select,.booking-form-wrap--light .bf-field textarea{background-color:#faf9f4;border-color:var(--stone);color:var(--ink)}.booking-form-wrap--light .bf-field input::placeholder,.booking-form-wrap--light .bf-field textarea::placeholder{color:var(--ink-faint)}.booking-form-wrap--light .bf-field input:focus,.booking-form-wrap--light .bf-field select:focus,.booking-form-wrap--light .bf-field textarea:focus{outline:none;background-color:#fff;border-color:var(--brand);box-shadow:0 0 0 3px rgba(112,130,44,0.15)}.booking-form-wrap--light .bf-field select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2370822c' stroke-width='1.6'><path d='M6 9l6 6 6-6'/></svg>")}.booking-form-wrap--light .bf-field input[type="date"]::-webkit-calendar-picker-indicator,.booking-form-wrap--light .bf-field input[type="time"]::-webkit-calendar-picker-indicator{filter:none}.booking-form-wrap--light .bf-note{color:var(--ink-muted)}.reviews-grid--paginated .review-card{display:none}.reviews-grid--paginated .review-card.is-shown{display:flex}.reviews-load-more{display:flex;justify-content:center;margin-top:2.5rem}.reviews-load-more .btn{min-width:240px;justify-content:center}.reviews-load-more.is-done{display:none}.footer-bottom a{color:var(--paper);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,0.45);transition:text-decoration-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.footer-bottom a:hover{color:var(--paper);text-decoration-color:var(--paper)}.section--inquiry{background:var(--ivory)}.inquiry-wrap{max-width:880px;margin:0 auto;background:#ffffff;border:1px solid var(--stone);border-radius:var(--radius-sm);padding:clamp(2rem,4vw,3.5rem);box-shadow:var(--shadow-sm)}.inquiry-head{margin-bottom:2rem;max-width:540px}.inquiry-head h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin-top:1rem;line-height:1.18}.inquiry-head h2 i{color:var(--brand);font-style:italic}.inquiry-head p{color:var(--ink-muted)}.inquiry-form{display:grid;gap:1.25rem}.inquiry-form .bf-field>span{color:var(--ink-soft);font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;font-weight:500}.inquiry-form .bf-field em{color:var(--ink-muted)}.inquiry-form .bf-field input,.inquiry-form .bf-field select,.inquiry-form .bf-field textarea{width:100%;padding:0.95rem 1.1rem;font-family:var(--font-body);font-size:0.96rem;color:var(--ink);background-color:#faf9f4;border:1px solid var(--stone);border-radius:var(--radius-xs);-webkit-appearance:none;appearance:none;transition:border-color var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.inquiry-form .bf-field input::placeholder,.inquiry-form .bf-field textarea::placeholder{color:var(--ink-faint)}.inquiry-form .bf-field input:focus,.inquiry-form .bf-field select:focus,.inquiry-form .bf-field textarea:focus{outline:none;background-color:#fff;border-color:var(--brand);box-shadow:0 0 0 3px rgba(112,130,44,0.15)}.inquiry-form .bf-field select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2370822c' stroke-width='1.6'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 1rem center;background-size:16px;padding-right:2.75rem;cursor:pointer}.inquiry-form .bf-field select option{color:var(--ink);background:var(--paper)}.inquiry-form .bf-field input[type="date"]::-webkit-calendar-picker-indicator,.inquiry-form .bf-field input[type="time"]::-webkit-calendar-picker-indicator{filter:none;cursor:pointer}.inquiry-form .bf-field textarea{resize:vertical;min-height:110px}.inquiry-form .bf-submit-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:0.75rem;flex-wrap:wrap}.inquiry-form .bf-note{font-size:0.78rem;color:var(--ink-muted);max-width:42ch;line-height:1.55}.inquiry-form .bf-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.inquiry-form .bf-field--full{grid-column:1 / -1}.inquiry-section{display:contents}.inquiry-section[hidden]{display:none}@media (max-width:720px){.inquiry-form .bf-row{grid-template-columns:1fr;gap:1rem}.inquiry-form .bf-submit-row{flex-direction:column;align-items:stretch}.inquiry-form button[type="submit"]{width:100%;justify-content:center}}select.bf-field,.bf-field select,.inquiry-form select,.booking-form select,.booking-form-wrap--light select{-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;background-repeat:no-repeat !important;background-position:right 1rem center !important;background-size:14px 14px !important;background-origin:padding-box !important;padding-right:2.75rem !important}select::-ms-expand{display:none}.menu-toggle *,.nav-close *{pointer-events:none}.menu-toggle{position:relative;z-index:70}.nav.is-open .nav-close{z-index:210}
/* ============================================================
   v2 CLIENT REVISION OVERRIDES (May 2026)
   ============================================================ */

/* --- HERO --- */
.hero h1{font-weight:700;color:#fff}
.hero h1 i{color:#fff !important;font-style:italic;font-weight:700 !important;text-decoration:none}
.hero .btn--light{color:#000 !important;font-weight:700 !important;letter-spacing:0.16em}
.hero-scroll{display:none !important}
.hero-cta-row{justify-content:center}

/* --- ABOUT (Massage Therapy) --- */
.about-body h2,.about-body h2 i{color:#000 !important;font-weight:700 !important;font-style:normal !important}
.about-body .btn--primary,
.about-body .btn--brand{background:var(--brand) !important;color:#fff !important;font-weight:700 !important;border-color:var(--brand) !important}
.about-body .btn--primary:hover,
.about-body .btn--brand:hover{background:var(--brand-deep) !important}

/* --- TREATMENT SHOWCASE → white, bold black --- */
.showcase{background:#fff !important;color:var(--ink) !important}
.showcase .section-head .eyebrow{color:#000 !important;font-weight:700;letter-spacing:0.14em;font-size:clamp(1.5rem,4vw,2.5rem);text-transform:none;display:block}
.showcase .section-head .eyebrow::before{display:none !important}
.showcase .section-head h2{display:none !important}
.showcase-visual .badge{display:none !important}
.showcase-tab{color:var(--ink-muted) !important;border-color:var(--stone) !important;background:#fff !important;font-weight:600}
.showcase-tab::after{display:none !important}
.showcase-tab:hover{background:var(--bone) !important;color:var(--ink) !important;border-color:var(--ink-muted) !important}
.showcase-tab.is-active{background:var(--brand) !important;color:#fff !important;border-color:var(--brand) !important;font-weight:700}
.showcase-slide h3{color:var(--ink) !important;font-weight:700}
.showcase-slide h3 i{color:var(--brand) !important;font-style:italic}
.showcase-slide p{color:var(--ink-soft) !important}
.showcase-slide .ss-pair .label{color:var(--ink-muted) !important}
.showcase-slide .ss-pair .value{color:#000 !important;font-weight:700}
.showcase-slide .btn--brand{background:var(--brand) !important;color:#000 !important;font-weight:700 !important;border-color:var(--brand) !important}
.showcase-slide .btn--brand:hover{background:var(--brand-deep) !important;color:#000 !important}
.showcase .showcase-arrow{border-color:var(--stone) !important;color:var(--ink) !important;background:#fff !important}
.showcase .showcase-arrow:hover{background:var(--bone) !important}

/* --- REVIEWS — strip header & badge --- */
.reviews .reviews-head{display:none !important}
.reviews .reviews-controls + p,
.reviews .reviews-carousel > p{display:none !important}
.reviews .review-card{cursor:pointer;transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}
.reviews .review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}

/* --- GALLERY — 10 images uncropped --- */
.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:auto;gap:1rem}
.gallery-item{aspect-ratio:auto;height:auto;overflow:hidden;border-radius:var(--radius-sm)}
.gallery-item img{width:100%;height:auto;object-fit:contain;display:block;transition:transform var(--dur-2) var(--ease-out)}
.gallery-item::after{display:none !important}
.gallery-item.g-1,.gallery-item.g-2,.gallery-item.g-3,
.gallery-item.g-4,.gallery-item.g-5,.gallery-item.g-6,
.gallery-item.g-7,.gallery-item.g-8,.gallery-item.g-9,
.gallery-item.g-10{grid-column:span 1;grid-row:span 1;aspect-ratio:auto}
@media (max-width: 900px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:0.75rem}}
@media (max-width: 480px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:0.6rem}}

/* --- BOOKING SECTION → white --- */
.section.booking{background:#fff !important;color:var(--ink) !important}
.section.booking::before,.section.booking::after{display:none !important}
.booking-card{background:#fff !important;color:var(--ink) !important;border:1px solid var(--stone);padding-bottom:2rem}
.booking-card .eyebrow{color:#000 !important;font-weight:700 !important;font-size:clamp(1.5rem,4vw,2.25rem);letter-spacing:0.05em;text-transform:none;display:block;margin-bottom:1.25rem;text-align:center}
.booking-card .eyebrow::before{display:none !important}
.booking-card h2{display:none !important}
.booking-card > div > p:not(.bi-label):not(.bi-value){display:none !important}
.booking-card .booking-cta-row{justify-content:center;flex-wrap:wrap}
.booking-card .booking-cta-row .btn{background:var(--brand) !important;color:#000 !important;font-weight:700 !important;border-color:var(--brand) !important;letter-spacing:0.16em}
.booking-card .booking-cta-row .btn:hover{background:var(--brand-deep) !important;color:#000 !important}
.booking-info{border-top:1px solid var(--stone);padding-top:1.5rem}
.booking-info .bi-label{color:var(--ink-muted) !important}
.booking-info .bi-value,
.booking-info .bi-value a{color:var(--ink) !important;font-weight:600}
.booking-info .bi .ico{background:var(--bone) !important;color:var(--brand) !important}
.booking-info .hours-list li{color:var(--ink-soft) !important;border-color:var(--stone) !important}
.booking-info .hours-list li span{color:var(--ink) !important}

/* --- BOOKING FORM on dark→light --- */
.booking-form-wrap{background:#fff !important;border:1px solid var(--stone);color:var(--ink) !important}
.booking-form-wrap .bf-head .eyebrow{color:#000 !important;font-weight:700 !important;font-size:clamp(1.25rem,3vw,1.75rem);letter-spacing:0.05em;text-transform:none;display:block;margin-bottom:0.5rem}
.booking-form-wrap .bf-head .eyebrow::before{display:none !important}
.booking-form-wrap .bf-head h3,
.booking-form-wrap .bf-head p{display:none !important}
.booking-form-wrap .bf-field > span{color:var(--ink) !important;font-weight:600}
.booking-form-wrap .bf-field em{color:var(--ink-muted) !important}
.booking-form-wrap .bf-field input,
.booking-form-wrap .bf-field select,
.booking-form-wrap .bf-field textarea{background:#fafafa !important;border-color:var(--stone) !important;color:var(--ink) !important}
.booking-form-wrap .bf-field input::placeholder,
.booking-form-wrap .bf-field textarea::placeholder{color:transparent !important}
.booking-form-wrap .bf-field input:focus,
.booking-form-wrap .bf-field select:focus,
.booking-form-wrap .bf-field textarea:focus{border-color:var(--brand) !important;background:#fff !important}
.booking-form-wrap .bf-field input[type="date"]::-webkit-calendar-picker-indicator,
.booking-form-wrap .bf-field input[type="time"]::-webkit-calendar-picker-indicator{filter:none !important}
.booking-form-wrap .bf-note{color:var(--ink-muted) !important}
.booking-form-wrap .btn--brand{background:var(--brand) !important;color:#000 !important;font-weight:700 !important;border-color:var(--brand) !important}

/* --- INQUIRY FORM (contact.html) — clear placeholders + bold black headings --- */
.section--inquiry .inquiry-head .eyebrow{color:#000 !important;font-weight:700 !important;font-size:clamp(1.25rem,3vw,1.75rem);letter-spacing:0.05em;text-transform:none;display:block;margin-bottom:0.5rem}
.section--inquiry .inquiry-head .eyebrow::before{display:none !important}
.section--inquiry .inquiry-head h2{color:#000 !important;font-weight:700 !important;letter-spacing:-0.01em}
.section--inquiry .inquiry-head h2 i{color:#000 !important;font-style:normal !important;font-weight:700 !important}
.section--inquiry .inquiry-head .lead{display:none !important}
.inquiry-form .bf-field input::placeholder,
.inquiry-form .bf-field textarea::placeholder{color:transparent !important}

/* --- CONTACT TILES — strip descriptions --- */
.contact-tile .ct-desc{display:none !important}

/* --- FOOTER → white background, simplified --- */
.footer{background:#fff !important;color:#000 !important;border-top:1px solid var(--stone)}
.footer p{color:#000 !important;display:none}
.footer h4{color:#000 !important;font-weight:700}
.footer ul a{color:#000 !important}
.footer ul a:hover{color:var(--brand) !important;text-decoration:underline}
.footer .ft-socials a{color:#000 !important;border-color:var(--stone) !important;background:transparent !important}
.footer .ft-socials a:hover{background:var(--brand) !important;color:#fff !important;border-color:var(--brand) !important}
.footer-bottom{color:#000 !important;border-color:var(--stone) !important}
.footer-bottom a{color:#000 !important}
.footer-bottom .ft-credit{display:none !important}
.footer .ft-treatments,
.footer .ft-contact-block{display:none !important}
.footer-grid{grid-template-columns:1fr 1fr !important;gap:2.5rem}
@media (max-width: 768px){.footer-grid{grid-template-columns:1fr !important}}

/* --- PAGE-HERO BANNER → REMOVE image, white bg, bold black heading --- */
.page-hero{background:#fff !important;color:var(--ink) !important;padding:clamp(7rem,18vw,10rem) 0 clamp(2.5rem,5vw,4rem) !important;text-align:center;min-height:auto !important}
.page-hero::before,.page-hero::after{display:none !important}
.page-hero > .container{display:flex;flex-direction:column;align-items:center;justify-content:center}
.page-hero .eyebrow{display:none !important}
.page-hero h1{color:#000 !important;font-weight:700 !important;font-size:clamp(2.5rem,7vw,5rem);text-align:center;margin:0 auto !important;letter-spacing:-0.025em}
.page-hero h1 i{color:#000 !important;font-style:normal;font-weight:700}
.page-hero .lead{display:none !important}
body.has-page-hero{padding-top:0}

/* --- FLOAT CTA → call + whatsapp grouped on right --- */
.float-cta--call{right:5.5rem !important;left:auto !important;bottom:1.5rem;background:var(--brand) !important;color:#fff !important}
.float-cta--call:hover{background:var(--brand-deep) !important}
@media (max-width: 600px){
  .float-cta--call{right:4.5rem !important;left:auto !important;bottom:1rem}
}

/* --- BOOK PAGE — adjustments --- */
.booking.booking--bright{background:#fff !important}
.booking.booking--bright .booking-form-wrap--light{background:#fff !important;border:1px solid var(--stone)}
.booking.booking--bright .booking-form-wrap--light .bf-head .eyebrow{color:#000 !important;font-weight:700 !important;font-size:clamp(1.25rem,3vw,1.75rem);letter-spacing:0.05em;text-transform:none;display:block;margin-bottom:0.5rem}
.booking.booking--bright .booking-form-wrap--light .bf-head .eyebrow::before{display:none !important}
.booking.booking--bright .booking-form-wrap--light .bf-head h3,
.booking.booking--bright .booking-form-wrap--light .bf-head p{display:none !important}
.booking.booking--bright .booking-form-wrap--light .bf-field input::placeholder,
.booking.booking--bright .booking-form-wrap--light .bf-field textarea::placeholder{color:transparent !important}

/* --- MOBILE showcase tabs — full-width buttons, dot bullets --- */
@media (max-width: 900px){
  .showcase{padding-block:clamp(2.5rem,8vw,4rem)}
  .showcase .section-head{margin-bottom:1.5rem}
}

/* Eyebrow line removal — universal for revised sections */
.section.booking .eyebrow::before,
.showcase .eyebrow::before,
.booking-form-wrap .eyebrow::before,
.section--inquiry .eyebrow::before,
.inquiry-head .eyebrow::before{display:none !important;content:none !important}

/* Reviews — anchor tags now, ensure they look like cards */
a.review-card{display:flex;flex-direction:column;text-decoration:none !important;color:inherit !important}
a.review-card:hover{text-decoration:none !important}
a.review-card *{text-decoration:none !important}

/* ============================================================
   v3 CLIENT REVISION OVERRIDES — float CTAs, footer, mobile
   ============================================================ */

/* --- FLOAT CTAs: Call on LEFT, WhatsApp on RIGHT --- */
.float-cta{right:1.5rem !important;left:auto !important;bottom:1.5rem;background:var(--brand) !important;color:#fff !important}
.float-cta--call{right:auto !important;left:1.5rem !important;bottom:1.5rem;background:var(--brand) !important;color:#fff !important}
.float-cta:hover,.float-cta--call:hover{background:var(--brand-deep) !important;transform:scale(1.08)}
@media (max-width: 600px){
  .float-cta{right:1rem !important;left:auto !important;bottom:1rem;width:54px;height:54px}
  .float-cta--call{right:auto !important;left:1rem !important;bottom:1rem;width:54px;height:54px}
}

/* --- FOOTER mobile/tablet fixes --- */
.footer{padding-block:clamp(2.5rem, 6vw, 4rem) !important}
.footer-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:2rem !important;
  align-items:start;
}
.footer-grid > div{min-width:0}
.footer h4{margin-bottom:1rem;font-size:1rem;letter-spacing:0.08em;text-transform:uppercase}
.footer ul{padding:0;margin:0;list-style:none;display:flex;flex-direction:column;gap:0.65rem}
.footer ul a{font-size:0.95rem;line-height:1.5}
.footer .ft-socials{display:flex;gap:0.75rem;margin:0;flex-wrap:wrap}
.footer .ft-socials a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;height:42px;
  border:1px solid var(--stone) !important;
  border-radius:50%;
  color:#000 !important;
  background:#fff !important;
  transition:all var(--dur-2) var(--ease-out);
}
.footer .ft-socials a:hover{background:var(--brand) !important;color:#fff !important;border-color:var(--brand) !important;transform:translateY(-2px)}
.footer .ft-socials a svg{width:18px;height:18px}
.footer-bottom{
  margin-top:2rem !important;
  padding-top:1.5rem !important;
  border-top:1px solid var(--stone) !important;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-direction:row;
  text-align:center;
  font-size:0.85rem;
  color:#000 !important;
}
@media (max-width: 600px){
  .footer{padding-block:2.5rem !important}
  .footer-grid{grid-template-columns:1fr !important;gap:1.75rem !important;text-align:left}
  .footer h4{font-size:0.95rem;margin-bottom:0.85rem}
  .footer ul a{font-size:0.95rem}
  .footer-bottom{font-size:0.8rem;text-align:center;margin-top:1.5rem !important;padding-top:1.25rem !important}
}

/* --- MOBILE HEADER: ensure nav-cta (Book Now pill) doesn't overflow nor crash into hamburger --- */
@media (max-width: 720px){
  .nav-wrap{padding-block:0.75rem;gap:0.5rem}
  .nav-right{display:flex;align-items:center;gap:0.5rem}
  .nav-cta{padding:0.55rem 1rem !important;font-size:0.74rem !important;letter-spacing:0.12em;white-space:nowrap}
  .brand-mark .mark{width:64px;height:64px}
  .site-header.is-scrolled .brand-mark .mark{width:56px !important;height:56px !important}
}
@media (max-width: 420px){
  .nav-cta{padding:0.5rem 0.85rem !important;font-size:0.7rem !important}
  .brand-mark .mark{width:56px;height:56px}
}

/* --- MOBILE PAGE-HERO: tighter padding so heading doesn't sit too far down --- */
@media (max-width: 720px){
  .page-hero{padding:6rem 0 2rem !important;min-height:auto !important}
  .page-hero h1{font-size:clamp(2.25rem,8vw,3rem) !important;line-height:1.1}
}

/* --- MOBILE HERO content centering safety --- */
@media (max-width: 720px){
  .hero{padding-top:5rem;padding-bottom:3rem;min-height:auto;align-items:center}
  .hero-content{text-align:center;padding-bottom:0}
  .hero-cta-row{justify-content:center !important;width:100%}
  .hero h1{font-size:clamp(2rem,9vw,3rem)}
  .hero-sub{font-size:0.95rem}
}

/* --- MOBILE BOOKING / SHOWCASE / FORM safety --- */
@media (max-width: 720px){
  .booking-card{padding:1.75rem 1.25rem !important;grid-template-columns:1fr !important;gap:1.5rem}
  .booking-card .eyebrow{font-size:1.25rem !important;text-align:center;margin-bottom:1rem !important}
  .booking-card .booking-cta-row{flex-direction:column;width:100%}
  .booking-card .booking-cta-row .btn{width:100%;justify-content:center}
  .booking-info{padding-top:1.25rem !important;margin-top:0.5rem}
  .booking-info .bi{padding:0.75rem 0}
  .booking-form-wrap{padding:1.5rem 1.25rem !important;margin-top:1.5rem}
  .booking-form-wrap .bf-head .eyebrow{text-align:left;font-size:1.15rem !important}
  .bf-row{grid-template-columns:1fr !important;gap:1rem !important}
  .booking-form{gap:1rem !important}
  .bf-submit-row{flex-direction:column;align-items:stretch;gap:1rem}
  .booking-form button[type="submit"]{width:100%;justify-content:center}

  .showcase .section-head .eyebrow{font-size:1.5rem !important;text-align:center;display:block;margin:0 auto}
  .showcase-tab{padding:0.85rem 1rem;font-size:0.92rem;text-align:left;width:100%}
  .showcase-visual .frame{aspect-ratio:4/3}
}

/* --- MOBILE INQUIRY FORM safety --- */
@media (max-width: 720px){
  .inquiry-wrap{padding:1.5rem 1.25rem !important}
  .section--inquiry .inquiry-head .eyebrow{font-size:1.15rem !important}
  .section--inquiry .inquiry-head h2{font-size:1.65rem;line-height:1.2}
  .inquiry-form .bf-row{grid-template-columns:1fr !important}
}

/* --- MOBILE CONTACT TILES — stack cleanly --- */
@media (max-width: 720px){
  .contact-row{display:grid !important;grid-template-columns:1fr !important;gap:1rem}
  .contact-tile{padding:1.5rem 1.25rem;text-align:center}
}

/* --- MOBILE GALLERY: 2-col grid, no cropping --- */
@media (max-width: 720px){
  .gallery-grid{grid-template-columns:repeat(2,1fr) !important;gap:0.6rem !important}
  .gallery-item img{width:100%;height:auto;object-fit:cover;aspect-ratio:1/1}
}

/* --- TABLET (721px-1024px) safety --- */
@media (min-width: 721px) and (max-width: 1024px){
  .gallery-grid{grid-template-columns:repeat(3,1fr) !important;gap:0.85rem}
  .footer-grid{grid-template-columns:1fr 1fr !important;gap:2rem}
}

/* --- PREVENT BODY OVERFLOW on any breakpoint --- */
html, body{overflow-x:hidden !important;max-width:100vw}

/* --- Ensure the mobile nav drawer is fully on top of float CTAs --- */
.nav.is-open{z-index:200 !important}
.float-cta,.float-cta--call{z-index:60 !important}

/* --- Footer logo absolutely gone (defense in depth) --- */
.footer .ft-brand{display:none !important}

/* ============================================================
   v4 — SHOWCASE MOBILE POLISH
   ============================================================ */

/* Treatments heading — always visible, bold black, centered */
.showcase .section-head{margin-bottom:1.75rem !important}
.showcase .section-head .eyebrow{
  color:#000 !important;
  font-weight:800 !important;
  font-family:var(--font-display);
  font-size:clamp(1.75rem, 7vw, 3rem) !important;
  letter-spacing:-0.01em !important;
  text-transform:none !important;
  text-align:center;
  display:block !important;
  margin:0 auto !important;
  line-height:1.1;
}
.showcase .section-head .eyebrow::before,
.showcase .section-head .eyebrow::after{display:none !important;content:none !important;width:0 !important}

/* Tabs — override mobile dark-theme styling on white background */
.showcase-tab{
  background:#fff !important;
  color:var(--ink) !important;
  border:1px solid var(--stone) !important;
  font-weight:600 !important;
}
.showcase-tab::after{
  color:var(--ink-muted) !important;
  background:transparent !important;
}
.showcase-tab:hover{
  background:var(--bone) !important;
  border-color:var(--ink-muted) !important;
  color:var(--ink) !important;
}
.showcase-tab.is-active{
  background:var(--brand) !important;
  color:#fff !important;
  border-color:var(--brand) !important;
  font-weight:700 !important;
}
.showcase-tab.is-active::after{color:#fff !important}

/* Showcase visual (image) — proper crop, 16/10 aspect, brand-friendly */
.showcase-visual{margin-bottom:1.25rem}
.showcase-visual .frame{
  aspect-ratio:16/10 !important;
  height:auto !important;
  border-radius:8px;
  overflow:hidden;
  background:var(--bone);
}
.showcase-visual .frame img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

/* Slide card — white background, clean type */
.showcase-slide{background:transparent !important;color:var(--ink) !important;padding:0 !important}
.showcase-slide h3{
  color:var(--ink) !important;
  font-weight:700 !important;
  font-size:clamp(1.4rem,4.5vw,1.85rem) !important;
  margin-bottom:0.75rem !important;
}
.showcase-slide p{
  color:var(--ink-soft) !important;
  font-size:0.96rem;
  line-height:1.65;
  margin-bottom:1.25rem !important;
}
.showcase-slide .ss-meta{
  display:flex !important;
  flex-wrap:wrap;
  gap:1.25rem !important;
  margin-bottom:1.5rem;
  padding-top:1rem;
  border-top:1px solid var(--stone);
}
.showcase-slide .ss-pair{display:flex;flex-direction:column;gap:0.2rem}
.showcase-slide .ss-pair .label{
  font-size:0.7rem !important;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--ink-muted) !important;
  font-weight:500;
}
.showcase-slide .ss-pair .value{
  font-size:1.05rem !important;
  font-weight:800 !important;
  color:#000 !important;
}
.showcase-slide .btn--brand{
  background:var(--brand) !important;
  color:#000 !important;
  font-weight:700 !important;
  letter-spacing:0.14em;
  padding:1rem 1.5rem;
  width:auto;
  display:inline-flex;
}
.showcase-slide .btn--brand:hover{background:var(--brand-deep) !important;color:#000 !important}

@media (max-width: 720px){
  .showcase{padding-block:clamp(2.5rem,8vw,4rem)}
  .showcase .section-head{margin-bottom:1.25rem !important}
  .showcase-tabs{gap:0.5rem !important}
  .showcase-tab{
    min-height:52px !important;
    padding:0.85rem 1rem !important;
    font-size:0.95rem !important;
  }
  .showcase-visual .frame{aspect-ratio:4/3 !important}
  .showcase-slide .ss-meta{gap:0.85rem 1.25rem !important;padding-top:0.85rem}
  .showcase-slide .ss-pair .value{font-size:1rem !important}
  .showcase-slide .btn--brand{width:100%;justify-content:center;padding:0.95rem 1.25rem}
}

/* Backdrop / parent — make sure the showcase section itself is fully white */
.section.showcase{background:#fff !important}
.section.showcase .container{background:transparent}

/* ============================================================
   v5 — HERO + SHOWCASE OVERLAP + PAGE-HERO + LIGHTBOX
   ============================================================ */

/* --- MOBILE HERO: balanced spacing, proper clearance from fixed header --- */
@media (max-width: 720px){
  .hero{
    min-height:100vh !important;
    padding-top:7rem !important;
    padding-bottom:4rem !important;
    align-items:center !important;
    justify-content:center !important;
    display:flex !important;
  }
  .hero-content{
    width:100%;
    max-width:100%;
    text-align:center;
    padding:0 1.25rem;
    grid-template-columns:1fr !important;
  }
  .hero h1{font-size:clamp(2rem,9vw,2.75rem) !important;line-height:1.15;margin-bottom:1.25rem}
  .hero-sub{font-size:0.97rem;line-height:1.55;margin-bottom:1.75rem;max-width:36ch;margin-left:auto;margin-right:auto}
  .hero-cta-row{width:100%;justify-content:center !important}
  .hero-cta-row .btn{min-width:200px}
}
@media (max-width: 420px){
  .hero{padding-top:6.5rem !important;padding-bottom:3rem !important}
  .hero h1{font-size:2rem !important}
}

/* --- SHOWCASE SLIDE: fix title overlap with image --- */
@media (max-width: 900px){
  .showcase-stage{
    background:transparent !important;
    border:none !important;
    border-radius:0 !important;
    overflow:visible !important;
    gap:1.5rem !important;
  }
  .showcase-visual{
    margin-bottom:0 !important;
    border-radius:10px;
    overflow:hidden;
  }
  .showcase-visual .frame{
    border-radius:10px;
    aspect-ratio:4/3 !important;
  }
  .showcase-panel{
    padding:0 !important;
    background:transparent !important;
    margin-top:0;
  }
  .showcase-slide{padding-top:0 !important}
  .showcase-slide h3{
    margin-top:0 !important;
    padding-top:0;
    font-size:1.55rem !important;
    line-height:1.2 !important;
    margin-bottom:0.85rem !important;
  }
}

/* --- DESKTOP/TABLET: ensure showcase title never overlaps image --- */
@media (min-width: 901px){
  .showcase-stage{align-items:start}
  .showcase-panel{padding-left:2rem}
}

/* --- PAGE-HERO: more breathing room from fixed nav, slightly smaller h1 --- */
.page-hero{
  padding:clamp(8rem,18vw,11rem) 0 clamp(2.5rem,5vw,4rem) !important;
}
.page-hero h1{
  font-size:clamp(2.25rem,6vw,4rem) !important;
}
@media (max-width: 720px){
  .page-hero{padding:7rem 0 2rem !important}
  .page-hero h1{
    font-size:clamp(1.85rem,7vw,2.5rem) !important;
    line-height:1.15 !important;
    padding:0 1rem;
  }
}
@media (max-width: 420px){
  .page-hero{padding:6.5rem 0 1.75rem !important}
  .page-hero h1{font-size:1.85rem !important}
}

/* --- LIGHTBOX --- */
.lightbox-clickable{cursor:zoom-in}
.lightbox-clickable img{transition:transform var(--dur-2) var(--ease-out)}
.lightbox-clickable:hover img{transform:scale(1.04)}

.lightbox-overlay{
  position:fixed;
  inset:0;
  background:rgba(8,8,8,0.96);
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  transition:opacity 0.3s ease;
  padding:1rem;
}
.lightbox-overlay.is-open{
  opacity:1;
  pointer-events:auto;
}
.lightbox-image{
  max-width:92vw;
  max-height:88vh;
  object-fit:contain;
  box-shadow:0 24px 80px rgba(0,0,0,0.6);
  border-radius:6px;
  user-select:none;
  -webkit-user-drag:none;
}
.lightbox-close,
.lightbox-prev,
.lightbox-next{
  position:absolute;
  background:rgba(255,255,255,0.12);
  color:#fff;
  border:1px solid rgba(255,255,255,0.20);
  width:48px;
  height:48px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background 0.2s ease, transform 0.2s ease;
  font-family:inherit;
  font-weight:400;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}
.lightbox-close{
  top:1.25rem;
  right:1.25rem;
  font-size:1.6rem;
  line-height:1;
}
.lightbox-prev{
  left:1.25rem;
  top:50%;
  transform:translateY(-50%);
  font-size:1.8rem;
  line-height:1;
}
.lightbox-next{
  right:1.25rem;
  top:50%;
  transform:translateY(-50%);
  font-size:1.8rem;
  line-height:1;
}
.lightbox-close:hover{background:rgba(255,255,255,0.25);transform:scale(1.05)}
.lightbox-prev:hover{background:rgba(255,255,255,0.25);transform:translateY(-50%) scale(1.08)}
.lightbox-next:hover{background:rgba(255,255,255,0.25);transform:translateY(-50%) scale(1.08)}
.lightbox-counter{
  position:absolute;
  bottom:1.25rem;
  left:50%;
  transform:translateX(-50%);
  color:rgba(255,255,255,0.7);
  font-size:0.85rem;
  letter-spacing:0.08em;
  pointer-events:none;
}
@media (max-width: 600px){
  .lightbox-close{top:0.65rem;right:0.65rem;width:42px;height:42px;font-size:1.4rem}
  .lightbox-prev{left:0.5rem;width:42px;height:42px;font-size:1.5rem}
  .lightbox-next{right:0.5rem;width:42px;height:42px;font-size:1.5rem}
  .lightbox-counter{bottom:0.65rem;font-size:0.8rem}
}
body.no-scroll{overflow:hidden}

/* Single-image gallery items remain clickable, treatments page tr-media clickable */
.tr-media.lightbox-clickable{cursor:zoom-in;overflow:hidden}
.gallery-item.lightbox-clickable{cursor:zoom-in}

/* ============================================================
   v5 — CLIENT UPDATES (May 2026)
   ============================================================ */
.showcase .section-head .eyebrow{font-size:clamp(2rem,4.2vw,3.25rem) !important;font-weight:700 !important;font-family:var(--font-display) !important;color:#000 !important;letter-spacing:-0.025em !important;line-height:1.12 !important;text-transform:none !important;font-style:normal !important;text-align:center;display:block !important;margin:0 auto !important}
.showcase .section-head .eyebrow::before,.showcase .section-head .eyebrow::after{display:none !important;content:none !important;width:0 !important}
@media (max-width:720px){.showcase .section-head .eyebrow{font-size:clamp(1.85rem,7vw,2.5rem) !important}}
.page-hero{padding:clamp(10rem,20vw,14rem) 0 clamp(4rem,7vw,6rem) !important;text-align:center !important}
.page-hero>.container{display:flex;flex-direction:column;align-items:center}
.page-hero h1{font-size:clamp(3rem,7vw,5rem) !important;margin-top:0 !important;margin-left:auto;margin-right:auto;max-width:none !important;text-align:center;letter-spacing:-0.03em !important;line-height:1.08 !important}
@media (max-width:720px){.page-hero{padding:8.5rem 0 3rem !important}.page-hero h1{font-size:clamp(2.25rem,9vw,3rem) !important;padding:0 1rem}}
@media (max-width:420px){.page-hero{padding:7.5rem 0 2.5rem !important}.page-hero h1{font-size:2.25rem !important}}
.review-card{background:#fff !important;border:1px solid #e0e0e0 !important;border-radius:8px !important;padding:1.5rem 1.5rem 1.25rem !important;box-shadow:0 1px 2px rgba(60,64,67,0.08),0 1px 3px 1px rgba(60,64,67,0.04) !important;gap:0.85rem !important;display:flex !important;flex-direction:column !important}
.review-card:hover{border-color:#dadce0 !important;box-shadow:0 1px 3px rgba(60,64,67,0.12),0 4px 8px 3px rgba(60,64,67,0.08) !important;transform:none !important}
.review-card .rc-mark{position:absolute !important;top:1.25rem !important;right:1.25rem !important;opacity:1 !important;width:22px !important;height:22px !important;color:initial !important}
.review-card .rc-author{order:1;padding-top:0 !important;border-top:none !important;margin-bottom:0.25rem}
.review-card .rc-stars{order:2;color:#fbbc04 !important;gap:1px !important;padding-left:0;margin-top:0.25rem}
.review-card .rc-stars svg{width:14px !important;height:14px !important}
.review-card .rc-text{order:3;font-size:0.94rem !important;line-height:1.55 !important;color:#3c4043 !important;font-family:Roboto,"Segoe UI",Arial,sans-serif}
.review-card .rc-avatar{background:#1a73e8 !important;color:#fff !important;width:40px !important;height:40px !important;font-family:Roboto,"Segoe UI",Arial,sans-serif !important;font-weight:500 !important;font-size:1rem !important}
.review-card .rc-name{font-family:Roboto,"Segoe UI",Arial,sans-serif !important;color:#202124 !important;font-size:0.95rem !important;font-weight:500 !important}
.review-card .rc-date{color:#70757a !important;font-size:0.78rem !important;letter-spacing:0 !important;margin-top:1px !important;font-family:Roboto,"Segoe UI",Arial,sans-serif !important}
.gallery-item.g-11,.gallery-item.g-12,.gallery-item.g-13,.gallery-item.g-14{grid-column:span 1;grid-row:span 1;aspect-ratio:auto}
.gallery-item.reveal:nth-child(10){transition-delay:900ms}
.gallery-item.reveal:nth-child(11){transition-delay:1000ms}
.gallery-item.reveal:nth-child(12){transition-delay:1100ms}
.gallery-item.reveal:nth-child(13){transition-delay:1200ms}
.gallery-item.reveal:nth-child(14){transition-delay:1300ms}
@media (max-width:900px){.gallery-item.g-11,.gallery-item.g-12,.gallery-item.g-13,.gallery-item.g-14{grid-column:span 1}}
.reviews-cta .btn--brand{background:var(--brand) !important;color:#000 !important;font-weight:700 !important;letter-spacing:0.14em;padding:1rem 1.75rem;border-color:var(--brand) !important;display:inline-flex;align-items:center}
.reviews-cta .btn--brand:hover{background:var(--brand-deep) !important;color:#000 !important}
@media (max-width:720px){.reviews-cta{margin-top:1.75rem !important;padding:0 1rem}.reviews-cta .btn--brand{width:100%;justify-content:center;text-align:center;padding:1rem 1.25rem;font-size:0.92rem}}
/* v6 — image cover + rounded (minimal, preserves original layout) */
.tr-media{background:var(--bone) !important;border-radius:14px !important;overflow:hidden !important}
.tr-media img{object-fit:cover !important}
.showcase-visual .frame{background:var(--bone) !important;border-radius:14px !important;overflow:hidden !important}
.showcase-visual .frame img{object-fit:cover !important}
@media (min-width:1024px){.reviews-track{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:1.25rem !important;overflow:visible !important;padding:0.5rem 0 !important;margin:0 !important}.review-card{flex:none !important;width:auto !important;min-height:0 !important;padding:1.5rem 1.25rem 1.25rem !important}.review-card .rc-text{font-size:0.9rem !important;line-height:1.55 !important}.reviews-controls{display:none !important}}
#reflexology-foot-massage .tr-media,.tr-media[data-img-src*="reflexology"]{aspect-ratio:3/2 !important;background:var(--bone) !important}
#reflexology-foot-massage .tr-media img,.tr-media[data-img-src*="reflexology"] img{object-fit:contain !important;object-position:center 35% !important}
.showcase-visual .frame img[src*="reflexology"]{object-fit:contain !important;object-position:center 35% !important}
@media (max-width:720px){.showcase-visual .frame:has(img.is-active[src*="reflexology"]){aspect-ratio:5/4 !important}.showcase-visual .frame img[src*="reflexology"]{object-fit:contain !important;object-position:center top !important}}
.thanks-wrap{max-width:680px;margin:0 auto;text-align:center;padding:.5rem 0 1rem}.thanks-check{width:76px;height:76px;border-radius:50%;background:var(--brand-tint);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1.6rem}.thanks-wrap .eyebrow{justify-content:center}.thanks-wrap h2{font-size:clamp(1.6rem,3.4vw,2.2rem);color:var(--ink);margin:.9rem 0 0;letter-spacing:-.02em}.thanks-sub{color:var(--ink-soft);line-height:1.7;margin:1.1rem auto 0;max-width:560px}.thanks-steps{margin:2.4rem 0 0;text-align:left;display:grid;gap:1rem}.thanks-step{display:flex;gap:1.1rem;align-items:flex-start;background:var(--paper);border:1px solid var(--stone);border-radius:12px;padding:1.1rem 1.3rem;box-shadow:var(--shadow-xs)}.thanks-step .ts-num{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--brand);color:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.thanks-step strong{display:block;color:var(--ink);font-weight:600;margin-bottom:.15rem}.thanks-step p{margin:0;color:var(--ink-muted);font-size:.92rem;line-height:1.6}.thanks-ctas{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-top:2.2rem}.thanks-help{margin-top:2.4rem;background:var(--bone);border-radius:12px;padding:1.4rem 1.5rem;color:var(--ink-soft);line-height:1.75;font-size:.95rem}.thanks-help .th-label{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-muted);font-weight:600;margin-bottom:.3rem}.thanks-help a{color:var(--brand-deep);font-weight:600;text-decoration:none}.thanks-help a:hover{text-decoration:underline}.form-alert{background:#fdf0ef;border:1px solid #e5b5b0;color:#8c2f28;border-radius:10px;padding:1rem 1.2rem;margin:0 0 1.4rem;font-size:.95rem;line-height:1.6}.form-alert a{color:#8c2f28;font-weight:600} 