:root{--font-display:'Cormorant Garamond',Georgia,serif;--font-body:'Manrope',Arial,sans-serif;--black:#050505;--ivory:#f5efe6;--gold:#d6c09b;--gold-deep:#b59663;--muted:rgba(245,239,230,.72);--muted-soft:rgba(245,239,230,.52);--line:rgba(245,239,230,.075);--glass:rgba(245,239,230,.035);--ease:cubic-bezier(.22,.61,.36,1)}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--black);color:var(--ivory);font-family:var(--font-body);font-weight:300;font-size:15px;line-height:1.9;letter-spacing:.015em;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.topbar{position:fixed;top:0;left:0;right:0;height:96px;z-index:120;padding:0 5vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:linear-gradient(to bottom,rgba(5,5,5,.22),rgba(5,5,5,.01));border-bottom:1px solid rgba(255,255,255,.015);backdrop-filter:blur(8px);transition:.75s var(--ease)}
.topbar.is-scrolled{height:70px;background:rgba(5,5,5,.5);border-bottom-color:rgba(255,255,255,.045);backdrop-filter:blur(16px)}
.menu-trigger{justify-self:start;border:0;background:transparent;color:rgba(245,239,230,.82);font-size:14px;letter-spacing:.18em;cursor:pointer;transition:.75s var(--ease)}.topbar.is-scrolled .menu-trigger{font-size:11px;color:rgba(245,239,230,.62)}
.brand{justify-self:center;color:var(--gold);font-weight:300;font-size:20.5px;letter-spacing:.56em;text-transform:uppercase;white-space:nowrap;transition:.75s var(--ease)}.topbar.is-scrolled .brand{font-size:13.2px;letter-spacing:.46em;color:rgba(214,192,155,.82)}
.header-logo-right{justify-self:end;display:flex;align-items:center}.header-logo-right img{width:62px;height:auto;object-fit:contain;opacity:.9;filter:drop-shadow(0 0 16px rgba(214,192,155,.18));transition:.75s var(--ease)}.topbar.is-scrolled .header-logo-right img{width:38px;opacity:.72}
.mobile-menu{position:fixed;inset:0;z-index:110;opacity:0;visibility:hidden;pointer-events:none;transition:.45s var(--ease)}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto}.menu-backdrop{position:absolute;inset:0;border:0;background:rgba(5,5,5,.46);backdrop-filter:blur(8px)}
.menu-panel{position:relative;width:min(480px,86vw);min-height:100vh;padding:132px 5vw 60px;background:radial-gradient(circle at 20% 10%,rgba(214,192,155,.13),transparent 34%),rgba(5,5,5,.96);border-right:1px solid rgba(255,255,255,.075);box-shadow:40px 0 80px rgba(0,0,0,.42);transform:translateX(-100%);transition:.65s var(--ease)}.mobile-menu.open .menu-panel{transform:translateX(0)}
.mobile-menu-inner{display:grid;gap:18px;text-align:left}.menu-eyebrow{color:var(--gold);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:28px}.mobile-menu a{font-family:var(--font-display);font-weight:300;font-size:clamp(40px,5.4vw,62px);line-height:.95;letter-spacing:-.035em;color:rgba(245,239,230,.92);transition:.45s var(--ease)}.mobile-menu a:hover{color:var(--gold);transform:translateX(6px)}.menu-contact{margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}.menu-contact a{font-family:var(--font-body)!important;font-size:13px!important;letter-spacing:.08em!important;color:var(--gold)}
h1,h2,h3{font-family:var(--font-display);font-weight:300;color:var(--ivory)}h1{font-size:clamp(58px,8vw,122px);line-height:.94;letter-spacing:-.05em;max-width:1100px}h2{font-size:clamp(42px,5vw,76px);line-height:1.02;letter-spacing:-.03em}h3{font-size:clamp(28px,3vw,40px);line-height:1.08;letter-spacing:-.02em}p,li{font-weight:300;font-size:15px;line-height:1.95;letter-spacing:.015em;color:var(--muted)}.eyebrow{color:var(--gold);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:34px}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 27px;border:1px solid rgba(214,192,155,.44);border-radius:999px;color:var(--ivory);background:rgba(0,0,0,.12);font-size:10.5px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:.55s var(--ease);backdrop-filter:blur(10px)}.btn.primary{color:#100e09;background:linear-gradient(135deg,var(--gold),var(--gold-deep))}.btn:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(214,192,155,.14)}
section{padding:140px 7vw;border-top:1px solid rgba(255,255,255,.04)}.reveal{opacity:0;transform:translateY(30px);transition:1.15s var(--ease)}.reveal.show{opacity:1;transform:translateY(0)}
.aman-video-hero{position:relative;height:92svh;min-height:640px;max-height:920px;margin:120px 7vw;overflow:hidden;background:var(--black);isolation:isolate;border-left:1px solid rgba(255,255,255,.035);border-right:1px solid rgba(255,255,255,.035)}.aman-video-hero video{position:absolute;top:50%;left:50%;width:101%;height:101%;transform:translate(-50%,-50%) scale(1.01);object-fit:cover;z-index:-3;filter:saturate(.82) contrast(1.04) brightness(.74);animation:amanSlowZoom 42s ease-in-out infinite alternate}@keyframes amanSlowZoom{from{transform:translate(-50%,-50%) scale(1.01)}to{transform:translate(-50%,-50%) scale(1.045)}}.aman-video-hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(to bottom,rgba(0,0,0,.18),rgba(0,0,0,.02) 34%,rgba(0,0,0,.22) 68%,rgba(0,0,0,.88)),radial-gradient(circle at 70% 22%,rgba(214,192,155,.1),transparent 38%)}.video-bottom{position:absolute;left:5vw;right:5vw;bottom:34px;display:flex;justify-content:space-between;align-items:center;color:rgba(245,239,230,.58);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}.sound-toggle{border:0;background:transparent;color:rgba(245,239,230,.62);cursor:pointer;display:inline-flex;align-items:center;gap:10px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase}.sound-dot{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 18px rgba(214,192,155,.7)}
.home-manifesto{min-height:72vh;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 0%,rgba(214,192,155,.1),transparent 34%),var(--black);border-top:0}.home-manifesto-inner{max-width:1080px;margin:0 auto}.home-manifesto h1{margin:0 auto 46px}.manifesto{font-size:clamp(22px,2vw,30px);line-height:1.7;letter-spacing:.01em;color:rgba(245,239,230,.78);max-width:760px;margin:0 auto 58px}.hero-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.home-philosophy{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.quote{font-family:var(--font-display);font-size:clamp(48px,5vw,92px);line-height:1.02;letter-spacing:-.05em;color:var(--gold)}.cinematic-image{min-height:78vh;margin:0 7vw 140px;background:linear-gradient(rgba(0,0,0,.12),rgba(0,0,0,.56)),url('https://images.unsplash.com/photo-1511285560929-80b456fea0bc?auto=format&fit=crop&w=1800&q=85') center/cover;border:1px solid var(--line)}
.page-hero{min-height:68vh;display:grid;align-items:end;padding:180px 7vw 120px;background:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.95)),url('https://images.unsplash.com/photo-1519167758481-83f550bb49b3?auto=format&fit=crop&w=1800&q=85') center/cover}.page-hero p{max-width:760px;margin-top:34px;font-size:clamp(20px,2vw,28px);line-height:1.7;color:rgba(245,239,230,.78)}
.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.editorial-card{min-height:430px;padding:46px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.014))}.editorial-card p{margin-top:22px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.image-block{min-height:560px;border:1px solid var(--line);background:linear-gradient(rgba(0,0,0,.12),rgba(0,0,0,.34)),url('https://images.unsplash.com/photo-1520854221256-17451cc331bf?auto=format&fit=crop&w=1200&q=85') center/cover}
.journal-list{display:grid;gap:1px;border-top:1px solid var(--line)}.journal-item{display:grid;grid-template-columns:.32fr 1fr;gap:40px;padding:42px 0;border-bottom:1px solid var(--line)}.journal-item small{color:var(--gold);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase}
.booking-shell{max-width:980px}.concierge-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:38px}.concierge-step{padding:22px;border:1px solid var(--line);color:var(--muted);background:rgba(255,255,255,.024);font-size:14px}.concierge-step strong{display:block;color:var(--gold);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:10px}.booking-contact-line{margin-bottom:38px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:14px}.booking-contact-line a{color:var(--gold);letter-spacing:.04em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;color:var(--gold);font-size:10px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:10px}input,select,textarea{width:100%;padding:17px;border:1px solid rgba(255,255,255,.08);color:var(--ivory);background:rgba(255,255,255,.032);font-weight:300;font-size:14px;line-height:1.8;outline:none;transition:.45s var(--ease)}input:focus,select:focus,textarea:focus{border-color:rgba(214,192,155,.46);background:rgba(255,255,255,.045)}textarea{min-height:180px;resize:vertical}.full{grid-column:1/-1}
footer{padding:48px 7vw 54px;border-top:1px solid rgba(255,255,255,.035);display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.08em;color:var(--muted-soft)}.floating-contact{position:fixed;right:22px;bottom:22px;z-index:88;display:grid;gap:10px}.float-btn{width:54px;height:54px;border-radius:50%;border:1px solid rgba(214,192,155,.38);background:rgba(8,8,7,.72);backdrop-filter:blur(14px);color:var(--gold);display:grid;place-items:center;box-shadow:0 18px 40px rgba(0,0,0,.34);font-size:12px;transition:.45s var(--ease)}.float-btn:hover{transform:translateY(-3px);background:rgba(214,192,155,.12)}
@media(max-width:980px){.topbar{height:86px}.brand{font-size:16.8px;letter-spacing:.44em}.menu-trigger{font-size:12px}.header-logo-right img{width:50px}.aman-video-hero{height:88svh;min-height:600px;margin:96px 6vw}.aman-video-hero video{width:108%;height:102%}.video-bottom{display:none}section{padding:100px 6vw}.home-philosophy,.two-col,.editorial-grid,.form-grid,.journal-item{grid-template-columns:1fr}.cinematic-image{margin:0 6vw 100px;min-height:60vh}.concierge-flow{grid-template-columns:1fr}footer{flex-direction:column}}
@media(max-width:560px){.topbar{height:72px;padding:0 6vw}.brand{font-size:14px;letter-spacing:.36em}.topbar.is-scrolled .brand{font-size:11px}.header-logo-right img{width:42px}.topbar.is-scrolled .header-logo-right img{width:32px}h1{font-size:clamp(52px,14vw,76px);line-height:.96}h2{font-size:clamp(38px,11vw,56px)}.manifesto,.page-hero p{font-size:21px;line-height:1.65}.aman-video-hero{height:82svh;min-height:540px;margin:72px 0;border-left:0;border-right:0}.aman-video-hero video{width:118%;height:100%}.hero-actions,.btn{width:100%}.cinematic-image{margin:0 0 80px}.booking-contact-line{flex-direction:column}.floating-contact{right:16px;bottom:16px}.float-btn{width:50px;height:50px}.editorial-card{padding:30px}}

/* Aman-inspired homepage rhythm refinement */
.home-manifesto {
  min-height: 92vh;
  padding-top: 190px;
  padding-bottom: 210px;
  display: grid;
  place-items: center;
}

.home-manifesto-inner {
  max-width: 1180px;
}

.home-manifesto .eyebrow {
  margin-bottom: 54px;
}

.home-manifesto h1 {
  max-width: 980px;
  margin-bottom: 68px;
  font-size: clamp(68px, 8.8vw, 132px);
  line-height: .92;
  letter-spacing: -.055em;
}

.home-manifesto .manifesto {
  max-width: 720px;
  margin-bottom: 74px;
  font-size: clamp(21px, 1.65vw, 27px);
  line-height: 1.85;
  color: rgba(245,239,230,.70);
}

.home-silence {
  min-height: 38vh;
  border-top: 0;
  display: grid;
  place-items: center;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 90px;
}

.home-silence p {
  max-width: 520px;
  font-size: 13px;
  line-height: 2.1;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(245,239,230,.45);
}

.home-philosophy-section {
  padding-top: 210px;
  padding-bottom: 220px;
}

.home-philosophy {
  grid-template-columns: .85fr 1.15fr;
  gap: 120px;
}

.home-philosophy .quote {
  font-size: clamp(56px, 5.8vw, 104px);
  line-height: .98;
  max-width: 620px;
}

.home-philosophy p {
  max-width: 620px;
  font-size: 16px;
  line-height: 2.05;
  color: rgba(245,239,230,.68);
}

.home-philosophy p + p {
  margin-top: 32px;
}

.cinematic-image {
  margin-top: 40px;
  margin-bottom: 180px;
}

.home-final-cta {
  min-height: 74vh;
  display: grid;
  place-items: center;
  text-align: center;
  padding-top: 170px !important;
  padding-bottom: 190px !important;
}

.home-final-cta h2 {
  margin-bottom: 54px;
}

.home-final-cta .manifesto {
  margin-bottom: 70px;
}

@media(max-width:980px){
  .home-manifesto {
    min-height: auto;
    padding-top: 150px;
    padding-bottom: 160px;
  }

  .home-manifesto h1 {
    font-size: clamp(58px, 12vw, 96px);
    margin-bottom: 54px;
  }

  .home-philosophy-section {
    padding-top: 140px;
    padding-bottom: 150px;
  }

  .home-philosophy {
    gap: 58px;
  }

  .home-silence {
    min-height: 28vh;
  }

  .home-final-cta {
    min-height: auto;
    padding-top: 130px !important;
    padding-bottom: 150px !important;
  }
}

@media(max-width:560px){
  .home-manifesto {
    padding-top: 120px;
    padding-bottom: 130px;
  }

  .home-manifesto .eyebrow {
    margin-bottom: 42px;
  }

  .home-manifesto h1 {
    font-size: clamp(54px, 15vw, 78px);
    margin-bottom: 46px;
  }

  .home-manifesto .manifesto {
    font-size: 19px;
    line-height: 1.8;
    margin-bottom: 56px;
  }

  .home-philosophy .quote {
    font-size: clamp(46px, 12vw, 68px);
  }
}


/* Aman-like homepage copy rhythm */
.home-manifesto {
  min-height: 88vh;
  padding-top: 130px;
  padding-bottom: 190px;
  display: grid;
  place-items: start center;
  text-align: center;
  border-top: 0;
  background: #050505;
}

.home-manifesto-inner {
  max-width: 1180px;
  margin: 0 auto;
}

.home-manifesto .eyebrow {
  margin-bottom: 52px;
  font-size: 10.5px;
  letter-spacing: .26em;
  color: rgba(245,239,230,.56);
}

.home-manifesto h1 {
  max-width: 1040px;
  margin: 0 auto 68px;
  font-size: clamp(76px, 8.2vw, 132px);
  line-height: .92;
  letter-spacing: -.055em;
}

.home-manifesto .manifesto {
  max-width: 650px;
  margin: 0 auto 76px;
  font-size: clamp(18px, 1.35vw, 21px);
  line-height: 1.95;
  letter-spacing: .012em;
  color: rgba(245,239,230,.68);
}

.home-manifesto .hero-actions {
  margin-top: 0;
}

.home-philosophy-section {
  padding-top: 180px;
  padding-bottom: 220px;
}

.home-philosophy {
  grid-template-columns: .9fr 1.1fr;
  gap: 120px;
}

.home-philosophy .quote {
  max-width: 660px;
  font-size: clamp(58px, 5.7vw, 104px);
  line-height: .98;
}

.home-philosophy p {
  max-width: 620px;
  font-size: 15.5px;
  line-height: 2.05;
  color: rgba(245,239,230,.68);
}

.home-philosophy p + p {
  margin-top: 32px;
}

.cinematic-image {
  margin-top: 0;
  margin-bottom: 190px;
}

.home-final-cta {
  min-height: 74vh;
  display: grid;
  place-items: center;
  text-align: center;
  padding-top: 170px !important;
  padding-bottom: 190px !important;
}

.home-final-cta h2 {
  margin-bottom: 56px;
}

.home-final-cta .manifesto {
  max-width: 600px;
  margin-bottom: 72px;
}

@media(max-width: 980px) {
  .home-manifesto {
    min-height: auto;
    padding-top: 120px;
    padding-bottom: 150px;
  }

  .home-manifesto h1 {
    font-size: clamp(62px, 12vw, 98px);
    margin-bottom: 54px;
  }

  .home-manifesto .manifesto {
    font-size: 18px;
    line-height: 1.85;
    margin-bottom: 60px;
  }

  .home-philosophy-section {
    padding-top: 135px;
    padding-bottom: 150px;
  }

  .home-philosophy {
    gap: 58px;
  }

  .home-final-cta {
    min-height: auto;
    padding-top: 130px !important;
    padding-bottom: 150px !important;
  }
}

@media(max-width: 560px) {
  .home-manifesto {
    padding-top: 98px;
    padding-bottom: 122px;
  }

  .home-manifesto .eyebrow {
    margin-bottom: 40px;
  }

  .home-manifesto h1 {
    font-size: clamp(54px, 15vw, 78px);
    line-height: .95;
    margin-bottom: 44px;
  }

  .home-manifesto .manifesto {
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 52px;
  }

  .home-philosophy .quote {
    font-size: clamp(46px, 12vw, 68px);
  }
}


/* Aman reference: small caption block under hero video */
.home-manifesto {
  min-height: auto !important;
  display: block !important;
  place-items: unset !important;
  text-align: left !important;
  padding: 0 7vw 120px !important;
  background: #050505 !important;
  border-top: 0 !important;
}

.home-manifesto-inner {
  max-width: 460px !important;
  margin: -84px 0 0 0 !important;
  position: relative;
  z-index: 5;
}

.home-manifesto .eyebrow {
  margin-bottom: 18px !important;
  font-family: var(--font-body);
  font-size: 8.5px !important;
  line-height: 1;
  letter-spacing: .24em !important;
  text-transform: uppercase;
  color: rgba(245,239,230,.58) !important;
}

