/* Eden Love Space: Version Four. Editorial banner and a split section with a fine center line. */

.eden-v4{margin:0;background:#FFF8F1;color:#2B0B12;font-family:var(--font-body)}
.eden-v4 a{text-decoration:none;color:inherit}

/* ---------- Top bar: links left and right, logo box in the middle ---------- */
.top{position:absolute;z-index:20;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:24px;padding:clamp(22px,3.4vh,40px) var(--pad) 0}
.admin-bar .top{top:32px}
.top__links{display:flex;gap:clamp(18px,2.4vw,40px);padding-top:22px;white-space:nowrap}
.top__links a{position:relative;padding:4px 0;opacity:.92;transition:opacity .3s ease}
.top__links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
.top__links a:hover{opacity:1}
.top__links a:hover::after{transform:scaleX(1);transform-origin:left}
.top__links--l{justify-self:start}
.top__right{justify-self:end;display:flex;align-items:flex-start;gap:clamp(18px,2.4vw,36px)}
.top__links--r{justify-self:end}
.top__logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:clamp(104px,8.6vw,132px);aspect-ratio:1;padding:14px;box-shadow:0 14px 40px rgba(30,6,14,.16);transition:transform .6s var(--ease)}
.top__logo:hover{transform:translateY(-3px)}
.top__logo img{max-width:100%;max-height:100%;object-fit:contain}
.top__mark{display:block;width:58%;height:22%;border:1.5px solid #8B1E3F;border-bottom:0;position:relative}
.top__mark::after{content:"";position:absolute;left:20%;right:20%;top:30%;bottom:0;border:1.5px solid #8B1E3F;border-bottom:0}
.top__name{text-align:center;letter-spacing:.28em;text-transform:uppercase;font-size:clamp(9px,.8vw,var(--fs))!important}
.btn--nav{padding:1.05em 1.6em;margin-top:9px}
.top__toggle{display:none;align-items:center;gap:10px;height:44px;padding:0 18px;margin-top:12px;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 45%,transparent);background:transparent;font:500 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;cursor:pointer}
.top__toggle i{display:block;width:18px;height:7px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}

.top__toggle{display:inline-flex}
.top--bare .top__links{display:none}
.top__right{grid-column:3}

/* Slide-in menu from the right on a frosted glass panel */
.v4menu{position:fixed;inset:0;z-index:40;visibility:hidden;pointer-events:none}
.v4menu__veil{position:absolute;inset:0;background:rgba(30,6,14,.28);opacity:0;transition:opacity .6s ease}
.v4menu__panel{position:absolute;top:0;right:0;bottom:0;width:min(440px,100%);display:flex;flex-direction:column;padding:clamp(24px,4vh,40px) clamp(28px,3.4vw,52px);background:var(--menu-bg);border-left:1px solid rgba(255,248,241,.22);-webkit-backdrop-filter:blur(var(--menu-blur,24px)) saturate(160%);backdrop-filter:blur(var(--menu-blur,24px)) saturate(160%);box-shadow:-30px 0 80px rgba(30,6,14,.25);transform:translateX(100%);transition:transform .8s var(--ease);color:#FFF8F1}
.v4menu__close{align-self:flex-end;display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,248,241,.4);background:transparent;color:inherit;font:500 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;cursor:pointer}
.v4menu__close i{position:relative;width:14px;height:14px}
.v4menu__close i::before,.v4menu__close i::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;background:currentColor;transform:rotate(45deg)}
.v4menu__close i::after{transform:rotate(-45deg)}
.v4menu__links{display:flex;flex-direction:column;gap:clamp(10px,1.8vh,18px);margin:auto 0;padding:24px 0}
.v4menu__links a{display:block;font:400 clamp(26px,2.6vw,38px)/1.15 var(--font-display);opacity:0;transform:translateX(40px);transition:opacity .5s ease,transform .7s var(--ease),color .3s ease}
.v4menu__links a:hover{color:#F2D7D5}
.v4menu__foot{font:500 12px/1.6 var(--font-body);letter-spacing:.08em;opacity:.75}
.menu-open .v4menu{visibility:visible;pointer-events:auto}
.menu-open .v4menu__veil{opacity:1}
.menu-open .v4menu__panel{transform:none}
.menu-open .v4menu__links a{opacity:1;transform:none;transition-delay:calc(.18s + var(--i) * .05s)}
.menu-open{overflow:hidden}

@media (max-width:1100px){
  .top{grid-template-columns:auto 1fr}
  .top__links,.btn--nav{display:none}
  .top__logo{grid-column:1;width:96px}
  .top__right,.top--bare .top__right{grid-column:2}
  .top__toggle{display:inline-flex}
}

/* ---------- Banner: pinned while the word moves to the corner ---------- */
.banner{position:relative;height:calc(var(--h,100vh) + var(--run,90vh));background:var(--tint);color:#FFF8F1}
.banner__stage{position:sticky;top:0;height:var(--h,100vh);min-height:560px;overflow:hidden;isolation:isolate}
.banner__bg{position:absolute;inset:0;z-index:-2;will-change:transform}
.banner__slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity var(--swap,50ms) linear}
.banner__slide.is-active{opacity:1}
.banner__shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,var(--tint) 0%,transparent 26%,transparent 58%,var(--tint) 100%);opacity:var(--tint-o)}
.banner__shade::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 50% 40% at 0% 100%,var(--tint),transparent 70%);opacity:var(--corner,0)}

/* The big word: the script places and scales it; without the script it sits in the middle */
/* size: a clamp that fills the chosen share of the screen width; --k (letters per width) is measured once by the script */
.banner__word{position:absolute;left:50%;top:var(--wy,50%);transform:translate(-50%,-50%);margin:0;white-space:nowrap;letter-spacing:-.025em;font-size:clamp(2.75rem,calc(var(--fit,94) * var(--k,.215) * 1vw),var(--fs))!important;line-height:var(--lh,1);pointer-events:none;will-change:transform}
.js .banner__word{left:0;top:0;transform-origin:0 0;transform:none;visibility:hidden}
.js .banner__word.is-placed{visibility:visible}
.banner__fade{display:inline-block;padding:0 .04em .12em;transform:scaleY(var(--wh,1));transform-origin:50% 50%;opacity:var(--word-o,.88);filter:blur(var(--soft,1px));-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 42%,rgba(0,0,0,calc(1 - var(--fade,.55))) 100%);mask-image:linear-gradient(180deg,#000 0%,#000 42%,rgba(0,0,0,calc(1 - var(--fade,.55))) 100%);text-shadow:0 10px 60px rgba(30,6,14,.18)}
.banner__word .ch{display:inline-block}
.js .banner__word .ch{opacity:0;transform:translateY(.35em);filter:blur(10px)}
.js.is-in .banner__word .ch{opacity:1;transform:none;filter:none;transition:opacity 1.4s ease calc(.25s + var(--i) * .07s),transform 1.6s var(--ease) calc(.25s + var(--i) * .07s),filter 1.4s ease calc(.25s + var(--i) * .07s)}

.banner__tag{position:absolute;left:clamp(24px,6vw,110px);top:calc(var(--wy,50%) + clamp(48px,11.5vw,190px));margin:0;font-style:italic;text-shadow:0 2px 24px rgba(30,6,14,.35)}
.js .banner__tag{opacity:0;transform:translateY(16px)}
.js.is-in .banner__tag{opacity:var(--tag-o,1);transform:none;transition:opacity 1.2s ease 1.1s,transform 1.4s var(--ease) 1.1s}
.js.is-in.is-scrolled .banner__tag{transition:none}

/* Glass box, lower right, with the picture dots inside */
.banner__glass{position:absolute;right:var(--pad);bottom:clamp(20px,4vh,40px);width:min(380px,calc(100% - 2 * var(--pad)));padding:clamp(16px,1.6vw,22px) clamp(18px,1.8vw,26px);border-radius:16px;background:var(--glass);border:1px solid rgba(255,248,241,.28);-webkit-backdrop-filter:blur(var(--glass-blur,18px)) saturate(160%);backdrop-filter:blur(var(--glass-blur,18px)) saturate(160%);box-shadow:0 18px 50px rgba(30,6,14,.22),inset 0 1px 0 rgba(255,255,255,.3);transition:opacity .6s ease}
.banner__glass.is-bare{width:auto;padding:12px 14px;background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.banner__glass-text{margin:0;text-shadow:0 1px 10px rgba(30,6,14,.25)}
.js .banner__glass{opacity:0;transform:translateY(14px)}
.js.is-in .banner__glass{opacity:1;transform:none;transition:opacity 1.2s ease 1.3s,transform 1.4s var(--ease) 1.3s}
.banner__dots{display:flex;gap:9px;margin-top:14px;opacity:var(--dots,.4)}
.banner__glass.is-bare .banner__dots{margin-top:0}
.banner__dots i{display:block;width:6px;height:6px;border-radius:50%;background:transparent;border:1px solid #FFF8F1;transition:background .2s ease,transform .2s ease}
.banner__dots i.is-active{background:#FFF8F1;transform:scale(1.15)}

.banner__cue{position:absolute;left:50%;bottom:28px;width:1px;height:54px;overflow:hidden;background:rgba(255,248,241,.25);transition:opacity .5s ease}
.banner__cue i{position:absolute;inset:0;background:#FFF8F1;transform-origin:top;animation:v4-cue 2.4s var(--ease) infinite}
.is-scrolled .banner__cue{opacity:0}
@keyframes v4-cue{0%{transform:scaleY(0)}55%{transform:scaleY(1);transform-origin:top}56%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

.js .top{opacity:0;transform:translateY(-14px)}
.js.is-in .top{opacity:1;transform:none;transition:opacity 1s ease .2s,transform 1.2s var(--ease) .2s}

@media (max-width:700px){
  .banner__tag{left:var(--pad);right:var(--pad)}
  .banner__glass{left:var(--pad);right:var(--pad);width:auto}
  .banner__cue{display:none}
}

/* ---------- Split section with the center line ---------- */
.split{position:relative;display:grid;grid-template-columns:1fr 1fr;background:var(--bg);padding:clamp(90px,14vh,170px) 0}
.split__line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--line) 70%,transparent);transform-origin:top;transform:scaleY(0);transition:transform 1.8s var(--ease)}
.split.is-on .split__line{transform:none}
.split__media{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.2vw,20px);padding:0 clamp(28px,5vw,96px);align-content:center}
.split__pic{margin:0;overflow:hidden;aspect-ratio:4/3;background:#EFE3DA}
.split__pic--3{grid-column:1/-1;aspect-ratio:16/8}
.split__pic img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.12);transition:transform 1.8s var(--ease)}
.split__pic:hover img{transform:scale(1.04)}
.split__copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 clamp(28px,7vw,140px)}
.split__icon{position:relative;width:96px;height:64px;margin-bottom:26px;color:var(--ink)}
.split__icon svg,.split__icon img{position:relative;width:100%;height:100%;display:block;object-fit:contain}
.split__dot{position:absolute;left:-4px;top:-2px;width:34px;height:34px;border-radius:50%;background:var(--dot)}
.split__eyebrow{margin:0 0 14px;letter-spacing:.24em;text-transform:uppercase}
.split__title{margin:0 0 26px;font-weight:400}
.split__text{max-width:56ch}
.split__text p{margin:0 0 1.2em}
.split__btn{margin-top:14px}

/* Reveal on scroll: pictures open like a curtain, text rises */
.js .split [data-reveal]{opacity:0;transform:translateY(26px)}
/* the picture itself is clipped (not its frame), so the scroll watcher can still see the frame */
.js .split .split__pic[data-reveal]{opacity:1;transform:none}
.js .split .split__pic[data-reveal] img{clip-path:inset(100% 0 0 0)}
.js .split [data-reveal].is-on{opacity:1;transform:none;transition:opacity 1.1s ease var(--d,0s),transform 1.3s var(--ease) var(--d,0s)}
.js .split .split__pic[data-reveal].is-on img{clip-path:inset(0 0 0 0);transition:clip-path 1.4s var(--ease) var(--d,0s),transform 1.8s var(--ease) var(--d,0s)}
.split__pic.is-on img{transform:scale(1)}
.split__pic.is-on:hover img{transform:scale(1.04)}

@media (max-width:900px){
  .split{grid-template-columns:1fr;gap:60px;padding:80px 0}
  .split__line{display:none}
  .split__copy{padding:0 var(--pad)}
  .split__media{padding:0 var(--pad)}
}

/* ---------- Why us: intro, then one pinned screen split by a fine line ---------- */
.intro{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(14px,2.2vh,22px);padding:clamp(90px,15vh,160px) var(--pad);background:var(--bg,#FFF8F1);color:#2B0B12}
.intro__eyebrow{margin:0;letter-spacing:.26em;text-transform:uppercase}
.intro__title{margin:0;font-weight:400;max-width:18ch;text-wrap:balance;letter-spacing:-.01em}
.intro__sub{margin:0;max-width:52ch;text-wrap:balance}
.intro__btn{margin-top:clamp(6px,1.4vh,14px)}
.js .intro [data-reveal]{opacity:0;transform:translateY(24px)}
.js .intro [data-reveal].is-on{opacity:1;transform:none;transition:opacity 1.1s ease var(--d,0s),transform 1.3s var(--ease) var(--d,0s)}

.why{position:relative;height:calc(var(--n,4) * var(--per,100vh));background:var(--bg,#FFF8F1);color:#2B0B12;border-top:1px solid color-mix(in srgb,var(--line) 45%,transparent)}
.why{--sh:clamp(460px,76vh,740px)}
.why::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--line) 45%,transparent);z-index:3;pointer-events:none}
.why__stage{position:sticky;top:calc((100vh - var(--sh)) / 2);height:var(--sh);min-height:0;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}
.why__line{display:none;position:absolute;left:50%;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--line) 45%,transparent);z-index:3;pointer-events:none}
/* the picture box keeps a clear gap from the line on its right and from the bottom */
.why__media{position:relative;overflow:hidden}
.why__pic{position:absolute;top:var(--gap,20px);left:0;right:var(--gap,20px);bottom:var(--gap,20px);margin:0;overflow:hidden;background:#EFE3DA;clip-path:inset(calc(var(--hide,1) * 100%) 0 0 0);will-change:clip-path}
.why__pic:first-child{--hide:0}
.why__pic img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover;transform:translate3d(0,calc(var(--drift,0) * 1%),0) scale(calc(1 + var(--hide,0) * .06));will-change:transform}
.why__copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,5vh,60px) clamp(28px,7vw,140px)}
.why__items{position:relative;min-height:clamp(240px,40vh,380px)}
.why__item{position:absolute;left:0;right:0;top:50%;opacity:var(--o,0);transform:translate3d(0,calc(-50% + var(--y,0) * 1px),0);will-change:opacity,transform;pointer-events:none}
.why__name{margin:0 0 20px;font-weight:400;text-wrap:balance}
.why__text{margin:0;max-width:44ch;transform:translate3d(0,calc(var(--y,0) * .35px),0)}

/* Connecting line, edge to edge, joining the line of this section to the next */
.sep{height:1px;margin:0;background:color-mix(in srgb,var(--line) 45%,transparent)}

@media (max-width:900px){
  .why{--sh:100vh}
  .why::before{display:none}
  .why__stage{grid-template-columns:1fr;grid-template-rows:52% 48%}
  .why__line{display:none}
  .why__pic{right:0;bottom:var(--gap,20px);left:0}
  .why__copy{padding:20px var(--pad) 30px;justify-content:flex-start}
  .why__item{top:0;transform:translate3d(0,calc(var(--y,0) * 1px),0)}
}

/* ---------- Intro: a huge faded word drifting behind, a gold rule that draws down, words that settle in one by one, an italic accent line ---------- */
.intro{position:relative;overflow:hidden;isolation:isolate}
.intro__ghost{position:absolute;z-index:-1;left:0;top:50%;white-space:nowrap;pointer-events:none;font-size:clamp(7rem,24vw,var(--fs))!important;line-height:1;letter-spacing:-.03em;opacity:var(--ghost-o,.06);transform:translate3d(var(--gx,10vw),-50%,0);will-change:transform;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 82%,transparent 100%)}
.intro__ghost span{display:block;font-style:italic}
.intro__rule{display:block;width:1px;height:clamp(40px,7vh,72px);background:linear-gradient(180deg,transparent,var(--line));transform:scaleY(0);transform-origin:top;transition:transform 1.4s var(--ease)}
.intro.is-on .intro__rule{transform:none}
.intro__title{max-width:none!important;transform:translate3d(0,var(--ty,0px),0);will-change:transform}
.intro__line{display:block}
.intro__w{display:inline-block;opacity:0;transform:translateY(.55em) rotate(2deg);filter:blur(8px);transition:opacity 1s ease,transform 1.3s var(--ease),filter 1s ease;transition-delay:calc(.35s + var(--w) * .085s)}
.intro.is-on .intro__w{opacity:1;transform:none;filter:none}
.intro__w.is-acc{font-style:italic;color:var(--accent);background:linear-gradient(100deg,var(--accent) 0%,var(--accent) 40%,#D4AF37 50%,var(--accent) 60%,var(--accent) 100%);background-size:260% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-right:.06em}
@media (prefers-reduced-motion:no-preference){
  .intro.is-on .intro__w.is-acc{animation:eden-shine 4.2s ease-in-out 1.8s infinite}
}
@keyframes eden-shine{0%{background-position:100% 0}60%,100%{background-position:0% 0}}
.intro__sub,.intro__btn,.intro__eyebrow{transform:translate3d(0,var(--ty2,0px),0)}

/* About section: pictures on the right so the page alternates (Why us has its picture on the left) */
.split__media{order:2}
.split__copy{order:1}
@media (max-width:900px){.split__media{order:2}.split__copy{order:1}}

/* Why us: underlined link with an arrow under each item. The line keeps a soft shimmer and the arrow nudges, so it reads as a button */
.why__link{position:relative;display:inline-flex;align-items:center;gap:12px;margin-top:clamp(20px,3.4vh,32px);padding:0 0 10px;font:600 12px/1 var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:#8B1E3F}
.why__link::before,.why__link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px}
.why__link::before{background:color-mix(in srgb,#8B1E3F 25%,transparent)}
.why__link::after{background:#8B1E3F;transform-origin:left;animation:why-line 2.8s var(--ease) infinite}
.why__link svg{width:22px;height:22px;transition:transform .5s var(--ease);animation:why-arrow 2.8s var(--ease) infinite}
.why__link:hover svg{animation:none;transform:translateX(8px)}
.why__link:hover::after{animation:none;transform:none}
@keyframes why-line{0%{transform:scaleX(0);transform-origin:left}45%{transform:scaleX(1);transform-origin:left}55%{transform:scaleX(1);transform-origin:right}100%{transform:scaleX(0);transform-origin:right}}
@keyframes why-arrow{0%,40%,100%{transform:none}55%{transform:translateX(6px)}70%{transform:none}}
@media (prefers-reduced-motion:reduce){.why__link::after,.why__link svg{animation:none}.why__link::after{transform:none}}

/* Round 'View' cursor over the section (computers with a mouse only) */
.why__cursor{position:fixed;left:0;top:0;z-index:30;width:104px;height:104px;margin:-52px 0 0 -52px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--cc) 88%,transparent);color:#FFF8F1;font:600 11px/1 var(--font-body);letter-spacing:.22em;text-transform:uppercase;pointer-events:none;translate:var(--cx,-200px) var(--cy,-200px);scale:var(--cs,0);transition:scale .45s var(--ease),opacity .3s ease;will-change:translate;opacity:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 14px 40px color-mix(in srgb,var(--cc) 35%,transparent)}
.why__cursor span{display:block}
.why.is-hover .why__cursor{opacity:1}
@media (hover:hover) and (pointer:fine){.why.has-cursor .why__link{cursor:none}}
.why__link{padding:14px 18px 10px 0;margin-left:0}

/* 'Why us' sits larger, faded, tucked a little behind the heading */
.intro__eyebrow{position:relative;z-index:0;opacity:.16!important;letter-spacing:.32em;margin-bottom:-.55em!important;font-size:clamp(22px,2.6vw,var(--fs))!important}
.intro__title{position:relative;z-index:1}
.js .intro .intro__eyebrow[data-reveal].is-on{opacity:.16}

/* 'Why us': no letter spacing, a bit larger, further behind the heading */
.intro__eyebrow{letter-spacing:0!important;margin-bottom:-.72em!important;font-size:clamp(28px,3.4vw,var(--fs))!important}

/* Intro heading: capitals, one line on computers (it scales with the screen width), wraps on phones */
.intro__title{text-transform:uppercase;white-space:nowrap;letter-spacing:.01em;font-size:min(var(--fs),2.9vw)!important}
.intro__line{display:inline}
@media (max-width:760px){.intro__title{white-space:normal;font-size:clamp(24px,7vw,34px)!important}}

/* Intro heading fills the screen width on computers (the script sets --tfs); accent words upright, colour only. The line under it sits on the left, in two lines */
.intro__title{font-size:var(--tfs,min(var(--fs),2.9vw))!important;align-self:stretch;text-align:center}
.intro__w.is-acc{font-style:normal}
.intro__sub{align-self:stretch;text-align:left!important;max-width:none!important;white-space:nowrap;text-wrap:nowrap}
@media (max-width:760px){.intro__title{font-size:clamp(24px,7vw,34px)!important}.intro__sub{white-space:normal;text-wrap:balance}}
/* 'Why us' and the gold rule line up on the left with the heading */
.intro__eyebrow{align-self:flex-start;text-align:left}
.intro__rule{align-self:flex-start;margin-left:.6em}

/* Intro: tighter spacing, no gold rule, 'Why us' fades out toward the bottom, heading glides from right to left inside the screen */
.intro{padding:clamp(56px,9vh,96px) var(--pad)!important;gap:clamp(10px,1.6vh,16px)!important}

.intro__eyebrow{-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 25%,transparent 95%);mask-image:linear-gradient(180deg,#000 0%,#000 25%,transparent 95%)}
.intro__title{text-align:left!important;transform:translate3d(var(--mx,0px),var(--ty,0px),0)!important}
/* Intro heading fades toward the bottom of the letters, like the banner word */
.intro__line{display:inline-block!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 35%,rgba(0,0,0,.3) 100%);mask-image:linear-gradient(180deg,#000 0%,#000 35%,rgba(0,0,0,.3) 100%);padding-bottom:.06em}
.intro__title{will-change:auto!important}

/* View cursor: lighter fill and a fine ring a few pixels outside it */
.why__cursor{background:color-mix(in srgb,var(--cc) var(--ca,60%),transparent);box-shadow:0 10px 30px color-mix(in srgb,var(--cc) 18%,transparent)}
.why__cursor::after{content:"";position:absolute;inset:calc(var(--cr,5px) * -1);border-radius:50%;border:1px solid color-mix(in srgb,var(--cc) 55%,transparent);pointer-events:none}
.why__cursor[style*="--cr:0px"]::after{display:none}
/* =====================================================================
   Sections after About: Why choose (tabs), Experiences, Numbers,
   Testimonials, Plan your visit, Footer, video light box
   ===================================================================== */

/* shared small pieces */
.kicker{margin:0;display:inline-flex;align-items:center;gap:14px;letter-spacing:.3em;text-transform:uppercase}
.kicker--both::before,.kicker--both::after,.kicker--after::after,.kicker--before::before{content:"";width:clamp(28px,4vw,56px);height:1px;background:currentColor;opacity:.45}
.more-link{display:inline-flex;align-items:center;gap:10px;font:600 11px/1 var(--font-body);letter-spacing:.24em;text-transform:uppercase;color:inherit;text-decoration:none;padding:8px 0;position:relative}
.more-link::after{content:"";position:absolute;left:0;right:26px;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.more-link:hover::after{transform:scaleX(1);transform-origin:left}
.more-link svg{width:16px;height:16px;transition:transform .45s var(--ease)}
.more-link:hover svg{transform:translateX(4px)}
.more-link--dark{color:#2B0B12}
.arrow{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid color-mix(in srgb,currentColor 35%,transparent);background:transparent;color:inherit;cursor:pointer;transition:background .35s ease,color .35s ease,border-color .35s ease}
.arrow svg{width:16px;height:16px}
.arrow:hover{background:var(--acc2,#D4AF37);border-color:var(--acc2,#D4AF37);color:#2B0B12}
.arrow--sq{border-radius:4px;width:38px;height:38px}
.play{position:absolute;left:50%;top:50%;z-index:3;width:clamp(64px,7vw,84px);height:clamp(64px,7vw,84px);margin:calc(clamp(64px,7vw,84px) / -2) 0 0 calc(clamp(64px,7vw,84px) / -2);border-radius:50%;border:0;display:grid;place-items:center;color:#FFF8F1;background:rgba(255,248,241,.22);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:transform .5s var(--ease),background .4s ease}
.play svg{width:30%;height:30%;margin-left:6%}
.play::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:1px solid rgba(255,248,241,.45);animation:eden-ping 2.6s ease-out infinite}
.play:hover{transform:scale(1.07);background:rgba(139,30,63,.7)}
@keyframes eden-ping{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.js [data-rise]{opacity:0;transform:translateY(26px);transition:opacity 1s ease,transform 1.2s var(--ease)}
.js [data-rise].is-in{opacity:1;transform:none}

/* ---------- Why choose Eden (tabs) ---------- */
.choose{position:relative;background:var(--bg);color:#2B0B12;padding:clamp(72px,12vh,130px) var(--pad);display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden}
.choose::before{content:"";position:absolute;inset:auto 0 0;height:46%;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--line) 14%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 14%,transparent) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 60%,transparent);mask-image:linear-gradient(180deg,transparent,#000 60%,transparent)}
.choose__head{position:relative;display:flex;flex-direction:column;align-items:center;gap:clamp(16px,2.4vh,24px)}
.choose__title{margin:0;max-width:24ch}
.choose__title .a1,.exp__title .a1{font-style:normal;color:var(--acc)}
.choose__tabs{position:relative;width:min(100%,1240px);margin-top:clamp(44px,7vh,72px);display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));border-bottom:1px solid transparent}
.choose__tabs::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--line) 70%,transparent) 12%,color-mix(in srgb,var(--line) 70%,transparent) 88%,transparent);z-index:2}
.choose__frame{position:absolute;top:0;bottom:-1px;left:var(--fx,0px);width:var(--fw,0px);border:1px solid var(--line);border-bottom:0;border-radius:14px 14px 0 0;background:linear-gradient(180deg,#fff,color-mix(in srgb,#fff 40%,var(--bg)));box-shadow:0 -14px 40px color-mix(in srgb,var(--acc) 8%,transparent);transition:left .7s var(--ease),width .7s var(--ease);z-index:1}
.choose__frame::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--bg);z-index:3}
.choose__tab{position:relative;z-index:3;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:6px;padding:clamp(22px,3vh,30px) clamp(14px,1.6vw,24px) clamp(20px,2.8vh,28px);background:none;border:0;cursor:pointer;color:inherit;overflow:hidden;font:inherit}
.choose__ico{width:clamp(30px,2.6vw,36px);height:clamp(30px,2.6vw,36px);color:var(--acc);margin-bottom:10px;transition:transform .6s var(--ease)}
.choose__ico svg,.choose__ico img{width:100%;height:100%;object-fit:contain;display:block}
.choose__ghost{position:absolute;right:-14px;top:-12px;width:96px;height:96px;color:var(--acc);opacity:0;transform:scale(.8) rotate(-8deg);transition:opacity .6s ease,transform .8s var(--ease);pointer-events:none}
.choose__ghost svg{width:100%;height:100%}
.choose__tab.is-active .choose__ghost{opacity:.07;transform:none}
.choose__tab.is-active .choose__ico,.choose__tab:hover .choose__ico{transform:translateY(-3px)}
.choose__name{display:block}
.choose__sub{display:block;opacity:.9}
.choose__tab:not(.is-active) .choose__name{opacity:.82}
.choose__panels{position:relative;display:grid;width:min(100%,860px);margin-top:clamp(36px,5vh,52px)}
.choose__panel{grid-area:1/1;margin:0;opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .8s var(--ease);pointer-events:none}
.choose__panel.is-active{opacity:1;transform:none;pointer-events:auto}
.choose__cta{position:relative;margin-top:clamp(30px,4.5vh,46px);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(20px,3vw,40px)}
.call{display:inline-flex;align-items:center;gap:14px;color:inherit;text-decoration:none;text-align:left}
.call__ring{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:var(--acc);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);box-shadow:0 0 0 5px var(--bg),0 0 0 6px color-mix(in srgb,var(--line) 35%,transparent);transition:background .4s ease,color .4s ease}
.call__ring svg{width:20px;height:20px}
.call:hover .call__ring{background:var(--acc);color:#FFF8F1}
.call__words{display:flex;flex-direction:column;gap:3px}
.call__label,.call__num{display:block}

/* ---------- Experiences (slider) ---------- */
.exp{--w:clamp(200px,17vw,250px);--h:clamp(230px,22vw,300px);--W:clamp(280px,27vw,400px);--H:clamp(320px,31vw,440px);--g:clamp(18px,2.4vw,40px);position:relative;overflow:hidden;color:#FFF8F1;padding:clamp(80px,13vh,130px) 0 clamp(40px,6vh,64px);isolation:isolate}
.exp__bg{position:absolute;inset:0;z-index:-1;background:#2B0B12}
.exp__bg img{position:absolute;inset:-30px;width:calc(100% + 60px);height:calc(100% + 60px);object-fit:cover;filter:blur(var(--blur));transform:scale(1.04)}
.exp__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--tint),color-mix(in srgb,var(--tint) 85%,transparent) 55%,var(--tint))}
.exp__head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(14px,2.2vh,22px);padding:0 var(--pad)}
.exp__title{margin:0;max-width:26ch}
.exp__title .a1{color:var(--acc1)}
.exp__title .a2{font-style:normal;color:var(--acc2)}
.exp__sub{margin:0;max-width:60ch;opacity:.92}
.exp__rail{position:relative;height:var(--H);margin-top:clamp(48px,8vh,80px)}
.exp__line{position:absolute;left:0;right:0;top:calc(var(--H) - var(--h) - 34px);height:1px;background:linear-gradient(90deg,transparent,rgba(255,248,241,.45) 8%,rgba(255,248,241,.45) 92%,transparent)}
.exp__track{position:absolute;left:50%;bottom:0;display:flex;align-items:flex-end;gap:var(--g);transform:translateX(calc(-1 * (var(--i) * (var(--w) + var(--g)) + var(--W) / 2)));transition:transform 1s var(--ease)}
.exp__card{position:relative;flex:0 0 auto;width:var(--w);height:var(--h);cursor:pointer;transition:width 1s var(--ease),height 1s var(--ease)}
.exp__card.is-active{width:var(--W);height:var(--H);cursor:default}
.exp__dot{position:absolute;left:50%;top:-34px;width:11px;height:11px;margin:-5px 0 0 -5px;border-radius:50%;border:1px solid rgba(255,248,241,.7);background:#2B0B12;transition:opacity .5s ease}
.exp__dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#FFF8F1}
.exp__card.is-active .exp__dot{opacity:0}
.exp__media{position:absolute;inset:0;overflow:hidden;background:#3A1420}
.exp__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s var(--ease)}
.exp__card:hover .exp__media img,.exp__card.is-active .exp__media img{transform:scale(1)}
.exp__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(43,11,18,.78))}
.exp__card.is-active .exp__media{inset:9px}
.exp__card::before{content:"";position:absolute;inset:0;border:1px solid var(--frame);opacity:0;transition:opacity .8s ease;pointer-events:none;z-index:2}
.exp__card.is-active::before{opacity:.9}
.exp__cap{position:absolute;left:clamp(14px,1.4vw,20px);right:14px;bottom:clamp(14px,1.6vw,22px);transition:opacity .5s ease}
.exp__cap .exp__name{font-size:clamp(15px,1.25vw,18px)!important}
.exp__cap i,.exp__info i{display:block;width:26px;height:1px;margin-top:10px;background:var(--acc2)}
.exp__card.is-active .exp__cap{opacity:0;pointer-events:none}
.exp__name{margin:0}
.exp__info{position:absolute;z-index:3;top:9px;right:9px;width:min(64%,250px);padding:clamp(16px,1.6vw,24px);background:rgba(43,11,18,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:flex-start;gap:10px;opacity:0;transform:translateY(-10px);transition:opacity .5s ease,transform .7s var(--ease);pointer-events:none}
.exp__info i{margin:0}
.exp__card.is-active .exp__info{opacity:1;transform:none;pointer-events:auto;transition-delay:.45s}
.exp__text{margin:0}
.exp__meta{letter-spacing:.14em;text-transform:uppercase}
.exp__info .more-link{color:#FFF8F1;padding-bottom:0}
.exp__nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:clamp(28px,4vh,40px);font:500 12px/1 var(--font-body);letter-spacing:.18em}
.exp__count b{font-weight:600;color:var(--acc2)}

/* ---------- Numbers strip ---------- */
.nums{position:relative;background:var(--bg);color:#2B0B12;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:clamp(24px,4vw,64px);padding:clamp(30px,5vh,48px) var(--pad)}
.nums__lead{display:flex;flex-direction:column;gap:6px;padding-right:clamp(24px,4vw,64px);border-right:1px solid color-mix(in srgb,var(--line) 50%,transparent)}
.nums__small{letter-spacing:.24em;text-transform:uppercase}
.nums__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:clamp(18px,2.4vw,36px)}
.nums__it{display:flex;flex-direction:column;gap:8px}
.nums__v{display:block;font-variant-numeric:lining-nums tabular-nums}
.nums__l{letter-spacing:.16em;text-transform:uppercase}

/* ---------- Testimonials ---------- */
.rev{position:relative;background:var(--bg);color:#2B0B12;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:center;padding:clamp(80px,13vh,140px) var(--pad);overflow:hidden}
.rev::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--line) 14%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 14%,transparent) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(180deg,transparent,#000);mask-image:linear-gradient(180deg,transparent,#000)}
.rev__main{position:relative;z-index:1;min-width:0}
.rev .kicker{color:var(--acc)}
.rev__stack{display:grid}
.rev__stack>*{grid-area:1/1;opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .9s var(--ease);pointer-events:none}
.rev__stack>.is-active{opacity:1;transform:none;pointer-events:auto}
.rev__quotes{margin-top:clamp(26px,4vh,40px)}
.rev__q{margin:0;max-width:30ch}
.rev__row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:clamp(28px,4vh,40px);padding-bottom:clamp(26px,4vh,36px);border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent)}
.rev__who{display:flex;align-items:center;gap:16px}
.rev__who>span:last-child{display:flex;flex-direction:column;gap:5px}
.rev__name,.rev__role{display:block}
.rev__role{letter-spacing:.2em;text-transform:uppercase}
.rev__face,.rev__mini{flex:0 0 auto;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#F2D7D5,#FFF8F1);color:var(--acc);font:500 15px/1 var(--font-display);border:1px solid color-mix(in srgb,var(--line) 60%,transparent)}
.rev__face{width:54px;height:54px}
.rev__face img,.rev__mini img{width:100%;height:100%;object-fit:cover}
.rev__rating{display:flex;flex-direction:column;align-items:flex-start;gap:6px;color:inherit;text-decoration:none}
.rev__score{display:inline-flex;align-items:center;gap:8px;font:400 clamp(22px,2vw,28px)/1 var(--font-display)}
.rev__score svg{width:20px;height:20px;color:var(--line)}
.rev__rlabel{font:500 11px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase}
.rev__foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:clamp(22px,3.4vh,32px)}
.rev__faces{display:flex;gap:12px}
.rev__pick{padding:3px;border-radius:50%;border:1px solid transparent;background:none;cursor:pointer;transition:border-color .4s ease,transform .4s var(--ease)}
.rev__pick.is-active{border-color:var(--acc)}
.rev__pick:hover{transform:translateY(-2px)}
.rev__mini{width:34px;height:34px;font-size:11px}
.rev__pick:not(.is-active) .rev__mini{filter:grayscale(.5);opacity:.75}
.rev__nav{display:flex;align-items:center;gap:12px;font:500 12px/1 var(--font-body);letter-spacing:.16em}
.rev__nav .arrow:hover{background:var(--acc);border-color:var(--acc);color:#FFF8F1}
.rev__count b{font-weight:600;color:var(--acc)}
.rev__card{position:relative;z-index:1;padding:clamp(10px,1vw,14px) 0 0 clamp(10px,1vw,14px)}
.rev__card::before{content:"";position:absolute;left:0;top:0;right:clamp(10px,1vw,14px);bottom:clamp(10px,1vw,14px);border:1px solid var(--line);pointer-events:none}
.rev__pic{position:relative;aspect-ratio:4/5;max-height:76vh;overflow:hidden;background:#3A1420;margin-left:auto}
.rev__pic img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.rev__card:hover .rev__pic img{transform:scale(1.04)}
.rev__pic::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(43,11,18,.82));pointer-events:none}
.rev__over{position:absolute;z-index:2;left:clamp(20px,2vw,28px);right:clamp(20px,2vw,28px);bottom:clamp(20px,2.4vw,30px)}
.rev__ctitle{margin:0}
.rev__over i{display:block;width:26px;height:1px;background:var(--line);margin:12px 0}
.rev__ctext{margin:0}

/* ---------- Plan your visit (journal) ---------- */
.jr{background:var(--bg);color:#2B0B12;padding:clamp(80px,13vh,140px) var(--pad)}
.jr__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(36px,6vh,60px)}
.jr .kicker{margin-bottom:clamp(14px,2vh,20px)}
.jr__title{margin:0;display:flex;flex-direction:column}
.jr__title>span{display:block}
.jr__script{margin-top:-.08em}
.jr__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.jr__grid.is-single{grid-template-columns:1fr}
.jr__feat{position:relative;overflow:hidden;min-height:clamp(380px,48vw,600px);background:#3A1420;color:#FFF8F1}
.jr__feat>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.jr__feat:hover>img{transform:scale(1.04)}
.jr__feat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(43,11,18,.85));pointer-events:none}
.jr__cover{position:absolute;inset:0;z-index:2}
.jr__over{position:absolute;z-index:3;left:clamp(22px,2.4vw,32px);right:clamp(22px,2.4vw,32px);bottom:clamp(24px,3vw,40px);pointer-events:none}
.jr__ftitle{margin:0;font:400 clamp(20px,1.8vw,26px)/1.25 var(--font-display)}
.jr__over i{display:block;width:30px;height:1px;background:#D4AF37;margin:14px 0}
.jr__ftext{margin:0;font:400 13px/1.8 var(--font-body);color:#EADAD7;max-width:38ch}
.jr__list{display:flex;flex-direction:column;justify-content:space-between;gap:clamp(30px,4vh,40px);padding-left:clamp(26px,3vw,44px);margin-left:clamp(26px,3vw,44px);border-left:1px solid color-mix(in srgb,var(--line) 45%,transparent)}
.jr__grid.is-single .jr__list{border:0;margin:0;padding:0}
.jr__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(22px,2.6vw,40px);align-items:start}
.jr__row--flip{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:end}
.jr__row--flip .jr__pic{order:2}
.jr__pic{display:block;overflow:hidden;aspect-ratio:16/10;background:#EFE3DA}
.jr__pic img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.jr__row:hover .jr__pic img{transform:scale(1.05)}
.jr__copy{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-top:clamp(6px,1.4vh,16px)}
.jr__tag{letter-spacing:.24em;text-transform:uppercase}
.jr__h{margin:0}
.jr__h a{color:inherit;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .6s var(--ease)}
.jr__h a:hover{background-size:100% 1px}
.jr__p{margin:0;max-width:52ch}

/* ---------- Footer ---------- */
.foot{background:var(--bg);color:#2B0B12;padding:clamp(80px,12vh,120px) var(--pad) 0}
.foot__top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(30px,5vw,80px);align-items:end}
.foot__logo{display:inline-flex;flex-direction:column;gap:4px;color:inherit;text-decoration:none}
.foot__logo img{max-height:84px;width:auto}
.foot__word,.foot__tag{display:block}
.foot__about{margin:clamp(20px,3vh,28px) 0 0;max-width:72ch}
.foot__h{margin:0 0 18px;letter-spacing:.22em;text-transform:uppercase}
.foot__icons{display:flex;gap:12px}
.foot__icons a{width:40px;height:40px;display:grid;place-items:center;color:var(--ico);border:1px solid color-mix(in srgb,var(--line) 55%,transparent);border-radius:4px;transition:background .4s ease,color .4s ease,transform .4s var(--ease)}
.foot__icons a:hover{background:var(--ico);color:#FFF8F1;transform:translateY(-3px)}
.foot__icons svg{width:18px;height:18px}
.foot__rule{position:relative;display:block;height:1px;margin-top:clamp(40px,6vh,64px);background:color-mix(in srgb,var(--line) 50%,transparent)}
.foot__rule::before,.foot__rule::after{content:"";position:absolute;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--line)}
.foot__rule::before{left:0}
.foot__rule::after{right:0}
.foot__cols{display:grid;grid-template-columns:1fr 1fr 1fr}
.foot__col{position:relative;padding:clamp(40px,6vh,60px) clamp(20px,3vw,48px) clamp(44px,7vh,70px)}
.foot__col:first-child{padding-left:0}
.foot__col:last-child{padding-right:0}
.foot__col+.foot__col::before{content:"";position:absolute;left:0;top:0;bottom:clamp(20px,3vh,30px);width:1px;background:color-mix(in srgb,var(--line) 50%,transparent)}
.foot__col+.foot__col::after{content:"";position:absolute;left:-3px;bottom:clamp(20px,3vh,30px);width:7px;height:7px;border-radius:50%;background:var(--line)}
.foot__info,.foot__links{list-style:none;margin:0;padding:0}
.foot__info li{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.foot__info svg{flex:0 0 18px;width:18px;height:18px;color:var(--ico);margin-top:.15em}
.foot__links{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));column-gap:clamp(24px,3vw,48px);row-gap:12px}
.foot a{color:inherit;text-decoration:none}
.foot__links a,.foot__info a{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--ease),color .3s ease}
.foot__links a:hover,.foot__info a:hover{background-size:100% 1px;color:var(--ico)}
.foot__bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 24px;margin:0 calc(var(--pad) * -1);padding:20px var(--pad);background:var(--bar);font:400 12px/1.6 var(--font-body);color:#5B4A4D}
.foot__bar p{margin:0}
.foot__bar b{font-weight:600;color:var(--ico)}

