@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@300;400;500&display=swap');

:root{
  --paper:#fbf5ee;
  --paper-light:#fffaf5;
  --paper-deep:#f7ece2;
  --ink:#171411;
  --muted:#675b52;
  --red:#b30f24;
  --red-dark:#950b1c;
  --line:rgba(112,82,63,.20);
  --rose:#d98a82;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Inter",Arial,sans-serif;
  --shadow:0 16px 42px rgba(73,45,28,.08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);line-height:1.35;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:min(1180px,calc(100% - 56px));margin-inline:auto}

/* HEADER */
.home-header{position:sticky;top:0;z-index:100;background:rgba(251,245,238,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(79,51,34,.10);transition:box-shadow .25s ease,background-color .25s ease}
.home-header.is-scrolled{box-shadow:0 10px 30px rgba(67,41,25,.07);background:rgba(251,245,238,.985)}
.home-nav{height:78px;display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:30px}
.brand-wordmark{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:max-content;line-height:1;color:#171411}
.brand-main{font-family:var(--serif);font-size:29px;font-weight:600;letter-spacing:.16em;line-height:.82}
.brand-sub{display:flex;align-items:center;gap:7px;font-family:var(--sans);font-size:8px;letter-spacing:.42em;margin-top:8px}
.brand-sub i{display:block;width:14px;height:1px;background:var(--red)}
.home-desktop-nav{display:flex;justify-content:center;align-items:center;gap:38px;font-size:18px}
.home-desktop-nav a{position:relative;padding:10px 0}
.home-desktop-nav a::after{content:"";position:absolute;left:50%;bottom:2px;width:0;height:1px;background:var(--red);transition:.25s ease;transform:translateX(-50%)}
.home-desktop-nav a:hover::after{width:100%}
.home-nav-actions{display:flex;align-items:center;gap:20px}
.home-lang{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:11px;letter-spacing:.14em}
.home-lang a{opacity:.45;transition:.2s ease}
.home-lang a.active,.home-lang a:hover{opacity:1;color:var(--red)}
.home-lang span{opacity:.25}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:0 28px;border:1px solid var(--red);border-radius:999px;background:var(--red);color:#fff;font-size:18px;box-shadow:0 5px 13px rgba(179,15,36,.09);transition:background .22s ease,transform .22s ease,box-shadow .22s ease}
.btn span{display:inline-block;transition:transform .22s ease}
.btn-small{min-height:42px;padding-inline:24px;font-size:16px}
.btn:hover{background:var(--red-dark);transform:translateY(-1px);box-shadow:0 9px 20px rgba(179,15,36,.12)}
.btn:hover span{transform:translateX(4px)}
.home-menu-toggle{display:none;width:40px;height:40px;border:0;background:transparent;position:relative;cursor:pointer}
.home-menu-toggle span{position:absolute;left:8px;right:8px;height:1px;background:#221d19;transition:.22s ease}
.home-menu-toggle span:first-child{top:15px}.home-menu-toggle span:last-child{top:23px}
.home-menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.home-menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.home-mobile-drawer{border-top:1px solid var(--line);background:rgba(251,245,238,.99)}
.home-mobile-drawer[hidden]{display:none}
.home-mobile-drawer .container{display:grid;gap:0;padding-block:10px 18px}
.home-mobile-drawer a:not(.btn){padding:14px 0;border-bottom:1px solid rgba(112,82,63,.10);font-size:20px}
.home-mobile-drawer .btn{margin-top:16px}

/* HERO */
.home-hero{position:relative;min-height:700px;overflow:hidden;background:radial-gradient(circle at 75% 45%,rgba(218,161,144,.10),transparent 36%),linear-gradient(180deg,#fbf5ee 0%,#fbf4ed 78%,#fdf9f4 100%)}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);align-items:center;gap:18px;min-height:665px;padding:24px 0 54px}
.home-hero-copy,.home-hero-art{min-width:0}
.home-hero-copy{position:relative;z-index:4;padding-top:26px}
.home-countries{font-family:var(--sans);font-size:12px;letter-spacing:.34em;text-transform:uppercase;margin-bottom:14px}
.home-accent-line{display:block;width:45px;height:2px;background:var(--red);margin-bottom:27px}
.home-hero h1{font-size:clamp(70px,5.9vw,87px);line-height:.91;letter-spacing:-.035em;font-weight:500;max-width:575px;margin:0 0 24px}
.home-hero h1 em{display:inline-block;color:var(--red);font-style:normal;font-weight:500;margin-top:5px}
.home-lead{max-width:455px;font-size:20px;line-height:1.35;color:#39312b;margin:0 0 31px}
.home-primary-cta{min-width:260px}
.home-hero-art{position:relative;z-index:2;display:flex;align-items:center;justify-content:flex-end;min-height:600px}
.home-hero-art::before{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:radial-gradient(circle,rgba(226,181,161,.18),rgba(226,181,161,0) 70%);right:6%;top:50%;transform:translateY(-50%)}
.home-hero-art img{position:relative;z-index:2;width:min(100%,655px);max-height:630px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 18px 25px rgba(81,50,30,.055));transform:translate(12px,8px)}
.home-explore{position:absolute;left:50%;bottom:17px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;font-family:var(--sans);font-size:9px;letter-spacing:.34em;text-transform:uppercase;z-index:5}
.home-explore i{font-family:var(--serif);font-style:normal;font-size:23px;line-height:1}
.home-petal{position:absolute;width:18px;height:10px;border-radius:70% 25% 70% 25%;background:rgba(217,131,125,.46);transform:rotate(-22deg);z-index:1}
.home-petal.p1{left:43%;top:17%}.home-petal.p2{right:9%;top:19%;transform:rotate(26deg) scale(.7)}.home-petal.p3{right:4%;bottom:17%;transform:rotate(-48deg) scale(.85)}

/* APPROACH / PROGRESSION */
.home-approach{background:var(--paper-light);padding:92px 0 78px}
.home-approach-inner{max-width:930px;margin-inline:auto}
.home-section-label{display:flex;align-items:center;gap:14px;font-family:var(--sans);font-size:12px;letter-spacing:.30em;text-transform:uppercase;color:#39312b}
.home-section-label::before{content:"";display:block;width:33px;height:2px;background:var(--red)}
.home-approach h2{font-size:clamp(52px,4.5vw,66px);line-height:1;font-weight:500;letter-spacing:-.02em;margin:14px 0 38px}
.home-approach-copy{max-width:740px;padding-left:30px;border-left:1px solid rgba(179,15,36,.46)}
.home-approach-copy p{font-size:19px;line-height:1.44;color:#403731;margin:0 0 15px}
.home-statement{position:relative;width:min(100%,610px);margin:44px auto 54px;text-align:center;padding:18px 26px 17px;font-style:italic}
.home-statement::before{content:"";position:absolute;inset:0 -40px;background:radial-gradient(ellipse,rgba(223,158,151,.18),rgba(223,158,151,0) 72%);z-index:0}
.home-statement span,.home-statement strong{position:relative;z-index:1;display:block}
.home-statement span{font-size:24px}.home-statement strong{font-size:30px;color:var(--red);font-weight:500}
.home-journey{--journey-progress:0;position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:44px;max-width:900px;margin-inline:auto;padding-top:1px}
.home-journey::before{content:"";position:absolute;left:15.5%;right:15.5%;top:11px;height:1px;background:rgba(116,90,71,.36)}
.home-journey::after{content:"";position:absolute;left:15.5%;right:15.5%;top:11px;height:2px;background:var(--red);transform-origin:left center;transform:scaleX(var(--journey-progress));transition:transform .18s linear}
.home-journey-step{position:relative;text-align:center;padding-top:36px;min-width:0;opacity:.48;transform:translateY(4px);transition:opacity .28s ease,transform .28s ease}
.home-step-dot{position:absolute;top:0;left:50%;transform:translateX(-50%);width:21px;height:21px;border-radius:50%;border:1px solid rgba(116,90,71,.38);background:var(--paper-light);z-index:2}
.home-journey-step.is-active,.home-journey-step.is-past{opacity:1;transform:none}.home-journey-step.is-active .home-step-dot,.home-journey-step.is-past .home-step-dot{background:var(--red);border-color:var(--red);box-shadow:0 0 0 4px var(--paper-light),0 0 0 5px var(--red)}
.home-step-icon{width:42px;height:42px;margin:0 auto 10px;object-fit:contain}
.home-step-label{font-family:var(--sans);font-size:10px;letter-spacing:.30em;text-transform:uppercase;margin-bottom:9px}
.home-journey-step h3{font-size:21px;font-weight:600;margin:0 0 4px}
.home-journey-step p{font-size:16px;line-height:1.35;color:#4e433c;margin:0}

/* IMMERSIONS */
.home-immersions{position:relative;overflow:hidden;padding:66px 0 112px;background:linear-gradient(180deg,#fbf4ec 0%,#fbf5ee 74%,#f8ede3 100%)}
.home-immersions>.container{position:relative;z-index:3}
.home-immersions-head{text-align:center;max-width:800px;margin:0 auto 43px}
.home-immersions-head .home-accent-line{margin:0 auto 23px}
.home-immersions-head .home-section-label{justify-content:center;margin-bottom:12px}
.home-immersions-head .home-section-label::before{display:none}
.home-immersions-head h2{font-size:clamp(53px,4.7vw,69px);line-height:.98;font-weight:500;letter-spacing:-.025em;margin:0 0 9px}
.home-immersions-head p{font-size:20px;line-height:1.3;color:#473d36;margin:0}
.home-immersion-list{width:min(100%,990px);margin-inline:auto;display:grid;gap:17px}
.home-immersion-card{position:relative;display:grid;grid-template-columns:35% 65%;min-height:290px;border:1px solid rgba(124,91,69,.14);border-radius:11px;overflow:hidden;background:rgba(255,250,246,.86);box-shadow:0 10px 32px rgba(68,42,26,.055);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.home-immersion-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(68,42,26,.09);border-color:rgba(124,91,69,.22)}
.home-immersion-copy{position:relative;z-index:4;padding:31px 24px 29px 31px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.home-immersion-card::after{content:"";position:absolute;z-index:3;left:31.5%;top:0;bottom:0;width:122px;pointer-events:none;background:linear-gradient(90deg,rgba(255,250,246,1) 0%,rgba(255,250,246,.78) 34%,rgba(255,250,246,0) 100%)}
.home-immersion-num{color:var(--red);font-size:24px;line-height:1;margin-bottom:8px}
.home-immersion-num::after{content:"";display:block;width:29px;height:1px;background:var(--red);margin-top:9px}
.home-immersion-meta{font-family:var(--sans);font-size:10px;letter-spacing:.30em;text-transform:uppercase;margin-bottom:14px}
.home-immersion-card h3{font-size:42px;line-height:.96;letter-spacing:-.02em;font-weight:500;margin:0 0 12px}
.home-immersion-card p{font-size:17px;line-height:1.33;color:#554942;margin:0 0 19px}
.home-immersion-card .btn{min-height:40px;padding-inline:22px;font-size:15px;white-space:nowrap}
.home-immersion-image{position:relative;min-width:0;overflow:hidden}
.home-immersion-image img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.005);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.home-immersion-card:hover .home-immersion-image img{transform:scale(1.035)}
.home-soon-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 16px;border:1px solid rgba(116,89,69,.36);border-radius:999px;font-family:var(--sans);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:#786960}
.home-mountain-wash{position:absolute;z-index:1;left:0;right:0;bottom:0;height:205px;background:url('assets/icons/mountain-wash.svg') center bottom/100% 100% no-repeat;opacity:.72;pointer-events:none}
.home-endnote{position:relative;background:#f8ede3;padding:18px 0 28px}
.home-endnote .container{display:flex;align-items:center;justify-content:center;gap:24px}
.home-endnote span{width:170px;height:1px;background:rgba(116,89,69,.33)}
.home-endnote strong{font-family:var(--sans);font-size:9px;letter-spacing:.39em;font-weight:400}


/* SOCIAL PROOF */
.home-testimonials{background:var(--paper-light);padding:90px 0 80px}
.home-testimonials-head{text-align:center;max-width:760px;margin:0 auto 42px}
.home-testimonials-head .home-accent-line{margin:0 auto 24px}
.home-testimonials-head h2{font-size:clamp(50px,4.5vw,66px);line-height:1;font-weight:500;letter-spacing:-.025em;margin:0 0 10px}
.home-testimonials-head p{font-size:22px;color:#4d423a;margin:0}
.home-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1080px;margin:0 auto}
.home-testimonial-card{position:relative;padding:18px 46px 10px;min-height:430px;border-right:1px solid rgba(112,82,63,.18);display:flex;flex-direction:column}
.home-testimonial-card:last-child{border-right:0}
.home-testimonial-symbol{height:54px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;color:#a85c53}
.home-testimonial-symbol img{width:46px;height:46px;object-fit:contain;opacity:.72}
.home-testimonial-symbol svg{width:49px;height:49px;fill:none;stroke:#a85c53;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.home-quote-mark{font-size:54px;color:var(--red);line-height:.7;margin:6px 0 4px}
.home-testimonial-card p{font-size:20px;line-height:1.35;color:#403730;margin:0 0 18px}
.home-card-rule{display:block;width:32px;height:1px;background:var(--red);margin:8px auto 14px}
.home-testimonial-card strong{text-align:center;font-size:27px;font-weight:500}
.home-testimonial-card small{text-align:center;font-family:var(--sans);font-size:9px;letter-spacing:.27em;text-transform:uppercase;color:#5d5149;margin-top:3px}
.home-testimonials-cta{text-align:center;max-width:650px;margin:42px auto 0;padding-top:31px;border-top:1px solid rgba(112,82,63,.16)}
.home-testimonials-cta h3{font-size:39px;font-weight:500;margin:0 0 2px}.home-testimonials-cta p{font-size:21px;margin:0 0 19px;color:#51463e}

/* HOME FAQ */
.home-faq{background:#fcf7f1;padding:88px 0 78px}
.home-faq-inner{max-width:980px}
.home-faq-head{text-align:center;max-width:780px;margin:0 auto 35px}
.home-faq-head .home-accent-line{margin:0 auto 20px}
.home-faq-head .home-section-label{justify-content:center;margin-bottom:8px}.home-faq-head .home-section-label::before{display:none}
.home-faq-head h2{font-size:clamp(48px,4.4vw,63px);line-height:1;font-weight:500;letter-spacing:-.02em;margin:0 0 8px}
.home-faq-head p{font-size:21px;color:#51463f;margin:0}
.home-faq-list{display:grid;gap:12px}
.home-faq-item{border:1px solid rgba(112,82,63,.18);border-radius:11px;background:rgba(255,250,246,.62);overflow:hidden}
.home-faq-item button{width:100%;display:grid;grid-template-columns:58px minmax(0,1fr) 28px;gap:14px;align-items:center;border:0;background:transparent;color:var(--ink);text-align:left;padding:18px 24px;cursor:pointer}
.home-faq-num{font-size:20px;color:var(--red);padding-right:16px;border-right:1px solid rgba(112,82,63,.26)}
.home-faq-item button span:nth-child(2){font-size:21px}
.home-faq-item button i{font-size:27px;font-style:normal;font-weight:300;text-align:center;line-height:1}
.home-faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .34s cubic-bezier(.2,.7,.2,1)}
.home-faq-answer>div{overflow:hidden}
.home-faq-answer>div{margin:0 18px;background:#f7eee6;border-radius:9px;padding:0 26px;font-size:17px;line-height:1.48;color:#4b4038;transition:padding .34s ease,margin .34s ease}
.home-faq-item.is-open .home-faq-answer{grid-template-rows:1fr}
.home-faq-item.is-open .home-faq-answer>div{padding:18px 26px;margin:0 18px 18px}
.home-faq-more{text-align:center;margin-top:24px}.home-faq-more a{font-size:18px;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.home-faq-more span{color:var(--red);margin-left:6px}

/* FINAL CTA */
.home-final-cta{background:#fcf7f1;padding:8px 0 58px}
.home-final-cta-card{position:relative;overflow:hidden;border-radius:16px;min-height:350px;display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:0 12px 36px rgba(72,44,28,.055)}
.home-final-cta-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.86) brightness(1.06);z-index:0}
.home-final-cta-card::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(252,247,241,.16),rgba(252,247,241,.08) 32%,rgba(252,247,241,.08) 68%,rgba(252,247,241,.18));pointer-events:none}
.home-final-cta-card::after{content:"";position:absolute;z-index:1;left:17%;right:17%;top:0;bottom:0;background:linear-gradient(90deg,transparent 0,rgba(251,245,238,.985) 12%,rgba(251,245,238,.99) 88%,transparent 100%);pointer-events:none}
.home-final-cta-content{position:relative;z-index:2;padding:40px 36px;max-width:610px}
.home-final-cta-content .home-section-label{justify-content:center;margin-bottom:12px}.home-final-cta-content .home-section-label::before{display:none}
.home-final-cta-content .home-accent-line{margin:0 auto 18px}
.home-final-cta-content h2{font-size:clamp(50px,4.6vw,66px);font-weight:500;line-height:1;margin:0 0 8px}
.home-final-cta-content p{font-size:20px;line-height:1.35;margin:0 0 23px;color:#4a4039}

/* FOOTER */
.home-footer{border-top:1px solid rgba(112,82,63,.18);background:#fcf7f1;padding:32px 0 38px}
.footer-grid{display:grid;grid-template-columns:1.15fr 1fr .95fr;gap:42px;align-items:start}
.brand-wordmark-footer .brand-main{font-size:18px}.brand-wordmark-footer .brand-sub{font-size:6px;gap:5px;margin-top:5px}.brand-wordmark-footer .brand-sub i{width:10px}
.footer-brand p{font-size:16px;margin:11px 0 0;color:#473d36}
.footer-links{display:flex;gap:26px;flex-wrap:wrap;font-size:15px;padding-top:4px}
.footer-links a{text-decoration-thickness:1px;text-underline-offset:4px}.footer-links a:hover{text-decoration:underline}
.footer-legal{text-align:right;font-size:14px;line-height:1.5;color:#4a4039}

/* MOTION */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
@media (hover:hover) and (pointer:fine){.home-hero-art img{animation:homeFloat 7.5s ease-in-out infinite}@keyframes homeFloat{0%,100%{transform:translate(12px,8px)}50%{transform:translate(12px,-2px)}}}

/* TABLET */
@media(max-width:1040px){
  .home-nav{grid-template-columns:150px 1fr auto}.home-desktop-nav{gap:30px}
  .home-hero-grid{grid-template-columns:.9fr 1.1fr}.home-hero h1{font-size:64px}.home-hero-art img{width:min(100%,560px)}
}
@media(max-width:900px){
  .container{width:min(100% - 34px,760px)}
  .home-nav{height:68px;grid-template-columns:1fr auto;gap:12px}
  .home-desktop-nav,.home-passport-desktop{display:none}.home-menu-toggle{display:block}.home-nav-actions{gap:11px}
  .brand-main{font-size:23px}.brand-sub{font-size:8px}
  .home-hero{min-height:auto}
  .home-hero-grid{grid-template-columns:1fr;min-height:0;padding-top:28px;padding-bottom:74px}
  .home-hero-copy{padding-top:24px;max-width:680px}
  .home-hero h1{font-size:clamp(58px,9.5vw,76px);max-width:660px}
  .home-hero-art{min-height:455px;margin-top:-10px;justify-content:center}
  .home-hero-art img{width:min(88vw,590px);transform:none}
  .home-approach{padding:72px 0 64px}
  .home-journey{gap:22px}
  .home-immersion-card{grid-template-columns:1fr;min-height:0}.home-immersion-card::after{display:none}
  .home-immersion-image{order:-1;height:295px}.home-immersion-copy{padding:27px 28px 29px}
  .home-testimonial-card{padding-inline:28px}.home-testimonial-card p{font-size:18px}
  .home-faq-inner{max-width:760px}
}

/* MOBILE */
@media(max-width:560px){
  .container{width:calc(100% - 30px)}
  .home-nav{height:62px}
  .brand-main{font-size:20px}.brand-sub{font-size:7px;margin-top:5px}.brand-sub i{width:10px}
  .home-lang{font-size:10px;gap:5px}.home-menu-toggle{width:38px;height:38px}
  .home-mobile-drawer .container{width:calc(100% - 30px)}
  .home-mobile-drawer a:not(.btn){font-size:19px}
  .home-hero-grid{width:calc(100% - 30px);padding-top:18px;padding-bottom:64px}
  .home-hero-copy{padding-top:16px}
  .home-countries{font-size:9px;letter-spacing:.29em;margin-bottom:10px}.home-accent-line{margin-bottom:19px}
  .home-hero h1{font-size:clamp(49px,13.5vw,61px);line-height:.91;max-width:355px;margin-bottom:18px}
  .home-lead{font-size:16.5px;max-width:338px;margin-bottom:22px}
  .home-primary-cta{min-width:0;width:auto;padding-inline:22px;font-size:15px;min-height:44px}
  .home-hero-art{min-height:352px;margin-top:6px}
  .home-hero-art::before{width:350px;height:350px;right:50%;transform:translate(50%,-50%)}
  .home-hero-art img{width:min(100%,470px);max-width:100%;transform:none;mix-blend-mode:multiply}
  .home-petal.p1{left:6%;top:45%}.home-petal.p2{right:6%;top:52%}
  .home-explore{bottom:12px}
  .home-approach{padding:55px 0 53px}
  .home-section-label{font-size:9px;letter-spacing:.26em;gap:10px}.home-section-label::before{width:26px}
  .home-approach h2{font-size:42px;line-height:.98;margin:12px 0 28px}
  .home-approach-copy{padding-left:16px}.home-approach-copy p{font-size:16px;line-height:1.44}
  .home-statement{margin:35px auto 42px;padding:14px 8px}.home-statement::before{inset:0}.home-statement span{font-size:18px}.home-statement strong{font-size:24px}
  .home-journey{display:grid;grid-template-columns:1fr;gap:0;padding-left:44px}
  .home-journey::before{left:13px;right:auto;top:10px;bottom:18px;width:1px;height:auto;background:rgba(116,90,71,.34)}
  .home-journey::after{left:13px;right:auto;top:10px;bottom:18px;width:2px;height:auto;background:var(--red);transform-origin:center top;transform:scaleY(var(--journey-progress))}
  .home-journey-step{text-align:left;padding:0 0 34px 0;display:grid;grid-template-columns:44px 1fr;grid-template-areas:"icon label" "icon title" "icon text";column-gap:12px}
  .home-step-dot{left:-31px;top:2px;transform:none;width:19px;height:19px}
  .home-step-icon{grid-area:icon;width:38px;height:38px;margin:1px 0 0}
  .home-step-label{grid-area:label;margin:0 0 5px;font-size:9px}
  .home-journey-step h3{grid-area:title;margin:0 0 3px;font-size:20px}.home-journey-step p{grid-area:text;font-size:15px}
  .home-immersions{padding:51px 0 84px}
  .home-immersions-head{margin-bottom:28px}.home-immersions-head .home-accent-line{margin-bottom:18px}
  .home-immersions-head h2{font-size:43px}.home-immersions-head p{font-size:16.5px}.desktop-only{display:none}
  .home-immersion-list{gap:16px}.home-immersion-image{height:225px}.home-immersion-copy{padding:23px 20px 24px}
  .home-immersion-card h3{font-size:35px}.home-immersion-card p{font-size:16px}.home-immersion-card .btn{width:100%;font-size:15px;padding-inline:18px}
  .home-testimonials{padding:58px 0 54px}.home-testimonials-head{margin-bottom:26px}.home-testimonials-head h2{font-size:42px}.home-testimonials-head p{font-size:18px}
  .home-testimonial-grid{grid-template-columns:1fr}.home-testimonial-card{min-height:0;padding:24px 8px 30px;border-right:0;border-bottom:1px solid rgba(112,82,63,.16)}.home-testimonial-card:last-child{border-bottom:0}.home-testimonial-card p{font-size:17px}.home-testimonial-symbol{height:46px}.home-testimonials-cta{margin-top:26px}.home-testimonials-cta h3{font-size:32px}.home-testimonials-cta p{font-size:18px}.home-testimonials-cta .btn{width:100%}
  .home-faq{padding:58px 0 52px}.home-faq-head{margin-bottom:26px}.home-faq-head h2{font-size:41px}.home-faq-head p{font-size:17px}.home-faq-list{gap:9px}.home-faq-item button{grid-template-columns:43px minmax(0,1fr) 24px;gap:10px;padding:15px 14px}.home-faq-num{font-size:17px;padding-right:10px}.home-faq-item button span:nth-child(2){font-size:17px;line-height:1.2}.home-faq-item button i{font-size:23px}.home-faq-answer>div{font-size:15.5px;margin-inline:10px;padding-inline:18px}.home-faq-item.is-open .home-faq-answer>div{padding:15px 18px;margin:0 10px 10px}
  .home-final-cta{padding-bottom:40px}.home-final-cta-card{min-height:360px;border-radius:13px}.home-final-cta-card::after{left:0;right:0;top:0;bottom:0;background:rgba(251,245,238,.965)}.home-final-cta-content{padding:36px 24px}.home-final-cta-content h2{font-size:43px}.home-final-cta-content p{font-size:17px}.home-final-cta-content .btn{width:100%}
  .home-endnote span{width:74px}.home-endnote strong{font-size:8px}
  .footer-grid{grid-template-columns:1fr;text-align:left;gap:24px}.footer-links{justify-content:flex-start}.footer-legal{text-align:left}
}
@media(max-width:380px){
  .home-nav-actions{gap:4px}.home-lang{font-size:8px}.brand-main{font-size:18px}
  .home-hero h1{font-size:47px}.home-primary-cta{width:100%}.home-hero-art{min-height:330px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important;transition:none!important}.home-hero-art img{animation:none!important}.btn,.btn span,.home-immersion-card,.home-immersion-image img,.home-faq-answer{transition:none!important}
}

/* integrated legal links */
.footer-legal.footer-legal-links{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.footer-legal.footer-legal-links a:hover{color:var(--red);text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.footer-legal.footer-legal-links{align-items:flex-start}}

/* === V6 visual integration: transparent artwork + shared watercolor scenery === */
.home-hero{
  background:
    linear-gradient(90deg,rgba(251,245,238,.98) 0%,rgba(251,245,238,.95) 36%,rgba(251,245,238,.74) 58%,rgba(251,245,238,.38) 100%),
    url('assets/scenic-watercolor.jpg') center bottom/cover no-repeat;
}
.home-hero::after{content:"";position:absolute;inset:auto 0 0;height:165px;background:linear-gradient(180deg,transparent,var(--paper-light));pointer-events:none;z-index:1}
.home-hero-art{z-index:3}
.home-hero-art::before{width:610px;height:610px;background:radial-gradient(circle,rgba(255,250,245,.7) 0%,rgba(226,181,161,.13) 47%,transparent 72%)}
.home-hero-art img{width:min(100%,690px);max-height:640px;mix-blend-mode:normal;filter:drop-shadow(0 20px 34px rgba(73,45,28,.11));transform:translate(20px,4px)}
.home-final-cta-card>img{filter:saturate(.86) brightness(1.08);object-position:center 52%}
.home-final-cta-card::before{background:linear-gradient(180deg,rgba(252,247,241,.10),rgba(252,247,241,.22))}
.home-final-cta-card::after{left:20%;right:20%;background:linear-gradient(90deg,transparent,rgba(251,245,238,.98) 13%,rgba(251,245,238,.985) 87%,transparent)}
@media(max-width:900px){
  .home-hero{background:linear-gradient(180deg,rgba(251,245,238,.99) 0%,rgba(251,245,238,.92) 54%,rgba(251,245,238,.62) 100%),url('assets/scenic-watercolor.jpg') center bottom/cover no-repeat}
  .home-hero-art img{mix-blend-mode:normal;width:min(92vw,610px);transform:none}
}
@media(max-width:620px){
  .home-hero::after{height:110px}
  .home-hero-art img{width:min(108%,500px);max-width:none}
  .home-final-cta-card::after{background:rgba(251,245,238,.94)}
}


/* V7 final CTA: no white rectangle in the centre */
.home-final-cta-card::after{left:0!important;right:0!important;top:0!important;bottom:0!important;background:radial-gradient(ellipse at center,rgba(251,245,238,.88) 0%,rgba(251,245,238,.68) 35%,rgba(251,245,238,.20) 66%,rgba(251,245,238,0) 86%)!important;pointer-events:none}
@media(max-width:900px){.home-final-cta-card::after{background:radial-gradient(ellipse at center,rgba(251,245,238,.90) 0%,rgba(251,245,238,.72) 42%,rgba(251,245,238,.22) 72%,rgba(251,245,238,0) 92%)!important}}
@media(max-width:560px){.home-final-cta-card::after{background:linear-gradient(180deg,rgba(251,245,238,.42),rgba(251,245,238,.74) 35%,rgba(251,245,238,.78) 66%,rgba(251,245,238,.36))!important}.home-final-cta-content{background:rgba(251,245,238,.24);border-radius:28px;backdrop-filter:blur(2px)}}

.footer-signature{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;font-size:20px;font-style:italic;color:#51463e;padding:0 0 24px;margin-bottom:28px;border-bottom:1px solid rgba(112,82,63,.13)}.footer-signature::before,.footer-signature::after{content:"";width:48px;height:1px;background:rgba(179,15,36,.34)}.footer-signature em{color:var(--red);font-weight:500}@media(max-width:560px){.footer-signature{display:block;font-size:18px;line-height:1.35}.footer-signature::before,.footer-signature::after{display:none}.footer-signature em{display:block;margin-top:3px}}

.footer-copyright{margin-top:30px;padding-top:18px;border-top:1px solid rgba(112,82,63,.13);font-size:12px;letter-spacing:.04em;color:#8a8178;text-align:center}
@media(max-width:560px){.footer-copyright{margin-top:24px;padding-top:16px;font-size:11px}}
