
:root{
  --night:#17120f;
  --night2:#241a15;
  --wine:#4d1f24;
  --rust:#9d5e3c;
  --gold:#c99a55;
  --gold-soft:#e6c486;
  --sand:#eadcc6;
  --cream:#f8f3eb;
  --paper:#fffdf9;
  --ink:#231d19;
  --muted:#776e66;
  --line:rgba(35,29,25,.13);
  --white:#fffaf2;
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:"Manrope",Arial,sans-serif;line-height:1.65;overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
img{width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(1220px,92%);margin:auto}
.eyebrow{
  text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;font-weight:800;color:var(--rust)
}
h1,h2,h3,h4{
  margin:0;font-family:"Cormorant Garamond",Georgia,serif;line-height:.98;font-weight:600
}
h1{font-size:clamp(4rem,8.5vw,7.7rem)}
h2{font-size:clamp(3rem,5.2vw,5.2rem)}
h3{font-size:2rem}
p{margin:.8rem 0 0}
.lead{font-size:1.08rem;color:#5f5852;max-width:680px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  min-height:50px;padding:14px 22px;border:1px solid transparent;
  text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:800;
  transition:.3s ease;cursor:pointer
}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:#21170f}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(201,154,85,.2)}
.btn-dark{background:var(--night);color:#fff}
.btn-line{border-color:rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.03)}
.btn-line:hover{background:#fff;color:var(--night)}
.btn-rust{background:var(--rust);color:white}
.section{padding:105px 0}
.section.paper{background:var(--paper)}
.section.dark{background:var(--night);color:white}
.section.sand{background:var(--sand)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}
.section-head p{max-width:510px;color:#6e655e}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}

header{
  position:fixed;top:0;left:0;right:0;z-index:100;color:white;transition:.3s
}
header.scrolled{
  background:rgba(23,18,15,.93);backdrop-filter:blur(14px);
  box-shadow:0 10px 30px rgba(0,0,0,.12);border-bottom:1px solid rgba(255,255,255,.08)
}
.nav{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.brand{
  font-family:"Cormorant Garamond";font-size:1.65rem;font-weight:700;letter-spacing:.06em;line-height:.9
}
.brand small{
  display:block;font-family:Manrope;font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;
  color:#e4c185;margin-top:7px
}
.navlinks{display:flex;align-items:center;gap:21px;font-size:.77rem;font-weight:700}
.navlinks a:not(.btn){opacity:.92}
.navlinks a:not(.btn):hover{color:#e5c184}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:1.8rem}

.hero{
  min-height:94svh;position:relative;display:grid;align-items:center;color:white;
  background:
    linear-gradient(90deg,rgba(14,9,7,.72),rgba(14,9,7,.18) 65%),
    linear-gradient(0deg,rgba(14,9,7,.58),transparent 52%),
    url("https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=2200&q=90") center/cover;
}
.hero:after{
  content:"";position:absolute;inset:0;background:radial-gradient(circle at 73% 38%,rgba(245,190,100,.15),transparent 25%)
}
.hero-inner{position:relative;z-index:3;padding-top:95px;max-width:930px}
.hero .eyebrow{color:#efd39f}
.hero h1{margin-top:13px}
.hero h1 em{font-weight:500;color:#e5c17f}
.hero p{max-width:620px;color:#efe4d7;font-size:1.08rem;margin-top:22px}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}

.trust-float{
  position:absolute;right:4%;bottom:38px;z-index:4;
  display:grid;grid-template-columns:1fr 1fr;background:rgba(20,14,11,.65);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.18);min-width:305px;color:white
}
.trust-float div{padding:18px 22px}
.trust-float div+div{border-left:1px solid rgba(255,255,255,.15)}
.trust-float strong{display:block;font-family:"Cormorant Garamond";font-size:2.1rem;color:#e8c682;line-height:1}
.trust-float span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:#d9d0c8}

.booking-band{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 16px 32px rgba(50,30,20,.06)}
.booking-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr auto}
.book-cell{padding:19px 21px;border-right:1px solid var(--line)}
.book-cell label{display:block;font-size:.61rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#947c61;margin-bottom:6px}
.book-cell input,.book-cell select{border:0;outline:0;background:transparent;width:100%;font-weight:700;color:var(--ink)}
.book-submit{border:0;background:var(--wine);color:white;padding:0 29px;text-transform:uppercase;letter-spacing:.09em;font-size:.76rem;font-weight:800;cursor:pointer}

.intro-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}
.intro-visual{position:relative;min-height:610px}
.intro-visual .main{position:absolute;left:0;top:0;width:78%;height:90%;object-fit:cover;border-radius:var(--radius)}
.intro-visual .small{position:absolute;right:0;bottom:0;width:48%;height:41%;object-fit:cover;border:10px solid var(--cream);border-radius:0 var(--radius) 0 var(--radius)}
.round-badge{
  position:absolute;right:4%;top:9%;width:145px;height:145px;border-radius:50%;
  background:var(--wine);color:white;display:grid;place-items:center;text-align:center;padding:18px;
  box-shadow:0 18px 34px rgba(77,31,36,.25)
}
.round-badge strong{font-family:"Cormorant Garamond";font-size:2.7rem;line-height:.75;display:block}
.round-badge span{font-size:.65rem;text-transform:uppercase;letter-spacing:.11em;display:block;margin-top:9px}
.intro-copy .rule{width:72px;height:1px;background:var(--gold);margin:24px 0}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.stat{padding-top:14px;border-top:1px solid var(--line)}
.stat strong{display:block;font-family:"Cormorant Garamond";font-size:2rem;color:var(--wine)}
.stat span{font-size:.76rem;color:var(--muted)}

.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.stay-card{
  background:#211914;border-radius:var(--radius);overflow:hidden;position:relative;min-height:600px;color:white
}
.stay-card img{height:100%;object-fit:cover;transition:.6s}
.stay-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(10,8,7,.94))}
.stay-card:hover img{transform:scale(1.045)}
.stay-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:28px}
.stay-tag{display:inline-block;font-size:.64rem;text-transform:uppercase;letter-spacing:.13em;padding:6px 10px;border:1px solid rgba(255,255,255,.33);background:rgba(255,255,255,.08);backdrop-filter:blur(7px)}
.stay-copy p{color:#ddd2c7;font-size:.91rem;max-width:500px}
.mini-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
.mini-list span{font-size:.68rem;padding:7px 10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15)}

.gallery-grid{
  display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:280px 280px;gap:13px
}
.gallery-grid figure{margin:0;overflow:hidden;border-radius:12px}
.gallery-grid figure:first-child{grid-row:1/span 2}
.gallery-grid img{height:100%;object-fit:cover;transition:.55s}
.gallery-grid figure:hover img{transform:scale(1.04)}

.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);margin-top:42px}
.benefit{background:var(--night);padding:34px 28px;min-height:190px}
.benefit .icon{font-family:"Cormorant Garamond";font-size:2.4rem;color:#e3bd79}
.benefit h3{font-size:1.75rem;margin-top:7px}
.benefit p{color:#bfb3aa;font-size:.9rem}

.experience-row{
  display:grid;grid-template-columns:90px 1.05fr .95fr 60px;gap:24px;align-items:center;
  border-top:1px solid var(--line);padding:25px 0
}
.experience-row:last-child{border-bottom:1px solid var(--line)}
.exp-num{font-family:"Cormorant Garamond";font-size:2.6rem;color:var(--rust)}
.exp-image{height:180px;overflow:hidden;border-radius:12px}
.exp-image img{height:100%;object-fit:cover;transition:.5s}
.experience-row:hover img{transform:scale(1.05)}
.exp-text p{font-size:.9rem;color:#665f58}
.exp-arrow{text-align:right;font-size:1.7rem;color:var(--rust)}

.story-band{
  min-height:570px;display:grid;align-items:center;color:white;text-align:center;
  background:
    linear-gradient(rgba(20,12,9,.35),rgba(20,12,9,.66)),
    url("https://images.unsplash.com/photo-1514222134-b57cbb8ce073?auto=format&fit=crop&w=2200&q=90") center/cover fixed
}
.story-band .container{max-width:860px}
.story-band p{max-width:620px;margin:20px auto;color:#f0e3d5}

.review-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
.review-score{background:var(--wine);color:white;border-radius:var(--radius);padding:46px}
.review-score strong{font-family:"Cormorant Garamond";font-size:5.5rem;line-height:.8;color:#e6c486}
.review-score span{display:block;margin-top:15px;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem}
.review-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.review{background:white;border:1px solid var(--line);border-radius:14px;padding:25px;min-height:220px}
.review .stars{color:var(--gold);letter-spacing:.08em}
.review p{color:#615a54}
.review b{display:block;margin-top:18px}

.contact-section{background:var(--night);color:white}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}
.contact-info p{color:#c8bdb4}
.contact-details{display:grid;gap:15px;margin-top:28px}
.contact-detail{padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}
.contact-detail small{display:block;text-transform:uppercase;letter-spacing:.13em;color:#dcb875;font-size:.64rem}
.whatsapp-form{background:#fffaf3;color:var(--ink);padding:34px;border-radius:var(--radius)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.whatsapp-form input,.whatsapp-form select,.whatsapp-form textarea{width:100%;padding:13px 14px;border:1px solid var(--line);background:white;outline:none}
.whatsapp-form textarea{min-height:110px;grid-column:1/-1}
.full{grid-column:1/-1}

.page-hero{
  min-height:68vh;display:grid;align-items:end;color:white;position:relative;background-position:center!important;background-size:cover!important
}
.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,8,6,.18),rgba(12,8,6,.78))}
.page-hero .inner{position:relative;z-index:2;padding:150px 0 70px;max-width:850px}
.page-hero p{max-width:620px;color:#ecdfd1}

.simple-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.simple-card img{height:280px;object-fit:cover}
.simple-card .body{padding:24px}
.simple-card p{color:#6a625b}

footer{background:#0f0c0a;color:#cec3b9;padding:65px 0 95px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.footer-brand{font-family:"Cormorant Garamond";font-size:2.2rem;color:white}
.footer-title{font-size:.66rem;color:#e1bb7a;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-bottom:12px}
.footer-links{display:grid;gap:9px;font-size:.86rem}
.footer-note{margin-top:37px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.77rem;color:#8f8780}
.mobile-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:150;background:#17120f;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.1)}
.mobile-bar a{color:white;text-align:center;padding:13px 4px;font-size:.71rem;text-transform:uppercase;font-weight:800}

.reveal{opacity:0;transform:translateY(24px);transition:.72s ease}
.reveal.show{opacity:1;transform:none}

@media(max-width:980px){
  .navlinks{display:none}.menu-btn{display:block}
  .booking-grid{grid-template-columns:1fr 1fr}.book-submit{grid-column:1/-1;min-height:58px}
  .intro-wrap,.review-wrap,.contact-grid,.grid-2{grid-template-columns:1fr}
  .stay-grid{grid-template-columns:1fr}.stay-card{min-height:520px}
  .benefits,.grid-3,.grid-4{grid-template-columns:1fr 1fr}
  .experience-row{grid-template-columns:70px 1fr 55px}.exp-image{grid-column:2/4;height:220px}.exp-text{grid-column:2/4}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 230px 230px}.gallery-grid figure:first-child{grid-column:1/-1;grid-row:auto}
  .footer-grid{grid-template-columns:1fr 1fr}.story-band{background-attachment:scroll}
}
@media(max-width:620px){
  .nav{min-height:72px}.brand{font-size:1.4rem}
  .hero{min-height:88svh}.hero-inner{padding-top:110px;padding-bottom:140px}
  .trust-float{left:4%;right:4%;bottom:22px;min-width:0}
  .booking-grid{grid-template-columns:1fr}.book-submit{grid-column:auto}
  .section{padding:78px 0}.section-head{display:block}.section-head p{margin-top:14px}
  .intro-wrap{gap:38px}.intro-visual{min-height:420px}.intro-visual .main{width:82%;height:85%}.intro-visual .small{width:54%;height:38%;border-width:7px}.round-badge{width:110px;height:110px;right:0}.round-badge strong{font-size:2rem}
  .stats{grid-template-columns:1fr}
  .stay-card{min-height:430px}
  .benefits,.grid-3,.grid-4{grid-template-columns:1fr}
  .experience-row{grid-template-columns:50px 1fr 35px;gap:12px}.exp-image{grid-column:2/4}.exp-text{grid-column:2/4}
  .gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto}.gallery-grid figure,.gallery-grid figure:first-child{grid-column:auto;grid-row:auto}.gallery-grid img{height:270px}
  .review-cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.full,.whatsapp-form textarea{grid-column:auto}
  .footer-grid{grid-template-columns:1fr}.mobile-bar{display:grid}footer{padding-bottom:120px}
}
