/* ═══════════════════════════════════════════════════════════
   Hinaguan Nature Park — Main Stylesheet
   assets/css/style.css
═══════════════════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --gd:#0d2818; --gm:#1a4a2e; --gl:#2d7a4f; --gmt:#4a8c65;
  --gold:#c8973a; --goldi:#e8b95a;
  --cream:#f7f2ea; --crmd:#ede5d4; --td:#1a1a12; --tm:#4a4a3a;
  --fw:'Jost',sans-serif; --fd:'Cormorant Garamond',serif;
}
html { scroll-behavior:smooth; font-size:16px; }
body { font-family:var(--fw); background:var(--cream); color:var(--td); overflow-x:hidden; }
img  { max-width:100%; display:block; }
a    { text-decoration:none; color:inherit; }
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--gd)}
::-webkit-scrollbar-thumb{background:var(--gold);border-radius:3px}

/* ANNOUNCEMENT BAR */
.announce-bar{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--gold);padding:.45rem 1rem;display:flex;align-items:center;justify-content:center;gap:1.2rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--gd);transform:translateY(0);transition:transform .4s}
.announce-bar.hidden{transform:translateY(-100%)}
.announce-bar .announce-text{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}
.announce-close{position:absolute;right:1rem;background:none;border:none;cursor:pointer;color:var(--gd);font-size:.9rem;opacity:.7;padding:.2rem .4rem;transition:opacity .2s}
.announce-close:hover{opacity:1}
body.bar-visible nav{top:32px}
body.bar-visible .mobile-menu{padding-top:32px}

/* NAVBAR */
nav{position:fixed;top:0;left:0;right:0;z-index:999;padding:1.1rem 3.5rem;display:flex;align-items:center;justify-content:space-between;transition:background .45s,padding .35s,box-shadow .35s}
nav.scrolled{background:rgba(13,40,24,.97);padding:.75rem 3.5rem;box-shadow:0 4px 30px rgba(0,0,0,.35);backdrop-filter:blur(14px)}
.nav-brand{display:flex;align-items:center;gap:.75rem}
.nav-logo-svg{width:42px;height:42px;flex-shrink:0}
.nav-brand-text{display:flex;flex-direction:column;line-height:1.1}
.nav-brand-text span:first-child{font-family:var(--fd);font-weight:700;font-size:1.05rem;color:var(--goldi);letter-spacing:.05em}
.nav-brand-text span:last-child{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.nav-links{display:flex;gap:2.2rem;list-style:none}
.nav-links a{font-size:.76rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.8);position:relative;transition:color .3s}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .3s}
.nav-links a:hover{color:var(--goldi)}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-cta{background:var(--gold)!important;color:var(--gd)!important;font-weight:600!important;padding:.5rem 1.3rem;border-radius:2px;transition:background .3s!important}
.nav-cta::after{display:none!important}
.nav-cta:hover{background:var(--goldi)!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:1001}
.hamburger span{width:26px;height:2px;background:white;transition:.3s;border-radius:2px}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;position:fixed;inset:0;z-index:998;background:var(--gd);flex-direction:column;align-items:center;justify-content:center;gap:2.2rem}
.mobile-menu.open{display:flex}
.mobile-menu a{font-family:var(--fd);font-size:2rem;color:var(--cream);font-weight:300;letter-spacing:.06em;transition:color .3s}
.mobile-menu a:hover{color:var(--goldi)}

/* HERO COLLAGE */
#hero{position:relative;height:100vh;min-height:680px;display:flex;align-items:flex-end;justify-content:flex-start;overflow:hidden}
.hero-collage{position:absolute;inset:0;display:grid;grid-template-columns:1.15fr .8fr .85fr 1fr;grid-template-rows:1fr 1fr 1fr;gap:3px;transform:scale(1.04);transition:transform .1s linear}
.hero-collage-panel{overflow:hidden;position:relative}
.hero-collage-panel img{width:100%;height:100%;object-fit:cover;transition:transform 8s ease}
.hero-collage-panel:hover img{transform:scale(1.08)}
.hcp-1{grid-column:1;grid-row:1/3}
.hcp-2{grid-column:2;grid-row:1}
.hcp-3{grid-column:3;grid-row:1/3}
.hcp-4{grid-column:4;grid-row:1/4}
.hcp-5{grid-column:2;grid-row:2}
.hcp-6{grid-column:1/3;grid-row:3}
.hcp-7{grid-column:3;grid-row:3}
.hero-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(105deg,rgba(13,40,24,.92) 0%,rgba(13,40,24,.75) 35%,rgba(13,40,24,.35) 65%,rgba(13,40,24,.55) 100%)}