.home-manifesto h1 {
  max-width: 460px !important;
  margin: 0 0 28px 0 !important;
  font-family: var(--font-display);
  font-size: clamp(30px, 2.15vw, 42px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.028em !important;
  color: rgba(245,239,230,.92);
}

.home-manifesto .manifesto {
  display: none !important;
}

.home-manifesto .hero-actions {
  justify-content: flex-start !important;
  gap: 0 !important;
}

.home-manifesto .btn {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(245,239,230,.72) !important;
  box-shadow: none !important;
  font-size: 11px !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
}

.home-manifesto .btn.primary {
  color: rgba(245,239,230,.72) !important;
  background: transparent !important;
}

.home-manifesto .btn + .btn {
  display: none !important;
}

.home-manifesto .btn:hover {
  transform: none !important;
  color: var(--gold) !important;
}

.home-philosophy-section {
  padding-top: 130px !important;
}

@media(max-width: 980px) {
  .home-manifesto {
    padding: 0 6vw 100px !important;
  }

  .home-manifesto-inner {
    margin-top: -54px !important;
    max-width: 420px !important;
  }

  .home-manifesto h1 {
    font-size: clamp(28px, 4vw, 38px) !important;
  }
}

@media(max-width: 560px) {
  .home-manifesto {
    padding: 34px 6vw 88px !important;
  }

  .home-manifesto-inner {
    margin-top: 0 !important;
    max-width: 92vw !important;
  }

  .home-manifesto .eyebrow {
    font-size: 8px !important;
    margin-bottom: 16px !important;
  }

  .home-manifesto h1 {
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.16 !important;
    margin-bottom: 24px !important;
  }
}


/* Aman-inspired homepage media grid */
.home-philosophy-section {
  padding: 110px 7vw 170px !important;
}

.aman-media-grid {
  display: grid;
  grid-template-columns: 1.85fr .88fr;
  gap: 52px;
  align-items: start;
}

.aman-feature-media {
  width: 100%;
  min-height: 560px;
  border: 1px solid var(--line);
  background:
    linear-gradient(to bottom, rgba(0,0,0,.06), rgba(0,0,0,.28)),
    url('assets/images/bride-guests-celebrating-mia-saigon.jpg') center/cover;
}

.aman-side-video {
  width: 100%;
  aspect-ratio: 3 / 4;
  min-height: 520px;
  border: 1px solid var(--line);
  overflow: hidden;
  background: #000;
}

.aman-side-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.82) contrast(1.04) brightness(.78);
}

.aman-card-copy {
  padding-top: 22px;
  max-width: 640px;
}

.aman-card-copy.small {
  max-width: 330px;
}

.aman-card-copy .eyebrow {
  margin-bottom: 12px !important;
  font-size: 8.5px !important;
  letter-spacing: .24em !important;
  color: rgba(245,239,230,.56) !important;
}

.aman-card-copy h2 {
  font-size: clamp(30px, 2.35vw, 42px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.028em !important;
  margin-bottom: 16px;
  max-width: 560px;
}

.aman-card-copy.small h2 {
  font-size: clamp(26px, 1.85vw, 34px) !important;
  max-width: 310px;
}

.aman-card-copy p {
  font-size: 13.5px !important;
  line-height: 1.85 !important;
  color: rgba(245,239,230,.64) !important;
  max-width: 620px;
}

.text-link {
  display: inline-block;
  margin-top: 24px;
  color: rgba(245,239,230,.76);
  font-size: 11px;
  letter-spacing: .02em;
  border-bottom: 1px solid rgba(245,239,230,.45);
  padding-bottom: 4px;
  transition: .45s var(--ease);
}

.text-link:hover {
  color: var(--gold);
  border-bottom-color: var(--gold);
}

.cinematic-image {
  display: none !important;
}

.home-final-cta {
  padding-top: 140px !important;
}

@media(max-width: 980px) {
  .aman-media-grid {
    grid-template-columns: 1fr;
    gap: 72px;
  }

  .aman-feature-media {
    min-height: 460px;
  }

  .aman-side-video {
    min-height: 520px;
    max-width: 520px;
  }

  .aman-card-copy.small {
    max-width: 520px;
  }
}

@media(max-width: 560px) {
  .home-philosophy-section {
    padding: 90px 6vw 120px !important;
  }

  .aman-feature-media {
    min-height: 340px;
  }

  .aman-side-video {
    min-height: 420px;
  }

  .aman-card-copy h2,
  .aman-card-copy.small h2 {
    font-size: clamp(28px, 8vw, 36px) !important;
  }
}


/* Final Aman-inspired homepage layout */
body {
  background: #f1ebe1 !important;
  color: #1b1713 !important;
}

.topbar {
  background: rgba(241,235,225,.72) !important;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(20,18,16,.045) !important;
}

.topbar.is-scrolled {
  background: rgba(241,235,225,.92) !important;
}

.menu-trigger,
.topbar.is-scrolled .menu-trigger {
  color: rgba(27,23,19,.82) !important;
}

.brand,
.topbar.is-scrolled .brand {
  color: rgba(27,23,19,.76) !important;
}

.header-logo-right img {
  filter: none !important;
  opacity: .78 !important;
}

.mobile-menu {
  color: var(--ivory);
}

.aman-video-hero {
  width: min(1220px, 74vw) !important;
  height: auto !important;
  aspect-ratio: 16 / 5.7 !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 160px auto 0 !important;
  border: none !important;
  background: #0b0b0b !important;
}

.aman-video-hero video {
  width: 100% !important;
  height: 100% !important;
  transform: translate(-50%, -50%) scale(1) !important;
  object-fit: cover !important;
  filter: saturate(.82) contrast(1.04) brightness(.76) !important;
  animation: none !important;
}

.aman-video-hero::before,
.aman-video-hero::after,
.video-bottom {
  display: none !important;
}

.home-manifesto {
  background: #f1ebe1 !important;
  color: #1b1713 !important;
  padding: 22px 0 64px !important;
  width: min(1220px, 74vw) !important;
  margin: 0 auto !important;
  text-align: left !important;
  min-height: auto !important;
}

.home-manifesto-inner {
  max-width: 520px !important;
  margin: 0 !important;
}

.home-manifesto .eyebrow {
  color: rgba(27,23,19,.72) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 18px !important;
}

.home-manifesto h1 {
  color: #1b1713 !important;
  font-size: clamp(34px, 2.45vw, 46px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  max-width: 520px !important;
  margin: 0 0 28px 0 !important;
}

.home-manifesto .manifesto {
  display: none !important;
}

.home-manifesto .hero-actions {
  justify-content: flex-start !important;
}

.home-manifesto .btn {
  border: 0 !important;
  padding: 0 0 5px 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(27,23,19,.82) !important;
  font-size: 12px !important;
  letter-spacing: .01em !important;
  text-transform: none !important;
  border-bottom: 1px solid rgba(27,23,19,.55) !important;
  box-shadow: none !important;
}

.home-manifesto .btn + .btn {
  display: none !important;
}

.home-philosophy-section {
  width: min(1220px, 74vw) !important;
  margin: 0 auto !important;
  padding: 0 0 140px !important;
  background: transparent !important;
  border-top: 0 !important;
}

.aman-media-grid {
  display: grid !important;
  grid-template-columns: 1.45fr 1fr !important;
  gap: 38px !important;
  align-items: start !important;
}

.aman-feature-media {
  min-height: 0 !important;
  aspect-ratio: 16 / 7.1 !important;
  border: none !important;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.22)),
    url('assets/images/bride-guests-celebrating-mia-saigon.jpg') center/cover !important;
}

.aman-side-video {
  min-height: 0 !important;
  aspect-ratio: 16 / 9.8 !important;
  border: none !important;
  background: #0b0b0b !important;
}

.aman-side-video video {
  object-fit: cover !important;
  filter: saturate(.82) contrast(1.04) brightness(.78) !important;
}

.aman-card-copy {
  padding-top: 24px !important;
  max-width: 620px !important;
}

.aman-card-copy.small {
  max-width: 420px !important;
}

.aman-card-copy .eyebrow {
  color: rgba(27,23,19,.66) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 14px !important;
}

.aman-card-copy h2 {
  color: #1b1713 !important;
  font-size: clamp(30px, 2.05vw, 40px) !important;
  line-height: 1.1 !important;
  letter-spacing: -.032em !important;
  margin-bottom: 16px !important;
  max-width: 540px !important;
}

.aman-card-copy.small h2 {
  font-size: clamp(28px, 1.8vw, 36px) !important;
  max-width: 360px !important;
}

.aman-card-copy p {
  color: rgba(27,23,19,.72) !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
  max-width: 540px !important;
}

.text-link {
  color: rgba(27,23,19,.82) !important;
  border-bottom: 1px solid rgba(27,23,19,.55) !important;
  font-size: 12px !important;
  margin-top: 22px !important;
  padding-bottom: 4px !important;
}

.home-final-cta,
.cinematic-image {
  display: none !important;
}

footer {
  background: #f1ebe1 !important;
  color: rgba(27,23,19,.52) !important;
  border-top: 1px solid rgba(27,23,19,.08) !important;
}

.floating-contact {
  display: none !important;
}

@media(max-width: 1200px) {
  .aman-video-hero,
  .home-manifesto,
  .home-philosophy-section {
    width: min(1180px, 82vw) !important;
  }
}

@media(max-width: 980px) {
  .aman-video-hero {
    width: 88vw !important;
    margin-top: 130px !important;
    aspect-ratio: 16 / 8.2 !important;
  }

  .home-manifesto,
  .home-philosophy-section {
    width: 88vw !important;
  }

  .aman-media-grid {
    grid-template-columns: 1fr !important;
    gap: 70px !important;
  }

  .aman-feature-media,
  .aman-side-video {
    aspect-ratio: 16 / 9 !important;
  }
}

@media(max-width: 560px) {
  .aman-video-hero {
    width: 100vw !important;
    margin-top: 92px !important;
    aspect-ratio: 16 / 10 !important;
  }

  .home-manifesto,
  .home-philosophy-section {
    width: 88vw !important;
  }

  .home-manifesto h1 {
    font-size: clamp(30px, 8vw, 38px) !important;
  }

  .aman-card-copy h2,
  .aman-card-copy.small h2 {
    font-size: clamp(28px, 8vw, 36px) !important;
  }
}


/* 16:9 video ratio refinement */
.aman-video-hero {
  aspect-ratio: 16 / 9 !important;
  width: min(1220px, 74vw) !important;
}

.aman-feature-media {
  aspect-ratio: 16 / 9 !important;
}

.aman-side-video {
  aspect-ratio: 16 / 9 !important;
  min-height: 0 !important;
}

@media(max-width: 980px) {
  .aman-video-hero {
    width: 88vw !important;
    aspect-ratio: 16 / 9 !important;
  }

  .aman-feature-media,
  .aman-side-video {
    aspect-ratio: 16 / 9 !important;
  }
}

@media(max-width: 560px) {
  .aman-video-hero {
    width: 100vw !important;
    aspect-ratio: 16 / 9 !important;
  }
}


/* Portrait secondary feature video refinement */
.aman-video-hero {
  aspect-ratio: 16 / 9 !important;
  width: min(1220px, 74vw) !important;
}

.aman-feature-media {
  aspect-ratio: 16 / 9 !important;
}

.aman-side-video {
  aspect-ratio: 9 / 16 !important;
  min-height: 0 !important;
  max-width: 420px !important;
  justify-self: start !important;
}

.aman-side-video video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.aman-card-copy.small {
  max-width: 420px !important;
}

@media(max-width: 980px) {
  .aman-video-hero {
    width: 88vw !important;
    aspect-ratio: 16 / 9 !important;
  }

  .aman-feature-media {
    aspect-ratio: 16 / 9 !important;
  }

  .aman-side-video {
    aspect-ratio: 9 / 16 !important;
    max-width: 420px !important;
  }
}

@media(max-width: 560px) {
  .aman-video-hero {
    width: 100vw !important;
    aspect-ratio: 16 / 9 !important;
  }

  .aman-side-video {
    max-width: 78vw !important;
  }
}


/* Aman-like description typography refinement */
.aman-card-copy p {
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  color: rgba(27,23,19,.78) !important;
  max-width: 420px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.aman-card-copy.small p {
  max-width: 360px !important;
}

.aman-card-copy h2 {
  margin-bottom: 12px !important;
}

.aman-card-copy .text-link,
.text-link {
  margin-top: 24px !important;
}

@media(max-width: 560px) {
  .aman-card-copy p,
  .aman-card-copy.small p {
    font-size: 12.5px !important;
    line-height: 1.55 !important;
    max-width: 92vw !important;
  }
}


/* Aman-inspired Experience carousel */
.lux-experiences {
  width: min(1220px, 74vw);
  margin: 0 auto 150px;
  padding: 40px 0 0 !important;
  border-top: 0 !important;
  background: transparent !important;
}

.lux-experience-head {
  display: grid;
  grid-template-columns: .55fr 1fr;
  gap: 70px;
  align-items: start;
  margin-bottom: 58px;
}

.lux-experience-head h2 {
  color: #1b1713 !important;
  font-size: clamp(30px, 2.35vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.028em !important;
}

.lux-experience-head p {
  max-width: 440px;
  color: rgba(27,23,19,.78) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

.experience-carousel {
  position: relative;
}

.experience-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(260px, 1fr);
  grid-template-columns: repeat(5, minmax(240px, 1fr));
  gap: 32px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}

.experience-track::-webkit-scrollbar {
  display: none;
}

.experience-card {
  scroll-snap-align: start;
  min-width: 0;
}

.experience-image {
  width: 100%;
  aspect-ratio: 4 / 5;
  background-size: cover;
  background-position: center;
  margin-bottom: 22px;
  filter: saturate(.88) contrast(1.02) brightness(.94);
}

.experience-card:nth-child(1) .experience-image {
  background-image: url('https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=800&q=85');
}

.experience-card:nth-child(2) .experience-image {
  background-image: url('https://images.unsplash.com/photo-1520854221256-17451cc331bf?auto=format&fit=crop&w=800&q=85');
}

.experience-card:nth-child(3) .experience-image {
  background-image: url('https://images.unsplash.com/photo-1511795409834-ef04bbd61622?auto=format&fit=crop&w=800&q=85');
}

.experience-card:nth-child(4) .experience-image {
  background-image: url('https://images.unsplash.com/photo-1464366400600-7168b8af9bc3?auto=format&fit=crop&w=800&q=85');
}

.experience-card:nth-child(5) .experience-image {
  background-image: url('https://images.unsplash.com/photo-1511285560929-80b456fea0bc?auto=format&fit=crop&w=800&q=85');
}

.experience-card .eyebrow {
  color: rgba(27,23,19,.54) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 12px !important;
}

.experience-card h3 {
  color: #1b1713 !important;
  font-size: clamp(24px, 1.55vw, 31px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.026em !important;
  margin-bottom: 14px;
}

.experience-card p {
  color: rgba(27,23,19,.72) !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  max-width: 310px;
}

.carousel-bars {
  display: flex;
  justify-content: center;
  gap: 18px;
  margin-top: 58px;
}

.carousel-bar {
  width: 82px;
  height: 1px;
  border: 0;
  background: rgba(27,23,19,.22);
  cursor: pointer;
  transition: .45s var(--ease);
}

.carousel-bar.active {
  background: rgba(27,23,19,.78);
}

@media(max-width: 1200px) {
  .lux-experiences {
    width: min(1180px, 82vw);
  }

  .experience-track {
    grid-template-columns: none;
    grid-auto-columns: minmax(270px, 32vw);
  }
}

@media(max-width: 980px) {
  .lux-experiences {
    width: 88vw;
    margin-bottom: 120px;
  }

  .lux-experience-head {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .experience-track {
    grid-auto-columns: minmax(260px, 72vw);
  }
}

@media(max-width: 560px) {
  .lux-experiences {
    width: 88vw;
    margin-bottom: 90px;
  }

  .experience-track {
    grid-auto-columns: 78vw;
    gap: 22px;
  }

  .carousel-bar {
    width: 48px;
  }
}


/* Seasonal Experiences — Aman-style left intro + right carousel */
.lux-experiences {
  width: min(1220px, 74vw) !important;
  margin: 0 auto 150px !important;
  padding: 82px 0 0 !important;
  border-top: 1px solid rgba(27,23,19,.10) !important;
  background: transparent !important;
  display: grid !important;
  grid-template-columns: .36fr .64fr !important;
  gap: 72px !important;
  align-items: start !important;
}

.lux-experience-head {
  display: block !important;
  margin: 0 !important;
}

.lux-experience-head h2 {
  color: #1b1713 !important;
  font-size: clamp(30px, 2.35vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.028em !important;
  margin-bottom: 34px !important;
  max-width: 360px !important;
}

.lux-experience-head p {
  max-width: 360px !important;
  color: rgba(27,23,19,.78) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  margin-bottom: 34px !important;
}

.lux-experience-head::after {
  content: "Discover more";
  display: inline-block;
  color: rgba(27,23,19,.82);
  font-size: 12px;
  letter-spacing: .01em;
  border-bottom: 1px solid rgba(27,23,19,.55);
  padding-bottom: 4px;
}

.experience-carousel {
  min-width: 0 !important;
}

.experience-track {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-template-columns: none !important;
  grid-auto-columns: minmax(220px, 30.8%) !important;
  gap: 34px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
}

.experience-card {
  scroll-snap-align: start !important;
}

.experience-image {
  aspect-ratio: 4 / 5 !important;
  margin-bottom: 22px !important;
}

.experience-card .eyebrow {
  color: rgba(27,23,19,.54) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 12px !important;
}

.experience-card h3 {
  color: #1b1713 !important;
  font-size: clamp(23px, 1.45vw, 30px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.026em !important;
  margin-bottom: 14px !important;
}

.experience-card p {
  color: rgba(27,23,19,.72) !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  max-width: 300px !important;
}

.carousel-bars {
  justify-content: center !important;
  margin-top: 58px !important;
}

.carousel-bar {
  width: 82px !important;
  height: 1px !important;
  background: rgba(27,23,19,.20) !important;
}

.carousel-bar.active {
  background: rgba(27,23,19,.78) !important;
}

@media(max-width: 1200px) {
  .lux-experiences {
    width: min(1180px, 82vw) !important;
    grid-template-columns: .34fr .66fr !important;
    gap: 56px !important;
  }

  .experience-track {
    grid-auto-columns: minmax(230px, 42%) !important;
  }
}

@media(max-width: 980px) {
  .lux-experiences {
    width: 88vw !important;
    display: block !important;
    padding-top: 70px !important;
  }

  .lux-experience-head {
    margin-bottom: 56px !important;
  }

  .lux-experience-head h2,
  .lux-experience-head p {
    max-width: 520px !important;
  }

  .experience-track {
    grid-auto-columns: minmax(260px, 72vw) !important;
  }
}

@media(max-width: 560px) {
  .lux-experiences {
    width: 88vw !important;
    margin-bottom: 90px !important;
  }

  .experience-track {
    grid-auto-columns: 78vw !important;
    gap: 22px !important;
  }

  .carousel-bar {
    width: 48px !important;
  }
}


/* Seasonal Experiences — 4 square editorial wedding cards */
.experience-track {
  grid-auto-columns: minmax(250px, 31.5%) !important;
  gap: 36px !important;
}

.experience-image {
  aspect-ratio: 1 / 1 !important;
  margin-bottom: 24px !important;
  filter: saturate(.72) contrast(1.02) brightness(.96) sepia(.12) !important;
}

.experience-card:nth-child(1) .experience-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.20)),
    url('https://images.unsplash.com/photo-1523438885200-e635ba2c371e?auto=format&fit=crop&w=900&q=85') !important;
}

.experience-card:nth-child(2) .experience-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.20)),
    url('https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=900&q=85') !important;
}

