:root{
  --black:#050505;
  --black-2:#090909;
  --black-3:#0f0f0f;
  --gold:#c89b45;
  --gold-pale:#e5c37c;
  --gold-line:rgba(200,155,69,.42);
  --white:#f5f0e7;
  --muted:#a9a39a;
  --side:clamp(26px,5vw,78px);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 80% 30%,rgba(200,155,69,.05),transparent 24%),
    #050505;
  color:var(--white);
  font-family:"Segoe UI",Arial,sans-serif;
  overflow-x:hidden;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:20;
  opacity:.15;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");
}
a{text-decoration:none;color:inherit}
button,input,select{font:inherit}
button{cursor:pointer}
em{font-style:normal;color:var(--gold-pale)}

.site-header{
  height:78px;
  position:fixed;
  inset:0 0 auto;
  z-index:100;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:42px;
  padding:0 var(--side);
  transition:.3s ease;
}
.site-header.scrolled{
  height:66px;
  background:rgba(4,4,4,.92);
  border-bottom:1px solid rgba(200,155,69,.16);
  -webkit-backdrop-filter:blur(15px);
  backdrop-filter:blur(15px);
}
.brand{display:flex;align-items:center;gap:13px;min-width:max-content}
.brand-copy{display:grid;font-family:Georgia,"Times New Roman",serif;line-height:1}
.brand-copy strong{font-size:.95rem;letter-spacing:.14em;font-weight:500}
.brand-copy em{font-size:1.02rem;letter-spacing:.14em;margin-top:6px}
.brand-symbol{position:relative;width:58px;height:36px;display:block}
.peak{
  position:absolute;
  left:50%;
  bottom:3px;
  width:31px;
  height:31px;
  border-left:1px solid var(--gold-pale);
  border-top:1px solid var(--gold-pale);
  transform-origin:center;
}
.peak-a{transform:translateX(-29px) rotate(45deg) skew(-7deg,-7deg)}
.peak-b{transform:translateX(-12px) scale(.78) rotate(45deg) skew(-7deg,-7deg)}
.peak-c{transform:translateX(7px) scale(.58) rotate(45deg) skew(-7deg,-7deg)}
.main-nav{display:flex;justify-content:center;gap:clamp(20px,3vw,42px)}
.main-nav a{font-size:.81rem;letter-spacing:.1em;font-weight:700;color:#dbd7d0;position:relative}
.main-nav a:after{
  content:"";
  position:absolute;
  left:50%;right:50%;bottom:-9px;height:1px;background:var(--gold);
  transition:.25s ease;
}
.main-nav a:hover{color:var(--gold-pale)}
.main-nav a:hover:after{left:0;right:0}
.header-book{
  min-height:38px;
  display:flex;
  align-items:center;
  padding:0 22px;
  border:1px solid var(--gold-line);
  font-size:.80rem;
  font-weight:800;
  letter-spacing:.08em;
}
.header-book:hover{background:var(--gold);color:#090909}
.menu-toggle{display:none}

.hero{
  min-height:100svh;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  display:grid;
  place-items:center;
}
.hero-media,.hero-media video,.hero-youtube,.hero-fallback,.hero-shade,.hero-lines{
  position:absolute;inset:0;
}
.hero-media{z-index:0;background:#101010;overflow:hidden}
.hero-media video{
  width:100%;height:100%;object-fit:cover;
}
.hero-fallback{
  z-index:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.15)),
    url("/images/hero-poster.jpg") center/cover no-repeat,
    radial-gradient(circle at 70% 20%,#4c4025,#171717 44%,#080808);
}
.hero-shade{
  z-index:2;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(3,3,3,.25),rgba(3,3,3,.15) 46%,rgba(3,3,3,.74)),
    linear-gradient(90deg,rgba(3,3,3,.55),transparent 34%,transparent 70%,rgba(3,3,3,.4));
}
.hero-lines{
  z-index:3;pointer-events:none;
  opacity:.38;
  background:
    linear-gradient(115deg,transparent 0 53%,rgba(200,155,69,.12) 53.08% 53.16%,transparent 53.24%),
    radial-gradient(circle at 52% 47%,transparent 0 25%,rgba(200,155,69,.09) 25.1% 25.2%,transparent 25.3%);
}
.hero-center{
  text-align:center;
  width:min(900px,calc(100% - 120px));
  margin-top:40px;
  position:relative;
  z-index:4;
}
.hero-kicker{
  color:var(--gold-pale);
  font-size:.82rem;
  letter-spacing:.38em;
  font-weight:600;
}
.hero-center h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3.5rem,7vw,7.2rem);
  line-height:.94;
  font-weight:400;
  letter-spacing:.035em;
  margin-top:18px;
  text-shadow:0 15px 35px rgba(0,0,0,.46);
}
.crest-line,.mini-crest{display:flex;align-items:center;justify-content:center;gap:12px}
.crest-line{margin:25px auto 18px;width:min(290px,80%)}
.crest-line span,.mini-crest span{height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--gold))}
.crest-line span:last-child,.mini-crest span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.crest-line b,.mini-crest b{color:var(--gold-pale);font-size:1.1rem;font-weight:400;letter-spacing:-.2em}
.hero-center p{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(.95rem,1.8vw,1.25rem);
  line-height:1.55;
  letter-spacing:.28em;
}
.outline-btn{
  display:inline-flex;
  min-height:49px;
  align-items:center;
  justify-content:center;
  margin-top:29px;
  padding:0 27px;
  border:1px solid var(--gold-line);
  background:rgba(5,5,5,.26);
  color:var(--gold-pale);
  font-size:.80rem;
  letter-spacing:.08em;
  font-weight:800;
  transition:.25s ease;
}
.outline-btn:hover{background:var(--gold);color:#090909;transform:translateY(-2px)}
.video-control{
  position:absolute;
  top:110px;
  left:var(--side);
  z-index:5;
  display:flex;
  align-items:center;
  gap:11px;
  border:0;
  background:none;
  color:#efebe4;
  font-size:.86rem;
  letter-spacing:.1em;
}
.play-mark{
  width:31px;height:31px;border:1px solid var(--gold);
  border-radius:50%;display:grid;place-items:center;color:var(--gold-pale);
  font-size:.80rem;
}
.hero-index{
  position:absolute;left:var(--side);top:50%;transform:translateY(-40%);
  z-index:5;display:grid;gap:10px;color:#eee;font-size:.82rem
}
.hero-index i{display:block;width:1px;height:25px;margin:auto;background:rgba(255,255,255,.45)}
.hero-social{
  position:absolute;right:var(--side);top:50%;transform:translateY(-40%);
  z-index:5;display:grid;gap:18px
}
.hero-social a{color:var(--gold-pale);font-size:1rem}
.hero-bottom{
  position:absolute;left:var(--side);right:var(--side);bottom:24px;
  z-index:5;display:flex;justify-content:space-between;
  font-size:.79rem;letter-spacing:.1em;color:#e4dfd6
}
.hero-bottom a{display:flex;align-items:center;gap:10px}
.hero-bottom i{width:46px;height:1px;background:var(--gold)}

.hotel-section{
  min-height:790px;
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:clamp(40px,6vw,95px);
  align-items:center;
  padding:110px var(--side);
  border-top:1px solid rgba(200,155,69,.5);
  background:
    linear-gradient(90deg,rgba(200,155,69,.035) 1px,transparent 1px),
    radial-gradient(circle at 80% 50%,rgba(200,155,69,.05),transparent 25%),
    #070707;
  background-size:90px 100%,auto,auto;
}
.section-kicker{
  color:var(--gold);
  letter-spacing:.16em;
  font-size:.81rem;
  font-weight:700;
}
.hotel-copy h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.7rem,4.9vw,5.4rem);
  font-weight:400;
  line-height:1.02;
  margin-top:15px;
}
.mini-crest{width:190px;margin:20px 0}
.mini-crest.centered{margin:18px auto}
.hotel-copy>p{
  max-width:560px;
  margin-top:25px;
  color:#c0bbb2;
  line-height:1.9;
  font-size:.94rem;
}
.hotel-features{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:35px;
}
.hotel-features article{
  min-width:0;
  border-left:1px solid rgba(200,155,69,.22);
  padding-left:12px;
}
.hotel-features strong{
  display:block;
  color:var(--gold-pale);
  font-family:Georgia,serif;
  font-size:1.2rem;
  font-weight:500;
}
.hotel-features span{
  display:block;
  margin-top:7px;
  color:#b7b1a7;
  font-size:.59rem;
  letter-spacing:.07em;
  line-height:1.45;
}
.hotel-btn{margin-top:35px}
.hotel-visual{position:relative;padding:12px 0 0 12px}
.hotel-image{
  min-height:600px;
  border:1px solid rgba(200,155,69,.5);
  background:
    linear-gradient(180deg,transparent 60%,rgba(0,0,0,.55)),
    url("/images/hotel-craiul-crailor.jpg") center/cover no-repeat,
    linear-gradient(135deg,#2c2417,#0d0d0d);
  box-shadow:0 25px 80px rgba(0,0,0,.38);
}
.hotel-visual:before{
  content:"";position:absolute;left:0;top:0;width:36%;height:55%;
  border-left:1px solid var(--gold);border-top:1px solid var(--gold);
  pointer-events:none;
}
.corner-grid{
  position:absolute;right:-6px;top:-13px;width:70px;height:70px;opacity:.7;
  background-image:radial-gradient(circle,var(--gold) 1px,transparent 1.7px);
  background-size:10px 10px;
}

.cabins-section{
  position:relative;
  padding:100px var(--side) 125px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 45%,rgba(200,155,69,.05),transparent 27%),
    linear-gradient(180deg,#080808,#040404);
}
.cabins-section:before{
  content:"";
  position:absolute;inset:0;opacity:.24;pointer-events:none;
  background:
    linear-gradient(116deg,transparent 0 16%,rgba(200,155,69,.08) 16.05% 16.1%,transparent 16.15% 48%,rgba(200,155,69,.05) 48.05% 48.1%,transparent 48.15%),
    linear-gradient(64deg,transparent 0 77%,rgba(200,155,69,.06) 77.05% 77.1%,transparent 77.15%);
}
.cabins-heading{text-align:center;position:relative;z-index:2}
.cabins-heading h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.6rem,4.6vw,4.8rem);
  font-weight:400;
  margin-top:12px;
  letter-spacing:.02em;
}
.cabins-heading p{
  width:min(650px,90%);
  margin:0 auto;
  color:#aaa49a;
  line-height:1.8;
  font-size:.88rem;
}
.triangle-field{
  width:min(1500px,100%);
  margin:85px auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(70px,9vw,165px);
  position:relative;
  z-index:2;
  align-items:start;
}
.cabin-block{min-width:0;text-align:center}
.cabin-center{transform:translateY(50px)}
.triangle-photo{
  width:100%;
  aspect-ratio:1/1.12;
  position:relative;
  filter:drop-shadow(0 25px 30px rgba(0,0,0,.5));
}
.triangle-image{
  position:absolute;inset:0;
  clip-path:polygon(50% 0,100% 100%,0 100%);
  background-position:center;background-size:cover;background-color:#171717;
  border:1px solid var(--gold);
}
#cabinImage0{
  background-image:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.62)),url("/images/cabana-tamas.jpg"),linear-gradient(135deg,#3b321f,#0b0b0b)
}
#cabinImage1{
  background-image:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.62)),url("/images/cabana-baciu.jpg"),linear-gradient(135deg,#30291c,#0b0b0b)
}
#cabinImage2{
  background-image:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.62)),url("/images/cabana-calinet.jpg"),linear-gradient(135deg,#44381e,#0b0b0b)
}
.triangle-photo:before{
  content:"";position:absolute;inset:-7px;
  clip-path:polygon(50% 0,100% 100%,0 100%);
  background:linear-gradient(135deg,var(--gold-pale),var(--gold),rgba(200,155,69,.2));
  z-index:-1;
}
.triangle-photo:after{
  content:"";position:absolute;left:50%;top:-9px;transform:translateX(-50%);
  width:8px;height:8px;background:#fff0bd;border-radius:50%;
  box-shadow:0 0 18px 5px rgba(229,195,124,.72);
}
.triangle-glow{
  position:absolute;inset:10%;
  clip-path:polygon(50% 0,100% 100%,0 100%);
  box-shadow:inset 0 0 70px rgba(200,155,69,.1);
  pointer-events:none;
}
.cabin-copy{padding:32px 7px 0}
.cabin-copy>span{font-family:Georgia,serif;color:var(--gold-pale);letter-spacing:.16em;font-size:.82rem}
.cabin-copy h3{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,3vw,3.2rem);
  font-weight:400;color:var(--gold-pale);margin-top:5px
}
.cabin-copy p{
  min-height:76px;
  margin:16px auto 0;
  max-width:360px;
  color:#b9b3a8;
  line-height:1.75;
  font-size:.82rem;
}
.cabin-copy a{
  display:inline-flex;
  margin-top:22px;
  min-height:43px;
  align-items:center;
  padding:0 23px;
  border:1px solid var(--gold-line);
  color:var(--gold-pale);
  font-size:.63rem;
  letter-spacing:.07em;
  font-weight:800
}
.cabin-copy a:hover{background:var(--gold);color:#090909}

.experience-strip{
  min-height:240px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(200,155,69,.2);
  border-bottom:1px solid rgba(200,155,69,.2);
}
.experience-strip div{
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  gap:8px;border-right:1px solid rgba(200,155,69,.16);
  background:radial-gradient(circle,rgba(200,155,69,.05),transparent 45%);
}
.experience-strip div:last-child{border-right:0}
.experience-strip span{font-size:.77rem;color:var(--gold);letter-spacing:.2em}
.experience-strip strong{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;letter-spacing:.04em}

.booking-section{
  padding:75px var(--side);
  display:grid;
  grid-template-columns:.6fr 1.4fr;
  gap:55px;
  align-items:center;
  background:#070707;
}
.booking-title span{font-size:.80rem;color:var(--gold);letter-spacing:.16em}
.booking-title h2{
  font-family:Georgia,serif;font-size:clamp(2rem,3vw,3.5rem);font-weight:400;line-height:1.06;margin-top:10px
}
.booking-form{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr 1.1fr auto;
  gap:0;
  border:1px solid rgba(200,155,69,.27);
  background:#0b0b0b
}
.booking-form label{
  padding:14px 14px;border-right:1px solid rgba(200,155,69,.13)
}
.booking-form label span{
  display:block;font-size:.57rem;color:#b5afa5;letter-spacing:.09em;margin-bottom:5px
}
.booking-form input,.booking-form select{
  width:100%;border:0;outline:0;background:transparent;color:#eee;font-size:.84rem
}
.booking-form select option{color:#111}
.booking-form button{
  border:0;background:linear-gradient(135deg,var(--gold-pale),var(--gold));
  padding:0 20px;font-size:.63rem;font-weight:900;letter-spacing:.05em
}
.booking-note{grid-column:1/-1;padding:8px 14px;color:var(--gold-pale);font-size:.82rem}

footer{
  min-height:85px;padding:0 var(--side);
  display:flex;align-items:center;justify-content:space-between;
  border-top:1px solid rgba(200,155,69,.12);
  color:#77736d;font-size:.85rem;letter-spacing:.1em
}

.reveal{opacity:0;transform:translateY(32px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}
.reveal.visible{opacity:1;transform:none}

@media(max-width:1100px){
  .site-header{grid-template-columns:auto 1fr auto}
  .main-nav{gap:18px}
  .hotel-section{grid-template-columns:1fr}
  .hotel-copy{max-width:760px}
  .hotel-visual{max-width:900px;width:100%}
  .triangle-field{gap:50px}
  .booking-section{grid-template-columns:1fr}
  .booking-form{grid-template-columns:repeat(3,1fr)}
  .booking-form button{min-height:56px}
}
@media(max-width:850px){
  .site-header{grid-template-columns:1fr auto;height:70px}
  .header-book{display:none}
  .menu-toggle{
    display:grid;width:44px;height:44px;border:1px solid var(--gold-line);
    background:#080808;place-content:center;gap:6px
  }
  .menu-toggle span{width:18px;height:1px;background:var(--gold-pale)}
  .main-nav{
    position:fixed;top:70px;left:18px;right:18px;
    display:none;flex-direction:column;align-items:flex-start;
    padding:23px;background:rgba(5,5,5,.98);border:1px solid var(--gold-line)
  }
  .main-nav.open{display:flex}
  .hero-index,.hero-social{display:none}
  .hero-center{width:min(90%,700px)}
  .hotel-features{grid-template-columns:1fr 1fr}
  .triangle-field{grid-template-columns:1fr;gap:95px;max-width:500px}
  .cabin-center{transform:none}
  .cabin-copy p{min-height:0}
  .experience-strip{grid-template-columns:1fr}
  .experience-strip div{min-height:170px;border-right:0;border-bottom:1px solid rgba(200,155,69,.13)}
  .booking-form{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  :root{--side:18px}
  .brand-symbol{width:46px}
  .brand-copy strong{font-size:.86rem}
  .brand-copy em{font-size:.85rem}
  .video-control{top:92px}
  .hero-center{width:calc(100% - 36px)}
  .hero-center h1{font-size:3.45rem}
  .hero-center p{letter-spacing:.18em;font-size:.82rem}
  .hero-bottom{font-size:.55rem}
  .hotel-section{padding-top:85px;padding-bottom:85px}
  .hotel-features{grid-template-columns:1fr 1fr}
  .hotel-image{min-height:390px}
  .cabins-section{padding-top:85px}
  .triangle-field{margin-top:65px}
  .booking-form{grid-template-columns:1fr}
  .booking-form label{border-right:0;border-bottom:1px solid rgba(200,155,69,.13)}
  footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:8px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}


.hotel-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:28px;
  max-width:680px;
}
.hotel-detail-grid article{
  min-height:92px;
  padding:16px 17px;
  border:1px solid rgba(200,155,69,.18);
  background:linear-gradient(145deg,rgba(200,155,69,.045),rgba(255,255,255,.01));
}
.hotel-detail-grid strong{
  display:block;
  color:var(--gold-pale);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.03rem;
  font-weight:400;
}
.hotel-detail-grid span{
  display:block;
  margin-top:6px;
  color:#9f998f;
  font-size:.83rem;
  line-height:1.45;
}

.cabin-detail-groups{
  display:grid;
  gap:16px;
  margin:26px auto 0;
  max-width:390px;
  text-align:left;
}
.cabin-detail-group{
  position:relative;
  padding:16px 18px 15px;
  border-top:1px solid rgba(200,155,69,.26);
  background:linear-gradient(90deg,rgba(200,155,69,.035),transparent 68%);
}
.cabin-detail-group h4{
  color:var(--gold-pale);
  font-family:Georgia,"Times New Roman",serif;
  font-size:.85rem;
  font-weight:400;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.cabin-detail-group ul{
  list-style:none;
  display:grid;
  gap:7px;
  margin-top:10px;
}
.cabin-detail-group li{
  position:relative;
  padding-left:17px;
  color:#b8b2a8;
  font-size:.84rem;
  line-height:1.5;
}
.cabin-detail-group li:before{
  content:"";
  position:absolute;
  left:0;
  top:.67em;
  width:6px;
  height:1px;
  background:var(--gold);
}
.cabin-copy p{
}

@media(max-width:1100px){
  .hotel-detail-grid{max-width:none}
}
@media(max-width:560px){
  .hotel-detail-grid{grid-template-columns:1fr}
  .cabin-detail-groups{max-width:none}
}

.hero-media video{z-index:1}
.hero-youtube{z-index:1;width:100%;height:100%;border:0;display:none;pointer-events:none}
.hero-media.is-youtube .hero-youtube{display:block}
.hero-media.is-youtube video{display:none!important}
.hero-media.is-upload .hero-youtube{display:none}
.hero-media.is-upload video{display:block}
.hero-media.is-image video,.hero-media.is-image .hero-youtube{display:none!important}
.hero-media.is-image .hero-fallback{display:block!important;z-index:1}


.nav-dropdown{position:relative}
.dropdown-toggle{display:inline-flex;align-items:center;gap:7px}
.dropdown-toggle::before{content:"";display:none}
.dropdown-toggle::after{
  content:"⌄"!important;
  position:static!important;
  width:auto!important;height:auto!important;
  background:none!important;
  font-size:.85rem;
  color:var(--gold-light);
  transition:transform .2s ease!important;
}
.nav-dropdown.open .dropdown-toggle::after{transform:rotate(180deg)}
.dropdown-menu{
  position:absolute;
  top:calc(100% + 18px);
  left:50%;
  transform:translateX(-50%) translateY(8px);
  min-width:270px;
  padding:10px;
  display:grid;
  gap:4px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  background:rgba(6,6,6,.98);
  border:1px solid rgba(200,155,69,.25);
  box-shadow:0 22px 55px rgba(0,0,0,.4);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  transition:.2s ease;
}
.nav-dropdown:hover .dropdown-menu,
.nav-dropdown.open .dropdown-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.dropdown-menu a{
  display:block;
  padding:11px 13px;
  color:#d8d3ca;
  font-size:.80rem;
  letter-spacing:.08em;
  white-space:nowrap;
}
.dropdown-menu a::after{display:none!important}
.dropdown-menu a:hover{
  color:var(--gold-light);
  background:rgba(200,155,69,.08);
}

@media(max-width:850px){
  .nav-dropdown{width:100%}
  .dropdown-toggle{width:100%;justify-content:space-between}
  .dropdown-menu{
    position:static;
    transform:none!important;
    min-width:0;
    width:100%;
    margin-top:8px;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    display:none;
    box-shadow:none;
    background:#0a0a0a;
  }
  .nav-dropdown.open .dropdown-menu{display:grid}
  .nav-dropdown:hover .dropdown-menu{display:none}
  .nav-dropdown.open:hover .dropdown-menu{display:grid}
}

/* PRO TYPOGRAPHY */
.eyebrow,
.section-kicker,
.story-eyebrow,
.contact-kicker,
.team-role,
.role,
.main-nav a,
.dropdown-menu a,
.header-book,
.pdf-actions a,
.master-unit-head span,
.contact-list span{
  letter-spacing:.11em;
  font-weight:700;
}

.story-content>p,
.hotel-story-heading p,
.section-heading p,
.about-hero p,
.unit-copy p,
.contact-list strong,
.values-content p,
.pdf-card p{
  font-size:1rem;
  line-height:1.8;
}

.story-features span,
.timeline-band span,
.team-card p,
.contact-form-note,
.gallery-help,
.muted{
  font-size:.9rem;
  line-height:1.65;
}

footer{
  font-size:.78rem;
}

@media(max-width:620px){
  .story-content>p,
  .hotel-story-heading p,
  .section-heading p,
  .about-hero p,
  .unit-copy p,
  .contact-list strong,
  .values-content p{
    font-size:.96rem;
  }
}


/* Keep page sections visually above the accent without changing their existing look. */
main,header,footer,.site-header{
  position:relative;
  z-index:0;
}

@media(max-width:700px){
  body::before{
    width:105vw;
    height:160px;
    top:56%;
    opacity:.34;
    transform:translate(-50%,-50%) rotate(-17deg);
  }
  body::after{
    width:90vw;
    top:59%;
    opacity:.28;
  }
}


/* GLOBAL DECORATIVE GOLD ACCENT - SAFE STACKING */
body{
  position:relative;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:absolute;
  left:50%;
  top:44%;
  width:min(78vw,1180px);
  height:190px;
  transform:translate(-50%,-50%) rotate(-12deg);
  pointer-events:none;
  opacity:.48;
  filter:blur(24px);
  z-index:0;
  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(116,73,29,0) 10%,
      rgba(116,73,29,.10) 24%,
      rgba(200,155,69,.22) 42%,
      rgba(239,207,126,.14) 50%,
      rgba(132,79,31,.13) 61%,
      rgba(200,155,69,.08) 76%,
      transparent 100%
    );
}
body::after{
  content:"";
  position:absolute;
  left:56%;
  top:47%;
  width:min(58vw,900px);
  height:100px;
  transform:translate(-50%,-50%) rotate(-12deg);
  pointer-events:none;
  opacity:.32;
  filter:blur(42px);
  z-index:0;
  background:radial-gradient(
    ellipse at center,
    rgba(216,175,83,.22) 0%,
    rgba(105,62,26,.10) 42%,
    transparent 74%
  );
}

/* Public content stays above the decorative accent. */
main, footer{
  position:relative;
  z-index:1;
}

/* Header/dropdown must stay above everything. */
.site-header{
  position:fixed !important;
  z-index:10000 !important;
}
.main-nav{
  position:relative;
  z-index:10001;
}
.nav-dropdown{
  position:relative;
  z-index:10002;
}
.dropdown-menu{
  z-index:10003 !important;
}

@media(max-width:700px){
  body::before{
    width:108vw;
    height:145px;
    top:46%;
    opacity:.38;
    transform:translate(-50%,-50%) rotate(-16deg);
  }
  body::after{
    width:92vw;
    top:49%;
    opacity:.24;
  }
}


/* DROPDOWN STAY-OPEN + VISIBLE MID-PAGE GOLD BAND */

/* Invisible bridge between CAZARE and its submenu:
   prevents :hover from being lost while moving the mouse downward. */
.nav-dropdown{
  padding-bottom:20px;
  margin-bottom:-20px;
}
.dropdown-menu{
  top:100% !important;
  margin-top:0 !important;
}
.nav-dropdown:hover .dropdown-menu,
.nav-dropdown:focus-within .dropdown-menu,
.nav-dropdown.open .dropdown-menu{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Stronger but still elegant gold/black diagonal accent around page middle. */
main{
  position:relative;
  z-index:1;
}
main::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-8vw;
  top:46%;
  width:116vw;
  height:330px;
  transform:rotate(-7deg);
  pointer-events:none;
  opacity:1;
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,0) 0%,
      rgba(49,31,13,.10) 16%,
      rgba(112,70,26,.22) 31%,
      rgba(190,139,55,.31) 46%,
      rgba(222,178,86,.24) 54%,
      rgba(123,75,28,.20) 68%,
      rgba(33,22,12,.08) 84%,
      rgba(0,0,0,0) 100%
    );
  filter:blur(24px);
}

/* Fine luminous line inside the broad gradient. */
main::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:8vw;
  top:49%;
  width:84vw;
  height:74px;
  transform:rotate(-7deg);
  pointer-events:none;
  opacity:.62;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(135,86,31,.10) 20%,
    rgba(214,165,70,.26) 45%,
    rgba(236,199,115,.20) 55%,
    rgba(118,70,25,.10) 78%,
    transparent
  );
  filter:blur(30px);
}

