/**
 * Shared scroll-reveal ([data-reveal] / .gena-fade-in).
 * FOUC: opacity 0 + y match GSAP prepare before JS runs (no mid-transform snap).
 * Default replay: JS removes .in-view offscreen, re-adds on enter (see reveal.js).
 * .gena-fade-in: opacity only — never translate.
 * Header must never animate size/scale — nav solid uses ::before opacity ease.
 * Spacer is ALWAYS 92px (hero pages pull content under fixed nav instead).
 *
 * First paint: page canvas is #161411 (not browser default / grey skeleton slots).
 * Critical copy also lives inline in #gena-nav-over-hero-critical so FOUC cannot
 * paint bordered grey cards before this file arrives.
 * Home teasers: opacity/visibility + img clip/y/scale match GSAP from-state (v63).
 * Button roles: single paint source (v71). Page styles must NOT paint CTAs.
 * Document overflow-x: clip sitewide — gallery tilted collage must not widen
 * the layout viewport (that clipped/hid the fixed mobile hamburger on scroll).
 * SPA footer-swap hide (v76). Amenity pillar discs reverted (no fill).
 * Teaser replay: IO hard-reset on real exit; ST enter-only (v77).
 * Reel play chips: white circle + black triangle (v82) — .gena-insta-item only.
 * SE mid-page Book nowrap + WA upright; About Explore arrow NE −45° (v88).
 * Header Book Now: border-box so min-height includes padding (v98).
 * Home desktop bump still 50px / 15×26 / 13px — matches preview + production.
 * cache-bust-v98
 */
html,
body {
  background: #161411 !important;
  background-color: #161411 !important;
  overflow-x: clip;
}

/* Unloaded media / card shells — brand dark only (never lighter grey wireframes).
   Do NOT paint .gena-space-photo / tilt shells (upright rects behind tilted photos).
   Do NOT paint header emblem (transparent webp over scrim). */
img,
video,
picture,
.gena-jump-card,
.gena-jump-media,
.gena-cat-banner,
.gena-about-hero-photo,
.gena-gallery-item,
.gena-home-still,
.gena-teaser-photo,
.gena-contact-still,
.gena-insta-item,
.gena-booking-card,
.gena-services-hero,
.gena-services-intro,
.gena-hero,
.gena-space-hero,
.gena-about-hero,
.gena-contact-intro {
  background: #161411 !important;
  background-color: #161411 !important;
}

/* Hero video: dark brand shell until first decoded frame (no lounge poster FOUC). */
.gena-hero {
  background: #161411 !important;
  background-color: #161411 !important;
}
#hero-img {
  opacity: 0 !important;
  background: #161411 !important;
  background-color: #161411 !important;
  transition: opacity 280ms ease;
}
#hero-img.is-hero-ready {
  opacity: 1 !important;
}

/* Logo mark + Gena Space tilted frames — transparent, never upright black shells */
header a > img,
.gena-site-header img,
img[src*="gena-emblem"],
.gena-space-photo,
.gena-space-photo-tilt,
.gena-space-photo img {
  background: transparent !important;
  background-color: transparent !important;
}

/*
 * Homepage service teasers — first paint matches GSAP pre-entrance.
 * visibility:hidden until .is-teaser-animating / .is-teaser-in so images never
 * paint at rest before the entrance tween (opacity alone can still flash).
 */