/* ---------- Video light box ---------- */
.v4lb{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:clamp(16px,4vw,60px)}
.v4lb[hidden]{display:none}
.v4lb__veil{position:absolute;inset:0;background:rgba(43,11,18,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.v4lb__box{position:relative;width:min(100%,1100px);aspect-ratio:16/9;background:#000}
.v4lb__box video,.v4lb__box iframe{width:100%;height:100%;border:0;display:block}
.v4lb__close{position:absolute;top:clamp(12px,2vw,24px);right:clamp(12px,2vw,24px);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,248,241,.5);background:transparent;cursor:pointer}
.v4lb__close i::before,.v4lb__close i::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:1px;margin-left:-9px;background:#FFF8F1;transform:rotate(45deg)}
.v4lb__close i::after{transform:rotate(-45deg)}

/* ---------- Smaller screens ---------- */
@media (max-width:1024px){
  .rev{grid-template-columns:1fr}
  .rev__card{max-width:520px}
  .jr__grid{grid-template-columns:1fr}
  .jr__list{border-left:0;margin:clamp(30px,5vh,44px) 0 0;padding:0}
  .foot__cols{grid-template-columns:1fr 1fr}
  .foot__col:nth-child(3){grid-column:1 / -1;padding-left:0;padding-top:0}
  .foot__col:nth-child(3)::before,.foot__col:nth-child(3)::after{display:none}
}
@media (max-width:860px){
  .choose__tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1);width:auto;align-self:stretch;padding:0 var(--pad)}
  .choose__tabs::-webkit-scrollbar{display:none}
  .choose__tab{flex:0 0 clamp(170px,46vw,220px);scroll-snap-align:center}
  .nums{grid-template-columns:1fr}
  .nums__lead{border-right:0;padding:0 0 20px;border-bottom:1px solid color-mix(in srgb,var(--line) 50%,transparent)}
}
@media (max-width:760px){
  .exp{--w:clamp(150px,44vw,200px);--h:clamp(190px,56vw,250px);--W:min(78vw,340px);--H:clamp(330px,104vw,440px)}
  .exp__info{left:9px;right:9px;width:auto;top:auto;bottom:9px}
  .jr__head{flex-direction:column;align-items:flex-start}
  .jr__row,.jr__row--flip{grid-template-columns:1fr;align-items:start}
  .jr__row--flip .jr__pic{order:0}
  .rev__row,.rev__foot{flex-wrap:wrap}
  .foot__top{grid-template-columns:1fr}
  .foot__cols{grid-template-columns:1fr}
  .foot__col,.foot__col:first-child,.foot__col:last-child,.foot__col:nth-child(3){padding:28px 0;grid-column:auto}
  .foot__col+.foot__col::before{top:0;bottom:auto;left:0;right:0;width:auto;height:1px}
  .foot__col+.foot__col::after{display:none}
  .foot__bar{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  .exp__track,.exp__card,.choose__frame,.rev__stack>*,.choose__panel{transition:none!important}
  .play::before{animation:none}
}

.choose__title{max-width:none}

/* Feature card video plays silently inside the card */
.jr__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.jr__feat:hover .jr__vid{transform:scale(1.04)}
.jr__feat .play{width:clamp(56px,5.4vw,70px);height:clamp(56px,5.4vw,70px);margin:calc(clamp(56px,5.4vw,70px) / -2) 0 0 calc(clamp(56px,5.4vw,70px) / -2)}
/* ---------- Testimonial card video ---------- */
.rev__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.rev__card:hover .rev__vid{transform:scale(1.04)}
.rev__pic .play{width:clamp(56px,5.4vw,70px);height:clamp(56px,5.4vw,70px);margin:calc(clamp(56px,5.4vw,70px) / -2) 0 0 calc(clamp(56px,5.4vw,70px) / -2)}

/* ---------- FAQ ---------- */
.faq{position:relative;background:var(--bg);color:#2B0B12;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:clamp(40px,6vw,110px);align-items:start;padding:clamp(80px,13vh,140px) var(--pad)}
.faq__side{position:sticky;top:clamp(80px,12vh,120px);display:flex;flex-direction:column;align-items:flex-start;gap:clamp(16px,2.4vh,22px)}
.faq .kicker{color:var(--acc)}
.faq__title{margin:0}
.faq__title .a1{font-style:normal;color:var(--acc)}
.faq__sub{margin:0;max-width:40ch}
.faq__card{position:relative;overflow:hidden;width:100%;max-width:420px;margin-top:clamp(12px,2.4vh,26px);padding:clamp(26px,2.8vw,38px);display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:#FFF8F1;background:radial-gradient(130% 120% at 0 0,color-mix(in srgb,var(--card) 55%,#8B1E3F),var(--card))}
.faq__card::before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--line) 50%,transparent);pointer-events:none}
.faq__card h3,.faq__card p{margin:0;position:relative}
.faq__call{position:relative;display:inline-flex;align-items:center;gap:10px;margin:4px 0 8px;color:#FFF8F1;text-decoration:none;font:400 clamp(20px,1.7vw,24px)/1.2 var(--font-display)}
.faq__call svg{width:18px;height:18px;color:var(--line)}
.faq__card .btn{position:relative}
.faq__list{border-top:1px solid color-mix(in srgb,var(--line) 55%,transparent)}
.faq__item{border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}
.faq__h{margin:0}
.faq__q{width:100%;display:grid;grid-template-columns:30px 1fr 34px;align-items:center;gap:clamp(14px,2vw,28px);padding:clamp(20px,3vh,28px) 0;background:none;border:0;cursor:pointer;text-align:left;color:inherit;font:inherit}
.faq__n{font:500 12px/1 var(--font-body);letter-spacing:.16em;color:var(--acc)}
.faq__qt{display:block;transition:color .3s ease}
.faq__q:hover .faq__qt,.faq__item.is-open .faq__qt{color:var(--acc)!important}
.faq__ic{position:relative;width:34px;height:34px;border-radius:50%;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);color:#2B0B12;transition:background .4s ease,border-color .4s ease,color .4s ease,transform .6s var(--ease)}
.faq__ic::before,.faq__ic::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1px;margin-left:-6px;background:currentColor;transition:transform .5s var(--ease)}
.faq__ic::after{transform:rotate(90deg)}
.faq__item.is-open .faq__ic{background:var(--acc);border-color:var(--acc);color:#FFF8F1;transform:rotate(180deg)}
.faq__item.is-open .faq__ic::after{transform:rotate(0deg)}
.faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s var(--ease)}
.faq__a>div{overflow:hidden}
.faq__item.is-open .faq__a{grid-template-rows:1fr}
.faq__a p{margin:0;padding:0 calc(34px + clamp(14px,2vw,28px)) clamp(22px,3vh,30px) calc(30px + clamp(14px,2vw,28px));max-width:68ch;opacity:0;transform:translateY(-6px);transition:opacity .45s ease,transform .6s var(--ease)}
.faq__item.is-open .faq__a p{opacity:1;transform:none;transition-delay:.12s}
@media (max-width:900px){
  .faq{grid-template-columns:1fr}
  .faq__side{position:static}
}
@media (max-width:560px){
  .faq__q{grid-template-columns:1fr 34px}
  .faq__n{display:none}
  .faq__a p{padding-left:0;padding-right:0}
}
@media (prefers-reduced-motion:reduce){
  .faq__a,.faq__a p,.faq__ic{transition:none}
}

