/* VENDORED from design-concepts/APPROVED/shared/sets/A.css by scripts/gen/vendor-board.mjs. Do not edit: check-vendored-board.mjs
   re-derives this file and FAILS on drift. Transforms: board font folder -> /fonts/; board set assets -> /images/. */
/* APPROVED copy (TASK-CO1, 2026-10-16) of design-concepts/variant-V1-letterhead/modules/A.css: the frozen design reference for Phase 2 ([R25], GATE 1.5 R-24). Edit nothing here; a change is a new ruling. */
/* V1 Letterhead (set A): the 12 homepage modules (TASK-M, 2026-10-16). Every selector is scoped to [data-variant="A"] (shared/CONTRACT.md 4).
   Source of every value: the design team's index.html (approved identity, R-02) with the floor fixes: [R36] hero (small exact H1, display
   <p>), R-13 F2 Ken Burns on GSAP ([data-li1-settle], no @keyframes), F3 no hero glow, F4 specific headings, F5 centred-H2 run varied,
   F6 display ratio >= 6 (--s-6), F7 opened 390 rhythm (--sp-open), F8 no dark grey shadows; R-09 real reception, booking fixes, rating strip.
   Grounds (WORLD-BRIEF field 6): hero video · why cream · proof navy · booking cream (cream-hi panel) · routing cream · conditions cream-hi ·
   providers cream · payment cream-hi · gallery cream · locations navy · FAQ cream · CTA cream with the navy band. Never #000. */

/* ---------- shared within A ---------- */
[data-variant="A"]:is(.li-motion *) [data-li1-reveal] { opacity: 0; }
[data-variant="A"] .li-eyebrow + h2 { margin-top: 1.15rem; }
[data-variant="A"] h2 .li-em { font-style: italic; color: var(--bronze-dk); }

/* =========================================================== 1. HERO */
[data-variant="A"].li1-hero { position: relative; min-height: 100svh; display: flex; align-items: center; overflow: hidden; isolation: isolate;
  background: #2E2416; color: var(--cod); }
[data-variant="A"] .li1-hero-bg { position: absolute; inset: 0; z-index: -3; overflow: hidden; background: linear-gradient(115deg, #2E2416, #6A5334 58%, #9A7C4C); }
[data-variant="A"] .li1-hero-settle,
[data-variant="A"] .li1-hero-drift { position: absolute; inset: 0; transform-origin: 62% 42%; }
[data-variant="A"] .li1-hero-poster,
[data-variant="A"] .li1-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 78% 32%; }
[data-variant="A"] .li1-hero-video { opacity: 0; }
/* the team's warm wash and left shading for light text, WITHOUT the radial glow (R-13 F3) */
[data-variant="A"] .li1-hero-scrim { position: absolute; inset: 0; z-index: -1; pointer-events: none; background:
  linear-gradient(96deg, rgba(30,22,12,.72) 0%, rgba(38,28,15,.5) 30%, rgba(40,30,16,.2) 52%, rgba(40,30,16,0) 68%),
  linear-gradient(180deg, rgba(30,22,12,.34) 0%, transparent 22% 60%, rgba(26,18,10,.52) 100%),
  rgba(18,13,7,.16); }
[data-variant="A"] .li1-hero-in { width: 100%; padding-top: calc(var(--li-head-clear) + clamp(1rem, 3vh, 2.5rem)); padding-bottom: clamp(3rem, 7vh, 5rem); }
[data-variant="A"] .li1-hero-copy { max-width: min(66%, 860px); }
/* [R36] / R-12: the exact H1 as the small super-headline (Manrope 600, the team's eyebrow treatment), first in the hero DOM */
[data-variant="A"] .li1-hero-h1 { display: inline-flex; align-items: center; gap: .7rem; font-family: var(--f-b); font-size: var(--s-super); font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase; line-height: 1.35; color: var(--cod); }
[data-variant="A"] .li1-hero-h1::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--bronze); box-shadow: 0 0 0 4px rgba(183,139,91,.3); flex: none; }
[data-variant="A"] .li1-hero-display { font-family: var(--f-d); font-weight: 400; font-size: var(--s-6); line-height: .97; letter-spacing: -.018em; color: var(--cream);
  max-width: 8.6em; margin-top: clamp(1rem, 2vw, 1.5rem); text-shadow: 0 2px 30px rgba(20,14,6,.32); text-wrap: balance; }
[data-variant="A"] .li1-hero-lede { max-width: 40ch; margin-top: clamp(1.3rem, 2.4vw, 2rem); color: rgba(239,227,206,.9); font-size: clamp(1.1rem, 1.02rem + .45vw, 1.36rem); line-height: 1.6; }
[data-variant="A"] .li1-hero-actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: clamp(1.8rem, 3.2vw, 2.6rem); }
[data-variant="A"] .li1-hero-proof { margin-top: clamp(1.4rem, 2.6vw, 2.2rem); }