/* Disable the previous body accent so the two systems do not cancel/muddy each other. */
body::before,
body::after{
  display:none !important;
}

@media(max-width:700px){
  main::before{
    left:-30vw;
    width:160vw;
    height:230px;
    top:48%;
    transform:rotate(-10deg);
  }
  main::after{
    left:-5vw;
    width:110vw;
    top:50%;
    transform:rotate(-10deg);
  }
}


/* HOMEPAGE MOVING GOLD STAR FRAMES */
.home-star-frame{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(200,155,69,.56) !important;
}
.home-frame-star{
  position:absolute;
  z-index:9;
  width:8px;
  height:8px;
  left:-4px;
  top:-4px;
  border-radius:50%;
  background:#fff0b7;
  pointer-events:none;
  box-shadow:
    0 0 7px 2px rgba(255,230,155,.96),
    0 0 18px 6px rgba(200,155,69,.65),
    0 0 34px 12px rgba(200,155,69,.20);
  animation:home-border-star-run 7s linear infinite;
}
.home-frame-star.star-delay{animation-delay:-1.6s}
.home-frame-star.star-delay-2{animation-delay:-3.2s}
.home-frame-star.star-delay-3{animation-delay:-4.8s}

@keyframes home-border-star-run{
  0%{left:-4px;top:-4px}
  24.9%{left:calc(100% - 4px);top:-4px}
  25%{left:calc(100% - 4px);top:-4px}
  49.9%{left:calc(100% - 4px);top:calc(100% - 4px)}
  50%{left:calc(100% - 4px);top:calc(100% - 4px)}
  74.9%{left:-4px;top:calc(100% - 4px)}
  75%{left:-4px;top:calc(100% - 4px)}
  100%{left:-4px;top:-4px}
}
@media(prefers-reduced-motion:reduce){
  .home-frame-star{animation:none}
}


