@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--green:#173d2e;--green2:#23523d;--gold:#d6a84f;--cream:#f7f5ef;--ink:#172019;--muted:#6b746d;--line:#e3e6e1;--white:#fff;--radius:28px;--shadow:0 20px 60px rgba(23,61,46,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(23,61,46,.97);backdrop-filter:blur(14px);color:#fff}.nav-wrap{height:76px;display:flex;align-items:center;justify-content:space-between;width:min(1220px,calc(100% - 32px));margin:auto}.brand{display:flex;align-items:center;gap:10px}.brand img{width:46px;height:46px;object-fit:contain;background:#fff;border-radius:50%;padding:4px}.brand span{display:flex;flex-direction:column}.brand strong{font-family:'Playfair Display',serif;font-size:17px;line-height:1.1}.brand small{font-size:9px;letter-spacing:.12em;text-transform:uppercase;opacity:.7}.nav{display:flex;align-items:center;gap:25px;font-size:13px}.nav a{opacity:.9}.nav a:hover{opacity:1}.nav-cta{background:var(--gold);color:#1d281f!important;padding:12px 19px;border-radius:999px;font-weight:700}.menu-toggle{display:none;background:none;border:0;color:white;font-size:25px}.hero{min-height:610px;position:relative;display:flex;align-items:flex-end;background:#183d2e}.hero-image{background-image:var(--hero);background-size:cover;background-position:center}.hero-video{overflow:hidden}.hero-bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.hero-video .hero-overlay{z-index:1}.hero-video .hero-inner{z-index:2}.hero-video::after{content:'';position:absolute;inset:0;box-shadow:inset 0 -80px 100px rgba(9,28,20,.16);pointer-events:none;z-index:1}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,20,.82),rgba(9,28,20,.2) 70%,rgba(9,28,20,.35))}.hero-inner{position:relative;color:#fff;padding:90px 0 90px;max-width:1180px}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;color:#a7752d;margin-bottom:14px}.eyebrow.light{color:#e4bd70}.hero h1{font-family:'Playfair Display',serif;font-size:clamp(44px,7vw,82px);line-height:1.02;max-width:850px;margin:0 0 20px;letter-spacing:-.03em}.hero p{font-size:18px;max-width:680px;color:rgba(255,255,255,.88);margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 22px;border-radius:999px;border:1px solid transparent;font-weight:700;transition:.25s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#182019}.btn-light{background:#fff;color:var(--green)}.btn-dark{background:var(--green);color:#fff}.full{width:100%}.trust-strip{background:var(--green);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px}.trust-grid>div{padding:24px 18px;border-right:1px solid rgba(255,255,255,.12)}.trust-grid strong,.trust-grid span{display:block}.trust-grid strong{font-size:14px}.trust-grid span{font-size:12px;opacity:.7;margin-top:4px}.section{padding:105px 0}.section.soft{background:var(--cream)}.section.dark{background:var(--green);color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.section h2,.cta-box h2{font-family:'Playfair Display',serif;font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.02em;margin:0 0 20px}.section p{color:var(--muted)}.dark p{color:rgba(255,255,255,.72)}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.pill-row span,.tag{border:1px solid var(--line);padding:8px 12px;border-radius:999px;font-size:11px;font-weight:700;color:var(--muted);background:#fff}.dark .pill-row span{border-color:rgba(255,255,255,.16);background:transparent;color:#fff}.text-link{font-weight:700;color:var(--green);display:inline-block;margin-top:12px}.dark .text-link{color:#e4bd70}.image-stack{position:relative;min-height:500px}.rounded-img{border-radius:var(--radius);width:100%;height:100%;object-fit:cover;box-shadow:var(--shadow)}.rounded-img.large{height:500px}.rounded-img.small{position:absolute;width:45%;height:240px;right:-20px;bottom:-30px;border:8px solid #fff}.cards{display:grid;gap:18px}.cards.four{grid-template-columns:repeat(4,1fr)}.room-card{background:#fff;border-radius:26px;overflow:hidden;border:1px solid var(--line);box-shadow:0 12px 40px rgba(0,0,0,.04)}.room-card img{width:100%;height:260px;object-fit:cover}.room-card>div{padding:23px}.room-card h3{font-family:'Playfair Display',serif;font-size:27px;margin:4px 0 8px}.room-card p{font-size:14px;margin:0 0 12px}.room-card a{font-weight:700;font-size:13px;color:var(--green)}.tag{border:0;background:#f2efe7;color:#8c6529;padding:6px 9px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:35px}.section-head p{max-width:700px;margin:0}.experience-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.feature-media{position:relative}.feature-media img{width:100%;height:520px;object-fit:cover;border-radius:30px}.mini-badge{position:absolute;left:-18px;bottom:30px;background:var(--gold);color:#1b251e;width:92px;height:92px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:20px;line-height:1}.mini-badge small{font-size:8px;display:block;letter-spacing:.16em}.mosaic{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-auto-rows:240px;gap:16px}.mosaic-item{position:relative;overflow:hidden;border-radius:26px;min-height:240px}.mosaic-item.tall{grid-row:span 2}.mosaic-item.wide{grid-column:span 2}.mosaic-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.mosaic-item:hover img{transform:scale(1.04)}.mosaic-item:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.mosaic-item span{position:absolute;z-index:2;bottom:18px;left:20px;color:#fff;font-family:'Playfair Display',serif;font-size:22px}.near-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.near-grid.big{grid-template-columns:repeat(3,1fr)}.near-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;display:block}.near-card img{width:100%;height:190px;object-fit:cover}.near-card>div{padding:18px}.near-card span{font-size:10px;letter-spacing:.14em;font-weight:800;color:#a7752d}.near-card h3{font-family:'Playfair Display',serif;font-size:22px;line-height:1.15;margin:7px 0}.near-card p{font-size:13px;margin:0}.cta-section{padding-top:30px}.cta-box{border-radius:32px;background:var(--green);color:#fff;padding:55px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-box p{max-width:620px}.room-list{display:flex;flex-direction:column;gap:100px}.room-detail{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center}.room-detail.reverse{grid-template-columns:.75fr 1.25fr}.room-detail.reverse .room-gallery{order:2}.room-gallery{display:grid;grid-template-columns:2fr 1fr;gap:12px}.room-gallery img{width:100%;height:260px;object-fit:cover;border-radius:22px}.room-gallery img:first-child{grid-row:span 2;height:532px}.room-copy h2{font-size:52px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.feature-card{border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#fff}.feature-card img{width:100%;height:300px;object-fit:cover}.feature-card>div{padding:26px}.feature-card h2{font-size:34px;margin-bottom:10px}.video-wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:45px;align-items:center}.video-wrap video{width:100%;border-radius:28px;background:#000}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photo-grid img{width:100%;height:300px;object-fit:cover;border-radius:22px}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.filter-btn{border:1px solid var(--line);background:#fff;padding:10px 16px;border-radius:999px;font-weight:700;cursor:pointer;color:var(--muted)}.filter-btn.active,.filter-btn:hover{background:var(--green);color:#fff;border-color:var(--green)}.gallery-grid{columns:3 280px;column-gap:16px}.gallery-item{break-inside:avoid;margin:0 0 16px;position:relative;cursor:pointer}.gallery-item img{width:100%;border-radius:22px}.gallery-item figcaption{font-size:12px;font-weight:700;padding:8px 4px;color:var(--muted)}.gallery-item.hide{display:none}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px}.contact-card,.inquiry-form{border-radius:30px;padding:40px;background:var(--cream);border:1px solid var(--line)}.contact-card{background:var(--green);color:#fff}.contact-card p{color:rgba(255,255,255,.75)}.contact-list{display:flex;flex-direction:column;gap:12px;margin-top:25px}.contact-list a{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact-list strong,.contact-list span{display:block}.contact-list span{font-size:14px;opacity:.75}.social-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.social-row a{border:1px solid rgba(255,255,255,.2);padding:9px 12px;border-radius:999px;font-size:12px}.form-head h2{font-size:42px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin:0 0 14px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #dfe3de;background:#fff;padding:13px 14px;border-radius:14px;font:inherit;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(35,82,61,.08)}.form-note{font-size:11px!important}.map-card{display:grid;grid-template-columns:.7fr 1.3fr;gap:25px;align-items:stretch}.map-card>div{padding:40px;border-radius:30px;background:#fff;border:1px solid var(--line)}.map-card iframe{width:100%;min-height:360px;border:0;border-radius:30px}.footer{background:#102d22;color:#fff;padding:70px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1.1fr .6fr;gap:40px}.footer-brand{margin-bottom:18px}.footer a{display:block;margin:7px 0;color:rgba(255,255,255,.75);font-size:13px}.footer h4{margin:0 0 12px;color:#e3b85d}.footer p{color:rgba(255,255,255,.62);font-size:13px}.footer-bottom{width:min(1180px,calc(100% - 40px));margin:45px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;font-size:11px;color:rgba(255,255,255,.5)}.float-wa{position:fixed;z-index:60;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25d366;color:#fff;font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,.2)}
@media(max-width:980px){.nav{gap:13px;font-size:11px}.cards.four{grid-template-columns:repeat(2,1fr)}.near-grid,.near-grid.big{grid-template-columns:repeat(2,1fr)}.split,.room-detail,.room-detail.reverse,.experience-feature,.video-wrap,.contact-grid,.map-card{grid-template-columns:1fr}.room-detail.reverse .room-gallery{order:0}.room-copy{order:1}.room-gallery{order:0}.hero{min-height:570px}.footer-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:68px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--green);padding:15px 20px 25px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:10px}.hero{min-height:560px}.hero-inner{padding:70px 0 60px}.hero h1{font-size:48px}.hero p{font-size:16px}.section{padding:70px 0}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{padding:17px 12px}.split{gap:40px}.image-stack{min-height:360px}.rounded-img.large{height:360px}.rounded-img.small{height:170px;width:50%;right:-8px}.cards.four,.feature-grid,.near-grid,.near-grid.big,.photo-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.mosaic-item.tall{grid-row:span 2}.mosaic-item.wide{grid-column:span 2}.mosaic-item span{font-size:18px}.cta-box{padding:30px;flex-direction:column;align-items:flex-start}.room-list{gap:70px}.room-gallery{grid-template-columns:1fr 1fr}.room-gallery img,.room-gallery img:first-child{height:210px}.room-gallery img:first-child{grid-row:span 1}.room-copy h2{font-size:42px}.feature-card img{height:250px}.video-wrap video{margin-top:15px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:7px}.form-grid{grid-template-columns:1fr}.contact-card,.inquiry-form{padding:27px}.map-card iframe{min-height:300px}.float-wa{right:14px;bottom:14px}}