.gena-teaser-row {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.gena-teaser-row.is-teaser-animating,
.gena-teaser-row.is-teaser-in {
  visibility: visible;
}
.gena-teaser-row.is-teaser-in {
  opacity: 1;
  pointer-events: auto;
}
.gena-teaser-photo img {
  clip-path: inset(12% 0 0 0);
  transform: translate3d(0, 150px, 0) scale(1.18);
  transition: none !important;
}
.gena-teaser-row.is-teaser-in .gena-teaser-photo img {
  clip-path: inset(0% 0 0 0);
  transform: none;
}

[data-reveal] {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  transition: none !important;
}

/* Post-animation / no-JS fallback — applied only after GSAP finishes. */
[data-reveal].in-view {
  opacity: 1;
  transform: none;
}

/* Contact / ATF opacity-only fade — plays when .in-view is toggled by reveal.js */
.gena-fade-in {
  opacity: 0;
  transform: none !important;
  translate: none !important;
  transition: none !important;
  animation: none;
}

.gena-fade-in.in-view {
  animation: gena-fade-in 0.9s ease-out forwards;
}

@keyframes gena-fade-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Site chrome: no size/scale pop; allow ::before opacity ease for scrolled solid */
header,
header *:not(.gena-fill-btn):not(.anywhere-book-now-button):not(.gena-ghost-btn):not(.gena-btn-primary):not(.gena-btn-secondary):not(.gena-btn-secondary-pair),
.gena-site-header,
.gena-site-header *:not(.gena-fill-btn):not(.anywhere-book-now-button):not(.gena-ghost-btn):not(.gena-btn-primary):not(.gena-btn-secondary):not(.gena-btn-secondary-pair) {
  animation: none !important;
}
header,
.gena-site-header {
  transform: none !important;
  translate: none !important;
  scale: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.gena-header-spacer {
  display: block !important;
  height: 92px !important;
  min-height: 92px !important;
  overflow: visible !important;
  flex-shrink: 0 !important;
  transition: none !important;
  animation: none !important;
  transform: none !important;
}
/* Hero pages: transparent fixed header over content; spacer still 92px in flow */
html.gena-has-hero-nav [data-gena-nav-hero] {
  margin-top: -92px !important;
}

/* Nav solid ease — opacity on ::before (not abrupt background snap) */
html.gena-has-hero-nav header.gena-site-header {
  background: transparent !important;
  background-color: transparent !important;
  border-bottom-color: transparent !important;
  transition: none !important;
}
html.gena-has-hero-nav header.gena-site-header::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background: #161411 !important;
  background-color: #161411 !important;
  border-bottom: 1px solid transparent !important;
  opacity: 0 !important;
  transition: opacity 320ms ease, border-bottom-color 320ms ease !important;
}
html.gena-has-hero-nav header.gena-site-header > * {
  position: relative !important;
  z-index: 1 !important;
}
html.gena-has-hero-nav header.gena-site-header.is-solid::before,
html.gena-has-hero-nav.menu-open header.gena-site-header::before {
  opacity: 1 !important;
  border-bottom-color: rgba(187, 165, 144, 0.25) !important;
}
html.gena-has-hero-nav header.gena-site-header.is-solid {
  background: transparent !important;
  background-color: transparent !important;
  border-bottom-color: transparent !important;
}

header a > img {
  height: 48px !important;
  width: 48px !important;
  object-fit: contain;
  display: block;
  flex-shrink: 0;
  background: transparent !important;
  background-color: transparent !important;
}

/*
 * BUTTON ROLES — single source of truth
 * ----------------------------------------------------------
 * Primary            .gena-btn-primary         solid #4a321d, no rim → hover #5a3e24
 * Secondary pair     .gena-btn-secondary-pair  cream rim via box-shadow → hover #2a1f18 fill
 *   RULE: outline CTA that shares a section with a primary (Book / solid),
 *   whether side-by-side OR stacked in the same section — NOT only adjacent
 *   siblings. Examples: hero Book, Need Help, About Explore, Open in Google Map.
 * Secondary solo     .gena-btn-secondary       cream rim via box-shadow → hover #4a321d fill
 * Card outline       .gena-btn-card            cream rim via box-shadow; hover brightens rim only
 * Row book           .gena-btn-row             services-row Book look (as-is)
 *
 * Outline CTA rim (pair / solo / card) — permanent box-shadow approach:
 *   Rest:  border: 2px solid transparent (layout lock) +
 *          box-shadow: 0 0 0 2px var(--btn-outline-border)  [cream rim]
 *   Hover (pair/solo): fill (#2a1f18 / #4a321d), box-shadow: none,
 *          keep transparent 2px border, soft translateY(-2px).
 *   Hover (card): stay outline — brighter shadow OK, no fill.
 * Do NOT use cream border-color camouflage (border-color = fill) anymore.
 * Soft lift: transform translateY only — never margin/padding/border-width.
 * Primary stays solid with no rim (border: none, box-shadow: none).
 *
 * Icon chip utility  .gena-btn-icon-chip       circular bg on hero Explore/Book icons
 *
 * Legacy aliases (paint only; prefer role classes in HTML):
 *   .gena-fill-btn                         → primary
 *   .gena-book-outline / hero-book-charcoal → secondary-pair
 *   .gena-about-explore / Need Help / Maps → secondary-pair
 *   .gena-ghost-btn (solo)                 → secondary
 *   .gena-jump-cta                         → card
 *   .gena-svc-book                         → row
 */
:root {
  --btn-primary: #4a321d;
  --btn-primary-hover: #5a3e24;
  --btn-pair-hover: #2a1f18;
  --btn-outline-border: rgba(237, 230, 220, 0.45);
  --btn-outline-border-soft: rgba(237, 230, 220, 0.35);
  --btn-cream-text: #F5F0E8;
  --btn-cream-text-alt: #EDE6DC;
}

/* ——— Primary: solid walnut #4a321d, no visible rim ——— */
html body a.gena-btn-primary,
html body button.gena-btn-primary,
html body a.gena-fill-btn:not(.gena-btn-secondary):not(.gena-btn-secondary-pair):not(.gena-about-explore),
html body a.gena-fill-btn.gena-explore-services,
html body a.anywhere-book-now-button.gena-btn-primary,
html body button.anywhere-book-now-button.gena-btn-primary,
html body a.anywhere-book-now-button.gena-book-desktop:not(.gena-btn-secondary-pair):not(.gena-book-outline):not(.gena-hero-book-charcoal),
html body header.gena-site-header a.anywhere-book-now-button.gena-btn-primary,
html body header.gena-site-header a.anywhere-book-now-button.gena-book-desktop:not(.gena-btn-secondary-pair),
html body header.gena-site-header a[id^="anywhere_book_now_header_"],
html body #mobile-panel a.anywhere-book-now-button.gena-btn-primary,
html body #mobile-panel a[id^="anywhere_book_now_header_"] {
  background: #4a321d !important;
  background-color: #4a321d !important;
  background-image: none !important;
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  color: #F5F0E8 !important;
  font-family: 'DM Sans', sans-serif !important;
  text-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  transition: background-color 220ms ease, background 220ms ease, color 220ms ease, transform 220ms ease !important;
}
/* Header desktop Book — border-box so min-height includes padding (live had this via .gena-book-wa). */
html body header.gena-site-header a.anywhere-book-now-button.gena-book-desktop,
html body header.gena-site-header a[id^="anywhere_book_now_header_desktop"] {
  box-sizing: border-box !important;
  align-self: center !important;
  height: auto !important;
}
html body a.gena-btn-primary:hover,
html body a.gena-btn-primary:focus-visible,
html body button.gena-btn-primary:hover,
html body button.gena-btn-primary:focus-visible,
html body a.gena-fill-btn:hover:not(.gena-btn-secondary):not(.gena-btn-secondary-pair):not(.gena-about-explore),
html body a.gena-fill-btn.gena-explore-services:hover,
html body a.anywhere-book-now-button.gena-btn-primary:hover,
html body a.anywhere-book-now-button.gena-btn-primary:focus-visible,
html body button.anywhere-book-now-button.gena-btn-primary:hover,
html body a.anywhere-book-now-button.gena-book-desktop:not(.gena-btn-secondary-pair):hover,
html body a.anywhere-book-now-button.gena-book-desktop:not(.gena-btn-secondary-pair):focus-visible,
html body header.gena-site-header a.anywhere-book-now-button.gena-btn-primary:hover,
html body header.gena-site-header a.anywhere-book-now-button.gena-book-desktop:not(.gena-btn-secondary-pair):hover,
html body header.gena-site-header a[id^="anywhere_book_now_header_"]:hover,
html body #mobile-panel a.anywhere-book-now-button.gena-btn-primary:hover,
html body #mobile-panel a[id^="anywhere_book_now_header_"]:hover {
  background: #5a3e24 !important;
  background-color: #5a3e24 !important;
  background-image: none !important;
  border: none !important;
  border-width: 0 !important;
  border-color: transparent !important;
  color: #F5F0E8 !important;
  box-shadow: none !important;
  outline: none !important;
  opacity: 1 !important;
  text-shadow: none !important;
  transform: translateY(-2px) !important;
}

