/* Fonts: self-hosted (no requests to Google). latin + latin-ext subsets, variable weights, font-display: swap. */
/* latin-ext */ @font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500 700; font-display: swap; src: url(/assets/fonts/cormorant-garamond-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */ @font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500 700; font-display: swap; src: url(/assets/fonts/cormorant-garamond-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* latin-ext */ @font-face { font-family: 'Hanken Grotesk'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/fonts/hanken-grotesk-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */ @font-face { font-family: 'Hanken Grotesk'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/fonts/hanken-grotesk-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* latin-ext */ @font-face { font-family: 'Ibarra Real Nova'; font-style: italic; font-weight: 400 500; font-display: swap; src: url(/assets/fonts/ibarra-real-nova-latin-ext-italic.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */ @font-face { font-family: 'Ibarra Real Nova'; font-style: italic; font-weight: 400 500; font-display: swap; src: url(/assets/fonts/ibarra-real-nova-latin-italic.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* latin-ext */ @font-face { font-family: 'Ibarra Real Nova'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/fonts/ibarra-real-nova-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */ @font-face { font-family: 'Ibarra Real Nova'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/fonts/ibarra-real-nova-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* latin-ext */ @font-face { font-family: 'Spline Sans Mono'; font-style: normal; font-weight: 400 500; font-display: swap; src: url(/assets/fonts/spline-sans-mono-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* latin */ @font-face { font-family: 'Spline Sans Mono'; font-style: normal; font-weight: 400 500; font-display: swap; src: url(/assets/fonts/spline-sans-mono-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

html{scroll-behavior:smooth;}
  body{margin:0;background:#F4F0E7;}
  *{box-sizing:border-box;}
  [hidden]{display:none!important;}
  a{color:#B5894C;text-decoration:none;}
  a:hover{color:#8f6b39;}
  .pr{font-family:'Ibarra Real Nova',serif;color:#8A6737;line-height:1;}
  .site-nav .pr,.hero .pr,.slope-section .pr,.chart-panel .pr,.fan .pr,.yr-panel .pr,.member-card-exclusive .pr,.villa .pr,.contact .pr,.footer .pr{color:#B5894C;}
  .cont-ratio .pr{color:#BF9863;}
  .ey{font-family:'Spline Sans Mono',monospace;letter-spacing:.22em;text-transform:uppercase;}
  h1,h2,h3,p{margin:0;text-wrap:pretty;}
  .navlink{position:relative;color:#cdd4c6;font-family:'Spline Sans Mono',monospace;letter-spacing:.18em;text-transform:uppercase;font-size:10.5px;}
  .navlink::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:#B5894C;transform:scaleX(0);transform-origin:left center;transition:transform .25s ease;}
  a:active,.pill:active,button:active{transform:scale(.98);}
  a,button{transition:transform .12s ease;}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid #B0913F;outline-offset:3px;}
  @media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}
  .fan-narrow{display:none;}
  @container (max-width:720px){.fan-wide{display:none;}.fan-narrow{display:block;}}
  @container (max-width:839px){
    .yr-wrap{padding:0!important;}
    .yr-labels{position:static!important;inset:auto!important;display:flex;flex-direction:column;gap:20px;margin-top:30px;}
    .yr-labels>div{position:static!important;left:auto!important;top:auto!important;transform:none!important;width:auto!important;max-width:52ch;text-align:left!important;border-left:1px solid rgba(176,145,63,.35);padding-left:16px;}
    .yr-labels>div#yr-l5{border-left:2px solid #B0913F;}
  }
  .navlink:hover::after{transform:scaleX(1);}
  .navlink:hover{color:#F4F0E7;}
  .pill{border-radius:999px;font-weight:600;font-size:14.5px;padding:15px 30px;display:inline-block;transition:opacity .2s ease, background .2s ease;}
  .pill-primary{background:#B5894C;color:#20291c;}
  .pill-primary:hover{background:#c79a5c;color:#20291c;}
  .pill-ghost{border:1px solid rgba(244,240,231,.38);color:#F4F0E7;}
  .pill-ghost:hover{border-color:#B5894C;color:#B5894C;}
  .pill-ghost-dark{border:1px solid #2E3A28;color:#2E3A28;}
  .pill-ghost-dark:hover{background:#2E3A28;color:#F4F0E7;}

/* ---- Page layout and type (moved from inline styles; values unchanged) ---- */

/* Page */
.site{--moss:#2E3A28;--moss-deep:#232C1E;--paper:#F4F0E7;--brass:#B5894C;--stone:#D8D2C4;--mut:#665f4f;font-family:'Hanken Grotesk',sans-serif;color:#26241c;background:var(--paper);width:100%;}

/* Nav */
.site-nav{position:sticky;top:0;z-index:50;background:rgba(35,44,30,.86);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:18px clamp(24px,5vw,72px);}
.brand{display:flex;align-items:center;gap:10px;}
.brand-mark{width:32px;height:32px;border-radius:50%;border:1px solid var(--brass);display:flex;align-items:center;justify-content:center;}
.brand-mark-p{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:18px;color:var(--brass);}
.brand-mark-prime{font-family:'Ibarra Real Nova',serif;font-size:12px;color:var(--brass);margin-left:1px;}
.brand-name{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:16px;color:var(--paper);}
.nav-links{display:flex;align-items:center;gap:34px;}
.nav-begin{font-size:11px;padding:11px 20px;}

/* Hero / The Swap */
.hero{background:var(--moss);position:relative;overflow:hidden;padding:clamp(88px,10vw,128px) clamp(24px,6vw,72px);}
.hero-glow{position:absolute;inset:0;background:radial-gradient(120% 60% at 50% 0%,rgba(181,137,76,.16),transparent 58%);}
.frame{position:absolute;left:28px;right:28px;top:28px;bottom:28px;border:1px solid rgba(181,137,76,.28);pointer-events:none;}
.hero-inner{position:relative;max-width:960px;margin:0 auto;text-align:center;}
.rule-light{border-top:1px solid rgba(216,210,196,.3);margin-bottom:56px;}
.hero-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(34px,4.6vw,60px);line-height:1.16;color:var(--paper);letter-spacing:-.012em;margin-top:0;}
.hero-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin-top:32px;text-align:left;max-width:820px;margin-left:auto;margin-right:auto;}
.hero-text{font-size:15.5px;line-height:1.74;color:#cdd4c6;}
.hero-worth{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(19px,2vw,25px);color:#BF9863;margin-top:32px;}
.hero-protect{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(19px,2vw,25px);color:var(--paper);margin-top:10px;}
.hero-ctas{display:flex;gap:16px;margin-top:46px;flex-wrap:wrap;justify-content:center;}

/* 02 The One Thing */
.section-paper{background:var(--paper);padding:clamp(40px,4.6vw,56px) clamp(24px,6vw,72px);}
.container{max-width:1180px;margin:0 auto;}
.rule{border-top:1px solid #D8D2C4;margin-bottom:56px;}
.plan-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(30px,3.4vw,46px);line-height:1.16;color:var(--moss);letter-spacing:-.012em;max-width:20ch;}
.plan-body{font-size:16px;line-height:1.72;color:#48443c;margin-top:28px;max-width:66ch;}
.plan-dream{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(19px,2vw,24px);line-height:1.5;color:#8A6737;margin-top:28px;max-width:58ch;}

/* The Health-Span Graphic */
.slope-section{background:var(--moss);color:var(--paper);padding:clamp(88px,10vw,128px) clamp(24px,6vw,72px);}
.graphic-head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;flex-wrap:wrap;border-bottom:1px solid rgba(244,240,231,.16);padding-bottom:20px;}
.eyebrow-brass{font-size:10px;color:#BF9863;}
.slope-illustrative{font-size:10px;color:#a9b3a1;}
.slope-svg{width:100%;height:auto;display:block;margin-top:clamp(24px,3vw,44px);overflow:visible;}
.svg-label-mono{font-family:'Spline Sans Mono',monospace;font-size:12px;letter-spacing:.2em;}
.slope-label{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:21px;}
.slope-left-to-chance{font-family:'Hanken Grotesk',sans-serif;font-size:20px;}
.svg-note{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:21px;}
.svg-axis{font-family:'Spline Sans Mono',monospace;font-size:13px;letter-spacing:.14em;}
.slope-caption-row{display:flex;justify-content:flex-end;margin-top:14px;}
.slope-caption{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:14px;color:#a9b3a1;max-width:40ch;line-height:1.55;text-align:right;}
.plan-detail{background:var(--paper);color:var(--moss);padding:clamp(64px,6vw,80px) clamp(24px,6vw,72px) clamp(40px,4.6vw,56px);}
.plan-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(32px,4vw,64px);margin-top:0;}
.plan-col-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(23px,2.4vw,30px);line-height:1.2;color:var(--moss);}
.plan-col-body{font-size:15.5px;line-height:1.7;color:#48443c;margin-top:14px;max-width:48ch;}
.plan-timing{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(20px,2.1vw,26px);color:#8A6737;margin-top:56px;}

/* 03 Your Last Blood Test */
.blood-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(30px,3.4vw,46px);line-height:1.16;color:var(--moss);letter-spacing:-.012em;max-width:22ch;}
.intro{font-size:16px;line-height:1.72;color:#48443c;margin-top:28px;max-width:70ch;}
.blood-film-wrap{margin-top:clamp(48px,5vw,72px);border-top:1px solid #d6cdb6;padding-top:28px;}
.blood-film{font-size:16px;line-height:1.72;color:#48443c;max-width:70ch;}
.chart-panel{margin-top:32px;background:var(--moss);color:var(--paper);padding:clamp(24px,3.4vw,48px);}
.chart-headline{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(21px,2.3vw,28px);line-height:1.3;color:var(--paper);margin-top:14px;margin-bottom:clamp(16px,2vw,28px);max-width:40ch;}
.chart-scroll{overflow-x:auto;}
.chart-svg{width:100%;min-width:640px;height:auto;display:block;}
.chart-range{font-family:'Spline Sans Mono',monospace;font-size:13px;letter-spacing:.18em;}
.chart-value{font-family:'Hanken Grotesk',sans-serif;font-size:16px;}
.blood-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(32px,4vw,64px);margin-top:clamp(48px,5vw,72px);}
.blood-col{border-top:1px solid #d6cdb6;padding-top:28px;}
.blood-col-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(22px,2.2vw,28px);line-height:1.2;color:var(--moss);}
.blood-col-body{font-size:15.5px;line-height:1.7;color:#48443c;margin-top:12px;}
.test{margin-top:64px;margin-bottom:8px;background:var(--stone);padding:clamp(26px,3.4vw,44px);max-width:820px;}
.test-eyebrow{font-size:10px;color:var(--moss);margin-bottom:10px;}
.test-list{display:flex;flex-direction:column;border-bottom:1px solid rgba(46,58,40,.18);}
.test-row{display:flex;justify-content:space-between;align-items:center;gap:16px 32px;flex-wrap:wrap;padding:18px 0;border-top:1px solid rgba(46,58,40,.18);}
.test-question{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(18px,1.9vw,22px);line-height:1.3;color:var(--moss);}
.test-answers{display:flex;gap:10px;}
.test-btn{min-width:76px;min-height:44px;padding:10px 20px;border-radius:999px;border:1px solid var(--moss);background:transparent;color:var(--moss);font-family:'Hanken Grotesk',sans-serif;font-weight:600;font-size:14px;cursor:pointer;}
.test-result{display:none;opacity:0;transition:opacity .3s ease;margin-top:26px;}
.test-result-row{display:flex;justify-content:space-between;align-items:center;gap:18px 32px;flex-wrap:wrap;}
.test-msg{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(20px,2.1vw,25px);line-height:1.36;color:var(--moss);max-width:34ch;}

/* 04 One Phone Call */
.section-paper-ink{background:var(--paper);color:var(--moss);padding:clamp(40px,4.6vw,56px) clamp(24px,6vw,72px);}
.call-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3.2vw,44px);line-height:1.18;max-width:28ch;margin-top:0;letter-spacing:-.01em;}
.call-answer{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(20px,2.1vw,26px);line-height:1.42;color:#8A6737;margin-top:28px;max-width:44ch;}
.call-steps{display:flex;flex-direction:column;margin-top:clamp(40px,4.6vw,64px);border-top:1px solid #d6cdb6;}
.call-step{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px 40px;padding:26px 0;border-bottom:1px solid #d6cdb6;}
.eyebrow-moss{font-size:10.5px;color:var(--moss);}
.row-body{font-size:15.5px;line-height:1.66;color:#48443c;max-width:62ch;}
.call-guide{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(22px,2.4vw,30px);line-height:1.3;color:var(--moss);margin-top:56px;}
.call-emergency{font-size:13px;line-height:1.6;color:var(--mut);margin-top:22px;max-width:80ch;}

/* 05 Continuity */
.cont-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3.2vw,44px);line-height:1.18;max-width:28ch;margin-top:0;letter-spacing:-.01em;color:var(--moss);}
.cont-knows{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(19px,2vw,24px);line-height:1.44;color:#8A6737;margin-top:24px;max-width:52ch;}
.cont-ratio{display:flex;gap:0;margin-top:52px;background:var(--moss);color:var(--paper);padding:0 clamp(24px,3.4vw,48px);flex-wrap:wrap;}
.cont-ratio-prime-col{flex:1;min-width:260px;padding:36px 40px 36px 0;}
.cont-ratio-prime{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(56px,6vw,92px);line-height:.86;color:var(--brass);}
.cont-ratio-prime-bar{height:8px;width:20%;background:var(--brass);margin-top:16px;border-radius:4px;}
.cont-ratio-caption{font-size:15px;color:#cdd4c6;margin-top:14px;max-width:26ch;line-height:1.5;}
.cont-ratio-typical-col{flex:1;min-width:260px;padding:36px 0 36px 40px;border-left:1px solid rgba(244,240,231,.18);}
.cont-ratio-typical{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(56px,6vw,92px);line-height:.86;color:var(--paper);opacity:.26;}
.cont-ratio-typical-bar{height:8px;width:100%;background:rgba(244,240,231,.3);margin-top:16px;border-radius:4px;}
.cont-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;margin-top:36px;}
.cont-text{font-size:15.5px;line-height:1.7;color:#48443c;}
.cont-quote-wrap{margin-top:56px;border-left:3px solid var(--brass);padding-left:26px;max-width:64ch;}
.cont-quote{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(19px,2vw,23px);color:var(--moss);line-height:1.42;}

/* 06 The Other Promise */
.promise-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3.2vw,44px);line-height:1.2;max-width:22ch;margin-top:0;letter-spacing:-.01em;color:var(--moss);}
.promise-intro{font-size:16px;line-height:1.72;color:#48443c;margin-top:24px;max-width:66ch;}
.promise-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:36px 48px;margin-top:48px;}
.promise-item{border-top:2px solid var(--brass);padding-top:18px;}
.promise-item-body{font-size:15px;line-height:1.62;color:#48443c;margin-top:12px;}
.fan{container-type:inline-size;margin-top:clamp(56px,6vw,84px);background:var(--moss);color:var(--paper);padding:clamp(28px,3.6vw,52px);}
.fan-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px 32px;flex-wrap:wrap;}
.dot-list{display:block;margin-left:-2.4594em;text-wrap:balance;}
.dot-list>span{white-space:nowrap;}
.dot-list>span::before{content:"\00B7";display:inline-block;width:2.4594em;text-align:center;letter-spacing:0;}
.fan-countries{font-size:10px;color:#cdd4c6;line-height:1.9;overflow:hidden;}
.fan-wide{margin-top:clamp(20px,2.6vw,36px);}
.svg-fluid{width:100%;height:auto;display:block;overflow:visible;}
.fan-label{font-family:'Ibarra Real Nova',serif;font-size:21px;}
.fan-doctor{font-family:'Ibarra Real Nova',serif;font-size:25px;}
.fan-team{font-family:'Hanken Grotesk',sans-serif;font-size:14px;}
.fan-narrow{position:relative;margin-top:28px;padding-left:32px;}
.fan-narrow-line{position:absolute;left:8px;top:12px;bottom:14px;width:2px;background:#B0913F;}
.fan-narrow-item{position:relative;}
.fan-narrow-start{position:absolute;left:-31px;top:6px;width:16px;height:16px;border-radius:50%;border:2px solid #B0913F;background:var(--moss);}
.fan-narrow-finding{font-family:'Ibarra Real Nova',serif;font-size:21px;color:var(--paper);}
.fan-same-day-label{font-size:10px;color:#cdd4c6;margin:18px 0;}
.fan-narrow-hub{position:absolute;left:-36px;top:1px;width:26px;height:26px;border-radius:50%;background:rgba(176,145,63,.25);display:flex;align-items:center;justify-content:center;}
.fan-narrow-hub-dot{width:12px;height:12px;border-radius:50%;background:#B0913F;}
.fan-narrow-doctor{font-family:'Ibarra Real Nova',serif;font-size:24px;line-height:1.1;color:#B0913F;}
.fan-narrow-team{font-size:14px;color:#cdd4c6;margin-top:4px;}
.fan-narrow-leaves{display:flex;flex-direction:column;gap:14px;margin-top:22px;}
.fan-narrow-dot{position:absolute;left:-28px;top:8px;width:10px;height:10px;border-radius:50%;background:#B0913F;}
.fan-narrow-leaf{font-family:'Ibarra Real Nova',serif;font-size:19px;line-height:1.3;color:var(--paper);}
.fan-stays{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(16px,1.6vw,19px);color:#BF9863;margin-top:clamp(24px,3vw,40px);}
.promise-network{font-size:14px;font-style:italic;line-height:1.62;color:#48443c;margin-top:16px;max-width:80ch;}
.promise-closing-wrap{margin-top:56px;border-left:3px solid var(--brass);padding-left:30px;max-width:60ch;}
.promise-closing{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(20px,2.1vw,24px);line-height:1.46;color:#3a3a30;}

/* 07 Check-Up 360° */
.cu-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(38px,4.2vw,58px);line-height:1;margin-top:0;white-space:nowrap;}
.cu-intro{margin-top:28px;}
.cu-lead{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(22px,2.3vw,30px);line-height:1.28;color:var(--moss);max-width:32ch;}
.cu-body{font-size:16px;line-height:1.68;color:#48443c;max-width:62ch;margin-top:20px;}
.cu-steps{position:relative;margin-top:clamp(56px,6.5vw,92px);}
.cu-track{position:absolute;left:0;top:12px;bottom:0;width:1px;background:rgba(46,58,40,.14);}
.cu-line{position:absolute;left:0;top:12px;bottom:0;width:1px;background:linear-gradient(to bottom,rgba(46,58,40,.4) 0%,rgba(46,58,40,.4) 44%,#B0913F 62%,#B0913F 100%);transform-origin:top center;}
.cu-step-one{display:grid;grid-template-columns:clamp(58px,7vw,104px) 1fr;gap:clamp(18px,2.6vw,40px);padding:0 0 clamp(52px,5.5vw,76px) 0;position:relative;}
.cu-dot{position:absolute;left:-4px;top:14px;width:9px;height:9px;border-radius:50%;background:#8f9a86;}
.cu-num{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3vw,40px);line-height:.9;color:rgba(46,58,40,.38);padding-left:clamp(18px,2.4vw,34px);}
.cu-step-body{max-width:60ch;}
.cu-step-label{font-size:10px;color:var(--mut);}
.cu-step-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(23px,2.4vw,32px);line-height:1.2;color:var(--moss);margin-top:12px;letter-spacing:-.008em;}
.cu-step-text{font-size:15.5px;line-height:1.68;color:#48443c;margin-top:14px;}
.cu-step-two{display:grid;grid-template-columns:clamp(58px,7vw,104px) 1fr;gap:clamp(18px,2.6vw,40px);padding:0 0 clamp(60px,6.5vw,92px) 0;position:relative;}
.cu-step-three{display:grid;grid-template-columns:clamp(58px,7vw,104px) 1fr;gap:clamp(18px,2.6vw,40px);padding:clamp(34px,3.6vw,52px) 0 clamp(52px,5.5vw,76px) 0;position:relative;border-top:1px solid rgba(176,145,63,.34);}
.cu-dot-plan{position:absolute;left:-6px;top:clamp(46px,4.6vw,68px);width:13px;height:13px;border-radius:50%;background:#B0913F;}
.cu-num-plan{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(38px,4.4vw,60px);line-height:.86;color:#8A6737;padding-left:clamp(16px,2.2vw,30px);}
.cu-plan-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(34px,4vw,54px);line-height:1.08;color:#8A6737;margin-top:16px;letter-spacing:-.014em;}
.cu-plan-text{font-size:17px;line-height:1.68;color:var(--moss);margin-top:22px;}
.cu-priorities{margin-top:clamp(24px,2.8vw,36px);border-left:2px solid #B0913F;padding-left:20px;}
.cu-priorities-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(20px,2.1vw,25px);line-height:1.2;color:#8A6737;}
.cu-priorities-list{display:flex;flex-direction:column;gap:9px;margin-top:14px;}
.cu-priority{font-size:10.5px;letter-spacing:.12em;color:var(--moss);}
.cu-arrow{color:#8A6737;}
.cu-step-four{display:grid;grid-template-columns:clamp(58px,7vw,104px) 1fr;gap:clamp(18px,2.6vw,40px);padding:0 0 clamp(10px,1.4vw,20px) 0;position:relative;}
.cu-dot-gold{position:absolute;left:-4px;top:14px;width:9px;height:9px;border-radius:50%;background:#B0913F;}
.cu-member-runs{font-family:'Ibarra Real Nova',serif;font-size:clamp(19px,2vw,23px);line-height:1.5;color:var(--moss);margin-top:clamp(36px,4vw,56px);max-width:58ch;}
.cu-price-row{display:flex;flex-wrap:wrap;gap:24px 64px;align-items:flex-end;margin-top:clamp(40px,4.4vw,60px);border-top:1px solid #d6cdb6;padding-top:clamp(28px,3vw,40px);}
.cu-price{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(48px,5.4vw,76px);line-height:.9;color:#8A6737;}
.cu-price-note{font-size:15px;color:#48443c;margin-top:12px;}
.cu-not-tests{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(19px,2vw,23px);line-height:1.44;color:var(--moss);max-width:40ch;}
.cu-cta{display:flex;margin-top:clamp(36px,4vw,52px);}

/* 08 The Year */
.year-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3.2vw,44px);line-height:1.18;max-width:26ch;margin-top:0;letter-spacing:-.01em;}
.year-route{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(20px,2.1vw,26px);color:#8A6737;margin-top:20px;}
.year-calendar{font-size:16px;line-height:1.72;color:#48443c;margin-top:22px;max-width:62ch;}
.yr-panel{background:var(--moss);color:var(--paper);padding:clamp(24px,3.4vw,48px);margin-top:clamp(40px,4.6vw,64px);}
.yr-graphic{container-type:inline-size;grid-column:1 / -1;margin-top:0;}
.yr-eyebrow{font-size:10px;color:#BF9863;margin-bottom:clamp(10px,1.4vw,20px);}
.yr-wrap{position:relative;padding:56px 0 96px;}
.yr-labels{position:absolute;left:0;right:0;top:56px;bottom:96px;pointer-events:none;}
.yr-l0{position:absolute;left:3.33%;top:78.57%;width:min(180px,18cqw);}
.yr-label-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:19px;line-height:1.22;color:var(--paper);}
.yr-label-body{font-size:14px;line-height:1.5;color:#a9b3a1;margin-top:7px;}
.yr-l1{position:absolute;left:27.08%;top:60.89%;transform:translate(-50%,-100%);width:min(180px,18cqw);text-align:center;}
.yr-l5{position:absolute;left:52.00%;top:61.43%;width:min(250px,21cqw);text-align:left;}
.yr-label-title-key{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(22px,2.4vw,28px);line-height:1.14;color:#BF9863;letter-spacing:-.012em;}
.yr-label-body-key{font-size:14px;line-height:1.5;color:var(--paper);margin-top:9px;}
.yr-l3{position:absolute;left:71.25%;top:39.64%;transform:translate(-50%,-100%);width:min(200px,19cqw);text-align:center;}
/* Wide timeline: the Month 12 title stays on one line, growing leftwards from its right-aligned edge. */
@container (min-width:840px){#yr-l4 .yr-label-title{display:flex;justify-content:flex-end;white-space:nowrap;}}
.yr-l4{position:absolute;left:96.67%;top:51.79%;transform:translateX(-100%);width:min(200px,19cqw);text-align:right;}
.yr-again{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(16px,1.6vw,19px);color:#BF9863;margin-top:clamp(12px,1.4vw,20px);text-align:right;}
.year-caption{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:15px;color:var(--mut);margin-top:14px;}
.year-rhythm{display:flex;flex-direction:column;margin-top:clamp(48px,5vw,72px);border-top:1px solid #d6cdb6;}
.year-rhythm-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px 40px;padding:24px 0;border-bottom:1px solid #d6cdb6;}
.year-first-call{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(22px,2.4vw,30px);line-height:1.3;color:var(--moss);margin-top:56px;max-width:30ch;}

/* 09 Membership */
.member-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px 56px;align-items:start;}
.member-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(30px,3.4vw,44px);line-height:1.06;color:var(--moss);letter-spacing:-.01em;}
.member-lead{font-family:'Ibarra Real Nova',serif;font-size:clamp(19px,2vw,22px);line-height:1.44;color:var(--moss);max-width:48ch;}
.member-body{font-size:16px;line-height:1.66;color:#48443c;margin-top:18px;max-width:60ch;}
.member-cards{display:flex;gap:26px;margin-top:48px;flex-wrap:wrap;}
.member-card{flex:1;min-width:300px;background:#fff;border:1px solid #cabf9f;padding:38px;display:flex;flex-direction:column;}
.member-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;}
.member-card-name{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:26px;color:var(--moss);}
.member-prime-price{font-family:'Ibarra Real Nova',serif;font-size:32px;color:var(--moss);}
.member-card-name,.member-card-name-exclusive{text-wrap:wrap;}
.member-price{white-space:nowrap;}
.member-per-month{font-size:9.5px;color:var(--mut);}
.member-prime-per-day{font-size:13.5px;color:var(--mut);text-align:right;margin-top:4px;}
.member-card-rule{width:100%;height:1px;background:#dcd2b8;margin:22px 0;}
.member-features{display:flex;flex-direction:column;gap:14px;flex-grow:1;}
.member-feature{font-size:14.5px;line-height:1.52;color:#48443c;}
.member-cta{display:block;text-align:center;margin-top:30px;font-size:14px;}
.member-card-exclusive{flex:1;min-width:300px;background:var(--moss);border:1px solid var(--moss);padding:38px;color:var(--paper);display:flex;flex-direction:column;}
.member-card-name-exclusive{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:26px;}
.member-exclusive-word{color:var(--brass);}
.member-exclusive-price{font-family:'Ibarra Real Nova',serif;font-size:32px;}
.member-per-month-exclusive{font-size:9.5px;color:#96A391;}
.member-card-rule-exclusive{width:100%;height:1px;background:rgba(244,240,231,.2);margin:22px 0;}
.member-exclusive-plus{font-size:10.5px;color:#BF9863;margin-bottom:14px;}
.member-feature-exclusive{font-size:14.5px;line-height:1.52;color:#cdd4c6;}
.member-cta-exclusive{display:block;text-align:center;margin-top:30px;font-size:14px;border:1px solid transparent;}
.member-excludes{margin-top:64px;margin-bottom:8px;background:var(--stone);padding:clamp(24px,3vw,36px);}
.member-excludes-title{font-size:10px;color:var(--moss);}
.member-excludes-body{font-size:15px;line-height:1.66;color:#48443c;margin-top:14px;max-width:80ch;}

/* 10 The Place */
.villa{background:var(--moss);color:var(--paper);padding-bottom:clamp(88px,10vw,128px);}
.villa-photo-frame{position:relative;height:clamp(420px,72vw,860px);overflow:hidden;}
.villa-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 38%;display:block;}
.villa-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(46,58,40,.28) 0%,rgba(46,58,40,0) 22%,rgba(46,58,40,0) 52%,rgba(46,58,40,.72) 80%,#2E3A28 100%);}
.villa-border{position:absolute;left:clamp(14px,2.4vw,28px);right:clamp(14px,2.4vw,28px);top:clamp(14px,2.4vw,28px);bottom:0;border:1px solid rgba(181,137,76,.42);border-bottom:none;pointer-events:none;}
.villa-inner{position:relative;max-width:1180px;margin:clamp(-200px,-13vw,-72px) auto 0;padding:0 clamp(24px,6vw,72px);}
.villa-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px clamp(40px,6vw,96px);align-items:start;}
.villa-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(34px,4.2vw,60px);line-height:1.04;max-width:12ch;margin-top:0;letter-spacing:-.014em;color:var(--paper);}
.villa-text{padding-top:clamp(0px,1vw,12px);}
.villa-p{font-size:16px;line-height:1.72;color:#cdd4c6;max-width:46ch;}
.villa-p2{font-size:16px;line-height:1.72;color:#cdd4c6;margin-top:18px;max-width:46ch;}
.villa-address-row{display:flex;align-items:center;gap:14px;margin-top:32px;}
.villa-address-rule{width:28px;height:1px;background:var(--brass);}
.villa-address{font-size:9.5px;color:#cdd4c6;line-height:1.9;}

/* FAQ */
.faq-layout{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(32px,5vw,72px);align-items:start;}
.faq-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3.2vw,42px);line-height:1.14;margin-top:0;letter-spacing:-.012em;max-width:16ch;}
.faq-item{border-top:1px solid #d6cdb6;}
.faq-h{font:inherit;text-wrap:inherit;}
.faq-q{width:100%;background:none;border:none;color:inherit;display:flex;justify-content:space-between;align-items:flex-start;gap:clamp(20px,3vw,44px);padding:clamp(22px,2.4vw,30px) 0;cursor:pointer;text-align:left;font:inherit;}
.faq-q-text{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(19px,2vw,23px);line-height:1.3;color:var(--moss);}
.faq-icon{font-family:'Ibarra Real Nova',serif;font-size:26px;line-height:1;color:#8A6737;transition:transform .25s ease;flex:0 0 auto;}
.faq-a{overflow:hidden;max-height:0;opacity:0;transition:max-height .25s ease,opacity .25s ease;}
.faq-a-text{font-family:'Ibarra Real Nova',serif;font-size:17px;line-height:1.66;color:#48443c;max-width:64ch;padding-bottom:clamp(24px,2.6vw,34px);}
.faq-item-last{border-top:1px solid #d6cdb6;border-bottom:1px solid #d6cdb6;}

/* Begin / Contact */
.contact{background:var(--moss);color:var(--paper);position:relative;overflow:hidden;padding:clamp(88px,10vw,128px) clamp(24px,6vw,72px);}
.contact-glow{position:absolute;inset:0;background:radial-gradient(120% 70% at 50% 100%,rgba(181,137,76,.14),transparent 58%);}
.contact-inner{position:relative;max-width:1180px;margin:0 auto;}
.contact-head{text-align:center;max-width:680px;margin:0 auto 56px;}
.contact-title{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(30px,3.6vw,48px);line-height:1.14;margin-top:0;letter-spacing:-.01em;}
.contact-intro{font-size:16px;line-height:1.7;color:#cdd4c6;margin-top:22px;}
.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;}
.contact-card{background:var(--moss-deep);padding:clamp(28px,3vw,40px);border-top:2px solid var(--brass);}
.contact-card-label{font-size:10.5px;color:var(--brass);}
.contact-card-price{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3vw,38px);color:var(--paper);margin-top:14px;}
.contact-card-body{font-size:15px;line-height:1.66;color:#cdd4c6;margin-top:16px;}
.contact-doors{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:clamp(18px,1.9vw,22px);line-height:1.5;color:var(--paper);margin:40px auto 0;max-width:60ch;text-align:center;}
.contact-bottom{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:48px 64px;margin-top:clamp(56px,6vw,84px);}
.contact-direct{display:flex;flex-direction:column;gap:18px;align-self:center;}
.contact-phone{font-family:'Ibarra Real Nova',serif;font-weight:500;font-size:clamp(28px,3vw,38px);color:var(--paper);}
.contact-phone-link,.contact-phone-link:hover{color:var(--paper);}
.contact-contact-name{font-size:15.5px;color:#cdd4c6;}
.contact-form-panel{background:var(--moss-deep);padding:40px;}
.contact-form-title{font-size:11px;color:var(--brass);margin-bottom:22px;}
.contact-form{display:flex;flex-direction:column;gap:18px;}
.contact-input{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(244,240,231,.3);padding:12px 2px;font-family:'Hanken Grotesk',sans-serif;font-size:15px;color:var(--paper);outline:none;}
.contact-select{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(244,240,231,.3);padding:12px 2px;font-family:'Hanken Grotesk',sans-serif;font-size:15px;color:#cdd4c6;outline:none;}
.contact-option{color:#26241c;}
.contact-form-submit{border:none;margin-top:8px;cursor:pointer;font-family:inherit;}
.contact-select:invalid{color:rgba(244,240,231,.55);}
.contact-hp{position:absolute;left:-10000px;width:1px;height:1px;opacity:0;}
.contact-consent{display:flex;align-items:flex-start;gap:12px;margin-top:6px;font-size:13px;line-height:1.55;color:#cdd4c6;cursor:pointer;}
.contact-consent-box{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:#B5894C;cursor:pointer;}
.contact-form-submit[aria-busy="true"]{opacity:.6;cursor:progress;}
.contact-form-status p{margin-top:22px;font-size:15px;line-height:1.6;color:#cdd4c6;}
.contact-form-sent{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:19px!important;color:var(--paper)!important;}
.contact-form-phone{color:#BF9863;white-space:nowrap;}
.contact-form-phone:hover{color:var(--paper);}

/* Footer */
.footer{background:#1c2418;color:#93a08e;padding:36px clamp(24px,6vw,72px);}
.footer-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-address{font-size:9.5px;line-height:1.9;}
.footer-tagline{font-family:'Ibarra Real Nova',serif;font-style:italic;font-size:17px;color:var(--paper);}

/* Phones: the nav keeps only the logo, the language switch and "Begin" (no menu). */
@media (max-width:760px){
  .nav-links .navlink:not([hreflang]){display:none;}
  .nav-links{margin-left:auto;margin-right:20px;}
}

/* ==== BEGIN interim fix: Romanian ș ț Ș Ț =====================================================
   Ibarra Real Nova draws ș/ț with an attached hook that reads as a cedilla (ş/ţ). Until the
   display face is settled, these four letters come from EB Garamond (OFL), scaled to Ibarra's
   x-height (size-adjust) and declared under the same family and weight ranges, so they replace
   only those glyphs wherever Ibarra is used. ~2.5 KB per style, downloaded only when needed.
   To remove: delete this block and assets/fonts/diacritics/. Nothing else depends on it. */
@font-face { font-family: 'Ibarra Real Nova'; font-style: normal; font-weight: 400 700; font-display: swap; src: url(/assets/fonts/diacritics/eb-garamond-st-roman.woff2) format('woff2'); unicode-range: U+0218-021B; size-adjust: 104.8%; }
@font-face { font-family: 'Ibarra Real Nova'; font-style: italic; font-weight: 400 500; font-display: swap; src: url(/assets/fonts/diacritics/eb-garamond-st-italic.woff2) format('woff2'); unicode-range: U+0218-021B; size-adjust: 104.8%; }
/* ==== END interim fix: Romanian ș ț Ș Ț ======================================================= */