/* =========================================================== 2. WHY US (intro, mission, the room) */
[data-variant="A"].li1-why { background: var(--cream); padding-top: var(--sp-open); }
[data-variant="A"] .li1-intro { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1fr); column-gap: clamp(2.5rem, 6vw, 6.5rem); align-items: start; }
[data-variant="A"] .li1-intro-h { font-size: var(--s-4); line-height: 1.06; letter-spacing: -.012em; max-width: 12ch; }
[data-variant="A"] .li1-intro-body { display: grid; gap: 1.3rem; padding-top: .4rem; }
[data-variant="A"] .li1-intro-body p { color: var(--ink-72); line-height: 1.8; max-width: 62ch; }
[data-variant="A"] .li1-intro-body strong { color: var(--ink); font-weight: 600; }
[data-variant="A"] .li1-mission-wrap { margin-top: clamp(3.5rem, 6vw, 5.5rem); }
[data-variant="A"] .li1-mission { background: var(--ink); border-radius: var(--r-xl); display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr);
  column-gap: clamp(2.5rem, 6vw, 5.5rem); align-items: center; padding: clamp(3rem, 6vw, 5.5rem) clamp(2.2rem, 6vw, 5.5rem); }
[data-variant="A"] .li1-mission-h { color: var(--cream); font-size: clamp(2.3rem, 1.7rem + 2.6vw, 3.9rem); line-height: 1; letter-spacing: -.01em; max-width: 11ch; }
[data-variant="A"] .li1-mission-rule { display: block; margin-top: clamp(1.4rem, 2.5vw, 2rem); width: 64px; height: 2px; background: var(--bronze); }
[data-variant="A"] .li1-mission-text { color: var(--mist); font-size: clamp(1.05rem, .95rem + .5vw, 1.3rem); line-height: 1.7; }
[data-variant="A"] .li1-mission-text strong { color: var(--cream); font-weight: 600; }
/* the room: the REAL reception full-bleed where the package had stock joggers (R-09, [R24]); the team's navy panel over it */
[data-variant="A"] .li1-room { position: relative; isolation: isolate; overflow: hidden; margin-top: clamp(4rem, 7vw, 6.5rem);
  padding-top: clamp(16rem, 30vw, 26rem); padding-bottom: var(--sp-open); }
[data-variant="A"] .li1-room { background: var(--ink); }
[data-variant="A"] .li1-room-bg { position: absolute; left: 0; right: 0; top: 0; height: calc(clamp(16rem, 30vw, 26rem) + clamp(8rem, 14vw, 13rem)); z-index: -2; background: var(--teal); overflow: hidden; }
[data-variant="A"] .li1-room-img { position: absolute; left: 0; top: -8%; width: 100%; height: 116%; object-fit: cover; object-position: 50% 62%; }
[data-variant="A"] .li1-room-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(29,56,91,0) 0%, rgba(29,56,91,.08) 55%, rgba(29,56,91,.85) 92%, var(--ink) 100%); }
[data-variant="A"] .li1-room-cap { position: absolute; left: 0; right: 0; top: clamp(12.4rem, 26vw, 22rem); z-index: 1; }
[data-variant="A"] .li1-room-cap-in { display: inline-block; font-size: .78rem; font-weight: 600; letter-spacing: .02em; color: var(--ink); background: rgba(252,250,244,.9);
  border-radius: var(--r-pill); padding: .4rem .95rem; box-shadow: var(--sh-1); }
[data-variant="A"] .li1-room-panel { position: relative; overflow: hidden; background: var(--ink); color: var(--cod); border-radius: var(--r-xl); box-shadow: 0 40px 90px -46px rgba(29,56,91,.75); }
[data-variant="A"] .li1-room-inner { width: 62%; padding: clamp(2.2rem, 4vw, 3.8rem); }
[data-variant="A"] .li1-room-h { color: var(--cream); font-size: clamp(2.2rem, 1.6rem + 2.3vw, 3.4rem); line-height: 1.08; max-width: 16ch; }
[data-variant="A"] .li1-room-divide { display: block; height: 1px; background: rgba(46,90,143,.5); margin: clamp(1.5rem, 2.6vw, 2.2rem) 0; }
[data-variant="A"] .li1-room-points { display: grid; gap: 1.5rem; }
[data-variant="A"] .li1-room-pt { font-size: clamp(1.25rem, 1.1rem + .5vw, 1.55rem); line-height: 1.2; color: var(--cream); }
[data-variant="A"] .li1-room-point p { color: var(--mist); line-height: 1.75; font-size: .98rem; margin-top: .5rem; }
[data-variant="A"] .li1-room-point strong { color: var(--cod); }
[data-variant="A"] .li1-room-cta { margin-top: clamp(1.8rem, 3vw, 2.4rem); }
[data-variant="A"] .li1-room-media { position: absolute; top: 0; right: 0; bottom: 0; width: 38%; overflow: hidden; }
[data-variant="A"] .li1-room-inset { width: 100%; height: 100%; object-fit: cover; }