/* Size utility — mid/footer Book CTAs (seat ready, found the right service, ready to see it) */
html body a.gena-btn-size-lg,
html body a#anywhere_book_now_home_footer.anywhere-book-now-button,
html body a#anywhere_book_now_services_footer.anywhere-book-now-button,
html body a#anywhere_book_now_gallery_cta.anywhere-book-now-button {
  min-height: 56px !important;
  padding: 20px 48px !important;
  font-size: 15px !important;
  letter-spacing: 0.08em !important;
  min-width: min(100%, 300px) !important;
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
}
/* Book Appointment row: label + icon stay one line sitewide */
html body a.anywhere-book-now-button {
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
}
html body a.anywhere-book-now-button .gena-hero-cta-label,
html body a.anywhere-book-now-button .gena-hero-cta-inner {
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
}
/* iPhone SE / narrow phones: inset mid-page Books; keep nowrap (no 280px squeeze). */
@media (max-width: 390px) {
  html body a#anywhere_book_now_home_footer.anywhere-book-now-button,
  html body a#anywhere_book_now_services_footer.anywhere-book-now-button,
  html body a#anywhere_book_now_gallery_cta.anywhere-book-now-button {
    min-width: 0 !important;
    width: calc(100% - 48px) !important;
    max-width: calc(100% - 48px) !important;
    margin-inline: auto !important;
    align-self: center !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
  }
}

