:root{
  --bg:#06141a; --panel:#0a2028; --panel2:#0e2b34; --text:#f8f3e9; --muted:#b8c8c6;
  --line:rgba(220,247,242,.14); --rose:#f0b6a6; --rose2:#ffd9b8; --gold:#f4c875; --sea:#56d8d0; --deep:#032b3c;
  --phu-image:url("https://images.unsplash.com/photo-1698809807960-758cf416e96e?fm=jpg&ixlib=rb-4.1.0&q=85&w=2400");
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(2,26,37,.54),rgba(2,20,28,.88)),var(--phu-image) center/cover fixed;filter:saturate(1.12) contrast(1.04);z-index:-5} body:after{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 12%,rgba(255,204,139,.30),transparent 28%),radial-gradient(circle at 15% 35%,rgba(63,226,219,.15),transparent 28%),linear-gradient(180deg,rgba(0,15,22,.18),rgba(0,15,22,.78));mix-blend-mode:screen;z-index:-4}
.noise{position:fixed;inset:-50%;opacity:.045;pointer-events:none;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}
.topbar{position:fixed;top:0;left:0;right:0;height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px);z-index:15;background:linear-gradient(180deg,rgba(2,22,29,.86),rgba(2,22,29,.18),transparent);backdrop-filter:blur(7px)}
.brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none;letter-spacing:.12em}.brand-mark{font-family:"Cormorant Garamond";font-size:29px;color:var(--rose2)}.brand b{font-size:11px;font-weight:600;display:block}.brand small{display:block;color:#77716d;font-size:7px;letter-spacing:.28em;margin-top:3px}
.lang-btn{background:transparent;border:1px solid var(--line);color:#eee;padding:10px 13px;font-size:10px;letter-spacing:.14em;border-radius:100px;cursor:pointer;transition:.35s}.lang-btn:hover{border-color:rgba(215,161,170,.65);box-shadow:0 0 25px rgba(215,161,170,.12)}
.hero{min-height:100svh;display:grid;place-items:center;position:relative;overflow:hidden;text-align:center;isolation:isolate;padding:120px 22px 70px}
.hero-copy{max-width:980px;position:relative;z-index:2}.eyebrow{font-size:9px;letter-spacing:.35em;color:#aaa19a;display:flex;align-items:center;gap:14px;justify-content:center}.eyebrow span{width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--rose))}
.hero h1{font-family:"Cormorant Garamond",serif;font-size:clamp(76px,15vw,180px);line-height:.72;margin:42px 0 35px;font-weight:400;letter-spacing:-.055em}.hero h1 em{font-style:normal;color:#e6c5c8}.hero h1 strong{font-weight:500;color:#f5eee7}
.hero-sub{max-width:540px;margin:auto;color:#aaa19a;font-size:13px;line-height:1.9;font-weight:300}.scroll-cta{display:inline-flex;align-items:center;gap:18px;margin-top:42px;color:#ddd;text-decoration:none;font-size:9px;letter-spacing:.28em}.scroll-cta i{font-style:normal;border:1px solid var(--line);border-radius:50%;width:39px;height:39px;display:grid;place-items:center;color:var(--rose2);animation:float 2.3s ease-in-out infinite}
.hero-sakura{position:absolute;right:7%;top:23%;font:600 clamp(44px,8vw,100px)/.75 "Cormorant Garamond";letter-spacing:.02em;color:rgba(255,221,174,.13);text-align:left;transform:rotate(-9deg);text-shadow:0 0 45px rgba(255,200,119,.18);z-index:1}.hero-sakura em{font-style:italic;color:rgba(95,226,219,.16)}
.hero-phuquoc-stamp{position:absolute;left:5%;bottom:16%;font-size:9px;letter-spacing:.36em;color:rgba(235,250,245,.55);text-align:left;line-height:1.7;z-index:1}.hero-phuquoc-stamp:before{content:"";display:block;width:80px;height:1px;margin-bottom:10px;background:linear-gradient(90deg,var(--gold),transparent)}.hero-phuquoc-stamp span{font-size:6px;color:rgba(235,250,245,.38);letter-spacing:.25em}
.hero-orbit{position:absolute;border:1px solid rgba(100,232,224,.16);border-radius:50%;width:min(78vw,820px);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-b{width:min(52vw,550px);border-color:rgba(244,200,117,.13);animation:spin 35s linear infinite}.orbit-a{animation:spin 55s linear infinite reverse}
.intro{max-width:1120px;margin:0 auto;padding:120px 28px 55px;display:grid;grid-template-columns:.55fr 1fr;gap:50px;border-top:1px solid var(--line)}.section-kicker{font-size:9px;letter-spacing:.28em;color:var(--rose2)}.intro h2,.experience h2{font-family:"Cormorant Garamond";font-weight:400;font-size:clamp(48px,7vw,82px);line-height:.9;margin:0 0 22px}.intro h2 i,.experience h2 i{font-style:italic;color:var(--rose2)}.intro p,.experience p{max-width:650px;color:#99918b;line-height:1.9;font-size:13px}
.contact-grid{max-width:1120px;margin:auto;padding:25px 22px 150px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card{background:linear-gradient(145deg,rgba(10,48,57,.70),rgba(4,25,32,.58));border:1px solid var(--line);border-radius:25px;padding:20px;position:relative;overflow:hidden;transition:transform .6s cubic-bezier(.2,.8,.2,1),border-color .4s,box-shadow .6s}.contact-card:before{content:"PHÚ QUỐC";position:absolute;right:-10px;bottom:-10px;font:600 72px/1 "Cormorant Garamond";letter-spacing:.04em;color:rgba(255,255,255,.025);transform:rotate(-8deg);pointer-events:none}.contact-card:after{content:"";position:absolute;top:-30%;left:-80%;width:45%;height:160%;transform:rotate(25deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);transition:left .9s}.contact-card:hover:after{left:135%}.contact-card:hover{transform:translateY(-7px);border-color:rgba(100,232,224,.28);box-shadow:0 25px 70px rgba(0,0,0,.38),0 0 50px rgba(70,220,213,.10)}.wide-card{grid-column:1/-1;max-width:560px;width:100%;justify-self:center}
.card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.number{font-size:8px;color:#726c67;letter-spacing:.15em}.card-top h3{font-family:"Cormorant Garamond";font-size:30px;font-weight:500;margin:5px 0 0}.card-top p{margin:2px 0 0;color:#817a75;font-size:10px;letter-spacing:.04em}.mini-icon{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:12px;color:var(--rose2)}
.qr-wrap{background:#fff;border-radius:16px;padding:10px;position:relative;overflow:hidden}.qr-wrap img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:9px}.scan-line{position:absolute;left:7%;right:7%;height:1px;background:linear-gradient(90deg,transparent,var(--sea),var(--gold),transparent);box-shadow:0 0 12px var(--rose2);top:12%;z-index:2;opacity:.6;animation:scan 4.5s ease-in-out infinite}
.card-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:15px}.card-bottom span{font-size:7px;color:#6e6863;letter-spacing:.22em}.card-bottom a,.copyless{font:inherit;font-size:8px;color:#ddd;text-decoration:none;letter-spacing:.12em;background:transparent;border:0;cursor:pointer;padding:0}.card-bottom a:hover,.copyless:hover{color:var(--rose2)}
.experience{max-width:1120px;margin:auto;padding:130px 28px 170px;border-top:1px solid var(--line);position:relative}.experience h2{font-size:clamp(58px,9vw,112px);margin-top:35px}.experience h2 span{font-size:.5em;color:#766f6a;letter-spacing:.04em}.experience>p{max-width:500px;margin-top:40px}.pillars{display:grid;grid-template-columns:repeat(3,1fr);margin-top:75px;border-top:1px solid var(--line)}.pillars div{padding:28px 18px;border-right:1px solid var(--line)}.pillars div:last-child{border:0}.pillars b{display:block;font-size:9px;color:var(--rose2);margin-bottom:30px}.pillars strong{display:block;font-family:"Cormorant Garamond";font-size:22px;font-weight:500}.pillars span{display:block;color:#716b66;font-size:9px;margin-top:8px;letter-spacing:.08em}
footer{border-top:1px solid var(--line);padding:38px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#716b66;font-size:9px;letter-spacing:.12em}.footer-mark{font-family:"Cormorant Garamond";font-size:30px;color:var(--rose)}footer b{display:block;color:#bdb4ae;font-size:10px}footer span{display:block;font-size:7px;margin-top:5px}footer a{color:#aaa;text-decoration:none}
#petals{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:10}.petal{position:absolute;width:9px;height:13px;border-radius:90% 10% 90% 10%;background:linear-gradient(135deg,#f1c5cb,#a66f79);opacity:.55;filter:blur(.1px);animation:fall linear forwards}
.touch-ripple{position:fixed;width:10px;height:10px;border:1px solid rgba(241,197,203,.75);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:25;animation:ripple .8s ease-out forwards}.touch-petal{position:fixed;pointer-events:none;z-index:25;font-size:15px;color:var(--rose2);animation:burst 1.3s ease-out forwards}
.language-modal{position:fixed;inset:0;z-index:30;display:none;align-items:center;justify-content:center}.language-modal.show{display:flex}.modal-backdrop{position:absolute;inset:0;background:rgba(5,4,4,.78);backdrop-filter:blur(18px)}.language-panel{position:relative;width:min(480px,calc(100% - 36px));padding:50px 38px 40px;background:linear-gradient(145deg,#181515,#0c0b0b);border:1px solid var(--line);border-radius:28px;text-align:center;box-shadow:0 40px 120px #000}.modal-close{position:absolute;right:18px;top:15px;background:none;border:0;color:#aaa;font-size:25px;cursor:pointer}.modal-flower{font-family:"Cormorant Garamond";font-size:52px;color:var(--rose2);opacity:.75}.language-panel small{font-size:8px;letter-spacing:.28em;color:#777}.language-panel h2{font:400 55px/ .9 "Cormorant Garamond";margin:22px 0 35px}.language-panel h2 i{color:var(--rose2)}.language-options{display:grid;gap:10px}.language-options button{display:flex;justify-content:space-between;align-items:center;background:rgba(8,56,65,.48);border:1px solid var(--line);border-radius:13px;padding:17px;color:#eee;letter-spacing:.12em;font-size:9px;cursor:pointer;transition:.35s}.language-options button:hover{border-color:rgba(215,161,170,.5);background:rgba(78,220,211,.10);padding-left:22px}
.reveal{opacity:0;transform:translateY(30px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes float{50%{transform:translateY(7px)}}@keyframes scan{0%,100%{top:10%;opacity:0}15%{opacity:.65}50%{top:88%;opacity:.65}85%{opacity:0}}@keyframes ripple{to{width:150px;height:150px;opacity:0}}@keyframes burst{to{transform:translate(var(--x),var(--y)) rotate(260deg) scale(.2);opacity:0}}@keyframes fall{to{transform:translate3d(var(--dx),110vh,0) rotate(var(--rot));opacity:0}}
@media(max-width:700px){.topbar{height:70px}.hero{padding-top:100px}.hero h1{font-size:76px}.intro{grid-template-columns:1fr;padding-top:85px}.contact-grid{grid-template-columns:1fr;padding-bottom:100px}.wide-card{grid-column:auto}.pillars{grid-template-columns:1fr}.pillars div{border-right:0;border-bottom:1px solid var(--line)}footer{flex-wrap:wrap}.hero-orbit{width:115vw}.hero-sakura{right:2%;top:18%}.card-top h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* V2: larger app-opening language screen */
.language-panel{
  width:min(560px,calc(100% - 28px));
  padding:62px 44px 48px;
}
.modal-flower{font-size:64px}
.language-panel small{font-size:9px}
.language-panel h2{
  font-size:clamp(64px,11vw,88px);
  line-height:.86;
  margin:28px 0 42px;
}
.language-options{gap:12px}
.language-options button{
  min-height:58px;
  padding:19px 20px;
  font-size:11px;
}
@media(max-width:700px){
  .language-panel{padding:58px 25px 34px}
  .language-panel h2{font-size:68px;margin:24px 0 34px}
  .language-options button{min-height:60px;font-size:10px}
}

/* V3 — MASSAGE NURU is the primary hero title */
.hero-title{
  margin:42px 0 35px !important;
  line-height:.9 !important;
  letter-spacing:0 !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}
.hero-main-title{
  display:block;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(62px,12vw,145px);
  line-height:.82;
  font-weight:500;
  letter-spacing:-.045em;
  color:#f2e9e2;
  white-space:nowrap;
}
.hero-brand-title{
  display:block;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(30px,5.2vw,62px);
  line-height:.9;
  font-weight:400;
  letter-spacing:.08em;
  color:#d9a9b0;
  text-transform:uppercase;
}
@media(max-width:700px){
  .hero-title{gap:12px !important;margin:44px 0 34px !important}
  .hero-main-title{
    font-size:clamp(48px,13vw,76px);
    letter-spacing:-.035em;
  }
  .hero-brand-title{
    font-size:clamp(27px,7vw,42px);
    letter-spacing:.07em;
  }
}


/* PHÚ QUỐC COASTAL LIGHT SYSTEM */
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,19,28,.34) 0%,rgba(4,42,52,.22) 38%,rgba(2,20,27,.82) 100%),linear-gradient(90deg,rgba(2,22,28,.52),transparent 46%,rgba(2,18,24,.44));z-index:-1}
.hero:after{content:"";position:absolute;left:-10%;right:-10%;bottom:-5%;height:38%;background:repeating-radial-gradient(ellipse at 50% 100%,rgba(105,235,226,.12) 0 1px,transparent 2px 24px);opacity:.42;filter:blur(.4px);animation:waterShift 13s ease-in-out infinite alternate;z-index:-1}
.sea-particles{position:fixed;inset:0;pointer-events:none;z-index:4;overflow:hidden;background-image:radial-gradient(circle,rgba(255,230,183,.65) 0 1px,transparent 2px),radial-gradient(circle,rgba(102,231,225,.48) 0 1px,transparent 2px);background-size:190px 170px,260px 230px;background-position:20px 30px,80px 100px;opacity:.20;animation:particleDrift 18s linear infinite}
.phuquoc-experience{background:radial-gradient(circle at 70% 35%,rgba(73,222,214,.09),transparent 34%),linear-gradient(180deg,rgba(2,32,40,.25),transparent)}
.phuquoc-experience:after{content:"PHÚ QUỐC • PEARL ISLAND • VIETNAM";position:absolute;right:28px;top:115px;font-size:7px;letter-spacing:.30em;color:rgba(238,249,243,.28);writing-mode:vertical-rl}
@keyframes waterShift{to{transform:translateX(3%) scale(1.04);opacity:.75}}
@keyframes particleDrift{to{background-position:100px 120px,0 20px}}
@media(max-width:700px){.hero-phuquoc-stamp{left:22px;bottom:11%;font-size:8px}.hero-sakura{right:3%;top:20%;font-size:48px}.phuquoc-experience:after{top:90px;right:18px;font-size:6px}.contact-card:before{font-size:50px}}

/* V4 — AIRY PHÚ QUỐC / NURU INTRO */
.hero{min-height:100svh;padding-bottom:120px}
.hero-copy{max-width:980px}
.hero-sub{max-width:560px!important;margin-left:auto!important;margin-right:auto!important}
.intro{max-width:1120px;margin:auto;padding:150px 28px 70px;display:grid;grid-template-columns:minmax(180px,.65fr) 1.35fr;gap:60px;align-items:start}
.contact-intro{padding-top:95px;padding-bottom:45px}
.contact-intro h2{font-size:clamp(44px,6vw,74px)}
.contact-grid{padding-top:20px;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1120px;padding-bottom:125px}
.contact-card{border-radius:20px;padding:16px;background:linear-gradient(145deg,rgba(8,46,55,.46),rgba(4,24,31,.36));box-shadow:none}
.contact-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(0,0,0,.25),0 0 35px rgba(70,220,213,.07)}
.qr-wrap{padding:7px;border-radius:13px;max-width:300px;margin:auto}
.card-top{margin-bottom:11px}
.card-top h3{font-size:27px}
.card-bottom{padding-top:11px}
.wide-card{grid-column:2;max-width:none}
.nuru-intro{max-width:1120px;margin:0 auto;padding:105px 28px 95px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;position:relative}
.nuru-intro:before{content:"";position:absolute;left:28px;right:28px;top:0;border-top:1px solid var(--line)}
.nuru-visual{min-height:520px;border-radius:32px;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(4,43,55,.15),rgba(2,19,26,.82)),var(--phu-image) center/cover;box-shadow:0 25px 80px rgba(0,0,0,.22);display:flex;flex-direction:column;justify-content:flex-end;padding:30px}
.nuru-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 52% 20%,rgba(255,213,147,.38),transparent 20%),linear-gradient(180deg,transparent 30%,rgba(1,17,24,.7));pointer-events:none}
.nuru-visual span,.nuru-visual b{position:relative;z-index:1}.nuru-visual span{font:500 clamp(46px,6vw,78px)/.8 "Cormorant Garamond";letter-spacing:.03em}.nuru-visual b{font-size:8px;letter-spacing:.32em;color:#d9ece9;margin-top:14px}.nuru-sun{position:absolute;z-index:1;width:100px;height:100px;border-radius:50%;right:18%;top:17%;background:rgba(255,210,147,.6);filter:blur(1px);box-shadow:0 0 80px 25px rgba(255,194,121,.22)}
.nuru-copy h2{font-size:clamp(52px,6vw,82px);line-height:.92;margin:25px 0 28px}.nuru-copy h2 i{color:var(--rose2);font-style:italic}.nuru-copy>p{max-width:520px;color:#a7b6b4;line-height:1.95;font-size:13px}
.nuru-points{margin:38px 0 30px;border-top:1px solid var(--line)}.nuru-points span{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid var(--line);font-size:8px;color:#777f7d;letter-spacing:.13em}.nuru-points b{color:#d9e7e4;font-weight:500}.text-link{font-size:9px;letter-spacing:.18em;color:#eee;text-decoration:none}.text-link:hover{color:var(--rose2)}
@media(max-width:900px){.contact-grid{grid-template-columns:repeat(2,1fr)}.wide-card{grid-column:1/-1;max-width:420px}.nuru-intro{grid-template-columns:1fr;gap:55px}.nuru-visual{min-height:420px}.intro{gap:30px}}
@media(max-width:700px){.intro{grid-template-columns:1fr;padding:95px 22px 50px}.contact-intro{padding-top:75px}.contact-grid{grid-template-columns:1fr;padding:15px 22px 90px}.wide-card{grid-column:auto;max-width:none}.nuru-intro{padding:80px 22px 75px;gap:40px}.nuru-intro:before{left:22px;right:22px}.nuru-visual{min-height:390px;border-radius:24px;padding:23px}.nuru-copy h2{font-size:52px}.nuru-points{margin-top:30px}}