/* =========================================================== 3. PROOF WALL (navy) */
[data-variant="A"].li1-proof { background: var(--ink) url("/images/review-bg.svg") center / cover no-repeat; color: var(--cod); padding-block: var(--sp-open); }
[data-variant="A"] .li1-proof-head { text-align: center; max-width: 54rem; margin: 0 auto clamp(2.6rem, 5vw, 3.6rem); display: grid; justify-items: center; gap: 1.3rem; }
[data-variant="A"] .li1-proof-h { color: var(--cream); font-size: clamp(2.4rem, 1.7rem + 2.7vw, 3.9rem); line-height: 1.1; }
[data-variant="A"] .li1-proof-h .li-em { color: var(--bronze); }
[data-variant="A"] .li1-proof-meta { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .7rem 1.2rem; }
[data-variant="A"] .li1-proof-rating { display: inline-flex; align-items: center; gap: .7rem; color: var(--cod); font-weight: 500; border-bottom: 1px solid rgba(239,227,206,.3); padding-bottom: 2px; }
[data-variant="A"] .li1-proof-rating:hover { border-color: var(--cod); }
[data-variant="A"] .li1-proof-pending { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--cod); border: 1px dashed rgba(239,227,206,.45); border-radius: var(--r-pill); padding: .3rem .75rem; }
[data-variant="A"] .li1-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 2 * 1.6rem) / 3); gap: 1.6rem; overflow-x: auto;
  scroll-snap-type: x mandatory; scrollbar-width: none; padding: .3rem .1rem .6rem; outline-offset: 4px; }
[data-variant="A"] .li1-track::-webkit-scrollbar { display: none; }
[data-variant="A"] .li1-rev { scroll-snap-align: start; background: var(--cream-hi); color: var(--ink); border-radius: var(--r-l); padding: clamp(1.9rem, 2.4vw, 2.6rem);
  display: flex; flex-direction: column; gap: 1rem; min-height: 340px; }
[data-variant="A"] .li1-rev .li-stars svg { width: 15px; height: 15px; }
[data-variant="A"] .li1-rev-q { margin: 0; }
[data-variant="A"] .li1-rev-t { color: rgba(29,56,91,.8); font-size: .96rem; line-height: 1.78; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; overflow: hidden; }
[data-variant="A"] .li1-rev.is-expanded .li1-rev-t { -webkit-line-clamp: unset; overflow: visible; }
[data-variant="A"] .li1-rev-more { align-self: flex-start; display: inline-flex; align-items: center; gap: .35rem; font-size: .75rem; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: var(--bronze-dk); transition: color .3s var(--ease); }
[data-variant="A"] .li1-rev-more[data-collapsed] { display: none; }
[data-variant="A"] .li1-rev-more:hover { color: var(--bronze); }
[data-variant="A"] .li1-rev-more svg { width: 11px; height: 11px; transition: transform .3s var(--ease); }
[data-variant="A"] .li1-rev.is-expanded .li1-rev-more svg { transform: rotate(180deg); }
[data-variant="A"] .li1-rev-who { display: flex; align-items: center; gap: .95rem; margin-top: auto; }
[data-variant="A"] .li1-rev-av { width: 52px; height: 52px; border-radius: 50%; flex: none; display: grid; place-items: center; color: var(--cream);
  background: linear-gradient(140deg, var(--teal), var(--bronze)); font-family: var(--f-d); font-size: 1.05rem; letter-spacing: .02em; }
[data-variant="A"] .li1-rev-meta { display: flex; flex-direction: column; gap: .22rem; }
[data-variant="A"] .li1-rev-n { font-family: var(--f-d); font-size: 1.2rem; line-height: 1.1; color: var(--ink); }
[data-variant="A"] .li1-rev-src { font-size: .72rem; color: var(--bronze-dk); letter-spacing: .14em; text-transform: uppercase; }
[data-variant="A"] .li1-rev-src:hover { color: var(--ink); }
[data-variant="A"] .li1-cnav { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: clamp(1.6rem, 3vw, 2.4rem); }
[data-variant="A"] .li1-cbtn { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--line-dark); color: var(--cod); display: grid; place-items: center;
  transition: background-color .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease); }
[data-variant="A"] .li1-cbtn:hover { background: var(--bronze); color: var(--ink); border-color: var(--bronze); }
[data-variant="A"] .li1-cbtn svg { width: 18px; height: 18px; }
[data-variant="A"] .li1-cbtn[aria-disabled="true"] { opacity: .4; }
[data-variant="A"] .li1-dots { display: flex; gap: .5rem; align-items: center; }
[data-variant="A"] .li1-dot { width: 9px; height: 9px; border-radius: 50%; background: rgba(239,227,206,.26); transition: background-color .3s var(--ease), transform .3s var(--ease); }
[data-variant="A"] .li1-dot.is-on { background: var(--bronze); transform: scale(1.22); }
[data-variant="A"] .li1-proof-note { text-align: center; margin-top: 1.6rem; font-size: .84rem; color: var(--mist); }

/* =========================================================== 4. BOOKING RAIL */
[data-variant="A"].li1-book { background: var(--cream); padding-block: var(--sp-open); }
[data-variant="A"] .li1-book-panel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .95fr); gap: clamp(2rem, 4vw, 4rem); align-items: start;
  background: var(--cream-hi); border: 1px solid var(--ink-09); border-radius: var(--r-xl); box-shadow: var(--sh-1); padding: clamp(1.4rem, 3vw, 3rem); }