/* Hero pair height lock — primary :not() chain is (0,4,3); beat it so Explore
   keeps the same invisible 2px transparent border as secondary-pair (no cream rim). */
html body .gena-hero-actions a.gena-btn-primary.gena-explore-services,
html body .gena-hero-actions a.gena-fill-btn.gena-explore-services.gena-btn-primary,
html body .gena-hero-actions a.gena-fill-btn.gena-explore-services:not(.gena-btn-secondary):not(.gena-btn-secondary-pair):not(.gena-about-explore),
html body .gena-hero-actions a.gena-btn-primary.gena-explore-services:hover,
html body .gena-hero-actions a.gena-btn-primary.gena-explore-services:focus-visible,
html body .gena-hero-actions a.gena-fill-btn.gena-explore-services.gena-btn-primary:hover,
html body .gena-hero-actions a.gena-fill-btn.gena-explore-services.gena-btn-primary:focus-visible,
html body .gena-hero-actions a.gena-fill-btn.gena-explore-services:not(.gena-btn-secondary):not(.gena-btn-secondary-pair):not(.gena-about-explore):hover,
html body .gena-hero-actions a.gena-fill-btn.gena-explore-services:not(.gena-btn-secondary):not(.gena-btn-secondary-pair):not(.gena-about-explore):focus-visible {
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-style: none !important;
  outline-color: transparent !important;
}

/* ——— Secondary pair: cream box-shadow rim → darker fill #2a1f18 ——— */
html body a.gena-btn-secondary-pair,
html body button.gena-btn-secondary-pair,
html body a.anywhere-book-now-button.gena-btn-secondary-pair,
html body a.anywhere-book-now-button.gena-book-outline,
html body a.anywhere-book-now-button.gena-hero-book-charcoal,
html body a.gena-about-explore.gena-btn-secondary-pair,
html body a.gena-ghost-btn.gena-btn-secondary-pair {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  /* Layout lock only — never a visible cream border-color */
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-style: none !important;
  outline-color: transparent !important;
  /* Single 2px cream rim — not border, not double, not thicker */
  box-shadow: 0 0 0 2px var(--btn-outline-border) !important;
  color: var(--btn-cream-text) !important;
  font-family: 'DM Sans', sans-serif !important;
  opacity: 1 !important;
  text-shadow: none !important;
  text-decoration: none !important;
  transition: background-color 220ms ease, background 220ms ease, box-shadow 220ms ease, color 220ms ease, transform 220ms ease !important;
}
html body a.gena-btn-secondary-pair:hover,
html body a.gena-btn-secondary-pair:focus-visible,
html body button.gena-btn-secondary-pair:hover,
html body button.gena-btn-secondary-pair:focus-visible,
html body a.anywhere-book-now-button.gena-btn-secondary-pair:hover,
html body a.anywhere-book-now-button.gena-btn-secondary-pair:focus-visible,
html body a.anywhere-book-now-button.gena-book-outline:hover,
html body a.anywhere-book-now-button.gena-book-outline:focus-visible,
html body a.anywhere-book-now-button.gena-hero-book-charcoal:hover,
html body a.anywhere-book-now-button.gena-hero-book-charcoal:focus-visible,
html body a.gena-about-explore.gena-btn-secondary-pair:hover,
html body a.gena-about-explore.gena-btn-secondary-pair:focus-visible,
html body a.gena-ghost-btn.gena-btn-secondary-pair:hover,
html body a.gena-ghost-btn.gena-btn-secondary-pair:focus-visible {
  /* Fill hover — transparent 2px border stays (layout lock); drop cream rim */
  background: #2a1f18 !important;
  background-color: #2a1f18 !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-style: none !important;
  outline-color: transparent !important;
  box-shadow: none !important;
  color: #F5F0E8 !important;
  opacity: 1 !important;
  text-decoration: none !important;
  transform: translateY(-2px) !important;
}