/* Brenda blended figure */
.hero-brenda-wrap{position:absolute;bottom:0;right:3%;z-index:3;width:clamp(320px,36vw,540px);height:clamp(500px,88vh,920px);animation:brendaIn 1.4s 1s both ease-out;transform-origin:bottom center;pointer-events:none}
.hero-brenda-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;-webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 40%,black 40%,rgba(0,0,0,.8) 55%,transparent 75%),linear-gradient(to bottom,black 0%,black 45%,rgba(0,0,0,.6) 65%,transparent 88%),linear-gradient(to right,transparent 0%,black 6%,black 92%,transparent 100%);-webkit-mask-composite:source-in;mask-image:radial-gradient(ellipse 90% 70% at 50% 40%,black 40%,rgba(0,0,0,.8) 55%,transparent 75%),linear-gradient(to bottom,black 0%,black 45%,rgba(0,0,0,.6) 65%,transparent 88%),linear-gradient(to right,transparent 0%,black 6%,black 92%,transparent 100%);mask-composite:intersect;mix-blend-mode:normal;filter:saturate(1.1) brightness(0.95) contrast(1.08);opacity:.88}
.hero-brenda-tint{position:absolute;inset:0;background:linear-gradient(160deg,rgba(13,40,24,.18) 0%,rgba(13,40,24,.12) 40%,rgba(200,151,58,.05) 100%);mix-blend-mode:multiply;-webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 40%,black 40%,transparent 75%),linear-gradient(to bottom,black 0%,black 45%,transparent 88%);-webkit-mask-composite:source-in;mask-image:radial-gradient(ellipse 90% 70% at 50% 40%,black 40%,transparent 75%),linear-gradient(to bottom,black 0%,black 45%,transparent 88%);mask-composite:intersect;border-radius:4px}
.hero-brenda-glow{position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:90%;height:60px;background:radial-gradient(ellipse,rgba(45,122,79,.5),transparent 70%);border-radius:50%}
.hero-brenda-leaves{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.82}


/* Hero text */
.hero-content{position:relative;z-index:4;padding:0 3.5rem 4rem;max-width:640px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-size:.7rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--goldi);margin-bottom:1.3rem;opacity:0;animation:fadeUp .9s .4s forwards}
.hero-eyebrow::before{content:'';width:28px;height:1.5px;background:var(--gold)}
.hero-title{font-family:var(--fd);font-size:clamp(3rem,6.5vw,5.8rem);font-weight:700;color:white;line-height:1;letter-spacing:.02em;opacity:0;animation:fadeUp .9s .6s forwards;text-shadow:0 4px 40px rgba(0,0,0,.7)}
.hero-title em{font-style:italic;color:var(--goldi)}
.hero-subtitle{margin-top:1rem;font-size:clamp(.88rem,1.8vw,1.05rem);font-weight:300;color:rgba(255,255,255,.75);letter-spacing:.04em;line-height:1.65;opacity:0;animation:fadeUp .9s .8s forwards;max-width:480px}
.hero-actions{margin-top:2.2rem;display:flex;gap:.9rem;flex-wrap:wrap;opacity:0;animation:fadeUp .9s 1s forwards}
.hero-scroll{position:absolute;bottom:2rem;left:3.5rem;z-index:4;display:flex;flex-direction:column;align-items:center;gap:.4rem;opacity:0;animation:fadeUp .9s 1.4s forwards}
.hero-scroll span{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.scroll-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:dotBounce 1.8s infinite ease-in-out}

/* BUTTONS */
.btn-primary{background:var(--gold);color:var(--gd);padding:.82rem 2.2rem;font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;border:none;border-radius:2px;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:.5rem}
.btn-primary:hover{background:var(--goldi);transform:translateY(-2px);box-shadow:0 8px 28px rgba(200,151,58,.4)}
.btn-outline{background:transparent;color:white;padding:.8rem 2.2rem;font-size:.78rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;border:1.5px solid rgba(255,255,255,.55);border-radius:2px;cursor:pointer;transition:all .3s}
.btn-outline:hover{border-color:var(--goldi);color:var(--goldi);transform:translateY(-2px)}

/* SECTION COMMONS */
section{overflow:hidden}
.section-label{font-size:.67rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem}
.section-title{font-family:var(--fd);font-weight:600;font-size:clamp(1.9rem,4vw,3rem);line-height:1.1;color:var(--gd)}
.section-title.light{color:var(--cream)}
.section-lead{font-size:1rem;line-height:1.8;color:var(--tm);font-weight:300;max-width:600px}
.section-lead.light{color:rgba(255,255,255,.72)}
.divider{width:56px;height:2px;background:var(--gold);margin:1.3rem 0}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s,transform .7s}
.reveal.visible{opacity:1;transform:none}