[data-variant="A"] .li1-book-copy { padding: clamp(.6rem, 1.5vw, 1.2rem) clamp(0rem, 1vw, 1rem) 0; }
/* the team's nowrap heading broke at 390 and clipped at 1440 (R-09 layout fix): it wraps now */
[data-variant="A"] .li1-book-h { font-size: clamp(2.4rem, 1.8rem + 2.7vw, 3.9rem); line-height: 1.05; max-width: 12ch; }
[data-variant="A"] .li1-book-plan { margin-top: 1.6rem; }
[data-variant="A"] .li1-book-assure { list-style: none; margin: 1.6rem 0 0; padding: 0; display: grid; gap: .8rem; }
[data-variant="A"] .li1-book-assure li { display: flex; gap: .75rem; align-items: flex-start; color: var(--ink-72); line-height: 1.6; font-size: .96rem; }
[data-variant="A"] .li1-book-assure svg { width: 20px; height: 20px; flex: none; color: var(--bronze-dk); margin-top: .1rem; }
[data-variant="A"] .li1-book-proof { margin-top: 1.8rem; padding-top: 1.4rem; border-top: 1px solid var(--ink-09); }

/* =========================================================== 5. ENTITY ROUTING (hub explorer + elevated three) */
[data-variant="A"].li1-route { background: var(--cream); padding-block: var(--sp-open); }
[data-variant="A"] .li1-hub { display: grid; grid-template-columns: minmax(0, .4fr) minmax(0, .6fr); column-gap: clamp(2rem, 4vw, 3.75rem); row-gap: clamp(2.4rem, 4vw, 3.6rem); }
[data-variant="A"] .li1-hub-headL { grid-column: 1; grid-row: 1; align-self: end; }
[data-variant="A"] .li1-hub-h { font-size: clamp(2.6rem, 1.8rem + 3.3vw, 4.3rem); line-height: 1.06; letter-spacing: -.012em; max-width: 11ch; }
[data-variant="A"] .li1-hub-headR { grid-column: 2; grid-row: 1; align-self: end; max-width: 46rem; color: var(--ink-72); line-height: 1.8; }
[data-variant="A"] .li1-hub-navL { grid-column: 1; grid-row: 2; min-width: 0; }
[data-variant="A"] .li1-hub-nav { display: flex; flex-direction: column; position: sticky; top: calc(var(--li-head-clear) - var(--li-announce-h, 38px) + 1rem); }
[data-variant="A"] .li1-hub-tab { display: flex; align-items: baseline; gap: 1rem; width: 100%; padding: 1.15rem .1rem; text-align: left; position: relative;
  border-bottom: 1px solid var(--ink-16); transition: color .3s var(--ease); }
[data-variant="A"] .li1-hub-tab:first-child { border-top: 1px solid var(--ink-16); }
[data-variant="A"] .li1-hub-n { font-size: var(--s--1); font-weight: 600; color: var(--ink-40); flex: none; transition: color .3s var(--ease); }
[data-variant="A"] .li1-hub-l { font-family: var(--f-d); font-size: 1.45rem; line-height: 1.25; color: var(--ink-72); transition: color .3s var(--ease); }
[data-variant="A"] .li1-hub-tab:hover .li1-hub-l { color: var(--ink); }
[data-variant="A"] .li1-hub-tab.is-active .li1-hub-n,
[data-variant="A"] .li1-hub-tab.is-active .li1-hub-l { color: var(--bronze-dk); }
[data-variant="A"] .li1-hub-tab::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--bronze); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--eout); }
[data-variant="A"] .li1-hub-tab.is-active::after { transform: scaleX(1); }
[data-variant="A"] .li1-hub-content { grid-column: 2; grid-row: 2; min-width: 0; }
[data-variant="A"] .li1-hub-panel + .li1-hub-panel { margin-top: 3.5rem; }
[data-variant="A"]:is(.js *) .li1-hub-panel + .li1-hub-panel { margin-top: 0; }
[data-variant="A"] .li1-hub-panel[hidden] { display: none; }
[data-variant="A"] .li1-hub-title { font-size: clamp(2rem, 1.55rem + 1.6vw, 2.7rem); line-height: 1.12; letter-spacing: -.008em; }
[data-variant="A"] .li1-hub-title a { transition: color .3s var(--ease); }
[data-variant="A"] .li1-hub-title a:hover { color: var(--bronze-dk); }
[data-variant="A"] .li1-hub-panel-head p { font-size: var(--s-0); color: var(--ink-72); line-height: 1.8; margin-top: 1.1rem; max-width: 46rem; }
[data-variant="A"] .li1-hub-cards { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.2rem, 2vw, 1.6rem); margin-top: clamp(2.2rem, 3.6vw, 3rem); align-items: stretch; }
[data-variant="A"] .li1-hub-card { display: flex; flex-direction: column; background: var(--cream-hi); border-radius: var(--r-l); overflow: hidden; border: 1px solid var(--ink-09); }
[data-variant="A"] .li1-hub-card-media { position: relative; aspect-ratio: 3 / 2; background: var(--sand); overflow: hidden; }
[data-variant="A"] .li1-hub-card-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--ease); }
[data-variant="A"] .li1-hub-card:hover .li1-hub-card-img { transform: scale(1.05); }
[data-variant="A"] .li1-hub-card-b { display: flex; flex-direction: column; flex: 1; gap: .6rem; padding: 1.5rem 1.4rem 1.7rem; }
[data-variant="A"] .li1-hub-card-h { font-size: clamp(1.5rem, 1.3rem + .6vw, 1.85rem); line-height: 1.15; }
[data-variant="A"] .li1-hub-card-b p { color: var(--ink-58); font-size: .93rem; line-height: 1.65; }
[data-variant="A"] .li1-hub-learn { margin-top: auto; padding-top: .5rem; }
/* elevated three: the team's Solutions fan + accordion */
[data-variant="A"] .li1-sol { margin-top: clamp(5rem, 9vw, 8rem); }
[data-variant="A"] .li1-sol-head { text-align: center; max-width: 900px; margin: 0 auto; }
[data-variant="A"] .li1-sol-h { font-size: clamp(2.6rem, 1.85rem + 3.1vw, 4.4rem); line-height: 1.06; letter-spacing: -.012em; }
[data-variant="A"] .li1-sol-head p { color: var(--ink-72); margin: 1.3rem auto 0; max-width: 46rem; line-height: 1.7; }
[data-variant="A"] .li1-sol-stage { display: flex; justify-content: center; margin: clamp(2.6rem, 5vw, 4rem) 0; }
[data-variant="A"] .li1-sol-fan { position: relative; display: flex; align-items: center; justify-content: center; }
[data-variant="A"] .li1-sol-pic { width: clamp(170px, 20vw, 250px); aspect-ratio: 4 / 5; border-radius: var(--r-l); overflow: hidden; box-shadow: var(--sh-2); background: var(--sand); position: relative; }
[data-variant="A"] .li1-sol-pic img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
[data-variant="A"] .li1-sol-pic--l { transform: rotate(-9deg) translateX(24%); z-index: 1; }
[data-variant="A"] .li1-sol-pic--r { transform: rotate(9deg) translateX(-24%); z-index: 1; }
[data-variant="A"] .li1-sol-pic--c { z-index: 2; width: clamp(210px, 25vw, 310px); transform: translateY(-14px); }
[data-variant="A"] .li1-sol-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(.9rem, 1.6vw, 1.4rem); align-items: start; }
[data-variant="A"] .li1-sol-item { background: var(--cream-hi); border: 1px solid var(--ink-09) !important; border-radius: var(--r-m); overflow: hidden;
  transition: box-shadow .35s var(--ease), border-color .35s var(--ease); }