/* ——— Secondary solo: cream box-shadow rim → solid primary fill ——— */
html body a.gena-btn-secondary:not(.gena-btn-secondary-pair),
html body button.gena-btn-secondary:not(.gena-btn-secondary-pair),
html body a.gena-ghost-btn.gena-btn-secondary:not(.gena-btn-secondary-pair) {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  color: var(--btn-cream-text-alt) !important;
  font-family: 'DM Sans', sans-serif !important;
  box-shadow: 0 0 0 2px var(--btn-outline-border-soft) !important;
  outline: none !important;
  text-shadow: none !important;
  text-decoration: none !important;
  opacity: 1 !important;
  transition: background-color 220ms ease, background 220ms ease, box-shadow 220ms ease, color 220ms ease, transform 220ms ease !important;
}
html body a.gena-btn-secondary:not(.gena-btn-secondary-pair):hover,
html body a.gena-btn-secondary:not(.gena-btn-secondary-pair):focus-visible,
html body button.gena-btn-secondary:not(.gena-btn-secondary-pair):hover,
html body a.gena-ghost-btn.gena-btn-secondary:not(.gena-btn-secondary-pair):hover,
html body a.gena-ghost-btn.gena-btn-secondary:not(.gena-btn-secondary-pair):focus-visible {
  /* Fill hover — transparent 2px border stays (layout lock); drop cream rim */
  background: #4a321d !important;
  background-color: #4a321d !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  color: #F5F0E8 !important;
  box-shadow: none !important;
  outline: none !important;
  text-decoration: none !important;
  transform: translateY(-2px) !important;
}

/* ——— Card outline: See Pricing — cream box-shadow rim; brighten on hover, no fill ——— */
html body .gena-btn-card,
html body .gena-jump-cta,
html body span.gena-jump-cta.gena-btn-card {
  background: transparent !important;
  background-color: transparent !important;
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  color: var(--btn-cream-text) !important;
  font-family: 'DM Sans', sans-serif !important;
  box-shadow: 0 0 0 2px var(--btn-outline-border) !important;
  text-decoration: none !important;
  transition: box-shadow 220ms ease, color 220ms ease !important;
}
html body .gena-jump-card:hover .gena-btn-card,
html body .gena-jump-card:focus-visible .gena-btn-card,
html body .gena-jump-card:hover .gena-jump-cta,
html body .gena-jump-card:focus-visible .gena-jump-cta {
  background: transparent !important;
  background-color: transparent !important;
  border: 2px solid transparent !important;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: transparent !important;
  box-shadow: 0 0 0 2px rgba(237, 230, 220, 0.75) !important;
  color: #FFFFFF !important;
}

/* ——— Row book: services menu Book — keep existing look ——— */
html body a.gena-btn-row,
html body a.gena-svc-book,
html body a.gena-svc-book.gena-btn-row {
  appearance: none;
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(187, 165, 144, 0.35) !important;
  color: #BBA590 !important;
  font-family: 'DM Sans', sans-serif !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: border-color 180ms ease, color 180ms ease, background 180ms ease !important;
}
html body a.gena-btn-row:hover,
html body a.gena-btn-row:focus-visible,
html body a.gena-svc-book:hover,
html body a.gena-svc-book:focus-visible,
html body a.gena-svc-book.gena-btn-row:hover,
html body a.gena-svc-book.gena-btn-row:focus-visible {
  border-color: #BBA590 !important;
  color: #F5F0E8 !important;
  background: rgba(187, 165, 144, 0.08) !important;
  background-color: rgba(187, 165, 144, 0.08) !important;
  outline: none !important;
}