/* ABOUT */
#about{padding:6.5rem 3.5rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;background:var(--cream)}
.about-images{position:relative;height:520px}
.about-img-main{position:absolute;top:0;left:0;width:76%;height:84%;object-fit:cover;border-radius:3px;box-shadow:0 20px 55px rgba(0,0,0,.16)}
.about-img-secondary{position:absolute;bottom:0;right:0;width:56%;height:50%;object-fit:cover;border-radius:3px;border:5px solid var(--cream);box-shadow:0 12px 38px rgba(0,0,0,.18)}
.about-badge{position:absolute;top:60%;left:-1.5rem;background:var(--gd);color:white;padding:1.3rem 1.6rem;border-radius:3px;text-align:center;box-shadow:0 12px 40px rgba(0,0,0,.25);z-index:3}
.about-badge .num{font-family:var(--fd);font-size:2.6rem;font-weight:700;color:var(--goldi);line-height:1;display:block}
.about-badge .lbl{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.about-brenda-card{position:absolute;top:-1.5rem;right:-1.5rem;width:130px;height:130px;border-radius:50%;overflow:hidden;border:4px solid var(--gold);box-shadow:0 8px 28px rgba(0,0,0,.25);z-index:4}
.about-brenda-card img{width:100%;height:100%;object-fit:cover;object-position:center top}
.stat-row{display:flex;gap:2.2rem;margin-top:2.2rem}
.stat-item .val{font-family:var(--fd);font-size:2rem;font-weight:700;color:var(--gm);line-height:1}
.stat-item .desc{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tm);margin-top:.15rem}
.brenda-signature{margin-top:1.5rem;display:flex;align-items:center;gap:1rem}
.brenda-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:top;border:3px solid var(--gold)}
.brenda-info small{display:block;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.brenda-info strong{font-family:var(--fd);font-size:1.05rem;color:var(--gd)}

/* MEET BRENDA */
#meet-brenda{background:linear-gradient(135deg,var(--gd) 0%,#0f3520 100%);padding:6rem 3.5rem;position:relative;overflow:hidden}
.meet-brenda-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:5rem;align-items:center;position:relative;z-index:1}
.brenda-photo-frame{position:relative}
.brenda-photo-outer{width:100%;padding-bottom:115%;position:relative;border-radius:4px;overflow:hidden}
.brenda-photo-outer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.brenda-photo-outer::after{content:'';position:absolute;inset:0;border:2px solid rgba(200,151,58,.35);border-radius:4px;pointer-events:none}
.corner{position:absolute;width:20px;height:20px;border-color:var(--gold);border-style:solid;z-index:2}
.corner.tl{top:-8px;left:-8px;border-width:2px 0 0 2px}
.corner.tr{top:-8px;right:-8px;border-width:2px 2px 0 0}
.corner.bl{bottom:-8px;left:-8px;border-width:0 0 2px 2px}
.corner.br{bottom:-8px;right:-8px;border-width:0 2px 2px 0}
.celeb-tag{position:absolute;bottom:-1rem;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--gd);padding:.5rem 1.2rem;border-radius:20px;font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;box-shadow:0 6px 22px rgba(200,151,58,.4)}
.brenda-socials{display:flex;gap:1.5rem;margin-top:2.5rem}
.brenda-social-stat{text-align:center}
.brenda-social-stat .sval{font-family:var(--fd);font-size:1.7rem;font-weight:700;color:var(--goldi);display:block}
.brenda-social-stat .slbl{font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.brenda-quote{border-left:3px solid var(--gold);padding-left:1.4rem;margin:1.8rem 0}
.brenda-quote p{font-family:var(--fd);font-size:1.35rem;font-weight:300;font-style:italic;color:rgba(255,255,255,.85);line-height:1.6}
.brenda-quote cite{display:block;margin-top:.7rem;font-family:var(--fw);font-style:normal;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}
.brenda-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.brenda-tag{border:1px solid rgba(200,151,58,.35);padding:.3rem .85rem;border-radius:20px;font-size:.72rem;letter-spacing:.1em;color:rgba(255,255,255,.6)}

/* FEATURES */
#features{background:var(--gd);padding:5.5rem 3.5rem}
.features-header{text-align:center;margin-bottom:3.5rem}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;background:rgba(255,255,255,.05);border:1.5px solid rgba(255,255,255,.05);max-width:1200px;margin:0 auto}
.feature-card{background:var(--gd);padding:2.8rem 2.2rem;transition:background .35s;position:relative;overflow:hidden}
.feature-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--gold);transform:scaleX(0);transition:transform .4s}
.feature-card:hover{background:rgba(255,255,255,.04)}
.feature-card:hover::before{transform:scaleX(1)}
.feature-icon{font-size:1.9rem;color:var(--gold);margin-bottom:1.3rem}
.feature-card h3{font-family:var(--fd);font-size:1.35rem;font-weight:600;color:white;margin-bottom:.7rem}
.feature-card p{font-size:.87rem;line-height:1.75;color:rgba(255,255,255,.58);font-weight:300}