/* ---------- Eden Pods + Phoenix area map (inside the tabs section) ---------- */
.choose__body{position:relative;width:min(100%,1240px);margin-top:clamp(36px,5vh,56px);display:grid;grid-template-columns:1fr;gap:clamp(28px,4.4vw,72px);align-items:center}
.choose__info{display:flex;flex-direction:column;align-items:center}
.choose__body .choose__panels{margin-top:0}
.choose__body.has-map{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);text-align:left}
.choose__body.has-map .choose__info{align-items:flex-start}
.choose__body.has-map .choose__panels{width:100%}
.choose__body.has-map .choose__cta{justify-content:flex-start}
.choose__meta{margin:clamp(14px,2vh,20px) 0 0;font:600 11px/1.4 var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--acc)}
.cmap{position:relative;margin:0;aspect-ratio:600/440;background:#FFFDF9;border:1px solid color-mix(in srgb,var(--line) 55%,transparent);overflow:hidden;box-shadow:0 34px 80px -46px rgba(43,11,18,.4)}
.cmap::before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--line) 28%,transparent);pointer-events:none;z-index:2}
.cmap__svg{display:block;width:100%;height:100%;color:var(--acc)}
.cmap__frame{display:block;width:100%;height:100%;border:0;filter:sepia(.35) saturate(.8) hue-rotate(-12deg) contrast(.95)}
.cmap__topo path{fill:none;stroke:var(--line);stroke-opacity:.35;stroke-width:1}
.cmap__river{fill:none;stroke:#F2D7D5;stroke-width:7;stroke-linecap:round;opacity:.9}
.cmap__road path{fill:none;stroke:#E8D9CC;stroke-width:3;stroke-linecap:round}
.cmap__ring{fill:none;stroke:var(--line);stroke-width:1;stroke-dasharray:3 6;opacity:.85;transform-box:fill-box;transform-origin:center;animation:cmap-spin 60s linear infinite}
.cmap__ring+.cmap__ring{animation-direction:reverse;animation-duration:90s}
@keyframes cmap-spin{to{transform:rotate(360deg)}}
.cmap__routes path{fill:none;stroke:var(--acc);stroke-width:1.2;stroke-dasharray:2 6;opacity:.55;animation:cmap-flow 2.4s linear infinite;animation-delay:calc(var(--d,0) * -1s)}
@keyframes cmap-flow{to{stroke-dashoffset:-32}}
.cmap__town circle{fill:#FFF8F1;stroke:var(--acc);stroke-width:1.4}
.cmap__town text{font:500 11px/1 var(--font-body);letter-spacing:.06em;fill:#5B4A4D;paint-order:stroke;stroke:#FFFDF9;stroke-width:4px;stroke-linejoin:round}
.cmap__pulse{fill:var(--acc);opacity:0;transform-box:fill-box;transform-origin:center;animation:cmap-pulse 2.8s ease-out infinite}
.cmap__pulse--2{animation-delay:1.4s}
@keyframes cmap-pulse{0%{transform:scale(.5);opacity:.4}100%{transform:scale(3.4);opacity:0}}
.cmap__bob{animation:cmap-bob 3.2s ease-in-out infinite}
@keyframes cmap-bob{50%{transform:translateY(-5px)}}
.cmap__drop{fill:var(--acc)}
.cmap__center{font:600 12px/1 var(--font-body);letter-spacing:.26em;fill:#2B0B12;paint-order:stroke;stroke:#FFFDF9;stroke-width:5px;stroke-linejoin:round}
.cmap__compass circle{fill:none;stroke:var(--line)}
.cmap__compass path{fill:var(--line)}
.cmap__compass text{font:600 9px/1 var(--font-body);fill:#7A6A6D}
.js .cmap.is-in .cmap__town{animation:cmap-pop .7s var(--ease) both;animation-delay:calc(.3s + var(--d,0) * 1s)}
@keyframes cmap-pop{from{opacity:0}to{opacity:1}}
.cmap__cap{position:absolute;left:clamp(14px,1.6vw,22px);bottom:clamp(14px,1.6vw,22px);z-index:3;display:flex;align-items:center;gap:12px;padding:12px 18px 12px 12px;background:rgba(255,248,241,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid color-mix(in srgb,var(--line) 45%,transparent);text-align:left;max-width:calc(100% - 28px)}
.cmap__cap b{display:block;font:400 17px/1.2 var(--font-display);color:#2B0B12}
.cmap__cap small{display:block;margin-top:3px;font:400 12px/1.5 var(--font-body);color:#7A6A6D}
.cmap__ico{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--acc);color:#FFF8F1}
.cmap__ico svg{width:15px;height:15px}
@media (max-width:900px){
  .choose__body.has-map{grid-template-columns:1fr;text-align:center}
  .choose__body.has-map .choose__info{align-items:center}
  .choose__body.has-map .choose__cta{justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  .cmap__ring,.cmap__routes path,.cmap__pulse,.cmap__bob{animation:none}
}

/* Areas we serve: pods as chips, tab lights up its town on the map */
.choose__chips{list-style:none;margin:clamp(18px,2.6vh,24px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.choose__chips li{padding:9px 15px;border:1px solid color-mix(in srgb,var(--line) 60%,transparent);border-radius:999px;background:#FFFDF9;font:500 12px/1 var(--font-body);letter-spacing:.04em;color:#5B4A4D;transition:border-color .3s ease,color .3s ease}
.choose__chips li:hover{border-color:var(--acc);color:var(--acc)}
.choose__body:not(.has-map) .choose__chips{justify-content:center}
.cmap__town circle{transition:r .45s var(--ease),fill .45s ease,stroke-width .45s ease}
.cmap__town text{transition:font-size .35s ease,fill .35s ease}
.cmap__town.is-hot circle{r:7.5px;fill:var(--acc);stroke:#FFF8F1;stroke-width:2.5}
.cmap__town.is-hot text{font-size:13.5px;font-weight:700;fill:#2B0B12}
.cmap__routes path{transition:opacity .45s ease,stroke-width .45s ease}
.cmap.has-hot .cmap__routes path{opacity:.14}
.cmap.has-hot .cmap__routes path.is-hot{opacity:1;stroke-width:2.2;stroke-dasharray:5 5}
.cmap__place{transition:opacity .3s ease}
@media (max-width:900px){
  .choose__body.has-map .choose__chips{justify-content:center}
}
/* About feature card: heading on the video, always readable */
.jr__feat::after{background:linear-gradient(180deg,rgba(43,11,18,0) 28%,rgba(43,11,18,.5) 58%,rgba(43,11,18,.92) 100%)}
.jr__fkicker{margin:0 0 12px;display:flex;align-items:center;gap:12px;font:600 12px/1.2 var(--font-body);letter-spacing:.3em;text-transform:uppercase;color:#D4AF37;text-shadow:0 1px 10px rgba(43,11,18,.6)}
.jr__fkicker::after{content:"";width:clamp(28px,3vw,44px);height:1px;background:currentColor;opacity:.7}
.jr__ftitle{font:400 clamp(30px,3vw,46px)/1.1 var(--font-display);color:#FFF8F1;text-shadow:0 2px 24px rgba(43,11,18,.55)}
.jr__over i{margin:16px 0 0}
/* About rows: keep image + text rows, with a small gap between them */
.jr__list{justify-content:flex-start;gap:clamp(28px,4.5vh,48px)}
.jr__feat{min-height:clamp(380px,34vw,480px)}
.jr__list{justify-content:center}

/* ---------- CTA band with locations ---------- */
.cta{position:relative;overflow:hidden;isolation:isolate;color:#FFF8F1;background:linear-gradient(120deg,var(--bg),var(--bg2));padding:clamp(60px,10vh,104px) var(--pad)}
.cta::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(55% 120% at 88% 0%,color-mix(in srgb,var(--line) 22%,transparent),transparent 62%),radial-gradient(45% 100% at 0% 100%,rgba(242,215,213,.12),transparent 60%)}
.cta::after{content:"";position:absolute;inset:12px;border:1px solid color-mix(in srgb,var(--line) 32%,transparent);pointer-events:none}
.cta__in{position:relative;max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(36px,5vh,56px) clamp(28px,5vw,80px);align-items:end}
.cta .kicker{color:var(--line)}
.cta__title{margin:clamp(12px,2vh,18px) 0 0}
.cta__title .a1{font-style:normal;color:var(--acc)}
.cta__text{margin:clamp(10px,1.6vh,14px) 0 0;max-width:52ch}
.cta__act{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.cta__call{display:inline-flex;align-items:center;gap:10px;color:#FFF8F1;text-decoration:none;font:400 clamp(18px,1.5vw,21px)/1.2 var(--font-display)}
.cta__call svg{width:18px;height:18px;color:var(--line)}
.cta__places{grid-column:1 / -1;position:relative;list-style:none;margin:0;padding:clamp(26px,4vh,36px) 0 0;border-top:1px solid color-mix(in srgb,var(--line) 25%,transparent);display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr))}
.cta__places::before{content:"";position:absolute;left:calc(50% / var(--n));right:calc(50% / var(--n));top:calc(clamp(26px,4vh,36px) + 22px);height:1px;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--line) 75%,transparent) 0 6px,transparent 6px 12px);animation:cta-flow 1.4s linear infinite}
@keyframes cta-flow{to{background-position:12px 0}}
.cta__places li{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.cta__pin{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--bg2);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);color:var(--line);transition:background .4s ease,color .4s ease,transform .5s var(--ease)}
.cta__pin svg{width:19px;height:19px}
.cta__pin::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid var(--line);opacity:0;animation:cta-ping 5s ease-out infinite;animation-delay:calc(var(--i,0) * 1s)}
@keyframes cta-ping{0%{transform:scale(.8);opacity:.85}22%,100%{transform:scale(1.55);opacity:0}}
.cta__name{font:500 12px/1.3 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:#FFF8F1}
.cta__places li:hover .cta__pin{background:var(--line);color:#2B0B12;transform:translateY(-4px)}
@media (max-width:900px){
  .cta__in{grid-template-columns:1fr;align-items:start}
}
@media (max-width:600px){
  .cta__places{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}
  .cta__places::before{display:none}
}
@media (prefers-reduced-motion:reduce){
  .cta__places::before,.cta__pin::after{animation:none}
}

/* ---------- Parallax CTA: picture moves slowly behind, words drift up ---------- */
.pcta{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(460px,72vh,660px);display:grid;place-items:center;text-align:center;color:#FFF8F1;padding:clamp(80px,14vh,140px) var(--pad);background:#2B0B12}
.pcta__bg{position:absolute;left:0;right:0;top:-20%;bottom:-20%;z-index:-2;transform:translate3d(0,var(--py,0px),0);will-change:transform}
.pcta__bg img{width:100%;height:100%;object-fit:cover;display:block}
.pcta::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--tint) 0%,color-mix(in srgb,var(--tint) 75%,transparent) 50%,var(--tint) 100%)}
.pcta::after{content:"";position:absolute;inset:14px;border:1px solid color-mix(in srgb,var(--line) 40%,transparent);pointer-events:none}
.pcta__in{position:relative;max-width:860px;display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2.2vh,22px);transform:translate3d(0,var(--ty,0px),0);will-change:transform}
.pcta .kicker{color:var(--line)}
.pcta__title{margin:0;text-shadow:0 2px 30px rgba(43,11,18,.45)}
.pcta__title .a1{font-style:normal;color:var(--acc)}
.pcta__text{margin:0;max-width:56ch;text-shadow:0 1px 16px rgba(43,11,18,.5)}
.pcta__act{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(18px,3vw,40px);margin-top:clamp(8px,1.4vh,14px)}
.pcta .cta__call{display:inline-flex;align-items:center;gap:10px;color:#FFF8F1;text-decoration:none;font:400 clamp(18px,1.5vw,21px)/1.2 var(--font-display)}
.pcta .cta__call svg{width:18px;height:18px;color:var(--line)}
@media (prefers-reduced-motion:reduce){
  .pcta__bg,.pcta__in{transform:none!important}
}

/* Experiences slider: no 01 / 05 counter */
.exp__count{display:none}

/* About rows: a little more room between the two rows */
.jr__list{gap:clamp(43px,calc(4.5vh + 15px),63px)}
.jr .more-link{cursor:none}
/* Footer in deep burgundy so it stands apart from the ivory sections */
.foot__bar{color:#CDB9B4}
.foot__icons a:hover{color:#2B0B12}
.foot__icons a{border-color:color-mix(in srgb,var(--line) 45%,transparent)}.foot{color:#FFF8F1}
.foot .foot__icons a{color:var(--ico)}
.foot .foot__icons a:hover{color:#2B0B12}

/* Service areas slider: heading in two lines, dots instead of arrows */
.exp__title{max-width:none}
.exp__dots{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:clamp(28px,4vh,40px)}
.exp__dotbtn{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(255,248,241,.4);cursor:pointer;transition:width .5s var(--ease),background .4s ease}
.exp__dotbtn:hover{background:rgba(255,248,241,.75)}
.exp__dotbtn.is-active{width:28px;background:var(--acc2,#D4AF37)}
/* ===== Page system: 1440px content container, one section rhythm ===== */
:root{--pad:max(clamp(20px,4.4vw,72px),calc((100vw - 1440px) / 2 + 40px));--sec:clamp(72px,11vh,120px)}
/* full-width backgrounds stay; the content inside lines up to the container */
.why__stage{max-width:1440px;margin-left:auto;margin-right:auto}
.jr,.faq,.rev{padding-top:var(--sec);padding-bottom:var(--sec)}
.exp{padding-top:var(--sec);padding-bottom:calc(var(--sec) * .7)}
.foot{padding-top:var(--sec)}
.exp__head{gap:clamp(14px,2vh,20px)}
.faq__side,.jr__head{gap:clamp(14px,2vh,20px)}
/* Service areas slider: quicker move, in step with the banner */
.exp__track{transition-duration:.6s}
.exp__card{transition-duration:.6s}
.exp__card.is-active .exp__info{transition-delay:.25s}.why__stage{max-width:1360px}

/* ===== Phones and tablets ===== */
.why__mpic{display:none}
@media (max-width:900px){
  /* Why us: on small screens the pinned scroll becomes a simple list of picture + words */
  .why{height:auto!important;padding:var(--sec) var(--pad)}
  .why::before,.why__line,.why__media,.why__cursor{display:none!important}
  .why__stage{position:static;height:auto;min-height:0;display:block;overflow:visible;max-width:none}
  .why__copy{padding:0}
  .why__items{position:static;min-height:0;display:grid;gap:clamp(40px,7vw,56px)}
  .why__item{position:static;opacity:1!important;transform:none!important;pointer-events:auto!important}
  .why__text{transform:none!important}
  .why__mpic{display:block;margin:0 0 20px;aspect-ratio:4/3;overflow:hidden;background:#EFE3DA}
  .why__mpic img{width:100%;height:100%;object-fit:cover;display:block}
  .why__name{font-size:clamp(28px,8vw,40px)!important;margin-bottom:12px}
  .sep{display:none}
  .jr__list{gap:clamp(32px,7vw,44px)}
}
/* CTA, plain look: quiet and neutral, no picture */
.pcta--plain{background:#F4EDE6;color:#2B0B12;min-height:0;padding:var(--sec) var(--pad)}
.pcta--plain::before{display:none}
.pcta--plain::after{inset:14px;border-color:rgba(43,11,18,.12)}
.pcta--plain .pcta__in{transform:none!important;gap:clamp(14px,2vh,20px)}
.pcta--plain .kicker{color:#7A6A6D}
.pcta--plain .pcta__title{text-shadow:none}
.pcta--plain .pcta__title .a1{color:inherit;font-style:italic}
.pcta--plain .pcta__text{text-shadow:none}
.pcta--plain .cta__call{color:#2B0B12}
.pcta--plain .cta__call svg{color:#7A6A6D}
/* Stats strip: fine burgundy line on top, soft blush fading into ivory, highlighted numbers, thin dividers */
.nums{background:linear-gradient(180deg,color-mix(in srgb,#F2D7D5 75%,var(--bg)) 0%,var(--bg) 88%);border-top:1px solid #8B1E3F;padding-top:clamp(44px,7vh,72px);padding-bottom:clamp(44px,7vh,72px)}
.nums__lead{border-right-color:rgba(43,11,18,.14)}
.nums__list{gap:0}
.nums__it{padding:0 clamp(16px,2.4vw,36px);align-items:flex-start;gap:10px}
.nums__it+.nums__it{border-left:1px solid rgba(43,11,18,.12)}
.nums__v{display:inline-block;align-self:flex-start;padding:0 3px;background:linear-gradient(180deg,transparent 58%,#F2D7D5 58%,#F2D7D5 94%,transparent 94%)}
.nums__l{letter-spacing:.2em}
@media (max-width:860px){
  .nums__list{row-gap:28px}
  .nums__it{padding:0}
  .nums__it+.nums__it{border-left:0}
}.nums__v{background:linear-gradient(180deg,transparent 58%,rgba(139,30,63,.16) 58%,rgba(139,30,63,.16) 94%,transparent 94%)}
.nums__l{letter-spacing:.14em}

/* About: white background and more breathing room */
.jr{padding-top:calc(var(--sec) * 1.15);padding-bottom:calc(var(--sec) * 1.15)}
@media (min-width:1025px){
  .jr__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.75fr)}
  .jr__list{padding-left:clamp(40px,4.6vw,76px);margin-left:clamp(40px,4.6vw,76px)}
}
@media (min-width:761px){
  .jr__row{gap:clamp(32px,3.8vw,60px)}
  .jr__copy{padding-top:clamp(8px,1.6vh,18px);gap:16px}
  .jr__p{max-width:46ch}
}
/* Service areas slider: no dots, cards sit right on the bottom edge */
.exp__dots,.exp__nav{display:none!important}
.exp{padding-bottom:0!important}

/* Private romantic pods: white, no line on top */
.why{border-top:0}

/* Private romantic pods: no centre line, no line underneath */
.why::before,.why::after,.why__line{display:none!important}
.sep{display:none!important}

/* Private romantic pods: 15px more room on top */
@media (min-width:901px){.why{padding-top:15px}}
@media (max-width:900px){.why{padding-top:calc(var(--sec) + 15px)}}

/* Footer, light blush version */
.foot{color:#2B0B12}
.foot__bar{color:#5B4A4D}
.foot .foot__icons a:hover{color:#FFF8F1}
.foot__bar b{color:#8B1E3F}

/* Spacious rhythm: at least 80px between every section's content */
:root{--sec:clamp(80px,11vh,128px)}
@media (min-width:901px){.why{padding-top:60px;padding-bottom:60px}}
.nums{padding-top:clamp(52px,7vh,72px);padding-bottom:clamp(52px,7vh,72px)}

/* About: narrower video card, more air around it */
@media (min-width:901px){
  .jr__grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.75fr);align-items:start}
  .jr__feat{min-height:clamp(380px,30vw,460px)}
  .jr__list{padding-left:clamp(48px,5.4vw,90px);margin-left:clamp(48px,5.4vw,90px)}
}
/* Every section keeps at least 80px of room at the bottom */
.faq{padding-bottom:max(var(--sec),96px)}
/* About: taller video and roomier section */
@media (min-width:901px){
  .jr{padding-top:calc(var(--sec) * 1.35);padding-bottom:calc(var(--sec) * 1.35)}
  .jr__feat{min-height:clamp(520px,42vw,640px)}
  .jr__list{gap:clamp(56px,8vh,88px)}
}
@media (min-width:901px){.jr__grid{align-items:stretch}.jr__list{justify-content:space-between}}

/* Banner text: plain text, no glass box, wider so it sits in about three lines */
.banner__glass,.banner__glass.is-bare{background:transparent!important;border:0!important;border-radius:0;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0!important;width:auto;max-width:min(600px,calc(100% - 2 * var(--pad)))}
.banner__glass-text{max-width:60ch;text-wrap:pretty;text-shadow:0 1px 14px rgba(30,6,14,.55)}
.banner__glass .banner__dots{margin-top:16px}
@media (min-width:901px){.banner__glass{left:auto;right:var(--pad)}}
@media (max-width:900px){.banner__glass{left:var(--pad);right:var(--pad);max-width:none}}

/* About video: about 100px shorter */
@media (min-width:901px){.jr__feat{min-height:clamp(440px,35vw,540px)}}

/* Experiment: Private romantic pods picture fills the full screen height, edge to edge on the left */
@media (min-width:901px){
  .why.why--full{padding-top:0!important;padding-bottom:0!important}
  .why--full .why__stage{--sh:100vh;top:0;height:100vh;max-width:none;margin:0}
  .why--full .why__pic{top:0;left:0;right:0;bottom:0}
  .why--full .why__copy{padding-left:clamp(48px,6vw,120px);padding-right:max(var(--pad),clamp(40px,6vw,120px))}
}
/* Real logo: no box, sits clean on the picture */
.top__logo:has(img){width:clamp(118px,10.5vw,168px);aspect-ratio:auto;padding:0;box-shadow:none}
.top__logo img{display:block;width:100%;height:auto;filter:drop-shadow(0 6px 18px rgba(30,6,14,.35))}
@media (max-width:1100px){.top__logo:has(img){width:96px}}
.foot__logo img{max-height:none;width:clamp(150px,13vw,190px);height:auto}
/* Header: logo centered on an ivory panel, every menu name on show; the Menu button only on tablets and phones */
.top{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;padding-top:0}
.top__links,.top__right{padding-top:clamp(30px,4.4vh,44px)}
.top__links{padding-top:clamp(34px,4.8vh,48px);gap:clamp(16px,1.9vw,34px)}
.top__right{align-items:center;gap:clamp(16px,1.9vw,30px)}
.top__right .top__links{padding-top:0}
.top__logo:has(img){width:clamp(150px,12.5vw,196px);padding:clamp(18px,2.2vw,28px) clamp(18px,2vw,26px) clamp(14px,1.6vw,20px);border-radius:0 0 18px 18px;box-shadow:0 18px 50px rgba(30,6,14,.22);border:1px solid rgba(212,175,55,.35);border-top:0}
.top__logo img{filter:none}
@media (min-width:1101px){.top__toggle{display:none!important}}
@media (max-width:1100px){
  .top{grid-template-columns:auto 1fr;padding-top:0}
  .top__logo:has(img){width:118px;padding:14px 14px 10px;border-radius:0 0 14px 14px}
  .top__right{padding-top:22px}
}
@media (max-width:600px){.top__logo:has(img){width:96px;padding:10px 10px 8px}}
@media (min-width:1101px){.top__links--l{padding-top:calc(clamp(34px,4.8vh,48px) + 10px)}.top__right .btn--nav{margin-top:0}.top__right{padding-top:calc(clamp(30px,4.4vh,44px) + 8px)}.top__right .top__links a{display:block}}

/* ---------- Gallery carousel: framed pictures in a tall, medium, short rhythm, gliding on a loop ---------- */
.gal{padding:var(--sec) 0;background:var(--gbg,#fff);overflow:hidden}
.gal__head{max-width:760px;margin:0 auto clamp(48px,6vw,72px);padding:0 var(--pad);text-align:center;display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2vh,20px)}
.gal__head .kicker{color:inherit}
.gal__title{margin:0}
.gal__title .a1{font-style:normal;color:#8B1E3F}
.gal__text{margin:0;max-width:52ch}
.gal__view{position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.gal__track{list-style:none;margin:0;padding:18px 0;display:flex;align-items:center;gap:clamp(18px,2.4vw,36px);width:max-content;animation:gal-glide var(--speed,60s) linear infinite}
.gal__view:hover .gal__track{animation-play-state:paused}
@keyframes gal-glide{to{transform:translateX(calc(-50% - clamp(18px,2.4vw,36px) / 2))}}
.gal__item{flex:none}
.gal__item--xl{width:clamp(220px,22vw,320px);height:clamp(300px,31vw,440px)}
.gal__item--md{width:clamp(200px,19vw,280px);height:clamp(240px,24vw,340px)}
.gal__item--sm{width:clamp(180px,17vw,250px);height:clamp(190px,18vw,260px)}
.gal__frame{position:relative;margin:0;width:100%;height:100%;padding:10px;overflow:hidden;border:1px solid color-mix(in srgb,var(--frame) 70%,transparent);background:#fff;box-shadow:0 18px 40px rgba(43,11,18,.08)}
.gal__frame::after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,248,241,.75);pointer-events:none;transition:inset .6s var(--ease)}
.gal__frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.gal__item:hover .gal__frame img{transform:scale(1.05)}
.gal__item:hover .gal__frame::after{inset:24px}
@media (prefers-reduced-motion:reduce){.gal__track{animation:none}.gal__view{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}
/* Banner line: larger and on a single line on computer screens */
@media (min-width:901px){.banner__glass{max-width:calc(100% - 2 * var(--pad))}.banner__glass-text{white-space:nowrap;max-width:none}}
/* FAQ: See more button under the intro */
.faq__more{margin:clamp(22px,3vh,30px) 0 clamp(26px,3.6vh,36px)}
.faq__more:empty{display:none}

/* Banner text back in the small box on the right: first line bigger, the rest at its usual size */
@media (min-width:901px){.banner__glass{max-width:min(600px,calc(100% - 2 * var(--pad)))}.banner__glass-text{white-space:normal;max-width:60ch}}
.banner__lead{display:block;font-size:clamp(15px,calc(var(--leadv) * 1vw),var(--lead));line-height:1.35;font-weight:600;margin-bottom:8px;text-wrap:balance}
.banner__rest{display:block}

/* Menu bar: a straight frosted-glass strip so the links read on every banner picture */
.top{isolation:isolate}
.top::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(92px,11.2vh,104px);z-index:-1;background:linear-gradient(180deg,rgba(43,11,18,.42),rgba(43,11,18,.22));-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid rgba(255,248,241,.16);pointer-events:none}
.top__links a{text-shadow:0 1px 8px rgba(30,6,14,.35)}
@media (max-width:1100px){.top::before{height:86px}}
/* Banner text box: narrower so it sits further right */
@media (min-width:901px){.banner__glass{max-width:min(440px,calc(100% - 2 * var(--pad)))}}

/* Footer: two columns when the third is empty */
@media (min-width:901px){.foot__cols:has(> .foot__col:nth-child(2):last-child){grid-template-columns:1fr 1fr}}

/* Footer in three columns: logo + social | contact | quick links */
@media (min-width:901px){
  .foot{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr);column-gap:clamp(32px,4vw,72px);align-items:start}
  .foot__top,.foot__cols{display:contents}
  .foot__rule{display:none}
  .foot__brand{grid-column:1;grid-row:1;align-self:start;padding-top:clamp(56px,8vh,80px)}
  .foot__social{grid-column:1;grid-row:2;align-self:start;padding-bottom:clamp(56px,8vh,80px);margin-top:clamp(22px,3vh,30px)}
  .foot__col{grid-row:1 / span 2;padding:clamp(56px,8vh,80px) 0 clamp(56px,8vh,80px) clamp(32px,4vw,64px)!important;position:relative}
  .foot__col::before{content:"";position:absolute;left:0;top:clamp(56px,8vh,80px);bottom:clamp(56px,8vh,80px);width:1px;background:color-mix(in srgb,var(--line) 45%,transparent);display:block!important}
  .foot__col::after{display:none!important}
  .foot__bar{grid-column:1 / -1}
  .foot__social .foot__h{margin-bottom:14px}
  .foot__social .foot__icons{justify-content:flex-start}
}
/* Header logo: no extra ivory space above the logo */
.top__logo:has(img){padding-top:6px}
@media (max-width:1100px){.top__logo:has(img){padding-top:4px}}

/* ===== Round of fixes: square logo, sticky glass menu, Book Now hover, phone layout ===== */
.top__logo,.top__logo:has(img){border-radius:0!important}
.top{position:fixed;transition:transform .5s var(--ease)}
.admin-bar .top{top:32px}
@media (max-width:782px){.admin-bar .top{top:46px}}
.top::before{transition:height .45s var(--ease),background .45s ease}
.top__logo{transition:width .45s var(--ease),padding .45s var(--ease)}
.top__links,.top__right{transition:padding .45s var(--ease)}
@media (min-width:1101px){
  .is-scrolled .top::before{height:76px;background:linear-gradient(180deg,rgba(43,11,18,.72),rgba(43,11,18,.55))}
  .is-scrolled .top__logo:has(img){width:112px;padding:4px 12px 6px}
  .is-scrolled .top__links--l{padding-top:28px}
  .is-scrolled .top__right{padding-top:18px}
}
/* Book Now: label and arrow stay readable on hover */
.top .btn--nav{--bc:#8B1E3F!important;--ink:#FFF8F1!important}
.top .btn--nav:hover{color:#FFF8F1!important}
/* Phones and tablets: menu button sits in the middle of the glass bar */
@media (max-width:1100px){
  .top{align-items:start}
  .top::before{height:72px}
  .top__logo:has(img){width:88px;padding:4px 8px 6px}
  .top__right{padding-top:0!important;margin-top:14px;align-self:start}
  .is-scrolled .top::before{background:linear-gradient(180deg,rgba(43,11,18,.72),rgba(43,11,18,.55))}
}
/* Service areas: arrows on the sides, mouse can drag */
.exp__stagewrap{position:relative}
.exp__rail{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.exp__rail:active{cursor:grabbing}
.exp__rail img{-webkit-user-drag:none;user-select:none}
.exp__arrow{position:absolute;top:50%;z-index:5;width:52px;height:52px;margin-top:-26px;display:grid;place-items:center;border:1px solid rgba(139,30,63,.35);background:rgba(255,248,241,.92);color:#8B1E3F;cursor:pointer;box-shadow:0 10px 30px rgba(43,11,18,.12);transition:background .3s ease,color .3s ease}
.exp__arrow svg{width:22px;height:22px}
.exp__arrow:hover{background:#8B1E3F;color:#FFF8F1}
.exp__arrow--prev{left:var(--pad)}
.exp__arrow--next{right:var(--pad)}
@media (max-width:900px){
  .exp__arrow{width:42px;height:42px;margin-top:-21px}
  .exp__arrow--prev{left:10px}
  .exp__arrow--next{right:10px}
  /* Numbers strip: one swipeable row that moves on its own */
  .nums__list{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0!important;row-gap:0!important;margin:0 calc(var(--pad) * -1);padding:0 var(--pad)}
  .nums__list::-webkit-scrollbar{display:none}
  .nums__it{flex:0 0 44%;scroll-snap-align:start;padding:0 18px 0 0!important}
  .nums__it+.nums__it{border-left:1px solid rgba(43,11,18,.12)!important;padding-left:18px!important}
  /* Headings: section titles stay bigger than the titles inside them */
  .gal__title,.exp__title,.faq__title,.jr__ftitle{font-size:clamp(30px,8.6vw,36px)!important;line-height:1.15!important}
  .why__name{font-size:clamp(20px,5.8vw,23px)!important;line-height:1.25!important}
  .exp__name{font-size:clamp(18px,5vw,21px)!important}
  .faq__qt{font-size:clamp(16px,4.4vw,18px)!important}
  /* Even spacing between sections on phones */
  .gal,.exp,.jr,.faq,.why{padding-top:44px!important}
  .gal,.jr,.faq,.why{padding-bottom:44px!important}
  .nums{padding-top:40px!important;padding-bottom:40px!important}
}
/* Desktop spacing: About no longer doubles the gap above the FAQ */
@media (min-width:901px){.jr{padding-top:var(--sec)!important;padding-bottom:var(--sec)!important}}
/* Buttons: label and arrow always sit above the hover fill */
.btn>.btn__label,.btn>.btn__arrow{position:relative;z-index:1}
.btn::before{z-index:0}

/* Phones/tablets: Menu button exactly in the middle of the glass bar */
@media (max-width:1100px){.top__toggle{margin-top:0!important}.top__right{margin-top:14px!important}}

/* ===== Round 3 ===== */
/* Logo panel: curved lower corners again */
.top__logo,.top__logo:has(img){border-radius:0 0 18px 18px!important}
@media (max-width:1100px){.top__logo,.top__logo:has(img){border-radius:0 0 14px 14px!important}}
/* Menu links and Book Now sit exactly in the middle of the glass bar */
.top{--barh:clamp(92px,11.2vh,104px)}
.is-scrolled .top{--barh:76px}
@media (min-width:1101px){
  .top::before{height:var(--barh)!important}
  .top__links--l,.top__right,.is-scrolled .top__links--l,.is-scrolled .top__right{height:var(--barh);padding-top:0!important;margin-top:0!important;display:flex;align-items:center;transition:height .45s var(--ease)}
  .top__right .top__links{height:auto;padding-top:0!important}
  .top__right .btn--nav{margin-top:0!important}
}
@media (max-width:1100px){
  .top{--barh:72px}
  .top::before{height:var(--barh)!important}
  .top__right{height:var(--barh);margin-top:0!important;padding-top:0!important;display:flex;align-items:center}
}
/* Any button: the label and arrow keep a readable colour on hover */
.btn:hover{color:var(--hv-btn-ink,var(--ink))!important}
.btn::before{background:var(--hv-btn-bg,var(--bc))}
.top__links a:hover{color:var(--hv-menu,inherit)}
.foot a:hover,.foot__links a:hover,.foot__info a:hover{color:var(--hv-link,#8B1E3F)}
.faq__q:hover .faq__qt,.faq summary:hover .faq__qt{color:var(--hv-link,#8B1E3F)}
/* Gallery: grab to drag, the script moves it */
.gal--js .gal__track{animation:none!important;will-change:transform}
.gal__view{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.gal__view.is-drag{cursor:grabbing}
.gal__view img{-webkit-user-drag:none;pointer-events:none}
.exp__rail.is-drag,.exp__rail:active{cursor:grabbing}
/* Service areas arrows: phones only */
@media (min-width:768px){.exp__arrow{display:none!important}}
/* ===== Round 4 ===== */
/* Header (computers): logo on the left, every menu link together on the right */
@media (min-width:1101px){
  .top{display:flex;align-items:flex-start;gap:0}
  .top__logo{order:0;margin-right:auto}
  .top__links--l{order:1;margin-right:clamp(16px,1.9vw,34px)}
  .top__right{order:2}
  .top__logo:has(img){width:clamp(108px,8vw,128px);padding:4px 12px 8px}
  .is-scrolled .top__logo:has(img){width:92px;padding:3px 10px 6px}
}
/* Book Now: a soft white fill so it reads on any photo; no second glass layer on top of the header glass */
.top .btn--nav{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,248,241,.82))!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-color:rgba(255,255,255,.9)!important;color:#8B1E3F!important;box-shadow:0 8px 24px rgba(30,6,14,.18)}
.top .btn--nav:hover{color:var(--hv-btn-ink,#FFF8F1)!important}
/* Big word: top keeps its opacity, bottom fades to nothing; once it settles in the corner it is fully solid */
.banner__fade{opacity:calc(var(--word-o,.88) + (1 - var(--word-o,.88)) * var(--corner,0) * 1.25);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 30%,rgba(0,0,0,calc(1 - var(--fade,.55) * (1 - var(--corner,0) * 1.25))) 100%);mask-image:linear-gradient(180deg,#000 0%,#000 30%,rgba(0,0,0,calc(1 - var(--fade,.55) * (1 - var(--corner,0) * 1.25))) 100%)}
/* Banner dots: bigger, on the right */
.banner__dots{justify-content:flex-end;gap:12px;opacity:1}
.banner__dots i{width:10px;height:10px;border:1.5px solid rgba(255,248,241,.9);box-shadow:0 1px 6px rgba(30,6,14,.35)}
.banner__dots i.is-active{width:28px;border-radius:999px;transform:none}
/* Banner pictures: a soft burgundy / plum tint from the brand colours */
.banner__bg::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(160deg,rgba(139,30,63,.34) 0%,rgba(110,40,90,.22) 50%,rgba(43,11,18,.36) 100%);mix-blend-mode:multiply}
/* Gallery: room above and below so the frame shadows are not cut off */
.gal__track{padding:34px 0 64px}
/* Numbers strip sits right under the Private romantic pods, like a band between sections */
.why + .nums,.why ~ .nums{margin-top:0}
/* Numbers strip attached to the bottom of the pods section */
.why:has(+ .nums){padding-bottom:0!important}
.why:has(+ .sep + .nums){padding-bottom:0!important}

/* ===== Round 5 ===== */
/* Slimmer glass bar; the logo panel still hangs a little below it */
.top{--barh:clamp(70px,8.4vh,78px)}
.is-scrolled .top{--barh:62px}
@media (max-width:1100px){.top{--barh:62px}.top__logo:has(img){width:80px}}
/* Banner overlay: one even tint over the whole picture (colour and strength in ACF) */
.banner__bg::after{content:none!important}
.banner__shade::before{content:"";position:absolute;inset:0;background:var(--ovl,rgba(139,30,63,.3));pointer-events:none}
/* Centered heading above the Private romantic pods */
.why-head{background:var(--bg,#fff);padding:var(--sec) var(--pad) clamp(28px,4vh,44px);text-align:center}
.why-head__in{max-width:820px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2vh,20px)}
.why-head .kicker{color:inherit}
.why-head__title{margin:0}
.why-head__title .a1{font-style:normal;color:#8B1E3F}
.why-head__text{margin:0;max-width:56ch}
.why-head + .why,.why-head ~ .why{padding-top:0!important}
/* About: centered heading on top */
.jr__head{justify-content:center;text-align:center}
.jr__head>div{display:flex;flex-direction:column;align-items:center;gap:clamp(12px,1.8vh,18px)}
.jr__head .kicker--before::before{display:none}
.jr__title{margin:0;display:flex;flex-direction:column;align-items:center}
/* Numbers strip under the banner: no line underneath */
.nums{border-bottom:0!important}
.nums::after{display:none!important}
@media (min-width:1101px){.top__logo:has(img){width:clamp(116px,8.6vw,124px);padding:4px 12px 8px}}

/* ===== Round 6 ===== */
/* Footer: less room on top, all three columns start on the same line, quick links one under another */
@media (min-width:901px){
  .foot{padding-top:clamp(40px,5vh,56px)!important}
  .foot__brand,.foot__col{padding-top:clamp(24px,3vh,32px)!important}
  .foot__col::before{top:clamp(24px,3vh,32px)!important}
  .foot__col .foot__h{margin-top:0}
}
.foot__links{display:flex!important;flex-direction:column;gap:12px;grid-template-columns:none!important;column-count:1!important}
.foot__links li{margin:0}
/* A soft gold separator under the About section */
.jr{position:relative}
.jr::after{content:"";position:absolute;left:50%;bottom:0;width:min(1100px,calc(100% - 2 * var(--pad)));height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(212,175,55,.85) 20%,rgba(212,175,55,.85) 80%,transparent)}
.jr::before{content:"";position:absolute;left:50%;bottom:-5px;z-index:1;width:9px;height:9px;transform:translateX(-50%) rotate(45deg);background:#D4AF37;box-shadow:0 0 0 6px var(--bg,#fff)}
/* Section spacing (computers): top 50px, bottom = top + 40 = 90px, so sections sit 140px apart */
@media (min-width:901px){
  :root{--sec-top:50px;--sec-bot:90px}
  .jr,.gal,.faq{padding-top:var(--sec-top)!important;padding-bottom:var(--sec-bot)!important}
  .exp{padding-top:var(--sec-top)!important}
  .why-head{padding-top:var(--sec-bot)!important}
  .why{padding-bottom:var(--sec-bot)!important}
  .why:has(+ .sep + .nums),.why:has(+ .nums){padding-bottom:0!important}
}
@media (min-width:901px){.exp ~ .jr{padding-top:calc(var(--sec-top) + var(--sec-bot))!important}}

/* Service areas endless loop: each card is placed by the script */
.exp--loop .exp__track{left:0;right:0;width:100%;height:100%;transform:none!important}
.exp--loop .exp__card{position:absolute;left:50%;bottom:0;transition:transform .6s var(--ease),width .6s var(--ease),height .6s var(--ease)}
/* Phone menu uses the same font family as the computer menu */
.v4menu__links a{font-family:var(--font-body)!important;font-weight:500!important;font-size:clamp(17px,4.6vw,21px)!important;letter-spacing:.06em;line-height:1.4!important}
/* Footer credit: Made with [two hearts] By ViralChilly */
.foot__credit{display:inline-flex;align-items:center;gap:10px;letter-spacing:.06em}
.foot__hearts{width:30px;height:25px;color:currentColor;flex:none;transform:translateY(-1px)}
.foot__credit a{text-decoration:none}
.foot__credit b{color:#1F5D3A;font-weight:700;letter-spacing:.02em}
.foot__credit b{color:#8B1E3F!important}
.foot__hearts{color:#8B1E3F}

/* Footer credit: tighter spacing */
.foot__credit{gap:6px!important;letter-spacing:.02em!important;word-spacing:0!important}
.foot__credit>*{margin:0!important;padding:0!important}
.foot__hearts{width:22px!important;height:18px!important;margin:0 2px!important}

/* ===== One type system for the whole page ===== */
body.eden-v4 .why-head__title,body.eden-v4 .exp__title,body.eden-v4 .gal__title,body.eden-v4 .faq__title,body.eden-v4 .jr__title .t:first-child,body.eden-v4 .choose__title,body.eden-v4 .rev__title{font-family:var(--font-display)!important;font-size:var(--ty-h2,48px)!important;font-weight:400!important;line-height:1.15!important;letter-spacing:-.01em!important}
body.eden-v4 .jr__title .jr__script{font-size:calc(var(--ty-h2,48px) * 1.2)!important;line-height:1.1!important;letter-spacing:0!important}
body.eden-v4 .jr__title{line-height:1.15!important}
body.eden-v4 .why__name,body.eden-v4 .exp__name,body.eden-v4 .exp__card.is-active .exp__name,body.eden-v4 .jr__ftitle,body.eden-v4 .faq__h{font-family:var(--font-display)!important;font-size:var(--ty-h3,26px)!important;font-weight:400!important;line-height:1.25!important;letter-spacing:-.005em!important}
body.eden-v4 .faq__h .faq__qt{font:inherit!important}
body.eden-v4 .faq__h .faq__n{font-family:var(--font-body)!important;font-size:12px!important;font-weight:600!important;letter-spacing:.12em!important}
body.eden-v4 .why__text,body.eden-v4 .why-head__text,body.eden-v4 .exp__text,body.eden-v4 .jr__p,body.eden-v4 .gal__text,body.eden-v4 .faq__sub,body.eden-v4 .faq__a p,body.eden-v4 .faq__a .t{font-family:var(--font-body)!important;font-size:var(--ty-p,16px)!important;font-weight:400!important;line-height:1.8!important;letter-spacing:0!important}
body.eden-v4 section .kicker,body.eden-v4 .why-head .kicker,body.eden-v4 .jr__fkicker{font-family:var(--font-body)!important;font-size:var(--ty-k,12px)!important;font-weight:600!important;letter-spacing:.3em!important;line-height:1.4!important}
@media (max-width:900px){
  body.eden-v4 .why-head__title,body.eden-v4 .exp__title,body.eden-v4 .gal__title,body.eden-v4 .faq__title,body.eden-v4 .jr__title .t:first-child{font-size:var(--ty-h2m,32px)!important}
  body.eden-v4 .jr__title .jr__script{font-size:calc(var(--ty-h2m,32px) * 1.2)!important}
  body.eden-v4 .why__name,body.eden-v4 .exp__name,body.eden-v4 .exp__card.is-active .exp__name,body.eden-v4 .jr__ftitle,body.eden-v4 .faq__h{font-size:var(--ty-h3m,21px)!important}
  body.eden-v4 .why__text,body.eden-v4 .why-head__text,body.eden-v4 .exp__text,body.eden-v4 .jr__p,body.eden-v4 .gal__text,body.eden-v4 .faq__sub,body.eden-v4 .faq__a p,body.eden-v4 .faq__a .t{font-size:var(--ty-pm,15px)!important}
}
.jr__head,.jr__head>div,.jr__title{text-align:center!important;align-items:center!important;justify-content:center!important;margin-left:auto!important;margin-right:auto!important}
.jr__head{display:flex!important;width:100%}
.exp__arrow{display:none!important}
.foot__hearts{width:18px!important;height:18px!important;margin:0 3px!important;transform:none!important}

/* Paragraphs under inner titles: smaller than the section paragraphs */
body.eden-v4 .why__text,body.eden-v4 .exp__text,body.eden-v4 .jr__p,body.eden-v4 .faq__a p,body.eden-v4 .faq__a .t{font-size:var(--ty-ps,11px)!important}
@media (max-width:900px){body.eden-v4 .why__text,body.eden-v4 .exp__text,body.eden-v4 .jr__p,body.eden-v4 .faq__a p,body.eden-v4 .faq__a .t{font-size:var(--ty-psm,13px)!important}}
/* About rows: sub-headings use the H3 style */
body.eden-v4 .jr__h{font-family:var(--font-display)!important;font-size:var(--ty-h3,26px)!important;font-weight:400!important;line-height:1.25!important;letter-spacing:-.005em!important;margin:0 0 4px}
body.eden-v4 .jr__h a{color:inherit;text-decoration:none;pointer-events:none}
@media (max-width:900px){body.eden-v4 .jr__h{font-size:var(--ty-h3m,21px)!important}}
/* Private romantic pods: the four item titles 10px bigger than other H3s */
body.eden-v4 .why__name{font-size:calc(var(--ty-h3,26px) + 10px)!important;line-height:1.15!important}
@media (max-width:900px){body.eden-v4 .why__name{font-size:calc(var(--ty-h3m,21px) + 5px)!important}}

/* About: intro line under the centered heading, same style as the other section intros */
body.eden-v4 .jr__intro{margin:clamp(6px,1vh,10px) auto 0;max-width:56ch;text-align:center;font-family:var(--font-body)!important;font-size:var(--ty-p,16px)!important;font-weight:400!important;line-height:1.8!important;letter-spacing:0!important}
@media (max-width:900px){body.eden-v4 .jr__intro{font-size:var(--ty-pm,15px)!important}}

/* Small lines above headings: the same thin line on both sides everywhere */
body.eden-v4 section .kicker,body.eden-v4 .why-head .kicker{display:inline-flex!important;align-items:center!important;gap:14px!important}
body.eden-v4 section .kicker::before,body.eden-v4 section .kicker::after,body.eden-v4 .why-head .kicker::before,body.eden-v4 .why-head .kicker::after{content:""!important;display:block!important;width:clamp(28px,4vw,56px)!important;height:1px!important;background:currentColor!important;opacity:.45!important;flex:none}

/* +20px between each section heading block and the content under it */
.why-head{padding-bottom:calc(clamp(28px,4vh,44px) + 20px)!important}
.jr__head{margin-bottom:calc(clamp(36px,6vh,60px) + 20px)!important}
.gal__head{margin-bottom:calc(clamp(48px,6vw,72px) + 20px)!important}
.exp__rail{margin-top:calc(clamp(48px,8vh,80px) + 20px)!important}

/* ===== Updated Page (page 70) ===== */
@media (min-width:901px){body.eden-romance .banner__glass{max-width:min(560px,calc(100% - 2 * var(--pad)))}}

/* ===== Updated Page: romantic theme (dark red, dark green, gold, burgundy) ===== */
body.eden-romance{--rr-red:#7D0F1E;--rr-burg:#4A0E1E;--rr-green:#1C3A2C;--rr-gold:#C9A24A;--rr-gold-hi:#D4AF37;--rr-cream:#FBF4EC}
body.eden-romance .why-head__title,body.eden-romance .exp__title,body.eden-romance .gal__title,body.eden-romance .faq__title,body.eden-romance .jr__title .t:first-child,body.eden-romance .why__name,body.eden-romance .jr__h,body.eden-romance .faq__h{color:var(--rr-burg)!important}
body.eden-romance .exp__title{color:#FFF8F1!important}
body.eden-romance .why-head__title .a1,body.eden-romance .gal__title .a1,body.eden-romance .faq__title .a1,body.eden-romance .jr__script{color:var(--rr-red)!important}
body.eden-romance .exp__title .a1{color:#F2D7D5!important}
body.eden-romance .exp__title .a2{color:var(--rr-gold-hi)!important}
body.eden-romance section .kicker,body.eden-romance .why-head .kicker{color:#A8842C!important}
body.eden-romance .exp .kicker{color:var(--rr-gold-hi)!important}
body.eden-romance .why-head,body.eden-romance .why{background:#FFFFFF}
body.eden-romance .jr::after{background:linear-gradient(90deg,transparent,var(--rr-gold) 20%,var(--rr-gold) 80%,transparent)}
body.eden-romance .jr::before{background:var(--rr-gold);box-shadow:0 0 0 6px var(--rr-cream)}
/* Numbers strip on dark green with gold figures */
body.eden-romance .nums{color:#FFF8F1!important;border-top-color:var(--rr-gold)!important}
body.eden-romance .nums .t{color:inherit!important}
body.eden-romance .nums__v{color:var(--rr-gold-hi)!important;background:none!important}
body.eden-romance .nums__l,body.eden-romance .nums__small{color:rgba(255,248,241,.78)!important}
body.eden-romance .nums__big{color:#FFF8F1!important}
body.eden-romance .nums__lead{border-color:rgba(201,162,74,.45)!important}
body.eden-romance .nums__it+.nums__it{border-color:rgba(201,162,74,.3)!important}
/* Service areas: deeper burgundy veil */
body.eden-romance .exp__bg::after{background:linear-gradient(180deg,rgba(74,14,30,.92),rgba(74,14,30,.8) 55%,rgba(44,6,17,.95))!important}
/* FAQ + buttons */
body.eden-romance .faq__more .btn{--bc:var(--rr-red)!important;color:var(--rr-red)!important}
body.eden-romance .top .btn--nav{color:var(--rr-red)!important}
/* Footer in deep burgundy with gold */
body.eden-romance .foot{color:#F4E8E4!important}
body.eden-romance .foot .t,body.eden-romance .foot__about,body.eden-romance .foot__info,body.eden-romance .foot__info a,body.eden-romance .foot__info span,body.eden-romance .foot__links a{color:rgba(255,248,241,.86)!important}
body.eden-romance .foot__h{color:var(--rr-gold-hi)!important}
body.eden-romance .foot a:hover,body.eden-romance .foot__links a:hover,body.eden-romance .foot__info a:hover{color:var(--rr-gold-hi)!important}
body.eden-romance .foot__info svg{color:var(--rr-gold-hi)!important}
body.eden-romance .foot__bar,body.eden-romance .foot__bar p{color:rgba(255,248,241,.7)!important}
body.eden-romance .foot__bar b,body.eden-romance .foot__credit b{color:var(--rr-gold-hi)!important}
body.eden-romance .foot__hearts{color:var(--rr-gold-hi)!important}
body.eden-romance .foot__col::before{background:rgba(201,162,74,.4)!important}
body.eden-romance .foot__icons a{border-color:rgba(201,162,74,.5)!important;color:var(--rr-gold-hi)!important}
/* Banner: pod name per slide (shown only when names are filled in). */
.banner__pods{position:absolute;left:clamp(20px,4vw,64px);bottom:clamp(28px,6vh,64px);z-index:4;display:grid;pointer-events:none}
.banner__pod{grid-area:1/1;font-family:'Great Vibes',cursive;font-size:clamp(34px,3.6vw,56px);line-height:1.1;color:#F3D98B;text-shadow:0 2px 18px rgba(30,4,10,.55);opacity:0;transform:translateY(10px);transition:opacity .6s ease,transform .6s ease;white-space:nowrap}
.banner__pod::before{content:'';display:block;width:46px;height:1px;background:currentColor;margin:0 0 10px 2px;opacity:.8}
.banner__pod.is-active{opacity:1;transform:none}
@media (max-width:900px){.banner__pods{left:20px;top:calc(var(--barh,62px) + 26px);bottom:auto}.banner__pod{font-size:34px}}
.banner__pods{transition:opacity .35s ease}.banner__pods.is-gone{opacity:0}

/* Updated Page: darker text box so copy stays readable over the busy pod photos. */
body.eden-romance .banner__glass{background:linear-gradient(135deg,rgba(44,6,17,.62),rgba(74,14,30,.48))!important;border-color:rgba(201,162,74,.45)!important}


/* ===== Updated Page v2: green + red palette (overrides the burgundy block above) ===== */
body.eden-romance{--gr-green:#1E5A3C;--gr-green-d:#143A28;--gr-red:#A3142B;--gr-red-d:#7D0F1E;--gr-gold:#C9A24A}
body.eden-romance .why-head__title,body.eden-romance .gal__title,body.eden-romance .faq__title,body.eden-romance .jr__title .t:first-child,body.eden-romance .why__name,body.eden-romance .jr__h,body.eden-romance .faq__h{color:var(--gr-green)!important}
body.eden-romance .why-head__title .a1,body.eden-romance .gal__title .a1,body.eden-romance .faq__title .a1,body.eden-romance .jr__script{color:var(--gr-red)!important}
body.eden-romance section .kicker,body.eden-romance .why-head .kicker{color:var(--gr-red)!important}
body.eden-romance .faq__more .btn{--bc:var(--gr-red)!important;color:var(--gr-red)!important}
body.eden-romance .top .btn--nav{color:var(--gr-red)!important}
/* Banner text: no box, just readable text */
body.eden-romance .banner__glass{background:none!important;border-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
body.eden-romance .banner__glass::before,body.eden-romance .banner__glass::after{display:none!important}
body.eden-romance .banner__glass .t,body.eden-romance .banner__glass p{text-shadow:0 1px 3px rgba(0,0,0,.55),0 2px 22px rgba(0,0,0,.45)}
/* Numbers strip: light cream with red figures and green labels */
body.eden-romance .nums{color:var(--gr-green)!important;border-top:1px solid rgba(201,162,74,.35)!important;border-bottom:1px solid rgba(201,162,74,.35)!important}
body.eden-romance .nums__v{color:var(--gr-red)!important}
body.eden-romance .nums__l,body.eden-romance .nums__small{color:rgba(30,90,60,.85)!important}
body.eden-romance .nums__big{color:var(--gr-green)!important}
body.eden-romance .nums__lead{border-color:rgba(163,20,43,.25)!important}
body.eden-romance .nums__it+.nums__it{border-color:rgba(30,90,60,.18)!important}
/* Pods list: show each picture whole, no cropping */
body.eden-romance .why__pic{background:transparent!important;box-shadow:none!important;overflow:visible!important}
body.eden-romance .why__pic img{inset:0!important;top:0!important;height:100%!important;width:100%!important;object-fit:contain!important;transform:none!important;filter:drop-shadow(0 18px 30px rgba(20,58,40,.18))}
/* Service areas: lighter, photo shows through in green-to-red */
body.eden-romance .exp__bg::after{background:linear-gradient(180deg,rgba(20,58,40,.68),rgba(20,58,40,.42) 50%,rgba(125,15,30,.62))!important}
body.eden-romance .exp__title .a1{color:#FFE9E4!important}
body.eden-romance .exp__title{text-shadow:0 2px 18px rgba(0,0,0,.35)}
/* Footer in deep green with gold */
body.eden-romance .foot__col::before{background:rgba(201,162,74,.35)!important}
body.eden-romance .why__pic{background:#FFFFFF!important}body.eden-romance .why__pic img{filter:none}

/* Falling rose petals (switch in the page editor). */
.eden-petals{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:30}
/* Roses that move with the mouse */
.has-deco{isolation:isolate}
.eden-deco{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.eden-deco__it{position:absolute;width:var(--w);perspective:800px;transform:translate3d(var(--mx,0),var(--my,0),0);will-change:transform}
.eden-deco__it img{display:block;width:100%;height:auto;transform-style:preserve-3d;transform:scaleX(var(--flip,1)) rotate(var(--rot)) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(calc(1 + var(--near,0) * .12)) rotate(calc(var(--near,0) * 10deg));filter:drop-shadow(0 14px 18px rgba(60,10,20,.22)) saturate(calc(1 + var(--near,0) * .25));animation:edenFloat 7s ease-in-out infinite;animation-delay:var(--delay,0s)}
@keyframes edenFloat{0%,100%{translate:0 0}50%{translate:0 -10px}}
@media (max-width:767px){.eden-deco__it{width:calc(var(--w) * .55);opacity:.9}}
@media (prefers-reduced-motion:reduce){.eden-deco__it img{animation:none}}
@media (max-width:767px){.eden-deco__it{width:calc(var(--w) * .42);opacity:.6}.eden-deco__it[style*="left:"]{left:-7%!important}.eden-deco__it[style*="right:"]{right:-7%!important}}

/* Banner 3D heart + photo depth */

.banner__heart{position:absolute;left:clamp(16px,4vw,72px);bottom:clamp(110px,18vh,190px);width:clamp(220px,22vw,360px);pointer-events:none;perspective:900px;opacity:0;scale:.9;transform:translate3d(var(--hx,0),var(--hy,0),0);transition:opacity .8s ease,scale .8s ease}
.banner__heart.is-on{opacity:1;scale:1}
.banner__heart img{display:block;width:100%;height:auto;transform:rotateY(var(--hry,0deg)) rotateX(var(--hrx,0deg));filter:drop-shadow(0 28px 26px rgba(20,8,4,.5)) drop-shadow(0 0 26px rgba(255,214,140,.35));animation:edenFloat 6s ease-in-out infinite}
@media (max-width:900px){.banner__heart{width:130px;left:14px;bottom:auto;top:calc(var(--barh,62px) + 150px)}}
@media (prefers-reduced-motion:reduce){.banner__heart img{animation:none}}
@media (min-width:901px){.banner__heart{width:clamp(260px,25vw,420px);bottom:clamp(100px,16vh,170px)}}

.eden-deco--free{overflow:visible}
@media (max-width:767px){.eden-deco--free .eden-deco__it{top:-90px!important;left:2%!important}}

body.eden-romance .why__pic img{object-position:50% 0!important}

/* ===== Duplicate page (125): service areas on white, pods list on the photo background ===== */
body.page-id-125 .exp{background:#FFFFFF!important}
body.page-id-125 .exp__bg{display:none!important}
body.page-id-125 .exp__title{color:var(--gr-green)!important;text-shadow:none!important}
body.page-id-125 .exp__title .a1,body.page-id-125 .exp__title .a2{color:var(--gr-red)!important}
body.page-id-125 .exp .kicker{color:var(--gr-red)!important}
body.page-id-125 .exp__sub{color:#4A4A4A!important}
body.page-id-125 .why-head,body.page-id-125 .why{background:linear-gradient(180deg,rgba(20,58,40,.74),rgba(20,58,40,.5) 50%,rgba(125,15,30,.66)),url('https://wordpress-1168726-6714542.cloudwaysapps.com/wp-content/uploads/2026/10/eden-ref-anniversary-pod.jpg') center/cover fixed!important}
body.page-id-125 .why-head__title{color:#FFF8F1!important}
body.page-id-125 .why-head__title .a1{color:#E7C873!important}
body.page-id-125 .why-head .kicker{color:#E7C873!important}
body.page-id-125 .why-head__text{color:rgba(255,248,241,.9)!important}
body.page-id-125 .why .t,body.page-id-125 .why a{color:rgba(255,248,241,.92)!important}
body.page-id-125 .why .why__name{color:#FFFFFF!important}
body.page-id-125 .why__pic{background:#16382A!important}
@media (max-width:1024px){body.page-id-125 .why-head,body.page-id-125 .why{background-attachment:scroll!important}}

body.page-id-125 .why-head{background:linear-gradient(rgba(18,52,36,.86),rgba(18,52,36,.86)),url('https://wordpress-1168726-6714542.cloudwaysapps.com/wp-content/uploads/2026/10/eden-ref-anniversary-pod.jpg') center/cover fixed!important}
body.page-id-125 .why{background:linear-gradient(180deg,rgba(18,52,36,.86),rgba(18,52,36,.84) 70%,rgba(110,14,28,.82)),url('https://wordpress-1168726-6714542.cloudwaysapps.com/wp-content/uploads/2026/10/eden-ref-anniversary-pod.jpg') center/cover fixed!important}
@media (max-width:1024px){body.page-id-125 .why-head,body.page-id-125 .why{background-attachment:scroll!important}}

/* ===== Updated Page round 3 ===== */
/* Menu glass in deep green */
/* Banner text: Apple-style frosted glass so it reads on any photo */
body.eden-romance .banner__glass{background:rgba(18,40,28,.30)!important;-webkit-backdrop-filter:blur(16px) saturate(150%)!important;backdrop-filter:blur(16px) saturate(150%)!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:18px!important;box-shadow:0 18px 40px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.25)!important;padding:20px 24px!important}
/* Main section headings: every word capitalised */
body.eden-romance :is(.why-head__title,.exp__title,.jr__title,.gal__title,.faq__title){text-transform:capitalize}
/* See More FAQs: clear hover */
body.eden-romance .faq__more .btn{transition:background-color .3s ease,color .3s ease,border-color .3s ease}
body.eden-romance .faq__more .btn:hover,body.eden-romance .faq__more .btn:focus-visible{background:var(--gr-red)!important;border-color:var(--gr-red)!important;color:#FFFFFF!important}
body.eden-romance .faq__more .btn:hover *{color:#FFFFFF!important}
/* Bigger text on the photo cards */
body.eden-romance .exp__text{font-size:18px!important;line-height:1.55!important}
body.eden-romance .exp__meta{font-size:13px!important}
body.eden-romance .exp__info a,body.eden-romance .exp__info .exp__link{font-size:13px!important}
body.eden-romance .exp__name{font-size:34px!important}
body.eden-romance .jr__fkicker{font-size:15px!important}
body.eden-romance .jr__ftitle{font-size:36px!important}
@media (max-width:767px){body.eden-romance .exp__text{font-size:16px!important}body.eden-romance .exp__name{font-size:26px!important}body.eden-romance .jr__ftitle{font-size:28px!important}body.eden-romance .banner__glass{padding:16px 18px!important}}
body.eden-romance .top::before{background:linear-gradient(rgba(20,58,40,.8),rgba(20,58,40,.62))!important}

/* Book Now: readable text on hover */
body.eden-romance .top .btn--nav:hover,body.eden-romance .top .btn--nav:focus-visible{color:#FFFFFF!important}
body.eden-romance .top .btn--nav:hover *{color:#FFFFFF!important}

/* Updated Page: About heading second line in the same heading font and size */
body.eden-v4.eden-romance .jr__title .jr__script{font-size:var(--ty-h2,48px)!important}
@media (max-width:767px){body.eden-v4.eden-romance .jr__title .jr__script{font-size:var(--ty-h2m,32px)!important}}

/* Updated Page: About heading second line 5px smaller, same line spacing as the other headings */
body.eden-v4.eden-romance .jr__title .jr__script{font-size:calc(var(--ty-h2,48px) - 5px)!important;margin-top:0!important}
body.eden-v4.eden-romance .jr__title > .t{line-height:calc(var(--ty-h2,48px) * 1.15)!important}
@media (max-width:767px){body.eden-v4.eden-romance .jr__title .jr__script{font-size:calc(var(--ty-h2m,32px) - 3px)!important}body.eden-v4.eden-romance .jr__title > .t{line-height:calc(var(--ty-h2m,32px) * 1.15)!important}}
/* Updated Page: bigger footer text (copyright bar and credit unchanged) */
body.eden-romance .foot__about{font-size:16px!important;line-height:1.65!important}
body.eden-romance .foot__h{font-size:14px!important}
body.eden-romance .foot__info,body.eden-romance .foot__info a,body.eden-romance .foot__info span,body.eden-romance .foot__links a{font-size:16px!important}
@media (max-width:767px){body.eden-romance .foot__about,body.eden-romance .foot__info,body.eden-romance .foot__info a,body.eden-romance .foot__info span,body.eden-romance .foot__links a{font-size:15px!important}}
/* Updated Page, phones only: numbers strip shows exactly two items at a time */
@media (max-width:767px){body.eden-romance .nums__list{scroll-padding-inline:var(--pad,20px)}body.eden-romance .nums__it{flex:0 0 50%!important;box-sizing:border-box}}
@media (max-width:767px){body.eden-romance .nums__list{margin:0!important;padding:0!important;scroll-padding-inline:0!important}}

/* Button arrows are drawn as SVG (iPhones turned the text arrow into a blue emoji) */
.btn__arrow i svg{display:block;width:1em;height:1em}


/* ===================== Questions & Answers page ===================== */
.qa-page{--qa-g:#1E5A3C;--qa-gd:#143A28;--qa-gdd:#0E2A1D;--qa-r:#A3142B;--qa-gold:#E7C873;--qa-gold-d:#C9A24A;--qa-cream:#FBF5EF;--qa-ink:#4A4A4A;--qa-ease:cubic-bezier(.2,.75,.2,1);display:block}

/* 3D helpers: rise in on scroll + tilt toward the pointer */
.qa-page [data-qa-rise],.qa-page [data-qa-tilt]{transform:perspective(1000px) translate3d(0,var(--ty,0px),0) rotateX(calc(var(--rx,0deg) + var(--rxa,0deg))) rotateY(var(--ry,0deg));transition:transform .9s var(--qa-ease),opacity .9s ease;transition-delay:calc(var(--d,0) * 120ms)}
.qa-page [data-qa-rise]:not(.is-in){opacity:0;--ty:46px;--rxa:-16deg}
.qa-page [data-qa-tilt].is-tilt{transition:transform .18s ease-out,box-shadow .5s ease,border-color .5s ease,background .5s ease;transition-delay:0s}
.qa-page [data-qa-tilt]::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.16),transparent 55%);opacity:0;transition:opacity .4s ease}
.qa-page [data-qa-tilt].is-tilt::after{opacity:1}

/* ---------- Banner ---------- */
.qah{position:relative;isolation:isolate;overflow:hidden;height:clamp(420px,var(--qah-h,60vh),760px);display:flex;align-items:flex-end;background:var(--qa-gd);color:#FFF8F1}
.qah__bg{position:absolute;inset:-8% 0 0;z-index:-1;transform:translate3d(var(--px,0px),calc(var(--py,0px) + var(--sy,0px)),0) scale(1.08);transition:transform .9s ease-out;will-change:transform}
.qah__img{width:100%;height:100%;object-fit:cover;display:block;animation:qaZoom 14s ease-out both}
@keyframes qaZoom{from{transform:scale(1.12)}to{transform:scale(1)}}
.qah__bg::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,42,29,.62) 0%,rgba(10,22,16,var(--qah-ov,.45)) 42%,rgba(10,22,16,calc(var(--qah-ov,.45) + .32)) 100%)}
.qah__in{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px) clamp(10px,1.6vw,26px)}
.qah__crumb{font-family:var(--font-body);font-size:clamp(12px,.15vw + 11px,13px);font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,248,241,.8);display:inline-flex;gap:10px;align-items:center;margin:0 0 clamp(6px,1vw,14px);opacity:0;transform:translateY(14px);transition:opacity .8s ease .2s,transform .8s var(--qa-ease) .2s}
.qah.is-in .qah__crumb{opacity:1;transform:none}
.qah__crumb a{color:inherit;text-decoration:none;transition:color .3s ease}
.qah__crumb a:hover{color:var(--qa-gold)}
.qah__crumb span{color:var(--qa-gold)}
.qah__title{margin:0;font-family:var(--font-display);font-weight:500;font-size:clamp(40px,8vw,120px);line-height:.92;letter-spacing:-.012em;text-transform:uppercase;color:#FFF8F1;perspective:1100px}
.qah__fit{display:inline-block;white-space:nowrap;transform:rotateX(var(--trx,0deg)) rotateY(var(--try,0deg));transform-style:preserve-3d;transition:transform .9s var(--qa-ease);text-shadow:0 10px 40px rgba(0,0,0,.25)}
.qah__line{display:inline}
.qah__line+.qah__line::before{content:' '}
.qah__title em{font-style:italic;font-weight:400;color:var(--qa-gold);text-transform:none}
.qah .ch{display:inline-block;opacity:0;transform:translateY(.35em);filter:blur(10px)}
.qah.is-in .ch{opacity:1;transform:none;filter:none;transition:opacity 1.4s ease calc(.25s + var(--ci,0) * .07s),transform 1.6s var(--ease,var(--qa-ease)) calc(.25s + var(--ci,0) * .07s),filter 1.4s ease calc(.25s + var(--ci,0) * .07s)}

/* ---------- Questions ---------- */
.qa{position:relative;overflow:hidden;background:var(--qa-cream);padding:clamp(64px,8vw,130px) 0 clamp(70px,8.5vw,140px)}
.qa::before{content:'?';position:absolute;right:clamp(-60px,-2vw,-10px);top:clamp(20px,4vw,60px);font:italic 400 clamp(260px,30vw,520px)/.8 var(--font-display);color:transparent;-webkit-text-stroke:1.5px rgba(201,162,74,.28);pointer-events:none;animation:qaSpin 16s ease-in-out infinite;transform-origin:50% 60%}
@keyframes qaSpin{0%,100%{transform:perspective(900px) rotateY(-24deg) rotateZ(4deg)}50%{transform:perspective(900px) rotateY(24deg) rotateZ(-4deg) translateY(-14px)}}
.qa__wrap{position:relative;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px);display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.4fr);gap:clamp(36px,6vw,110px);align-items:start}
.qa__side{position:sticky;top:calc(var(--barh,78px) + 34px);display:flex;flex-direction:column;gap:clamp(28px,3vw,42px)}
.qa__kicker{display:flex;align-items:center;gap:14px;margin:0 0 clamp(14px,1.4vw,20px);font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--qa-r)}
.qa__kicker::before{content:'';width:38px;height:1px;background:currentColor;opacity:.7}
.qa__title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(36px,2.2vw + 24px,56px);line-height:1.15;letter-spacing:-.01em;color:var(--qa-g);text-transform:capitalize}
.qa__title em{font-style:normal;color:var(--qa-r)}
.qa__text{margin:clamp(16px,1.6vw,22px) 0 0;font-family:var(--font-body);font-size:clamp(16px,.2vw + 15px,18px);line-height:1.8;color:var(--qa-ink);max-width:46ch}

.qa__card{position:relative;max-width:440px;border-radius:20px;color:#FFF8F1;background:radial-gradient(130% 120% at 0 0,#24694A,var(--qa-gd) 60%,var(--qa-gdd));box-shadow:0 30px 60px -30px rgba(14,42,29,.55);transform-style:preserve-3d}
.qa__card::before{content:'';position:absolute;inset:9px;border:1px solid rgba(231,200,115,.32);border-radius:14px;pointer-events:none}
.qa__card-pic{height:clamp(150px,13vw,200px);border-radius:20px 20px 0 0;overflow:hidden}
.qa__card-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--qa-ease)}
.qa__card:hover .qa__card-pic img{transform:scale(1.07)}
.qa__card-in{position:relative;padding:clamp(24px,2.4vw,34px);display:flex;flex-direction:column;align-items:flex-start;gap:12px;transform:translateZ(36px)}
.qa__card-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(23px,.75vw + 19px,30px);line-height:1.2;color:#FFF8F1}
.qa__card-text{margin:0;font-family:var(--font-body);font-size:clamp(14px,.1vw + 13.6px,15px);line-height:1.8;color:rgba(255,248,241,.82)}
.qa__call{display:inline-flex;align-items:center;gap:10px;margin:2px 0 8px;color:#FFF8F1;text-decoration:none;font:400 clamp(20px,.5vw + 17px,24px)/1.2 var(--font-display);transition:color .3s ease}
.qa__call svg{width:20px;height:20px;color:var(--qa-gold);flex:none}
.qa__call:hover{color:var(--qa-gold)}


.qa__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;perspective:1400px}
.qa__item{transform-origin:50% 0;transition:transform 1s var(--qa-ease),opacity .8s ease;transition-delay:calc(var(--k,0) * 80ms)}
.qa__item:not(.is-in){opacity:0;transform:translate3d(0,40px,-60px) rotateX(-55deg)}
.qa__item.is-hide{display:none}
.qa__face{position:relative;background:#fff;border:1px solid rgba(201,162,74,.3);border-radius:18px;box-shadow:0 2px 0 rgba(20,58,40,.03);transition:transform .9s var(--qa-ease),box-shadow .5s ease,border-color .5s ease}
.qa__face::before{content:'';position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:3px;background:var(--qa-r);transform:scaleY(0);transition:transform .6s var(--qa-ease)}
.qa__item.is-open .qa__face{border-color:rgba(163,20,43,.3);box-shadow:0 26px 50px -26px rgba(20,58,40,.38)}
.qa__item.is-open .qa__face::before{transform:scaleY(1)}
.qa__face:hover{box-shadow:0 22px 44px -26px rgba(20,58,40,.32)}
.qa__h{margin:0;font:inherit}
.qa__q{width:100%;display:grid;grid-template-columns:clamp(40px,3.6vw,56px) minmax(0,1fr) 42px;align-items:center;gap:clamp(12px,1.6vw,22px);padding:clamp(18px,1.8vw,26px) clamp(18px,2.2vw,30px);background:none;border:0;cursor:pointer;text-align:left;color:inherit;font:inherit;border-radius:18px}
.qa__q:focus-visible{outline:2px solid var(--qa-g);outline-offset:3px}
.qa__n{font:400 clamp(22px,1.1vw + 14px,32px)/1 var(--font-display);color:transparent;-webkit-text-stroke:1px var(--qa-gold-d);transition:color .5s ease,-webkit-text-stroke-color .5s ease}
.qa__item.is-open .qa__n{color:var(--qa-r);-webkit-text-stroke-color:var(--qa-r)}
.qa__qt{display:block;font-family:var(--font-display);font-weight:400;font-size:clamp(17px,.85vw + 12.8px,25px);line-height:1.3;color:var(--qa-g);transition:color .35s ease}
.qa__q:hover .qa__qt,.qa__item.is-open .qa__qt{color:var(--qa-r)}
.qa__ic{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid rgba(201,162,74,.6);color:var(--qa-g);transition:background .45s ease,border-color .45s ease,color .45s ease,transform .7s var(--qa-ease)}
.qa__ic::before,.qa__ic::after{content:'';position:absolute;left:50%;top:50%;width:14px;height:1.5px;margin:-.75px 0 0 -7px;background:currentColor;border-radius:2px;transition:transform .5s var(--qa-ease)}
.qa__ic::after{transform:rotate(90deg)}
.qa__q:hover .qa__ic{border-color:var(--qa-g)}
.qa__item.is-open .qa__ic{background:var(--qa-r);border-color:var(--qa-r);color:#FFF8F1;transform:rotate(180deg)}
.qa__item.is-open .qa__ic::after{transform:rotate(0deg)}
.qa__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s var(--qa-ease)}
.qa__a>div{overflow:hidden}
.qa__item.is-open .qa__a{grid-template-rows:1fr}
.qa__at{margin:0;padding:0 calc(42px + clamp(30px,3.8vw,52px)) clamp(22px,2.2vw,30px) calc(clamp(40px,3.6vw,56px) + clamp(30px,3.8vw,52px));font-family:var(--font-body);font-size:clamp(14px,.1vw + 13.6px,15px);line-height:1.85;color:var(--qa-ink);opacity:0;transform:translateY(-8px);transition:opacity .45s ease,transform .6s var(--qa-ease)}
.qa__item.is-open .qa__at{opacity:1;transform:none;transition-delay:.14s}

/* ---------- Booking band ---------- */
.qac{position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;padding:clamp(80px,10vw,160px) var(--pad,20px);background:var(--qa-gd);color:#FFF8F1;perspective:1200px}
.qac__bg{position:absolute;inset:-14% 0;z-index:-1;transform:translate3d(0,var(--sy,0px),0);will-change:transform}
.qac__img{width:100%;height:100%;object-fit:cover;display:block}
.qac__bg::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,42,29,.78),rgba(14,42,29,.62) 50%,rgba(14,42,29,.84))}
.qac__box{position:relative;max-width:860px;width:100%;text-align:center;padding:clamp(34px,4.4vw,64px) clamp(24px,4vw,64px);border-radius:24px;border:1px solid rgba(231,200,115,.38);background:rgba(20,58,40,.42);-webkit-backdrop-filter:blur(12px) saturate(130%);backdrop-filter:blur(12px) saturate(130%);box-shadow:0 40px 80px -40px rgba(0,0,0,.55);transform-style:preserve-3d}
.qa__kicker--c{justify-content:center;color:var(--qa-gold)}
.qa__kicker--c::after{content:'';width:38px;height:1px;background:currentColor;opacity:.7}
.qac__title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(36px,2.2vw + 24px,56px);line-height:1.15;letter-spacing:-.01em;color:#FFF8F1;text-transform:capitalize;transform:translateZ(40px)}
.qac__title em{font-style:normal;color:var(--qa-gold)}
.qac__text{margin:clamp(14px,1.4vw,20px) auto 0;max-width:56ch;font-family:var(--font-body);font-size:clamp(16px,.2vw + 15px,18px);line-height:1.8;color:rgba(255,248,241,.86);transform:translateZ(24px)}
.qac__acts{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 30px;margin-top:clamp(24px,2.6vw,36px);transform:translateZ(30px)}
.qa__call--c{margin:0}

/* ---------- Tablet ---------- */
@media (max-width:1023px){
	.qa__wrap{grid-template-columns:1fr}
	.qa__side{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
}
/* ---------- Phone ---------- */
@media (max-width:767px){
	.qah{height:clamp(380px,var(--qah-h,60vh),540px)}
	.qah__line{display:block}
	.qah__title{line-height:.96;font-size:13vw}
	.qa__side{grid-template-columns:1fr}
	.qa__card{max-width:none}
	.qa__q{grid-template-columns:30px minmax(0,1fr) 36px;padding:18px 16px}
	.qa__ic{width:36px;height:36px}
	.qa__at{padding:0 16px 20px 16px}
	.qa::before{font-size:240px;right:-40px;top:10px}
}
@media (hover:none){.qa-page [data-qa-tilt]::after{display:none}}
@media (prefers-reduced-motion:reduce){
	.qa-page [data-qa-rise],.qa-page [data-qa-tilt],.qa__item,.qah .ch,.qah__crumb{opacity:1!important;transform:none!important;transition:none!important}
	.qah__img,.qa::before{animation:none}
	.qah__bg,.qac__bg{transform:none!important}
}
/* ===================== /Questions & Answers page ===================== */
/* ===================== Gallery page ===================== */
.qa__kicker--both{justify-content:center}
.qa__kicker--both::after{content:'';width:38px;height:1px;background:currentColor;opacity:.7}
.gl{position:relative;background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,130px) 0 clamp(70px,8.5vw,140px)}
.gl__wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad,20px)}
.gl__head{text-align:center;max-width:860px;margin:0 auto}
.gl__title{text-align:center}
.gl__text{margin:clamp(14px,1.4vw,20px) auto 0;max-width:60ch;font-family:var(--font-body);font-size:clamp(16px,.2vw + 15px,18px);line-height:1.8;color:var(--qa-ink,#4A4A4A)}

/* Category buttons with a sliding green pill */
.gl__bar{display:flex;justify-content:center;margin:clamp(30px,3.4vw,48px) 0}
.gl__tabs{position:relative;display:flex;gap:4px;max-width:100%;padding:6px;border:1px solid rgba(30,90,60,.18);border-radius:999px;background:#fff;box-shadow:0 18px 34px -26px rgba(20,58,40,.45);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gl__tabs::-webkit-scrollbar{display:none}
.gl__ink{position:absolute;z-index:0;left:0;top:0;height:var(--h,46px);width:var(--w,0px);border-radius:999px;background:var(--qa-g,#1E5A3C);box-shadow:0 10px 22px -10px rgba(20,58,40,.7);transform:translate(var(--x,0px),var(--y,6px));transition:transform .55s var(--qa-ease),width .55s var(--qa-ease);pointer-events:none}
.gl__tab{position:relative;z-index:1;flex:none;display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 20px;border:0;border-radius:999px;background:transparent;color:var(--qa-g,#1E5A3C);font:600 12px/1 var(--font-body);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:color .45s ease}
.gl__tab sup{top:auto;vertical-align:super;font-size:10px;font-weight:600;letter-spacing:0;color:var(--qa-r,#A3142B);transition:color .45s ease}
.gl__tab:hover{color:var(--qa-r,#A3142B)}
.gl__tab.is-on,.gl__tab.is-on sup{color:#FFF8F1}
.gl__tab:focus-visible{outline:2px solid var(--qa-g,#1E5A3C);outline-offset:2px}
.gl__pick{display:none;position:relative;width:100%}
.gl__pick select{width:100%;height:56px;padding:0 54px 0 22px;border:1px solid rgba(30,90,60,.25);border-radius:999px;background:#fff;color:var(--qa-g,#1E5A3C);font:600 13px/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;box-shadow:0 18px 34px -26px rgba(20,58,40,.45);-webkit-appearance:none;appearance:none;cursor:pointer;outline:none}
.gl__pick select:focus{border-color:var(--qa-g,#1E5A3C);box-shadow:0 0 0 4px rgba(30,90,60,.12)}
.gl__pick svg{position:absolute;right:8px;top:50%;width:40px;height:40px;padding:10px;margin-top:-20px;border-radius:50%;background:var(--qa-g,#1E5A3C);color:#FFF8F1;pointer-events:none}

/* Masonry grid */
.gl__grid{list-style:none;margin:0;padding:0;column-count:var(--cols,3);column-gap:clamp(12px,1.4vw,22px);perspective:1600px}
.gl__grid.is-js{display:grid;grid-template-columns:repeat(var(--cn,3),minmax(0,1fr));grid-auto-rows:4px;column-count:auto;align-items:start}
.gl__grid.is-js .gl__item{margin:0}
.gl__item{break-inside:avoid;-webkit-column-break-inside:avoid;margin:0 0 clamp(12px,1.4vw,22px);transform-origin:50% 0;transition:transform 1s var(--qa-ease),opacity .8s ease;transition-delay:calc(var(--k,0) * 70ms)}
.gl__item:not(.is-in){opacity:0;transform:translate3d(0,50px,-80px) rotateX(-28deg)}
.gl__item.is-hide{display:none}
.gl__item.is-pop{animation:glPop .75s var(--qa-ease) both;animation-delay:calc(var(--p,0) * 45ms)}
@keyframes glPop{from{opacity:0;transform:perspective(900px) translate3d(0,28px,-40px) rotateX(-18deg) scale(.96)}to{opacity:1;transform:none}}
.gl__tile{position:relative;display:block;width:100%;padding:0;border:0;border-radius:18px;overflow:hidden;background:#EAE0D5;cursor:zoom-in;box-shadow:0 22px 44px -30px rgba(20,58,40,.55);-webkit-tap-highlight-color:transparent}
.gl__tile:focus-visible{outline:3px solid var(--qa-gold,#E7C873);outline-offset:3px}
.gl__img{display:block;width:100%;height:auto;transition:transform 1.2s var(--qa-ease)}
.gl__tile:hover .gl__img{transform:scale(1.06)}
.gl__tile::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,42,29,0) 40%,rgba(14,42,29,.88));opacity:0;transition:opacity .5s ease;pointer-events:none}
.gl__cap{position:absolute;z-index:2;left:clamp(14px,1.4vw,20px);right:64px;bottom:clamp(14px,1.4vw,18px);text-align:left;color:#FFF8F1;opacity:0;transform:translateY(16px);transition:opacity .45s ease,transform .6s var(--qa-ease);pointer-events:none}
.gl__cap em{display:block;margin-bottom:8px;font:600 11px/1.3 var(--font-body);font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:var(--qa-gold,#E7C873)}
.gl__cap b{display:block;font:400 clamp(16px,.35vw + 13px,19px)/1.35 var(--font-display)}
.gl__zoom{position:absolute;z-index:2;right:clamp(14px,1.4vw,18px);bottom:clamp(14px,1.4vw,18px);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--qa-gold,#E7C873);color:var(--qa-gd,#143A28);opacity:0;transform:scale(.5) rotate(-90deg);transition:opacity .4s ease,transform .6s var(--qa-ease);pointer-events:none}
.gl__zoom svg{width:18px;height:18px}
.gl__tile:hover::before,.gl__tile:focus-visible::before{opacity:1}
.gl__tile:hover .gl__cap,.gl__tile:focus-visible .gl__cap{opacity:1;transform:none}
.gl__tile:hover .gl__zoom,.gl__tile:focus-visible .gl__zoom{opacity:1;transform:none}

/* Viewer */
.gl-lb{--qa-ease:cubic-bezier(.2,.75,.2,1);--qa-gold:#E7C873;--qa-gd:#143A28;position:fixed;inset:0;z-index:100000;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(8px,2vw,32px);padding:clamp(60px,6vw,84px) clamp(10px,3vw,44px) clamp(24px,3vw,40px);background:rgba(9,20,14,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}
.gl-lb.is-open{opacity:1;visibility:visible;transition:opacity .45s ease}
.gl-lb__fig{margin:0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:18px;perspective:1600px}
.gl-lb__stage{display:flex;justify-content:center;align-items:center;width:100%}
.gl-lb__img{display:block;max-width:100%;max-height:calc(100vh - 230px);max-height:calc(100dvh - 230px);width:auto;height:auto;border-radius:14px;box-shadow:0 50px 100px -40px rgba(0,0,0,.8);transform:none;opacity:1;transition:transform .6s var(--qa-ease),opacity .35s ease}
.gl-lb:not(.is-open) .gl-lb__img{transform:perspective(1400px) translateY(30px) rotateX(12deg) scale(.92);opacity:0}
.gl-lb__img.is-out-l{opacity:0;transform:perspective(1400px) translateX(-60px) rotateY(28deg) scale(.92)}
.gl-lb__img.is-out-r{opacity:0;transform:perspective(1400px) translateX(60px) rotateY(-28deg) scale(.92)}
.gl-lb__img.is-from-l{opacity:0;transform:perspective(1400px) translateX(-60px) rotateY(28deg) scale(.92);transition:none}
.gl-lb__img.is-from-r{opacity:0;transform:perspective(1400px) translateX(60px) rotateY(-28deg) scale(.92);transition:none}
.gl-lb__cap{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:62ch;text-align:center;color:#FFF8F1}
.gl-lb__cap em{font:600 11px/1.3 var(--font-body);font-style:normal;letter-spacing:.22em;text-transform:uppercase;color:var(--qa-gold,#E7C873)}
.gl-lb__cap span{font:400 clamp(17px,.5vw + 14px,22px)/1.4 var(--font-display)}
.gl-lb__cap i{font:500 12px/1 var(--font-body);font-style:normal;letter-spacing:.2em;color:rgba(255,248,241,.6)}
.gl-lb__nav,.gl-lb__close{display:grid;place-items:center;width:56px;height:56px;padding:0;border-radius:50%;border:1px solid rgba(231,200,115,.5);background:rgba(255,255,255,.06);color:#FFF8F1;cursor:pointer;transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s var(--qa-ease)}
.gl-lb__nav svg,.gl-lb__close svg{width:22px;height:22px}
.gl-lb__nav:hover,.gl-lb__close:hover{background:var(--qa-gold,#E7C873);border-color:var(--qa-gold,#E7C873);color:var(--qa-gd,#143A28)}
.gl-lb__nav:hover{transform:scale(1.06)}
.gl-lb__nav:focus-visible,.gl-lb__close:focus-visible{outline:2px solid var(--qa-gold,#E7C873);outline-offset:3px}
.gl-lb__close{position:absolute;top:clamp(14px,2vw,26px);right:clamp(14px,2vw,26px);width:48px;height:48px}

@media (max-width:1023px){
	.gl__grid{column-count:2}
}
@media (max-width:767px){
	.gl__tabs{display:none}
	.gl__pick{display:block}
	.gl__tile{border-radius:14px}
	.gl-lb{grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) auto;padding:70px 14px 24px;row-gap:18px}
	.gl-lb__fig{grid-column:1 / -1;grid-row:1}
	.gl-lb__nav{grid-row:2;width:50px;height:50px}
	.gl-lb__nav[data-gl-prev]{justify-self:end}
	.gl-lb__img{max-height:calc(100vh - 250px);max-height:calc(100dvh - 250px)}
}
@media (hover:none){
	.gl__zoom{opacity:1;transform:none;width:34px;height:34px;right:10px;bottom:10px}
	.gl__zoom svg{width:15px;height:15px}
}
@media (prefers-reduced-motion:reduce){
	.gl__item,.gl__item.is-pop,.gl-lb__img,.gl__ink{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
}
/* ===================== /Gallery page ===================== */
/* ===================== Contact page ===================== */
.ct{position:relative;overflow:hidden;background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,130px) 0 clamp(70px,8.5vw,140px)}
.ct::before{content:'';position:absolute;left:-12vw;bottom:-18vw;width:46vw;height:46vw;border-radius:50%;background:radial-gradient(circle,rgba(201,162,74,.16),transparent 65%);pointer-events:none}
.ct__wrap{position:relative;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(36px,5.5vw,100px);align-items:start}
.ct__info{display:flex;flex-direction:column;gap:clamp(28px,3vw,40px)}

/* Contact cards */
.ct__cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.2vw,18px);perspective:1200px}
.ct__card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:clamp(20px,1.8vw,26px);border-radius:18px;background:#fff;border:1px solid rgba(201,162,74,.3);box-shadow:0 22px 44px -32px rgba(20,58,40,.5)}
.ct__ico{display:grid;place-items:center;width:46px;height:46px;margin-bottom:8px;border-radius:50%;background:var(--qa-g,#1E5A3C);color:#FFF8F1;box-shadow:0 10px 20px -10px rgba(20,58,40,.7)}
.ct__ico svg{width:21px;height:21px}
.ct__k{font:600 12px/1.3 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--qa-r,#A3142B)}
.ct__v{font:400 clamp(18px,.45vw + 14.5px,22px)/1.35 var(--font-display);color:var(--qa-g,#1E5A3C);text-decoration:none;word-break:break-word;transition:color .3s ease}
body.eden-romance a.ct__v{color:var(--qa-g,#1E5A3C)!important}
body.eden-romance a.ct__v:hover{color:var(--qa-r,#A3142B)!important}
.ct__v--mail{font-size:clamp(16px,.35vw + 13.5px,19px)}
.ct__v--list{display:flex;flex-direction:column;gap:4px;font-size:clamp(15px,.25vw + 13px,17px)}

/* Social + booking note */
.ct__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px 30px;padding-top:clamp(22px,2vw,30px);border-top:1px solid rgba(201,162,74,.35)}
.ct__social{display:flex;flex-direction:column;gap:12px}
.ct__icons{display:flex;gap:10px}
.ct__icons a{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid rgba(30,90,60,.28);color:var(--qa-g,#1E5A3C);transition:background .35s ease,color .35s ease,border-color .35s ease,transform .45s var(--qa-ease)}
.ct__icons a svg{width:20px;height:20px}
.ct__icons a:hover{background:var(--qa-g,#1E5A3C);border-color:var(--qa-g,#1E5A3C);color:#FFF8F1;transform:translateY(-3px) rotate(-6deg)}
.ct__book{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.ct__book p{margin:0;font:400 clamp(14px,.1vw + 13.6px,15px)/1.6 var(--font-body);color:var(--qa-ink,#4A4A4A)}

/* Form card */
.ct__form{position:relative;padding:clamp(26px,3vw,48px);border-radius:24px;background:#fff;border:1px solid rgba(201,162,74,.32);box-shadow:0 40px 80px -46px rgba(20,58,40,.55)}
.ct__form::before{content:'';position:absolute;inset:10px;border:1px dashed rgba(201,162,74,.28);border-radius:16px;pointer-events:none}
.ct__ftitle{margin:0;font:400 clamp(23px,.75vw + 19px,30px)/1.2 var(--font-display);color:var(--qa-g,#1E5A3C)}
.ct__ftext{margin:10px 0 0;font:400 clamp(14px,.1vw + 13.6px,15px)/1.7 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.ct__fbody{position:relative;margin-top:clamp(20px,2vw,28px)}
.ct__empty{min-height:420px;border-radius:16px;background:repeating-linear-gradient(135deg,rgba(201,162,74,.06) 0 14px,transparent 14px 28px)}

/* Fluent Forms in the Eden style */
.ct-page .fluentform .ff-el-group{margin-bottom:18px}
.ct-page .fluentform .ff-el-input--label label{font:600 12px/1.3 var(--font-body)!important;letter-spacing:.14em;text-transform:uppercase;color:var(--qa-g,#1E5A3C)!important}
.ct-page .fluentform .ff-el-is-required.asterisk-right label:after{color:var(--qa-r,#A3142B)!important}
.ct-page .fluentform .ff-el-form-control{height:54px!important;min-height:54px;padding:0 18px!important;border-radius:14px!important;border:1px solid rgba(30,90,60,.2)!important;background:#FBF5EF!important;font:400 16px/1.4 var(--font-body)!important;color:#143A28!important;box-shadow:none!important;transition:border-color .3s ease,box-shadow .3s ease,background .3s ease}
.ct-page .fluentform textarea.ff-el-form-control{height:auto!important;min-height:140px;padding:14px 18px!important;resize:vertical}
.ct-page .fluentform select.ff-el-form-control{-webkit-appearance:none;appearance:none;padding-right:46px!important;background:#FBF5EF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%231E5A3C' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 16px center/18px!important}
.ct-page .fluentform .ff-el-form-control::placeholder{color:rgba(74,74,74,.55)}
.ct-page .fluentform .ff-el-form-control:focus{border-color:var(--qa-g,#1E5A3C)!important;background:#fff!important;box-shadow:0 0 0 4px rgba(30,90,60,.12)!important;outline:none}
.ct-page .fluentform .ff-el-is-error .ff-el-form-control{border-color:var(--qa-r,#A3142B)!important}
.ct-page .fluentform .error,.ct-page .fluentform .text-danger{font:500 12px/1.4 var(--font-body);color:var(--qa-r,#A3142B)!important;margin-top:6px}
.ct-page .fluentform .ff-btn-submit{height:54px;padding:0 34px!important;border:0!important;border-radius:999px!important;background:var(--qa-g,#1E5A3C)!important;color:#FFF8F1!important;font:600 13px/1 var(--font-body)!important;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 16px 30px -16px rgba(20,58,40,.7)!important;transition:background .35s ease,transform .45s var(--qa-ease)!important}
.ct-page .fluentform .ff-btn-submit:hover{background:var(--qa-r,#A3142B)!important;transform:translateY(-2px)}
.ct-page .ff-message-success{border:1px solid rgba(30,90,60,.25)!important;border-radius:16px!important;background:#F2F7F3!important;padding:22px 24px!important;font:400 16px/1.6 var(--font-body);color:var(--qa-g,#1E5A3C)!important;box-shadow:none!important}

/* Map */
.ct__map{position:relative;max-width:1440px;margin:clamp(40px,5vw,70px) auto 0;padding:0 var(--pad,20px)}
.ct__map iframe{display:block;width:100%;height:clamp(300px,36vw,460px);border:0;border-radius:22px;box-shadow:0 30px 60px -40px rgba(20,58,40,.6)}

@media (max-width:1023px){
	.ct__wrap{grid-template-columns:1fr}
	.ct__info{display:contents}
	.ct__intro{order:1}
	.ct__form{order:2}
	.ct__cards{order:3}
	.ct__foot{order:4}
}
@media (max-width:599px){
	.ct__cards{grid-template-columns:1fr}
	.ct__card{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:16px;row-gap:4px;align-items:center;padding:18px}
	.ct__ico{grid-row:span 2;margin:0}
	.ct__foot{flex-direction:column;align-items:flex-start}
}
/* ===================== /Contact page ===================== */
/* ===================== Policies page ===================== */
.pl{background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,130px) 0 clamp(70px,8.5vw,140px)}
.pl__wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad,20px)}
.pl__intro{margin:0 0 clamp(28px,3vw,44px);font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.pl__list{list-style:none;margin:0;padding:0;border-bottom:1px solid rgba(201,162,74,.45)}
.pl__item{display:grid;grid-template-columns:clamp(48px,6vw,90px) minmax(0,1fr);gap:clamp(12px,2vw,30px);padding:clamp(28px,3vw,44px) 0;border-top:1px solid rgba(201,162,74,.45)}
.pl__n{font:400 clamp(22px,1.1vw + 14px,32px)/1.2 var(--font-display);color:transparent;-webkit-text-stroke:1px var(--qa-gold-d,#C9A24A)}
.pl__title{margin:0;font:400 clamp(23px,.75vw + 19px,30px)/1.25 var(--font-display);color:var(--qa-g,#1E5A3C);text-transform:capitalize}
.pl__text{margin:clamp(10px,1vw,14px) 0 0;font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.pl__text+.pl__text{margin-top:12px}
@media (max-width:599px){
	.pl__item{grid-template-columns:1fr;gap:6px}
}
/* ===================== /Policies page ===================== */
/* ===================== Time Slots page ===================== */
.sl{position:relative;overflow:hidden;background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,130px) 0 clamp(70px,8.5vw,140px)}
.sl::before{content:'';position:absolute;right:-14vw;top:-10vw;width:48vw;height:48vw;border-radius:50%;background:radial-gradient(circle,rgba(231,200,115,.22),transparent 62%);pointer-events:none;animation:slGlow 9s ease-in-out infinite alternate}
@keyframes slGlow{to{transform:translate3d(-4vw,3vw,0) scale(1.08)}}
.sl__wrap{position:relative;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px)}
.sl__head{text-align:center;max-width:860px;margin:0 auto}
.sl__title{text-align:center}
.sl__text{margin:clamp(14px,1.4vw,20px) auto 0;max-width:58ch;font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--font-body);color:var(--qa-ink,#4A4A4A)}

/* Slot cards */
.sl__grid{list-style:none;margin:clamp(40px,4.4vw,64px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);perspective:1400px}
.sl__card{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(22px,2vw,30px);border-radius:24px;background:#fff;border:1px solid rgba(201,162,74,.32);box-shadow:0 30px 60px -40px rgba(20,58,40,.55);color:var(--qa-g,#1E5A3C);transform-style:preserve-3d;transition:background .6s ease,color .6s ease,box-shadow .6s ease,border-color .6s ease}
.sl__card::before{content:'';position:absolute;inset:8px;border:1px solid rgba(201,162,74,.22);border-radius:18px;pointer-events:none;transition:border-color .6s ease}
.sl__top{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sl__n{font:400 clamp(26px,1.4vw + 14px,38px)/1 var(--font-display);color:transparent;-webkit-text-stroke:1px var(--qa-gold-d,#C9A24A)}
.sl__sky{width:clamp(64px,5vw,80px);height:auto;color:var(--qa-gold-d,#C9A24A);overflow:visible}
.sl__arc{opacity:.7}
.sl__body{transform-box:fill-box;transform-origin:center;animation:slFloat 4.5s ease-in-out infinite}
.sl__glow{animation:slPulse 3s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes slFloat{50%{transform:translateY(-2px)}}
@keyframes slPulse{50%{transform:scale(1.35);opacity:.05}}
.sl__label{margin:clamp(18px,1.8vw,26px) 0 0;font:600 12px/1.3 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--qa-r,#A3142B);transition:color .6s ease}
.sl__time{margin:10px 0 0;display:flex;flex-direction:column;gap:6px}
.sl__from{display:flex;align-items:baseline;gap:8px}
.sl__from b{font:400 clamp(40px,2.4vw + 16px,60px)/1 var(--font-display);letter-spacing:-.02em}
.sl__from small{font:600 clamp(13px,.3vw + 10px,15px)/1 var(--font-body);letter-spacing:.14em}
.sl__to{display:flex;align-items:center;gap:10px;font:400 clamp(16px,.35vw + 13px,19px)/1.3 var(--font-display);opacity:.85}
.sl__to i{width:26px;height:1px;background:currentColor;position:relative}
.sl__to i::after{content:'';position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
.sl__meta{margin:clamp(14px,1.4vw,18px) 0 clamp(18px,1.8vw,24px);padding-top:14px;width:100%;border-top:1px dashed rgba(201,162,74,.45);font:500 clamp(13px,.1vw + 12.6px,14px)/1.4 var(--font-body);letter-spacing:.06em;color:var(--qa-ink,#4A4A4A);transition:color .6s ease}
.sl__card .btn{margin-top:auto}
.sl__badge{position:absolute;top:-13px;left:50%;z-index:2;transform:translate(-50%,6px) scale(.9);padding:7px 14px;border-radius:999px;background:var(--qa-r,#A3142B);color:#FFF8F1;font:600 10.5px/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;box-shadow:0 10px 20px -10px rgba(163,20,43,.8);opacity:0;transition:opacity .5s ease .3s,transform .6s var(--qa-ease) .3s}
.sl__badge:empty{display:none}
/* The next slot (by Arizona time) turns deep green */
.sl__card.is-next{background:radial-gradient(130% 120% at 0 0,#24694A,var(--qa-gd,#143A28) 60%,var(--qa-gdd,#0E2A1D));border-color:rgba(231,200,115,.55);color:#FFF8F1;box-shadow:0 40px 70px -36px rgba(14,42,29,.75)}
.sl__card.is-next::before{border-color:rgba(231,200,115,.35)}
.sl__card.is-next .sl__label{color:var(--qa-gold,#E7C873)}
.sl__card.is-next .sl__meta{color:rgba(255,248,241,.78)}
.sl__card.is-next .sl__sky{color:var(--qa-gold,#E7C873)}
.sl__card.is-next .sl__badge{opacity:1;transform:translate(-50%,0) scale(1)}
body.eden-romance .sl-page .sl__card.is-next .btn{--bc:#E7C873!important;--ink:#143A28!important;color:#E7C873!important;background-image:linear-gradient(rgba(231,200,115,.12),rgba(231,200,115,.12))!important;border-color:#E7C873!important}
body.eden-romance .sl-page .sl__card.is-next .btn *{color:#E7C873!important}
body.eden-romance .sl-page .sl__card.is-next .btn:hover{--bc:#A3142B!important;--ink:#FFFFFF!important;border-color:#A3142B!important}
body.eden-romance .sl-page .sl__card.is-next .btn:hover,body.eden-romance .sl-page .sl__card.is-next .btn:hover *{color:#FFFFFF!important}

/* Day timeline */
.sl__day{margin:clamp(44px,5vw,76px) auto 0;max-width:1180px;padding:clamp(44px,3.6vw,54px) clamp(18px,2.4vw,34px) clamp(24px,2.4vw,32px);border-radius:24px;background:#fff;border:1px solid rgba(201,162,74,.3);box-shadow:0 30px 60px -44px rgba(20,58,40,.5)}
.sl__track{position:relative;height:clamp(56px,4.4vw,66px);border-radius:16px;background:repeating-linear-gradient(90deg,rgba(201,162,74,.1) 0 1px,transparent 1px 24px),#FBF5EF;overflow:hidden}
.sl__block{position:absolute;top:8px;bottom:8px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#24694A,var(--qa-g,#1E5A3C));color:#FFF8F1;box-shadow:0 10px 22px -12px rgba(20,58,40,.8);transform-origin:0 50%;transform:scaleX(0);transition:transform 1.1s var(--qa-ease);transition-delay:calc(.2s + var(--k,0) * .22s)}
.sl__block b{font:600 clamp(10px,.55vw + 4px,13px)/1.2 var(--font-body);letter-spacing:.08em;white-space:nowrap;opacity:0;transition:opacity .6s ease;transition-delay:calc(.8s + var(--k,0) * .22s)}
.sl__gap{position:absolute;top:0;bottom:0;display:grid;place-items:center}
.sl__gap::before{content:'';position:absolute;left:50%;top:10px;bottom:10px;border-left:1px dashed var(--qa-gold-d,#C9A24A)}
.sl__gap em{position:absolute;top:-26px;left:50%;transform:translateX(-50%);font:600 10px/1 var(--font-body);font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--qa-gold-d,#C9A24A);white-space:nowrap}
.sl__day.is-in .sl__block{transform:scaleX(1)}
.sl__day.is-in .sl__block b{opacity:1}
.sl__track{overflow:visible}
.sl__now{position:absolute;top:-8px;bottom:-8px;width:2px;margin-left:-1px;background:var(--qa-r,#A3142B);border-radius:2px;z-index:2}
.sl__now i{position:absolute;top:-6px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--qa-r,#A3142B);box-shadow:0 0 0 0 rgba(163,20,43,.5);animation:slPing 1.8s ease-out infinite}
@keyframes slPing{to{box-shadow:0 0 0 12px rgba(163,20,43,0)}}
.sl__ticks{position:relative;height:18px;margin-top:16px}
.sl__ticks span{position:absolute;top:0;transform:translateX(-50%);font:500 11px/1 var(--font-body);letter-spacing:.06em;color:rgba(74,74,74,.75);white-space:nowrap}
.sl__ticks span:first-child{transform:none}
.sl__ticks span.is-end{transform:translateX(-100%)}

/* Highlighted note */
.sl__note{position:relative;overflow:hidden;margin:clamp(44px,5vw,76px) 0 0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,2.4vw,34px);align-items:center;padding:clamp(26px,3vw,44px) clamp(24px,3.6vw,56px);border-radius:24px;background:linear-gradient(135deg,#FFF8EA,#FFFFFF 60%);border:1px solid rgba(201,162,74,.45);box-shadow:0 34px 70px -46px rgba(20,58,40,.55)}
.sl__note::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--qa-gold,#E7C873),var(--qa-r,#A3142B))}
.sl__note-ico{display:grid;place-items:center;width:clamp(56px,4.4vw,68px);aspect-ratio:1;border-radius:50%;background:var(--qa-g,#1E5A3C);color:var(--qa-gold,#E7C873);box-shadow:0 14px 26px -14px rgba(20,58,40,.8)}
.sl__note-ico svg{width:50%;height:50%}
.sl__note-text{margin:0;font:400 clamp(19px,.6vw + 15px,24px)/1.6 var(--font-display);color:var(--qa-g,#1E5A3C)}
.sl__note-text strong{font-weight:500;color:var(--qa-r,#A3142B);background:linear-gradient(transparent 60%,rgba(231,200,115,.55) 60%) no-repeat 0 0/0% 100%;transition:background-size 1.1s var(--qa-ease) .5s}
.sl__note.is-in .sl__note-text strong{background-size:100% 100%}
@media (max-width:599px){.sl__note{grid-template-columns:1fr}}

/* Live availability band */
.slb{position:relative;overflow:hidden;background:radial-gradient(120% 120% at 100% 0,#24694A,var(--qa-gd,#143A28) 55%,var(--qa-gdd,#0E2A1D));color:#FFF8F1;padding:clamp(70px,8vw,130px) 0}
.slb::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 12% 110%,rgba(231,200,115,.18),transparent 45%);pointer-events:none}
.slb__wrap{position:relative;max-width:1100px;margin:0 auto;padding:0 var(--pad,20px);display:flex;flex-direction:column;align-items:center;gap:clamp(30px,3.4vw,48px)}
.slb__copy{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:760px}
.slb__kicker{color:var(--qa-gold,#E7C873)}
.slb__title{margin:0;font:400 clamp(36px,2.2vw + 24px,56px)/1.15 var(--font-display);letter-spacing:-.01em;color:#FFF8F1;text-transform:capitalize}
.slb__title em{font-style:normal;color:var(--qa-gold,#E7C873)}
.slb__text{margin:clamp(14px,1.4vw,20px) 0 clamp(24px,2.4vw,32px);font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--font-body);color:rgba(255,248,241,.86)}
.slb__embed{width:100%;padding:clamp(10px,1.4vw,20px);border-radius:22px;background:#fff;color:#143A28;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.slb__embed iframe{display:block;width:100%;min-height:640px;border:0;border-radius:14px}

@media (max-width:1100px){
	.sl__grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(26px,3vw,34px)}
}
@media (max-width:767px){
	.sl__block b{display:none}
	.sl__gap em{display:none}
	.sl__ticks{margin-top:14px}
	.sl__ticks span:not(:first-child):not(.is-end){display:none}
}
@media (max-width:599px){
	.sl__grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
	.sl::before,.sl__body,.sl__glow,.sl__now i{animation:none}
	.sl__block,.sl__block b{transition:none;transform:none;opacity:1}
}
/* Sky that follows the hovered slot (whole section) */
.sl__skies{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.sl__wrap{z-index:1}
.sl__skies>i{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease}
.sl__skies .k-morning{background:radial-gradient(55% 45% at 16% 6%,rgba(255,236,170,.9),transparent 62%),linear-gradient(180deg,#CFE6F2 0%,#E5F0EE 45%,#FBF5EF 100%)}
.sl__skies .k-afternoon{background:radial-gradient(50% 42% at 50% -2%,rgba(255,243,200,.95),transparent 62%),linear-gradient(180deg,#B9DAF0 0%,#EFEBD8 58%,#FBF5EF 100%)}
.sl__skies .k-golden{background:radial-gradient(55% 50% at 84% 12%,rgba(255,186,104,.95),transparent 62%),linear-gradient(180deg,#F0A266 0%,#F6C596 36%,#FBE4CE 72%,#FBF5EF 100%)}
.sl__skies .k-night{background:radial-gradient(38% 34% at 86% 8%,rgba(231,200,115,.22),transparent 62%),linear-gradient(180deg,#0A1830 0%,#152443 42%,#1F2E4C 74%,#182437 100%)}
.sl[data-sky="morning"] .k-morning,.sl[data-sky="afternoon"] .k-afternoon,.sl[data-sky="golden"] .k-golden,.sl[data-sky="night"] .k-night{opacity:1}
.sl[data-sky]::before{opacity:0}
.sl::before{transition:opacity .8s ease}
.sl__orb{position:absolute;left:12%;top:6%;width:clamp(70px,7vw,120px);aspect-ratio:1;border-radius:50%;opacity:0;transform:translate(-50%,0) scale(.6);background:radial-gradient(circle at 40% 38%,#FFF6D6,#FFD978 55%,#F4B64A);box-shadow:0 0 60px 20px rgba(255,214,120,.45),0 0 160px 60px rgba(255,214,120,.22);transition:left 1.4s var(--qa-ease),top 1.4s var(--qa-ease),opacity .9s ease,transform 1.2s var(--qa-ease),background .9s ease,box-shadow .9s ease}
.sl[data-sky] .sl__orb{opacity:1;transform:translate(-50%,0) scale(1)}
.sl[data-sky="afternoon"] .sl__orb{left:50%;top:2%}
.sl[data-sky="golden"] .sl__orb{left:84%;top:10%;background:radial-gradient(circle at 40% 38%,#FFE8C2,#FFAF5E 55%,#E8783A);box-shadow:0 0 70px 26px rgba(255,150,70,.5),0 0 180px 70px rgba(255,130,60,.25)}
.sl[data-sky="night"] .sl__orb{left:86%;top:5%;transform:translate(-50%,0) scale(.72);background:radial-gradient(circle at 35% 35%,#FFFDF4,#F1E7C8 60%,#D9C99B);box-shadow:inset -18px -8px 0 0 rgba(10,24,48,.92),0 0 50px 10px rgba(241,231,200,.25)}
.sl__stars{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease}
.sl[data-sky="night"] .sl__stars{opacity:1}
.sl__stars b{position:absolute;width:2px;height:2px;border-radius:50%;background:#FFF8E6;box-shadow:0 0 6px rgba(255,248,230,.9);animation:slTwinkle var(--t,3s) ease-in-out infinite;animation-delay:var(--dl,0s)}
.sl__stars b.is-big{width:3px;height:3px}
@keyframes slTwinkle{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
.sl__shoot{position:absolute;top:12%;left:20%;width:140px;height:1.5px;background:linear-gradient(90deg,rgba(255,248,230,0),#FFF8E6);opacity:0;transform:rotate(-18deg)}
.sl[data-sky="night"] .sl__shoot{animation:slShoot 5.5s ease-in 1s infinite}
@keyframes slShoot{0%{opacity:0;transform:translate(0,0) rotate(-18deg)}4%{opacity:1}12%{opacity:0;transform:translate(320px,-104px) rotate(-18deg)}100%{opacity:0}}
.sl .sl__title,.sl .sl__text,.sl .sl__head .qa__kicker{transition:color .8s ease}
.sl[data-sky="night"] .sl__title{color:#FFF8F1}
.sl[data-sky="night"] .sl__title em{color:var(--qa-gold,#E7C873)}
.sl[data-sky="night"] .sl__text{color:rgba(255,248,241,.82)}
.sl[data-sky="night"] .sl__head .qa__kicker{color:var(--qa-gold,#E7C873)}
.sl[data-sky="night"] .sl__card:not(.is-next){box-shadow:0 30px 70px -36px rgba(0,0,0,.7)}
.sl__card.is-sky{transform:perspective(1000px) translate3d(0,-8px,0) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
@media (prefers-reduced-motion:reduce){.sl__stars b,.sl__shoot{animation:none!important}.sl__orb,.sl__skies>i{transition:none}}
/* Time Slots: five cards, and a dusk sky for the evening slot so the night slot gets the full starry sky */
@media (min-width:1280px){
	.sl__grid{grid-template-columns:repeat(5,minmax(0,1fr))}
	.sl__from b{font-size:clamp(36px,1.6vw + 18px,50px)}
}
@media (min-width:1101px) and (max-width:1279px){.sl__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sl__skies .k-dusk{background:radial-gradient(60% 40% at 50% 100%,rgba(244,150,120,.55),transparent 70%),radial-gradient(40% 30% at 18% 22%,rgba(241,231,200,.18),transparent 70%),linear-gradient(180deg,#2B2350 0%,#4A3366 34%,#8A4E74 64%,#D98E8A 86%,#F3C7A8 100%)}
.sl[data-sky="dusk"] .k-dusk{opacity:1}
.sl[data-sky="dusk"] .sl__orb{left:16%;top:18%;transform:translate(-50%,0) scale(.62);background:radial-gradient(circle at 35% 35%,#FFFDF4,#F6E9CC 60%,#E2CFA0);box-shadow:inset -14px -6px 0 0 rgba(43,35,80,.85),0 0 40px 8px rgba(246,233,204,.22)}
.sl[data-sky="dusk"] .sl__stars{opacity:.38}
.sl[data-sky="night"] .sl__orb{left:58%;top:4%}
.sl[data-sky="dusk"] .sl__title,.sl[data-sky="dusk"] .sl__text{color:#FFF8F1}
.sl[data-sky="dusk"] .sl__title em,.sl[data-sky="dusk"] .sl__head .qa__kicker{color:var(--qa-gold,#E7C873)}
.sl[data-sky="dusk"] .sl__text{color:rgba(255,248,241,.85)}
.sl[data-sky="dusk"] .sl__card:not(.is-next){box-shadow:0 30px 70px -36px rgba(30,10,40,.6)}

/* Time Slots: Book This Time stays on one line (less side padding on the card and the button) */
.sl__card{padding-left:clamp(18px,1.4vw,24px);padding-right:clamp(18px,1.4vw,24px)}
.sl__card .btn{align-self:stretch;justify-content:center;gap:8px!important;padding-left:14px!important;padding-right:14px!important;letter-spacing:.1em!important}
.sl__card .btn,.sl__card .btn *{white-space:nowrap}

/* ===================== /Time Slots page ===================== */
/* ===================== Services page ===================== */
.sv-wrap{position:relative;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px)}

/* Pricing headline */
.sv-intro{background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,120px) 0 clamp(40px,5vw,70px);text-align:center}
.sv-intro__title{max-width:none;margin:0 auto;text-align:center}
@media (min-width:768px){.sv-intro__title{white-space:nowrap}}
.sv-intro__text{margin:clamp(14px,1.4vw,20px) auto 0;max-width:58ch;font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--font-body);color:var(--qa-ink,#4A4A4A)}

/* One experience */
.sv-item{position:relative;overflow:hidden;background:var(--qa-cream,#FBF5EF);padding:clamp(56px,6.4vw,100px) 0 clamp(56px,6.4vw,100px);scroll-margin-top:80px}
.sv-item.is-alt{background:#fff}
.sv-item__head{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(18px,2vw,26px);align-items:start}
.sv-item__n{font:400 clamp(40px,1.6vw + 26px,64px)/1 var(--font-display);color:transparent;-webkit-text-stroke:1.2px var(--qa-gold-d,#C9A24A)}
.sv-item__title{margin:0;font:400 clamp(28px,1.1vw + 22px,40px)/1.15 var(--font-display);letter-spacing:-.01em;color:var(--qa-g,#1E5A3C);text-transform:capitalize}
.sv-item__text{margin:clamp(10px,1vw,14px) 0 0;max-width:60ch;font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.sv-item__aside{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:clamp(18px,2.4vw,36px)}
.sv-item__price{margin:0;display:flex;flex-direction:row;align-items:baseline;gap:12px;line-height:1}
.sv-item__price small{font:600 12px/1.2 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--qa-r,#A3142B)}
.sv-item__aside .btn,.sv-item__aside .btn *{white-space:nowrap}
.sv-item__price b{margin-top:0;font:400 clamp(28px,1.1vw + 22px,40px)/1 var(--font-display);color:var(--qa-g,#1E5A3C)}

/* 3D gallery carousel: the middle picture in focus, the side ones turned and soft */
.cf{position:relative;z-index:0;isolation:isolate;margin-top:clamp(28px,3vw,44px);--cw:clamp(250px,30vw,440px);--ch:calc(var(--cw) * .7);--ct:calc(var(--cw) * .1)}
.cf__stage{position:relative;height:calc(var(--ch) + var(--ct));overflow:hidden;border-bottom:1px solid rgba(30,90,60,.55)}
.cf__item{position:absolute;left:50%;top:var(--ct);width:var(--cw);height:var(--ch);margin:0;border:1px solid rgba(30,90,60,.45);border-radius:22px;overflow:hidden;background:#EAE0D5;transform:translateX(-50%);transform-origin:50% 100%;transition:transform .9s var(--qa-ease),filter .9s ease,opacity .9s ease;cursor:pointer;will-change:transform;-webkit-mask-image:linear-gradient(180deg,#000 0,#000 72%,rgba(0,0,0,.25) 92%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 72%,rgba(0,0,0,.25) 92%,transparent 100%)}
.cf__item::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.45);opacity:1;transition:opacity .9s ease;pointer-events:none}
.cf__item.is-on{cursor:default}
.cf__item.is-on::after{opacity:0}
.cf__img{display:block;width:100%;height:100%;object-fit:cover}
.cf__nav{position:absolute;top:calc(var(--ct) + var(--ch) * .5);z-index:20;display:grid;place-items:center;width:clamp(36px,2.6vw,42px);height:clamp(36px,2.6vw,42px);margin-top:calc(clamp(36px,2.6vw,42px) / -2);padding:0;border-radius:50%;border:1.5px solid var(--qa-g,#1E5A3C);background:rgba(255,255,255,.92);color:var(--qa-g,#1E5A3C);box-shadow:0 2px 0 rgba(30,90,60,.35);cursor:pointer;transition:background .35s ease,color .35s ease,transform .45s var(--qa-ease)}
.cf__nav svg{width:46%;height:46%}
.cf__nav:hover{background:var(--qa-g,#1E5A3C);color:#FFF8F1;transform:scale(1.06)}
.cf__nav:focus-visible{outline:2px solid var(--qa-gold,#E7C873);outline-offset:3px}
.cf__nav--prev{left:var(--pad,20px)}
.cf__nav--next{right:var(--pad,20px)}
.cf__dots{display:none}
.sv-item:has(.cf){padding-bottom:0}
.cf__dots i{width:8px;height:8px;border-radius:999px;background:rgba(30,90,60,.22);transition:width .5s var(--qa-ease),background .4s ease}
.cf__dots i.is-on{width:26px;background:var(--qa-g,#1E5A3C)}

/* Add-on items */
.sv-add{position:relative;background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,120px) 0 clamp(40px,5vw,70px)}
.sv-add__head{text-align:center}
.sv-add__title{text-align:center}
.sv-add__grid{list-style:none;margin:clamp(32px,3.6vw,52px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.2vw,16px);perspective:1200px}
.sv-add__item{height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(16px,1.4vw,20px) clamp(18px,1.8vw,24px);border:1px solid rgba(201,162,74,.38);border-radius:16px;background:#fff;color:var(--qa-g,#1E5A3C);box-shadow:0 18px 36px -30px rgba(20,58,40,.5)}
.sv-add__name{font:500 clamp(15px,.15vw + 14px,16px)/1.4 var(--font-body)}
.sv-add__price{font:400 clamp(20px,.4vw + 16px,24px)/1 var(--font-display);color:var(--qa-r,#A3142B);white-space:nowrap}


@media (max-width:1023px){
	.sv-add__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
	.sv-item__head{grid-template-columns:1fr;gap:10px}
	.sv-item__n{font-size:54px}
	.sv-item__aside{flex-direction:column;align-items:flex-start}
	.sv-item__aside .btn,.sv-item__aside .btn *{white-space:normal;letter-spacing:.12em}
	.cf{--cw:72vw}
	.cf__nav{width:34px;height:34px;margin-top:-17px}
	.cf__nav--prev{left:6px}
	.cf__nav--next{right:6px}
	.sv-add__grid{grid-template-columns:1fr;gap:10px}
}
@media (prefers-reduced-motion:reduce){
	.cf__item{transition:none}
}
/* Experience head: centred, with a gold divider and the price in a pill */
.sv-item__head{justify-items:center;text-align:center}
.sv-item__copy{display:flex;flex-direction:column;align-items:center}
.sv-item__title{text-align:center}
.sv-item__title::after{content:'';display:block;width:120px;height:9px;margin:clamp(12px,1.2vw,16px) auto 0;background:linear-gradient(90deg,transparent,#C9A24A) left center / 52px 1px no-repeat,linear-gradient(270deg,transparent,#C9A24A) right center / 52px 1px no-repeat,linear-gradient(45deg,transparent 40%,#C9A24A 40%,#C9A24A 60%,transparent 60%) center / 9px 9px no-repeat,linear-gradient(-45deg,transparent 40%,#C9A24A 40%,#C9A24A 60%,transparent 60%) center / 9px 9px no-repeat}
.sv-item__text{margin-left:auto;margin-right:auto;max-width:56ch;text-align:center}
.sv-item__aside{justify-content:center;gap:clamp(14px,1.6vw,22px)}
.sv-item__price{align-items:center;gap:10px;padding:10px 22px;border:1px solid rgba(201,162,74,.55);border-radius:999px;background:rgba(255,255,255,.7)}
.sv-item.is-alt .sv-item__price{background:var(--qa-cream,#FBF5EF)}
.sv-item__price b{font-size:clamp(24px,.8vw + 19px,32px)}
@media (max-width:767px){
	.sv-item__aside{align-items:center}
}
.sv-intro__cta{display:flex;justify-content:center;margin-top:clamp(22px,2.4vw,32px)}

.sv-page .sv-intro__title{font-size:clamp(24px,1vw + 19px,34px);line-height:1.3}

.sv-page .qah__sub{margin:clamp(14px,1.4vw,22px) 0 0;max-width:40ch;font:400 clamp(20px,.8vw + 16px,28px)/1.35 var(--font-display);color:#FFF8F1;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.sv-page .qah__sub em{font-style:normal;color:#E7C873}
.sv-page .sv-item:first-of-type{padding-top:clamp(64px,7vw,110px)}

/* ===================== /Services page ===================== */
/* ===================== Header drop-down ===================== */
.top__dd{position:relative;display:inline-flex;align-items:center}
.top__dd>a{display:inline-flex;align-items:center;gap:6px}
.top__dd>a svg{width:11px;height:11px;flex:none;transition:transform .35s ease}
.top__dd:hover>a svg,.top__dd:focus-within>a svg{transform:rotate(180deg)}
.top__ddmenu{position:absolute;top:100%;left:50%;z-index:60;display:flex;flex-direction:column;gap:2px;min-width:210px;margin-top:16px;padding:10px;border-radius:16px;border:1px solid rgba(231,200,115,.32);background:rgba(14,42,29,.96);box-shadow:0 30px 60px -30px rgba(0,0,0,.6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:opacity .3s ease,transform .35s cubic-bezier(.2,.75,.2,1),visibility .3s}
.top__ddmenu::before{content:'';position:absolute;left:0;right:0;top:-18px;height:18px}
.top__ddmenu::after{content:'';position:absolute;left:50%;top:-6px;width:10px;height:10px;margin-left:-5px;transform:rotate(45deg);background:rgba(14,42,29,.96);border-left:1px solid rgba(231,200,115,.32);border-top:1px solid rgba(231,200,115,.32)}
.top__dd:hover .top__ddmenu,.top__dd:focus-within .top__ddmenu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.top__ddmenu a{display:block;padding:11px 16px;border-radius:10px;color:#FFF8F1!important;white-space:nowrap;text-decoration:none;transition:background .25s ease,color .25s ease}
.top__ddmenu a::after,.top__ddmenu a::before{display:none!important}
.top__ddmenu a:hover,.top__ddmenu a:focus-visible{background:rgba(231,200,115,.14);color:#E7C873!important}
.v4menu__sub{padding-left:26px!important;font-size:.72em!important;opacity:.85}
.v4menu__sub::before{content:'\2014\00a0'}
.ab section[id]{scroll-margin-top:90px}
/* ===================== /Header drop-down ===================== */

/* ===================== About Us page ===================== */
.ab{--ab-green:var(--gr-green,#1E5A3C);--ab-green-d:#143A28;--ab-green-dd:#0E2A1D;--ab-red:var(--gr-red,#A3142B);--ab-gold:#C9A24A;--ab-gold-l:#E7C873;display:block}
.ab [data-rise]{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0) * 120ms)}
.ab [data-rise].is-in{opacity:1;transform:none}

/* Header sits on the same green, so the bar and the banner read as one piece */

/* ---------- Top banner: heading on dark green, video across the full width ---------- */
.abv{position:relative;background:var(--ab-green-d);color:#FFF8F1}
.abv__top{position:relative;background:radial-gradient(120% 90% at 85% 0%,rgba(30,90,60,.55),transparent 60%),linear-gradient(180deg,var(--ab-green-dd) 0%,var(--ab-green-d) 55%,#17432F 100%);padding:calc(var(--barh,78px) + clamp(70px,9vw,120px)) 0 clamp(48px,5vw,72px)}
.abv__wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad,20px);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(30px,5vw,90px);align-items:end}
.abv__kicker{font-family:var(--font-body);font-size:var(--ty-k,13px);font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ab-gold-l);margin:0 0 22px;display:flex;align-items:center;gap:14px}
.abv__kicker::before{content:'';width:42px;height:1px;background:rgba(231,200,115,.75)}
.abv__title{font-family:var(--font-display);font-weight:400;font-size:calc(var(--ty-h2,56px) + 16px);line-height:1.1;letter-spacing:-.01em;margin:0;color:#FFF8F1;text-transform:capitalize}
.abv__title .a1,.abv__title .a2{font-style:normal;color:var(--ab-gold-l)}
.abv__side{display:flex;flex-direction:column;gap:26px;padding-bottom:10px}
.abv__text{font-family:var(--font-body);font-size:var(--ty-p,18px);line-height:1.75;color:rgba(255,248,241,.86);margin:0}
.abv__crumb{font-family:var(--font-body);font-size:var(--ty-k,13px);letter-spacing:.2em;text-transform:uppercase;color:rgba(255,248,241,.72);display:flex;gap:10px;align-items:center}
.abv__crumb a{color:inherit;text-decoration:none;transition:color .3s ease}
.abv__crumb a:hover{color:var(--ab-gold-l)}
.abv__crumb span{color:var(--ab-gold-l)}
.abv__media{position:relative;width:100%;height:clamp(420px,var(--abv-h,78vh),900px);overflow:hidden;background:#17432F}
.abv__media::before{content:'';position:absolute;left:0;right:0;top:0;height:110px;z-index:1;background:linear-gradient(180deg,#17432F,rgba(23,67,47,0));pointer-events:none}
.abv__vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}

/* ---------- Moving words ---------- */
.abm{overflow:hidden;background:#F6ECE6;border-top:1px solid rgba(201,162,74,.35);border-bottom:1px solid rgba(201,162,74,.35);padding:20px 0}
.abm__track{display:flex;width:max-content;animation:abRoll 42s linear infinite}
.abm:hover .abm__track{animation-play-state:paused}
.abm__set{display:flex;align-items:center;gap:30px;padding-right:30px}
.abm__w{font-family:var(--font-display);font-size:calc(var(--ty-h3,30px) - 6px);color:var(--ab-green);white-space:nowrap}
.ab-star{width:18px;height:18px;color:var(--ab-red);flex:none}
@keyframes abRoll{to{transform:translateX(-50%)}}

/* ---------- Tablet ---------- */
@media (max-width:1100px){
	.abv__wrap{grid-template-columns:1fr;align-items:start;gap:26px}
	.abv__side{max-width:640px;padding-bottom:0}
}
/* ---------- Phone ---------- */
@media (max-width:767px){
	.abv__top{padding:calc(var(--barh,62px) + 70px) 0 40px}
	.abv__title{font-size:calc(var(--ty-h2m,36px) + 4px);line-height:1.14}
	.abv__kicker{margin-bottom:16px}
	.abv__text{font-size:var(--ty-pm,16px)}
	.abv__media{height:clamp(380px,64vh,560px)}
	.abv__media::before{height:70px}
	.abm__w{font-size:20px}
}
@media (prefers-reduced-motion:reduce){.ab [data-rise]{opacity:1;transform:none;transition:none}.abm__track{animation:none}}

/* ---------- Story sections: shared ---------- */
.ab{--ab-cream:#FBF5EF;--ab-ink:#4A4A4A;--ab-ease:cubic-bezier(.2,.75,.2,1);--ab-disp:var(--font-display,'Playfair Display',serif);--ab-body:var(--font-body,'Montserrat',sans-serif);--ab-script:'Great Vibes',cursive}
.ab-wrap{position:relative;z-index:1;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px)}
.ab-kicker{display:flex;align-items:center;gap:12px;margin:0 0 clamp(14px,1.4vw,20px);font:600 13px/1.4 var(--ab-body);letter-spacing:.24em;text-transform:uppercase;color:var(--ab-red)}
.ab-kicker span{font-size:16px;letter-spacing:0;color:var(--ab-gold)}
.ab-kicker--light{color:var(--ab-gold-l)}
.ab-kicker--light::before{content:'';width:38px;height:1px;background:currentColor;opacity:.75}
.ab-title{margin:0;font:400 clamp(36px,2.2vw + 24px,56px)/1.15 var(--ab-disp);letter-spacing:-.01em;color:var(--ab-green);text-transform:capitalize}
.ab-title em{font-style:normal;color:var(--ab-red)}
.ab-title--light{color:#FFF8F1}
.ab-title--light em{color:var(--ab-gold-l)}

/* ---------- Founder's story ---------- */
.abf{position:relative;overflow:hidden;overflow:clip;background:var(--ab-cream);padding:clamp(80px,9vw,140px) 0 clamp(80px,9vw,130px)}
.abf__ghost,.aby__ghost{position:absolute;z-index:0;font:400 clamp(180px,22vw,420px)/1 var(--ab-script);color:rgba(201,162,74,.09);pointer-events:none;user-select:none;white-space:nowrap}
.abf__ghost{top:clamp(10px,2vw,40px);right:-2vw}
.abf__head{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,5vw,90px);align-items:end}
.abf__sub{margin:clamp(10px,1vw,16px) 0 0;font:400 clamp(30px,1.6vw + 20px,48px)/1.2 var(--ab-script);color:var(--ab-red)}
.abf__verse{margin:0;padding:6px 0 6px clamp(20px,2vw,30px);border-left:1px solid var(--ab-gold)}
.abf__verse blockquote{margin:0;font:italic 400 clamp(20px,.6vw + 17px,26px)/1.45 var(--ab-disp);color:var(--ab-green)}
.abf__verse figcaption{margin-top:12px;font:600 13px/1.4 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-gold)}
.abf__verse figcaption::before{content:'\2014\00a0'}
.abf__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,110px);align-items:start;margin-top:clamp(48px,6vw,96px)}
.abf__aside{position:sticky;top:calc(var(--barh,78px) + 40px);padding:18px 18px 0 0}
.abf__aside::before{content:'';position:absolute;inset:0 0 -18px 18px;border:1px solid rgba(201,162,74,.6);border-radius:999px 999px 30px 30px;pointer-events:none}
.abf__arch{position:relative;margin:0;aspect-ratio:4 / 5;border-radius:999px 999px 28px 28px;overflow:hidden;background:#EAE0D5;box-shadow:0 50px 90px -55px rgba(20,58,40,.7)}
.abf__arch::after{content:'';position:absolute;inset:12px;border:1px solid rgba(231,200,115,.75);border-radius:999px 999px 20px 20px;pointer-events:none}
.abf__img{display:block;width:100%;height:118%;object-fit:cover;transform:translate3d(0,var(--py,-6%),0) scale(1.12);transition:transform 1.8s var(--ab-ease)}
.abf__arch.is-in .abf__img{transform:translate3d(0,var(--py,-6%),0) scale(1)}
.abf__seal{position:absolute;right:-4px;bottom:28px;display:grid;place-items:center;width:clamp(78px,6vw,96px);aspect-ratio:1;border-radius:50%;background:var(--ab-green);color:var(--ab-gold-l);box-shadow:0 20px 40px -20px rgba(20,58,40,.8)}
.abf__seal::before{content:'';position:absolute;inset:-8px;border:1px dashed rgba(201,162,74,.8);border-radius:50%;animation:abSpin 24s linear infinite}
.abf__seal svg{width:42%;height:42%}
@keyframes abSpin{to{transform:rotate(360deg)}}
.abf__p{margin:0 0 clamp(16px,1.4vw,22px);font:400 clamp(16px,.2vw + 15px,18px)/1.9 var(--ab-body);color:var(--ab-ink)}
.abf__p--first::first-letter{float:left;margin:.08em .14em 0 0;font:400 4.2em/.8 var(--ab-disp);color:var(--ab-red)}
.abf__quote{position:relative;overflow:hidden;margin:clamp(30px,3.4vw,50px) 0;padding:clamp(30px,3.6vw,56px) clamp(26px,3.6vw,56px);border-radius:26px;background:radial-gradient(90% 120% at 100% 0%,rgba(231,200,115,.18),transparent 55%),linear-gradient(140deg,var(--ab-green) 0%,var(--ab-green-d) 60%,var(--ab-green-dd) 100%);color:#FFF8F1;box-shadow:0 40px 80px -50px rgba(14,42,29,.9)}
.abf__quote::after{content:'';position:absolute;inset:10px;border:1px solid rgba(231,200,115,.28);border-radius:18px;pointer-events:none}
.abf__qm{position:absolute;top:-.12em;left:.12em;font:400 clamp(150px,12vw,220px)/1 var(--ab-disp);color:rgba(231,200,115,.22);pointer-events:none}
.abf__quote blockquote{position:relative;margin:0;font:400 clamp(22px,.9vw + 17px,32px)/1.4 var(--ab-disp)}
.abf__quote figcaption{position:relative;margin-top:clamp(14px,1.4vw,20px);font:600 13px/1.4 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-gold-l)}
.abf__quote figcaption::before{content:'\2014\00a0'}
.abf__hl{position:relative;margin:clamp(28px,3vw,44px) 0 0;padding:clamp(22px,2.2vw,30px) 0 clamp(22px,2.2vw,30px) clamp(22px,2.2vw,32px);font:italic 400 clamp(23px,.75vw + 19px,30px)/1.45 var(--ab-disp);color:var(--ab-green)}
.abf__hl::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:3px;background:linear-gradient(180deg,var(--ab-gold-l),var(--ab-red))}
.abf__sign{margin-top:clamp(34px,3.6vw,52px)}
.abf__off{margin:0;font:italic 400 clamp(16px,.2vw + 15px,18px)/1.6 var(--ab-disp);color:var(--ab-ink)}
.abf__name{margin:6px 0 2px;font:400 clamp(46px,2.4vw + 30px,76px)/1.05 var(--ab-script);color:var(--ab-red)}
.abf__role{margin:0;font:600 13px/1.5 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-green)}
.abf__tag{display:inline-flex;align-items:center;gap:12px;margin:clamp(14px,1.4vw,18px) 0 0;font:italic 400 clamp(16px,.2vw + 15px,18px)/1.5 var(--ab-disp);color:var(--ab-gold)}
.abf__tag::before{content:'';width:38px;height:1px;background:currentColor}

/* Milestones line */
.abf__line{position:relative;list-style:none;margin:clamp(64px,7vw,110px) 0 0;padding:34px 0 0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:clamp(18px,2vw,32px)}
.abf__line::before{content:'';position:absolute;left:0;right:0;top:6px;height:1px;background:linear-gradient(90deg,var(--ab-gold),var(--ab-red) 60%,rgba(163,20,43,.15));transform:scaleX(0);transform-origin:left;transition:transform 1.8s var(--ab-ease) .2s}
.abf__line.is-in::before{transform:scaleX(1)}
.abf__stop{position:relative;opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .8s var(--ab-ease);transition-delay:calc(.45s + var(--i,0) * .28s)}
.abf__line.is-in .abf__stop{opacity:1;transform:none}
.abf__dot{position:absolute;left:0;top:-34px;width:13px;height:13px;border-radius:50%;background:var(--ab-cream);border:2px solid var(--ab-gold);box-shadow:0 0 0 6px var(--ab-cream)}
.abf__stop:last-child .abf__dot{background:var(--ab-red);border-color:var(--ab-red)}
.abf__date{margin:0;font:400 clamp(20px,.6vw + 16px,26px)/1.25 var(--ab-disp);color:var(--ab-green)}
.abf__what{margin:8px 0 0;font:400 clamp(14px,.1vw + 13.6px,15px)/1.6 var(--ab-body);color:var(--ab-ink)}

/* ---------- Kicker with the small ring dot ---------- */
.ab-kicker--dot{gap:10px;color:var(--ab-green)}
.ab-kicker--dot::before{content:'';flex:none;width:14px;height:14px;border-radius:50%;border:1px solid rgba(163,20,43,.55);background:radial-gradient(circle,var(--ab-red) 0 3px,transparent 3.5px)}
.ab-kicker em{font-style:normal;color:var(--ab-red)}

/* ---------- What we do: copy and steps on the left, picture inside the line frame on the right ---------- */
.abd{position:relative;overflow:hidden;overflow:clip;padding:clamp(80px,9vw,130px) 0 0;background:linear-gradient(180deg,#FBF4EC 0%,#FFFFFF 100%);border-bottom:1px solid rgba(201,162,74,.55)}
.abd__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(36px,5vw,90px);align-items:end}
.abd__grid--solo{grid-template-columns:minmax(0,1fr)}
.abd__copy{padding-bottom:clamp(64px,7vw,110px)}
.abd__text{margin:clamp(14px,1.4vw,20px) 0 0;max-width:62ch;font:400 clamp(16px,.2vw + 15px,18px)/1.8 var(--ab-body);color:var(--ab-ink)}
.abd__steps{list-style:none;margin:clamp(30px,3.2vw,46px) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(18px,2vw,26px)}
.abd__step{display:flex;align-items:center;gap:14px;padding:2px clamp(14px,1.6vw,24px);border-left:1px solid rgba(201,162,74,.45)}
.abd__step:nth-child(2n+1){padding-left:0;border-left:0}
.abd__badge{flex:none;display:grid;place-items:center;width:clamp(48px,3.6vw,56px);height:clamp(48px,3.6vw,56px);border-radius:12px;border:1px solid rgba(30,90,60,.18);background:#fff;box-shadow:0 10px 20px -14px rgba(20,58,40,.55);font:400 clamp(18px,.4vw + 14px,22px)/1 var(--ab-disp);color:var(--ab-green)}
.abd__say{margin:0;font:500 clamp(14px,.1vw + 13.6px,15px)/1.55 var(--ab-body);color:#24312A}
.abd__frame{position:relative;align-self:end;height:clamp(420px,40vw,600px);margin-bottom:0;padding:14px 14px 0;border:1px solid rgba(201,162,74,.6);border-bottom:0;border-radius:44px 44px 0 0;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.6) 100%)}
.abd__pic{position:relative;height:100%;margin:0;overflow:hidden;border-radius:32px 32px 0 0;background:#EAE0D5}
.abd__img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.8s var(--ab-ease)}
.abd__frame.is-in .abd__img{transform:scale(1)}

/* ---------- Why choose Eden: carousel with the middle card raised inside the line ---------- */
.aby{position:relative;overflow:hidden;background:#FFFFFF;padding:clamp(90px,10vw,150px) 0 clamp(80px,9vw,130px)}
.aby__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:clamp(20px,4vw,80px);align-items:end}
.aby__lead{margin:0;max-width:36ch;font:400 clamp(16px,.2vw + 15px,18px)/1.75 var(--ab-body);color:var(--ab-ink)}
.aby__car{position:relative;margin-top:clamp(56px,6vw,96px);--per:3}
.aby__view{position:relative;display:grid;overflow:hidden;overflow:clip;padding-top:2px}
.aby__view::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,rgba(201,162,74,0),rgba(201,162,74,.6) 14%,rgba(201,162,74,.6) 86%,rgba(201,162,74,0));pointer-events:none}
.aby__item{grid-area:1 / 1;justify-self:center;position:relative;z-index:1;width:calc(100% / var(--per));padding:clamp(40px,4vw,58px) clamp(22px,2.4vw,38px) clamp(60px,6vw,88px);transform:translateX(calc(var(--d,0) * 100%));transition:transform .9s var(--ab-ease),opacity .6s ease;cursor:pointer}
.aby__item.is-off{opacity:0;pointer-events:none;transition:transform .9s var(--ab-ease),opacity .25s ease}
.aby__item.is-on{z-index:2;cursor:default}
.aby__item::before{content:'';position:absolute;inset:0;border-radius:28px 28px 0 0;background:linear-gradient(180deg,#fff 0%,#FBF3EC 100%);opacity:0;transition:opacity .7s ease}
.aby__item.is-on::before{opacity:1}
.aby__frame{position:absolute;inset:0 0 18px 0;border-radius:28px 28px 0 0;padding:1px 1px 0;background:linear-gradient(0deg,rgba(201,162,74,.6) 0%,rgba(201,162,74,.95) 55%,var(--ab-gold) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:0;transition:opacity .7s ease;pointer-events:none}
.aby__foot{position:absolute;bottom:0;width:18px;height:18px;border-bottom:1px solid rgba(201,162,74,.6);opacity:0;transition:opacity .7s ease;pointer-events:none}
.aby__foot--l{left:-17px;border-right:1px solid rgba(201,162,74,.6);border-bottom-right-radius:18px}
.aby__foot--r{right:-17px;border-left:1px solid rgba(201,162,74,.6);border-bottom-left-radius:18px}
.aby__item.is-on .aby__frame,.aby__item.is-on .aby__foot{opacity:1}
.aby__pic{position:absolute;left:12%;right:12%;bottom:0;height:52%;width:76%;object-fit:cover;opacity:0;-webkit-mask-image:linear-gradient(0deg,rgba(0,0,0,.32) 0%,rgba(0,0,0,.16) 45%,transparent 100%);mask-image:linear-gradient(0deg,rgba(0,0,0,.32) 0%,rgba(0,0,0,.16) 45%,transparent 100%);transition:opacity .9s ease;pointer-events:none}
.aby__item.is-on .aby__pic{opacity:1}
.aby__row{position:relative;display:flex;align-items:flex-start;gap:clamp(16px,1.6vw,24px)}
.aby__ico{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:14px;border:1px solid rgba(30,90,60,.16);background:#fff;color:var(--ab-green);box-shadow:0 12px 24px -16px rgba(20,58,40,.55);transition:color .5s ease,border-color .5s ease}
.aby__item.is-on .aby__ico{color:var(--ab-red);border-color:rgba(201,162,74,.6)}
.aby__ico svg{width:28px;height:28px}
.aby__copy{position:relative;padding-top:clamp(22px,2vw,30px)}
.aby__n{position:absolute;left:-.04em;top:-.12em;font:400 clamp(54px,3vw + 30px,78px)/1 var(--ab-disp);color:rgba(201,162,74,.2);pointer-events:none;transition:color .6s ease}
.aby__item.is-on .aby__n{color:rgba(163,20,43,.14)}
.aby__title{position:relative;margin:0;font:400 clamp(23px,.75vw + 19px,30px)/1.2 var(--ab-disp);color:var(--ab-green)}
.aby__text{position:relative;margin:clamp(10px,1vw,14px) 0 0;font:400 clamp(14px,.1vw + 13.6px,15px)/1.75 var(--ab-body);color:var(--ab-ink)}
.aby__arrow{position:absolute;z-index:3;top:clamp(-14px,-1vw,-6px);width:clamp(60px,5vw,80px);color:var(--ab-gold);pointer-events:none}
.aby__arrow svg{display:block;width:100%;height:auto}
.aby__arrow--l{left:calc(100% / 3 - clamp(70px,6vw,96px))}
.aby__arrow--r{left:calc(200% / 3 + 14px);transform:scaleY(-1) rotate(8deg);top:clamp(-22px,-1.4vw,-10px)}
.aby__dots{display:none;justify-content:center;gap:8px;margin-top:22px}
.aby__dots i{width:8px;height:8px;border-radius:999px;background:rgba(30,90,60,.22);transition:width .5s var(--ab-ease),background .4s ease}
.aby__dots i.is-on{width:26px;background:var(--ab-green)}

@media (max-width:1023px){
	.abf__head,.abf__grid,.abd__grid{grid-template-columns:1fr}
	.abf__aside{position:relative;top:auto;max-width:440px}
	.abf__line{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:44px}
	.abd__copy{padding-bottom:0}
	.abd__frame{height:clamp(360px,62vw,520px)}
	.aby__top{grid-template-columns:1fr}
	.aby__car{--per:1}
	.aby__item{width:calc(100% - 40px)}
	.aby__arrow{display:none}
	.aby__dots{display:flex}
}
@media (max-width:767px){
	.abf__aside{max-width:290px}
	.abf__line{grid-template-columns:1fr;padding:0 0 0 30px;row-gap:26px}
	.abf__line::before{left:6px;right:auto;top:6px;bottom:6px;width:1px;height:auto;background:linear-gradient(180deg,var(--ab-gold),var(--ab-red));transform:scaleY(0);transform-origin:top}
	.abf__line.is-in::before{transform:scaleY(1)}
	.abf__dot{left:-30px;top:6px}
	.abd__steps{grid-template-columns:1fr;row-gap:14px}
	.abd__step,.abd__step:nth-child(2n+1){padding:0;border-left:0}
	.abd__frame{height:clamp(320px,90vw,420px);border-radius:32px 32px 0 0;padding:10px 10px 0}
	.abd__pic{border-radius:24px 24px 0 0}
}
@media (prefers-reduced-motion:reduce){
	.abf__seal::before{animation:none}
	.abf__line::before,.abf__stop,.abf__img,.abd__img,.aby__item{transition:none}
}

/* ---------- Founder's journey: dates on a line, the chosen one opens its story ---------- */
.abt{position:relative;margin-top:clamp(64px,7vw,110px)}
.abt__years{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
.abt__y{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:clamp(18px,2vw,30px) 12px 0 0;border:0;background:none;text-align:left;cursor:pointer;color:inherit;font:inherit}
.abt__ghost{position:absolute;left:-.04em;top:-.12em;font:400 clamp(54px,3vw + 30px,82px)/1 var(--ab-disp);color:rgba(201,162,74,0);transform:translateY(10px);transition:color .6s ease,transform .7s var(--ab-ease);pointer-events:none}
.abt__y.is-on .abt__ghost{color:rgba(201,162,74,.18);transform:none}
.abt__date{position:relative;font:400 clamp(17px,.5vw + 14px,22px)/1.2 var(--ab-disp);color:rgba(74,74,74,.6);transition:color .4s ease}
.abt__y:hover .abt__date{color:var(--ab-green)}
.abt__y.is-on .abt__date{color:var(--ab-green);font-weight:600}
.abt__dot{position:relative;z-index:1;width:15px;height:15px;border-radius:50%;border:1px solid rgba(201,162,74,.75);background:var(--ab-cream);transition:border-color .4s ease,box-shadow .4s ease}
.abt__dot::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--ab-red);transform:scale(0);transition:transform .45s var(--ab-ease)}
.abt__y.is-on .abt__dot{border-color:var(--ab-red);box-shadow:0 0 0 5px rgba(163,20,43,.08)}
.abt__y.is-on .abt__dot::after{transform:scale(1)}
.abt__y::after{content:'';position:absolute;left:21px;right:6px;bottom:7px;height:0;border-top:1px dashed rgba(201,162,74,.65)}
.abt__y:last-child::after{right:-40px;-webkit-mask-image:linear-gradient(90deg,#000 50%,transparent);mask-image:linear-gradient(90deg,#000 50%,transparent)}
.abt__y.is-on::after,.abt__y.is-past::after{border-top:2px solid var(--ab-red);bottom:6.5px}
.abt__y.is-past .abt__dot{border-color:var(--ab-red)}
.abt__y.is-past .abt__date{color:var(--ab-green)}
.abt__y:focus-visible{outline:2px solid var(--ab-gold-l);outline-offset:4px;border-radius:8px}
.abt__panels{position:relative;margin-top:clamp(34px,3.6vw,52px)}
.abt__panel{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(30px,4vw,70px);align-items:center;padding:clamp(26px,3vw,42px) clamp(24px,3vw,44px);border:1px solid rgba(201,162,74,.35);border-radius:24px;background:linear-gradient(135deg,#fff 0%,rgba(255,255,255,.7) 100%);box-shadow:0 30px 60px -48px rgba(20,58,40,.5)}
.abt__panel.has-pic{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.abt__panel[hidden]{display:none}
.abt__panel.is-on{animation:abtIn .7s var(--ab-ease) both}
@keyframes abtIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.abt__title{margin:0;font:400 clamp(23px,.75vw + 19px,30px)/1.25 var(--ab-disp);color:var(--ab-green)}
.abt__text{margin:clamp(10px,1vw,14px) 0 0;max-width:78ch;font:400 clamp(16px,.2vw + 15px,18px)/1.85 var(--ab-body);color:var(--ab-ink)}
.abt__pic{margin:0;border-radius:18px;overflow:hidden;border:6px solid #fff;box-shadow:0 24px 50px -30px rgba(20,58,40,.55)}
.abt__pic img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover}
@media (max-width:767px){
	.abt__years{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 calc(var(--pad,20px) * -1);padding:0 var(--pad,20px)}
	.abt__years::-webkit-scrollbar{display:none}
	.abt__y{flex:0 0 52%;scroll-snap-align:start}
	.abt__panel.has-pic{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.abt__panel.is-on{animation:none}}

/* ---------- Why choose Eden: arrows and dragging ---------- */
.aby__nav{position:absolute;top:50%;z-index:4;display:grid;place-items:center;width:clamp(38px,2.8vw,44px);height:clamp(38px,2.8vw,44px);margin-top:calc(clamp(38px,2.8vw,44px) / -2);padding:0;border-radius:50%;border:1px solid var(--ab-green);background:rgba(255,255,255,.94);color:var(--ab-green);cursor:pointer;transition:background .35s ease,color .35s ease,transform .45s var(--ab-ease)}
.aby__nav svg{width:46%;height:46%}
.aby__nav:hover{background:var(--ab-green);color:#FFF8F1;transform:scale(1.06)}
.aby__nav:focus-visible{outline:2px solid var(--ab-gold-l);outline-offset:3px}
.aby__nav--prev{left:clamp(-22px,-1.5vw,-6px)}
.aby__nav--next{right:clamp(-22px,-1.5vw,-6px)}
.aby__view{cursor:grab;touch-action:pan-y;user-select:none}
.aby__view.is-drag{cursor:grabbing}
.aby__view.is-drag .aby__item{transition:none}
.aby__item{transform:translateX(calc(var(--d,0) * 100% + var(--drag,0px)))}
.aby__view img{-webkit-user-drag:none}
@media (max-width:1023px){
	.aby__nav--prev{left:-4px}
	.aby__nav--next{right:-4px}
	.aby__nav{top:40%}
}

/* ---------- Banner line under the heading ---------- */
.ab .qah__sub{margin:clamp(14px,1.4vw,22px) 0 0;max-width:46ch;font:400 clamp(18px,.6vw + 15px,24px)/1.45 var(--ab-disp);color:#FFF8F1;text-shadow:0 2px 18px rgba(0,0,0,.35)}

/* ---------- Our journey: its own section ---------- */
.abj{position:relative;overflow:hidden;overflow:clip;background:#FFFFFF;padding:clamp(80px,9vw,130px) 0 clamp(80px,9vw,130px)}
.abj__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:clamp(20px,4vw,80px);align-items:end}
.abj__lead{margin:0;max-width:38ch;font:400 clamp(16px,.2vw + 15px,18px)/1.75 var(--ab-body);color:var(--ab-ink)}
.abj .abt{margin-top:clamp(40px,4.4vw,64px)}
.abj .abt__dot{background:#fff}
.abj .abt__panel{background:linear-gradient(135deg,#FBF4EC 0%,#fff 100%)}
@media (max-width:1023px){.abj__top{grid-template-columns:1fr}}

/* Journey pictures: a big photo with a smaller one overlapping, plus a small badge */
.abt__panel.has-pic{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.abt__pics{position:relative;padding:0 0 clamp(40px,4vw,64px) 0}
.abt__pics.has-two{padding-right:clamp(40px,5vw,80px)}
.abt__pic{margin:0;border-radius:18px;overflow:hidden;border:6px solid #fff;box-shadow:0 24px 50px -30px rgba(20,58,40,.6);outline:1px solid rgba(201,162,74,.45);outline-offset:-1px}
.abt__pic img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;transition:transform 1.2s var(--ab-ease)}
.abt__pic:hover img{transform:scale(1.05)}
.abt__pic--a{width:100%}
.abt__pic--b{position:absolute;right:0;bottom:0;width:52%;z-index:2}
.abt__panel.is-on .abt__pic--a{animation:abtPicA .9s var(--ab-ease) both}
.abt__panel.is-on .abt__pic--b{animation:abtPicB 1s var(--ab-ease) .15s both}
@keyframes abtPicA{from{opacity:0;transform:translateY(18px) rotate(-2deg)}to{opacity:1;transform:none}}
@keyframes abtPicB{from{opacity:0;transform:translate(24px,24px) rotate(3deg)}to{opacity:1;transform:none}}
.abt__badge{position:absolute;left:clamp(-10px,-1vw,-4px);bottom:clamp(6px,1vw,16px);z-index:3;display:flex;align-items:center;gap:10px;padding:10px 16px 10px 10px;border-radius:14px;border:1px solid rgba(201,162,74,.5);background:#fff;box-shadow:0 18px 36px -22px rgba(20,58,40,.6)}
.abt__badge svg{flex:none;width:34px;height:34px;padding:7px;border-radius:50%;background:var(--ab-green);color:var(--ab-gold-l)}
.abt__badge span{display:flex;flex-direction:column;font:500 12px/1.35 var(--ab-body);color:var(--ab-ink)}
.abt__badge b{font:600 13px/1.3 var(--ab-body);color:var(--ab-green)}
@media (max-width:767px){.abt__panel.has-pic{grid-template-columns:1fr}.abt__pics.has-two{padding-right:30px}}
@media (prefers-reduced-motion:reduce){.abt__panel.is-on .abt__pic--a,.abt__panel.is-on .abt__pic--b{animation:none}}

/* Journey as joined tabs: the chosen date and its story share one colour and one outline */
.abj{--tab:#FBF4EC;--tab-line:rgba(201,162,74,.55)}
.abj .abt__years{position:relative;z-index:2;display:flex;align-items:flex-end;gap:6px}
.abj .abt__y{flex:0 0 auto;gap:0;min-width:clamp(150px,14vw,210px);padding:clamp(26px,2.4vw,34px) clamp(18px,2vw,28px) clamp(16px,1.6vw,22px);margin-bottom:-1px;border:1px solid transparent;border-bottom:0;border-radius:20px 20px 0 0;transition:background .45s ease,border-color .45s ease}
.abj .abt__y:hover{background:rgba(251,244,236,.55)}
.abj .abt__y.is-on{background:var(--tab);border-color:var(--tab-line)}
.abj .abt__dot{display:none}
.abj .abt__y::after,.abj .abt__y.is-on::after,.abj .abt__y.is-past::after{content:none}
.abj .abt__y.is-past .abt__date{color:rgba(74,74,74,.6)}
.abj .abt__y.is-on .abt__date{color:var(--ab-green)}
.abj .abt__ghost{left:clamp(12px,1.4vw,20px);top:2px;font-size:clamp(44px,2.4vw + 24px,64px)}
.abj .abt__y.is-on .abt__ghost{color:rgba(201,162,74,.24)}
.abj .abt__y.is-on::before,.abj .abt__y.is-on::after{content:'';position:absolute;bottom:0;width:18px;height:18px;pointer-events:none}
.abj .abt__y.is-on::before{left:-18px;border-right:1px solid var(--tab-line);border-bottom:1px solid var(--tab-line);border-bottom-right-radius:18px;box-shadow:5px 5px 0 0 var(--tab)}
.abj .abt__y.is-on::after{right:-18px;border-left:1px solid var(--tab-line);border-bottom:1px solid var(--tab-line);border-bottom-left-radius:18px;box-shadow:-5px 5px 0 0 var(--tab)}
.abj .abt__y.is-on:first-child::before{content:none}
.abj .abt__y.is-on::after{left:auto;top:auto;border-top:0;-webkit-mask-image:none;mask-image:none}
.abj .abt__panels{position:relative;z-index:1;margin-top:0}
.abj .abt__panel{background:var(--tab);border:1px solid var(--tab-line);border-radius:26px;box-shadow:0 40px 70px -56px rgba(20,58,40,.55)}
.abj .abt[data-on="0"] .abt__panel{border-top-left-radius:0}
.abj .abt__panel.has-pic{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.abj .abt__pics{order:-1}
.abj .abt__panel.is-on{animation:abtJoin .6s var(--ab-ease) both}
@keyframes abtJoin{from{opacity:.4}to{opacity:1}}
@media (max-width:767px){
	.abj .abt__years{overflow-x:auto;scrollbar-width:none}
	.abj .abt__y{min-width:62%}
	.abj .abt__y.is-on::before,.abj .abt__y.is-on::after{display:none}
	.abj .abt__panel{border-radius:0 0 22px 22px}
	.abj .abt__panel.has-pic{grid-template-columns:1fr}
}
.abj .abt__date,.abj .abt__y.is-past .abt__date{color:var(--ab-red)}
.abj .abt__y:hover .abt__date{color:var(--ab-red);opacity:.8}
.abj .abt__y.is-on .abt__date,.abj .abt__y.is-on:hover .abt__date{color:var(--ab-green);opacity:1}
.abj .abt__y.is-on .abt__ghost{color:rgba(163,20,43,.16)}

/* Journey on phones: a peek of the next date, a soft fade at the edge, and arrows with a counter */
.abt__ctrl{display:none}
@media (max-width:767px){
	.abt__ctrl{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
	.abt__count{font:500 13px/1 var(--ab-body);letter-spacing:.18em;color:rgba(74,74,74,.7)}
	.abt__count b{font-weight:700;color:var(--ab-red)}
	.abt__arrows{display:flex;gap:8px}
	.abt__arr{display:grid;place-items:center;width:38px;height:38px;padding:0;border-radius:50%;border:1px solid var(--ab-green);background:#fff;color:var(--ab-green);cursor:pointer;transition:background .3s ease,color .3s ease}
	.abt__arr svg{width:18px;height:18px}
	.abt__arr:active{background:var(--ab-green);color:#FFF8F1}
	.abj .abt__years{margin:0;padding:0;gap:4px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-mask-image:linear-gradient(90deg,#000 72%,transparent);mask-image:linear-gradient(90deg,#000 72%,transparent)}
	.abj .abt.at-end .abt__years{-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%);mask-image:linear-gradient(90deg,transparent,#000 22%)}
	.abj .abt.at-start.at-end .abt__years{-webkit-mask-image:none;mask-image:none}
	.abj .abt:not(.at-start):not(.at-end) .abt__years{-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 80%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 80%,transparent)}
	.abj .abt__y{flex:0 0 64%;min-width:0;scroll-snap-align:start;padding:22px 16px 14px}
	.abj .abt__ghost{font-size:44px}
	.abj .abt__date{font-size:17px;white-space:nowrap}
	.abj .abt__panel,.abj .abt[data-on="0"] .abt__panel{border-radius:0 0 22px 22px;padding:20px 18px 24px}
	.abj .abt__pics{padding-bottom:34px}
	.abj .abt__pics.has-two{padding-right:24px}
	.abj .abt__badge{left:-4px;bottom:4px;padding:8px 12px 8px 8px}
}

/* ===================== Founder's story: alternating picture and text rows ===================== */
.abs{position:relative;overflow:hidden;overflow:clip;background:linear-gradient(180deg,#FBF4EC 0%,#FFFFFF 46%,#FBF4EC 100%);padding:clamp(80px,9vw,140px) 0}
.abs__ghost{position:absolute;z-index:0;top:clamp(10px,2vw,40px);right:-2vw;font:400 clamp(180px,22vw,420px)/1 var(--ab-script);color:rgba(201,162,74,.08);pointer-events:none;user-select:none;white-space:nowrap}
.abs__head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(28px,5vw,90px);align-items:end}
.abs__sub{margin:clamp(10px,1vw,16px) 0 0;font:400 clamp(30px,1.6vw + 20px,48px)/1.2 var(--ab-script);color:var(--ab-red)}
.abs__verse{position:relative;margin:0;padding:clamp(22px,2.4vw,32px) clamp(24px,2.6vw,36px);border-radius:22px;background:#fff;border:1px solid rgba(201,162,74,.4);box-shadow:0 30px 60px -44px rgba(20,58,40,.5)}
.abs__vq{position:absolute;top:-.28em;left:.3em;font:400 96px/1 var(--ab-disp);color:var(--ab-gold)}
.abs__verse blockquote{margin:0;font:italic 400 clamp(20px,.6vw + 17px,26px)/1.45 var(--ab-disp);color:var(--ab-green)}
.abs__verse figcaption{margin-top:10px;font:600 13px/1.4 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-red)}
.abs__verse figcaption::before{content:'\2014\00a0'}

.abs__row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,6.5vw,120px);align-items:center;margin-top:clamp(64px,8vw,130px)}
.abs__row--flip .abs__media{order:2}
.abs__row--flip{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.abs__row.is-solo{grid-template-columns:minmax(0,1fr)}

/* Pictures: an arch, a framed card and a soft oval, each with a gold outline set just off the picture */
.abs__media{position:relative;margin:0}
.abs__clip{position:relative;display:block;overflow:hidden;background:#EAE0D5;box-shadow:0 50px 90px -55px rgba(20,58,40,.7)}
.abs__img{display:block;width:100%;height:116%;object-fit:cover;transform:translate3d(0,var(--py,-6%),0) scale(1.1);transition:transform 1.8s var(--ab-ease)}
.abs__media.is-in .abs__img{transform:translate3d(0,var(--py,-6%),0) scale(1)}
.abs__frame{position:absolute;pointer-events:none;border:1px solid rgba(201,162,74,.7)}
.abs__media--arch .abs__clip{aspect-ratio:4 / 5;border-radius:999px 999px 28px 28px}
.abs__media--arch .abs__frame{inset:-16px 16px 16px -16px;border-radius:999px 999px 32px 32px}
.abs__media--card .abs__clip{aspect-ratio:5 / 4;border-radius:28px}
.abs__media--card .abs__frame{inset:18px -18px -18px 18px;border-radius:32px}
.abs__media--oval .abs__clip{aspect-ratio:4 / 5;border-radius:50% / 42%}
.abs__media--oval .abs__frame{inset:-14px;border-radius:50% / 42%;border-style:dashed}
.abs__seal{position:absolute;right:-10px;bottom:34px;display:grid;place-items:center;width:clamp(78px,6vw,96px);aspect-ratio:1;border-radius:50%;background:var(--ab-green);color:var(--ab-gold-l);box-shadow:0 20px 40px -20px rgba(20,58,40,.8)}
.abs__seal::before{content:'';position:absolute;inset:-8px;border:1px dashed rgba(201,162,74,.8);border-radius:50%;animation:abSpin 24s linear infinite}
.abs__seal svg{width:42%;height:42%}

/* Text side */
.abs__copy{position:relative;padding-top:clamp(40px,4vw,60px)}
.abs__num{position:absolute;left:-.05em;top:0;font:400 clamp(64px,4vw + 36px,110px)/1 var(--ab-disp);color:rgba(163,20,43,.1);pointer-events:none}
.abs__p{position:relative;margin:0 0 clamp(16px,1.4vw,22px);font:400 clamp(16px,.2vw + 15px,18px)/1.9 var(--ab-body);color:var(--ab-ink)}
.abs__p:last-child{margin-bottom:0}
.abs__p--first::first-letter{float:left;margin:.08em .14em 0 0;font:400 4.2em/.8 var(--ab-disp);color:var(--ab-red)}
.abs__quote{position:relative;overflow:hidden;margin:clamp(24px,2.6vw,36px) 0;padding:clamp(28px,3vw,44px) clamp(26px,3vw,44px);border-radius:24px;background:radial-gradient(90% 120% at 100% 0%,rgba(231,200,115,.18),transparent 55%),linear-gradient(140deg,var(--ab-green) 0%,var(--ab-green-d) 60%,var(--ab-green-dd) 100%);color:#FFF8F1;box-shadow:0 40px 80px -50px rgba(14,42,29,.9)}
.abs__quote::after{content:'';position:absolute;inset:10px;border:1px solid rgba(231,200,115,.28);border-radius:16px;pointer-events:none}
.abs__qm{position:absolute;top:-.12em;left:.1em;font:400 clamp(140px,11vw,200px)/1 var(--ab-disp);color:rgba(231,200,115,.2);pointer-events:none}
.abs__quote blockquote{position:relative;margin:0;font:400 clamp(21px,.8vw + 17px,30px)/1.4 var(--ab-disp)}
.abs__quote figcaption{position:relative;margin-top:14px;font:600 13px/1.4 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-gold-l)}
.abs__quote figcaption::before{content:'\2014\00a0'}

/* Closing: the line that sums it up, then the founder's signature */
.abs__close{max-width:860px;margin:clamp(80px,9vw,140px) auto 0;text-align:center}
.abs__orn{display:inline-flex;align-items:center;gap:14px;color:var(--ab-red)}
.abs__orn i{width:clamp(60px,8vw,120px);height:1px;background:linear-gradient(90deg,transparent,var(--ab-gold))}
.abs__orn i:last-child{background:linear-gradient(90deg,var(--ab-gold),transparent)}
.abs__orn svg{width:26px;height:26px}
.abs__hl{margin:clamp(18px,2vw,26px) 0 0;font:italic 400 clamp(26px,1.3vw + 18px,40px)/1.4 var(--ab-disp);color:var(--ab-green)}
.abs__sign{margin-top:clamp(30px,3.4vw,48px)}
.abs__off{margin:0;font:italic 400 clamp(16px,.2vw + 15px,18px)/1.6 var(--ab-disp);color:var(--ab-ink)}
.abs__name{margin:4px 0 4px;font:400 clamp(50px,2.6vw + 32px,84px)/1.05 var(--ab-script);color:var(--ab-red)}
.abs__role{margin:0;font:600 13px/1.5 var(--ab-body);letter-spacing:.22em;text-transform:uppercase;color:var(--ab-green)}
.abs__tag{display:inline-flex;align-items:center;gap:12px;margin:14px 0 0;font:italic 400 clamp(16px,.2vw + 15px,18px)/1.5 var(--ab-disp);color:var(--ab-gold)}
.abs__tag::before,.abs__tag::after{content:'';width:32px;height:1px;background:currentColor}

@media (max-width:1023px){
	.abs__head,.abs__row,.abs__row--flip{grid-template-columns:1fr}
	.abs__row--flip .abs__media{order:0}
	.abs__media{max-width:460px}
}
@media (max-width:767px){
	.abs__media{max-width:300px;margin-left:16px}
	.abs__media--card{margin-left:0;max-width:300px}
	.abs__seal{right:-6px;width:70px}
	.abs__row{gap:30px}
}
@media (prefers-reduced-motion:reduce){.abs__img{transition:none}.abs__seal::before{animation:none}}
.abs__copy{padding-top:clamp(78px,6.6vw,112px)}
.abs__num{font-size:clamp(56px,3vw + 34px,92px)}
@media (max-width:767px){.abs__copy{padding-top:56px}.abs__num{font-size:60px}}

/* ===================== Founder's story as a letter: a box tied with a bow, petals drifting inside ===================== */
.abl{position:relative;background:radial-gradient(60% 40% at 50% 0%,rgba(163,20,43,.06),transparent 70%),linear-gradient(180deg,#FBF4EC 0%,#FFFFFF 60%,#FBF4EC 100%);padding:clamp(110px,11vw,170px) 0 clamp(80px,9vw,130px)}
.abl__card{position:relative;max-width:1080px;margin:0 auto;border-radius:30px;background:radial-gradient(120% 60% at 50% 0%,#FFFFFF 0%,#FFFCF7 55%,#FBF4EC 100%);border:1px solid rgba(201,162,74,.55);box-shadow:0 60px 120px -70px rgba(20,58,40,.55),0 0 0 10px rgba(255,255,255,.7),0 0 0 11px rgba(201,162,74,.28)}
.abl__card::after{content:'';position:absolute;inset:14px;border:1px solid rgba(201,162,74,.35);border-radius:22px;pointer-events:none}
.abl__petals{position:absolute;inset:0;width:100%;height:100%;border-radius:30px;pointer-events:none;z-index:1}
.abl__band{position:absolute;left:-11px;right:-11px;top:46px;height:12px;z-index:2;background:linear-gradient(180deg,#C21E3A,#A3142B 55%,#7A0E20);box-shadow:0 1px 0 #E7C873,0 -1px 0 #E7C873,0 8px 16px -10px rgba(110,11,28,.6)}
.abl__bow{position:absolute;left:50%;top:-38px;z-index:3;width:clamp(150px,14vw,210px);transform:translateX(-50%);filter:drop-shadow(0 14px 18px rgba(110,11,28,.28))}
.abl__bow svg{display:block;width:100%;height:auto;transform-origin:50% 45%;animation:ablBow 5s ease-in-out infinite}
@keyframes ablBow{0%,100%{transform:rotate(0)}50%{transform:rotate(-2deg) scale(1.02)}}
.abl__in{position:relative;z-index:2;padding:clamp(110px,10vw,150px) clamp(24px,7vw,110px) clamp(56px,6vw,90px)}
.abl__head{text-align:center;max-width:760px;margin:0 auto}
.abl__kicker{justify-content:center}
.abl__head .ab-title{text-align:center}
.abl__sub{margin:clamp(8px,1vw,14px) 0 0;font:400 clamp(30px,1.6vw + 20px,48px)/1.2 var(--ab-script);color:var(--ab-red)}
.abl__verse{margin:clamp(22px,2.4vw,34px) auto 0;padding:clamp(14px,1.4vw,20px) 0;max-width:560px;border-top:1px solid rgba(201,162,74,.5);border-bottom:1px solid rgba(201,162,74,.5)}
.abl__verse blockquote{margin:0;font:italic 400 clamp(20px,.6vw + 17px,26px)/1.45 var(--ab-disp);color:var(--ab-green)}
.abl__verse figcaption{margin-top:8px;font:600 13px/1.4 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-red)}
.abl__verse figcaption::before{content:'\2014\00a0'}
.abl__body{max-width:760px;margin:clamp(36px,4vw,56px) auto 0}
.abl__p{margin:0 0 clamp(16px,1.4vw,22px);font:400 clamp(16px,.2vw + 15px,18px)/1.95 var(--ab-body);color:var(--ab-ink)}
.abl__p--first::first-letter{float:left;margin:.08em .14em 0 0;font:400 4.4em/.8 var(--ab-disp);color:var(--ab-red)}
.abl__quote{position:relative;margin:clamp(30px,3.4vw,48px) 0;padding:clamp(26px,3vw,40px) clamp(26px,4vw,60px);text-align:center;border-radius:20px;background:linear-gradient(180deg,rgba(251,244,236,.9),rgba(255,255,255,.7));border:1px solid rgba(201,162,74,.45)}
.abl__qm{position:absolute;left:50%;top:-.42em;transform:translateX(-50%);display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--ab-green);color:var(--ab-gold-l);font:400 44px/1 var(--ab-disp);padding-top:16px;box-shadow:0 0 0 6px #fff}
.abl__quote blockquote{margin:12px 0 0;font:italic 400 clamp(22px,.9vw + 17px,32px)/1.4 var(--ab-disp);color:var(--ab-green)}
.abl__quote figcaption{margin-top:12px;font:600 13px/1.4 var(--ab-body);letter-spacing:.2em;text-transform:uppercase;color:var(--ab-red)}
.abl__quote figcaption::before{content:'\2014\00a0'}
.abl__close{max-width:760px;margin:clamp(40px,4.4vw,64px) auto 0;text-align:center}
.abl__orn{display:inline-flex;align-items:center;gap:14px;color:var(--ab-red)}
.abl__orn i{width:clamp(60px,8vw,120px);height:1px;background:linear-gradient(90deg,transparent,var(--ab-gold))}
.abl__orn i:last-child{background:linear-gradient(90deg,var(--ab-gold),transparent)}
.abl__orn svg{width:24px;height:24px}
.abl__hl{margin:clamp(16px,1.8vw,24px) 0 0;font:italic 400 clamp(24px,1.2vw + 17px,36px)/1.4 var(--ab-disp);color:var(--ab-green)}
.abl__off{margin:clamp(28px,3vw,42px) 0 0;font:italic 400 clamp(16px,.2vw + 15px,18px)/1.6 var(--ab-disp);color:var(--ab-ink)}
.abl__name{margin:4px 0;font:400 clamp(50px,2.6vw + 32px,84px)/1.05 var(--ab-script);color:var(--ab-red)}
.abl__role{margin:0;font:600 13px/1.5 var(--ab-body);letter-spacing:.22em;text-transform:uppercase;color:var(--ab-green)}
.abl__tag{display:inline-flex;align-items:center;gap:12px;margin:14px 0 0;font:italic 400 clamp(16px,.2vw + 15px,18px)/1.5 var(--ab-disp);color:var(--ab-gold)}
.abl__tag::before,.abl__tag::after{content:'';width:32px;height:1px;background:currentColor}
@media (max-width:767px){
	.abl__card{border-radius:22px;box-shadow:0 40px 80px -60px rgba(20,58,40,.55),0 0 0 6px rgba(255,255,255,.7),0 0 0 7px rgba(201,162,74,.28)}
	.abl__card::after{inset:8px;border-radius:16px}
	.abl__petals{border-radius:22px}
	.abl__band{left:-7px;right:-7px;top:34px;height:10px}
	.abl__bow{top:-30px;width:130px}
	.abl__in{padding:86px 22px 44px}
}
@media (prefers-reduced-motion:reduce){.abl__bow svg{animation:none}}

/* Founder's letter, simplified: one outline, full container width, smaller type, no ribbon */
.abl{padding:clamp(70px,8vw,120px) 0}
.abl__band,.abl__bow{display:none}
.abl__card{max-width:none;border-radius:24px;background:#FFFCF8;box-shadow:0 40px 90px -70px rgba(20,58,40,.45)}
.abl__card::after{content:none}
.abl__petals{border-radius:24px}
.abl__in{padding:clamp(44px,4.6vw,72px) clamp(22px,5vw,80px)}
.abl__head,.abl__body,.abl__close{max-width:880px}
.abl__head .ab-title{font-size:clamp(30px,1.4vw + 20px,44px)}
.abl__sub{font-size:clamp(24px,1vw + 18px,34px)}
.abl__verse{margin-top:clamp(16px,1.6vw,22px);padding:12px 0}
.abl__verse blockquote{font-size:clamp(17px,.4vw + 15px,21px)}
.abl__body{margin-top:clamp(26px,2.8vw,40px)}
.abl__p{font-size:clamp(15px,.15vw + 14px,16px);line-height:1.85;margin-bottom:14px}
.abl__p--first::first-letter{font-size:3.6em}
.abl__quote{margin:clamp(22px,2.4vw,32px) 0;padding:clamp(20px,2.2vw,28px) clamp(20px,3vw,44px)}
.abl__qm{width:44px;height:44px;font-size:34px;padding-top:12px;top:-.5em}
.abl__quote blockquote{font-size:clamp(18px,.5vw + 15px,23px)}
.abl__close{margin-top:clamp(28px,3vw,42px)}
.abl__hl{font-size:clamp(19px,.6vw + 15px,26px)}
.abl__off{margin-top:clamp(20px,2vw,28px);font-size:15px}
.abl__name{font-size:clamp(38px,1.6vw + 26px,58px)}
@media (max-width:767px){.abl__card{border-radius:18px;box-shadow:0 30px 60px -50px rgba(20,58,40,.45)}.abl__petals{border-radius:18px}.abl__in{padding:40px 20px 36px}}

/* Founder's letter: heading on the left with the verse beside it, story in two columns across the full box */
.abl__head{max-width:none;margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto);column-gap:clamp(30px,5vw,90px);align-items:end;text-align:left;padding-bottom:clamp(22px,2.4vw,32px);border-bottom:1px solid rgba(201,162,74,.4)}
.abl__head .ab-title{grid-column:1;text-align:left}
.abl__sub{grid-column:1}
.abl__verse{grid-column:2;grid-row:1 / span 2;align-self:end;max-width:380px;margin:0;padding:6px 0 6px 22px;border:0;border-left:2px solid var(--ab-gold);text-align:left}
.abl__body{max-width:none;margin-top:clamp(26px,2.8vw,40px);columns:2;column-gap:clamp(40px,5vw,84px);column-rule:1px solid rgba(201,162,74,.3)}
.abl__p{font-size:15px;line-height:1.8;break-inside:avoid-column}
.abl__quote{column-span:all;margin:clamp(26px,2.6vw,36px) 0}
.abl__close{max-width:none;padding-top:clamp(24px,2.6vw,34px);border-top:1px solid rgba(201,162,74,.4)}
@media (max-width:1023px){
	.abl__head{grid-template-columns:1fr}
	.abl__verse{grid-column:1;grid-row:auto;margin-top:18px}
	.abl__body{columns:1}
}
.abl__p{break-inside:auto}
.abl__body{column-fill:balance}

/* Letter closing: the line on the left (60%), the signature on the right (40%) */
@media (min-width:768px){
	.abl__close{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);column-gap:clamp(30px,4vw,70px);align-items:center;text-align:left}
	.abl__orn{display:none}
	.abl__hl{grid-column:1;grid-row:1 / span 4;margin:0;padding-right:clamp(24px,3vw,50px);border-right:1px solid rgba(201,162,74,.45)}
	.abl__off,.abl__name,.abl__role,.abl__tag{grid-column:2;justify-self:center;text-align:center}
	.abl__off{margin-top:0}
}

/* Letter quote, compact: mark and words on the left, reference on the right, one row */
.abl__quote{display:flex;align-items:center;gap:clamp(14px,1.6vw,22px);text-align:left;padding:clamp(14px,1.4vw,18px) clamp(18px,2.4vw,32px);margin:clamp(18px,2vw,26px) 0;border-radius:16px}
.abl__qm{position:static;transform:none;flex:none;width:36px;height:36px;font-size:28px;padding-top:9px;box-shadow:none}
.abl__quote blockquote{flex:1;margin:0;font-size:clamp(17px,.4vw + 15px,21px)}
.abl__quote figcaption{flex:none;margin:0;white-space:nowrap}
@media (max-width:767px){.abl__quote{flex-wrap:wrap}.abl__quote blockquote{flex-basis:calc(100% - 60px)}.abl__quote figcaption{flex-basis:100%;padding-left:58px}}

/* Why choose Eden: no icon boxes. What we do: plain red step numbers, no box */
.aby__ico{display:none}
.aby__row{gap:0}
.abd__badge{width:auto;height:auto;border:0;border-radius:0;background:none;box-shadow:none;place-items:start;font:400 clamp(26px,.8vw + 20px,34px)/1 var(--ab-disp);color:var(--ab-red)}

/* ===================== Book Now page ===================== */
.bk{position:relative;overflow:hidden;overflow:clip;background:var(--qa-cream,#FBF5EF);padding:clamp(64px,8vw,130px) 0 clamp(70px,8.5vw,140px)}
.bk::before{content:'';position:absolute;right:-14vw;top:-10vw;width:48vw;height:48vw;border-radius:50%;background:radial-gradient(circle,rgba(201,162,74,.14),transparent 65%);pointer-events:none}
.bk__wrap{position:relative;max-width:1440px;margin:0 auto;padding:0 var(--pad,20px)}
.bk__head{max-width:780px;margin:0 auto;text-align:center}
.bk__head .qa__text{margin-left:auto;margin-right:auto;max-width:60ch}
.bk__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,410px);gap:clamp(28px,3.6vw,60px);align-items:start;margin-top:clamp(40px,4.6vw,70px)}
.bk__main{display:grid;gap:clamp(18px,1.8vw,26px);min-width:0}
.bk__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Each part of the form sits on its own white card */
.bk__step{position:relative;min-width:0;margin:0;padding:clamp(22px,2.6vw,40px);border:1px solid rgba(201,162,74,.32);border-radius:24px;background:#fff;box-shadow:0 30px 70px -50px rgba(20,58,40,.5);transition:border-color .4s ease,box-shadow .4s ease}
.bk__step.is-bad{border-color:rgba(163,20,43,.6);box-shadow:0 0 0 4px rgba(163,20,43,.08),0 30px 70px -50px rgba(20,58,40,.5)}
.bk__st{float:left;width:100%;padding:0;margin:0 0 clamp(18px,1.8vw,24px);font:400 clamp(23px,.75vw + 19px,30px)/1.2 var(--font-display);color:var(--qa-g,#1E5A3C)}
.bk__st::after{content:'';display:block;width:44px;height:1px;margin-top:12px;background:linear-gradient(90deg,var(--qa-gold-d,#C9A24A),transparent)}
.bk__st + *{clear:both}
.bk__hint{clear:both;margin:-8px 0 16px;font:400 14px/1.6 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.bk input[type=radio],.bk input[type=checkbox]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}

/* 1. Experiences */
.bk__exps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.2vw,18px)}
.bk__exp{position:relative;display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:#FBF5EF;border:1px solid rgba(201,162,74,.35);cursor:pointer;transition:transform .35s var(--qa-ease,ease),box-shadow .35s ease,border-color .35s ease}
.bk__exp:hover{transform:translateY(-3px);box-shadow:0 22px 40px -28px rgba(20,58,40,.55)}
.bk__expimg{display:block;aspect-ratio:16 / 10;background:#EAE0D5 center / cover no-repeat;transition:transform .8s var(--qa-ease,ease)}
.bk__exp:hover .bk__expimg{transform:scale(1.04)}
.bk__expname{padding:14px 16px 4px;font:400 clamp(17px,.3vw + 15px,20px)/1.3 var(--font-display);color:var(--qa-g,#1E5A3C)}
.bk__expprice{padding:0 16px 16px;margin-top:auto;font:600 13px/1.4 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--qa-r,#A3142B)}
.bk__tick{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--qa-g,#1E5A3C);color:var(--qa-gold,#E7C873);box-shadow:0 0 0 3px #fff;opacity:0;transform:scale(.6);transition:opacity .3s ease,transform .35s var(--qa-ease,ease)}
.bk__tick svg{width:16px;height:16px}
.bk__exp:has(input:checked){border-color:var(--qa-r,#A3142B);box-shadow:0 0 0 1px var(--qa-r,#A3142B),0 22px 40px -28px rgba(163,20,43,.6);background:#fff}
.bk__exp:has(input:checked) .bk__tick{opacity:1;transform:scale(1)}
.bk__exp:has(input:focus-visible),.bk__slot:has(input:focus-visible),.bk__add:has(input:focus-visible),.bk__agree:has(input:focus-visible){outline:2px solid var(--qa-gold-d,#C9A24A);outline-offset:3px}

/* 2. Date and time */
.bk__when{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:clamp(16px,1.8vw,26px);align-items:start}
.bk__slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding-top:26px}
.bk__slot{position:relative;display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:14px;border:1px solid rgba(30,90,60,.18);background:#fff;cursor:pointer;transition:background .3s ease,border-color .3s ease,color .3s ease,opacity .3s ease}
.bk__slot:hover{border-color:var(--qa-gold-d,#C9A24A)}
.bk__slotl{font:600 11px/1.3 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--qa-r,#A3142B)}
.bk__slott{font:500 15px/1.3 var(--font-body);color:var(--qa-g,#1E5A3C);white-space:nowrap}
.bk__slot:has(input:checked){background:var(--qa-g,#1E5A3C);border-color:var(--qa-g,#1E5A3C)}
.bk__slot:has(input:checked) .bk__slotl{color:var(--qa-gold,#E7C873)}
.bk__slot:has(input:checked) .bk__slott{color:#FFF8F1}
.bk__slot:has(input:disabled){opacity:.38;cursor:not-allowed;background:#F4EEE7}
.bk__slot:has(input:disabled):hover{border-color:rgba(30,90,60,.18)}

/* 3. Add-ons */
.bk__adds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bk__add{position:relative;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:14px;border:1px solid rgba(201,162,74,.38);background:#fff;cursor:pointer;user-select:none;transition:background .3s ease,border-color .3s ease,transform .25s ease}
.bk__add:hover{border-color:var(--qa-gold-d,#C9A24A);background:#FFFCF7}
.bk__add:active{transform:scale(.985)}
.bk__addic{position:relative;flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid rgba(201,162,74,.6);color:var(--qa-gold-d,#C9A24A);transition:background .3s ease,border-color .3s ease,color .3s ease}
.bk__addic svg{position:absolute;width:16px;height:16px;transition:opacity .25s ease,transform .3s var(--qa-ease,ease)}
.bk__addic svg:last-child{opacity:0;transform:scale(.4) rotate(-30deg)}
.bk__addn{flex:1;min-width:0;font:500 15px/1.4 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.bk__addp{flex:none;font:600 15px/1 var(--font-body);color:var(--qa-g,#1E5A3C)}
.bk__add:has(input:checked){background:#FBF1EF;border-color:var(--qa-r,#A3142B)}
.bk__add:has(input:checked) .bk__addic{background:var(--qa-r,#A3142B);border-color:var(--qa-r,#A3142B);color:#fff}
.bk__add:has(input:checked) .bk__addic svg:first-child{opacity:0;transform:scale(.4) rotate(90deg)}
.bk__add:has(input:checked) .bk__addic svg:last-child{opacity:1;transform:none}
.bk__add:has(input:checked) .bk__addn{color:var(--qa-g,#1E5A3C)}
.bk__add:has(input:checked) .bk__addp{color:var(--qa-r,#A3142B)}

/* 4. Details */
.bk__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.bk__field{display:flex;flex-direction:column;gap:8px;min-width:0}
.bk__field--full{grid-column:1 / -1}
.bk__lab{font:600 12px/1.4 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--qa-g,#1E5A3C)}
.bk__field input,.bk__field textarea{width:100%;box-sizing:border-box;padding:14px 16px;border:1px solid rgba(30,90,60,.2);border-radius:12px;background:#FFFCF8;font:400 16px/1.5 var(--font-body);color:#2B2B2B;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;-webkit-appearance:none;appearance:none}
.bk__field input[type=date]{min-height:52px}
.bk__field textarea{resize:vertical;min-height:100px}
.bk__field input:focus,.bk__field textarea:focus{outline:none;border-color:var(--qa-gold-d,#C9A24A);background:#fff;box-shadow:0 0 0 4px rgba(201,162,74,.18)}
.bk__field.is-bad input,.bk__field.is-bad textarea{border-color:var(--qa-r,#A3142B);box-shadow:0 0 0 4px rgba(163,20,43,.08)}
.bk__agree{position:relative;display:flex;align-items:flex-start;gap:12px;margin-top:18px;font:400 15px/1.6 var(--font-body);color:var(--qa-ink,#4A4A4A);cursor:pointer}
.bk__agree a{color:var(--qa-r,#A3142B);text-decoration:underline;text-underline-offset:3px}
.bk__box{flex:none;display:grid;place-items:center;width:22px;height:22px;margin-top:1px;border-radius:6px;border:1px solid rgba(30,90,60,.35);background:#fff;color:#fff;transition:background .25s ease,border-color .25s ease}
.bk__box svg{width:14px;height:14px;opacity:0;transition:opacity .2s ease}
.bk__agree:has(input:checked) .bk__box{background:var(--qa-g,#1E5A3C);border-color:var(--qa-g,#1E5A3C)}
.bk__agree:has(input:checked) .bk__box svg{opacity:1}
.bk__agree.is-bad .bk__box{border-color:var(--qa-r,#A3142B);box-shadow:0 0 0 4px rgba(163,20,43,.1)}

/* Summary: stays beside the form while scrolling */
.bk__sum{position:sticky;top:calc(var(--barh,78px) + 28px)}
.bk__card{position:relative;padding:clamp(26px,2.6vw,38px);border-radius:26px;color:#FFF8F1;background:radial-gradient(90% 60% at 100% 0%,rgba(231,200,115,.16),transparent 60%),linear-gradient(160deg,var(--qa-g,#1E5A3C) 0%,var(--qa-gd,#143A28) 55%,var(--qa-gdd,#0E2A1D) 100%);box-shadow:0 50px 90px -50px rgba(14,42,29,.85)}
.bk__card::before{content:'';position:absolute;inset:10px;border:1px dashed rgba(231,200,115,.3);border-radius:18px;pointer-events:none}
.bk__sumt{position:relative;margin:0;font:400 clamp(23px,.75vw + 19px,30px)/1.2 var(--font-display);color:#FFF8F1}
.bk__when2{position:relative;margin:8px 0 0;font:500 14px/1.5 var(--font-body);color:var(--qa-gold,#E7C873)}
.bk__empty{position:relative;margin:18px 0 0;font:italic 400 16px/1.6 var(--font-display);color:rgba(255,248,241,.7)}
.bk__lines{position:relative;list-style:none;margin:18px 0 0;padding:0;display:grid;gap:0}
.bk__lines li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0;border-bottom:1px solid rgba(231,200,115,.18);font:400 15px/1.45 var(--font-body);animation:bkIn .4s var(--qa-ease,ease) both}
.bk__lines li b{flex:none;font-weight:600;color:var(--qa-gold,#E7C873)}
.bk__lines li.is-main{font-weight:600;font-size:16px}
.bk__lines li .bk__x{display:block;margin-top:2px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:rgba(255,248,241,.55)}
@keyframes bkIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.bk__total{position:relative;display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:18px;padding-top:6px}
.bk__total span{font:600 13px/1.4 var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:rgba(255,248,241,.75)}
.bk__total b{font:400 clamp(40px,1.6vw + 26px,54px)/1 var(--font-display);color:var(--qa-gold,#E7C873);font-variant-numeric:tabular-nums}
.bk__err{position:relative;margin:16px 0 0;padding:12px 14px;border-radius:12px;background:rgba(163,20,43,.9);font:500 14px/1.5 var(--font-body);color:#fff}
.bk__pay{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:22px;padding:18px 22px;border:0;border-radius:999px;background:var(--qa-r,#A3142B);color:#FFF8F1;font:600 13px/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;cursor:pointer;box-shadow:0 18px 34px -16px rgba(163,20,43,.8);transition:background .3s ease,transform .3s var(--qa-ease,ease),box-shadow .3s ease}
.bk__pay svg{width:18px;height:18px;transition:transform .3s ease}
.bk__pay:hover{background:#8A0F23;transform:translateY(-2px)}
.bk__pay:hover svg{transform:translateX(4px)}
.bk__pay[disabled]{opacity:.7;cursor:wait;transform:none}
.bk__pay.is-busy svg{animation:bkPulse 1s ease-in-out infinite}
@keyframes bkPulse{50%{transform:translateX(5px)}}
.bk__secure{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;margin:14px 0 0;font:500 13px/1.4 var(--font-body);color:rgba(255,248,241,.7)}
.bk__secure svg{width:15px;height:15px;color:var(--qa-gold,#E7C873)}
.bk__bar{display:none}

/* Back from Square */
.bk__back{display:flex;gap:clamp(16px,2vw,26px);align-items:flex-start;max-width:900px;margin:clamp(32px,3.6vw,52px) auto 0;padding:clamp(22px,2.6vw,36px);border-radius:24px;background:#fff;border:1px solid rgba(201,162,74,.4);box-shadow:0 30px 70px -50px rgba(20,58,40,.5)}
.bk__backico{flex:none;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:rgba(163,20,43,.1);color:var(--qa-r,#A3142B)}
.bk__back.is-paid .bk__backico{background:var(--qa-g,#1E5A3C);color:var(--qa-gold,#E7C873)}
.bk__backico svg{width:24px;height:24px}
.bk__backt{margin:0 0 8px;font:400 clamp(23px,.75vw + 19px,30px)/1.25 var(--font-display);color:var(--qa-g,#1E5A3C)}
.bk__back p{margin:0;font:400 clamp(16px,.2vw + 15px,18px)/1.7 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.bk__back .bk__backm{margin-top:10px;font-size:14px;color:var(--qa-g,#1E5A3C)}
.bk__pay--inline{display:inline-flex;width:auto;margin-top:18px;text-decoration:none}

@media (max-width:1279px){.bk__exps{grid-template-columns:repeat(2,minmax(0,1fr))}.bk__when{grid-template-columns:1fr}.bk__slots{padding-top:0}}
@media (max-width:1023px){
	.bk__grid{grid-template-columns:1fr}
	.bk__sum{position:relative;top:auto}
	.bk{padding-bottom:calc(clamp(70px,8.5vw,140px) + 80px)}
	.bk__bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 10px 10px 20px;border-radius:999px;background:var(--qa-gdd,#0E2A1D);box-shadow:0 20px 40px -14px rgba(0,0,0,.55);transform:translateY(0);transition:transform .45s var(--qa-ease,ease),opacity .45s ease}
	.bk__bar.is-off{transform:translateY(140%);opacity:0;pointer-events:none}
	.bk__bar div{display:flex;flex-direction:column;line-height:1}
	.bk__bar span{font:600 10px/1.2 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:rgba(255,248,241,.7)}
	.bk__bar b{margin-top:3px;font:400 26px/1 var(--font-display);color:var(--qa-gold,#E7C873)}
	.bk__bar .bk__pay{width:auto;margin:0;padding:15px 20px;font-size:12px;letter-spacing:.12em}
}
@media (max-width:767px){
	.bk__exps{grid-template-columns:1fr 1fr;gap:10px}
	.bk__expname{padding:10px 12px 2px;font-size:16px}
	.bk__expprice{padding:0 12px 12px}
	.bk__adds,.bk__fields{grid-template-columns:1fr}
	.bk__slots{grid-template-columns:1fr 1fr}
	.bk__step{border-radius:20px}
	.bk__back{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){.bk__lines li{animation:none}.bk__exp,.bk__expimg,.bk__pay,.bk__bar{transition:none}}
/* Date on its own row, times below in wide boxes so the full time always fits */
.bk__when{grid-template-columns:1fr;gap:22px}
.bk__field--date{max-width:340px}
.bk__slotswrap{display:flex;flex-direction:column;gap:8px;min-width:0}
.bk__slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:0}
.bk__slot{padding:14px 16px;min-width:0}
.bk__slott{font-size:clamp(14px,.2vw + 13px,16px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:1279px){.bk__slots{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.bk__field--date{max-width:none}.bk__slot{padding:12px}.bk__slott{white-space:normal;font-size:14px}}/* Phones: nothing in the date/time card may push past the card edge */
.bk__when{grid-template-columns:minmax(0,1fr)}
.bk__when > *,.bk__slots > *{min-width:0}
.bk__field input,.bk__field textarea{max-width:100%;min-width:0}
.bk__field input[type=date]{display:block;width:100%}
@media (max-width:767px){.bk__slots{gap:10px}.bk__slot{padding:12px 12px}.bk__slotl{font-size:10px;letter-spacing:.12em}.bk__slott{font-size:13.5px;white-space:normal}}@media (max-width:767px){.bk__slots{grid-template-columns:minmax(0,1fr);gap:8px}.bk__slot{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}.bk__slotl{font-size:11px;letter-spacing:.14em}.bk__slott{font-size:15px;white-space:nowrap}}
@media (max-width:767px){.bk__slot{gap:8px;padding:14px}.bk__slotl{flex:none;white-space:nowrap;letter-spacing:.1em}.bk__slott{font-size:14px;overflow:visible;text-overflow:clip}}
/* Availability: booked times and booked experiences */
.bk__slotx{font:600 11px/1.3 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--qa-r,#A3142B)}
.bk__slot:has(input:disabled) .bk__slott{text-decoration:line-through;text-decoration-color:rgba(163,20,43,.5)}
.bk__exp:has(input:disabled){cursor:not-allowed}
.bk__exp.is-taken{opacity:.55}
.bk__exp.is-taken:hover{transform:none;box-shadow:none}
.bk__exp.is-taken .bk__expimg{filter:grayscale(.7)}
.bk__expx{position:absolute;left:10px;top:10px;display:none;padding:6px 11px;border-radius:999px;background:rgba(14,42,29,.88);color:var(--qa-gold,#E7C873);font:600 10px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase}
.bk__exp.is-taken .bk__expx{display:block}
.bk__grid.is-loading .bk__slots{opacity:.5;pointer-events:none;transition:opacity .2s ease}
@media (max-width:767px){.bk__slot{flex-wrap:wrap}.bk__slotx{flex-basis:100%;margin-top:2px}}/* Pods left on each time */
.bk__thint{font:400 14px/1.5 var(--font-body);color:var(--qa-ink,#4A4A4A)}
.bk__slotx.is-left{color:var(--qa-g,#1E5A3C);opacity:.85}
.bk__slotx.is-last{color:var(--qa-r,#A3142B);opacity:1}
.bk__slot:has(input:checked) .bk__slotx{color:var(--qa-gold,#E7C873)}
/* ===================== /Book Now page ===================== */

/* ===================== Footer social icons: keep the icon visible on the gold hover ===================== */
body.eden-romance .foot .foot__icons a:hover,body.eden-romance .foot .foot__icons a:focus-visible{background:var(--rr-gold-hi,#E7C873)!important;border-color:var(--rr-gold-hi,#E7C873)!important;color:#143A28!important}
/* ===================== /Footer social icons ===================== */