.experience-card:nth-child(3) .experience-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.20)),
    url('https://images.unsplash.com/photo-1511795409834-ef04bbd61622?auto=format&fit=crop&w=900&q=85') !important;
}

.experience-card:nth-child(4) .experience-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.20)),
    url('https://images.unsplash.com/photo-1464366400600-7168b8af9bc3?auto=format&fit=crop&w=900&q=85') !important;
}

.experience-card .eyebrow {
  color: rgba(27,23,19,.54) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 12px !important;
}

.experience-card h3 {
  font-size: clamp(24px, 1.55vw, 30px) !important;
  line-height: 1.12 !important;
  margin-bottom: 14px !important;
}

.experience-card p {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  max-width: 280px !important;
}

.carousel-bars .carousel-bar:nth-child(n+5) {
  display: none !important;
}

@media(max-width: 1200px) {
  .experience-track {
    grid-auto-columns: minmax(250px, 42%) !important;
  }
}

@media(max-width: 980px) {
  .experience-track {
    grid-auto-columns: minmax(260px, 72vw) !important;
  }
}


/* Seasonal Experiences — larger Aman-style cards */
.lux-experiences {
  width: min(1220px, 74vw) !important;
  grid-template-columns: .34fr .66fr !important;
  gap: 82px !important;
  padding-top: 92px !important;
  padding-bottom: 10px !important;
}

.lux-experience-head h2 {
  font-size: clamp(36px, 3.1vw, 56px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.032em !important;
  margin-bottom: 42px !important;
  max-width: 390px !important;
}

.lux-experience-head p {
  max-width: 390px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.experience-track {
  grid-auto-columns: 360px !important;
  gap: 44px !important;
}

.experience-card {
  width: 360px !important;
}

.experience-image {
  width: 360px !important;
  height: 360px !important;
  aspect-ratio: 1 / 1 !important;
  margin-bottom: 26px !important;
}

.experience-card .eyebrow {
  margin-bottom: 14px !important;
}

.experience-card h3 {
  font-size: clamp(27px, 1.8vw, 34px) !important;
  line-height: 1.1 !important;
  margin-bottom: 16px !important;
  max-width: 340px !important;
}

.experience-card p {
  max-width: 320px !important;
  font-size: 12.5px !important;
  line-height: 1.52 !important;
}

.carousel-bars {
  margin-top: 66px !important;
}

@media(max-width: 1200px) {
  .lux-experiences {
    width: min(1180px, 82vw) !important;
    grid-template-columns: .32fr .68fr !important;
    gap: 64px !important;
  }

  .experience-track {
    grid-auto-columns: 340px !important;
  }

  .experience-card,
  .experience-image {
    width: 340px !important;
  }

  .experience-image {
    height: 340px !important;
  }
}

@media(max-width: 980px) {
  .lux-experiences {
    display: block !important;
    width: 88vw !important;
  }

  .lux-experience-head {
    margin-bottom: 64px !important;
  }

  .experience-track {
    grid-auto-columns: 340px !important;
  }

  .experience-card,
  .experience-image {
    width: 340px !important;
  }

  .experience-image {
    height: 340px !important;
  }
}

@media(max-width: 560px) {
  .experience-track {
    grid-auto-columns: 82vw !important;
  }

  .experience-card,
  .experience-image {
    width: 82vw !important;
  }

  .experience-image {
    height: 82vw !important;
  }
}


/* Hero video size refined to match Aman reference more closely */
.aman-video-hero {
  width: min(1440px, 76vw) !important;
  aspect-ratio: 16 / 9 !important;
  margin: 150px auto 0 !important;
}

.home-manifesto {
  width: min(1440px, 76vw) !important;
}

@media(max-width: 1200px) {
  .aman-video-hero,
  .home-manifesto {
    width: 82vw !important;
  }
}

@media(max-width: 980px) {
  .aman-video-hero,
  .home-manifesto {
    width: 88vw !important;
  }
}

@media(max-width: 560px) {
  .aman-video-hero {
    width: 100vw !important;
    margin-top: 92px !important;
  }

  .home-manifesto {
    width: 88vw !important;
  }
}


/* Align first media grid with Hero Video: enlarge left image, keep right video unchanged */
:root {
  --lux-hero-grid: min(1440px, 76vw);
  --lux-concept-video-width: 420px;
}

.home-philosophy-section {
  width: var(--lux-hero-grid) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.aman-media-grid {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) var(--lux-concept-video-width) !important;
  gap: 38px !important;
  align-items: start !important;
}

.aman-feature-media {
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 16 / 9 !important;
}

.aman-side-video {
  width: var(--lux-concept-video-width) !important;
  max-width: var(--lux-concept-video-width) !important;
  aspect-ratio: 9 / 16 !important;
  justify-self: end !important;
}

.aman-card-copy.small {
  width: var(--lux-concept-video-width) !important;
  max-width: var(--lux-concept-video-width) !important;
}

@media(max-width: 1200px) {
  :root {
    --lux-hero-grid: 82vw;
    --lux-concept-video-width: 390px;
  }
}

@media(max-width: 980px) {
  :root {
    --lux-hero-grid: 88vw;
    --lux-concept-video-width: 420px;
  }

  .aman-media-grid {
    grid-template-columns: 1fr !important;
    gap: 70px !important;
  }

  .aman-side-video,
  .aman-card-copy.small {
    width: min(420px, 78vw) !important;
    max-width: min(420px, 78vw) !important;
    justify-self: start !important;
  }
}

@media(max-width: 560px) {
  :root {
    --lux-hero-grid: 88vw;
    --lux-concept-video-width: 78vw;
  }

  .aman-side-video,
  .aman-card-copy.small {
    width: 78vw !important;
    max-width: 78vw !important;
  }
}


/* Seasonal Experiences — align container with Hero Video and previous section */
.lux-experiences {
  width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  max-width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  grid-template-columns: .34fr .66fr !important;
  gap: 82px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.lux-experience-head {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.experience-carousel {
  width: 100% !important;
  min-width: 0 !important;
}

.experience-track {
  grid-auto-columns: 420px !important;
  gap: 48px !important;
}

.experience-card {
  width: 420px !important;
}

.experience-image {
  width: 420px !important;
  height: 420px !important;
  aspect-ratio: 1 / 1 !important;
}

.experience-card h3 {
  max-width: 390px !important;
}

.experience-card p {
  max-width: 360px !important;
}

@media(max-width: 1200px) {
  .lux-experiences {
    width: var(--lux-hero-grid, 82vw) !important;
    max-width: var(--lux-hero-grid, 82vw) !important;
    grid-template-columns: .32fr .68fr !important;
    gap: 64px !important;
  }

  .experience-track {
    grid-auto-columns: 380px !important;
  }

  .experience-card,
  .experience-image {
    width: 380px !important;
  }

  .experience-image {
    height: 380px !important;
  }
}

@media(max-width: 980px) {
  .lux-experiences {
    width: var(--lux-hero-grid, 88vw) !important;
    max-width: var(--lux-hero-grid, 88vw) !important;
    display: block !important;
  }

  .lux-experience-head {
    margin-bottom: 64px !important;
  }

  .experience-track {
    grid-auto-columns: 340px !important;
  }

  .experience-card,
  .experience-image {
    width: 340px !important;
  }

  .experience-image {
    height: 340px !important;
  }
}

@media(max-width: 560px) {
  .lux-experiences {
    width: 88vw !important;
    max-width: 88vw !important;
  }

  .experience-track {
    grid-auto-columns: 82vw !important;
  }

  .experience-card,
  .experience-image {
    width: 82vw !important;
  }

  .experience-image {
    height: 82vw !important;
  }
}


/* Aman-inspired Lux Band Footer */
footer {
  background: #f1ebe1 !important;
  color: rgba(27,23,19,.78) !important;
  border-top: 1px solid rgba(27,23,19,.10) !important;
  padding: 0 !important;
  display: block !important;
  font-family: var(--font-body) !important;
  letter-spacing: normal !important;
}

.lux-footer {
  width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto;
  padding: 86px 0 52px;
}

.footer-main {
  display: grid;
  grid-template-columns: 1.05fr 2.45fr 1.2fr;
  gap: 72px;
  padding-bottom: 70px;
}

.footer-eyebrow {
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(27,23,19,.76);
  margin-bottom: 34px;
}

.footer-links {
  display: grid;
  gap: 15px;
}

.footer-links a,
.footer-contact a,
.footer-contact p {
  color: rgba(27,23,19,.72);
  font-size: 15px;
  line-height: 1.55;
  transition: .35s var(--ease);
}

.footer-links a:hover,
.footer-contact a:hover {
  color: rgba(27,23,19,1);
}

.footer-explore {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 54px;
}

.footer-booking {
  display: inline-flex;
  margin-top: 34px;
  padding: 14px 26px;
  border: 1px solid rgba(27,23,19,.32);
  color: rgba(27,23,19,.82);
  font-size: 11px;
  letter-spacing: .15em;
  text-transform: uppercase;
  width: fit-content;
  transition: .35s var(--ease);
}

.footer-booking:hover {
  background: rgba(27,23,19,.08);
}

.footer-contact {
  display: grid;
  gap: 18px;
}

.footer-contact-row {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 12px;
  align-items: start;
}

.footer-contact-icon {
  color: rgba(27,23,19,.62);
  font-size: 16px;
  line-height: 1.4;
}

.footer-description {
  margin-top: 28px;
  max-width: 260px;
  color: rgba(27,23,19,.72);
  font-size: 15px;
  line-height: 1.75;
}

.footer-bottom {
  border-top: 1px solid rgba(27,23,19,.12);
  padding-top: 44px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 34px;
}

.footer-brand {
  color: rgba(27,23,19,.82);
  font-size: 24px;
  letter-spacing: .48em;
  text-transform: uppercase;
  white-space: nowrap;
}

.footer-social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
}

.footer-social-label {
  margin-right: 8px;
  color: rgba(27,23,19,.72);
  font-size: 14px;
}

.social-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: white;
  font-size: 16px;
  font-weight: 600;
  transition: .35s var(--ease);
}

.social-icon:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(0,0,0,.10);
}

.social-facebook { background: #1877F2; }
.social-instagram {
  background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 10%, #fd5949 45%, #d6249f 65%, #285AEB 100%);
}
.social-whatsapp { background: #25D366; }
.social-youtube { background: #FF0000; }
.social-zalo { background: #0068FF; font-size: 12px; font-weight: 700; }

.footer-copy {
  justify-self: end;
  color: rgba(27,23,19,.62);
  font-size: 13px;
  white-space: nowrap;
}

@media(max-width: 1200px) {
  .lux-footer {
    width: var(--lux-hero-grid, 82vw);
  }

  .footer-main {
    grid-template-columns: 1fr;
    gap: 56px;
  }

  .footer-explore {
    grid-template-columns: repeat(3, 1fr);
  }

  .footer-bottom {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .footer-social {
    justify-content: flex-start;
  }

  .footer-copy {
    justify-self: start;
  }
}

@media(max-width: 760px) {
  .lux-footer {
    width: 88vw;
    padding-top: 68px;
  }

  .footer-explore {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .footer-bottom {
    gap: 28px;
  }

  .footer-social {
    flex-wrap: wrap;
    gap: 16px;
  }

  .footer-social-label {
    width: 100%;
  }

  .footer-brand {
    font-size: 20px;
    letter-spacing: .36em;
  }
}


/* Final white Aman-style footer refinement */
footer {
  background: #ffffff !important;
  color: rgba(20,18,16,.86) !important;
  border-top: 1px solid rgba(20,18,16,.10) !important;
}

.lux-footer {
  background: #ffffff !important;
  width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  padding: 86px 0 52px !important;
}

.footer-main {
  padding-bottom: 74px !important;
}

.footer-eyebrow {
  color: rgba(20,18,16,.90) !important;
  font-weight: 600 !important;
  font-size: 10px !important;
  letter-spacing: .16em !important;
}

.footer-links a,
.footer-contact a,
.footer-contact p,
.footer-description {
  color: rgba(20,18,16,.82) !important;
  font-size: 15px !important;
  line-height: 1.72 !important;
}

.footer-links {
  gap: 13px !important;
}

.footer-booking {
  color: rgba(20,18,16,.90) !important;
  border: 1px solid rgba(20,18,16,.42) !important;
  background: transparent !important;
}

.footer-booking:hover {
  background: rgba(20,18,16,.055) !important;
}

.footer-contact-icon {
  color: #b59663 !important;
}

.footer-bottom {
  border-top: 1px solid rgba(20,18,16,.12) !important;
  padding-top: 48px !important;
}

.footer-brand {
  color: rgba(20,18,16,.86) !important;
}

.footer-social-label {
  color: rgba(20,18,16,.78) !important;
}

.footer-copy {
  color: rgba(20,18,16,.72) !important;
}

.social-icon {
  width: 38px !important;
  height: 38px !important;
}

body {
  background: #f1ebe1;
}


/* Three Ways To Shape The Atmosphere */
.three-ways{width:var(--lux-hero-grid,min(1440px,76vw));margin:0 auto 150px;padding:150px 0 0;border-top:1px solid rgba(27,23,19,.10);background:transparent}.three-ways-head{text-align:center;max-width:760px;margin:0 auto 86px}.three-ways-head .eyebrow{color:rgba(27,23,19,.58)!important;font-size:8.5px!important;letter-spacing:.25em!important;margin-bottom:26px!important}.three-ways-head h2{color:#1b1713!important;font-size:clamp(42px,4vw,72px)!important;line-height:1.04!important;letter-spacing:-.035em!important;margin-bottom:32px}.three-ways-head p{color:rgba(27,23,19,.72)!important;font-size:13px!important;line-height:1.55!important;max-width:520px;margin:0 auto}.three-ways-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.three-way-card{min-width:0}.three-way-image{width:100%;aspect-ratio:3/4;background-size:cover;background-position:center;margin-bottom:26px;filter:saturate(.78) contrast(1.02) brightness(.95) sepia(.10)}.three-way-card:nth-child(1) .three-way-image{background-image:linear-gradient(to bottom,rgba(0,0,0,.04),rgba(0,0,0,.20)),url('https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=900&q=85')}.three-way-card:nth-child(2) .three-way-image{background-image:linear-gradient(to bottom,rgba(0,0,0,.04),rgba(0,0,0,.18)),url('https://images.unsplash.com/photo-1511795409834-ef04bbd61622?auto=format&fit=crop&w=900&q=85')}.three-way-card:nth-child(3) .three-way-image{background-image:linear-gradient(to bottom,rgba(0,0,0,.04),rgba(0,0,0,.22)),url('https://images.unsplash.com/photo-1464366400600-7168b8af9bc3?auto=format&fit=crop&w=900&q=85')}.three-way-card .eyebrow{color:rgba(27,23,19,.54)!important;font-size:8.5px!important;letter-spacing:.25em!important;margin-bottom:14px!important}.three-way-card h3{color:#1b1713!important;font-size:clamp(28px,2vw,38px)!important;line-height:1.1!important;letter-spacing:-.028em!important;margin-bottom:16px}.three-way-card p{color:rgba(27,23,19,.72)!important;font-size:12.5px!important;line-height:1.5!important;max-width:340px}.three-way-card .text-link{margin-top:24px!important}@media(max-width:1200px){.three-ways{width:var(--lux-hero-grid,82vw)}}@media(max-width:980px){.three-ways{width:var(--lux-hero-grid,88vw);padding-top:120px;margin-bottom:120px}.three-ways-grid{grid-template-columns:1fr;gap:72px}.three-way-image{aspect-ratio:16/10}.three-way-card p{max-width:520px}}@media(max-width:560px){.three-ways{width:88vw;padding-top:96px;margin-bottom:96px}.three-ways-head{text-align:left;margin-bottom:58px}.three-ways-head h2{font-size:clamp(38px,11vw,54px)!important}.three-way-image{aspect-ratio:4/5}}


/* Homepage Concepts Section — Three Ways To Shape The Atmosphere */
.concepts-home {
  width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto 150px;
  padding: 150px 0 0;
  border-top: 1px solid rgba(27,23,19,.10);
  background: transparent;
}

.concepts-home-head {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 92px;
}

.concepts-home-head .eyebrow {
  color: rgba(27,23,19,.58) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 26px !important;
}

.concepts-home-head h2 {
  color: #1b1713 !important;
  font-size: clamp(42px, 4vw, 72px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em !important;
  margin-bottom: 32px;
}

.concepts-home-head p {
  color: rgba(27,23,19,.72) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  max-width: 520px;
  margin: 0 auto;
}

.concepts-home-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 36px;
}

.concept-home-card {
  min-width: 0;
}

.concept-home-image {
  width: 100%;
  aspect-ratio: 3 / 4;
  background-size: cover;
  background-position: center;
  margin-bottom: 30px;
  filter: saturate(.76) contrast(1.02) brightness(.95) sepia(.10);
}

.concept-home-card:nth-child(1) .concept-home-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.20)),
    url('https://images.unsplash.com/photo-1523438885200-e635ba2c371e?auto=format&fit=crop&w=900&q=85');
}

.concept-home-card:nth-child(2) .concept-home-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.22)),
    url('https://images.unsplash.com/photo-1514525253161-7a46d19cd819?auto=format&fit=crop&w=900&q=85');
}

.concept-home-card:nth-child(3) .concept-home-image {
  background-image:
    linear-gradient(to bottom, rgba(0,0,0,.04), rgba(0,0,0,.20)),
    url('https://images.unsplash.com/photo-1465847899084-d164df4dedc6?auto=format&fit=crop&w=900&q=85');
}

.concept-home-card .concept-number {
  color: rgba(27,23,19,.54) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  text-transform: uppercase;
  margin-bottom: 14px !important;
}

.concept-home-card h3 {
  color: #1b1713 !important;
  font-size: clamp(30px, 2.2vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
  margin-bottom: 18px;
}

.concept-home-card > p {
  color: rgba(27,23,19,.72) !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  max-width: 360px;
  margin-bottom: 28px;
}

.concept-specs {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(27,23,19,.12);
  margin-top: 28px;
}

.concept-spec-row {
  display: grid;
  grid-template-columns: .82fr 1.35fr;
  gap: 20px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(27,23,19,.09);
}

.concept-spec-row span:first-child {
  color: rgba(27,23,19,.50);
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.concept-spec-row span:last-child {
  color: rgba(27,23,19,.78);
  font-size: 12.5px;
  line-height: 1.45;
}

.concept-home-note {
  margin-top: 24px;
  color: rgba(27,23,19,.58) !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  max-width: 350px;
}

.concept-home-card .text-link {
  margin-top: 24px !important;
}

@media(max-width: 1200px) {
  .concepts-home {
    width: var(--lux-hero-grid, 82vw);
  }

  .concepts-home-grid {
    gap: 30px;
  }
}

@media(max-width: 980px) {
  .concepts-home {
    width: var(--lux-hero-grid, 88vw);
    padding-top: 120px;
    margin-bottom: 120px;
  }

  .concepts-home-grid {
    grid-template-columns: 1fr;
    gap: 84px;
  }

  .concept-home-image {
    aspect-ratio: 16 / 10;
  }

  .concept-home-card > p,
  .concept-home-note {
    max-width: 620px;
  }
}

@media(max-width: 560px) {
  .concepts-home {
    width: 88vw;
    padding-top: 96px;
    margin-bottom: 96px;
  }

  .concepts-home-head {
    text-align: left;
    margin-bottom: 58px;
  }

  .concepts-home-head h2 {
    font-size: clamp(38px, 11vw, 54px) !important;
  }

  .concept-home-image {
    aspect-ratio: 4 / 5;
  }

  .concept-spec-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}


/* Homepage Q&A Section */
.home-qa {
  width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto 150px;
  padding: 140px 0 0;
  border-top: 1px solid rgba(27,23,19,.10);
  background: transparent;
}

.home-qa-head {
  max-width: 640px;
  margin-bottom: 76px;
}

.home-qa-head .eyebrow {
  color: rgba(27,23,19,.58) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 26px !important;
}

.home-qa-head h2 {
  color: #1b1713 !important;
  font-size: clamp(42px, 4vw, 72px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em !important;
  margin-bottom: 30px;
}

.home-qa-head p {
  color: rgba(27,23,19,.72) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  max-width: 520px;
}

.home-qa-list {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(27,23,19,.12);
}

.home-qa-item {
  border-bottom: 1px solid rgba(27,23,19,.12);
}

.home-qa-item summary {
  list-style: none;
  cursor: pointer;
  padding: 34px 0;
  display: grid;
  grid-template-columns: 1fr 28px;
  gap: 30px;
  align-items: center;
  color: #1b1713;
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(28px, 2.25vw, 42px);
  line-height: 1.1;
  letter-spacing: -.028em;
}

.home-qa-item summary::-webkit-details-marker {
  display: none;
}

.home-qa-icon {
  width: 26px;
  height: 26px;
  position: relative;
  opacity: .72;
}

.home-qa-icon::before,
.home-qa-icon::after {
  content: "";
  position: absolute;
  background: rgba(27,23,19,.70);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: .35s var(--ease);
}

.home-qa-icon::before {
  width: 18px;
  height: 1px;
}

.home-qa-icon::after {
  width: 1px;
  height: 18px;
}

.home-qa-item[open] .home-qa-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 0;
}

.home-qa-answer {
  max-width: 760px;
  padding: 0 0 38px;
}

.home-qa-answer p {
  color: rgba(27,23,19,.72) !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  max-width: 660px;
}

.home-qa-cta {
  margin-top: 52px;
}

@media(max-width: 1200px) {
  .home-qa {
    width: var(--lux-hero-grid, 82vw);
  }
}

@media(max-width: 980px) {
  .home-qa {
    width: var(--lux-hero-grid, 88vw);
    padding-top: 112px;
    margin-bottom: 120px;
  }
}

@media(max-width: 560px) {
  .home-qa {
    width: 88vw;
    padding-top: 92px;
    margin-bottom: 96px;
  }

  .home-qa-head {
    margin-bottom: 54px;
  }

  .home-qa-head h2 {
    font-size: clamp(38px, 11vw, 54px) !important;
  }

  .home-qa-item summary {
    font-size: clamp(28px, 8.5vw, 38px);
    padding: 28px 0;
  }
}


/* Homepage Contact Section — final approved split layout */
.home-contact {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #f3eee6;
  border-top: 1px solid rgba(27,23,19,.10);
}

.home-contact-shell {
  display: grid;
  grid-template-columns: 50% 50%;
  min-height: 820px;
  width: 100%;
}

.home-contact-form-side {
  background: #f3eee6;
  padding: 82px 6.2vw 60px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  scroll-margin-top: 110px;
}

.home-contact-image-side {
  min-height: 820px;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.02), rgba(0,0,0,.05)),
    url('https://images.unsplash.com/photo-1519167758481-83f550bb49b3?auto=format&fit=crop&w=1800&q=85') center/cover;
}

.home-contact-title {
  text-align: center;
  margin-bottom: 64px;
}

.home-contact-title h2 {
  color: #111111 !important;
  font-family: var(--font-display);
  font-size: clamp(44px, 4.2vw, 72px) !important;
  font-weight: 300;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  margin: 0;
}

.home-contact-ornament {
  width: 88px;
  height: 1px;
  background: #c6a66a;
  margin: 24px auto 0;
  position: relative;
}

.home-contact-ornament::before,
.home-contact-ornament::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 8px;
  height: 8px;
  border: 1px solid #c6a66a;
  border-radius: 50%;
  transform: translateY(-50%);
  background: #f3eee6;
}

.home-contact-ornament::before { left: 35px; }
.home-contact-ornament::after { right: 35px; }

.home-contact-form {
  width: 100%;
}

.home-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 42px 50px;
}