/* ACTIVITIES */
#activities{padding:6.5rem 3.5rem;background:var(--crmd)}
.activities-inner{max-width:1200px;margin:0 auto}
.activities-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:3rem;flex-wrap:wrap;gap:1.5rem}
.activities-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.activity-card{position:relative;border-radius:3px;overflow:hidden;cursor:pointer}
.activity-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;display:block}
.activity-card:hover img{transform:scale(1.06)}
.activity-card.tall{grid-row:span 2}
.activity-card:not(.tall){height:270px}
.activity-card.tall{height:554px}
.activity-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,40,24,.88) 0%,transparent 55%);display:flex;align-items:flex-end;padding:1.8rem}
.activity-info h3{font-family:var(--fd);font-size:1.4rem;font-weight:600;color:white}
.activity-info p{font-size:.8rem;color:rgba(255,255,255,.68);margin-top:.25rem;font-weight:300}
.activity-tag{display:inline-block;background:var(--gold);color:var(--gd);font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.22rem .7rem;border-radius:2px;margin-bottom:.4rem}

/* RATES */
#rates{padding:6rem 3.5rem;background:var(--cream)}
.rates-inner{max-width:1080px;margin:0 auto}
.rates-header{text-align:center;margin-bottom:3.2rem}
.rates-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.rate-card{background:white;border-radius:4px;padding:2.3rem 1.8rem;text-align:center;border:1.5px solid var(--crmd);transition:all .35s;position:relative;overflow:hidden}
.rate-card.featured{background:var(--gm);border-color:var(--gm)}
.rate-card:hover{box-shadow:0 20px 55px rgba(0,0,0,.1);transform:translateY(-4px)}
.rate-badge{position:absolute;top:0;right:0;background:var(--gold);color:var(--gd);font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.3rem .85rem;border-radius:0 4px 0 4px}
.rate-icon{font-size:1.8rem;color:var(--gold);margin-bottom:1.1rem}
.rate-name{font-family:var(--fd);font-size:1.25rem;font-weight:600;color:var(--gd);margin-bottom:.35rem}
.rate-card.featured .rate-name{color:white}
.rate-price{font-family:var(--fd);font-size:2.8rem;font-weight:700;color:var(--gm);line-height:1}
.rate-card.featured .rate-price{color:var(--goldi)}
.rate-price sup{font-size:1.1rem;vertical-align:super}
.rate-duration{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tm);margin-bottom:1.3rem}
.rate-card.featured .rate-duration{color:rgba(255,255,255,.5)}
.rate-divider{border:none;border-top:1px solid var(--crmd);margin:1.1rem 0}
.rate-card.featured .rate-divider{border-color:rgba(255,255,255,.15)}
.rate-features{list-style:none;text-align:left}
.rate-features li{font-size:.83rem;color:var(--tm);padding:.32rem 0;display:flex;align-items:center;gap:.55rem}
.rate-card.featured .rate-features li{color:rgba(255,255,255,.75)}
.rate-features li i{color:var(--gold);font-size:.68rem}
.rate-desc{font-size:.8rem;color:var(--tm);font-weight:300;margin-bottom:.9rem}
.rate-card.featured .rate-desc{color:rgba(255,255,255,.65)}
.rates-note{text-align:center;margin-top:2.2rem;font-size:.83rem;color:var(--tm);font-style:italic;line-height:1.8}

/* GALLERY */
#gallery{background:var(--gd);padding:5.5rem 3.5rem}
.gallery-header{text-align:center;margin-bottom:3rem}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:6px;max-width:1200px;margin:0 auto}
.gallery-item{overflow:hidden;border-radius:2px;cursor:zoom-in;position:relative}
.gallery-item:nth-child(1){grid-column:span 2;grid-row:span 2}
.gallery-item.gi-tall{grid-column:span 2;grid-row:span 2}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-overlay{position:absolute;inset:0;background:rgba(13,40,24,.3);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .35s}
.gallery-item:hover .gallery-overlay{opacity:1}
.gallery-overlay i{font-size:1.7rem;color:white}