[data-variant="A"] .li1-sol-item:hover { box-shadow: var(--sh-1); }
[data-variant="A"] .li1-sol-q { padding: 1.2rem 1.3rem; gap: .9rem; justify-content: flex-start; }
[data-variant="A"] .li1-sol-ic { color: var(--teal); flex: none; display: flex; }
[data-variant="A"] .li1-sol-ic svg { width: 30px; height: 30px; }
[data-variant="A"] .li1-sol-qt { font-family: var(--f-d); font-size: 1.22rem; line-height: 1.25; color: var(--ink); flex: 1 1 auto; font-weight: 400; }
[data-variant="A"] .li1-sol-q .li-acc-ic { width: 32px; height: 32px; }
[data-variant="A"] .li1-sol-a { padding: 0 1.4rem 1.4rem; display: grid; gap: .9rem; justify-items: start; }
[data-variant="A"] .li1-sol-a p { color: var(--ink-58); font-size: .94rem; line-height: 1.65; }

/* =========================================================== 6. CONDITION ROUTER (the team's hover-expand rail; flex-grow + max-height:
   the TASTE section 7 recorded exception class, flagged in DESIGN-SPEC) */
[data-variant="A"].li1-cond { background: var(--cream-hi); padding-block: var(--sp-open); }
[data-variant="A"] .li1-cond-head { text-align: center; max-width: 900px; margin: 0 auto; }
[data-variant="A"] .li1-cond-head .li-eyebrow { justify-content: center; }
[data-variant="A"] .li1-cond-h { font-size: clamp(2.6rem, 1.8rem + 3.3vw, 4.3rem); line-height: 1.06; letter-spacing: -.012em; }
[data-variant="A"] .li1-cond-head p { color: var(--ink-72); margin: 1.5rem auto 0; max-width: 72ch; line-height: 1.7; }
[data-variant="A"] .li1-cond-rail { display: flex; gap: 1rem; height: clamp(440px, 56vh, 560px); margin-top: clamp(3rem, 5vw, 4.5rem); }
[data-variant="A"] .li1-cond-card { position: relative; flex: 1 1 0; min-width: clamp(150px, 15vw, 190px); border-radius: var(--r-l); overflow: hidden; cursor: pointer;
  background: var(--teal); isolation: isolate; transition: flex-grow .7s var(--ease), box-shadow .7s var(--ease); }