/* HOMEPAGE HERO SLIDER */
.hero{--hero-slide-speed:900ms}
.hero-slider-controls{position:absolute;z-index:8;left:50%;bottom:64px;transform:translateX(-50%);display:flex;align-items:center;gap:12px}
.hero-slider-arrow{width:42px;height:42px;border:1px solid rgba(229,195,124,.45);border-radius:50%;background:rgba(5,5,5,.45);color:#e5c37c;font-size:1.6rem;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:.2s ease}
.hero-slider-arrow:hover{background:rgba(200,155,69,.18);transform:scale(1.05)}
.hero-slider-dots{display:flex;gap:7px;align-items:center}.hero-slider-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;transition:.25s}.hero-slider-dots button.active{width:24px;border-radius:999px;background:#e5c37c}
.hero-slider-progress{position:absolute;z-index:8;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.10);overflow:hidden}.hero-slider-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#aa772d,#e5c37c)}
.hero.hero-slide-fade .hero-media,.hero.hero-slide-fade .hero-center{animation:heroFadeIn var(--hero-slide-speed) ease both}
.hero.hero-slide-slide .hero-media,.hero.hero-slide-slide .hero-center{animation:heroSlideIn var(--hero-slide-speed) cubic-bezier(.2,.75,.2,1) both}
.hero.hero-slide-zoom .hero-media,.hero.hero-slide-zoom .hero-center{animation:heroZoomIn var(--hero-slide-speed) ease both}
@keyframes heroFadeIn{from{opacity:.15}to{opacity:1}}
@keyframes heroSlideIn{from{opacity:.1;transform:translateX(38px)}to{opacity:1;transform:translateX(0)}}
@keyframes heroZoomIn{from{opacity:.1;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@media(max-width:700px){.hero-slider-controls{bottom:72px}.hero-slider-arrow{width:38px;height:38px}.hero-slider-dots button.active{width:18px}}


/* Add a soft dark/gold vignette behind contained cabin images */
#cabinImage0::before,
#cabinImage1::before,
#cabinImage2::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at center, rgba(200,155,69,.05), transparent 62%),
    linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.20));
}