/* TESTIMONIALS */
#testimonials{background:var(--cream);padding:6rem 3.5rem;overflow:hidden}
.testimonials-inner{max-width:1080px;margin:0 auto}
.testimonials-header{text-align:center;margin-bottom:3.5rem}
.testimonials-track-wrap{overflow:hidden;position:relative}
.testimonials-track-wrap::before,.testimonials-track-wrap::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
.testimonials-track-wrap::before{left:0;background:linear-gradient(to right,var(--cream),transparent)}
.testimonials-track-wrap::after{right:0;background:linear-gradient(to left,var(--cream),transparent)}
.testimonials-track{display:flex;gap:1.4rem;animation:scrollTestimonials 32s linear infinite;width:max-content}
.testimonials-track:hover{animation-play-state:paused}
.testimonial-card{background:white;border-radius:4px;padding:2rem;width:320px;flex-shrink:0;border:1.5px solid var(--crmd);box-shadow:0 4px 24px rgba(0,0,0,.05);transition:box-shadow .3s}
.testimonial-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.1)}
.tc-stars{color:var(--gold);font-size:.85rem;letter-spacing:.1em;margin-bottom:.9rem}
.tc-text{font-size:.9rem;line-height:1.7;color:var(--tm);font-weight:300;margin-bottom:1.2rem;font-style:italic}
.tc-author{display:flex;align-items:center;gap:.75rem}
.tc-avatar{width:38px;height:38px;border-radius:50%;background:var(--gm);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-size:1rem;font-weight:700;color:white;flex-shrink:0}
.tc-name{font-weight:600;font-size:.88rem;color:var(--gd)}
.tc-location{font-size:.72rem;color:var(--gmt);letter-spacing:.06em}
.testimonials-cta{text-align:center;margin-top:2.8rem}

/* VIDEO */
#video-section{background:var(--gd);padding:5.5rem 3.5rem}
.video-inner{max-width:1080px;margin:0 auto;text-align:center}
.video-header{margin-bottom:2.8rem}
.video-frame-wrap{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.5);border:1px solid rgba(200,151,58,.2)}
.video-frame-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}
.video-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#0f3520,#1a4a2e);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem}
.video-placeholder .play-btn{width:70px;height:70px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--gd);cursor:pointer;transition:all .3s;box-shadow:0 0 0 12px rgba(200,151,58,.18),0 0 0 24px rgba(200,151,58,.08)}
.video-placeholder .play-btn:hover{transform:scale(1.1);background:var(--goldi)}
.video-placeholder p{color:rgba(255,255,255,.7);font-size:.9rem;font-weight:300}
.video-placeholder h3{font-family:var(--fd);font-size:1.5rem;color:white;font-weight:600}