[data-variant="A"] .li1-cond-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(.9); transition: transform 1.1s var(--ease), filter .7s var(--ease); }
[data-variant="A"] .li1-cond-card::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(29,56,91,0) 30%, rgba(29,56,91,.5) 58%, rgba(29,56,91,.92) 100%); }
[data-variant="A"] .li1-cond-in { position: absolute; inset: 0; z-index: 3; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.6rem 1.5rem; }
[data-variant="A"] .li1-cond-card-h { font-size: clamp(1.6rem, 1.35rem + .7vw, 2rem); line-height: 1.12; color: var(--cream); }
[data-variant="A"] .li1-cond-body { overflow: hidden; }
[data-variant="A"] .li1-cond-body p { color: rgba(239,227,206,.9); font-size: .95rem; line-height: 1.6; margin: .7rem 0 1rem; max-width: 60ch; }
[data-variant="A"]:is(.js *) .li1-cond-card:not(.is-open) .li1-cond-body { max-height: 0; visibility: hidden; }
[data-variant="A"]:is(.js *) .li1-cond-card .li1-cond-body { max-height: 260px; transition: max-height .7s var(--ease), visibility 0s linear 0s; }
[data-variant="A"] .li1-cond-card.is-open { flex-grow: 3.2; box-shadow: var(--sh-2); }
[data-variant="A"] .li1-cond-card.is-open .li1-cond-img { transform: scale(1.05); filter: brightness(1); }
[data-variant="A"] .li1-cond-card:focus-visible { box-shadow: 0 0 0 3px var(--cream), 0 0 0 5px #2E5A8F; }
[data-variant="A"] .li1-cond-all { display: flex; justify-content: center; margin-top: clamp(2rem, 3.4vw, 2.8rem); }

/* =========================================================== 7. PROVIDERS (the team's About anatomy) */
[data-variant="A"].li1-doc { background: var(--cream); padding-block: var(--sp-open); }
[data-variant="A"] .li1-doc-grid { display: grid; grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr); gap: clamp(2.75rem, 6vw, 7rem); align-items: center; }
[data-variant="A"] .li1-doc-frame { position: relative; border-radius: var(--r-l); overflow: hidden; aspect-ratio: .76 / 1; background: linear-gradient(150deg, #E8DCC6, #CBB083); box-shadow: var(--sh-2); }
[data-variant="A"] .li1-doc-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 14%; }
[data-variant="A"] .li1-doc-frame::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 42%, rgba(13,22,36,.18) 62%, rgba(13,22,36,.9) 100%); }
[data-variant="A"] .li1-doc-cap { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: clamp(1.7rem, 3.2vw, 2.4rem) clamp(1.6rem, 3vw, 2.2rem); }
[data-variant="A"] .li1-doc-name { font-family: var(--f-d); color: var(--cream); font-size: clamp(1.5rem, 1.05rem + 1.7vw, 2.1rem); line-height: 1.1; }
[data-variant="A"] .li1-doc-rule { display: block; width: 42px; height: 1.5px; background: var(--bronze); margin: .85rem 0 .7rem; }
[data-variant="A"] .li1-doc-role { font-size: .72rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--bronze); }
[data-variant="A"] .li1-doc-h { font-size: clamp(2.6rem, 1.85rem + 3.2vw, 4.4rem); line-height: 1.06; letter-spacing: -.012em; margin-top: 1.2rem; max-width: 13ch; }
[data-variant="A"] .li1-doc-copy p { color: var(--ink-72); margin-top: 1.6rem; line-height: 1.8; max-width: 58ch; }
[data-variant="A"] .li1-doc-btn { margin-top: 2.1rem; }

/* =========================================================== 8. PAYMENT STRIP */
[data-variant="A"].li1-pay { background: var(--cream-hi); padding-block: var(--sp-open); border-block: 1px solid var(--ink-09); }
[data-variant="A"] .li1-pay .li-pay-head .li-eyebrow + .li-pay-h { margin-top: .1rem; }

/* =========================================================== 9. GALLERY (gapless bento, 4 x 4 at desktop, 2 x 7 at 390) */
[data-variant="A"].li1-gal { background: var(--cream); padding-block: var(--sp-open); }
[data-variant="A"] .li1-gal-head { display: grid; gap: 0; max-width: 40rem; }
[data-variant="A"] .li1-gal-h { font-size: clamp(2.6rem, 1.8rem + 3.3vw, 4.3rem); line-height: 1.06; letter-spacing: -.012em; }
[data-variant="A"] .li1-gal-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: clamp(150px, 15vw, 230px); gap: var(--cgap);
  grid-template-areas: "a a b b" "a a c d" "e f f d" "g g h h"; margin-top: clamp(2.6rem, 4.5vw, 3.6rem); }
[data-variant="A"] .li1-gal-item { position: relative; margin: 0; border-radius: var(--r-l); overflow: hidden; background: var(--sand); }
[data-variant="A"] .li1-gal-item--a { grid-area: a; } [data-variant="A"] .li1-gal-item--b { grid-area: b; } [data-variant="A"] .li1-gal-item--c { grid-area: c; }
[data-variant="A"] .li1-gal-item--d { grid-area: d; } [data-variant="A"] .li1-gal-item--e { grid-area: e; } [data-variant="A"] .li1-gal-item--f { grid-area: f; }
[data-variant="A"] .li1-gal-item--g { grid-area: g; } [data-variant="A"] .li1-gal-item--h { grid-area: h; }
[data-variant="A"] .li1-gal-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s var(--ease); }
[data-variant="A"] .li1-gal-item:hover .li1-gal-img { transform: scale(1.05); }
[data-variant="A"] .li1-gal-cap { position: absolute; left: .8rem; right: .8rem; bottom: .8rem; font-size: .76rem; line-height: 1.35; color: var(--ink); background: rgba(252,250,244,.92);
  border-radius: 12px; padding: .5rem .75rem; transform: translateY(calc(100% + 1rem)); transition: transform .5s var(--eout); }