.home-contact-field.full {
  grid-column: 1 / -1;
}

.home-contact-form label {
  display: block;
  color: #111111 !important;
  font-size: 10.5px !important;
  line-height: 1.2;
  font-weight: 600 !important;
  letter-spacing: .20em !important;
  text-transform: uppercase !important;
  margin-bottom: 17px !important;
}

.home-contact-form input,
.home-contact-form select,
.home-contact-form textarea {
  width: 100%;
  color: #111111 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(17,17,17,.72) !important;
  border-radius: 0 !important;
  padding: 0 0 16px !important;
  font-family: var(--font-body);
  font-size: 16px !important;
  font-weight: 300 !important;
  line-height: 1.6 !important;
  outline: none !important;
}

.home-contact-form input::placeholder,
.home-contact-form textarea::placeholder {
  color: #222222 !important;
  opacity: .78 !important;
}

.home-contact-form textarea {
  min-height: 132px !important;
  resize: vertical;
}

.home-contact-form input:focus,
.home-contact-form select:focus,
.home-contact-form textarea:focus {
  border-bottom-color: #111111 !important;
}

.home-contact-submit {
  margin: 52px auto 0;
  display: flex;
  justify-content: center;
}

.home-contact-submit button {
  background: #c6a66a !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  min-width: 295px;
  padding: 18px 34px !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: .35s var(--ease);
}

.home-contact-submit button:hover {
  background: #b49356 !important;
  transform: translateY(-1px);
}

.home-contact-note {
  margin: 42px auto 0;
  text-align: center;
  color: rgba(17,17,17,.62) !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
  max-width: 460px;
}

@media(max-width: 1100px) {
  .home-contact-shell {
    grid-template-columns: 1fr;
  }

  .home-contact-image-side {
    min-height: 520px;
    order: -1;
  }

  .home-contact-form-side {
    padding: 64px 7vw 56px;
  }
}

@media(max-width: 680px) {
  .home-contact-form-side {
    padding: 52px 7vw 48px;
  }

  .home-contact-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .home-contact-title {
    text-align: left;
    margin-bottom: 52px;
  }

  .home-contact-ornament {
    margin-left: 0;
  }

  .home-contact-submit {
    justify-content: flex-start;
  }

  .home-contact-submit button {
    min-width: 260px;
  }

  .home-contact-image-side {
    min-height: 420px;
  }
}


/* Homepage only — hide Menu trigger and mobile menu */
.menu-trigger,
.mobile-menu {
  display: none !important;
}


/* Header refinement — centered brand only */
.topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 92px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(243,238,230,.92) !important;
  border-bottom: 1px solid rgba(27,23,19,.10) !important;
  z-index: 1200 !important;
}

.brand {
  position: static !important;
  transform: none !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
  color: #b59663 !important;
  font-family: var(--font-display) !important;
  font-size: clamp(26px, 2.2vw, 42px) !important;
  line-height: 1 !important;
  letter-spacing: .22em !important;
  font-weight: 300 !important;
}

.brand::after {
  content: "LUXURY WEDDING MUSIC";
  display: block;
  color: #1b1713;
  font-family: var(--font-body);
  font-size: 10px;
  line-height: 1;
  letter-spacing: .42em;
  font-weight: 600;
}

.header-logo-right,
.menu-trigger,
.mobile-menu,
.header-contact-link {
  display: none !important;
}

/* Footer refinement — centered Lux Band brand */
footer {
  background: #f3eee6 !important;
  color: rgba(27,23,19,.82) !important;
  border-top: 1px solid rgba(27,23,19,.10) !important;
  padding: 0 !important;
}

.lux-footer {
  width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  margin: 0 auto !important;
  padding: 72px 0 46px !important;
}

.footer-main {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 70px !important;
  padding: 54px 0 44px !important;
  border-top: 1px solid rgba(27,23,19,.12) !important;
}

.footer-main > div:first-child {
  display: none !important;
}

.footer-main > div:nth-child(2) {
  display: contents !important;
}

.footer-explore {
  display: contents !important;
}

.footer-main > div:nth-child(3) {
  display: block !important;
}

.footer-bottom {
  border-top: none !important;
  padding-top: 0 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  gap: 24px !important;
  text-align: center !important;
}

.footer-brand {
  color: #b59663 !important;
  font-family: var(--font-display) !important;
  font-size: clamp(30px, 2.6vw, 48px) !important;
  line-height: 1 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
}

.footer-brand::after {
  content: "LUXURY WEDDING MUSIC";
  display: block;
  margin-top: 10px;
  color: #1b1713;
  font-family: var(--font-body);
  font-size: 10px;
  letter-spacing: .42em;
  font-weight: 600;
}

.footer-social {
  gap: 28px !important;
}

.footer-social-label {
  display: none !important;
}

.social-icon {
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  color: #b59663 !important;
  border-radius: 0 !important;
  font-size: 20px !important;
  box-shadow: none !important;
}

.social-icon:hover {
  transform: translateY(-2px);
  box-shadow: none !important;
}

.footer-copy {
  justify-self: center !important;
  color: rgba(27,23,19,.52) !important;
  font-size: 13px !important;
}

.footer-eyebrow {
  color: #1b1713 !important;
  font-size: 10px !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  margin-bottom: 22px !important;
}

.footer-links {
  gap: 10px !important;
}