/* DIRECTIONS */
#directions{padding:5.5rem 3.5rem;background:var(--crmd)}
.directions-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:start}
.directions-steps{list-style:none;margin-top:1.8rem}
.directions-steps li{display:flex;gap:1.1rem;margin-bottom:1.8rem;position:relative}
.directions-steps li::before{content:'';position:absolute;top:2.1rem;left:1.15rem;width:1.5px;height:calc(100% + .5rem);background:linear-gradient(to bottom,var(--gold),transparent)}
.directions-steps li:last-child::before{display:none}
.step-num{flex-shrink:0;width:2.3rem;height:2.3rem;background:var(--gd);color:var(--goldi);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-size:1rem;font-weight:700}
.step-body h4{font-weight:600;font-size:.92rem;color:var(--gd);margin-bottom:.2rem}
.step-body p{font-size:.85rem;line-height:1.7;color:var(--tm);font-weight:300}
.map-box{border-radius:4px;overflow:hidden;box-shadow:0 20px 55px rgba(0,0,0,.14);height:360px;background:linear-gradient(135deg,#b8cbb0,#8aab80);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--gd);text-align:center}
.map-box i{font-size:2.4rem;color:var(--gm)}
.map-box p{font-size:.88rem;font-weight:500;padding:0 1.5rem;line-height:1.6}
.map-box a{display:inline-block;background:var(--gd);color:white;padding:.6rem 1.4rem;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border-radius:2px;transition:background .3s}
.map-box a:hover{background:var(--gm)}
.coords-box{margin-top:1.3rem;padding:1.1rem 1.4rem;background:rgba(45,122,79,.1);border-left:3px solid var(--gmt);border-radius:2px}
.coords-box p{font-size:.84rem;color:var(--tm);line-height:1.75}
.coords-box strong{color:var(--gd)}

/* CONTACT */
#contact{background:var(--gd);padding:6rem 3.5rem;position:relative;overflow:hidden}
#contact::before{content:'HINAGUAN';position:absolute;font-family:var(--fd);font-size:18vw;font-weight:700;color:rgba(255,255,255,.018);top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;pointer-events:none}
.contact-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1.4fr;gap:5.5rem;position:relative;z-index:1}
.contact-details{margin-top:2.2rem;display:flex;flex-direction:column;gap:1.3rem}
.contact-detail{display:flex;align-items:flex-start;gap:1rem}
.cd-icon{width:38px;height:38px;background:rgba(200,151,58,.1);border:1px solid rgba(200,151,58,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:.85rem;flex-shrink:0}
.cd-text small{display:block;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.38);margin-bottom:.18rem}
.cd-text span{font-size:.92rem;color:rgba(255,255,255,.82)}
.social-row{margin-top:2.2rem;display:flex;gap:.7rem}
.social-btn{width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);font-size:.9rem;transition:all .3s}
.social-btn:hover{border-color:var(--gold);color:var(--gold);background:rgba(200,151,58,.08)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.form-group{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem}
.form-group label{font-size:.67rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.form-group input,.form-group select,.form-group textarea{background:rgba(255,255,255,.05);border:1.5px solid rgba(255,255,255,.11);border-radius:3px;padding:.8rem .95rem;font-size:.88rem;font-family:var(--fw);color:white;outline:none;transition:border-color .3s;width:100%}
.form-group input::placeholder,.form-group textarea::placeholder{color:rgba(255,255,255,.22)}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold)}
.form-group select option{background:var(--gd)}
.form-group textarea{resize:vertical;min-height:120px}
.form-submit{background:var(--gold);color:var(--gd);border:none;padding:.95rem 2.5rem;font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;border-radius:2px;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:.55rem}
.form-submit:hover{background:var(--goldi);transform:translateY(-2px);box-shadow:0 8px 28px rgba(200,151,58,.35)}
.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.form-message{margin-top:1rem;padding:.85rem 1.1rem;border-radius:3px;font-size:.86rem;display:none}
.form-message.success{background:rgba(45,122,79,.22);border:1px solid var(--gmt);color:#8fe4b0}
.form-message.error{background:rgba(180,50,50,.18);border:1px solid rgba(180,50,50,.4);color:#f4a0a0}

/* LIGHTBOX */
.lightbox{position:fixed;inset:0;z-index:2000;background:rgba(6,15,10,.97);display:none;align-items:center;justify-content:center;padding:2rem}
.lightbox.open{display:flex}
.lightbox-img-wrap{max-width:90vw;max-height:88vh;display:flex;align-items:center;justify-content:center}
.lightbox-img-wrap img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:3px;box-shadow:0 40px 120px rgba(0,0,0,.7);animation:lbIn .3s ease}
.lb-close{position:fixed;top:1.5rem;right:2rem;background:none;border:none;color:white;font-size:1.8rem;cursor:pointer;z-index:2001;opacity:.7;transition:opacity .2s;width:44px;height:44px;display:flex;align-items:center;justify-content:center}
.lb-close:hover{opacity:1}
.lb-prev,.lb-next{position:fixed;top:50%;transform:translateY(-50%);background:rgba(200,151,58,.15);border:1px solid rgba(200,151,58,.3);color:var(--goldi);font-size:1.2rem;width:46px;height:46px;border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;z-index:2001}
.lb-prev{left:1.5rem}.lb-next{right:1.5rem}
.lb-prev:hover,.lb-next:hover{background:rgba(200,151,58,.3)}
.lb-counter{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);font-size:.75rem;letter-spacing:.18em;color:rgba(255,255,255,.5);text-transform:uppercase;z-index:2001}

/* FLOATING BUTTONS */
.float-actions{position:fixed;bottom:2rem;left:2rem;z-index:990;display:flex;flex-direction:column;gap:.65rem}
.float-btn{width:48px;height:48px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;font-size:1.25rem;cursor:pointer;transition:all .3s;box-shadow:0 4px 18px rgba(0,0,0,.25);text-decoration:none;position:relative}
.float-btn::before{content:attr(data-tip);position:absolute;left:58px;background:rgba(13,40,24,.9);color:white;font-family:var(--fw);font-size:.72rem;font-weight:500;padding:.3rem .75rem;border-radius:3px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}
.float-btn:hover::before{opacity:1}
.float-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.3)}
.float-fb{background:#1877f2;color:white}
.float-call{background:var(--gold);color:var(--gd)}

/* BACK TO TOP */
.btt{position:fixed;bottom:2rem;right:2rem;z-index:990;width:42px;height:42px;background:var(--gold);color:var(--gd);border:none;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer;opacity:0;pointer-events:none;transition:all .35s;box-shadow:0 4px 20px rgba(200,151,58,.4)}
.btt.visible{opacity:1;pointer-events:all}
.btt:hover{background:var(--goldi);transform:translateY(-3px)}

/* FOOTER */
footer{background:#060f0a;padding:2.8rem 3.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}
.footer-brand{display:flex;align-items:center;gap:.7rem}
.footer-copy{font-size:.75rem;color:rgba(255,255,255,.32)}
.footer-links{display:flex;gap:1.8rem}
.footer-links a{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.32);transition:color .3s}
.footer-links a:hover{color:var(--goldi)}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes brendaIn{from{opacity:0;transform:translateX(55px) scale(.96)}to{opacity:1;transform:none}}

@keyframes dotBounce{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(6px);opacity:1}}
@keyframes leafSway{0%,100%{transform:rotate(-3deg) scale(1)}50%{transform:rotate(3deg) scale(1.03)}}
@keyframes scrollTestimonials{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes lbIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}