[data-variant="A"] .li1-gal-item:hover .li1-gal-cap { transform: none; }

/* =========================================================== 10. LOCATIONS (navy letterhead) */
[data-variant="A"].li1-loc { background: var(--ink); color: var(--cod); padding-block: var(--sp-open); }
[data-variant="A"] .li1-loc-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2.5rem, 6vw, 6rem); align-items: center; }
[data-variant="A"] .li1-loc-h { color: var(--cream); font-size: clamp(2.6rem, 1.8rem + 3.3vw, 4.3rem); line-height: 1.04; letter-spacing: -.012em; max-width: 12ch; }
[data-variant="A"] .li1-loc-h .li-em { color: var(--bronze); }
[data-variant="A"] .li1-loc-body { color: var(--mist); margin: 1.4rem 0 1.8rem; line-height: 1.75; max-width: 46ch; font-size: 1.05rem; }
[data-variant="A"] .li1-loc-sheet { position: relative; background: var(--teal); border-radius: var(--r-xl); padding: clamp(2rem, 4vw, 3.4rem); box-shadow: inset 0 1px 0 rgba(239,227,206,.08); }
[data-variant="A"] .li1-loc-mark { width: 46px; height: 46px; opacity: .9; }
[data-variant="A"] .li1-loc-notes { list-style: none; margin: 1.6rem 0 0; padding: 0; }
[data-variant="A"] .li1-loc-notes li { position: relative; padding: 1.15rem 0 1.15rem 1.6rem; border-top: 1px solid var(--line-dark); color: var(--cod); line-height: 1.6; font-size: 1.02rem; }
[data-variant="A"] .li1-loc-notes li::before { content: ""; position: absolute; left: 0; top: 1.72rem; width: 7px; height: 7px; border-radius: 50%; background: var(--bronze); }
[data-variant="A"] .li1-loc-disc { margin-top: 1.2rem; padding-top: 1rem; border-top: 1px solid var(--line-dark); font-size: .82rem; color: var(--mist); }

/* =========================================================== 11. FAQ */
[data-variant="A"].li1-faq { background: var(--cream); padding-block: var(--sp-open); }
[data-variant="A"] .li1-faq-head { text-align: center; margin-bottom: clamp(2.6rem, 5vw, 3.6rem); }
[data-variant="A"] .li1-faq-head .li-eyebrow { justify-content: center; }
[data-variant="A"] .li1-faq-h { font-size: clamp(2.5rem, 1.8rem + 3vw, 4.2rem); line-height: 1.06; }

/* =========================================================== 12. CTA BAND (the shared closing band on a cream ground) */
[data-variant="A"].li1-cta { background: var(--cream); padding-block: var(--sp-open); }
[data-variant="A"] .li-closing .li-eyebrow + .li-closing-h { margin-top: 1rem; }

