:root{--bg:#fbf9f5;--bg2:#f3efe7;--card:#fff;--line:#e6e0d4;--ink:#141414;--mute:#55565a;--acc:#8c6a3c;--acc2:#6f532d;--r:16px;--max:1200px;--fh:"Cormorant Garamond",Georgia,serif;--fb:"Inter",system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--fb);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:var(--fh);font-weight:600;line-height:1.05;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,6.4vw,5rem)}h2{font-size:clamp(2rem,4.2vw,3.2rem);margin-bottom:18px}h3{font-size:1.55rem;margin-bottom:8px}
p{color:var(--mute)}em{font-style:italic;color:var(--acc)}
.eyebrow{display:block;font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;color:var(--acc);font-weight:600;margin-bottom:16px}
header{position:sticky;top:0;z-index:50;background:rgba(251,249,245,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;gap:18px}
.logo{font-family:var(--fh);font-size:1.7rem;font-weight:600;text-decoration:none;letter-spacing:.02em}.logo b{color:var(--acc);font-weight:600}
.nav ul{display:flex;gap:26px;list-style:none;align-items:center}.nav ul a{text-decoration:none;font-size:.9rem;color:#333}.nav ul a:hover{color:var(--acc)}
.lang{border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:.78rem!important}
@media(max-width:900px){.nav ul li:not(.keep){display:none}}
@media(max-width:480px){.logo{font-size:1.35rem}.nav ul{gap:10px}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:#fff!important;font-weight:600;text-decoration:none;padding:15px 28px;border-radius:999px;border:0;cursor:pointer;font-size:.98rem;font-family:var(--fb);transition:.25s}
.btn:hover{background:var(--acc)}.btn.ghost{background:transparent;color:var(--ink)!important;border:1px solid var(--ink)}.btn.ghost:hover{border-color:var(--acc);color:var(--acc)!important}.btn.sm{padding:10px 18px;font-size:.88rem}
.hero{position:relative;overflow:hidden;isolation:isolate;padding:110px 0 90px;min-height:86vh;display:flex;align-items:center}
.hero::after{content:"";position:absolute;inset:-60px;z-index:-2;background:var(--hero) center/cover no-repeat;translate:var(--px,0px) var(--py,0px);scale:1.08;transition:translate .6s cubic-bezier(.2,.7,.2,1);animation:kb 28s ease-in-out infinite alternate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(251,249,245,.97) 0%,rgba(251,249,245,.9) 45%,rgba(251,249,245,.15) 100%)}
@media(max-width:900px){.hero::before{background:linear-gradient(rgba(251,249,245,.86),rgba(251,249,245,.95))}.hero{min-height:0;padding:70px 0 60px}}
@keyframes kb{to{scale:1.2}}
.hero .lead{font-size:1.2rem;max-width:600px;margin:22px 0 32px;color:#2c2d30}
.hero.sub{min-height:60vh}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}
.proof{display:grid;grid-template-columns:repeat(4,auto);gap:12px 34px;margin-top:44px;max-width:720px}
.proof div{border-left:2px solid var(--acc);padding-left:14px}.proof b{display:block;font-family:var(--fh);font-size:1.5rem;line-height:1.1}.proof span{font-size:.84rem;color:var(--mute)}
@media(max-width:700px){.proof{grid-template-columns:1fr 1fr}}
.bc{font-size:.8rem;color:var(--mute);margin-bottom:18px}.bc a{text-decoration:none;color:var(--mute)}.bc a:hover{color:var(--acc)}
section{padding:100px 0;border-top:1px solid var(--line)}section.alt{background:var(--bg2)}section.dark{background:#141414;color:#f4efe6}section.dark p{color:#bdb6a8}section.dark .eyebrow{color:#c9a46a}
.intro{max-width:780px}.intro p{font-size:1.1rem}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px}
@media(max-width:960px){.grid3,.grid4{grid-template-columns:1fr 1fr}}@media(max-width:640px){.grid3,.grid2,.grid4{grid-template-columns:1fr}}
.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:30px;overflow:hidden;transition:transform .35s,box-shadow .35s,border-color .35s;transform-style:preserve-3d}
.card:hover{border-color:var(--acc);box-shadow:0 26px 60px rgba(0,0,0,.09)}
.card .n{font-family:var(--fh);font-size:1.1rem;color:var(--acc);display:block;margin-bottom:12px}
.card p{font-size:.97rem}.card a.more{display:inline-block;margin-top:14px;color:var(--acc);font-weight:600;text-decoration:none;font-size:.9rem}
.card .thumb{display:block;width:calc(100% + 60px);max-width:none;margin:-30px -30px 20px;aspect-ratio:16/10;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.card:hover .thumb{transform:scale(1.07)}
.dest{position:relative;display:block;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;text-decoration:none;color:#fff;transform-style:preserve-3d;transition:transform .35s}
.dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.dest:hover img{transform:scale(1.08)}
.dest::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.65))}
.dest span{position:absolute;left:20px;bottom:18px;z-index:1;font-family:var(--fh);font-size:1.7rem;line-height:1}.dest small{display:block;font-family:var(--fb);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85;margin-top:6px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}@media(max-width:900px){.split{grid-template-columns:1fr;gap:34px}}
.photo{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;box-shadow:0 40px 90px rgba(0,0,0,.16);transform-style:preserve-3d}
.photo img{width:100%;height:100%;object-fit:cover;scale:1.06}
.photo .tag{position:absolute;left:20px;bottom:20px;background:rgba(251,249,245,.95);border-radius:12px;padding:12px 16px;font-size:.88rem;transform:translateZ(60px)}
.band{position:relative;min-height:62vh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;padding:80px 0;border-top:0}
.band::after{content:"";position:absolute;inset:0;z-index:-2;background:var(--img) center/cover no-repeat;background-attachment:fixed}
.band::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent,rgba(0,0,0,.7))}
.band h2,.band p{color:#fff;max-width:680px}
@media(hover:none){.band::after{background-attachment:scroll}}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}@media(max-width:560px){.steps{grid-template-columns:1fr}}
.step{border-top:1px solid var(--acc);padding-top:18px}.step:before{counter-increment:s;content:counter(s,decimal-leading-zero);font-family:var(--fh);font-size:2.4rem;color:var(--acc);display:block;line-height:1;margin-bottom:10px}.step p{font-size:.95rem}
ul.ticks{list-style:none;margin-top:20px}ul.ticks li{padding:10px 0 10px 26px;border-bottom:1px solid var(--line);position:relative;color:#2c2d30}ul.ticks li:before{content:"";position:absolute;left:0;top:19px;width:12px;height:1px;background:var(--acc)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.chips span,.chips a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 15px;font-size:.88rem;text-decoration:none}.chips a:hover{border-color:var(--acc);color:var(--acc)}
details{border-bottom:1px solid var(--line);padding:20px 0}details summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:1.04rem}details summary:after{content:"+";color:var(--acc);font-size:1.4rem;line-height:1}details[open] summary:after{content:"–"}details p{margin-top:10px}
.faq{max-width:880px;margin-top:30px}
.formcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px;box-shadow:0 30px 80px rgba(0,0,0,.08)}
.formcard h2{font-size:2rem;margin-bottom:6px}.formcard p.small{font-size:.92rem;margin-bottom:16px}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:520px){form .row{grid-template-columns:1fr}}
label{display:block;font-size:.78rem;color:var(--mute);margin:12px 0 5px;letter-spacing:.02em}
input,select,textarea{width:100%;background:#fff;border:1px solid #d9d2c4;border-radius:10px;color:var(--ink);padding:12px 14px;font:inherit;font-size:.95rem}
input:focus,select:focus,textarea:focus{outline:2px solid var(--acc);border-color:transparent}textarea{min-height:90px;resize:vertical}
.stepl{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;margin:14px 0}.consent input{width:auto;margin-top:3px}
form .btn{width:100%;margin-top:16px}.linkbtn{background:none;border:0;color:var(--mute);font:inherit;font-size:.85rem;margin-top:10px;cursor:pointer;width:100%}.form-note{font-size:.78rem;color:var(--mute);margin-top:10px;text-align:center}
.post{max-width:780px;margin:0 auto;padding:70px 22px}.post h1{font-size:clamp(2.3rem,5vw,3.6rem);margin-bottom:14px}.post .meta{font-size:.85rem;color:var(--mute);margin-bottom:26px}
.post .cover{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r);margin-bottom:30px}
.post h2{font-size:2rem;margin:40px 0 12px}.post p,.post li{color:#2c2d30;font-size:1.05rem;margin-bottom:14px}.post ul,.post ol{padding-left:22px}.post a{color:var(--acc)}.post .formcard{margin-top:40px}
.legal{max-width:820px;padding:70px 22px}.legal h1{font-size:2.6rem;margin-bottom:20px}.legal h2{font-size:1.5rem;margin:28px 0 8px}
footer{background:#141414;color:#a9a39a;padding:60px 0 100px;font-size:.88rem}footer .logo{color:#fff}footer a{color:#ddd5c8;text-decoration:none}footer a:hover{color:#c9a46a}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}@media(max-width:800px){.fgrid{grid-template-columns:1fr 1fr}}
.fgrid h4{color:#fff;font-family:var(--fh);font-size:1.2rem;font-weight:600;margin-bottom:12px}.fgrid li{list-style:none;margin-bottom:6px}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;background:#25d366;color:#0b1a10!important;font-weight:700;border-radius:999px;padding:13px 18px;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.25);font-size:.9rem}
.mobile-cta{display:none}@media(max-width:700px){.wa-float{display:none}.mobile-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:55;background:rgba(251,249,245,.96);border-top:1px solid var(--line);padding:10px 16px;gap:10px}.mobile-cta .btn{flex:1;padding:12px}}
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s ease}.rv.in{opacity:1;transform:none}
.glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;opacity:0;transition:opacity .35s;background:radial-gradient(circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.5),rgba(255,255,255,0) 45%)}.is-tilting .glare{opacity:1}.is-tilting{transition:transform .08s linear!important}
.logo{white-space:nowrap}@media(max-width:700px){.nav .btn.sm{display:none}}.quick input,.quick select{height:48px}
.offer{margin-top:14px;font-size:.85rem;color:var(--acc2);letter-spacing:.02em}
.quick{display:grid;grid-template-columns:1.4fr 1fr .7fr auto;gap:10px;align-items:end;margin-top:26px;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 20px 50px rgba(0,0,0,.08);max-width:720px}
.quick label{margin:0 0 4px}.quick .btn{padding:13px 22px}
@media(max-width:700px){.quick{grid-template-columns:1fr 1fr}.quick>div:first-child,.quick .btn{grid-column:1/-1}}
.season{background:#141414;color:#f4efe6;padding:64px 0;border-top:0}.season .wrap{display:flex;gap:30px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.season h2{color:#fff;font-size:clamp(1.7rem,3vw,2.4rem);max-width:720px;margin-bottom:8px}.season p{color:#bdb6a8}.season .eyebrow{color:#c9a46a}.season .btn{background:#c9a46a;color:#141414!important}.season .btn:hover{background:#fff}
.nudge{position:fixed;left:18px;bottom:18px;z-index:70;max-width:330px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 18px 16px;box-shadow:0 24px 60px rgba(0,0,0,.18);transform:translateY(140%);opacity:0;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .5s}
.nudge.on{transform:none;opacity:1}.nudge p{color:var(--ink);font-size:.95rem;margin:0 18px 12px 0}.nudge .x{position:absolute;right:10px;top:6px;background:none;border:0;font-size:1.4rem;cursor:pointer;color:var(--mute)}
@media(max-width:700px){.nudge{left:12px;right:12px;bottom:76px;max-width:none}}
.logo{display:inline-flex;align-items:center;gap:12px;color:var(--ink)}.logo svg{width:42px;height:42px;flex:none;transition:transform .4s cubic-bezier(.2,.7,.2,1)}.logo:hover svg{transform:rotate(-8deg) scale(1.06)}
.lw{display:flex;flex-direction:column;line-height:1}.lw small{font-family:var(--fb);font-size:.58rem;letter-spacing:.42em;font-weight:600;color:var(--acc);margin-bottom:5px}.logo .lw b{font-family:var(--fh);font-size:1.45rem;letter-spacing:.16em;font-weight:600;color:inherit}
footer .logo{color:#fff}footer .lw small{color:#c9a46a}
@media(max-width:480px){.logo svg{width:36px;height:36px}.logo .lw b{font-size:1.15rem;letter-spacing:.12em}.lw small{font-size:.5rem}}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.hero::after{animation:none}}
/* v2 — editorial dark-hero theme */
header{position:fixed;left:0;right:0;top:0;background:transparent;border-bottom:1px solid transparent;backdrop-filter:none;transition:background .35s,border-color .35s,box-shadow .35s}
header .logo,header .nav ul a{color:#fff}header .lw small{color:#d9b97f}header .lang{border-color:rgba(255,255,255,.35)}
header .nav ul a:not(.btn){font-size:.74rem;letter-spacing:.16em;text-transform:uppercase}
header .btn.sm{background:#fff;color:#141414!important}header .btn.sm:hover{background:#d9b97f}
header.solid{background:rgba(251,249,245,.94);backdrop-filter:blur(14px);border-bottom-color:var(--line);box-shadow:0 8px 30px rgba(0,0,0,.05)}
header.solid .logo,header.solid .nav ul a{color:#141414}header.solid .lw small{color:var(--acc)}header.solid .lang{border-color:var(--line)}header.solid .btn.sm{background:#141414;color:#fff!important}
main>section:first-child:not(.hero),main>article:first-child,main>.legal:first-child{padding-top:150px!important}
.btn{border-radius:2px;text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;padding:17px 30px}.btn.sm{padding:11px 18px;font-size:.7rem}
.hero{min-height:100vh;padding:150px 0 80px;color:#fff;align-items:flex-end}.hero.sub{min-height:78vh}
.hero::before{background:linear-gradient(180deg,rgba(12,12,12,.55) 0%,rgba(12,12,12,.35) 40%,rgba(12,12,12,.82) 100%)!important}
.hero h1{color:#fff;font-weight:500;font-size:clamp(2.8rem,6.6vw,5.6rem);letter-spacing:-.015em}.hero h1 em{color:#e3c58e}
.hero .lead{color:rgba(255,255,255,.86)}.hero .eyebrow{color:#e3c58e}.hero .bc,.hero .bc a{color:rgba(255,255,255,.7)}
.hero .btn{background:#fff;color:#141414!important}.hero .btn:hover{background:#e3c58e}
.hero .btn.ghost{background:transparent;color:#fff!important;border:1px solid rgba(255,255,255,.6)}.hero .btn.ghost:hover{border-color:#e3c58e;color:#e3c58e!important}
.hero .offer{color:#e3c58e}
.hero .quick{background:rgba(18,18,18,.42);border:1px solid rgba(255,255,255,.18);box-shadow:none;border-radius:4px;backdrop-filter:blur(14px)}
.hero .quick label{color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.14em;font-size:.64rem}.hero .quick input,.hero .quick select{border-radius:2px;border-color:transparent}
.hero .proof{grid-template-columns:repeat(4,1fr);max-width:none;margin-top:56px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18);gap:18px 30px}
.hero .proof div{border-left:0;padding-left:0}.hero .proof b{color:#fff;font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:500}.hero .proof span{color:rgba(255,255,255,.66);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem}
@media(max-width:700px){.hero .proof{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.hero::before{background:linear-gradient(180deg,rgba(12,12,12,.6),rgba(12,12,12,.85))!important}.hero{min-height:92vh;padding:120px 0 60px}}
h2{font-weight:500;letter-spacing:-.01em}.eyebrow{letter-spacing:.3em;font-size:.68rem}
section{padding:120px 0}
.card{border-radius:4px}.card:hover{box-shadow:0 30px 70px rgba(0,0,0,.08)}.dest,.photo,.formcard,.post .cover{border-radius:4px}
.formcard{border-radius:4px;box-shadow:0 40px 90px rgba(0,0,0,.08)}input,select,textarea{border-radius:2px}
.steps{display:block;max-width:900px;margin-top:50px;border-top:1px solid var(--line)}
.step{display:grid;grid-template-columns:90px 1fr auto;gap:8px 28px;align-items:baseline;border-top:0;border-bottom:1px solid var(--line);padding:30px 0}
.step:before{grid-row:1/3;font-size:2.6rem;margin:0}.step h3{margin:0;font-size:1.7rem}.step p{grid-column:2}.step .badge{grid-column:3;grid-row:1;justify-self:end}
.badge{display:inline-block;border:1px solid var(--acc);color:var(--acc);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border-radius:2px;white-space:nowrap}
@media(max-width:600px){.step{grid-template-columns:60px 1fr}.step .badge{grid-column:2;grid-row:auto;justify-self:start;margin-top:8px}.step:before{font-size:2rem}}
.countries{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 40px;margin:34px 0 10px;max-width:980px}
.countries h4{font-family:var(--fb);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin-bottom:10px;font-weight:600}
.countries a{display:block;font-family:var(--fh);font-size:1.45rem;text-decoration:none;padding:4px 0;color:var(--ink)}.countries a:hover{color:var(--acc)}
@media(max-width:700px){.countries{grid-template-columns:1fr 1fr}}
section.dark{background:#111}.season{background:#111}footer{background:#0d0d0d}
.hero .wrap{width:100%}.hero .wrap>div{max-width:780px!important}.hero .proof{max-width:1000px}
.hero .proof b{font-size:clamp(1.4rem,2vw,1.9rem)}
.nav ul{gap:22px}.nav ul a{white-space:nowrap}.btn{white-space:nowrap}
@media(max-width:1200px){header .nav ul li:not(.keep):nth-child(n+6){display:none}}
/* mobile menu */
.burger{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;position:relative;margin-left:auto;margin-right:6px}
.burger span,.burger span:before,.burger span:after{position:absolute;left:11px;width:22px;height:1.5px;background:currentColor;content:"";transition:transform .3s,top .3s,opacity .3s}
.burger span{top:21px}.burger span:before{left:0;top:-7px}.burger span:after{left:0;top:7px}
header .burger{color:#fff}header.solid .burger,header.open .burger{color:#141414}
header.open .burger span{background:transparent}header.open .burger span:before{top:0;transform:rotate(45deg)}header.open .burger span:after{top:0;transform:rotate(-45deg)}
@media(max-width:1280px){.burger{display:block}header .nav ul li:not(.keep){display:none}}
@media(min-width:1281px){header .nav ul li:not(.keep){display:list-item!important}}
header.open{background:#fbf9f5}header.open .logo,header.open .nav ul a{color:#141414}header.open .lw small{color:var(--acc)}
header.open .nav ul{position:fixed;left:0;right:0;top:72px;bottom:0;background:#fbf9f5;flex-direction:column;align-items:flex-start;gap:0;padding:20px 22px 40px;overflow:auto}
header.open .nav ul li{display:block!important;width:100%;border-bottom:1px solid var(--line)}header.open .nav ul li a{display:block;padding:16px 0;font-size:.85rem!important}
header.open .nav ul li.keep{border:0;margin-top:14px}header.open .nav ul li.keep .btn{display:inline-flex!important;width:100%;background:#141414;color:#fff!important}
header.open .lang{display:inline-block!important;width:auto;padding:6px 14px!important;border-color:var(--line)!important}
@media(max-width:1280px){header .nav ul li.keep{display:none}header .nav ul li.keep:has(.lang){display:block}header.open .nav ul li.keep{display:block}}
body.menu-open{overflow:hidden}

/* mobile polish */
@media(max-width:700px){
body{font-size:16px;padding-bottom:70px}
.wrap{padding:0 18px}
section{padding:72px 0}
main>section:first-child:not(.hero),main>article:first-child,main>.legal:first-child{padding-top:110px!important}
h1{font-size:clamp(2.3rem,10vw,3rem)}.hero h1{font-size:clamp(2.4rem,11vw,3.2rem)}h2{font-size:clamp(1.8rem,7.5vw,2.3rem)}
.hero{min-height:auto;padding:110px 0 48px}.hero.sub{min-height:auto}.hero .lead{font-size:1.02rem;margin:16px 0 22px}
.btn{white-space:normal;text-align:center}.hero .cta-row{flex-direction:column}.hero .cta-row .btn{width:100%}
.hero .quick{grid-template-columns:1fr 1fr;padding:12px}.hero .proof{margin-top:36px;padding-top:22px;gap:16px}
.hero .proof b{font-size:1.25rem}.hero .proof span{font-size:.6rem}
.grid3,.grid2,.grid4{margin-top:28px;gap:14px}.card{padding:22px}.card .thumb{width:calc(100% + 44px);margin:-22px -22px 16px}
.formcard{padding:22px}.split{gap:28px}
.photo{aspect-ratio:4/4.4}.dest{aspect-ratio:4/4.6}.dest span{font-size:1.4rem}
.band{min-height:48vh;padding:56px 0}.season{padding:48px 0}.season .btn{width:100%}
.step{padding:22px 0}.step h3{font-size:1.35rem}
.countries a{font-size:1.2rem}
.fgrid{grid-template-columns:1fr;gap:26px}footer{padding:48px 0 30px}
.faq details summary{font-size:.98rem}
.mobile-cta .btn{padding:13px 10px;font-size:.68rem;letter-spacing:.1em}
.nudge{bottom:78px}
header .nav{height:64px}header.open .nav ul{top:64px}
.logo .lw b{font-size:1.15rem}
.post{padding:100px 18px 40px}.legal{padding:100px 18px 40px}
input,select,textarea{font-size:16px}
}

@media(min-width:1281px) and (max-width:1560px){.nav ul{gap:16px}header .nav ul a:not(.btn){font-size:.68rem;letter-spacing:.11em}header .btn.sm{padding:10px 14px;letter-spacing:.1em}}
.lang{display:inline-flex;align-items:center;min-height:36px}.card a.more{padding:8px 0}
body.menu-open .mobile-cta,body.menu-open .nudge,body.menu-open .wa-float{display:none}
@media(max-width:700px){
.grid4:has(.dest){grid-template-columns:1fr 1fr;gap:10px}.dest{aspect-ratio:3/4}.dest span{left:12px;bottom:12px;font-size:1.15rem}.dest small{font-size:.58rem;letter-spacing:.12em}
.fgrid{grid-template-columns:1fr 1fr;gap:26px 18px}.fgrid>div:first-child{grid-column:1/-1}
.grid4:not(:has(.dest)){grid-template-columns:1fr 1fr}.grid4:not(:has(.dest)) .card{padding:18px}.grid4:not(:has(.dest)) .card h3{font-size:1.2rem}
}
.lw i{display:block;font-style:normal;font-family:var(--fb);font-size:.52rem;letter-spacing:.24em;text-transform:uppercase;margin-top:5px;opacity:.8}footer .lw i{color:#c9a46a}
@media(max-width:700px){.lw i{font-size:.46rem;letter-spacing:.18em}}

/* v3 — personal chef */
.intro-p p{font-size:1.08rem;margin-top:14px}.intro-p h2{margin-bottom:6px}
.sig{font-family:var(--fh);font-style:italic;font-size:1.9rem;color:var(--acc);margin-top:20px;line-height:1}
.dark .sig{color:#d9b97f}
.note{max-width:760px;margin-top:30px;font-family:var(--fh);font-size:1.35rem;font-style:italic;color:var(--ink);line-height:1.4}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:14px;margin-top:40px}
.gallery figure{margin:0;overflow:hidden;border-radius:var(--r);background:var(--bg2)}.gallery figure.wide{grid-column:span 2}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.gallery figure:hover img{transform:scale(1.04)}
.creds{list-style:none;padding:0;margin:36px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px}
.creds li{border-top:1px solid var(--line);padding:18px 0}.creds b{display:block;font-family:var(--fh);font-size:1.4rem;font-weight:600;line-height:1.2}.creds span{font-size:.86rem;color:var(--mute)}
.countries.light h4{color:rgba(255,255,255,.7)}.countries.light a{color:#fff}.countries.light a:hover{color:#e6c48c}
.band .countries{margin-top:26px}
.steps.s4{grid-template-columns:repeat(4,1fr)}
@media(max-width:960px){.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:200px}.creds{grid-template-columns:1fr 1fr}.steps.s4{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.gallery{grid-auto-rows:150px;gap:8px}.creds{grid-template-columns:1fr}.steps.s4{grid-template-columns:1fr}.note{font-size:1.15rem}.sig{font-size:1.6rem}}
.nav .logo{min-height:44px}
/* athletes sport mosaic */
.sport{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sport img{width:100%;height:100%;object-fit:cover;border-radius:var(--r);display:block;box-shadow:0 30px 60px -30px rgba(0,0,0,.35)}.sport .big{grid-column:span 2;aspect-ratio:16/11}.sport .sm{aspect-ratio:1}
@media(max-width:640px){.sport{gap:8px}}

/* instagram strip */
.igstrip{background:#141414;color:#f4efe6;padding:80px 0}.igstrip h2{color:#fff;margin:4px 0 6px}.igstrip p{color:#a9a39a;margin:0}.igstrip .eyebrow{color:#d9b97f}
.ig-head{display:grid;grid-template-columns:auto 1fr auto auto;gap:28px;align-items:center}
.ig-badge{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285aeb 90%);transition:transform .4s cubic-bezier(.2,.7,.2,1)}.ig-badge:hover{transform:rotate(-8deg) scale(1.08)}.ig-badge svg{width:38px;height:38px}
.ig-stat{text-align:center}.ig-stat b{display:block;font-family:var(--fh);font-size:3rem;line-height:1;color:#fff}.ig-stat span{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:#d9b97f}
.ig-btn{background:#fff;color:#141414!important;gap:10px}.ig-btn:hover{background:#d9b97f}.ig-btn svg{width:18px;height:18px}
.ig-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:40px}.ig-grid a{position:relative;display:block;aspect-ratio:1;overflow:hidden;border-radius:12px}.ig-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.ig-grid span{position:absolute;inset:0;display:grid;place-items:center;background:rgba(20,20,20,.45);opacity:0;transition:opacity .3s;color:#fff}.ig-grid span svg{width:30px;height:30px}.ig-grid a:hover img{transform:scale(1.08)}.ig-grid a:hover span{opacity:1}
@media(max-width:900px){.ig-head{grid-template-columns:auto 1fr;gap:18px}.ig-stat{text-align:left}.ig-btn{grid-column:1/-1}.ig-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.igstrip{padding:56px 0}.ig-badge{width:58px;height:58px;border-radius:18px}.ig-badge svg{width:30px;height:30px}.ig-stat b{font-size:2.4rem}.ig-grid{gap:6px;margin-top:28px}}

/* recognition logos */
.logos{background:#fff;padding:46px 0;border-bottom:1px solid var(--line)}.logos-eb{text-align:center;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--acc);margin:0 0 24px}
.logos-row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:end;max-width:980px;margin:0 auto}
.logo-item{text-align:center;transition:transform .4s cubic-bezier(.2,.7,.2,1)}.logo-item:hover{transform:translateY(-4px)}.logo-item img{height:64px;width:auto;max-width:100%;object-fit:contain;display:block;margin:0 auto 14px;filter:grayscale(.15)}.logo-item:hover img{filter:none}.logo-item span{font-size:.8rem;color:var(--mute);letter-spacing:.02em}
@media(max-width:640px){.logos{padding:34px 0}.logos-row{gap:14px}.logo-item img{height:40px;margin-bottom:10px}.logo-item span{font-size:.68rem;line-height:1.3;display:block}}
/* stats strip */
.stats{background:linear-gradient(135deg,#1b1915,#2a241b);color:#f4efe6;padding:84px 0}.stats h2{color:#fff;max-width:760px}.stats h2 em{color:#e6c48c}.stats-head p{color:#bdb6aa;max-width:640px}.stats .eyebrow{color:#d9b97f}
.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:46px;border-top:1px solid rgba(255,255,255,.12)}.stat{padding:30px 18px 6px;border-right:1px solid rgba(255,255,255,.12);transition:background .3s}.stat:last-child{border-right:0}.stat:hover{background:rgba(255,255,255,.04)}.stat b{display:block;font-family:var(--fh);font-size:clamp(2.6rem,5vw,4.2rem);line-height:1;color:#fff;font-weight:500}.stat small{display:block;margin-top:10px;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:#d9b97f}
.stats-cta{margin-top:40px}.stats .btn{background:#e6c48c;color:#141414!important}.stats .btn:hover{background:#fff}
@media(max-width:800px){.stats-row{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}}
@media(max-width:640px){.stats{padding:58px 0}.stat{padding:22px 12px 14px}.stats .btn{width:100%}}

/* where I cook — interactive */
.where{background:#141414;color:#f4efe6;padding:90px 0}.where h2{color:#fff;margin:4px 0 8px}.where p{color:#bdb6aa;max-width:620px;margin:0}.where .eyebrow{color:#d9b97f}
.where-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.where .btn.ghost{color:#fff!important;border-color:rgba(255,255,255,.4)}.where .btn.ghost:hover{border-color:#e6c48c;color:#e6c48c!important}
.wtabs{display:flex;gap:10px;flex-wrap:wrap;margin:38px 0 26px}.wt{background:transparent;border:1px solid rgba(255,255,255,.22);color:#f4efe6;border-radius:999px;padding:10px 16px;font:500 .88rem var(--fb);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:.25s}.wt i{font-style:normal;font-size:.7rem;background:rgba(255,255,255,.12);border-radius:999px;padding:2px 7px}.wt:hover{border-color:#e6c48c}.wt.on{background:#e6c48c;border-color:#e6c48c;color:#141414}.wt.on i{background:rgba(0,0,0,.12)}
.wgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.wcard{position:relative;display:block;aspect-ratio:3/4;border-radius:16px;overflow:hidden;color:#fff;text-decoration:none;animation:win .5s cubic-bezier(.2,.7,.2,1) both}.wcard.hide{display:none}
.wcard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.wcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.75))}
.wcard:hover img{transform:scale(1.07)}.wseason{position:absolute;top:12px;left:12px;z-index:1;font-style:normal;color:#fff;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;background:rgba(20,20,20,.55);backdrop-filter:blur(6px);padding:6px 10px;border-radius:999px}
.wname{position:absolute;left:16px;bottom:16px;z-index:1;font-family:var(--fh);font-size:1.6rem;line-height:1.1}.wname small{display:block;font-family:var(--fb);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#e6c48c;margin-top:6px}
.wgo{position:absolute;right:14px;bottom:16px;z-index:1;width:38px;height:38px;border-radius:50%;background:#fff;color:#141414;display:grid;place-items:center;font-weight:400;transform:translateX(8px);opacity:0;transition:.35s}.wcard:hover .wgo{transform:none;opacity:1}
.wmore{margin-top:26px!important;font-size:.95rem}.wmore a{color:#e6c48c}
@keyframes win{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:960px){.wgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.where{padding:60px 0}.wtabs{flex-wrap:nowrap;overflow-x:auto;margin:28px -16px 20px;padding:0 16px;scrollbar-width:none}.wtabs::-webkit-scrollbar{display:none}.wt{flex:none}.wgrid{grid-template-columns:1fr 1fr;gap:10px}.wname{font-size:1.25rem;left:12px;bottom:12px}.wgo{display:none}.where .btn.ghost{width:100%}}

/* signature logo */
.logo .lw.sigl b{font-family:"Mrs Saint Delafield",cursive;font-size:2.5rem;letter-spacing:0;font-weight:400;line-height:.85;margin-top:-4px;padding-right:6px}
.lw.sigl small{margin-bottom:0}
footer .logo .lw.sigl b{font-size:2.8rem}
.sig{font-family:"Mrs Saint Delafield",cursive!important;font-style:normal!important;font-size:2.8rem!important;line-height:1!important}
@media(max-width:480px){.logo .lw.sigl b{font-size:2rem;letter-spacing:0}}

.lw.sigl small{margin-bottom:9px!important;padding-left:2px}.logo .lw.sigl b{margin-top:0!important}

/* mobile hardening */
header .nav .burger{flex:none}header .nav>.logo{min-width:0;flex:0 1 auto;overflow:hidden}
.logo .lw.sigl b{white-space:nowrap;font-family:"Mrs Saint Delafield","Snell Roundhand","Brush Script MT",cursive}
@media(max-width:360px){.logo .lw.sigl b{font-size:1.75rem}.lw.sigl small{font-size:.48rem;letter-spacing:.32em}}
.wmore a{display:inline-block;padding:10px 0}
main p a[href*="wa.me"]{display:inline-block;padding:8px 0}

/* mobile carousels (swipe) */
@media(max-width:640px){
.gallery,.wgrid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:10px;margin-left:-18px;margin-right:-18px;padding:0 18px 8px;scroll-padding:0 18px;scrollbar-width:none}
.gallery::-webkit-scrollbar,.wgrid::-webkit-scrollbar{display:none}
.gallery figure{flex:0 0 74%;aspect-ratio:4/5;scroll-snap-align:start}
.gallery figure.wide{flex-basis:88%;aspect-ratio:4/3}
.wcard{flex:0 0 64%;scroll-snap-align:start}
}

/* menu fix + AE monogram */
header.open,header.solid.open{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fbf9f5!important}
header.open .nav ul{height:calc(100dvh - 64px)}
.logo .lw.mono b{font-size:3rem!important;line-height:1;padding:0 8px 0 2px;margin:0!important}
footer .logo .lw.mono b{font-size:3.4rem!important}
@media(max-width:480px){.logo .lw.mono b{font-size:2.6rem!important}}

/* mobile: no big boxes over the hero */
@media(max-width:760px){.hero .quick{display:none!important}.nudge{display:none!important}.hero .cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero .cta-row .btn{padding:14px 10px;font-size:.78rem}}

/* bw portrait */
.bw{filter:grayscale(1) contrast(1.06)}

/* fine dining vs family style */
.ways-head{max-width:760px}.ways-head h2 em{color:var(--acc)}
.ways-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:44px}
.way h3{font-size:1.9rem;margin:22px 0 8px}.way .ticks{margin-top:14px}
@media(max-width:800px){.ways-grid{grid-template-columns:1fr;gap:46px}}

/* home hero slideshow */
.hero.has-slides::after{display:none}
.hslides{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#141414}
.hslides i{position:absolute;inset:-2%;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;animation:hfade 36s linear infinite}
.hslides i:first-child{opacity:1}
@keyframes hfade{0%{opacity:0;transform:scale(1.08)}4%{opacity:1}16.6%{opacity:1}21%{opacity:0;transform:scale(1)}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.hslides i{animation:none}.hslides i:not(:first-child){display:none}}

/* mobile v2: less text, visible backgrounds, refined buttons */
@media(max-width:640px){
.hero{min-height:100svh;padding:96px 0 104px!important;align-items:flex-end}
.hero.sub{min-height:72svh}
.hero::before{background:linear-gradient(180deg,rgba(10,10,10,.45) 0%,rgba(10,10,10,0) 22%,rgba(10,10,10,0) 48%,rgba(10,10,10,.78) 100%)!important}
.hero .lead,.hero .offer,.hero .bc{display:none}
.hero .eyebrow{font-size:.58rem;letter-spacing:.22em;margin-bottom:10px}
.hero h1{font-size:2.35rem;line-height:1.05;margin-bottom:22px}
.hero .cta-row{gap:8px}
.btn{padding:11px 18px;font-size:.66rem;letter-spacing:.16em;border-radius:2px}
.hero .cta-row .btn{padding:11px 8px;font-size:.62rem;letter-spacing:.16em}
.hero .btn.ghost{backdrop-filter:blur(6px);background:rgba(255,255,255,.08)}
.mobile-cta{padding:8px 14px;gap:8px}.mobile-cta .btn{padding:9px 8px!important;font-size:.6rem!important;letter-spacing:.16em!important}
.wa-float{display:none!important}
.intro-p p:not(:first-of-type),.ways-head p,.way .ticks,.note,.stats-head p,.tables .wrap>p,.ig-head p,.where-head p,.season p,.split .ticks,.wmore,.grid4 .card p{display:none!important}
.grid4 .card{padding:16px!important}
.way p{font-size:.92rem}
section{padding-top:58px;padding-bottom:58px}
}

/* hero slides: full photos */
.hslides i{background-image:var(--s)}
.hslides i::before{content:"";position:absolute;inset:-40px;z-index:-1;background:var(--s) center/cover no-repeat;filter:blur(28px) brightness(.55);transform:scale(1.1)}
@media(max-width:760px){.hslides i{inset:0;background-size:contain;background-position:center 70px;animation-name:hfade2}.hslides i{isolation:isolate}}
@keyframes hfade2{0%{opacity:0}4%{opacity:1}16.6%{opacity:1}21%{opacity:0}100%{opacity:0}}

/* hero slides v3: full photo over blurred backdrop */
.hslides i{background:none!important;isolation:isolate}
.hslides i::before{z-index:0}
.hslides i::after{content:"";position:absolute;z-index:1;top:90px;bottom:40px;right:4%;width:40%;background:var(--s) center/contain no-repeat}
@media(max-width:760px){.hero.has-slides{padding-bottom:84px!important}.hslides i::after{top:66px;bottom:auto;left:0;right:0;width:auto;height:max(260px,calc(100svh - 460px));background-position:center top}}

/* hero slides v4: full-screen cover */
.hslides i::before{display:none!important}
.hslides i::after{top:0!important;bottom:0!important;left:0!important;right:0!important;width:auto!important;height:auto!important;background-size:cover!important;background-position:center center!important}
@media(max-width:760px){.hero.has-slides{padding-bottom:104px!important}}

/* logo by Ennoura */
.lw.lw-by small{font-family:var(--fh)!important;font-style:italic!important;text-transform:none!important;letter-spacing:.02em!important;font-size:1.05em!important;opacity:.85}
.lw.lw-by b{letter-spacing:.32em!important}

.lw.lw-by small{line-height:1.15!important;padding-top:2px}

/* audit fixes: cookie banner, form, legal */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:80;max-width:560px;margin-left:auto;background:#141414;color:#f4efe6;border-radius:14px;padding:16px 18px;box-shadow:0 18px 50px rgba(0,0,0,.35);display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:.86rem;line-height:1.5}
.cookie[hidden]{display:none}
.cookie p{margin:0;flex:1 1 260px;color:#f4efe6}
.cookie a{color:#e2c48f;text-decoration:underline}
.cookie-b{display:flex;gap:8px;margin-left:auto}
@media(max-width:760px){body.has-cookie .cookie{bottom:70px;left:10px;right:10px;padding:14px}body.has-cookie .nudge{display:none!important}}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
[data-form] [aria-invalid="true"]{border-color:#b3261e!important;box-shadow:0 0 0 2px rgba(179,38,30,.15)}
.legal h2{margin-top:34px}
.legal ul{margin:10px 0 0 20px}
.legal li{margin:6px 0}
.flegal{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:34px;font-size:.82rem}
.flegal a,.flegal button{color:#a9a39a;background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.flegal a:hover,.flegal button:hover{color:#f4efe6}
.mobile-cta .btn{flex:1 1 100%}
:root{--acc:#7a5b32;--acc2:#654a27}
.hero{background-color:#2b2723}
.bc a{text-decoration:underline!important;text-underline-offset:3px}
.gallery:focus-visible{outline:2px solid var(--acc);outline-offset:4px}
.dark .btn.ghost{color:#f4efe6!important;border-color:rgba(244,239,230,.6)!important}
footer .wrap>p{color:#a9a39a}
.cookie .btn{color:#141414!important;background:#f4efe6!important;border:1px solid #f4efe6!important;margin:0;width:auto;padding:10px 18px}
.cookie .btn.ghost{color:#f4efe6!important;background:transparent!important;border-color:rgba(244,239,230,.55)!important}
/* logo: The Private Chef Villa by Amine */
.lw.lw-pcv b{font-size:1.08rem!important;letter-spacing:.14em!important;white-space:nowrap}
.lw.lw-pcv small{order:2;margin:5px 0 0!important;font-family:var(--fh)!important;font-style:italic!important;text-transform:none!important;letter-spacing:.02em!important;font-size:1rem!important;font-weight:500!important;line-height:1.1!important}
@media(max-width:480px){.lw.lw-pcv b{font-size:.8rem!important;letter-spacing:.1em!important}.lw.lw-pcv small{font-size:.82rem!important;margin-top:3px!important}}
@media(max-width:360px){.lw.lw-pcv b{font-size:.6rem!important;letter-spacing:.04em!important}.lw.lw-pcv small{font-size:.74rem!important}}
/* logo: THE RESIDENCE CHEF, black bold caps */
header .lw.lw-pcv b{color:#0a0a0a!important;font-weight:700!important;letter-spacing:.16em!important;font-size:1.22rem!important}
footer .lw.lw-pcv b{color:#fff!important;font-weight:700!important;letter-spacing:.16em!important}
@media(max-width:480px){header .lw.lw-pcv b{font-size:.98rem!important;letter-spacing:.12em!important}}
@media(max-width:360px){header .lw.lw-pcv b{font-size:.72rem!important;letter-spacing:.05em!important}}
header.solid{background:#fbf9f5!important}
/* fine dining: white background */
.ways{background:#fff!important}
.ways .sport img{background:#fff}

/* ways: fine dining only */
.ways-grid{grid-template-columns:1fr!important}
.ways .way{max-width:980px}