/* RESPONSIVE */
@media(max-width:1100px){
  nav,nav.scrolled{padding-left:2rem;padding-right:2rem}
  #about,#features,#activities,#rates,#gallery,#directions,#contact,#meet-brenda,#testimonials,#video-section,footer{padding-left:2rem;padding-right:2rem}
  .features-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .hero-brenda-wrap{width:clamp(220px,30vw,360px);right:2%}
  .hero-collage{grid-template-columns:1.1fr .9fr 1fr}
  .hcp-4,.hcp-7{display:none}
  .hcp-6{grid-column:2/4;grid-row:3}
  .hero-content{padding:0 2.5rem 4rem}
}
@media(max-width:768px){
  nav{padding:1rem 1.3rem}
  nav.scrolled{padding:.7rem 1.3rem}
  .nav-links{display:none}
  .hamburger{display:flex}
  #hero{align-items:flex-end;height:100svh;min-height:600px}
  .hero-collage{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;height:100%}
  .hcp-1{grid-column:1;grid-row:1/3}
  .hcp-2{grid-column:2;grid-row:1}
  .hcp-3{grid-column:2;grid-row:2}
  .hcp-4,.hcp-5,.hcp-6,.hcp-7{display:none}
  .hero-brenda-wrap{width:clamp(180px,46vw,260px);right:0%;bottom:0}
  .hero-content{padding:0 1.3rem 2rem;max-width:100%}
  .hero-title{font-size:clamp(2.4rem,9vw,3.8rem)}
  .hero-subtitle{font-size:.88rem;max-width:62%}
  .hero-actions{gap:.7rem}
  .btn-primary,.btn-outline{padding:.72rem 1.5rem;font-size:.72rem}
  .hero-scroll{left:1.3rem;bottom:1.5rem}
  #about{grid-template-columns:1fr;padding:4rem 1.3rem;gap:2.5rem}
  .about-images{height:300px}
  .about-badge{top:auto;bottom:-1.5rem;left:50%;transform:translateX(-50%);width:max-content}
  .about-brenda-card{width:90px;height:90px;top:-1rem;right:-1rem}
  .stat-row{gap:1.5rem}
  #meet-brenda{padding:4rem 1.3rem}
  .meet-brenda-inner{grid-template-columns:1fr;gap:3rem}
  .brenda-photo-outer{padding-bottom:100%}
  .brenda-socials{justify-content:space-around}
  #features{padding:4rem 1.3rem}
  .features-grid{grid-template-columns:1fr}
  #activities{padding:4rem 1.3rem}
  .activities-header{flex-direction:column;align-items:flex-start}
  .activities-grid{grid-template-columns:1fr}
  .activity-card.tall{grid-row:span 1;height:260px}
  .activity-card:not(.tall){height:220px}
  #rates{padding:4rem 1.3rem}
  .rates-grid{grid-template-columns:1fr}
  #gallery{padding:4rem 1.3rem}
  .gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:140px}
  .gallery-item:nth-child(1),.gallery-item.gi-tall{grid-column:span 2;grid-row:span 1}
  #testimonials{padding:4rem 1.3rem}
  .testimonial-card{width:280px}
  #video-section{padding:4rem 1.3rem}
  #directions{padding:4rem 1.3rem}
  .directions-inner{grid-template-columns:1fr;gap:2.5rem}
  #contact{padding:4rem 1.3rem}
  .contact-inner{grid-template-columns:1fr;gap:2.5rem}
  .form-row{grid-template-columns:1fr}
  footer{flex-direction:column;text-align:center;padding:2rem 1.3rem}
  .footer-links{justify-content:center}
}
@media(max-width:430px){
  .hero-brenda-wrap{width:clamp(140px,42vw,200px)}
  .hero-subtitle{max-width:55%}
  .hero-title{font-size:2.4rem}
}

/* ── HERO EXTRA FIXES ────────────────────────────────────────────────── */
/* Ensure collage always fills full hero height on all screens */
#hero { height: 100dvh; min-height: 600px; }
.hero-collage { height: 100%; position: absolute; inset: 0; }
.hero-collage-panel { height: 100%; }

/* Mobile: 2-col grid always fills full screen */
@media (max-width: 768px) {
  #hero { height: 100svh; height: 100dvh; }
  .hero-collage {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 2px;
  }
  .hcp-1 { grid-column: 1; grid-row: 1 / 3; }
  .hcp-2 { grid-column: 2; grid-row: 1; }
  .hcp-3 { grid-column: 2; grid-row: 2; }
  .hcp-4, .hcp-5, .hcp-6, .hcp-7 { display: none; }
}

/* ── GALLERY GRID REBALANCE ──────────────────────────────────────────── */
.gallery-item.gi-tall { grid-column: span 2; grid-row: span 2; }