/* =========================================================== responsive */
@media (max-width: 1023.98px) {
  [data-variant="A"] .li1-hero-copy { max-width: min(84%, 640px); }
  [data-variant="A"] .li1-intro { grid-template-columns: minmax(0, 1fr); row-gap: 2rem; }
  [data-variant="A"] .li1-mission { grid-template-columns: minmax(0, 1fr); row-gap: 1.8rem; }
  [data-variant="A"] .li1-room-inner { width: 100%; }
  [data-variant="A"] .li1-room-media { position: relative; width: 100%; height: 300px; }
  [data-variant="A"] .li1-track { grid-auto-columns: calc((100% - 1.6rem) / 2); }
  [data-variant="A"] .li1-book-panel { grid-template-columns: minmax(0, 1fr); }
  [data-variant="A"] .li1-hub { grid-template-columns: minmax(0, 1fr); row-gap: 2rem; }
  [data-variant="A"] .li1-hub-headL, [data-variant="A"] .li1-hub-headR, [data-variant="A"] .li1-hub-navL, [data-variant="A"] .li1-hub-content { grid-column: 1; grid-row: auto; }
  [data-variant="A"] .li1-hub-nav { position: static; flex-direction: row; overflow-x: auto; scrollbar-width: none; gap: .5rem; padding-bottom: .2rem; }
  [data-variant="A"] .li1-hub-nav::-webkit-scrollbar { display: none; }
  [data-variant="A"] .li1-hub-tab { flex: none; flex-direction: column; align-items: flex-start; gap: .3rem; width: auto; padding: .85rem 1.15rem;
    border: 1px solid var(--ink-16); border-radius: var(--r-m); white-space: nowrap; }
  [data-variant="A"] .li1-hub-tab:first-child { border-top: 1px solid var(--ink-16); }
  [data-variant="A"] .li1-hub-tab::after { display: none; }
  [data-variant="A"] .li1-hub-tab.is-active { border-color: var(--bronze); background: var(--cream-hi); }
  [data-variant="A"] .li1-hub-l { font-size: 1.2rem; }
  [data-variant="A"] .li1-sol-cards { grid-template-columns: 1fr 1fr; }
  [data-variant="A"] .li1-doc-grid { grid-template-columns: minmax(0, 1fr); gap: 3rem; }
  [data-variant="A"] .li1-doc-media { max-width: 460px; }
  [data-variant="A"] .li1-loc-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  /* hero at 390: H1, display, Book, tel and the rating above the mobile bar (the CRO fold) */
  [data-variant="A"].li1-hero { min-height: 100svh; align-items: flex-start; }
  [data-variant="A"] .li1-hero-in { padding-top: calc(var(--li-head-clear) + .4rem); padding-bottom: 2.5rem; }
  [data-variant="A"] .li1-hero-copy { max-width: 100%; }
  [data-variant="A"] .li1-hero-poster, [data-variant="A"] .li1-hero-video { object-position: 68% 28%; }
  [data-variant="A"] .li1-hero-scrim { background: linear-gradient(180deg, rgba(30,22,12,.52) 0%, rgba(30,22,12,.62) 50%, rgba(26,18,10,.7) 100%); }
  [data-variant="A"] .li1-hero-h1 { letter-spacing: .14em; }
  [data-variant="A"] .li1-hero-display { max-width: none; margin-top: .9rem; }
  [data-variant="A"] .li1-hero-lede { font-size: 1.04rem; margin-top: 1rem; }
  [data-variant="A"] .li1-hero-actions { margin-top: 1.4rem; gap: .65rem; }
  [data-variant="A"] .li1-hero-actions .li-btn { width: 100%; justify-content: space-between; min-height: 3.2rem; }
  [data-variant="A"] .li1-hero-proof { margin-top: 1.1rem; }
  /* the opened 390 rhythm (R-13 F7): bands keep --sp-open (80 px a side) */
  [data-variant="A"] .li1-mission { padding: 2.4rem 1.6rem; }
  [data-variant="A"] .li1-room { padding-top: 15rem; }
  [data-variant="A"] .li1-room-cap { top: 11rem; }
  [data-variant="A"] .li1-room-inner { padding: 2rem 1.5rem; }
  [data-variant="A"] .li1-room-cta { width: 100%; justify-content: space-between; white-space: normal; }
  [data-variant="A"] .li1-room-media { height: 260px; }
  [data-variant="A"] .li1-room-bg { height: 23rem; }
  [data-variant="A"] .li1-track { grid-auto-columns: 86%; gap: 1rem; }
  [data-variant="A"] .li1-rev { min-height: 0; }
  [data-variant="A"] .li1-book-panel { padding: 1.4rem 1.1rem; border-radius: var(--r-l); }
  [data-variant="A"] .li1-hub-cards { grid-template-columns: minmax(0, 1fr); }
  [data-variant="A"] .li1-sol-fan { width: 100%; height: clamp(250px, 70vw, 300px); }
  [data-variant="A"] .li1-sol-pic--l, [data-variant="A"] .li1-sol-pic--r { position: absolute; top: 50%; width: clamp(96px, 28vw, 130px); }
  [data-variant="A"] .li1-sol-pic--l { left: calc(50% - 150px); transform: translateY(-50%) rotate(-8deg); }
  [data-variant="A"] .li1-sol-pic--r { right: calc(50% - 150px); transform: translateY(-50%) rotate(8deg); }
  [data-variant="A"] .li1-sol-pic--c { width: clamp(170px, 52vw, 210px); transform: none; margin-inline: auto; }
  [data-variant="A"] .li1-sol-cards { grid-template-columns: minmax(0, 1fr); }
  [data-variant="A"] .li1-cond-rail { flex-direction: column; height: auto; }
  [data-variant="A"] .li1-cond-card { flex: none; height: 400px; min-width: 0; }
  [data-variant="A"] .li1-cond-card.is-open { flex: none; }
  [data-variant="A"]:is(.js *) .li1-cond-card:not(.is-open) .li1-cond-body,
  [data-variant="A"] .li1-cond-body { max-height: none; visibility: visible; }
  [data-variant="A"] .li1-cond-card::after { background: linear-gradient(180deg, rgba(29,56,91,0) 8%, rgba(29,56,91,.42) 30%, rgba(29,56,91,.86) 54%, rgba(29,56,91,.98) 100%); }
  [data-variant="A"] .li1-cond-img, [data-variant="A"] .li1-cond-card.is-open .li1-cond-img { transform: none; filter: brightness(.9); }
  [data-variant="A"] .li1-cond-in { padding: 1.8rem 1.5rem; }
  [data-variant="A"] .li1-doc-btn { width: 100%; justify-content: space-between; }
  [data-variant="A"] .li1-gal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 150px; grid-template-areas: "a a" "a a" "b b" "c d" "e d" "f f" "g h"; }
  [data-variant="A"] .li1-gal-cap { display: none; }
  [data-variant="A"] .li1-faq-head { text-align: left; }
  [data-variant="A"] .li1-faq-head .li-eyebrow { justify-content: flex-start; }
}