/* ——— Icon chip utility — circular bg on hero Explore + Book icons only ——— */
html body .gena-btn-icon-chip,
html body svg.gena-btn-icon-chip {
  flex: none !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
  width: 1.65em !important;
  height: 1.65em !important;
  min-width: 1.65em !important;
  min-height: 1.65em !important;
  padding: 0.32em !important;
  display: block !important;
  border-radius: 50% !important;
  /* Soft chip — match pre-alignment opacity (not the bright 0.48–0.58 bump) */
  background: rgba(245, 240, 232, 0.16) !important;
  background-color: rgba(245, 240, 232, 0.16) !important;
  border: none !important;
  box-shadow: none !important;
  color: #F5F0E8 !important;
  overflow: visible !important;
}
html body .gena-hero-actions .gena-fill-btn .gena-btn-icon-chip.gena-explore-arrow,
html body .gena-hero-actions a.gena-btn-primary .gena-btn-icon-chip.gena-explore-arrow,
html body .gena-hero-actions a.gena-btn-secondary-pair .gena-btn-icon-chip.gena-explore-arrow,
html body .gena-hero-actions a.anywhere-book-now-button .gena-btn-icon-chip.gena-explore-arrow,
html body .gena-hero-actions a.gena-btn-secondary-pair .gena-btn-icon-chip.gena-wa-icon,
html body .gena-hero-actions a.anywhere-book-now-button .gena-btn-icon-chip.gena-wa-icon {
  background: rgba(245, 240, 232, 0.16) !important;
  background-color: rgba(245, 240, 232, 0.16) !important;
}
/* Book CTAs: northeast arrow = external Glow booking (same as About Explore) */
html body a.anywhere-book-now-button .gena-explore-arrow.gena-btn-icon-chip,
html body a.anywhere-book-now-button svg.gena-explore-arrow.gena-btn-icon-chip {
  transform: rotate(-45deg) !important;
  transform-origin: center center !important;
}

/* About Explore arrow only — northeast / up-right (−45° on right-pointing SVG).
   Do not touch home hero down-arrow or any WhatsApp icons. */
html body a.gena-about-explore .gena-explore-arrow.gena-btn-icon-chip,
html body a.gena-about-explore svg.gena-explore-arrow.gena-btn-icon-chip {
  transform: rotate(-45deg) !important;
  transform-origin: center center !important;
}
/* WA icons upright everywhere — never inherit About Explore rotation */
html body .gena-wa-icon,
html body svg.gena-wa-icon,
html body .gena-wa-icon.gena-btn-icon-chip,
html body svg.gena-wa-icon.gena-btn-icon-chip,
html body a.anywhere-book-now-button .gena-wa-icon,
html body a.gena-book-wa .gena-wa-icon,
html body .gena-whatsapp-fab svg {
  transform: none !important;
}

/*
 * TikTok reel play controls (.gena-insta-item) — dedicated chip, NOT .gena-btn-icon-chip.
 * Dark circular plate (80%) + cream/white triangle.
 */
html body a.gena-insta-item svg.gena-play-icon,
html body .gena-insta-item svg.gena-play-icon {
  box-sizing: border-box !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  padding: 16px !important;
  display: block !important;
  flex-shrink: 0 !important;
  border-radius: 50% !important;
  background: rgba(22, 20, 17, 0.8) !important;
  background-color: rgba(22, 20, 17, 0.8) !important;
  border: none !important;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.35) !important;
  fill: #F5F0E8 !important;
  color: #F5F0E8 !important;
  opacity: 1 !important;
  filter: none !important;
  overflow: visible !important;
  pointer-events: none !important;
}
html body a.gena-insta-item svg.gena-play-icon path,
html body .gena-insta-item svg.gena-play-icon path {
  fill: #F5F0E8 !important;
}

/*
 * Section / chrome hairlines — true 1px soft taupe (NEVER 2px, NEVER solid walnut #3D2715).
 * Kill double seams: sections never get border-bottom; only border-top.
 * Footer stamp (.gena-footer-rule) stays 2px below.
 */