/* ── MAP BOX LINK FIX ────────────────────────────────────────────────── */
.map-box a { cursor: pointer; }

/* ══════════════════════════════════════════════════════════
   RATES — Horizontal 2-column layout
══════════════════════════════════════════════════════════ */
.rates-grid-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.6rem;
  max-width: 1080px;
  margin: 0 auto;
}

/* Rate group card (day / overnight) */
.rate-group {
  background: white;
  border-radius: 8px;
  border: 1.5px solid var(--crmd);
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0,0,0,.06);
  transition: box-shadow .3s, transform .3s;
  position: relative;
}
.rate-group:hover {
  box-shadow: 0 16px 50px rgba(0,0,0,.11);
  transform: translateY(-3px);
}
.rate-group-dark {
  background: var(--gd);
  border-color: var(--gm);
}
.rate-badge-group {
  position: absolute; top: 0; right: 0;
  background: var(--gold); color: var(--gd);
  font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  padding: .3rem 1rem; border-radius: 0 8px 0 8px;
}

.rate-group-header {
  padding: 2rem 2rem 1.2rem;
  border-bottom: 1.5px solid rgba(255,255,255,.08);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .35rem;
}
.rate-group:not(.rate-group-dark) .rate-group-header {
  border-bottom-color: var(--crmd);
}
.rate-group-icon {
  font-size: 1.7rem;
  color: var(--gold);
  margin-bottom: .3rem;
}
.rate-group-title {
  font-family: var(--fd);
  font-size: 1.55rem;
  font-weight: 600;
  color: var(--gd);
  line-height: 1;
}
.rate-group-dark .rate-group-title { color: white; }
.rate-group-sub {
  font-size: .75rem;
  letter-spacing: .08em;
  color: var(--tm);
  text-transform: uppercase;
}
.rate-group-dark .rate-group-sub { color: rgba(255,255,255,.45); }

/* Individual horizontal rate cards inside group */
.rate-group-cards { padding: 1.2rem; display: flex; flex-direction: column; gap: .9rem; }

.rate-card-h {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  background: var(--cream);
  border-radius: 6px;
  padding: 1.2rem 1.4rem;
  border: 1.5px solid var(--crmd);
  transition: border-color .3s, background .3s;
}
.rate-card-h:hover { border-color: var(--gold); background: #fdf8f0; }
.rate-card-h.featured-h { border-color: rgba(200,151,58,.4); background: #fdf6ea; }
.rate-card-h.dark-card {
  background: rgba(255,255,255,.05);
  border-color: rgba(255,255,255,.1);
}
.rate-card-h.dark-card:hover { border-color: var(--gold); background: rgba(255,255,255,.08); }

.rate-card-h-left { flex: 1; }
.rate-card-h-desc {
  font-size: .8rem;
  color: var(--tm);
  line-height: 1.5;
  margin-top: .35rem;
  font-weight: 300;
}

.rate-card-h-right {
  text-align: right;
  flex-shrink: 0;
}
.rate-price-h {
  font-family: var(--fd);
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--gm);
  line-height: 1;
  display: block;
}
.rate-price-h sup { font-size: 1rem; vertical-align: super; }
.rate-price-h.gold { color: var(--goldi); }
.rate-per {
  font-size: .68rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--tm);
}

/* Chips */
.rate-chip {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  background: var(--gd);
  color: white;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: .25rem .75rem;
  border-radius: 20px;
}
.rate-chip span { font-weight: 400; color: rgba(255,255,255,.65); }
.rate-chip.kids { background: var(--gl); }
.rate-chip.light { background: rgba(255,255,255,.15); color: white; }
.rate-chip.kids-light { background: rgba(45,122,79,.5); color: white; }
.rate-chip.kids-light span, .rate-chip.light span { color: rgba(255,255,255,.65); }

/* Mobile responsive */
@media (max-width: 768px) {
  .rates-grid-2col { grid-template-columns: 1fr; }
  .rate-price-h { font-size: 2rem; }
  .rate-card-h { flex-wrap: wrap; }
  #announceBar{display:none!important;}
}
@media (max-width: 480px) {
  .rate-group-header { padding: 1.5rem 1.5rem 1rem; }
  .rate-group-cards { padding: 1rem; }
  .rate-card-h { padding: 1rem; }
}

/* Rates section — two-row layout spacing */
#rates .rates-grid { margin-top: 0; }
#rates .rates-grid-2col { margin-bottom: 1.6rem; }
#rates .rates-grid-2col + .rates-grid::before {
  content: '';
  display: block;
  grid-column: 1 / -1;
  height: 0;
}
/* Divider label between the two rows */
.rates-section-label {
  text-align: center;
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--tm);
  margin: .5rem 0 1.2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
.rates-section-label::before,
.rates-section-label::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--crmd);
}