.footer-links a,
.footer-contact a,
.footer-contact p,
.footer-description {
  color: rgba(27,23,19,.78) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.footer-description,
.footer-contact-row:nth-child(1),
.footer-contact-row:nth-child(2),
.footer-contact-row:nth-child(3) {
  display: none !important;
}

@media(max-width: 900px) {
  .topbar {
    height: 78px !important;
  }

  .brand {
    font-size: 24px !important;
  }

  .brand::after {
    font-size: 8px;
    letter-spacing: .32em;
  }

  .footer-main {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .lux-footer {
    width: 88vw !important;
  }
}


/* CORRECTED HEADER — centered brand with scroll shrink animation */
.topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 104px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(243,238,230,.94) !important;
  border-bottom: 1px solid rgba(27,23,19,.10) !important;
  z-index: 1200 !important;
  transition: height .55s cubic-bezier(.22,.61,.36,1), background .55s cubic-bezier(.22,.61,.36,1) !important;
}

.topbar.is-scrolled {
  height: 72px !important;
  background: rgba(243,238,230,.98) !important;
}

.brand {
  position: static !important;
  transform: none !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 9px !important;
  color: #b59663 !important;
  font-family: var(--font-display) !important;
  font-size: clamp(30px, 2.45vw, 44px) !important;
  line-height: 1 !important;
  letter-spacing: .24em !important;
  font-weight: 300 !important;
  text-transform: uppercase !important;
  transition: font-size .55s cubic-bezier(.22,.61,.36,1), gap .55s cubic-bezier(.22,.61,.36,1), letter-spacing .55s cubic-bezier(.22,.61,.36,1) !important;
}

.brand::after {
  content: "LUXURY WEDDING MUSIC";
  display: block;
  color: #1b1713;
  font-family: var(--font-body);
  font-size: 10px;
  line-height: 1;
  letter-spacing: .42em;
  font-weight: 600;
  transition: font-size .55s cubic-bezier(.22,.61,.36,1), letter-spacing .55s cubic-bezier(.22,.61,.36,1), opacity .55s cubic-bezier(.22,.61,.36,1);
}

.topbar.is-scrolled .brand {
  font-size: clamp(22px, 1.65vw, 30px) !important;
  letter-spacing: .22em !important;
  gap: 6px !important;
}

.topbar.is-scrolled .brand::after {
  font-size: 8px;
  letter-spacing: .34em;
  opacity: .82;
}

.header-logo-right,
.menu-trigger,
.mobile-menu,
.header-contact-link {
  display: none !important;
}

/* CORRECTED FOOTER — simple approved layout */
footer {
  background: #f3eee6 !important;
  color: rgba(27,23,19,.82) !important;
  border-top: 1px solid rgba(27,23,19,.10) !important;
  padding: 0 !important;
}

.lux-footer-simple {
  width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto;
  padding: 54px 0 36px;
}

.lux-footer-simple-grid {
  display: grid;
  grid-template-columns: 1.25fr .9fr .8fr .8fr;
  gap: 70px;
  align-items: start;
}

.lux-footer-brand {
  color: #b59663;
  font-family: var(--font-display);
  font-size: clamp(30px, 2.5vw, 46px);
  line-height: 1;
  letter-spacing: .24em;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.lux-footer-subtitle {
  color: #1b1713;
  font-size: 10px;
  letter-spacing: .42em;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 28px;
}

.lux-footer-social {
  display: flex;
  gap: 28px;
  align-items: center;
}

.lux-footer-social a {
  color: #b59663;
  font-size: 20px;
  text-decoration: none;
  transition: transform .35s cubic-bezier(.22,.61,.36,1), opacity .35s cubic-bezier(.22,.61,.36,1);
}

.lux-footer-social a:hover {
  transform: translateY(-2px);
  opacity: .72;
}

.lux-footer-col-title {
  color: #1b1713;
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px;
}

.lux-footer-col a {
  display: block;
  color: rgba(27,23,19,.78);
  font-size: 14px;
  line-height: 1.65;
  text-decoration: none;
  margin-bottom: 4px;
}

.lux-footer-copy {
  text-align: center;
  color: rgba(27,23,19,.50);
  font-size: 13px;
  margin-top: 44px;
}

@media(max-width: 900px) {
  .topbar {
    height: 88px !important;
  }

  .topbar.is-scrolled {
    height: 66px !important;
  }

  .brand {
    font-size: 25px !important;
  }

  .brand::after {
    font-size: 8px;
    letter-spacing: .32em;
  }

  .topbar.is-scrolled .brand {
    font-size: 20px !important;
  }

  .topbar.is-scrolled .brand::after {
    font-size: 7px;
  }

  .lux-footer-simple {
    width: 88vw;
  }

  .lux-footer-simple-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }
}


/* Smooth in-page contact navigation */
html {
  scroll-behavior: smooth;
}


/* Header hotline */
.header-hotline {
  position: absolute;
  right: 6.2vw;
  top: 50%;
  transform: translateY(-50%);
  color: #b59663;
  font-family: var(--font-body);
  font-size: 14px;
  letter-spacing: .08em;
  text-decoration: none;
  white-space: nowrap;
  z-index: 1202;
  transition: font-size .55s cubic-bezier(.22,.61,.36,1), opacity .35s ease, color .35s ease;
}

.header-hotline::before {
  content: "☎";
  margin-right: 10px;
  font-size: 13px;
}

.header-hotline:hover {
  color: #8f7245;
}

.topbar.is-scrolled .header-hotline {
  font-size: 12px;
}

@media(max-width: 760px) {
  .header-hotline {
    right: 4.5vw;
    font-size: 0;
  }

  .header-hotline::before {
    font-size: 18px;
    margin-right: 0;
  }
}


/* iPad / Tablet responsive stability fix */
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

img, video {
  max-width: 100%;
}

/* Avoid fixed desktop grids being clipped on iPad */
@media (max-width: 1180px) {
  :root {
    --lux-hero-grid: 88vw !important;
  }

  .aman-video-hero,
  .home-manifesto,
  .home-philosophy-section,
  .lux-experiences,
  .concepts-home,
  .home-qa {
    width: 88vw !important;
    max-width: 88vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .aman-media-grid {
    grid-template-columns: 1fr !important;
    gap: 72px !important;
  }

  .aman-feature-media {
    width: 100% !important;
    max-width: 100% !important;
  }

  .aman-side-video,
  .aman-card-copy.small {
    width: min(420px, 70vw) !important;
    max-width: min(420px, 70vw) !important;
    justify-self: start !important;
  }

  .lux-experiences {
    display: block !important;
  }

  .lux-experience-head {
    margin-bottom: 64px !important;
  }

  .experience-carousel,
  .experience-track {
    width: 100% !important;
    max-width: 100% !important;
  }

  .experience-track {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(300px, 62vw) !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
  }

  .experience-card,
  .experience-image {
    width: auto !important;
    max-width: 100% !important;
  }

  .experience-image {
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
  }

  .concepts-home-grid {
    grid-template-columns: 1fr !important;
    gap: 84px !important;
  }

  .concept-home-image {
    aspect-ratio: 16 / 10 !important;
  }

  .concept-home-card > p,
  .concept-home-note {
    max-width: 680px !important;
  }

  .home-qa-item summary {
    grid-template-columns: 1fr 28px !important;
  }

  .home-contact-shell {
    grid-template-columns: 1fr !important;
  }

  .home-contact-image-side {
    order: -1 !important;
    min-height: 520px !important;
  }

  .home-contact-form-side {
    padding: 64px 7vw 56px !important;
  }

  .home-contact-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  .lux-footer-simple {
    width: 88vw !important;
  }

  .lux-footer-simple-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 44px 70px !important;
  }
}

/* iPad portrait and phones */
@media (max-width: 820px) {
  .topbar {
    height: 82px !important;
  }

  .topbar.is-scrolled {
    height: 64px !important;
  }

  .brand {
    font-size: 24px !important;
    letter-spacing: .20em !important;
  }

  .brand::after {
    font-size: 7.5px !important;
    letter-spacing: .28em !important;
  }

  .header-hotline {
    right: 4.5vw !important;
    font-size: 0 !important;
  }

  .header-hotline::before {
    font-size: 18px !important;
    margin-right: 0 !important;
  }

  .aman-video-hero,
  .home-manifesto,
  .home-philosophy-section,
  .lux-experiences,
  .concepts-home,
  .home-qa {
    width: 90vw !important;
    max-width: 90vw !important;
  }

  .home-contact-grid {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .home-contact-title {
    text-align: left !important;
  }

  .home-contact-ornament {
    margin-left: 0 !important;
  }

  .lux-footer-simple-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
}


/* Lux Band v1.0 final responsive hardening */
html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  max-width: 100%;
  overflow-x: hidden;
}

video, img {
  max-width: 100%;
}

@media (max-width: 1180px) {
  :root { --lux-hero-grid: 88vw !important; }

  .aman-video-hero,
  .home-manifesto,
  .home-philosophy-section,
  .lux-experiences,
  .concepts-home,
  .home-qa {
    width: 88vw !important;
    max-width: 88vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .aman-media-grid,
  .concepts-home-grid {
    grid-template-columns: 1fr !important;
  }

  .aman-side-video,
  .aman-card-copy.small {
    width: min(420px, 72vw) !important;
    max-width: min(420px, 72vw) !important;
    justify-self: start !important;
  }

  .lux-experiences {
    display: block !important;
  }

  .lux-experience-head {
    margin-bottom: 64px !important;
  }

  .experience-track {
    grid-auto-columns: minmax(300px, 62vw) !important;
    overflow-x: auto !important;
  }

  .experience-card,
  .experience-image {
    width: auto !important;
    max-width: 100% !important;
  }

  .experience-image {
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
  }

  .home-contact-shell {
    grid-template-columns: 1fr !important;
  }

  .home-contact-image-side {
    order: -1 !important;
    min-height: 520px !important;
  }

  .home-contact-form-side {
    padding: 64px 7vw 56px !important;
  }
}

@media (max-width: 820px) {
  .topbar { height: 82px !important; }
  .topbar.is-scrolled { height: 64px !important; }

  .brand {
    font-size: 24px !important;
    letter-spacing: .20em !important;
  }

  .brand::after {
    font-size: 7.5px !important;
    letter-spacing: .28em !important;
  }

  .header-hotline {
    right: 4.5vw !important;
    font-size: 0 !important;
  }

  .header-hotline::before {
    font-size: 18px !important;
    margin-right: 0 !important;
  }

  .home-contact-grid {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .home-contact-title {
    text-align: left !important;
  }

  .home-contact-ornament {
    margin-left: 0 !important;
  }

  .lux-footer-simple-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
}


/* Contact Us — align width with approved homepage grid, keep content unchanged */
.home-contact {
  width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  max-width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  margin: 0 auto 150px !important;
  padding: 140px 0 0 !important;
  background: transparent !important;
  border-top: 1px solid rgba(27,23,19,.10) !important;
}

.home-contact-shell {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(0, .98fr) !important;
  gap: 82px !important;
  min-height: auto !important;
  align-items: start !important;
}

.home-contact-form-side {
  background: transparent !important;
  padding: 0 !important;
  display: block !important;
}

.home-contact-image-side {
  min-height: auto !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  width: 100% !important;
  align-self: start !important;
  margin-top: 18px !important;
}

.home-contact-title {
  text-align: left !important;
  margin-bottom: 62px !important;
}

.home-contact-title h2 {
  font-size: clamp(44px, 3.8vw, 68px) !important;
}

.home-contact-ornament {
  margin-left: 0 !important;
}

.home-contact-grid {
  grid-template-columns: 1fr 1fr !important;
  gap: 38px 46px !important;
}

.home-contact-form textarea {
  min-height: 132px !important;
}

.home-contact-submit {
  justify-content: flex-start !important;
  margin: 48px 0 0 !important;
}

.home-contact-note {
  text-align: left !important;
  margin-left: 0 !important;
}

@media(max-width: 1180px) {
  .home-contact {
    width: 88vw !important;
    max-width: 88vw !important;
  }

  .home-contact-shell {
    grid-template-columns: 1fr !important;
    gap: 70px !important;
  }

  .home-contact-image-side {
    order: -1 !important;
    aspect-ratio: 16 / 9 !important;
    margin-top: 0 !important;
  }
}

@media(max-width: 680px) {
  .home-contact {
    width: 90vw !important;
    max-width: 90vw !important;
    padding-top: 96px !important;
    margin-bottom: 96px !important;
  }

  .home-contact-grid {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .home-contact-image-side {
    aspect-ratio: 4 / 5 !important;
  }
}


/* Fix 3 Concepts vertical video display */
.aman-side-video {
  background: #000 !important;
  overflow: hidden !important;
}

.aman-side-video video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}


/* Native video controls for Hero and 3 Concepts videos */
.aman-video-hero video,
.aman-side-video video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.aman-video-hero,
.aman-side-video {
  position: relative !important;
  overflow: hidden !important;
  background: #000 !important;
}

/* Keep native controls visible and usable */
.aman-video-hero video::-webkit-media-controls,
.aman-side-video video::-webkit-media-controls {
  opacity: 1 !important;
}



/* Seasonal Experiences — Amanoi-inspired partial carousel */
.lux-experiences {
  width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  max-width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  margin: 0 auto 160px !important;
  padding: 150px 0 0 !important;
  display: grid !important;
  grid-template-columns: 300px minmax(0, 1fr) !important;
  gap: 86px !important;
  overflow: visible !important;
  border-top: 1px solid rgba(27,23,19,.10) !important;
}

.lux-experience-head {
  margin: 0 !important;
  max-width: 300px !important;
  align-self: start !important;
  padding-top: 6px !important;
}

.lux-experience-head h2 {
  color: #1b1713 !important;
  font-family: var(--font-display) !important;
  font-size: clamp(42px, 3.3vw, 64px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  margin: 0 0 34px !important;
}

.lux-experience-head p {
  color: rgba(27,23,19,.72) !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  max-width: 285px !important;
}

.experience-carousel {
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  position: relative !important;
}

.experience-track {
  display: flex !important;
  gap: 38px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 0 14vw 0 0 !important;
}

.experience-track::-webkit-scrollbar {
  display: none !important;
}

/* Amanoi-like card sizing: two clear cards + third partial/faded */
.experience-card {
  flex: 0 0 min(390px, 32vw) !important;
  scroll-snap-align: start !important;
  opacity: .35 !important;
  filter: grayscale(.05) saturate(.85) brightness(1.04) !important;
  transition: opacity .45s ease, filter .45s ease, transform .45s ease !important;
  display: block !important;
  visibility: visible !important;
}

.experience-card.is-visible {
  opacity: 1 !important;
  filter: none !important;
}

.experience-card.is-next {
  opacity: .34 !important;
  filter: saturate(.7) brightness(1.12) !important;
}

.experience-image {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  background-size: cover !important;
  background-position: center !important;
  margin-bottom: 24px !important;
}

.experience-card .eyebrow {
  color: rgba(27,23,19,.54) !important;
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  margin-bottom: 14px !important;
}

.experience-card h3 {
  color: #1b1713 !important;
  font-family: var(--font-display) !important;
  font-size: clamp(26px, 1.7vw, 34px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  margin: 0 0 14px !important;
}

.experience-card p {
  color: rgba(27,23,19,.72) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  max-width: 340px !important;
}

.experience-card .text-link {
  margin-top: 22px !important;
}

/* Bottom navigation bars */
.experience-progress {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(72px, 1fr)) !important;
  gap: 0 !important;
  width: min(560px, 72%) !important;
  margin: 70px auto 0 !important;
}

.experience-progress button {
  height: 26px !important;
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  position: relative !important;
}

.experience-progress button::before {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  top: 50%;
  height: 1px;
  background: rgba(27,23,19,.20);
  transform: translateY(-50%);
  transition: background .35s ease, height .35s ease;
}

.experience-progress button.active::before {
  background: rgba(27,23,19,.72);
  height: 1.5px;
}

@media(max-width: 1180px) {
  .lux-experiences {
    width: 88vw !important;
    max-width: 88vw !important;
    grid-template-columns: 1fr !important;
    gap: 68px !important;
  }

  .lux-experience-head {
    max-width: 520px !important;
  }

  .lux-experience-head p {
    max-width: 520px !important;
  }

  .experience-card {
    flex-basis: min(390px, 48vw) !important;
  }
}

@media(max-width: 680px) {
  .lux-experiences {
    width: 90vw !important;
    max-width: 90vw !important;
    padding-top: 96px !important;
    margin-bottom: 110px !important;
  }

  .experience-track {
    gap: 24px !important;
    padding-right: 18vw !important;
  }

  .experience-card {
    flex-basis: 76vw !important;
  }

  .experience-progress {
    width: 100% !important;
    margin-top: 44px !important;
  }

  .lux-experience-head h2 {
    font-size: clamp(38px, 11vw, 54px) !important;
  }
}


/* Video autoplay behavior support */
.aman-video-hero video,
.aman-side-video video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.aman-video-hero,
.aman-side-video {
  position: relative !important;
  overflow: hidden !important;
  background: #000 !important;
}


/* Three Ways To Shape The Atmosphere — 4:5 concept video cards */
.concept-home-image {
  display: none !important;
}

.concept-home-video {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  background: #000 !important;
  overflow: hidden !important;
  margin-bottom: 30px !important;
}

.concept-home-video video,
.concept-card-video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  background: #000 !important;
}

.concepts-home-grid {
  align-items: start !important;
}

@media(max-width: 980px) {
  .concept-home-video {
    max-width: 620px !important;
  }
}

@media(max-width: 560px) {
  .concept-home-video {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
  }
}


/* Three Ways videos square ratio */
.concept-home-video{
  aspect-ratio:1 / 1 !important;
}


/* Three Ways concept videos — silent autoplay loop, square frame */
.concept-home-video {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  background: #000 !important;
  overflow: hidden !important;
  margin-bottom: 30px !important;
}

.concept-card-video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  background: #000 !important;
}


/* Booking form Formspree support */
.home-contact-form input:required {
  box-shadow: none;
}


/* Mobile autoplay and video presentation fix */
.aman-video-hero,
.aman-side-video {
  background: #000 !important;
  overflow: hidden !important;
}

.aman-video-hero video,
.aman-side-video video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

video[playsinline] {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}


/* Mobile-only inline video behavior: prevent Safari fullscreen player */
@media (max-width: 820px) {
  .aman-video-hero video,
  .aman-side-video video,
  .concept-card-video {
    pointer-events: none !important;
  }

  .aman-video-hero,
  .aman-side-video,
  .concept-home-video {
    overflow: hidden !important;
    background: #000 !important;
  }

  .aman-video-hero video,
  .aman-side-video video,
  .concept-home-video video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* Hide native controls area on mobile if browser still paints it */
  video::-webkit-media-controls {
    display: none !important;
  }
}


/* Mobile no-fullscreen video patch */
@media (max-width: 820px) {
  .aman-video-hero video,
  .aman-side-video video,
  .concept-card-video {
    pointer-events: none !important;
    -webkit-user-select: none !important;
    user-select: none !important;
  }

  .aman-video-hero,
  .aman-side-video,
  .concept-home-video {
    overflow: hidden !important;
    background: #000 !important;
  }

  .aman-video-hero video,
  .aman-side-video video,
  .concept-home-video video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  video::-webkit-media-controls,
  video::-webkit-media-controls-enclosure,
  video::-webkit-media-controls-panel,
  video::-webkit-media-controls-play-button,
  video::-webkit-media-controls-start-playback-button {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* Three Ways must stay clean: muted loop video, no native controls */
.concept-card-video::-webkit-media-controls,
.concept-card-video::-webkit-media-controls-enclosure,
.concept-card-video::-webkit-media-controls-panel,
.concept-card-video::-webkit-media-controls-play-button,
.concept-card-video::-webkit-media-controls-start-playback-button {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* Contact section refinement: real Lux Band image + brand caption */
.contact-kicker {
  font-family: var(--font-sans);
  font-size: 10px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(160, 125, 70, .78);
  margin-bottom: 18px;
}

.home-contact-title h2 {
  max-width: 520px;
}

.home-contact-image-side {
  background: transparent !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
}

.home-contact-image-side img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  height: auto;
  object-fit: cover;
  object-position: center;
}

.contact-image-caption {
  margin-top: 16px;
  text-align: left;
}

.contact-image-caption span {
  display: block;
  font-family: var(--font-sans);
  font-size: 10px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(160, 125, 70, .82);
}

.contact-image-caption strong {
  display: block;
  margin-top: 7px;
  font-family: var(--font-display);
  font-size: 17px;
  line-height: 1.3;
  font-weight: 300;
  color: rgba(27,23,19,.82);
}

@media(max-width: 1180px) {
  .home-contact-image-side img {
    aspect-ratio: 16 / 10;
  }
}

@media(max-width: 680px) {
  .home-contact-title h2 {
    font-size: clamp(42px, 12vw, 58px) !important;
  }

  .home-contact-image-side img {
    aspect-ratio: 1 / 1.25;
    object-position: center;
  }

  .contact-image-caption {
    margin-top: 12px;
    margin-bottom: 28px;
  }
}


/* Contact vertical image refinement */
.home-contact-image-side img {
  object-position: center top !important;
}

@media(max-width: 680px) {
  .home-contact-image-side img {
    object-position: center 20% !important;
  }
}




/* Lux Band final footer location v3 */
.footer-location-col .lux-footer-col-title {
  text-transform: none !important;
}


/* Lux Band - Aman Typography Trial */
:root {
  --font-display: "Cormorant Garamond", Georgia, serif;
  --font-body: "Manrope", Arial, sans-serif;
}

/* Global Aman-like typography refinement only. Layout/media approved sections remain unchanged. */
body {
  font-family: var(--font-body) !important;
  font-weight: 300;
  letter-spacing: 0;
}

h1, h2, h3,
.hero-title,
.home-manifesto h1,
.section-title,
.concept-title,
.home-contact-title h2,
.footer-brand,
.brand,
.logo-text {
  font-family: var(--font-display) !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em;
}

p, a, button, input, textarea, label, span, li {
  font-family: var(--font-body);
}

.eyebrow,
.menu-trigger,
.nav-link,
.small-label,
.footer-heading {
  font-family: var(--font-body) !important;
  letter-spacing: .22em;
  text-transform: uppercase;
}

/* Stories Shared By Our Couples - Aman layout, 2 cards + half faded third */
.aman-couple-stories {
  background: var(--ivory, #f5eee4);
  color: var(--black, #050505);
  padding: clamp(112px, 10vw, 164px) 0 clamp(118px, 10vw, 170px);
  border-top: 1px solid rgba(20, 18, 15, .07);
  overflow: hidden;
}

.aman-couple-inner {
  width: min(100% - 48px, 1240px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 300px minmax(0, 742px);
  gap: clamp(72px, 8vw, 108px);
  align-items: start;
}

.aman-couple-copy {
  padding-top: 6px;
}

.aman-couple-copy h2 {
  font-family: var(--font-display) !important;
  font-weight: 400 !important;
  font-size: clamp(34px, 3.15vw, 44px);
  line-height: 1.08;
  letter-spacing: -0.02em;
  margin: 0 0 34px;
  color: var(--black, #050505);
}

.aman-couple-copy p {
  font-family: var(--font-body) !important;
  font-size: 13px;
  line-height: 1.75;
  color: rgba(5,5,5,.66);
  max-width: 280px;
  margin: 0 0 34px;
}

.aman-couple-copy .aman-couple-rule {
  width: 76px;
  height: 1px;
  background: rgba(5,5,5,.45);
}

.aman-couple-slider {
  width: 742px; /* 2 full cards + half third + gaps */
  min-width: 0;
  position: relative;
  overflow: visible;
}

.aman-couple-slider::after {
  content: "";
  position: absolute;
  top: 0;
  right: -1px;
  width: 170px;
  height: calc(100% - 52px);
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(245,238,228,0), rgba(245,238,228,.88) 58%, rgba(245,238,228,1));
}

.aman-couple-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 292px;
  gap: 34px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 160px 44px 0;
  scrollbar-width: none;
}

.aman-couple-track::-webkit-scrollbar {
  display: none;
}

.aman-couple-card {
  scroll-snap-align: start;
  width: 292px;
}

.aman-couple-image {
  width: 292px;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: rgba(181,150,99,.09);
  margin-bottom: 23px;
}

.aman-couple-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(.88) contrast(.96) brightness(.98);
  transform: scale(1.012);
  transition: transform 1.1s cubic-bezier(.19,1,.22,1), filter 1.1s cubic-bezier(.19,1,.22,1);
}

.aman-couple-card:hover .aman-couple-image img {
  transform: scale(1.05);
  filter: saturate(1) contrast(1) brightness(1);
}

.aman-couple-meta {
  font-family: var(--font-body) !important;
  font-size: 9px;
  line-height: 1.2;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: rgba(181,150,99,.78);
  margin-bottom: 12px;
}

.aman-couple-card h3 {
  font-family: var(--font-display) !important;
  font-weight: 400 !important;
  font-size: 22px;
  line-height: 1.18;
  letter-spacing: -0.01em;
  color: var(--black, #050505);
  margin: 0 0 16px;
}

.aman-couple-quote {
  font-family: var(--font-body) !important;
  font-size: 12.5px;
  line-height: 1.74;
  font-weight: 300;
  color: rgba(5,5,5,.72);
  margin: 0 0 22px;
}

.aman-couple-link {
  display: inline-block;
  font-family: var(--font-body) !important;
  font-size: 12px;
  line-height: 1;
  color: rgba(5,5,5,.78);
  text-decoration: none;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(5,5,5,.42);
}

.aman-couple-controls {
  display: flex;
  align-items: center;
  gap: 18px;
  width: 392px;
  margin-left: 0;
}

.aman-couple-progress {
  flex: 1;
  height: 1px;
  background: rgba(5,5,5,.13);
  position: relative;
  overflow: hidden;
}

.aman-couple-progress span {
  display: block;
  width: 24%;
  height: 1px;
  background: rgba(5,5,5,.52);
}

.aman-couple-arrows {
  display: flex;
  gap: 12px;
}

.aman-couple-btn {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(5,5,5,.24);
  background: transparent;
  color: rgba(5,5,5,.72);
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  transition: .32s cubic-bezier(.19,1,.22,1);
}

.aman-couple-btn:hover {
  border-color: rgba(181,150,99,.72);
  color: var(--gold, #b59663);
  background: rgba(181,150,99,.06);
}

@media (max-width: 980px) {
  .aman-couple-stories {
    padding: 90px 0 104px;
  }

  .aman-couple-inner {
    width: min(100% - 36px, 1240px);
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .aman-couple-copy p {
    max-width: 520px;
  }

  .aman-couple-slider {
    width: 100%;
  }

  .aman-couple-track {
    grid-auto-columns: 272px;
    gap: 22px;
    padding-right: 110px;
  }

  .aman-couple-card,
  .aman-couple-image {
    width: 272px;
  }

  .aman-couple-controls {
    width: 100%;
  }
}



/* Stories Shared By Our Couples - corrected alignment with Seasonal Experiences
   Scope: ONLY Stories Shared By Our Couples.
   Uses real section classes: aman-couple-*.
*/
.aman-couple-inner {
  width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  max-width: var(--lux-hero-grid, min(1440px, 76vw)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  grid-template-columns: 300px minmax(0, 1fr) !important;
  gap: 86px !important;
  align-items: start !important;
}

.aman-couple-slider {
  width: 100% !important;
  max-width: none !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Show only 3 cards. Hide card 4 onward. */


.aman-couple-track {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: min(390px, 32vw) !important;
  gap: 38px !important;
  overflow: hidden !important;
  padding: 0 !important;
  scrollbar-width: none !important;
}

.aman-couple-track::-webkit-scrollbar {
  display: none !important;
}

.aman-couple-card {
  width: min(390px, 32vw) !important;
  scroll-snap-align: start !important;
}

.aman-couple-image {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  overflow: hidden !important;
  margin-bottom: 24px !important;
}

.aman-couple-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Match Stories typography closer to Seasonal card rhythm */
.aman-couple-meta {
  font-size: 8.5px !important;
  letter-spacing: .25em !important;
  color: rgba(27,23,19,.54) !important;
  margin-bottom: 14px !important;
}

.aman-couple-card h3 {
  font-size: clamp(26px, 1.7vw, 34px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  margin: 0 0 14px !important;
}

.aman-couple-quote {
  font-size: 13px !important;
  line-height: 1.55 !important;
  max-width: 340px !important;
  color: rgba(27,23,19,.72) !important;
}

.aman-couple-link {
  font-size: 13px !important;
  margin-top: 22px !important;
}

/* Remove old fade overlay because only 3 cards are shown */
.aman-couple-slider::after {
  display: none !important;
}

/* Keep controls aligned and simple */
.aman-couple-controls {
  width: min(560px, 72%) !important;
  margin: 70px auto 0 !important;
}

@media (max-width: 980px) {
  .aman-couple-inner {
    width: min(100% - 36px, 1240px) !important;
    max-width: none !important;
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  .aman-couple-track {
    grid-auto-columns: 272px !important;
    gap: 22px !important;
    overflow-x: auto !important;
    padding-right: 0 !important;
  }

  .aman-couple-card,
  .aman-couple-image {
    width: 272px !important;
  }

  .aman-couple-controls {
    width: 100% !important;
  }
}


/* Lux Band - Stories Roll Enabled
   Scope: ONLY Stories Shared By Our Couples.
   Keeps first viewport visually: 2 clear cards + half/faded third.
   Allows arrows to roll through all 9 cards.
*/
.aman-couple-slider {
  overflow: hidden !important;
  position: relative !important;
}

.aman-couple-track {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: var(--aman-couple-card-width, 290px) !important;
  gap: var(--aman-couple-gap, 40px) !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
  padding-right: calc(var(--aman-couple-card-width, 290px) * 0.5) !important;
}

.aman-couple-track::-webkit-scrollbar {
  display: none !important;
}

.aman-couple-card {
  display: block !important;
  width: var(--aman-couple-card-width, 290px) !important;
  scroll-snap-align: start !important;
  flex: 0 0 var(--aman-couple-card-width, 290px) !important;
}

.aman-couple-image {
  width: var(--aman-couple-card-width, 290px) !important;
  height: var(--aman-couple-card-width, 290px) !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

.aman-couple-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Fade only the right edge so the third/next card appears softly */
.aman-couple-slider::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  right: -1px !important;
  width: calc(var(--aman-couple-card-width, 290px) * 0.55) !important;
  height: calc(100% - 48px) !important;
  pointer-events: none !important;
  z-index: 4 !important;
  background: linear-gradient(
    90deg,
    rgba(241,235,225,0) 0%,
    rgba(241,235,225,.40) 42%,
    rgba(241,235,225,.90) 100%
  ) !important;
}

/* Make controls clickable above fade */
.aman-couple-controls,
.aman-couple-arrow,
.aman-couple-next,
.aman-couple-prev {
  position: relative !important;
  z-index: 6 !important;
}


/* Lux Band Seasonal Home-Aligned V5
   Clean module: replaces old Seasonal section without overriding old classes.
   Outer container follows the approved homepage grid (--lux-hero-grid) for balanced left/right margins.
*/
.lux-seasonal-home {
  --seasonal-ink: #1b1713;
  --seasonal-card: 340px;
  --seasonal-card-gap: 40px;
  --seasonal-fade: 96px;

  width: var(--lux-hero-grid, min(1440px, 76vw));
  max-width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto 150px;
  padding: 150px 0 0;
  border-top: 1px solid rgba(27,23,19,.10);
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 86px;
  align-items: start;
  background: transparent;
  color: var(--seasonal-ink);
}

.lux-seasonal-home,
.lux-seasonal-home * {
  box-sizing: border-box;
}

.lux-seasonal-home__editorial {
  padding-top: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  min-width: 0;
}

.lux-seasonal-home__title {
  margin: 0 0 30px;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: clamp(34px, 2.55vw, 46px);
  line-height: 1.08;
  font-weight: 400;
  letter-spacing: -0.018em;
  color: var(--seasonal-ink);
  white-space: normal;
}

.lux-seasonal-home__description {
  max-width: 285px;
  margin: 0 0 42px;
  font-family: var(--font-body, Arial, sans-serif);
  font-size: 13px;
  line-height: 1.65;
  font-weight: 400;
  color: rgba(27,23,19,.72);
}

.lux-seasonal-home__link,
.lux-seasonal-home-card__link {
  display: inline-block;
  font-family: var(--font-body, Arial, sans-serif);
  font-size: 13px;
  line-height: 1;
  font-weight: 400;
  color: rgba(27,23,19,.82);
  text-decoration: none;
  border-bottom: 1px solid var(--seasonal-ink);
  padding-bottom: 6px;
}

.lux-seasonal-home__visual {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.lux-seasonal-home__track {
  display: flex;
  gap: var(--seasonal-card-gap);
  width: max-content;
  transition: transform .55s cubic-bezier(.19,1,.22,1);
  will-change: transform;
}

.lux-seasonal-home-card {
  flex: 0 0 var(--seasonal-card);
  width: var(--seasonal-card);
  opacity: 1;
  transition: opacity .45s cubic-bezier(.19,1,.22,1);
}

.lux-seasonal-home-card.is-muted {
  opacity: .34;
}

.lux-seasonal-home-card__image {
  width: var(--seasonal-card);
  height: var(--seasonal-card);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 18px;
}

.lux-seasonal-home-card__eyebrow {
  margin: 0 0 10px;
  font-family: Arial, sans-serif;
  font-size: 9.5px;
  line-height: 1.2;
  letter-spacing: .25em;
  text-transform: uppercase;
  color: rgba(27,23,19,.58);
}

.lux-seasonal-home-card__title {
  margin: 0 0 12px;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 22px;
  line-height: 1.22;
  font-weight: 400;
  letter-spacing: -0.006em;
  color: var(--seasonal-ink);
}

.lux-seasonal-home-card__description {
  margin: 0 0 20px;
  max-width: var(--seasonal-card);
  font-family: var(--font-body, Arial, sans-serif);
  font-size: 13px;
  line-height: 1.58;
  font-weight: 400;
  color: rgba(27,23,19,.72);
}

.lux-seasonal-home__fade {
  position: absolute;
  top: 0;
  right: 0;
  width: var(--seasonal-fade);
  height: 100%;
  pointer-events: none;
  z-index: 3;
  background: linear-gradient(90deg, rgba(241,235,225,0), rgba(241,235,225,.72));
}

.lux-seasonal-home__progress {
  display: flex;
  gap: 18px;
  justify-content: center;
  margin-top: 55px;
  padding-right: var(--seasonal-fade);
}

.lux-seasonal-home__bar {
  display: block;
  width: 88px;
  height: 1px;
  padding: 0;
  border: 0;
  background: rgba(27,23,19,.18);
  cursor: pointer;
}

.lux-seasonal-home__bar.active {
  background: rgba(27,23,19,.80);
}

@media (max-width: 1200px) {
  .lux-seasonal-home {
    width: var(--lux-hero-grid, 82vw);
    max-width: var(--lux-hero-grid, 82vw);
    grid-template-columns: 285px minmax(0, 1fr);
    gap: 64px;
  }

  .lux-seasonal-home {
    --seasonal-card: 300px;
  }
}

@media (max-width: 980px) {
  .lux-seasonal-home {
    width: var(--lux-hero-grid, 88vw);
    max-width: var(--lux-hero-grid, 88vw);
    grid-template-columns: 1fr;
    gap: 64px;
    padding-top: 120px;
    margin-bottom: 120px;
  }

  .lux-seasonal-home__description {
    max-width: 520px;
  }

  .lux-seasonal-home__visual {
    overflow-x: auto;
    scrollbar-width: none;
  }

  .lux-seasonal-home__visual::-webkit-scrollbar {
    display: none;
  }

  .lux-seasonal-home__fade {
    display: none;
  }

  .lux-seasonal-home__progress {
    justify-content: flex-start;
    padding-right: 0;
  }
}

@media (max-width: 560px) {
  .lux-seasonal-home {
    width: 88vw;
    max-width: 88vw;
    padding-top: 92px;
    margin-bottom: 96px;
    --seasonal-card: 76vw;
    --seasonal-card-gap: 24px;
  }

  .lux-seasonal-home__title {
    font-size: clamp(38px, 11vw, 54px);
  }

  .lux-seasonal-home__progress {
    width: 100%;
  }

  .lux-seasonal-home__bar {
    flex: 1;
    width: auto;
  }
}


/* Lux Stories Progress-Only Roll
   Removes arrow navigation and uses Aman-like progress bars only.
   Scoped to Stories Shared By Our Couples.
*/
.aman-couple-controls--progress-only {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 18px !important;
  width: min(520px, 54%) !important;
  margin: 56px auto 0 !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 6 !important;
}

.aman-couple-controls--progress-only .aman-couple-bar {
  display: block !important;
  width: 64px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  background: rgba(27,23,19,.18) !important;
  cursor: pointer !important;
}

.aman-couple-controls--progress-only .aman-couple-bar.active {
  background: rgba(27,23,19,.78) !important;
}

.aman-couple-card {
  transition: opacity .45s cubic-bezier(.19,1,.22,1) !important;
}

.aman-couple-card.is-muted {
  opacity: .34 !important;
}

@media(max-width: 980px) {
  .aman-couple-controls--progress-only {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .aman-couple-controls--progress-only .aman-couple-bar {
    flex: 1 1 auto !important;
    width: auto !important;
  }
}


/* Lux Homepage Vertical Rhythm Option A
   Purpose: remove meaningless dead spacing between sections.
   No divider lines between sections; only intentional breathing space.
*/
.lux-seasonal-home,
.concepts-home,
.three-ways,
.aman-couple-stories,
.home-qa,
.home-contact {
  border-top: 0 !important;
}

/* Section starts */
.lux-seasonal-home,
.concepts-home,
.three-ways,
.home-qa,
.home-contact {
  padding-top: 100px !important;
}

/* Section endings */
.lux-seasonal-home,
.concepts-home,
.three-ways,
.aman-couple-stories,
.home-qa,
.home-contact {
  margin-bottom: 100px !important;
}

/* Stories uses an inner container: keep spacing controlled by section, not duplicate inner padding */
.aman-couple-stories {
  padding-top: 100px !important;
}

.aman-couple-inner {
  padding-top: 0 !important;
}

/* Remove any subtle horizontal section rules that look like dividers */
.lux-seasonal-home::before,
.concepts-home::before,
.three-ways::before,
.aman-couple-stories::before,
.home-qa::before,
.home-contact::before {
  display: none !important;
  content: none !important;
}

/* Mobile: tighter but still breathable */
@media(max-width: 680px) {
  .lux-seasonal-home,
  .concepts-home,
  .three-ways,
  .aman-couple-stories,
  .home-qa,
  .home-contact {
    padding-top: 78px !important;
    margin-bottom: 78px !important;
  }
}


/* Lux Homepage Luxury Typography Hierarchy
   Rule: only the hero may feel dominant. All following section titles are quieter.
   Scope: homepage section titles after hero only.
*/

/* Seasonal: section title, not hero title */
.lux-seasonal-home__title {
  font-size: clamp(32px, 2.1vw, 42px) !important;
  line-height: 1.08 !important;
  margin-bottom: 22px !important;
}

/* Three Ways / Concepts: reduce from hero-like scale to editorial section scale */
.three-ways-head h2,
.concepts-home-head h2 {
  font-size: clamp(34px, 2.45vw, 48px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.018em !important;
}

/* Stories: quieter social-proof title */
.aman-couple-copy h2 {
  font-size: clamp(32px, 2.25vw, 44px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.014em !important;
}

/* Q&A and Contact: no secondary hero effect */
.home-qa-head h2,
.home-contact-title,
.home-contact h2 {
  font-size: clamp(34px, 2.65vw, 50px) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.018em !important;
}

/* Card titles stay refined, not loud */
.concept-home-card h3,
.three-way-card h3,
.lux-seasonal-home-card__title,
.aman-couple-card h3 {
  font-size: clamp(21px, 1.45vw, 27px) !important;
  line-height: 1.22 !important;
}

/* Mobile hierarchy: image/content should lead; title must not dominate */
@media(max-width: 680px) {
  .lux-seasonal-home__title,
  .three-ways-head h2,
  .concepts-home-head h2,
  .aman-couple-copy h2,
  .home-qa-head h2,
  .home-contact-title,
  .home-contact h2 {
    font-size: clamp(34px, 8.4vw, 40px) !important;
    line-height: 1.08 !important;
  }

  .lux-seasonal-home__title {
    margin-bottom: 20px !important;
  }
}


/* Lux Band Emotional Luxury Refinement
   Goal: Hero remains the only dominant voice. Other sections support atmosphere,
   trust and action with quieter typography, stronger imagery and less visual noise.
*/

/* Seasonal mobile hierarchy: image leads, title supports */
.lux-seasonal-home__title {
  font-size: clamp(30px, 1.95vw, 40px) !important;
  line-height: 1.08 !important;
  margin-bottom: 18px !important;
}

.lux-seasonal-home__description {
  max-width: 320px !important;
  margin-bottom: 34px !important;
}

/* Three Ways / Concepts become service explanation, not secondary hero */
.three-ways-head,
.concepts-home-head {
  max-width: 680px !important;
}

.three-ways-head h2,
.concepts-home-head h2 {
  font-size: clamp(32px, 2.15vw, 42px) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.014em !important;
  margin-bottom: 18px !important;
}

.three-ways-head p,
.concepts-home-head p {
  max-width: 560px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
}

.three-way-card p,
.concept-home-card p,
.concept-home-note {
  font-size: 12.5px !important;
  line-height: 1.58 !important;
}

/* Stories: social proof should feel intimate, not noisy */
.aman-couple-copy h2 {
  font-size: clamp(30px, 2vw, 40px) !important;
  line-height: 1.12 !important;
  margin-bottom: 18px !important;
}

.aman-couple-copy p {
  max-width: 300px !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
}

.aman-couple-track {
  grid-auto-columns: 324px !important;
  gap: 38px !important;
}

.aman-couple-card {
  width: 324px !important;
}

.aman-couple-image {
  width: 324px !important;
  height: 324px !important;
  aspect-ratio: 1 / 1 !important;
}

.aman-couple-card h3 {
  font-size: clamp(22px, 1.5vw, 28px) !important;
  line-height: 1.18 !important;
  margin-bottom: 12px !important;
}

.aman-couple-quote {
  font-size: 13px !important;
  line-height: 1.58 !important;
  max-width: 300px !important;
}

/* FAQ: confidence layer, not attention layer */
.home-qa {
  padding-top: 90px !important;
  margin-bottom: 90px !important;
}

.home-qa-head {
  max-width: 560px !important;
  margin-bottom: 46px !important;
}

.home-qa-head .eyebrow {
  font-size: 9.5px !important;
  letter-spacing: .26em !important;
}

.home-qa-head h2 {
  font-size: clamp(30px, 2vw, 40px) !important;
  line-height: 1.12 !important;
  margin-bottom: 18px !important;
}

.home-qa-head p {
  font-size: 13px !important;
  line-height: 1.65 !important;
  max-width: 520px !important;
}

.home-qa-item summary {
  font-size: 16px !important;
  line-height: 1.45 !important;
  padding-top: 22px !important;
  padding-bottom: 22px !important;
}

.home-qa-answer p {
  font-size: 13px !important;
  line-height: 1.7 !important;
  max-width: 720px !important;
}

/* Contact aligns with the same hierarchy, without becoming another hero */
.home-contact-title,
.home-contact h2 {
  font-size: clamp(32px, 2.25vw, 44px) !important;
  line-height: 1.1 !important;
}

/* Mobile: no section title should compete with the hero */
@media(max-width: 680px) {
  .lux-seasonal-home {
    padding-top: 72px !important;
  }

  .lux-seasonal-home__title,
  .three-ways-head h2,
  .concepts-home-head h2,
  .aman-couple-copy h2,
  .home-qa-head h2,
  .home-contact-title,
  .home-contact h2 {
    font-size: clamp(30px, 7.6vw, 38px) !important;
    line-height: 1.08 !important;
  }

  .lux-seasonal-home__title {
    margin-bottom: 16px !important;
  }

  .lux-seasonal-home__description {
    margin-bottom: 26px !important;
  }

  .aman-couple-track {
    grid-auto-columns: 78vw !important;
    gap: 24px !important;
  }

  .aman-couple-card,
  .aman-couple-image {
    width: 78vw !important;
  }

  .aman-couple-image {
    height: 78vw !important;
  }

  .home-qa {
    padding-top: 72px !important;
    margin-bottom: 72px !important;
  }

  .home-qa-head {
    margin-bottom: 34px !important;
  }
}


/* Lux Final Spacing FAQ Footer Refinement
   Latest Ninh notes:
   1) Reduce meaningless spacing between sections.
   2) Make FAQ questions readable again.
   3) Rebuild footer with recognizable brand social icons, location and copyright aligned.
*/

/* Tighter, meaningful section rhythm */
.aman-couple-stories,
.home-qa,
.home-contact {
  padding-top: 72px !important;
  margin-bottom: 72px !important;
}

.aman-couple-inner,
.home-qa-head,
.home-contact-shell {
  padding-top: 0 !important;
}

/* Keep section changes as breathing space only — no divider lines */
.aman-couple-stories,
.home-qa,
.home-contact,
.lux-footer-final {
  border-top: 0 !important;
}

.aman-couple-stories::before,
.home-qa::before,
.home-contact::before {
  display: none !important;
  content: none !important;
}

/* FAQ: readable luxury, not tiny */
.home-qa-head {
  margin-bottom: 42px !important;
}

.home-qa-head h2 {
  font-size: clamp(32px, 2.15vw, 42px) !important;
  line-height: 1.1 !important;
}

.home-qa-head p {
  font-size: 14px !important;
  line-height: 1.7 !important;
  max-width: 560px !important;
}

.home-qa-list {
  margin-top: 34px !important;
}

.home-qa-item summary {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: clamp(21px, 1.45vw, 26px) !important;
  line-height: 1.34 !important;
  font-weight: 400 !important;
  color: rgba(27,23,19,.92) !important;
  padding-top: 26px !important;
  padding-bottom: 26px !important;
}

.home-qa-answer p {
  font-family: var(--font-body, Arial, sans-serif) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: rgba(27,23,19,.68) !important;
}

/* Footer final */
.lux-footer-final {
  background: #f3eee6 !important;
  color: rgba(27,23,19,.82) !important;
  padding: 0 !important;
}

.lux-footer-final__inner {
  width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto;
  padding: 58px 0 44px;
}

.lux-footer-final__grid {
  display: grid;
  grid-template-columns: 1.35fr .78fr .72fr .85fr;
  gap: 68px;
  align-items: start;
}

.lux-footer-final__brand {
  color: #b59663;
  font-family: var(--font-display);
  font-size: clamp(30px, 2.5vw, 46px);
  line-height: 1;
  letter-spacing: .24em;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.lux-footer-final__subtitle {
  color: #1b1713;
  font-size: 10px;
  letter-spacing: .42em;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 26px;
}

.lux-footer-final__social-row {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 22px;
}

.lux-footer-final__social-row a {
  width: 20px;
  height: 20px;
  display: inline-flex;
  color: #b59663;
  text-decoration: none;
  opacity: .9;
  transition: transform .35s cubic-bezier(.22,.61,.36,1), opacity .35s cubic-bezier(.22,.61,.36,1);
}

.lux-footer-final__social-row a:hover {
  transform: translateY(-2px);
  opacity: .68;
}

.lux-footer-final__social-row svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
  display: block;
}

.lux-footer-final__location {
  color: rgba(27,23,19,.76);
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: .24em;
  font-weight: 600;
  text-transform: uppercase;
}

.lux-footer-final__col-title {
  color: #1b1713;
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px;
}

.lux-footer-final__col a {
  display: block;
  color: rgba(27,23,19,.78);
  font-size: 14px;
  line-height: 1.65;
  text-decoration: none;
  margin-bottom: 4px;
}

.lux-footer-final__copy {
  color: rgba(27,23,19,.48);
  font-size: 12px;
  line-height: 1.55;
  margin-top: 24px;
}

@media(max-width: 900px) {
  .lux-footer-final__inner {
    width: 88vw;
  }

  .lux-footer-final__grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .lux-footer-final__copy {
    margin-top: 18px;
  }
}

@media(max-width: 680px) {
  .aman-couple-stories,
  .home-qa,
  .home-contact {
    padding-top: 58px !important;
    margin-bottom: 58px !important;
  }

  .home-qa-item summary {
    font-size: 22px !important;
    padding-top: 22px !important;
    padding-bottom: 22px !important;
  }
}


/* Lux Mobile Carousel Snap Fix */
@media (max-width: 680px) {
  .lux-seasonal-home__visual {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .lux-seasonal-home__visual::-webkit-scrollbar { display: none !important; }
  .lux-seasonal-home__track {
    transform: none !important;
    transition: none !important;
  }
  .lux-seasonal-home-card,
  .lux-seasonal-home-card.is-muted {
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
    opacity: 1 !important;
  }
  .lux-seasonal-home__fade { display: none !important; }

  .aman-couple-track {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .aman-couple-track::-webkit-scrollbar { display: none !important; }
  .aman-couple-card,
  .aman-couple-card.is-muted {
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
    opacity: 1 !important;
  }
  .aman-couple-fade,
  .aman-couple-stories .fade { display: none !important; }
}


/* Lux Mobile Complete Refinement
   Final mobile polish:
   - Hero video/image edge-to-edge like Aman.
   - No phone number falling into hero.
   - Tighter, purposeful section spacing.
   - Section titles no longer compete with the hero.
   - FAQ becomes a confidence layer, not a second hero.
   - Mobile carousels remain snap-by-card and do not fade inactive cards.
*/

/* Desktop small addition: Zalo icon inherits footer icon language */
.lux-footer-final__zalo svg {
  width: 20px;
  height: 20px;
}

@media (max-width: 680px) {
  /* Header: keep mobile clean; no loose phone text near hero */
  .header-contact-link,
  .header-contact-link *,
  .topbar .phone,
  .topbar [href^="tel"],
  .topbar [href*="901199015"],
  .topbar [href*="84901199015"] {
    display: none !important;
  }

  /* Keep existing phone CTA icon only if present */
  .header-phone-icon,
  .mobile-phone-icon,
  .phone-icon {
    display: inline-flex !important;
  }

  /* Hero media: break out of content container and touch both mobile edges */
  .hero-video-wrap,
  .hero-media,
  .hero-video,
  .hero-image,
  .hero-visual,
  .hero .video-wrap,
  .hero video,
  .hero img {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .hero-video-wrap,
  .hero-media,
  .hero-video,
  .hero-image,
  .hero-visual,
  .hero .video-wrap {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    border-radius: 0 !important;
  }

  .hero video,
  .hero img {
    display: block !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  .hero video {
    min-height: 44vh !important;
    max-height: 56vh !important;
  }

  /* Mobile vertical rhythm: remove dead space */
  .concepts-home,
  .lux-seasonal-home,
  .three-ways,
  .aman-couple-stories,
  .home-qa,
  .home-contact {
    padding-top: 56px !important;
    margin-bottom: 56px !important;
  }

  .concepts-home-head,
  .three-ways-head,
  .home-qa-head,
  .aman-couple-copy,
  .home-contact-copy {
    margin-bottom: 34px !important;
  }

  .lux-seasonal-home {
    gap: 42px !important;
  }

  .lux-seasonal-home__visual,
  .aman-couple-track {
    margin-top: 0 !important;
  }

  /* Mobile typography hierarchy: only Hero may be dominant */
  .concepts-home-head h2,
  .three-ways-head h2,
  .lux-seasonal-home__title,
  .aman-couple-copy h2,
  .home-qa-head h2,
  .home-contact-title,
  .home-contact h2 {
    font-size: clamp(30px, 7.4vw, 38px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.012em !important;
    margin-bottom: 18px !important;
  }

  .home-contact-title,
  .home-contact h2 {
    font-size: clamp(32px, 8vw, 40px) !important;
  }

  .concepts-home-head p,
  .three-ways-head p,
  .lux-seasonal-home__description,
  .aman-couple-copy p,
  .home-qa-head p,
  .home-contact-copy p {
    font-size: 14px !important;
    line-height: 1.62 !important;
    max-width: 92% !important;
    margin-bottom: 24px !important;
  }

  /* FAQ: readable but quiet */
  .home-qa {
    padding-top: 52px !important;
  }

  .home-qa-head h2 {
    font-size: clamp(30px, 7.2vw, 36px) !important;
    max-width: 92% !important;
  }

  .home-qa-list {
    margin-top: 28px !important;
  }

  .home-qa-item summary {
    font-size: clamp(22px, 6.1vw, 28px) !important;
    line-height: 1.24 !important;
    padding-top: 22px !important;
    padding-bottom: 22px !important;
  }

  .home-qa-answer p {
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  /* Contact title was too loud on mobile */
  .home-contact-title {
    max-width: 92% !important;
  }

  /* Mobile carousel rules retained and strengthened */
  .lux-seasonal-home-card,
  .lux-seasonal-home-card.is-muted,
  .aman-couple-card,
  .aman-couple-card.is-muted {
    opacity: 1 !important;
  }

  .lux-seasonal-home__fade,
  .aman-couple-fade,
  .aman-couple-stories .fade {
    display: none !important;
  }

  .lux-seasonal-home__visual,
  .aman-couple-track {
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .lux-seasonal-home-card,
  .aman-couple-card {
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
  }

  /* Footer: five icons including Zalo, clean mobile stack */
  .lux-footer-final__social-row {
    gap: 22px !important;
  }

  .lux-footer-final__social-row a,
  .lux-footer-final__social-row svg {
    width: 21px !important;
    height: 21px !important;
  }

  .lux-footer-final__location {
    font-size: 10px !important;
    letter-spacing: .20em !important;
    max-width: 280px !important;
  }
}


/* Lux Mobile Hero Final Fix
   - Hide mobile phone number text, keep a simple luxury phone icon.
   - Make actual hero video (.aman-video-hero) full-bleed on mobile.
   - Restore Discover more visibility.
*/
@media (max-width: 760px) {
  .header-hotline {
    right: 5vw !important;
    top: 50% !important;
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    color: #b59663 !important;
    font-size: 0 !important;
    letter-spacing: 0 !important;
    opacity: .92 !important;
    text-indent: -9999px !important;
    white-space: nowrap !important;
  }

  .header-hotline::before {
    content: "" !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    background-color: currentColor !important;
    opacity: .92 !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.15 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.15 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.61 21 3 13.39 3 4c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }

  .header-hotline::after {
    display: none !important;
    content: none !important;
  }

  /* Actual hero video component: full-bleed like Aman mobile */
  .aman-video-hero {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-radius: 0 !important;
  }

  .aman-video-hero video,
  #heroVideo {
    width: 100vw !important;
    max-width: 100vw !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }

  /* Keep cinematic but not oversized */
  #heroVideo {
    min-height: 42vh !important;
    max-height: 54vh !important;
  }

  /* Discover more must remain visible on mobile */
  .hero-actions,
  .hero-actions .btn,
  .hero-actions .btn.primary,
  a.btn.primary[href="#contact"] {
    opacity: 1 !important;
    visibility: visible !important;
  }

  .hero-actions .btn.primary,
  a.btn.primary[href="#contact"] {
    color: rgba(27,23,19,.84) !important;
    border-bottom-color: rgba(27,23,19,.72) !important;
    text-shadow: none !important;
  }
}


/* Lux Mobile Final Spacing And Concept Video Fix
   Ninh final mobile notes:
   1) Remove meaningless vertical space between Stories and Q&A.
   2) Center the 3 Concepts / Featured Concept video evenly left-right on mobile.
*/
@media (max-width: 680px) {
  /* Stories -> Q&A: use ONE controlled source of breathing space */
  .aman-couple-stories {
    margin-bottom: 34px !important;
    padding-bottom: 0 !important;
  }

  .aman-couple-controls--progress-only {
    margin-bottom: 0 !important;
  }

  .home-qa {
    padding-top: 34px !important;
    margin-top: 0 !important;
  }

  .home-qa-head {
    margin-top: 0 !important;
  }

  /* Remove hidden/empty separators that may visually create dead space */
  .aman-couple-stories + .home-qa,
  #qa.home-qa {
    margin-top: 0 !important;
  }

  /* 3 Concepts / Featured Concept media: centered mobile frame */
  .concepts-home video,
  .concepts-home img,
  .concepts-home-media,
  .concepts-home-visual,
  .concepts-home-image,
  .concepts-home-video,
  .featured-concept-video,
  .featured-video,
  .concept-video,
  .concept-featured-video {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .concepts-home-media,
  .concepts-home-visual,
  .concepts-home-image,
  .concepts-home-video,
  .featured-concept-video,
  .featured-video,
  .concept-video,
  .concept-featured-video {
    width: min(88vw, 520px) !important;
    max-width: min(88vw, 520px) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .concepts-home-media video,
  .concepts-home-visual video,
  .concepts-home-image video,
  .concepts-home-video video,
  .featured-concept-video video,
  .featured-video video,
  .concept-video video,
  .concept-featured-video video {
    width: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
  }

  /* If the media is in a grid/flex wrapper, center the whole wrapper */
  .concepts-home .media,
  .concepts-home .image-side,
  .concepts-home .video-side,
  .concepts-home .visual-side {
    justify-self: center !important;
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* Lux Mobile Absolute Final Hero And Concept Fix
   Final correction:
   1) Remove meaningless blank space above mobile hero video.
   2) Center / full-bleed the 3 Concepts video with equal left-right visual balance.
*/
@media (max-width: 680px) {
  /* HERO: header must lead directly into the video, with no dead space */
  .topbar {
    margin-bottom: 0 !important;
  }

  .aman-video-hero {
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 calc(50% - 50vw) 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    display: block !important;
    line-height: 0 !important;
  }

  .aman-video-hero::before,
  .aman-video-hero::after {
    display: none !important;
    content: none !important;
  }

  .aman-video-hero video,
  #heroVideo {
    width: 100vw !important;
    max-width: 100vw !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .video-bottom {
    display: none !important;
  }

  main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .home-manifesto {
    padding-top: 38px !important;
    margin-top: 0 !important;
  }

  /* 3 CONCEPTS / FEATURED CONCEPT VIDEO:
     Break away from inherited desktop padding and center exactly.
  */
  .concepts-home,
  .concepts-home * {
    box-sizing: border-box !important;
  }

  .concepts-home .concept-video,
  .concept-video,
  .featured-video,
  .featured-concept-video,
  .concept-featured-video,
  .concepts-home-video,
  .concepts-home-media,
  .concepts-home-visual,
  .concepts-home-image,
  .concept-card-video,
  .concept-video-wrap,
  .concept-media-wrap {
    width: 88vw !important;
    max-width: 88vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    display: block !important;
    justify-self: center !important;
    align-self: center !important;
  }

  .concepts-home video,
  .concepts-home .concept-video video,
  .concept-video video,
  .featured-video video,
  .featured-concept-video video,
  .concept-featured-video video,
  .concepts-home-video video,
  .concepts-home-media video,
  .concepts-home-visual video,
  .concepts-home-image video,
  .concept-card-video video,
  .concept-video-wrap video,
  .concept-media-wrap video {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* If the section uses a direct img/video without wrapper, keep it visually centered */
  .concepts-home > video,
  .concepts-home > img {
    width: 88vw !important;
    max-width: 88vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }
}

/* Mobile: calm two-column trust grid */
@media(max-width: 680px) {
  .lux-trusted-by {
    width: 88vw;
    max-width: 88vw;
    padding-top: 52px;
    margin-bottom: 58px;
  }

  .lux-trusted-by__eyebrow {
    font-size: 9.5px;
    letter-spacing: .28em;
    margin-bottom: 16px;
  }

  .lux-trusted-by__description {
    max-width: 92%;
    font-size: 13px;
    line-height: 1.62;
    margin-bottom: 34px;
  }

  .lux-trusted-by__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 26px;
  }

  .lux-trusted-logo {
    min-height: 48px;
  }

  .lux-trusted-logo img {
    max-width: 128px;
    max-height: 38px;
    opacity: .78;
  }

  .lux-trusted-logo figcaption {
    min-height: 38px;
    font-size: 16px;
  }
}


/* Lux Editorial Spacing System Final
   Spacing is designed as rhythm, not decoration.
   Hero has the largest transition; trust/supporting layers are tighter.
*/

/* Reset excessive accumulated section spacing */
.home-manifesto,
.lux-seasonal-home,
.concepts-home,
.three-ways,
.aman-couple-stories,
.lux-trusted-by,
.home-qa,
.home-contact {
  border-top: 0 !important;
}

/* Desktop rhythm */
.home-manifesto {
  padding-top: 140px !important;
  margin-bottom: 110px !important;
}

.lux-seasonal-home {
  padding-top: 0 !important;
  margin-bottom: 100px !important;
}

.concepts-home,
.three-ways {
  padding-top: 100px !important;
  margin-bottom: 100px !important;
}

.aman-couple-stories {
  padding-top: 100px !important;
  margin-bottom: 70px !important;
}

.lux-trusted-by {
  padding-top: 0 !important;
  margin-bottom: 60px !important;
}

.home-qa {
  padding-top: 60px !important;
  margin-bottom: 60px !important;
}

.home-contact {
  padding-top: 60px !important;
  margin-bottom: 90px !important;
}

/* Remove decorative/accidental dividers */
.home-manifesto::before,
.lux-seasonal-home::before,
.concepts-home::before,
.three-ways::before,
.aman-couple-stories::before,
.lux-trusted-by::before,
.home-qa::before,
.home-contact::before {
  display: none !important;
  content: none !important;
}

/* Mobile rhythm */
@media(max-width: 680px) {
  .home-manifesto {
    padding-top: 90px !important;
    margin-bottom: 70px !important;
  }

  .lux-seasonal-home {
    padding-top: 0 !important;
    margin-bottom: 60px !important;
  }

  .concepts-home,
  .three-ways {
    padding-top: 60px !important;
    margin-bottom: 60px !important;
  }

  .aman-couple-stories {
    padding-top: 60px !important;
    margin-bottom: 40px !important;
  }

  .lux-trusted-by {
    padding-top: 0 !important;
    margin-bottom: 40px !important;
  }

  .home-qa {
    padding-top: 40px !important;
    margin-bottom: 40px !important;
  }

  .home-contact {
    padding-top: 40px !important;
    margin-bottom: 64px !important;
  }

  /* Prevent inner wrappers from recreating dead space */
  .aman-couple-inner,
  .lux-trusted-by__inner,
  .home-qa-head,
  .home-contact-shell {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}


/* Lux Release Final Cleanup
   Purpose:
   - Remove any visual noise caused by duplicate/orphan hotline/menu markup.
   - Keep desktop hotline only in the right header position.
   - Keep mobile phone as a simple champagne icon.
   - Tighten hero top rhythm and crop possible video letterbox bars.
*/
.topbar > .header-hotline {
  position: absolute !important;
  right: 6.2vw !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 1300 !important;
}

/* If any legacy menu contact accidentally remains outside a proper mobile menu, hide it */
body > .menu-contact,
body > a[href="#contact"],
body > div.menu-contact {
  display: none !important;
}

/* Hero video visual cleanup: no player-like black edge, stronger cover crop */
.aman-video-hero {
  overflow: hidden !important;
  background: #f1ebe1 !important;
}

.aman-video-hero video,
#heroVideo {
  object-fit: cover !important;
  object-position: center center !important;
  transform: translate(-50%, -50%) scale(1.075) !important;
  width: 108% !important;
  height: 108% !important;
  background: #f1ebe1 !important;
}

/* Desktop: keep controlled distance under fixed header but avoid accidental dead space */
@media (min-width: 761px) {
  .aman-video-hero {
    margin-top: 128px !important;
  }
}

/* Mobile: header flows directly into video; no text hotline, no dead gap */
@media (max-width: 760px) {
  .topbar > .header-hotline {
    right: 5vw !important;
    left: auto !important;
    width: 32px !important;
    height: 32px !important;
    overflow: hidden !important;
    color: #b59663 !important;
    font-size: 0 !important;
    text-indent: -9999px !important;
  }

  .aman-video-hero {
    margin-top: 0 !important;
    padding-top: 0 !important;
    background: #f1ebe1 !important;
  }

  .aman-video-hero video,
  #heroVideo {
    transform: none !important;
    width: 100vw !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

/* Per-logo visual sizing, calibrated by visual weight rather than raw pixels */
.lux-trusted-logo--caravelle img { max-width: 132px !important; max-height: 44px !important; }
.lux-trusted-logo--park-hyatt img { max-width: 142px !important; max-height: 42px !important; }
.lux-trusted-logo--jw-marriott img { max-width: 156px !important; max-height: 38px !important; }
.lux-trusted-logo--gem-center img { max-width: 118px !important; max-height: 44px !important; }
.lux-trusted-logo--white-palace img { max-width: 138px !important; max-height: 40px !important; }
.lux-trusted-logo--renaissance img { max-width: 150px !important; max-height: 38px !important; }
.lux-trusted-logo--new-world img { max-width: 152px !important; max-height: 42px !important; }
.lux-trusted-logo--melia img { max-width: 138px !important; max-height: 42px !important; }
.lux-trusted-logo--grand-ho-tram img { max-width: 132px !important; max-height: 44px !important; }

/* Mia official asset available in white version; keep it as original white logo on a quiet dark plaque */
.lux-trusted-logo--mia-saigon {
  padding: 0 !important;
}

.lux-trusted-logo--mia-saigon img {
  max-width: 132px !important;
  max-height: 44px !important;
  padding: 9px 14px !important;
  background: rgba(27,23,19,.84) !important;
  border-radius: 1px !important;
  mix-blend-mode: normal !important;
  opacity: .92 !important;
}

@media(max-width: 680px) {
  .lux-trusted-by__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 22px !important;
    row-gap: 24px !important;
  }

  .lux-trusted-logo {
    height: 54px !important;
    min-height: 54px !important;
    padding: 2px 6px !important;
  }

  .lux-trusted-logo--caravelle img { max-width: 122px !important; max-height: 38px !important; }
  .lux-trusted-logo--park-hyatt img { max-width: 132px !important; max-height: 38px !important; }
  .lux-trusted-logo--jw-marriott img { max-width: 144px !important; max-height: 34px !important; }
  .lux-trusted-logo--gem-center img { max-width: 110px !important; max-height: 38px !important; }
  .lux-trusted-logo--white-palace img { max-width: 128px !important; max-height: 36px !important; }
  .lux-trusted-logo--renaissance img { max-width: 138px !important; max-height: 34px !important; }
  .lux-trusted-logo--new-world img { max-width: 140px !important; max-height: 38px !important; }
  .lux-trusted-logo--melia img { max-width: 128px !important; max-height: 38px !important; }
  .lux-trusted-logo--mia-saigon img { max-width: 124px !important; max-height: 38px !important; padding: 8px 12px !important; }
  .lux-trusted-logo--grand-ho-tram img { max-width: 122px !important; max-height: 38px !important; }
}


/* Lux Hero Final Controls And Mobile Bleed Fix
   1) Native controls stay inside the hero video frame.
   2) Mobile hero returns to full-bleed width.
   3) Trusted By Option A, 15% larger logos, with corrected GEM/Mia/The Grand files.
*/
.aman-video-hero {
  overflow: hidden !important;
  pointer-events: auto !important;
  background: #0b0b0b !important;
}
.aman-video-hero video,
#heroVideo {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  transform: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  z-index: 2 !important;
  pointer-events: auto !important;
  display: block !important;
  background: #0b0b0b !important;
  filter: saturate(.86) contrast(1.02) brightness(.84) !important;
}
.video-bottom,
.aman-video-hero::before,
.aman-video-hero::after {
  pointer-events: none !important;
}
.home-manifesto {
  padding-top: 58px !important;
  margin-top: 0 !important;
}
.hero-actions,
.hero-actions .btn,
.hero-actions .btn.primary,
a.btn.primary[href="#contact"] {
  opacity: 1 !important;
  visibility: visible !important;
}
.hero-actions .btn.primary,
.hero-actions a.btn.primary,
a.btn.primary[href="#contact"] {
  color: rgba(27,23,19,.86) !important;
  border-bottom-color: rgba(27,23,19,.72) !important;
}

.lux-trusted-by {
  width: var(--lux-hero-grid, min(1440px, 76vw));
  max-width: var(--lux-hero-grid, min(1440px, 76vw));
  margin: 0 auto 60px !important;
  padding: 0 !important;
  background: transparent;
}
.lux-trusted-by__eyebrow {
  font-family: var(--font-body, Arial, sans-serif);
  font-size: 10px;
  line-height: 1;
  letter-spacing: .30em;
  text-transform: uppercase;
  color: rgba(27,23,19,.58);
  text-align: center;
  margin-bottom: 18px;
}
.lux-trusted-by__description {
  max-width: 520px;
  margin: 0 auto 46px;
  font-family: var(--font-body, Arial, sans-serif);
  font-size: 13px;
  line-height: 1.68;
  color: rgba(27,23,19,.62);
  text-align: center;
}
.lux-trusted-by__grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(128px, 1fr)) !important;
  column-gap: 48px !important;
  row-gap: 34px !important;
  align-items: center !important;
}
.lux-trusted-logo {
  height: 74px !important;
  min-height: 74px !important;
  padding: 4px 10px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.lux-trusted-logo img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  opacity: .66 !important;
  filter: grayscale(100%) contrast(.92) brightness(.72) !important;
  mix-blend-mode: multiply !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  transition: opacity .35s cubic-bezier(.22,.61,.36,1), filter .35s cubic-bezier(.22,.61,.36,1), transform .35s cubic-bezier(.22,.61,.36,1);
}
.lux-trusted-logo:hover img {
  opacity: .92 !important;
  filter: grayscale(100%) contrast(.98) brightness(.62) !important;
  transform: translateY(-1px) !important;
}
.lux-trusted-logo--caravelle img { max-width: 145px !important; max-height: 48px !important; }
.lux-trusted-logo--park-hyatt img { max-width: 163px !important; max-height: 46px !important; }
.lux-trusted-logo--jw-marriott img { max-width: 173px !important; max-height: 41px !important; }
.lux-trusted-logo--gem-center img { max-width: 110px !important; max-height: 48px !important; }
.lux-trusted-logo--white-palace img { max-width: 159px !important; max-height: 44px !important; }
.lux-trusted-logo--renaissance img { max-width: 145px !important; max-height: 46px !important; }
.lux-trusted-logo--new-world img { max-width: 173px !important; max-height: 46px !important; }
.lux-trusted-logo--melia img { max-width: 147px !important; max-height: 46px !important; }
.lux-trusted-logo--mia-saigon img { max-width: 145px !important; max-height: 44px !important; }
.lux-trusted-logo--grand-ho-tram img { max-width: 152px !important; max-height: 48px !important; }

@media(max-width: 760px) {
  .aman-video-hero {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-top: 92px !important;
    padding: 0 !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    line-height: 0 !important;
  }
  .aman-video-hero video,
  #heroVideo {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    transform: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
  .home-manifesto {
    padding-top: 38px !important;
    margin-top: 0 !important;
    margin-bottom: 64px !important;
  }
  .hero-actions .btn.primary,
  .hero-actions a.btn.primary,
  a.btn.primary[href="#contact"] {
    color: rgba(27,23,19,.88) !important;
    border-bottom-color: rgba(27,23,19,.74) !important;
  }
  .lux-trusted-by {
    width: 88vw;
    max-width: 88vw;
    padding-top: 0 !important;
    margin-bottom: 40px !important;
  }
  .lux-trusted-by__eyebrow { font-size: 9.5px; letter-spacing: .28em; margin-bottom: 16px; }
  .lux-trusted-by__description { max-width: 92%; font-size: 13px; line-height: 1.62; margin-bottom: 34px; }
  .lux-trusted-by__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 22px !important;
    row-gap: 24px !important;
  }
  .lux-trusted-logo { height: 62px !important; min-height: 62px !important; padding: 2px 6px !important; }
  .lux-trusted-logo img { opacity: .68 !important; }
  .lux-trusted-logo--caravelle img { max-width: 133px !important; max-height: 41px !important; }
  .lux-trusted-logo--park-hyatt img { max-width: 150px !important; max-height: 41px !important; }
  .lux-trusted-logo--jw-marriott img { max-width: 159px !important; max-height: 37px !important; }
  .lux-trusted-logo--gem-center img { max-width: 101px !important; max-height: 41px !important; }
  .lux-trusted-logo--white-palace img { max-width: 145px !important; max-height: 39px !important; }
  .lux-trusted-logo--renaissance img { max-width: 133px !important; max-height: 41px !important; }
  .lux-trusted-logo--new-world img { max-width: 159px !important; max-height: 41px !important; }
  .lux-trusted-logo--melia img { max-width: 136px !important; max-height: 41px !important; }
  .lux-trusted-logo--mia-saigon img { max-width: 136px !important; max-height: 39px !important; }
  .lux-trusted-logo--grand-ho-tram img { max-width: 140px !important; max-height: 41px !important; }
}


/* Lux Trusted Logo Text Cleanup
   Final luxury correction: logos stand alone; no explanatory text beside or under logos.
*/
.lux-trusted-by figcaption,
.lux-trusted-logo figcaption {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}
.lux-trusted-logo {
  text-indent: 0 !important;
}


/* Lux Media Asset Structure
   Layout is unchanged. Only image sources for Seasonal and Stories now point to local replaceable files:
   assets/seasonal/*.jpg and assets/stories/*.jpg
*/


/* Contact trust details: visible business location and service area for users and search systems. */
.home-contact-details{margin-top:10px;font-size:12px;line-height:1.7;letter-spacing:.04em;opacity:.72}
.home-contact-details a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}
/* ============================================================
   JOURNAL MERGE 1.0 — APPROVED HOMEPAGE MENU
   Restores the existing menu system with English editorial cards.
   ============================================================ */
.topbar > .menu-trigger {
  position: absolute !important;
  left: clamp(22px, 5vw, 78px) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 0 !important;
  color: #1b1713 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
}

.menu-trigger-lines {
  width: 25px;
  display: grid;
  gap: 6px;
}

.menu-trigger-lines span {
  display: block;
  height: 1px;
  background: currentColor;
  transition: transform .35s var(--ease), opacity .35s var(--ease);
}

.menu-trigger[aria-expanded="true"] .menu-trigger-lines span:first-child {
  transform: translateY(3.5px) rotate(45deg);
}

.menu-trigger[aria-expanded="true"] .menu-trigger-lines span:last-child {
  transform: translateY(-3.5px) rotate(-45deg);
}

body > .mobile-menu {
  display: block !important;
  z-index: 1190 !important;
}

body.menu-open {
  overflow: hidden;
}

.mobile-menu .menu-panel {
  width: min(570px, 92vw);
  padding: 132px clamp(28px, 5vw, 72px) 52px;
  overflow-y: auto;
}

.mobile-menu-inner {
  gap: 0;
}

.mobile-menu-inner > a:not(.menu-contact a) {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 16px;
  align-items: start;
  padding: 17px 0;
  border-top: 1px solid rgba(245,239,230,.12);
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

.mobile-menu-inner > a:not(.menu-contact a):last-of-type {
  border-bottom: 1px solid rgba(245,239,230,.12);
}

.menu-number {
  padding-top: 5px;
  color: rgba(214,192,155,.7);
  font-size: 9px;
  letter-spacing: .16em;
}

.mobile-menu-inner strong {
  display: block;
  color: rgba(245,239,230,.95);
  font-family: var(--font-display);
  font-size: clamp(25px, 3vw, 34px);
  font-weight: 400;
  line-height: 1.05;
}

.mobile-menu-inner small {
  display: block;
  max-width: 390px;
  margin-top: 6px;
  color: rgba(245,239,230,.58);
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 300;
  line-height: 1.55;
}

.mobile-menu .menu-contact a {
  display: inline-flex;
  padding: 10px 0;
}

@media (max-width: 700px) {
  .topbar > .menu-trigger {
    left: 20px !important;
  }

  .topbar > .menu-trigger > span:last-child {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .menu-trigger-lines {
    width: 23px;
  }

  .mobile-menu .menu-panel {
    width: 100%;
    padding: 104px 25px 42px;
  }

  .mobile-menu-inner > a:not(.menu-contact a) {
    padding: 14px 0;
  }
}