html body .gena-site-header,
html body #mobile-panel > div:first-child {
  border-bottom-color: rgba(187, 165, 144, 0.18) !important;
  border-bottom-width: 1px !important;
  border-bottom-style: solid !important;
}
html body section.gena-about-approach,
html body section.gena-book-cta,
html body section.gena-services-cta,
html body section.gena-comfort,
html body section.gena-stats-banner,
html body section#faq,
html body section#services,
html body section[style*="border-top"] {
  border-top-width: 1px !important;
  border-top-style: solid !important;
  border-top-color: rgba(187, 165, 144, 0.18) !important;
  border-bottom: none !important;
  border-bottom-width: 0 !important;
}
html body footer {
  border-top: 1px solid rgba(187, 165, 144, 0.18) !important;
  border-top-width: 1px !important;
  border-top-style: solid !important;
  border-top-color: rgba(187, 165, 144, 0.18) !important;
  border-bottom: none !important;
}
html body section.gena-book-cta + footer,
html body section.gena-services-cta + section#faq,
html body section#faq + footer,
html body section.gena-about-cta + footer,
html body section.gena-home-cta + footer {
  border-top-width: 1px !important;
  border-top-color: rgba(187, 165, 144, 0.18) !important;
}

/* Footer stamp rule — thicker 2px (do NOT thin with section hairlines) */
html body .gena-footer-rule {
  border-bottom: 2px solid rgba(187, 165, 144, 0.45) !important;
  border-bottom-width: 2px !important;
}

/* Drawer — fully opaque brand dark (never 85% glass) */
html body #mobile-panel {
  background: #161411 !important;
  background-color: #161411 !important;
  background-image: none !important;
  opacity: 1 !important;
}

/* Mobile header — equal L/R inset (~16–20px); brand yields so burger stays fully visible */
@media (max-width: 1080px) {
  html body header.gena-site-header {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }
  html body header.gena-site-header > div {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    /* Match logo left inset; no oversized right pad */
    padding-left: max(16px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(16px, env(safe-area-inset-right, 0px)) !important;
    overflow: visible !important;
  }
  /* Brand yields; burger column never shrinks or clips */
  html body header.gena-site-header > div > a:first-child {
    flex: 1 1 auto !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: hidden !important;
  }
  html body header.gena-site-header > div > a:first-child span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 12px !important;
  }
  html body header.gena-site-header > div > div:last-child {
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
    overflow: visible !important;
  }
  html body .gena-hamburger {
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    margin: 8px 0 !important;
    margin-right: 0 !important;
    position: relative !important;
    right: auto !important;
    overflow: visible !important;
  }
}

/* Mobile burger + drawer close — no cream square stroke */
html body .gena-hamburger,
html body #hamburger-btn,
html body #close-menu-btn {
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
}
html body .gena-hamburger:hover,
html body .gena-hamburger:focus-visible,
html body #hamburger-btn:hover,
html body #hamburger-btn:focus-visible,
html body #close-menu-btn:hover,
html body #close-menu-btn:focus-visible {
  border: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
}
@media (max-width: 412px) {
  html body header.gena-site-header > div {
    gap: 8px !important;
    padding-left: max(16px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(16px, env(safe-area-inset-right, 0px)) !important;
  }
  html body header.gena-site-header > div > a:first-child {
    gap: 8px !important;
  }
  html body header.gena-site-header > div > a:first-child span {
    font-size: 11px !important;
    letter-spacing: 0.02em !important;
  }
}
@media (max-width: 360px) {
  html body header.gena-site-header > div > a:first-child span {
    display: none !important;
  }
}

/* Page-land H1s: visible + untransformed from first paint (SPA + hard load).
   Gallery “The Gena Space”, Contact “Visit the studio”, and About personal-care
   keep their own slide-up entrances. */
.gena-page-title:not(.gena-space-title):not(.gena-visit-title):not(.gena-about-title),
h1.gena-page-title:not(.gena-space-title):not(.gena-visit-title):not(.gena-about-title) {
  opacity: 1 !important;
  transform: none !important;
  translate: none !important;
  scale: none !important;
  transition: none !important;
  animation: none !important;
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal],
  .gena-fade-in {
    opacity: 1;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
  .gena-teaser-row,
  .gena-teaser-row.is-teaser-animating,
  .gena-teaser-row.is-teaser-in {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .gena-teaser-photo img,
  .gena-teaser-row.is-teaser-in .gena-teaser-photo img {
    clip-path: none !important;
    transform: none !important;
  }
  html.gena-has-hero-nav header.gena-site-header::before {
    transition: none !important;
  }
}
