:root{--home-gold:#caa06a;--home-gold-soft:#e6c18e;--home-black:#080808;--home-ink:#0d0d0d;--home-text:#f4efe7;--home-muted:#d8d0c4;--home-border:rgba(202,160,106,.42)}
body{background:var(--home-black)}
.home-page{background:var(--home-black);color:var(--home-text)}
.home-page h1,.home-page h2,.home-page h3,.home-universe-title,.home-brand-name,.home-footer-brand span{font-family:'Playfair Display',serif}

.home-navbar{z-index:1030;background:rgba(8,8,8,.97);border-bottom:1px solid var(--home-border);backdrop-filter:blur(16px)}
.home-nav-inner{width:min(100% - 32px,1400px);min-height:82px;margin:0 auto;display:flex;align-items:center;gap:28px}
.home-brand{display:inline-flex;align-items:center;gap:14px;color:var(--home-gold-soft);text-decoration:none;flex:0 0 auto}
.home-brand:hover{color:#f0d2a8}
.home-brand-logo{display:block;width:58px;height:58px;object-fit:contain;flex:0 0 auto}
.home-brand-name{font-size:2rem;font-weight:600;line-height:1;color:#e6c18e;letter-spacing:.01em;white-space:nowrap}
.home-nav-collapse{margin-left:auto;display:flex!important;align-items:center;gap:42px}
.home-nav-links{display:flex;align-items:center;gap:42px}
.home-nav-links a{color:#eee9e2;text-decoration:none;font-size:.94rem;transition:color .2s ease}
.home-nav-links a:hover{color:var(--home-gold-soft)}
.home-book-button,.home-primary-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:linear-gradient(180deg,#e2bb87,#c8965c);color:#17110b;text-decoration:none;font-weight:500;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.25);transition:transform .2s ease,filter .2s ease}
.home-book-button{min-height:50px;padding:0 25px;border-radius:2px;white-space:nowrap}
.home-book-button:hover,.home-primary-button:hover{color:#17110b;filter:brightness(1.06);transform:translateY(-1px)}
.home-calendar-icon{width:18px;height:18px;display:inline-grid;place-items:center}
.home-calendar-icon svg{width:18px;height:18px;display:block}
.home-menu-toggle{display:none;background:transparent;border:0;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0}
.home-menu-toggle span{width:24px;height:1.5px;background:var(--home-gold-soft);display:block}

.home-hero{position:relative;min-height:488px;overflow:hidden;border-bottom:1px solid var(--home-border);isolation:isolate}
.home-hero-media{position:absolute;inset:0 0 0 38%;z-index:-3;background:#000}
.home-hero-logo-media{background:#000}
.home-hero-media img,.home-universe-card>img{width:100%;height:100%;display:block}
.home-hero-logo-official{object-fit:contain;object-position:center;background:#000;padding:34px 8%}
.home-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#080808 0%,#080808 32%,rgba(8,8,8,.97) 39%,rgba(8,8,8,.36) 57%,rgba(8,8,8,.08) 76%,rgba(8,8,8,.18) 100%)}
.home-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.12) 68%,rgba(0,0,0,.26))}
.home-hero-copy{width:min(100% - 32px,1400px);margin:0 auto;padding-top:66px;position:relative;z-index:2}
.home-location-line{display:flex;align-items:center;gap:20px;color:var(--home-gold-soft);font-size:.82rem;letter-spacing:.29em;font-weight:500;margin-bottom:25px}
.home-location-line i{width:76px;height:1px;background:var(--home-gold-soft);display:block}
.home-hero h1{font-size:clamp(4.4rem,6.4vw,7.1rem);line-height:.89;letter-spacing:-.035em;font-weight:600;max-width:720px;margin:0 0 22px}
.home-hero-copy>p{font-size:1.25rem;max-width:700px;margin:0 0 29px;color:#f2eee9;font-weight:300;letter-spacing:.01em}
.home-hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.home-primary-button,.home-secondary-button,.home-outline-button{min-height:55px;padding:0 27px;border-radius:2px}
.home-secondary-button,.home-outline-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;color:#eee7df;text-decoration:none;border:1px solid var(--home-gold);background:rgba(0,0,0,.28);transition:background .2s ease,color .2s ease,transform .2s ease}
.home-secondary-button:hover,.home-outline-button:hover{color:#fff;background:rgba(202,160,106,.08);transform:translateY(-1px)}

.home-universes{width:min(100% - 32px,1400px);margin:0 auto;padding:30px 0 38px}
.home-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.home-section-heading h2{font-size:clamp(2.45rem,3.7vw,4rem);font-weight:600;line-height:1.05;margin:0;letter-spacing:-.025em}
.home-section-heading>a{color:#eee6dd;text-decoration:none;font-size:.92rem;border-bottom:1px solid var(--home-gold);padding:0 0 7px;white-space:nowrap}
.home-section-heading>a span{margin-left:8px;color:var(--home-gold-soft)}
.home-universe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.home-universe-card{height:270px;position:relative;overflow:hidden;text-decoration:none;color:white;background:#17110d}
.home-universe-card>img{object-fit:cover;transition:transform .45s ease,filter .45s ease}
.home-universe-card:hover>img{transform:scale(1.025);filter:brightness(1.04)}
.home-universe-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(0,0,0,.18) 60%,rgba(0,0,0,.8) 100%)}
.home-universe-title{position:absolute;left:26px;bottom:18px;font-size:2rem;font-weight:600;line-height:1;display:flex;flex-direction:column;gap:11px}
.home-universe-title i{width:52px;height:2px;background:var(--home-gold-soft);display:block}

.home-gift{border-top:1px solid var(--home-border);border-bottom:1px solid var(--home-border);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:320px;background:linear-gradient(90deg,#0a0908,#0d0a08)}
.home-gift-visual{position:relative;overflow:hidden;min-height:320px;background:#15100d}
.home-gift-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.1),rgba(8,8,8,.08) 58%,rgba(8,8,8,.82) 100%)}
.home-gift-visual img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.03)}
.home-gift-copy{padding:56px clamp(32px,5vw,80px) 56px 34px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.home-eyebrow{font-size:.75rem;letter-spacing:.3em;color:var(--home-gold-soft);font-weight:600;margin-bottom:14px}
.home-gift-copy h2,.home-contact-head h2{font-size:clamp(2.6rem,4vw,4.4rem);line-height:1.02;margin:0 0 18px;letter-spacing:-.025em}
.home-gift-copy p{max-width:600px;color:var(--home-muted);font-size:1.05rem;line-height:1.75;margin:0 0 28px}

.home-contact{width:min(100% - 32px,1400px);margin:0 auto;padding:58px 0 64px}
.home-contact-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:48px;align-items:end;margin-bottom:34px}
.home-contact-head h2{margin-bottom:0}
.home-contact-head>p{margin:0;color:var(--home-muted);line-height:1.75;font-size:1rem;max-width:620px}
.home-contact-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px}
.home-contact-details,.home-access-panel{background:linear-gradient(145deg,#0e0e0e,#0a0a0a);border:1px solid rgba(202,160,106,.22)}
.home-contact-details{padding:34px}
.home-contact-item{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.home-contact-item:first-child{padding-top:0}
.home-contact-item:last-of-type{border-bottom:0}
.home-contact-icon{width:34px;height:34px;border:1px solid rgba(202,160,106,.45);border-radius:50%;display:grid;place-items:center;color:var(--home-gold-soft);font-size:1rem}
.home-contact-item small{display:block;color:var(--home-gold-soft);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem;margin-bottom:5px}
.home-contact-item strong,.home-contact-item a{color:#f1ebe3;text-decoration:none;font-weight:400;line-height:1.5}
.home-contact-item a:hover{color:var(--home-gold-soft)}
.home-contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.home-contact-actions .home-primary-button,.home-contact-actions .home-secondary-button{min-height:50px}
.home-access-panel{position:relative;min-height:390px;overflow:hidden;display:grid;grid-template-columns:1fr minmax(260px,.62fr)}
.home-access-map{position:relative;min-height:390px;background:radial-gradient(circle at 55% 45%,rgba(202,160,106,.1),transparent 20%),linear-gradient(145deg,#17191b,#0d0f11 58%,#141414);overflow:hidden}
.home-access-map:before,.home-access-map:after{content:"";position:absolute;background:rgba(255,255,255,.08);transform-origin:center}
.home-access-map:before{width:160%;height:2px;left:-20%;top:48%;transform:rotate(-22deg)}
.home-access-map:after{width:2px;height:160%;left:54%;top:-30%;transform:rotate(18deg)}
.home-map-ring{position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%}
.home-map-ring-one{width:280px;height:210px;left:9%;top:15%}
.home-map-ring-two{width:210px;height:280px;right:7%;bottom:-18%}
.home-map-road{position:absolute;height:1px;background:rgba(255,255,255,.08);width:120%;left:-10%}
.home-map-road-one{top:30%;transform:rotate(12deg)}
.home-map-road-two{top:68%;transform:rotate(-8deg)}
.home-map-pin{position:absolute;left:53%;top:45%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50% 50% 50% 0;background:var(--home-gold-soft);color:#17110b;display:grid;place-items:center;font-size:.72rem;rotate:-45deg;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.home-map-pin::first-letter{rotate:45deg}
.home-access-copy{padding:34px 30px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,rgba(8,8,8,.82),#090909)}
.home-access-copy>span{font-size:.72rem;letter-spacing:.25em;color:var(--home-gold-soft);margin-bottom:14px}
.home-access-copy>strong{font-family:'Playfair Display',serif;font-size:1.5rem;line-height:1.35;font-weight:500;margin-bottom:26px;color:#f4eee6}
.home-access-copy .home-outline-button{min-height:48px;padding:0 20px;align-self:flex-start}

.home-footer{border-top:1px solid var(--home-border);background:#090909;color:#d9d1c7;padding:28px max(16px,calc((100% - 1400px)/2)) 18px;margin:0}
.home-footer-main{display:flex;align-items:center;gap:36px;padding-bottom:24px}
.home-footer-brand{display:inline-flex;align-items:center;gap:12px;color:var(--home-gold-soft);text-decoration:none;min-width:max-content}
.home-footer-brand img{width:54px;height:54px;object-fit:contain}
.home-footer-brand span{font-size:1.65rem;font-weight:600}
.home-footer-nav{margin-left:auto;display:flex;gap:30px;flex-wrap:wrap}
.home-footer-nav a,.home-legal-links a{color:#c8c0b7;text-decoration:none;font-size:.82rem}
.home-footer-nav a:hover,.home-legal-links a:hover{color:var(--home-gold-soft)}
.home-footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#77716a;font-size:.76rem}
.home-legal-links{display:flex;gap:20px;flex-wrap:wrap}

@media(max-width:1200px){
  .home-nav-links{gap:24px}.home-nav-collapse{gap:26px}.home-brand-logo{width:54px;height:54px}.home-brand-name{font-size:1.75rem}
  .home-hero-media{left:34%}.home-hero h1{font-size:clamp(4rem,7vw,6rem)}
  .home-contact-grid{grid-template-columns:1fr}.home-access-panel{grid-template-columns:1.15fr .85fr}
}

@media(max-width:992px){
  .home-nav-inner{min-height:72px;position:relative;flex-wrap:wrap;padding:9px 0}.home-brand-logo{width:48px;height:48px}.home-brand-name{font-size:1.55rem}
  .home-menu-toggle{display:flex;margin-left:auto}.home-nav-collapse{display:none!important;flex:0 0 100%;margin:0;padding:15px 0 8px;align-items:stretch;gap:15px}.home-nav-collapse.show{display:flex!important;flex-direction:column}
  .home-nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-nav-links a{padding:12px 14px;border:1px solid rgba(202,160,106,.17);background:rgba(255,255,255,.025)}.home-book-button{width:100%}
  .home-hero{min-height:610px}.home-hero-media{inset:0}.home-hero-logo-official{object-position:center 10%;padding:24px 12% 250px}.home-hero-shade{background:linear-gradient(180deg,rgba(6,6,6,.05) 0%,rgba(6,6,6,.12) 28%,rgba(6,6,6,.76) 58%,#080808 95%)}
  .home-hero-copy{padding-top:300px}.home-hero h1{font-size:clamp(3.6rem,10vw,5.3rem);max-width:760px}.home-hero-copy>p{font-size:1.08rem;max-width:600px}
  .home-universe-grid{grid-template-columns:1fr}.home-universe-card{height:250px}.home-universe-title{font-size:1.85rem}
  .home-gift{grid-template-columns:1fr}.home-gift-visual{min-height:260px}.home-gift-visual:after{background:linear-gradient(180deg,rgba(8,8,8,.08),rgba(8,8,8,.82) 100%)}.home-gift-copy{padding:38px 28px 44px}
  .home-contact-head{grid-template-columns:1fr;gap:16px}.home-access-panel{grid-template-columns:1fr}.home-access-map{min-height:280px}.home-access-copy{padding:28px}
  .home-footer-main{align-items:flex-start;flex-direction:column}.home-footer-nav{margin-left:0}.home-footer-bottom{align-items:flex-start;flex-direction:column}
}

@media(max-width:640px){
  .home-nav-inner,.home-hero-copy,.home-universes,.home-contact{width:min(100% - 24px,1400px)}.home-brand{gap:10px}.home-brand-logo{width:42px;height:42px}.home-brand-name{font-size:1.28rem}
  .home-nav-links{grid-template-columns:1fr}.home-hero{min-height:660px}.home-hero-logo-official{padding:20px 8% 285px}.home-hero-copy{padding-top:330px}
  .home-location-line{font-size:.68rem;letter-spacing:.22em;gap:12px;margin-bottom:16px}.home-location-line i{width:48px}.home-hero h1{font-size:clamp(3.2rem,16vw,4.55rem);line-height:.93;margin-bottom:18px}.home-hero-copy>p{font-size:1rem;line-height:1.55;margin-bottom:22px}
  .home-hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.home-primary-button,.home-secondary-button{width:100%;min-height:52px}
  .home-universes{padding-top:24px}.home-section-heading{align-items:flex-start;flex-direction:column;gap:12px}.home-section-heading h2{font-size:2.45rem;line-height:1.08}.home-section-heading>a{font-size:.84rem}.home-universe-card{height:205px}.home-universe-title{left:18px;bottom:16px;font-size:1.6rem}
  .home-gift-visual{min-height:220px}.home-gift-copy h2,.home-contact-head h2{font-size:2.65rem}.home-gift-copy p{font-size:.98rem}.home-gift-copy .home-outline-button{width:100%}
  .home-contact{padding:44px 0}.home-contact-details{padding:24px 20px}.home-contact-actions{display:grid;grid-template-columns:1fr}.home-contact-actions a{width:100%}.home-access-map{min-height:230px}.home-access-copy>strong{font-size:1.3rem}.home-access-copy .home-outline-button{width:100%}
  .home-footer{padding:24px 12px 16px}.home-footer-brand img{width:46px;height:46px}.home-footer-brand span{font-size:1.4rem}.home-footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;width:100%}
}
