/* PHU QUOC CHARTER - Homepage Visual Master V2 */
.home-v2{background:#f8f5ee;color:#09263a}
.home-v2 .shell{width:min(1240px,calc(100% - 48px))}
.home-v2 .site-header{top:0;width:100%;max-width:none;border:0;border-radius:0;background:rgba(250,247,240,.91);box-shadow:none;border-bottom:1px solid rgba(9,38,58,.09);backdrop-filter:blur(18px)}
.home-v2 .header-inner{height:78px;max-width:1360px;margin:auto;padding:0 30px;gap:28px}
.home-v2 .wordmark{min-width:250px}
.home-v2 .wordmark strong{font-size:1.22rem;letter-spacing:.08em}
.home-v2 .wordmark small{font-size:.52rem;letter-spacing:.2em}
.home-v2 .mark{background:transparent;border:1px solid rgba(9,38,58,.24)}
.home-v2 .mark:after{background:#b99654;box-shadow:0 6px 0 rgba(185,150,84,.34)}
.home-v2 .nav{font-family:var(--serif);font-weight:500;gap:25px}
.home-v2 .nav a{position:relative}
.home-v2 .nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:#b99654;transition:right .25s ease}
.home-v2 .nav a:hover:after{right:0}
.home-v2 .button.sun{background:#082f43;color:#fff;border-radius:8px}
.home-v2 .button.sun:hover{background:#0c4158}
.home-v2 .button.light{border-radius:8px;background:#fbfaf6}
.home-v2 .eyebrow{letter-spacing:.2em;font-size:.64rem}

/* Hero */
.home-v2 .master-hero{position:relative;min-height:720px;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#082b3f}
.home-v2 .master-hero-media{position:absolute;inset:0;background-image:url('https://images.pexels.com/photos/261102/pexels-photo-261102.jpeg?auto=compress&cs=tinysrgb&w=2200');background-size:cover;background-position:center 44%;transform:scale(1.015)}
.home-v2 .master-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,29,45,.72) 0%,rgba(4,29,45,.34) 45%,rgba(4,29,45,.06) 75%),linear-gradient(0deg,rgba(4,29,45,.42),transparent 45%)}
.home-v2 .master-hero-inner{position:relative;z-index:2;width:min(1240px,calc(100% - 48px));margin:0 auto;padding:150px 0 205px}
.home-v2 .hero-kicker{font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;margin-bottom:17px;color:#f2ead8}
.home-v2 .master-hero h1{font-size:clamp(4.2rem,7vw,6.9rem);line-height:.9;letter-spacing:-.045em;margin:0;max-width:690px;font-weight:500}
.home-v2 .master-hero h1 em{font-style:normal;color:#e2c688}
.home-v2 .master-hero p{font-family:var(--serif);font-size:1.13rem;line-height:1.55;max-width:490px;margin:22px 0 0;color:#f4f1e8}
.home-v2 .hero-whisper{position:absolute;z-index:2;right:max(40px,calc((100vw - 1240px)/2));top:150px;max-width:215px;padding-left:19px;border-left:1px solid rgba(255,255,255,.55);font-family:var(--serif);font-size:1.05rem;line-height:1.45;color:#fff}

/* Composer */
.home-v2 .composer-wrap{position:relative;z-index:5;margin-top:-142px;padding-bottom:30px}
.home-v2 .route-composer{width:min(1040px,calc(100% - 48px));margin:auto;background:rgba(255,255,255,.97);color:#09263a;border:1px solid rgba(255,255,255,.72);border-radius:14px;box-shadow:0 28px 80px rgba(4,30,45,.2);overflow:hidden}
.home-v2 .composer-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #e5e0d7}
.home-v2 .composer-tab{border:0;background:transparent;min-height:52px;padding:0 12px;font:600 .76rem var(--sans);color:#50636c;border-right:1px solid #eee8df;cursor:pointer}
.home-v2 .composer-tab:last-child{border-right:0}
.home-v2 .composer-tab.is-active{background:#082f43;color:#fff}
.home-v2 .composer-body{display:grid;grid-template-columns:1.25fr 1.25fr .85fr .7fr .7fr auto;gap:0;padding:13px}
.home-v2 .composer-field{padding:4px 13px;border-right:1px solid #e8e3da;min-width:0}
.home-v2 .composer-field small{display:block;font-size:.58rem;color:#7a8b92;margin-bottom:5px;text-transform:uppercase;letter-spacing:.08em}
.home-v2 .composer-field input,.home-v2 .composer-field select{width:100%;border:0;outline:0;background:transparent;font:600 .82rem var(--sans);color:#09263a;padding:0;min-height:28px}
.home-v2 .composer-field input::placeholder{color:#9aa7ab;font-weight:500}
.home-v2 .composer-submit{border:0;border-radius:8px;background:#082f43;color:#fff;padding:0 22px;font:700 .8rem var(--sans);cursor:pointer;min-width:120px}
.home-v2 .composer-foot{display:flex;justify-content:space-between;gap:18px;align-items:center;border-top:1px solid #eee9e0;padding:10px 14px;font-size:.72rem;color:#60717a}
.home-v2 .composer-foot label{display:flex;align-items:center;gap:8px}
.home-v2 .composer-foot a{font-weight:700;color:#092f44}

/* Journey */
.home-v2 .journey-strip{padding:38px 0 52px;background:#fbfaf6;border-bottom:1px solid #e9e3d8}
.home-v2 .journey-intro{display:grid;grid-template-columns:140px 1fr;gap:24px;align-items:center}
.home-v2 .journey-label{font-family:var(--serif);font-size:1.03rem;line-height:1.15;text-transform:uppercase;letter-spacing:.02em}
.home-v2 .journey-track{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.home-v2 .journey-card{position:relative}
.home-v2 .journey-image{height:114px;border-radius:12px;overflow:hidden;background:#ddd}
.home-v2 .journey-image img{height:100%}
.home-v2 .journey-meta{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;margin-top:10px}
.home-v2 .journey-no{width:24px;height:24px;border:1px solid #b6c1c5;border-radius:50%;display:grid;place-items:center;font-size:.62rem;font-weight:700}
.home-v2 .journey-meta strong{display:block;font-family:var(--serif);font-size:.94rem;line-height:1}
.home-v2 .journey-meta span{display:block;font-size:.67rem;color:#71828a;margin-top:4px}

/* Signature products */
.home-v2 .signature-zone{padding:26px 0 82px;background:#f4efe5}
.home-v2 .signature-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}
.home-v2 .signature-head h2{font-size:clamp(2.7rem,4.4vw,4.6rem);line-height:.95;margin:6px 0 0;font-weight:500}
.home-v2 .signature-head p{max-width:470px;color:#6c777b;line-height:1.65}
.home-v2 .signature-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:1fr 1fr;min-height:760px;gap:10px}
.home-v2 .signature-panel{position:relative;overflow:hidden;background:#dce4e6;min-height:0}
.home-v2 .signature-panel:first-child{grid-row:1/3;border-radius:16px 4px 4px 16px}
.home-v2 .signature-panel:nth-child(2){border-radius:4px 16px 4px 4px}
.home-v2 .signature-panel:nth-child(3){border-radius:4px 4px 16px 4px}
.home-v2 .signature-panel>img{position:absolute;inset:0;height:100%;transition:transform .8s ease}
.home-v2 .signature-panel:hover>img{transform:scale(1.025)}
.home-v2 .signature-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,28,43,.82) 0%,rgba(4,28,43,.16) 54%,rgba(4,28,43,.05) 100%)}
.home-v2 .signature-panel.light-copy:after{background:linear-gradient(90deg,rgba(247,243,234,.94),rgba(247,243,234,.55) 48%,rgba(247,243,234,.05) 78%)}
.home-v2 .signature-copy{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff}
.home-v2 .signature-panel.light-copy .signature-copy{top:27px;bottom:auto;color:#09263a;max-width:47%}
.home-v2 .signature-copy h3{font-size:clamp(2.5rem,4.1vw,4.6rem);line-height:.92;margin:7px 0 12px;font-weight:500}
.home-v2 .signature-panel:not(:first-child) .signature-copy h3{font-size:clamp(2rem,3.2vw,3.35rem)}
.home-v2 .signature-copy p{max-width:500px;line-height:1.55;margin:0 0 16px;color:inherit}
.home-v2 .signature-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;max-width:520px;margin:17px 0 22px;font-size:.76rem}
.home-v2 .signature-panel:not(:first-child) .signature-points{grid-template-columns:1fr;gap:5px;margin:11px 0 16px}
.home-v2 .signature-points span:before{content:'·';margin-right:8px;color:#e2c688;font-weight:800}
.home-v2 .signature-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:5px;border-bottom:1px solid currentColor;font-weight:700;font-size:.8rem}
.home-v2 .media-disclaimer{font-size:.68rem;color:#81898c;margin-top:11px;text-align:right}

/* Planner + illustrated map */
.home-v2 .plan-master{padding:86px 0;background:#fbfaf6}
.home-v2 .plan-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:stretch}
.home-v2 .plan-copy{padding:20px 0}
.home-v2 .plan-copy h2{font-size:clamp(3.5rem,5.6vw,6rem);line-height:.89;margin:8px 0 15px;font-weight:500}
.home-v2 .plan-copy>p{color:#64747a;max-width:630px;line-height:1.65}
.home-v2 .plan-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:28px}
.home-v2 .plan-choice{background:#fff;border:1px solid #e4ded3;border-radius:10px;overflow:hidden;min-height:190px;transition:.25s;display:flex;flex-direction:column}
.home-v2 .plan-choice:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(7,38,55,.09)}
.home-v2 .plan-choice img{height:105px}
.home-v2 .plan-choice div{padding:12px}
.home-v2 .plan-choice strong{font-family:var(--serif);font-size:.96rem}
.home-v2 .plan-choice span{font-size:.65rem;line-height:1.35;color:#75848a;display:block;margin-top:4px}
.home-v2 .plan-actions{display:flex;align-items:center;gap:24px;margin-top:20px}
.home-v2 .hand-note{font-family:var(--serif);font-style:italic;color:#315269;transform:rotate(-2deg);font-size:1.05rem}
.home-v2 .island-map-card{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(145deg,#d9eef0,#b9dfe4);min-height:490px;border:1px solid rgba(9,38,58,.08)}
.home-v2 .map-title{position:absolute;z-index:3;left:24px;top:23px}
.home-v2 .map-title h3{font-size:1.65rem;margin:0 0 4px;font-weight:500}
.home-v2 .map-title p{font-size:.7rem;margin:0;color:#536b76}
.home-v2 .island-svg{position:absolute;inset:65px 0 0;width:100%;height:calc(100% - 65px)}
.home-v2 .map-legend{position:absolute;z-index:3;left:23px;bottom:21px;display:grid;gap:7px;background:rgba(251,250,246,.82);backdrop-filter:blur(10px);padding:13px 15px;border-radius:10px;font-size:.68rem}
.home-v2 .map-legend span{display:flex;align-items:center;gap:8px}
.home-v2 .map-dot{width:8px;height:8px;border-radius:50%;background:#082f43;box-shadow:0 0 0 3px rgba(8,47,67,.1)}
.home-v2 .map-dot.sea{background:#118ca4}
.home-v2 .map-dot.sunset{background:#c77b42}
.home-v2 .map-note{position:absolute;right:18px;bottom:18px;font-size:.58rem;color:#5e737c}

/* Final statement */
.home-v2 .final-cta{position:relative;min-height:370px;display:flex;align-items:center;color:#fff;background:#082f43;overflow:hidden}
.home-v2 .final-cta:before{content:'';position:absolute;inset:0;background:url('https://images.pexels.com/photos/1450353/pexels-photo-1450353.jpeg?auto=compress&cs=tinysrgb&w=2200') center/cover;opacity:.58}
.home-v2 .final-cta:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,35,52,.92),rgba(5,35,52,.36) 66%,rgba(5,35,52,.08))}
.home-v2 .final-inner{position:relative;z-index:2}
.home-v2 .final-inner h2{font-size:clamp(3.2rem,5vw,5.6rem);line-height:.92;margin:0 0 14px;font-weight:500}
.home-v2 .final-inner p{font-family:var(--serif);font-size:1.1rem;line-height:1.5;margin:0 0 24px;max-width:560px}
.home-v2 .final-inner .button{background:#e4c98f;color:#082f43;border-radius:7px}
.home-v2 .footer{background:#061f2d}

.home-v2 .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.home-v2 .reveal.is-visible{opacity:1;transform:none}

@media(max-width:1060px){
  .home-v2 .header-inner{padding:0 20px}.home-v2 .nav{gap:15px;font-size:.79rem}.home-v2 .wordmark{min-width:220px}
  .home-v2 .composer-body{grid-template-columns:1fr 1fr 1fr}.home-v2 .composer-field{border-bottom:1px solid #ece6dc}.home-v2 .composer-submit{min-height:50px;grid-column:1/-1;margin-top:8px}
  .home-v2 .signature-grid{min-height:700px}.home-v2 .plan-grid{grid-template-columns:1fr}.home-v2 .island-map-card{min-height:430px}
}
@media(max-width:820px){
  .home-v2 .site-header{background:rgba(250,247,240,.96)}.home-v2 .header-inner{height:68px}.home-v2 .nav{top:68px;left:0;right:0;border-radius:0;box-shadow:0 18px 35px rgba(5,31,47,.12);padding:18px 24px}.home-v2 .nav a{padding:9px 0}.home-v2 .menu-toggle{display:block;margin-left:auto}.home-v2 .header-actions{display:none}
  .home-v2 .master-hero{min-height:630px}.home-v2 .master-hero-inner{padding:130px 0 185px}.home-v2 .master-hero h1{font-size:clamp(3.8rem,11vw,5.5rem);max-width:560px}.home-v2 .hero-whisper{display:none}
  .home-v2 .composer-wrap{margin-top:-145px}.home-v2 .route-composer{width:min(100% - 28px,700px)}.home-v2 .composer-tabs{overflow:auto;display:flex}.home-v2 .composer-tab{min-width:130px;padding:0 14px}.home-v2 .composer-body{grid-template-columns:1fr 1fr}.home-v2 .composer-field:nth-child(odd){border-left:0}.home-v2 .composer-submit{grid-column:1/-1}
  .home-v2 .journey-intro{grid-template-columns:1fr}.home-v2 .journey-track{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.home-v2 .journey-card{min-width:205px;scroll-snap-align:start}
  .home-v2 .signature-head{display:block}.home-v2 .signature-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;min-height:0}.home-v2 .signature-panel,.home-v2 .signature-panel:first-child,.home-v2 .signature-panel:nth-child(2),.home-v2 .signature-panel:nth-child(3){grid-row:auto;border-radius:14px;min-height:440px}.home-v2 .signature-panel:not(:first-child){min-height:360px}.home-v2 .signature-panel.light-copy .signature-copy{max-width:62%}
  .home-v2 .plan-choices{grid-template-columns:1fr 1fr}.home-v2 .island-map-card{min-height:420px}
}
@media(max-width:560px){
  .home-v2 .shell{width:calc(100% - 24px)}.home-v2 .header-inner{padding:0 13px}.home-v2 .wordmark strong{font-size:.96rem}.home-v2 .wordmark small{display:none}
  .home-v2 .master-hero{min-height:570px}.home-v2 .master-hero-media{background-position:58% center}.home-v2 .master-hero-inner{width:calc(100% - 28px);padding:112px 0 180px}.home-v2 .hero-kicker{font-size:.57rem}.home-v2 .master-hero h1{font-size:3.8rem;line-height:.88}.home-v2 .master-hero p{font-size:.98rem;max-width:330px}
  .home-v2 .composer-wrap{margin-top:-160px;padding-bottom:18px}.home-v2 .route-composer{width:calc(100% - 18px);border-radius:12px}.home-v2 .composer-tabs{scrollbar-width:none}.home-v2 .composer-tab{min-width:112px;font-size:.7rem}.home-v2 .composer-body{grid-template-columns:1fr;padding:8px}.home-v2 .composer-field{border-right:0;border-bottom:1px solid #eee8df;padding:9px 10px}.home-v2 .composer-submit{min-height:51px;margin-top:8px}.home-v2 .composer-foot{align-items:flex-start;flex-direction:column;gap:8px}
  .home-v2 .journey-strip{padding:28px 0 38px}.home-v2 .journey-label{font-size:.92rem}.home-v2 .journey-card{min-width:180px}.home-v2 .journey-image{height:106px}
  .home-v2 .signature-zone{padding:20px 0 54px}.home-v2 .signature-head h2{font-size:3rem}.home-v2 .signature-panel,.home-v2 .signature-panel:first-child,.home-v2 .signature-panel:not(:first-child){min-height:430px}.home-v2 .signature-panel.light-copy .signature-copy{top:auto;bottom:24px;max-width:none;color:#fff}.home-v2 .signature-panel.light-copy:after{background:linear-gradient(0deg,rgba(4,28,43,.82),rgba(4,28,43,.08) 70%)}.home-v2 .signature-copy{left:20px;right:20px;bottom:22px}.home-v2 .signature-copy h3{font-size:2.55rem}.home-v2 .signature-points{grid-template-columns:1fr;gap:5px}.home-v2 .media-disclaimer{text-align:left}
  .home-v2 .plan-master{padding:58px 0}.home-v2 .plan-copy h2{font-size:3.6rem}.home-v2 .plan-choices{grid-template-columns:1fr 1fr;gap:8px}.home-v2 .plan-choice{min-height:170px}.home-v2 .plan-choice img{height:92px}.home-v2 .plan-actions{display:grid;gap:14px}.home-v2 .hand-note{font-size:.94rem}.home-v2 .island-map-card{min-height:390px}.home-v2 .map-title{left:18px;top:18px}.home-v2 .map-legend{left:16px;bottom:16px}.home-v2 .map-note{display:none}
  .home-v2 .final-cta{min-height:360px}.home-v2 .final-inner h2{font-size:3.5rem}.home-v2 .mobile-cta{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:60;left:8px;right:8px;bottom:8px;padding:6px;background:rgba(250,247,240,.94);backdrop-filter:blur(14px);border:1px solid rgba(9,38,58,.1);border-radius:11px;box-shadow:0 10px 35px rgba(4,29,45,.18)}.home-v2 .mobile-cta .button{min-height:45px;border-radius:7px}
}
@media(prefers-reduced-motion:reduce){.home-v2 *{scroll-behavior:auto!important}.home-v2 .reveal{opacity:1;transform:none;transition:none}.home-v2 .signature-panel>img{transition:none}}