/* =========================================================
   PATANG INTERACTION UPDATE — LION PAW CURSOR + HEADER HOVER
   Inspired by premium nature-resort interaction patterns.
   ========================================================= */

/* Smooth colour changes in the sticky navigation */
.site-header,
.site-header .brand,
.site-header .brand img,
.site-header .brand strong,
.site-header .brand small,
.site-header .nav a,
.site-header .nav-cta,
.site-header .menu-toggle{
  transition:background-color .38s ease,color .38s ease,border-color .38s ease,opacity .38s ease,transform .38s ease,box-shadow .38s ease;
}

@media (hover:hover) and (pointer:fine){
  /* The whole header changes colour when the mouse enters it. */
  .site-header:hover{
    background:rgba(214,168,79,.98);
    color:var(--green);
    box-shadow:0 12px 36px rgba(16,45,34,.14);
  }

  .site-header:hover .brand strong,
  .site-header:hover .brand small,
  .site-header:hover .nav a:not(.nav-cta){
    color:var(--green);
  }

  .site-header:hover .brand small{opacity:.82}

  .site-header:hover .brand img{
    transform:rotate(-3deg) scale(1.04);
    box-shadow:0 8px 22px rgba(23,61,46,.16);
  }

  .site-header:hover .nav-cta{
    background:var(--green);
    color:#fff!important;
    box-shadow:0 9px 24px rgba(23,61,46,.18);
  }

  .site-header:hover .menu-toggle{color:var(--green)}

  /* Individual menu item hover, visible after the header colour shift. */
  .nav a:not(.nav-cta){
    position:relative;
    padding:9px 3px;
  }

  .nav a:not(.nav-cta)::after{
    content:'';
    position:absolute;
    left:50%;
    right:50%;
    bottom:2px;
    height:2px;
    border-radius:999px;
    background:currentColor;
    opacity:.72;
    transition:left .25s ease,right .25s ease;
  }

  .nav a:not(.nav-cta):hover::after{
    left:3px;
    right:3px;
  }

  .nav a:not(.nav-cta):hover{opacity:1;transform:translateY(-1px)}
  .site-header:not(:hover) .nav a:not(.nav-cta):hover{color:#f0ca78}

  /* Hide the native desktop mouse only when the custom paw is active. */
  body.paw-cursor-enabled,
  body.paw-cursor-enabled a,
  body.paw-cursor-enabled button,
  body.paw-cursor-enabled .btn,
  body.paw-cursor-enabled .gallery-item,
  body.paw-cursor-enabled .filter-btn,
  body.paw-cursor-enabled input,
  body.paw-cursor-enabled select,
  body.paw-cursor-enabled textarea,
  body.paw-cursor-enabled label{
    cursor:none!important;
  }

  .paw-cursor{
    position:fixed;
    left:0;
    top:0;
    width:40px;
    height:40px;
    z-index:99999;
    pointer-events:none;
    display:grid;
    place-items:center;
    opacity:0;
    color:#173d2e;
    will-change:transform,width,height,opacity;
    transition:width .18s ease,height .18s ease,opacity .18s ease,color .22s ease,filter .22s ease;
  }

  .paw-cursor::before{
    content:'';
    position:absolute;
    inset:0;
    border-radius:50%;
    background:rgba(214,168,79,.96);
    border:1px solid rgba(255,255,255,.72);
    box-shadow:0 8px 26px rgba(16,45,34,.22);
    transform:scale(.9);
    transition:transform .18s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease;
  }

  .paw-cursor svg{
    position:relative;
    z-index:1;
    width:23px;
    height:23px;
    overflow:visible;
    filter:drop-shadow(0 1px 0 rgba(255,255,255,.18));
  }

  .paw-cursor.is-visible{opacity:1}

  .paw-cursor.is-hovering{
    width:52px;
    height:52px;
  }

  .paw-cursor.is-hovering::before{
    transform:scale(1);
    background:rgba(247,245,239,.98);
    border-color:rgba(23,61,46,.16);
    box-shadow:0 10px 32px rgba(16,45,34,.2);
  }

  .paw-cursor.is-clicking::before{transform:scale(.78)}
  .paw-cursor.is-clicking svg{transform:scale(.9)}

  /* On the gold header the paw flips to the resort green/cream palette. */
  body.header-paw-active .paw-cursor{color:#d6a84f}
  body.header-paw-active .paw-cursor::before{
    background:rgba(23,61,46,.98);
    border-color:rgba(255,255,255,.22);
    box-shadow:0 10px 30px rgba(16,45,34,.28);
  }
}

/* Respect reduced-motion preferences. */
@media (prefers-reduced-motion:reduce){
  .site-header,
  .site-header *,
  .paw-cursor,
  .paw-cursor::before{transition:none!important}
}

