:root{--ink:#050307;--ink2:#0c0710;--wine:#6f102f;--wine2:#991f4b;--plum:#3a123f;--violet:#8f54c7;--silver:#d9d4df;--white:#f7f4f8;--muted:#aaa2b1;--line:rgba(255,255,255,.12);--glass:rgba(15,8,18,.78)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:"Be Vietnam Pro",sans-serif;font-weight:400}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.header{height:82px;padding:0 5.5vw;display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:30;transition:.4s;background:linear-gradient(180deg,rgba(5,3,7,.82),transparent)}.header.scrolled{height:70px;background:rgba(5,3,7,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.logo{font:600 1.02rem "Manrope";letter-spacing:.16em}.logo i{font-style:normal;color:#c46491}.header nav{display:flex;gap:32px}.header nav a,.lang{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:#e7e0ea}.header nav a{position:relative}.header nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:#c46491;transition:.35s}.header nav a:hover:after{width:100%}.actions{display:flex;align-items:center;gap:12px}.lang,.menu{background:none;color:white;border:1px solid var(--line);padding:12px 14px}.pill{padding:13px 22px;border:1px solid rgba(196,100,145,.7);background:linear-gradient(135deg,rgba(111,16,47,.65),rgba(58,18,63,.65));font-size:.75rem;letter-spacing:.08em}.menu{display:none}.mobile-nav{display:none}.hero{min-height:100vh;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.08) brightness(.72)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,2,6,.88) 0%,rgba(5,3,7,.42) 50%,rgba(5,3,7,.18) 70%),linear-gradient(0deg,rgba(5,3,7,.9),transparent 48%),radial-gradient(circle at 72% 35%,rgba(125,37,105,.22),transparent 36%)}.hero-copy{position:relative;z-index:2;padding:0 6vw 8vh;max-width:1000px}.kicker,.section-label{font:500 .68rem "Manrope";letter-spacing:.24em;color:#d795b5}.hero h1{font:500 clamp(5rem,11vw,10.6rem)/.78 "Manrope";letter-spacing:-.07em;margin:24px 0 38px}.hero h1 span{font-family:"Playfair Display";font-style:italic;font-weight:500;color:#c46491;text-shadow:0 0 42px rgba(143,84,199,.34)}.hero h2{font:500 clamp(2rem,4vw,4.4rem)/1.02 "Playfair Display";letter-spacing:-.035em;margin:0 0 22px;max-width:820px}.hero-copy>p:not(.kicker){max-width:720px;color:#d4ccd8;line-height:1.8;font-weight:300}.hero-cta{display:flex;gap:14px;margin-top:30px}.primary,.ghost{padding:15px 24px;font-size:.74rem;letter-spacing:.1em}.primary{background:linear-gradient(135deg,var(--wine2),#71336e);box-shadow:0 18px 50px rgba(111,16,47,.34)}.ghost{border:1px solid rgba(255,255,255,.3);background:rgba(10,5,12,.24);backdrop-filter:blur(8px)}.hero-meta{position:absolute;right:5.5vw;bottom:5vh;z-index:2;display:flex;gap:30px;font:500 .62rem "Manrope";letter-spacing:.14em;color:#eee6f0}.marquee{overflow:hidden;background:#140915;border-block:1px solid rgba(196,100,145,.22);padding:13px 0;color:#d795b5;white-space:nowrap}.marquee div{width:max-content;font:500 .62rem "Manrope";letter-spacing:.2em;animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.booking{padding:120px 6vw;display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;align-items:start;background:radial-gradient(circle at 12% 22%,rgba(111,16,47,.26),transparent 34%),radial-gradient(circle at 90% 85%,rgba(94,50,122,.2),transparent 32%),linear-gradient(135deg,#09050b,#120914 55%,#09050b);position:relative;overflow:hidden}.booking:before{content:"";position:absolute;inset:20px;border:1px solid rgba(196,100,145,.12);pointer-events:none}.booking-copy{position:sticky;top:115px}.booking h2{font:500 clamp(3.6rem,7vw,7.4rem)/.9 "Playfair Display";letter-spacing:-.055em;margin:20px 0}.booking h2 em{color:#ca6d9b;font-weight:500}.booking-copy>p:last-child{max-width:520px;color:var(--muted);line-height:1.85;font-weight:300}.booking-form{background:linear-gradient(180deg,rgba(25,13,29,.94),rgba(10,6,13,.92));border:1px solid rgba(210,124,165,.25);box-shadow:0 28px 90px rgba(0,0,0,.5),0 0 70px rgba(92,26,88,.12);padding:42px;border-radius:2px;backdrop-filter:blur(18px)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.booking-form label>span{display:block;font:500 .65rem "Manrope";letter-spacing:.11em;color:#ddd4e1;margin-bottom:9px}.booking-form input,.booking-form select,.booking-form textarea,.guest-stepper{width:100%;background:rgba(255,255,255,.035);color:white;border:1px solid rgba(255,255,255,.14);padding:16px 17px;outline:none;transition:.3s}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:rgba(202,109,155,.72);box-shadow:0 0 0 3px rgba(153,31,75,.1);background:rgba(255,255,255,.055)}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#766e7a}.booking-form select{appearance:auto}.date-control{display:grid;grid-template-columns:1fr 52px;position:relative}.date-control input{border-right:0}.date-control button{background:rgba(196,100,145,.09);color:#dba0bd;border:1px solid rgba(255,255,255,.14);cursor:pointer}.native-date{position:absolute;right:0;bottom:0;width:52px!important;height:100%;opacity:0;pointer-events:none}.guest-stepper{display:grid;grid-template-columns:50px 1fr 50px 58px;padding:0}.guest-stepper button{background:rgba(196,100,145,.08);color:#f3e8ef;border:0;cursor:pointer}.guest-stepper input{text-align:center;border:0;background:transparent}.guest-stepper small{display:flex;align-items:center;justify-content:center;color:#9f96a4}.booking-form>label{display:block;margin-top:22px}.submit{width:100%;margin-top:22px;padding:18px;border:1px solid rgba(231,155,192,.45);color:white;background:linear-gradient(100deg,#74163a,#9c2857 45%,#6c3278);font:600 .72rem "Manrope";letter-spacing:.16em;cursor:pointer;box-shadow:0 18px 45px rgba(111,16,47,.26);transition:.35s}.submit:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 24px 60px rgba(111,16,47,.38)}.form-trust{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:18px;color:#958b99;font-size:.63rem}.status{color:#dda0c0;font-size:.8rem}.concept{padding:130px 6vw;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;background:#08050a}.concept h2,.section-title h2,.gallery-copy h2{font:500 clamp(3.1rem,6.5vw,6.9rem)/.94 "Playfair Display";letter-spacing:-.045em;margin:18px 0}.concept h2 span{color:#c46491;font-style:italic}.concept-copy>p{font-size:1rem;line-height:1.9;color:#aaa2b1;font-weight:300}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:56px;border-top:1px solid var(--line)}.stats article{padding:28px 18px 0 0}.stats strong{display:block;font:500 2.5rem "Manrope"}.stats small{font-size:.6rem;letter-spacing:.14em;color:#9b919f}.experience,.prices,.journal{padding:130px 6vw}.section-title{display:flex;justify-content:space-between;align-items:end;gap:30px}.experience{background:#0d0710}.experience-list{margin-top:65px;border-top:1px solid var(--line)}.experience-list article{display:grid;grid-template-columns:80px 1fr;padding:34px 0;border-bottom:1px solid var(--line);transition:.45s}.experience-list article:hover{padding-left:18px;background:linear-gradient(90deg,rgba(111,16,47,.16),transparent)}.experience-list>article>span{font:500 1.4rem "Playfair Display";color:#c46491}.experience-list small{color:#a37cc9;letter-spacing:.18em}.experience-list h3{font:500 clamp(1.9rem,3.6vw,4.1rem) "Playfair Display";margin:7px 0 12px}.experience-list p{max-width:680px;color:#9f96a4;font-weight:300}.gallery{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:50vh 50vh;background:#08050a;position:relative}.gallery figure{margin:0;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.76) contrast(1.06);transition:transform 1s,filter .8s}.gallery figure:hover img{transform:scale(1.035);filter:saturate(.95) contrast(1.08)}.g1{grid-row:1/3}.g2,.g3{grid-column:2}.gallery-copy{position:absolute;padding:6vw;align-self:end;pointer-events:none}.gallery-copy h2{text-shadow:0 12px 45px #000}.gallery-copy p{max-width:430px;color:#d3cbd6}.prices{background:#09060b}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:60px}.price-grid article{padding:30px;border:1px solid var(--line);min-height:400px;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,255,255,.028),transparent);transition:.4s}.price-grid article:hover{transform:translateY(-7px);border-color:rgba(196,100,145,.45);box-shadow:0 24px 55px rgba(0,0,0,.35)}.price-grid small{color:#a67cc7}.price-grid h3{font:500 1.45rem "Playfair Display"}.price-grid p{color:#9f96a4;line-height:1.65;font-weight:300}.price-grid span{margin-top:auto;font-size:.6rem;letter-spacing:.14em;color:#756d79}.price-grid strong{font:500 1.8rem "Manrope";margin:10px 0 22px}.choose{padding:14px;background:none;color:white;border:1px solid rgba(196,100,145,.5);cursor:pointer;transition:.3s}.choose:hover{background:rgba(111,16,47,.4)}.journal{background:#0d0710}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:50px}.article-grid a{border:1px solid var(--line);background:rgba(255,255,255,.025);padding:32px;min-height:260px;display:flex;flex-direction:column;transition:.4s}.article-grid a:hover{transform:translateY(-6px);border-color:rgba(196,100,145,.4)}.article-grid span{color:#a37cc9;font-size:.62rem;letter-spacing:.14em}.article-grid h3{font:500 1.8rem/1.16 "Playfair Display"}.article-grid b{margin-top:auto;color:#c46491;font:500 .67rem "Manrope";letter-spacing:.1em}footer{padding:70px 6vw 28px;display:grid;grid-template-columns:1.4fr 1fr .7fr 1fr;gap:48px;border-top:1px solid var(--line);background:#060407}footer>div{display:flex;flex-direction:column;gap:10px}footer p,footer a{color:#99909d;font-size:.82rem}.footer-book{background:linear-gradient(145deg,#511126,#3a123f);padding:25px;border:1px solid rgba(196,100,145,.28)}.footer-book a{color:white;font:500 1.45rem "Playfair Display"}footer>small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:24px;color:#706875}.reveal{opacity:0;transform:translateY(22px);transition:.9s cubic-bezier(.2,.75,.2,1)}.reveal.is-visible{opacity:1;transform:none}@media(max-width:900px){.header nav{display:none}.menu{display:block}.mobile-nav.open{display:flex;position:fixed;z-index:25;top:70px;left:0;right:0;background:#08050a;padding:24px;flex-direction:column;gap:20px}.booking,.concept{grid-template-columns:1fr}.booking-copy{position:static}.price-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr;grid-template-rows:60vh 40vh 40vh}.g1{grid-row:auto}.g2,.g3{grid-column:auto}.article-grid{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}}@media(max-width:620px){.header{height:68px}.pill{display:none}.hero{min-height:720px}.hero-copy{padding:0 5vw 13vh}.hero h1{font-size:19vw}.hero h2{font-size:2.1rem}.hero-meta{left:5vw;right:auto;bottom:3vh;flex-direction:column;gap:7px}.booking,.concept,.experience,.prices,.journal{padding:86px 5vw}.booking-form{padding:24px}.form-grid{grid-template-columns:1fr}.section-title{display:block}.stats{grid-template-columns:1fr}.price-grid{grid-template-columns:1fr}.gallery-copy{padding:5vw}.gallery-copy h2{font-size:3.1rem}footer{grid-template-columns:1fr}.form-trust{justify-content:flex-start}}

/* V9 — stronger visual hierarchy, brighter focal points */
:root{
  --wine:#7b1038;
  --wine2:#c42f68;
  --plum:#4b1857;
  --violet:#9a63e8;
  --rose:#ff5f9e;
  --ice:#b7d8ff;
}
body{background:#050208}
.header.scrolled{background:rgba(5,2,8,.78);box-shadow:0 18px 60px rgba(0,0,0,.28)}
.logo i{color:#ff629f;text-shadow:0 0 18px rgba(255,98,159,.65)}
.pill{border-color:rgba(255,111,165,.85);background:linear-gradient(135deg,rgba(184,28,87,.95),rgba(103,45,145,.92));box-shadow:0 0 28px rgba(207,55,122,.25)}
.hero>img{filter:saturate(1.05) contrast(1.13) brightness(.86)}
.hero-shade{background:
linear-gradient(90deg,rgba(3,1,6,.84) 0%,rgba(5,2,8,.34) 44%,rgba(7,2,9,.06) 68%),
linear-gradient(0deg,rgba(5,2,8,.92),transparent 46%),
radial-gradient(circle at 78% 25%,rgba(121,80,255,.32),transparent 22%),
radial-gradient(circle at 62% 62%,rgba(255,41,120,.22),transparent 25%)}
.hero:before,.hero:after{content:"";position:absolute;z-index:1;pointer-events:none;border-radius:999px;filter:blur(24px);opacity:.85}
.hero:before{width:42vw;height:7vw;right:-8vw;top:20%;background:linear-gradient(90deg,transparent,rgba(118,88,255,.95),rgba(255,66,145,.8),transparent);transform:rotate(-13deg);animation:lightSweep 8s ease-in-out infinite alternate}
.hero:after{width:26vw;height:26vw;right:7vw;bottom:8vh;background:radial-gradient(circle,rgba(255,71,145,.24),rgba(106,51,187,.08) 48%,transparent 72%);animation:pulseGlow 5s ease-in-out infinite}
@keyframes lightSweep{from{transform:translate3d(-2%,0,0) rotate(-13deg);opacity:.45}to{transform:translate3d(7%,3%,0) rotate(-10deg);opacity:.95}}
@keyframes pulseGlow{50%{transform:scale(1.08);opacity:1}}
.hero-copy{max-width:1100px}
.kicker,.section-label{color:#f0a9c8;text-shadow:0 0 18px rgba(255,93,157,.2)}
.hero h1{color:#fff;text-shadow:0 18px 60px rgba(0,0,0,.42)}
.hero h1 span{color:#ff72ae;text-shadow:0 0 22px rgba(255,74,154,.72),0 0 70px rgba(139,81,255,.35)}
.hero h2{color:#fff;text-shadow:0 8px 34px rgba(0,0,0,.72)}
.primary{background:linear-gradient(115deg,#b71957 0%,#df387a 45%,#7447d9 100%);box-shadow:0 14px 40px rgba(209,47,112,.36),0 0 0 1px rgba(255,255,255,.12) inset;transition:.35s}
.primary:hover{transform:translateY(-3px);box-shadow:0 22px 58px rgba(209,47,112,.5),0 0 30px rgba(121,79,232,.28)}
.ghost{border-color:rgba(255,255,255,.46);background:rgba(13,6,17,.42)}
.hero-meta{padding:13px 18px;border:1px solid rgba(255,255,255,.15);background:rgba(8,3,11,.38);backdrop-filter:blur(14px)}
.marquee{background:linear-gradient(90deg,#180718,#2a0a25 45%,#15102c);border-block-color:rgba(239,88,155,.35);color:#ffc1dc;box-shadow:0 12px 45px rgba(60,8,42,.22)}
.booking{background:
radial-gradient(circle at 12% 18%,rgba(183,22,83,.36),transparent 30%),
radial-gradient(circle at 88% 24%,rgba(115,75,222,.28),transparent 28%),
radial-gradient(circle at 70% 90%,rgba(255,64,145,.13),transparent 30%),
linear-gradient(135deg,#09040c,#18091a 52%,#08030b)}
.booking:after{content:"";position:absolute;width:360px;height:360px;right:-100px;top:60px;border:1px solid rgba(255,133,183,.24);border-radius:50%;box-shadow:0 0 80px rgba(151,84,255,.16);pointer-events:none}
.booking h2 em{color:#ff7fb5;text-shadow:0 0 26px rgba(255,89,160,.28)}
.booking-copy>p:last-child{color:#c7bbc9}
.booking-form{position:relative;background:linear-gradient(180deg,rgba(39,17,43,.95),rgba(12,6,17,.94));border:1px solid rgba(255,117,177,.4);box-shadow:0 32px 100px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.04) inset,0 0 70px rgba(143,78,222,.19);border-radius:20px;overflow:hidden}
.booking-form:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#ff6cad,#9b6dff,#8ed8ff,transparent)}
.booking-form:after{content:"";position:absolute;width:210px;height:210px;right:-80px;top:-90px;background:radial-gradient(circle,rgba(173,104,255,.22),transparent 68%);pointer-events:none}
.booking-form input,.booking-form select,.booking-form textarea,.guest-stepper{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.18);border-radius:10px}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#dc78b1;box-shadow:0 0 0 3px rgba(220,120,177,.13),0 0 28px rgba(117,82,217,.13)}
.date-control input{border-radius:10px 0 0 10px}.date-control button{border-radius:0 10px 10px 0;background:linear-gradient(180deg,rgba(173,70,129,.24),rgba(91,52,132,.22))}
.submit{border-radius:10px;background:linear-gradient(100deg,#b31555,#e13c7d 45%,#7048d8 100%);box-shadow:0 18px 50px rgba(190,34,97,.34),0 0 26px rgba(118,71,216,.2)}
.concept{background:
radial-gradient(circle at 86% 25%,rgba(96,61,180,.18),transparent 30%),
linear-gradient(180deg,#08040b,#0d0610)}
.concept h2 span,.experience-list>article>span,.article-grid b{color:#ff73ad}
.stats strong{color:#fff;text-shadow:0 0 24px rgba(255,93,157,.12)}
.experience{background:linear-gradient(180deg,#0c0610,#130817)}
.experience-list article:hover{background:linear-gradient(90deg,rgba(183,22,83,.22),rgba(101,61,178,.08),transparent);box-shadow:inset 3px 0 0 #f35c9b}
.gallery:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 60% 38%,rgba(139,92,246,.12),transparent 28%),linear-gradient(0deg,rgba(5,2,8,.52),transparent 45%)}
.gallery img{filter:saturate(.94) contrast(1.12) brightness(.9)}
.gallery-copy{z-index:2}
.gallery-copy h2{color:#fff;text-shadow:0 8px 30px #000,0 0 32px rgba(255,91,158,.16)}
.prices{background:radial-gradient(circle at 15% 20%,rgba(154,46,101,.16),transparent 28%),#09050c}
.price-grid article{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.012));border-color:rgba(255,255,255,.16)}
.price-grid article:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#ff6dac,#9b68f0,transparent);opacity:.52}
.price-grid article:hover{border-color:rgba(255,111,173,.62);box-shadow:0 28px 72px rgba(0,0,0,.42),0 0 38px rgba(136,78,222,.12)}
.choose{border-color:rgba(255,104,170,.65);border-radius:8px}.choose:hover{background:linear-gradient(100deg,rgba(170,22,83,.75),rgba(94,55,148,.78));box-shadow:0 0 25px rgba(203,64,133,.18)}
.journal{background:linear-gradient(180deg,#110815,#09050c)}
.article-grid a{border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.048),rgba(255,255,255,.016));border-color:rgba(255,255,255,.15)}
.article-grid a:hover{border-color:rgba(255,105,171,.55);box-shadow:0 24px 62px rgba(0,0,0,.34),0 0 30px rgba(118,74,214,.1)}
footer{background:radial-gradient(circle at 85% 10%,rgba(110,62,177,.2),transparent 26%),linear-gradient(180deg,#08040b,#040205)}
.footer-book{border-radius:14px;background:linear-gradient(145deg,#741537,#381240 72%,#242052);box-shadow:0 18px 50px rgba(0,0,0,.3),0 0 34px rgba(127,73,211,.12)}
@media (prefers-reduced-motion:reduce){.hero:before,.hero:after{animation:none}}

/* V10 — custom dropdowns: avoids the white Windows/Edge native select panel */
.custom-select{position:relative;width:100%}
.custom-select input[type="hidden"]{position:absolute;opacity:0;pointer-events:none}
.custom-select-trigger{width:100%;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(255,255,255,.055);color:#fff;cursor:pointer;text-align:left;transition:border-color .25s,box-shadow .25s,background .25s}
.custom-select-trigger span{font:400 1rem "Be Vietnam Pro",sans-serif;letter-spacing:0;color:#fff}
.custom-select-trigger i{font-style:normal;color:#dc78b1;font-size:1.2rem;transition:transform .25s}
.custom-select.open .custom-select-trigger{border-color:#dc78b1;box-shadow:0 0 0 3px rgba(220,120,177,.13),0 0 28px rgba(117,82,217,.13);background:rgba(255,255,255,.075)}
.custom-select.open .custom-select-trigger i{transform:rotate(180deg)}
.custom-select-menu{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 8px);max-height:260px;overflow:auto;padding:8px;background:rgba(13,7,16,.98);border:1px solid rgba(220,120,177,.38);border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.58),0 0 34px rgba(117,82,217,.14);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.22s ease}
.custom-select.open .custom-select-menu{opacity:1;visibility:visible;transform:none}
.custom-select-menu button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:0;border-radius:8px;background:transparent;color:#eee7f1;cursor:pointer;text-align:left;font:400 .95rem "Be Vietnam Pro",sans-serif;transition:.2s}
.custom-select-menu button:hover,.custom-select-menu button.is-selected{background:linear-gradient(90deg,rgba(153,31,75,.42),rgba(104,54,142,.28));color:#fff}
.custom-select-menu small{color:#d994b6;font-size:.78rem}
.custom-select-menu::-webkit-scrollbar{width:7px}.custom-select-menu::-webkit-scrollbar-thumb{background:#7d315f;border-radius:10px}.custom-select-menu::-webkit-scrollbar-track{background:transparent}
@media(max-width:620px){.custom-select-menu{position:fixed;left:18px;right:18px;top:auto;bottom:18px;max-height:52vh}.custom-select-trigger{min-height:56px}}

/* V11 — journal pages now share the District K visual system */
.article-page{background:#050208;color:var(--white);min-height:100vh}
.article-header{height:76px;padding:0 5.5vw;display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:40;background:rgba(5,2,8,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.1)}
.article-header nav{display:flex;align-items:center;gap:28px}
.article-header nav a{font:500 .68rem "Manrope",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#ded5e2}
.article-header nav a:hover{color:#ff79b3}
.article-header .article-book{padding:12px 18px;border:1px solid rgba(255,111,173,.72);background:linear-gradient(135deg,rgba(183,25,84,.9),rgba(105,54,153,.88));font:600 .67rem "Manrope";letter-spacing:.1em}
.article-hero{min-height:72vh;position:relative;display:flex;align-items:flex-end;overflow:hidden;padding:150px 6vw 74px}
.article-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.12) brightness(.67)}
.article-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,1,7,.96) 0%,rgba(6,2,10,.68) 48%,rgba(8,3,12,.2) 100%),linear-gradient(0deg,#050208 0%,transparent 55%),radial-gradient(circle at 78% 25%,rgba(140,76,235,.28),transparent 27%)}
.article-hero:after{content:"";position:absolute;width:34vw;height:7vw;right:-5vw;top:27%;background:linear-gradient(90deg,transparent,rgba(154,97,232,.72),rgba(255,73,151,.62),transparent);filter:blur(25px);transform:rotate(-12deg);opacity:.75}
.article-hero-copy{position:relative;z-index:2;width:min(1050px,100%)}
.article-eyebrow{font:500 .68rem "Manrope";letter-spacing:.22em;color:#f3a7ca;margin:0 0 22px}
.article-hero h1{font:500 clamp(3.2rem,7vw,7.2rem)/.94 "Playfair Display",serif;letter-spacing:-.045em;max-width:980px;margin:0;color:#fff;text-wrap:balance}
.article-hero .article-lead{max-width:760px;margin:28px 0 0;color:#d4c8d8;font-size:1.05rem;line-height:1.85;font-weight:300}
.article-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:32px;color:#ad9eae;font:500 .65rem "Manrope";letter-spacing:.11em;text-transform:uppercase}
.article-shell{width:min(1180px,88%);margin:0 auto;padding:92px 0 120px;display:grid;grid-template-columns:minmax(0,760px) 280px;gap:9vw;align-items:start}
.article-content{font-size:1rem;color:#cfc4d2}
.article-content h2{font:500 clamp(2rem,4vw,3.25rem)/1.08 "Playfair Display",serif;letter-spacing:-.025em;color:#fff;margin:58px 0 20px}
.article-content h2:first-child{margin-top:0}
.article-content p,.article-content li{line-height:1.9;font-weight:300}
.article-content ol,.article-content ul{padding-left:1.25rem}
.article-content li{margin-bottom:12px}
.article-note{position:relative;margin:38px 0;padding:28px 30px;background:linear-gradient(135deg,rgba(111,16,47,.35),rgba(68,30,84,.45));border:1px solid rgba(236,124,178,.32);border-radius:18px;color:#eee6ef;box-shadow:0 24px 70px rgba(0,0,0,.3)}
.article-note:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:2px;background:linear-gradient(#ff76b1,#9d69ef)}
.article-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:45px}
.article-tags span{padding:9px 13px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#e790ba;background:rgba(255,255,255,.035);font-size:.76rem}
.article-back{display:inline-flex;align-items:center;gap:10px;margin-top:44px;color:#fff;padding:14px 20px;border:1px solid rgba(255,116,177,.48);background:linear-gradient(135deg,rgba(120,19,58,.65),rgba(74,37,105,.65));transition:.3s}
.article-back:hover{transform:translateY(-2px);box-shadow:0 14px 38px rgba(173,36,103,.25)}
.article-aside{position:sticky;top:112px;padding:28px;background:linear-gradient(180deg,rgba(31,14,35,.92),rgba(12,7,16,.94));border:1px solid rgba(255,255,255,.12);border-radius:18px;box-shadow:0 24px 75px rgba(0,0,0,.35)}
.article-aside small{display:block;color:#e99abc;font:500 .65rem "Manrope";letter-spacing:.15em;margin-bottom:12px}
.article-aside h3{font:500 2rem/1.05 "Playfair Display";margin:0 0 16px;color:#fff}
.article-aside p{font-size:.9rem;line-height:1.7;color:#a99eac}
.article-aside a{display:block;text-align:center;margin-top:22px;padding:14px 16px;background:linear-gradient(110deg,#b51c58,#d83d7d 48%,#7248d5);font:600 .68rem "Manrope";letter-spacing:.12em}
.article-footer{padding:58px 6vw 34px;background:radial-gradient(circle at 85% 10%,rgba(110,62,177,.2),transparent 26%),linear-gradient(180deg,#08040b,#040205);border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:50px}
.article-footer p,.article-footer a{color:#a99ead;font-size:.85rem;line-height:1.8}
.article-footer b{font:600 .68rem "Manrope";letter-spacing:.12em;color:#fff}
.article-footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.09);padding-top:25px;color:#766d79}
@media(max-width:900px){.article-header nav{display:none}.article-shell{grid-template-columns:1fr}.article-aside{position:static}.article-footer{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.article-header{height:68px;padding:0 5vw}.article-header .article-book{display:none}.article-hero{min-height:620px;padding:128px 5vw 64px}.article-hero h1{font-size:12.5vw}.article-shell{width:90%;padding:68px 0 90px}.article-footer{grid-template-columns:1fr;padding:48px 5vw 30px}.article-note{padding:24px 22px}}

/* V12 — production booking, FAQ and confirmation UI */
.submit:disabled{cursor:wait;opacity:.72;filter:saturate(.65)}
.status{min-height:22px;margin:14px 0 0;color:#cbbdca;font-size:.82rem;text-align:center}.status.error{color:#ff9bb7}
.faq{padding:110px 6vw;background:radial-gradient(circle at 86% 12%,rgba(115,61,191,.16),transparent 28%),#08040b;border-top:1px solid rgba(255,255,255,.08)}
.faq .section-title{margin-bottom:46px}.faq-list{width:min(980px,100%);margin:0 auto;border-top:1px solid rgba(255,255,255,.14)}
.faq details{border-bottom:1px solid rgba(255,255,255,.14)}.faq summary{list-style:none;cursor:pointer;padding:25px 4px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#f7f0f5;font:500 clamp(1rem,1.8vw,1.28rem) "Be Vietnam Pro",sans-serif}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font:300 1.6rem "Manrope";color:#f47bac;transition:transform .25s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{max-width:780px;margin:0;padding:0 4px 27px;color:#b8abb9;line-height:1.8;font-weight:300}
.booking-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;background:rgba(3,1,5,.8);backdrop-filter:blur(16px);opacity:0;visibility:hidden;transition:.3s}.booking-modal.open{opacity:1;visibility:visible}.booking-modal-card{position:relative;width:min(500px,100%);padding:46px 38px 36px;text-align:center;border:1px solid rgba(255,121,181,.4);border-radius:24px;background:radial-gradient(circle at 50% 0,rgba(164,70,223,.22),transparent 38%),linear-gradient(160deg,#261022,#100812 72%);box-shadow:0 40px 120px rgba(0,0,0,.62),0 0 60px rgba(204,52,128,.14);transform:translateY(18px) scale(.98);transition:.35s}.booking-modal.open .booking-modal-card{transform:none}.modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:#cdbbca;font-size:1.7rem;cursor:pointer}.modal-check{width:62px;height:62px;margin:0 auto 22px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#c51e65,#784ee0);box-shadow:0 0 32px rgba(211,63,139,.42);font-size:1.8rem}.booking-modal-card h2{margin:12px 0 14px;font:500 2.2rem/1.08 "Playfair Display",serif}.booking-modal-card>p{color:#c3b5c3;line-height:1.7}.booking-code{margin:26px 0;padding:17px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.04)}.booking-code span{display:block;color:#a996a8;font:500 .66rem "Manrope";letter-spacing:.15em;text-transform:uppercase}.booking-code strong{display:block;margin-top:8px;color:#ff8fc1;font:600 1.18rem "Manrope";letter-spacing:.08em}.modal-primary{width:100%;padding:15px;border:0;border-radius:9px;background:linear-gradient(100deg,#bb1e5e,#d64386 48%,#7d4de1);color:#fff;font:600 .72rem "Manrope";letter-spacing:.13em;cursor:pointer}.modal-open{overflow:hidden}
@media(max-width:620px){.faq{padding:78px 5vw}.booking-modal-card{padding:42px 24px 28px}.booking-modal-card h2{font-size:1.85rem}}

/* V13 — favicon package + verified phone/tablet responsive refinements */
img{max-width:100%}
button,a,input,textarea,.custom-select-trigger{-webkit-tap-highlight-color:transparent}
.header,.article-header{padding-left:max(5.5vw,env(safe-area-inset-left));padding-right:max(5.5vw,env(safe-area-inset-right))}
.hero,.booking,.concept,.experience,.gallery,.prices,.journal,.faq,footer{scroll-margin-top:76px}

/* iPad landscape and smaller laptops */
@media (max-width:1180px){
  .header{padding-inline:4vw}.header nav{gap:20px}.pill{padding:12px 17px}
  .hero-copy{padding-left:5vw;padding-right:5vw;max-width:860px}.hero h1{font-size:clamp(5rem,12vw,8.5rem)}
  .booking{grid-template-columns:.8fr 1.2fr;gap:4vw;padding-inline:5vw}.booking-form{padding:34px}
  .price-grid{grid-template-columns:repeat(2,1fr)}
  footer{grid-template-columns:1.2fr 1fr 1fr;gap:34px}
}

/* iPad portrait */
@media (max-width:900px){
  .header{height:72px;background:rgba(5,3,7,.9);backdrop-filter:blur(14px)}
  .header nav{display:none}.menu{display:inline-grid;place-items:center;min-width:44px;min-height:44px}.pill{display:none}
  .mobile-nav{position:fixed;z-index:29;top:72px;left:14px;right:14px;display:grid;gap:0;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(11,6,14,.97);backdrop-filter:blur(22px);box-shadow:0 28px 70px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translateY(-10px);transition:.25s}
  .mobile-nav.open{opacity:1;visibility:visible;transform:none}.mobile-nav a{padding:15px 14px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.mobile-nav a:last-child{border-bottom:0}
  .hero{min-height:820px}.hero-copy{padding:0 5vw 12vh}.hero h1{font-size:clamp(5rem,17vw,8.8rem);margin-bottom:30px}.hero h2{font-size:clamp(2.1rem,6vw,3.8rem)}.hero-meta{left:5vw;right:5vw;bottom:3.5vh;justify-content:space-between;gap:18px}
  .booking{grid-template-columns:1fr;padding:92px 5vw;gap:38px}.booking:before{inset:12px}.booking-copy{position:static}.booking h2{font-size:clamp(3.4rem,10vw,6.6rem);max-width:700px}.booking-form{padding:32px;border-radius:18px}
  .concept{grid-template-columns:1fr;gap:38px;padding:100px 5vw}.stats{margin-top:36px}
  .experience,.prices,.journal{padding:100px 5vw}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:56vh 36vh}.g1{grid-column:1/3;grid-row:1}.g2,.g3{grid-row:2;grid-column:auto}.gallery-copy{padding:5vw}
  .article-grid{grid-template-columns:1fr 1fr}.section-title{align-items:flex-start;flex-direction:column}
  footer{grid-template-columns:1fr 1fr;padding-inline:5vw}
}

/* Phone */
@media (max-width:620px){
  body{overflow-x:hidden}.header{height:66px;padding-inline:18px}.header.scrolled{height:62px}.logo{font-size:.88rem}.actions{gap:8px}.lang,.menu{padding:10px 12px;min-width:42px;min-height:42px}.mobile-nav{top:66px;left:10px;right:10px}
  .hero{min-height:100svh;align-items:flex-end}.hero>img{object-position:58% center;filter:saturate(.9) contrast(1.08) brightness(.7)}.hero-shade{background:linear-gradient(90deg,rgba(4,2,6,.9),rgba(5,3,7,.38)),linear-gradient(0deg,rgba(5,3,7,.94),transparent 55%)}
  .hero-copy{padding:0 20px 135px}.kicker,.section-label{font-size:.6rem;letter-spacing:.19em}.hero h1{font-size:clamp(4.2rem,23vw,6.4rem);line-height:.82;margin:20px 0 26px}.hero h2{font-size:clamp(1.9rem,9.5vw,3rem);line-height:1}.hero-copy>p:not(.kicker){font-size:.9rem;line-height:1.7}.hero-cta{flex-direction:column;align-items:stretch}.primary,.ghost{text-align:center;padding:15px 18px}.hero-meta{bottom:26px;left:20px;right:20px;display:grid;gap:7px;font-size:.54rem}.marquee{padding:11px 0}
  .booking{padding:76px 16px}.booking h2{font-size:clamp(3.15rem,17vw,5.2rem)}.booking-copy>p:last-child{font-size:.9rem}.booking-form{padding:22px 16px;border-radius:16px}.form-grid{grid-template-columns:1fr;gap:18px}.booking-form input,.booking-form textarea,.custom-select-trigger,.guest-stepper{min-height:54px}.date-control{grid-template-columns:1fr 54px}.guest-stepper{grid-template-columns:50px 1fr 50px 58px}.form-trust{gap:8px 14px}.submit{min-height:56px}
  .concept,.experience,.prices,.journal,.faq{padding:76px 20px}.concept h2,.section-title h2,.gallery-copy h2{font-size:clamp(2.8rem,15vw,4.8rem)}.stats{grid-template-columns:1fr 1fr;gap:0}.stats article:last-child{grid-column:1/-1}.experience-list article{grid-template-columns:48px 1fr;padding:26px 0}.experience-list h3{font-size:clamp(1.65rem,9vw,2.6rem)}
  .gallery{grid-template-columns:1fr;grid-template-rows:62vh 34vh 34vh}.g1,.g2,.g3{grid-column:1;grid-row:auto}.gallery-copy{padding:22px}.gallery-copy p{font-size:.88rem}
  .price-grid,.article-grid{grid-template-columns:1fr}.price-grid article{min-height:350px;padding:25px}.article-grid a{min-height:230px;padding:26px}
  footer{grid-template-columns:1fr;padding:54px 20px 24px;gap:30px}.footer-bottom{grid-column:1!important}
}

/* Short phones and landscape phones */
@media (max-height:560px) and (orientation:landscape){
  .hero{min-height:720px}.hero-copy{padding-bottom:105px}.hero-meta{bottom:20px}.header{position:absolute}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