/* MEDIA MANAGER SAFE CABIN TRIANGLES */
#cabinImage0,
#cabinImage1,
#cabinImage2{
  background-color:#0a0a0a;
  background-repeat:no-repeat;
}


/* PREDEFINED TRIANGLE ARTWORK */
#cabinImage0,
#cabinImage1,
#cabinImage2{
  background-color:#080808;
  background-repeat:no-repeat;
}


/* HOMEPAGE_BOOKING_SWITCH */
.booking-units-layout{display:none;grid-column:1/-1;width:100%}
.booking-section.units-mode{display:block;padding-top:74px;padding-bottom:78px;background:radial-gradient(circle at 50% 0,rgba(200,155,69,.11),transparent 35%),linear-gradient(180deg,#080808,#050505)}
.booking-section.units-mode>.booking-title,.booking-section.units-mode>.booking-form{display:none}
.booking-section.units-mode .booking-units-layout{display:block}
.booking-units-heading{width:min(1320px,100%);margin:0 auto 28px;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.4fr);gap:10px 42px;align-items:end}
.booking-units-heading>span{grid-column:1;color:var(--gold);font-size:.76rem;font-weight:850;letter-spacing:.2em}
.booking-units-heading h2{grid-column:1/3;margin:0;font:400 clamp(2.2rem,4vw,4.4rem)/.98 Georgia,serif;max-width:900px}
.booking-units-heading p{grid-column:2;grid-row:1/3;align-self:end;margin:0 0 4px;color:#9d978e;line-height:1.65;max-width:470px}
.booking-unit-grid{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.booking-unit-mini{position:relative;isolation:isolate;min-height:370px;overflow:hidden;border:1px solid rgba(200,155,69,.34);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));background:#0b0b0b;transition:transform .28s ease,border-color .28s ease}
.booking-unit-mini:before{content:"";position:absolute;z-index:4;left:15px;top:15px;width:34px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);transition:width .28s ease}
.booking-unit-mini:hover{transform:translateY(-5px);border-color:rgba(239,210,137,.72)}
.booking-unit-mini:hover:before{width:70px}
.booking-unit-mini-media{position:absolute;z-index:0;inset:0;background:#111 center/cover no-repeat;transform:scale(1.01);transition:transform .55s ease,filter .35s ease}
.booking-unit-mini:hover .booking-unit-mini-media{transform:scale(1.055);filter:saturate(1.06)}
.booking-unit-mini-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 18%,rgba(0,0,0,.38) 55%,rgba(0,0,0,.94) 100%)}
.booking-unit-mini-content{position:absolute;z-index:2;inset:auto 0 0;padding:26px 22px 23px}
.booking-unit-mini-content>span{display:block;color:#d9bd70;font-size:.65rem;font-weight:850;letter-spacing:.17em}
.booking-unit-mini-content h3{margin:8px 0 7px;color:#f4ede2;font:400 1.45rem/1.05 Georgia,serif}
.booking-unit-mini-content p{min-height:54px;margin:0;color:#aaa49b;font-size:.79rem;line-height:1.5}
.booking-unit-mini-content a{margin-top:17px;min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 14px;border:1px solid rgba(221,185,92,.62);background:linear-gradient(135deg,rgba(200,155,69,.11),rgba(7,7,7,.72));color:#ead38e;text-decoration:none;font-size:.68rem;font-weight:900;letter-spacing:.09em;transition:.22s}
.booking-unit-mini-content a b{font-size:1rem;font-weight:400}
.booking-unit-mini-content a:hover{background:linear-gradient(135deg,#f0d78e,#b98935);border-color:#f0d78e;color:#070707}
.booking-unit-mini[hidden]{display:none!important}
@media(max-width:1050px){.booking-unit-grid{grid-template-columns:repeat(2,1fr)}.booking-units-heading{grid-template-columns:1fr}.booking-units-heading>span,.booking-units-heading h2,.booking-units-heading p{grid-column:1;grid-row:auto}.booking-units-heading p{max-width:650px}}
@media(max-width:620px){.booking-section.units-mode{padding-top:58px;padding-bottom:62px}.booking-unit-grid{grid-template-columns:1fr;gap:11px}.booking-unit-mini{min-height:330px}.booking-units-heading{margin-bottom:22px}.booking-units-heading h2{font-size:clamp(2rem,10vw,3rem)}.booking-unit-mini-content p{min-height:0}}


/* MOBILE_HERO_COMPACT_FIT_V22
   Keep desktop unchanged. On portrait phones the Hero is shorter and the
   media fills the available frame more naturally. */
@media (max-width:700px) and (orientation:portrait){
  .hero{
    min-height:0;
    height:clamp(520px,78svh,650px);
  }
  .hero-center{
    width:calc(100% - 34px);
    margin-top:22px;
  }
  .hero-center h1{
    margin-top:12px;
    font-size:clamp(2.65rem,12vw,3.25rem);
  }
  .hero-kicker{font-size:.70rem;letter-spacing:.30em}
  .crest-line{margin:16px auto 12px;width:min(230px,72%)}
  .hero-center p{font-size:.74rem;line-height:1.42;letter-spacing:.15em}
  .outline-btn{min-height:42px;margin-top:18px;padding:0 18px;font-size:.70rem}
  .video-control{top:82px;font-size:.70rem}
  .play-mark{width:28px;height:28px}
  .hero-slider-controls{bottom:52px;gap:9px}
  .hero-slider-arrow{width:34px;height:34px;font-size:1.2rem}
  .hero-bottom{bottom:14px;font-size:.49rem}
  .hero-bottom i{width:30px}
  .hero-media video{object-fit:cover}
  .hero-media.is-youtube{overflow:hidden}
  .hero-youtube{will-change:transform}
}

@media (max-width:390px) and (orientation:portrait){
  .hero{height:clamp(500px,76svh,610px)}
  .hero-center h1{font-size:2.55rem}
  .hero-center p{font-size:.69rem}
  .hero-slider-controls{bottom:48px}
}
