:root{--forest:#071b11;--forest2:#102c1d;--green:#496f3a;--lime:#c7e56e;--cream:#f4efe4;--sand:#e8dfce;--ink:#102117;--muted:#667269;--white:#fff;--line:rgba(16,33,23,.13);--radius:28px;--shadow:0 30px 80px rgba(5,25,14,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}body.menu-open{overflow:hidden}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1240px,calc(100% - 40px));margin:auto}.page-progress{position:fixed;z-index:2000;top:0;left:0;width:100%;height:3px}.page-progress span{display:block;width:0;height:100%;background:var(--lime)}.cursor-glow{position:fixed;z-index:5;width:380px;height:380px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(199,229,110,.14),transparent 66%);transform:translate(-50%,-50%);mix-blend-mode:screen}.site-header{position:fixed;z-index:1000;top:18px;left:50%;display:flex;width:min(1320px,calc(100% - 36px));height:72px;padding:0 14px 0 20px;align-items:center;gap:30px;border:1px solid rgba(255,255,255,.15);border-radius:22px;background:rgba(5,22,13,.68);color:#fff;backdrop-filter:blur(18px);transform:translateX(-50%);transition:.35s}.site-header.scrolled{top:8px;background:rgba(5,22,13,.91);box-shadow:0 15px 50px rgba(0,0,0,.2)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:var(--lime);color:var(--forest);font-family:"Playfair Display",serif;font-size:25px;font-weight:700}.brand b,.brand small{display:block}.brand b{font-family:"Playfair Display",serif;font-size:21px;line-height:1}.brand small{margin-top:5px;color:rgba(255,255,255,.58);font-size:9px;letter-spacing:.17em;text-transform:uppercase}.main-nav{display:flex;margin-left:auto;gap:28px}.main-nav a{position:relative;font-size:12px;font-weight:700}.main-nav a:after{content:"";position:absolute;bottom:-8px;left:0;width:0;height:1px;background:var(--lime);transition:.3s}.main-nav a:hover:after{width:100%}.header-cta{display:flex;height:46px;padding:0 18px;align-items:center;gap:10px;border-radius:14px;background:#fff;color:var(--forest);font-size:12px;font-weight:800}.header-cta span{color:var(--green)}.menu-toggle{display:none;margin-left:auto;border:0;background:none}.hero-scroll{height:430vh;background:var(--forest)}.hero-sticky{position:sticky;top:0;height:100vh;overflow:hidden}.hero-sticky video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,14,8,.9) 0%,rgba(3,18,10,.5) 45%,rgba(3,18,10,.16) 80%),linear-gradient(0deg,rgba(3,18,10,.75),transparent 50%)}.hero-grain{position:absolute;inset:0;opacity:.14;pointer-events:none;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E")}.hero-content{position:absolute;z-index:3;top:50%;left:max(6vw,32px);width:min(780px,85vw);color:#fff;transform:translateY(-44%)}.eyebrow{display:block;margin-bottom:20px;color:var(--lime);font-size:11px;font-weight:800;letter-spacing:.25em;text-transform:uppercase}.eyebrow.dark{color:#5e763f}.hero-content h1,.section h2,.pool-content h2,.cinematic h2,.booking h2,.location h2{margin:0;font-family:"Playfair Display",serif;letter-spacing:-.045em}.hero-content h1{font-size:clamp(64px,9vw,142px);font-weight:600;line-height:.82}.hero-content h1 em{color:var(--lime);font-weight:600}.hero-content p{max-width:650px;margin:28px 0 34px;color:rgba(255,255,255,.8);font-size:clamp(16px,1.4vw,21px);line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;min-height:56px;padding:0 26px;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.05em;transition:.3s}.btn-primary{background:var(--lime);color:var(--forest)}.btn-primary:hover{box-shadow:0 18px 45px rgba(199,229,110,.24);transform:translateY(-4px)}.btn-glass{border-color:rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.05);backdrop-filter:blur(10px)}.hero-side-text{position:absolute;z-index:3;right:30px;top:50%;color:rgba(255,255,255,.62);font-size:10px;letter-spacing:.24em;text-transform:uppercase;transform:rotate(90deg) translateY(-50%)}.scroll-hint{position:absolute;z-index:3;bottom:32px;left:50%;display:flex;align-items:center;gap:12px;color:#fff;font-size:9px;letter-spacing:.17em;text-transform:uppercase;transform:translateX(-50%)}.scroll-hint i{position:relative;width:1px;height:48px;background:rgba(255,255,255,.24)}.scroll-hint i:after{content:"";position:absolute;top:0;left:0;width:1px;height:18px;background:var(--lime);animation:scrollLine 1.7s infinite}.hero-orbit{position:absolute;z-index:2;border:1px solid rgba(255,255,255,.11);border-radius:50%;animation:orbit 22s linear infinite}.orbit-one{right:-20vw;bottom:-38vw;width:75vw;height:75vw}.orbit-two{right:-6vw;bottom:-22vw;width:48vw;height:48vw;animation-direction:reverse}.marquee{overflow:hidden;padding:20px 0;background:var(--lime);color:var(--forest)}.marquee-track{display:flex;width:max-content;align-items:center;gap:28px;animation:marquee 28s linear infinite}.marquee span{font-family:"Playfair Display",serif;font-size:25px}.marquee i{font-style:normal}.section{position:relative;padding:135px 0}.about{overflow:hidden}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:100px}.section h2,.pool-content h2,.booking h2,.location h2{font-size:clamp(44px,5vw,78px);line-height:1.02}.section-copy .lead{font-size:19px;line-height:1.75}.section-copy p{color:var(--muted);line-height:1.75}.text-link{display:inline-flex;margin-top:22px;gap:12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.image-stage{position:relative;min-height:650px;perspective:1200px}.image-card{position:absolute;margin:0;overflow:hidden;border-radius:32px;box-shadow:var(--shadow)}.image-card img{width:100%;height:100%;object-fit:cover}.image-main{inset:0 80px 80px 0}.image-float{right:0;bottom:0;width:46%;height:45%;border:10px solid var(--cream);animation:float 5s ease-in-out infinite}.image-card figcaption{position:absolute;left:20px;bottom:20px;padding:11px 16px;border-radius:999px;background:rgba(255,255,255,.84);font-size:10px;font-weight:800;backdrop-filter:blur(12px)}.round-badge{position:absolute;z-index:4;top:36px;right:12px;display:grid;width:130px;height:130px;place-items:center;border-radius:50%;background:var(--forest);color:#fff}.round-badge span{text-align:center;font-family:"Playfair Display",serif;font-size:15px}.round-badge svg{position:absolute;inset:5px;width:120px;height:120px;animation:orbit 14s linear infinite}.round-badge text{fill:var(--lime);font-size:8px;letter-spacing:2px}.stats{display:grid;margin-top:100px;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats article{padding:36px;border-right:1px solid var(--line)}.stats article:last-child{border-right:0}.stats strong{display:block;font-family:"Playfair Display",serif;font-size:48px}.stats span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.ambient{position:absolute;border-radius:50%;filter:blur(5px)}.blob-a{top:60px;left:-190px;width:380px;height:380px;background:rgba(199,229,110,.22)}.blob-b{right:-120px;bottom:0;width:250px;height:250px;background:rgba(222,133,63,.12)}.stays{background:var(--sand)}.section-heading{display:flex;margin-bottom:60px;align-items:end;justify-content:space-between;gap:60px}.section-heading h2{margin-top:0}.section-heading p{max-width:440px;color:var(--muted);line-height:1.7}.section-heading.light{color:#fff}.section-heading.light p{color:#afbeb3}.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.stay-card{display:grid;grid-template-columns:.9fr 1.1fr;min-height:390px;overflow:hidden;border-radius:28px;background:rgba(255,255,255,.76);box-shadow:0 12px 50px rgba(16,33,23,.06);transform-style:preserve-3d}.stay-photo{position:relative;min-height:390px;overflow:hidden;background:#173524}.stay-photo img{width:100%;height:100%;object-fit:cover;transition:.7s}.stay-card:hover .stay-photo img{transform:scale(1.07)}.stay-photo>span{position:absolute;top:18px;left:18px;display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:rgba(255,255,255,.86);font-size:10px;font-weight:800}.stay-info{padding:38px;align-self:center;transform:translateZ(20px)}.stay-info small{color:#708076;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.stay-info h3{margin:16px 0;font-family:"Playfair Display",serif;font-size:32px}.stay-info p{color:var(--muted);line-height:1.65}.stay-info a{display:inline-flex;margin-top:24px;gap:10px;color:#456224;font-size:11px;font-weight:800}.abstract-photo,.tent-photo{display:grid;place-items:center;background:radial-gradient(circle at 30% 30%,#527845,#112b1d 60%)}.abstract-lines{width:170px;height:170px;border:1px solid rgba(199,229,110,.55);border-radius:50%;box-shadow:0 0 0 25px rgba(199,229,110,.09),0 0 0 50px rgba(199,229,110,.05);animation:orbit 10s linear infinite}.tent-shape{width:0;height:0;border-left:90px solid transparent;border-right:90px solid transparent;border-bottom:160px solid var(--lime);filter:drop-shadow(0 24px 30px rgba(0,0,0,.25))}.pool-panel{position:relative;display:flex;min-height:900px;padding:120px 0;align-items:end;overflow:hidden;color:#fff}.pool-bg,.pool-shade{position:absolute;inset:-8% 0}.pool-bg{background:url("https://dandeliparamparacottages.com/wp-content/uploads/2025/12/banners-23-2.webp") center/cover}.pool-shade{background:linear-gradient(90deg,rgba(4,20,11,.89),rgba(4,20,11,.16)),linear-gradient(0deg,rgba(4,20,11,.72),transparent 55%)}.pool-content{position:relative;z-index:2}.pool-content p{max-width:600px;color:rgba(255,255,255,.76);font-size:18px;line-height:1.7}.floating-label{position:absolute;z-index:3;right:4vw;bottom:55px;color:rgba(255,255,255,.7);font-family:"Playfair Display",serif;font-size:12px;letter-spacing:.22em;text-transform:uppercase;writing-mode:vertical-rl}.experiences{background:var(--forest);color:#fff}.experience-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.13)}.experience-item{position:relative;min-height:290px;padding:34px;border-right:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13);transition:.4s}.experience-item:hover{z-index:2;background:var(--lime);color:var(--forest);transform:translateY(-9px)}.experience-item>span{font-size:10px;color:var(--lime)}.experience-item:hover>span{color:var(--forest)}.exp-icon{position:absolute;top:30px;right:30px;font-family:"Playfair Display",serif;font-size:40px;color:rgba(255,255,255,.25)}.experience-item:hover .exp-icon{color:rgba(7,27,17,.28)}.experience-item h3{margin:75px 0 12px;font-family:"Playfair Display",serif;font-size:34px}.experience-item p{max-width:300px;color:#aebbb1;line-height:1.6}.experience-item:hover p{color:#294132}.experience-item b{font-size:9px;letter-spacing:.13em;text-transform:uppercase}.cinematic{position:relative;height:100vh;overflow:hidden;color:#fff}.cinematic video{width:100%;height:100%;object-fit:cover}.cinematic-overlay{position:absolute;inset:0;background:rgba(4,20,11,.52)}.cinematic-copy{position:absolute;z-index:2;top:50%;left:50%;width:min(920px,88%);text-align:center;transform:translate(-50%,-50%)}.cinematic h2{font-size:clamp(60px,9vw,132px)}.cinematic p{max-width:600px;margin:24px auto;color:rgba(255,255,255,.78);font-size:18px;line-height:1.7}.amenities-list{background:#f7f2e8}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenity-grid article{display:flex;min-height:105px;padding:25px;align-items:center;gap:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.3s}.amenity-grid article:hover{background:var(--forest);color:#fff;transform:translateY(-4px)}.amenity-grid i{color:#718269;font-size:10px;font-style:normal}.amenity-grid span{font-family:"Playfair Display",serif;font-size:20px}.food-story{overflow:hidden}.food-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:100px}.food-visual{position:relative}.food-visual figure{height:690px;margin:0;overflow:hidden;border-radius:34px;box-shadow:var(--shadow)}.food-visual img{width:100%;height:100%;object-fit:cover}.food-word{position:absolute;right:-220px;bottom:40px;color:rgba(16,33,23,.05);font-size:120px;font-weight:800;letter-spacing:.06em;transform:rotate(-90deg);transform-origin:left bottom}.check-list{padding:0;list-style:none}.check-list li{padding:18px 0;border-bottom:1px solid var(--line);font-weight:700}.check-list li:before{content:"✓";margin-right:12px;color:#607e35}.gallery{padding-bottom:30px}.gallery-wall{display:grid;width:min(1500px,calc(100% - 30px));margin:auto;grid-template-columns:1.2fr .8fr 1fr;grid-template-rows:360px 300px;gap:14px}.gallery-item{position:relative;padding:0;overflow:hidden;border:0;border-radius:25px;background:#ddd;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.65s}.gallery-item:after{content:attr(data-caption);position:absolute;left:18px;bottom:18px;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.82);font-size:10px;font-weight:800;opacity:0;transform:translateY(10px);transition:.35s;backdrop-filter:blur(10px)}.gallery-item:hover img{transform:scale(1.06)}.gallery-item:hover:after{opacity:1;transform:none}.item-a{grid-row:span 2}.item-d{grid-column:span 2}.testimonials{background:var(--lime)}.quote-stage{position:relative;max-width:1000px;margin:40px auto 0}.quote-mark{font-family:"Playfair Display",serif;font-size:130px;line-height:.6;opacity:.3}.quote-slider article{display:none}.quote-slider article.active{display:block;animation:quoteIn .6s ease}.quote-slider blockquote{margin:20px 0;font-family:"Playfair Display",serif;font-size:clamp(36px,5vw,65px);line-height:1.15}.quote-slider p{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.quote-controls{display:flex;margin-top:45px;align-items:center;gap:18px}.quote-controls button{display:grid;width:45px;height:45px;place-items:center;border:1px solid rgba(7,27,17,.25);border-radius:50%;background:transparent;cursor:pointer}.quote-controls span{font-size:10px;font-weight:800}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:100px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;padding:26px 0;align-items:center;justify-content:space-between;gap:30px;font-family:"Playfair Display",serif;font-size:22px;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{transition:.3s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:700px;margin:0 0 25px;color:var(--muted);line-height:1.7}.booking{position:relative;padding:140px 0;overflow:hidden;background:var(--forest);color:#fff}.booking-grid{position:relative;z-index:2;display:grid;grid-template-columns:.8fr 1.2fr;align-items:start;gap:90px}.booking-copy p{color:#b7c4ba;font-size:18px;line-height:1.7}.direct-contact{display:grid;margin-top:35px;gap:12px;color:var(--lime);font-weight:700}.booking-form{display:grid;padding:34px;grid-template-columns:1fr 1fr;gap:16px;border:1px solid rgba(255,255,255,.12);border-radius:30px;background:rgba(255,255,255,.07);backdrop-filter:blur(12px)}.field label{display:block;margin-bottom:8px;color:#cbd5ce;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;padding:0 15px;border:1px solid rgba(255,255,255,.13);border-radius:12px;outline:0;background:rgba(255,255,255,.08);color:#fff}.field input,.field select{height:54px}.field textarea{padding-top:14px;resize:vertical}.field select option{color:#111}.full{grid-column:1/-1}.form-note{margin:0;color:#8ea095;font-size:10px;line-height:1.5}.booking-art{position:absolute;right:-180px;bottom:-180px;width:700px;height:700px;color:rgba(199,229,110,.1)}.booking-art>span{position:absolute;top:50%;left:50%;font-family:"Playfair Display",serif;font-size:75px;line-height:.9;transform:translate(-50%,-50%)}.booking-ring{position:absolute;border:1px solid rgba(199,229,110,.12);border-radius:50%;animation:orbit 25s linear infinite}.ring-a{inset:0}.ring-b{inset:100px;animation-direction:reverse}.location{position:relative;padding:115px 0;background:#09160e;color:#fff;overflow:hidden}.location-map{position:absolute;inset:0;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:50px 50px;transform:perspective(600px) rotateX(58deg) scale(1.5)}.location-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:80px}.location-card{padding:35px;border:1px solid rgba(255,255,255,.14);border-radius:25px;background:rgba(255,255,255,.05);backdrop-filter:blur(10px)}.location-card small{color:var(--lime);font-size:9px;letter-spacing:.15em}.location-card p{font-family:"Playfair Display",serif;font-size:24px;line-height:1.45}.location-card div{display:flex;flex-wrap:wrap;gap:20px}.location-card a{font-size:11px;font-weight:800}.footer{padding:65px 0 25px;background:#040d08;color:#fff}.footer-top{display:grid;grid-template-columns:.8fr 1.2fr 1fr;align-items:center;gap:60px}.footer-top p{color:#94a198;line-height:1.7}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:11px}.footer-bottom{display:flex;margin-top:55px;padding-top:22px;justify-content:space-between;border-top:1px solid rgba(255,255,255,.09);color:#7e8b82;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.floating-whatsapp{position:fixed;z-index:900;right:20px;bottom:20px;display:flex;padding:7px 7px 7px 17px;align-items:center;gap:14px;border-radius:999px;background:#25d366;color:#063719;font-size:11px;font-weight:800;box-shadow:0 15px 40px rgba(0,0,0,.25)}.floating-whatsapp b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#fff}.floating-call{position:fixed;z-index:900;right:20px;bottom:77px;display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#fff;box-shadow:0 15px 40px rgba(0,0,0,.18)}.lightbox{position:fixed;z-index:3000;inset:0;display:none;padding:50px;align-items:center;justify-content:center;background:rgba(1,8,4,.92);color:#fff}.lightbox.open{display:flex}.lightbox img{max-width:min(1100px,90vw);max-height:78vh;border-radius:20px}.lightbox p{position:absolute;bottom:22px}.lightbox-close{position:absolute;top:20px;right:25px;border:0;background:none;color:#fff;font-size:42px;cursor:pointer}.reveal{opacity:0;transform:translateY(48px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.tilt-card{will-change:transform}.magnetic{will-change:transform}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-14px) rotate(1deg)}}@keyframes scrollLine{0%{transform:translateY(0);opacity:0}20%{opacity:1}100%{transform:translateY(30px);opacity:0}}@keyframes quoteIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.main-nav{display:none}.menu-toggle{display:block}.menu-toggle span{display:block;width:23px;height:2px;margin:5px;background:#fff}.site-header.open .main-nav{position:fixed;top:84px;left:18px;display:flex;width:calc(100vw - 36px);height:calc(100vh - 102px);padding:40px;flex-direction:column;align-items:center;justify-content:center;gap:25px;border-radius:22px;background:#0a2115}.site-header.open .main-nav a{font-family:"Playfair Display",serif;font-size:30px}.about-grid,.food-grid,.booking-grid,.faq-grid{grid-template-columns:1fr;gap:60px}.stay-grid{grid-template-columns:1fr}.image-stage{min-height:600px}.experience-list,.amenity-grid{grid-template-columns:1fr 1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-top>p{grid-column:1/-1}.gallery-wall{grid-template-columns:1fr 1fr;grid-template-rows:300px 300px 300px}.item-a{grid-row:span 2}.item-d{grid-column:auto}.location-grid{grid-template-columns:1fr}.cursor-glow{display:none}}
@media(max-width:680px){.container{width:min(100% - 26px,1240px)}.site-header{top:9px;width:calc(100% - 18px);height:62px;padding-left:12px;border-radius:17px}.brand-mark{width:36px;height:36px}.brand b{font-size:18px}.header-cta{display:none}.hero-scroll{height:360vh}.hero-content{left:18px;width:calc(100% - 36px)}.hero-content h1{font-size:clamp(54px,17vw,80px)}.hero-content p{font-size:15px}.hero-side-text{display:none}.section{padding:85px 0}.section h2,.pool-content h2,.booking h2,.location h2{font-size:42px}.section-heading{display:block;margin-bottom:40px}.section-heading p{margin-top:20px}.about-grid{gap:42px}.image-stage{min-height:460px}.image-main{inset:0 30px 65px 0}.image-float{width:56%;height:43%;border-width:7px}.round-badge{top:15px;width:95px;height:95px}.round-badge svg{width:86px;height:86px}.round-badge span{font-size:12px}.stats{grid-template-columns:1fr 1fr;margin-top:60px}.stats article:nth-child(2){border-right:0}.stats article{padding:23px}.stats strong{font-size:35px}.stay-card{display:block}.stay-photo{min-height:270px}.stay-info{padding:28px}.pool-panel{min-height:730px;padding:85px 0}.experience-list,.amenity-grid{grid-template-columns:1fr}.experience-item{min-height:240px}.cinematic{height:75vh}.amenity-grid article{min-height:85px}.food-visual figure{height:480px}.food-word{display:none}.gallery-wall{width:calc(100% - 20px);grid-template-columns:1fr;grid-template-rows:repeat(5,260px)}.item-a{grid-row:auto}.quote-slider blockquote{font-size:35px}.booking-form{grid-template-columns:1fr;padding:20px}.full{grid-column:auto}.location{padding:85px 0}.footer-top{grid-template-columns:1fr}.footer-bottom{display:grid;gap:10px}.floating-whatsapp span{display:none}.floating-whatsapp{padding:7px}.floating-call{right:12px}.floating-whatsapp{right:12px}.marquee span{font-size:20px}.lightbox{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.marquee-track,.round-badge svg,.booking-ring,.hero-orbit,.image-float{animation:none!important}}

/* Enhanced cinematic 3D build */
.hero-photo{position:absolute;inset:0;background:url('../images/dormitory-hero.png') center/cover no-repeat;transform:scale(1.035);z-index:0;will-change:transform,opacity}.hero-sticky video{z-index:1;opacity:0;filter:saturate(1.08) contrast(1.04)}.hero-overlay,.hero-grain,.hero-content,.hero-side-text,.scroll-hint,.hero-orbit{z-index:3}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,14,8,.88),rgba(3,18,10,.35) 58%,rgba(3,18,10,.15)),linear-gradient(0deg,rgba(3,18,10,.68),transparent 55%)}
.hero-3d-forest{position:absolute;inset:0;z-index:4;pointer-events:none;perspective:900px;overflow:hidden}.leaf{position:absolute;width:56px;height:24px;border-radius:100% 0 100% 0;background:linear-gradient(135deg,#9fca58,#315c2e);filter:drop-shadow(0 12px 10px rgba(0,0,0,.25));opacity:.7;animation:leafFloat 8s ease-in-out infinite}.l1{left:8%;top:20%;transform:rotate(20deg)}.l2{right:10%;top:27%;animation-delay:-2s;transform:scale(.7) rotate(-24deg)}.l3{right:22%;bottom:18%;animation-delay:-4s}.l4{left:43%;top:12%;animation-delay:-1s;transform:scale(.55)}.l5{left:17%;bottom:13%;animation-delay:-6s;transform:scale(.8)}.mist{position:absolute;width:55vw;height:25vh;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.18),transparent 68%);filter:blur(24px);opacity:.25;animation:mistDrift 13s ease-in-out infinite}.m1{left:-10%;bottom:8%}.m2{right:-18%;top:28%;animation-delay:-6s}
.room-showcase .stay-photo{overflow:hidden}.room-showcase .stay-photo img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter .6s}.room-showcase .stay-card:hover .stay-photo img{transform:scale(1.09) translate3d(0,-2%,0);filter:saturate(1.12)}.room-panorama{position:absolute;left:22px;bottom:20px;padding:8px 12px;border-radius:999px;background:rgba(7,27,17,.75);color:white;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(10px)}
.activity-grid{grid-template-columns:repeat(3,1fr);gap:18px}.activity-card{position:relative;min-height:430px!important;padding:0!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:28px;overflow:hidden;isolation:isolate;transform-style:preserve-3d}.activity-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .6s}.activity-card:hover>img{transform:scale(1.12);filter:saturate(1.18) contrast(1.04)}.activity-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(4,19,11,.08),rgba(4,19,11,.2) 40%,rgba(3,16,9,.93))}.activity-card>span{position:absolute!important;z-index:4;top:22px!important;left:22px!important;color:white!important}.activity-copy{position:absolute;z-index:5;left:28px;right:25px;bottom:27px;transform:translateZ(45px);transition:.5s}.activity-copy b{color:var(--lime);font-size:9px;letter-spacing:.18em;text-transform:uppercase}.activity-copy h3{margin:8px 0 10px;color:white;font-size:30px}.activity-copy p{margin:0;color:rgba(255,255,255,.72);line-height:1.55}.fx-layer{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.splash{position:absolute;width:12px;height:12px;border:2px solid rgba(211,247,255,.95);border-radius:50%;box-shadow:0 0 18px rgba(153,231,255,.9);animation:splashOut .75s ease-out forwards}.splash:after{content:"";position:absolute;left:50%;top:50%;width:3px;height:20px;border-radius:50%;background:#d8f7ff;transform:translate(-50%,-50%) rotate(var(--r)) translateY(-16px)}
.ripple-layer i{position:absolute;left:50%;top:45%;width:40px;height:16px;border:2px solid rgba(201,244,255,.65);border-radius:50%;transform:translate(-50%,-50%);opacity:0}.activity-card:hover .ripple-layer i{animation:ripple 2.1s ease-out infinite}.activity-card:hover .ripple-layer i:nth-child(2){animation-delay:.65s}.activity-card:hover .ripple-layer i:nth-child(3){animation-delay:1.3s}.vine-layer i{position:absolute;width:110%;height:80px;left:-5%;background:linear-gradient(90deg,transparent,#8fba55 25%,#335f2f 55%,transparent);clip-path:polygon(0 50%,15% 42%,25% 55%,40% 36%,58% 54%,75% 38%,100% 52%,100% 68%,75% 55%,58% 70%,40% 52%,25% 70%,15% 58%,0 66%);opacity:0;transform:translateX(-20%)}.vine-layer i:nth-child(1){top:16%}.vine-layer i:nth-child(2){top:42%;transform:translateX(20%) scale(.7)}.vine-layer i:nth-child(3){top:66%;transform:translateX(-20%) scale(.55)}.activity-card:hover .vine-layer i{opacity:.65;animation:vineSweep 2.6s ease-in-out infinite alternate}.zip-layer .cable{position:absolute;left:-10%;top:28%;width:120%;height:2px;background:rgba(255,255,255,.8);transform:rotate(-13deg);transform-origin:center}.zip-layer .rider{position:absolute;left:5%;top:23%;color:#ffe250;font-size:20px;filter:drop-shadow(0 5px 5px rgba(0,0,0,.5))}.activity-card:hover .zip-layer .rider{animation:zipRide 1.5s cubic-bezier(.3,.8,.3,1) infinite}.hill-layer i{position:absolute;left:-15%;bottom:-8%;width:130%;height:50%;background:linear-gradient(135deg,#6d8c46,#173d25);clip-path:polygon(0 100%,18% 44%,30% 73%,48% 12%,62% 68%,78% 28%,100% 100%);opacity:.72;transform:translateY(45%);transition:.8s}.hill-layer i:nth-child(2){bottom:-13%;transform:translateY(55%) scale(1.25);opacity:.55}.hill-layer i:nth-child(3){bottom:-18%;transform:translateY(65%) scale(1.5);opacity:.35}.activity-card:hover .hill-layer i{transform:translateY(0)}.activity-card:hover .hill-layer i:nth-child(2){transform:translateY(8%) scale(1.25)}.activity-card:hover .hill-layer i:nth-child(3){transform:translateY(15%) scale(1.5)}.bird-layer i{position:absolute;color:white;font-size:24px;opacity:0;filter:drop-shadow(0 3px 3px rgba(0,0,0,.3))}.bird-layer i:nth-child(1){left:8%;top:60%}.bird-layer i:nth-child(2){left:24%;top:42%}.bird-layer i:nth-child(3){left:42%;top:56%}.bird-layer i:nth-child(4){left:58%;top:36%}.bird-layer i:nth-child(5){left:72%;top:50%}.activity-card:hover .bird-layer i{animation:birdFly 2.3s ease-in-out infinite}.activity-card:hover .bird-layer i:nth-child(2){animation-delay:.25s}.activity-card:hover .bird-layer i:nth-child(3){animation-delay:.5s}.activity-card:hover .bird-layer i:nth-child(4){animation-delay:.75s}.activity-card:hover .bird-layer i:nth-child(5){animation-delay:1s}
.scroll-video-scene{position:relative;overflow:hidden;background:#03120c}.cinematic.scroll-video-scene{height:170vh}.cinematic.scroll-video-scene>video{position:sticky;top:0;height:100vh}.water-caustics{position:absolute;inset:-20%;z-index:2;pointer-events:none;opacity:.14;background:repeating-radial-gradient(ellipse at 30% 40%,transparent 0 20px,rgba(169,238,244,.7) 23px 25px,transparent 27px 48px);filter:blur(3px);mix-blend-mode:screen;animation:caustics 8s linear infinite}.cinematic-copy{z-index:5}.river-scroll-film{height:260vh;background:#03120c}.river-film-sticky{position:sticky;top:0;height:100vh;overflow:hidden}.river-film-sticky video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.river-film-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,14,15,.82),rgba(2,26,29,.2)),linear-gradient(0deg,rgba(1,12,11,.75),transparent 60%)}.river-film-copy{position:absolute;z-index:5;left:max(6vw,28px);bottom:12vh;width:min(650px,84vw);color:white}.river-film-copy h2{margin:0 0 20px;font-family:"Playfair Display",serif;font-size:clamp(48px,7vw,96px);line-height:.96}.river-film-copy p{max-width:550px;color:rgba(255,255,255,.75);font-size:18px;line-height:1.7}.floating-rock{position:absolute;z-index:4;width:170px;height:120px;border-radius:50% 45% 42% 58%;background:linear-gradient(145deg,#5e654a,#1c2c25);box-shadow:0 30px 70px rgba(0,0,0,.45);filter:blur(.2px);opacity:.65;will-change:transform}.rock-a{right:9%;bottom:10%;width:220px}.rock-b{right:28%;top:20%;transform:scale(.55)}.rock-c{left:42%;top:12%;transform:scale(.3)}
@keyframes leafFloat{50%{transform:translate3d(15px,-25px,80px) rotate(55deg)}}@keyframes mistDrift{50%{transform:translateX(18%) scale(1.12)}}@keyframes splashOut{to{transform:translate(var(--dx),var(--dy)) scale(2.4);opacity:0}}@keyframes ripple{0%{opacity:.85;transform:translate(-50%,-50%) scale(.2)}100%{opacity:0;transform:translate(-50%,-50%) scale(8)}}@keyframes vineSweep{to{transform:translateX(16%) rotate(2deg)}}@keyframes zipRide{0%{left:2%;top:24%}100%{left:93%;top:5%}}@keyframes birdFly{0%{opacity:0;transform:translate(0,45px) scale(.7)}25%{opacity:1}100%{opacity:0;transform:translate(150px,-100px) scale(1.25)}}@keyframes caustics{to{transform:translate3d(8%,5%,0) rotate(8deg)}}
@media(max-width:1050px){.activity-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.activity-grid{grid-template-columns:1fr}.activity-card{min-height:390px!important}.hero-photo{background-position:58% center}.cinematic.scroll-video-scene{height:140vh}.river-scroll-film{height:210vh}.floating-rock{opacity:.35}.room-showcase .stay-photo{min-height:300px}}

/* August 2026 visual upgrade */
.brand-logo img{width:190px;max-height:58px;object-fit:contain;filter:drop-shadow(0 4px 14px rgba(0,0,0,.18))}.brand-logo{flex:0 0 auto}.hero-overlay{background:linear-gradient(90deg,rgba(2,14,8,.56) 0%,rgba(3,18,10,.24) 46%,rgba(3,18,10,.04) 82%),linear-gradient(0deg,rgba(3,18,10,.48),transparent 52%)}.hero-grain{opacity:.07}.hero-sticky video{filter:saturate(1.08) contrast(1.03) brightness(1.04)}
.pool-panel.scroll-video-scene{height:280vh;background:#06150e}.pool-sticky{position:sticky;top:0;height:100vh;overflow:hidden}.pool-sticky>.scene-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.04)}.pool-sticky .pool-content{position:absolute;z-index:6;left:50%;bottom:12vh;width:min(1240px,calc(100% - 40px));transform:translateX(-50%)}.pool-shade{z-index:2;background:linear-gradient(90deg,rgba(1,18,10,.72),rgba(1,18,10,.12)),linear-gradient(0deg,rgba(1,16,9,.68),transparent 65%)}.jungle-depth{position:absolute;z-index:4;inset:0;pointer-events:none}.jungle-depth i{position:absolute;width:180px;height:280px;background:linear-gradient(130deg,transparent 42%,rgba(14,58,28,.78) 43% 52%,transparent 53%);filter:blur(.4px);transform-origin:bottom center;animation:jungleSway 5s ease-in-out infinite}.jungle-depth i:nth-child(1){left:-40px;bottom:-60px;transform:rotate(-24deg)}.jungle-depth i:nth-child(2){right:4%;bottom:-100px;animation-delay:-1.2s}.jungle-depth i:nth-child(3){right:-50px;top:5%;transform:rotate(35deg) scale(.75);animation-delay:-2.1s}.jungle-depth i:nth-child(4){left:28%;top:-90px;transform:rotate(155deg) scale(.55);animation-delay:-3s}@keyframes jungleSway{50%{rotate:5deg;translate:0 -12px}}
.room-360-section{background:#0b2116;color:#fff;overflow:hidden}.room-360-section .section-heading p{color:#aab8af}.room-360-section .eyebrow.dark{color:var(--lime)}.room-360-viewer{position:relative;height:min(70vh,720px);min-height:480px;overflow:hidden;border-radius:34px;cursor:grab;box-shadow:0 40px 110px rgba(0,0,0,.4);perspective:1200px;user-select:none;background:#111}.room-360-viewer:active{cursor:grabbing}.room-360-viewer img{position:absolute;top:0;left:0;width:145%;max-width:none;height:100%;object-fit:cover;transform:translate3d(var(--pan-x,-15%),0,0) scale(1.04);will-change:transform;transition:filter .3s}.room-360-viewer:hover img{filter:saturate(1.08) contrast(1.04)}.viewer-vignette{position:absolute;inset:0;background:radial-gradient(circle at center,transparent 45%,rgba(0,0,0,.58) 120%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 35%);pointer-events:none}.viewer-ui{position:absolute;z-index:3;left:28px;bottom:28px;display:grid;grid-template-columns:50px auto;gap:2px 12px;align-items:center;padding:14px 18px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(5,20,12,.55);backdrop-filter:blur(14px)}.viewer-icon{grid-row:1/3;display:grid;width:50px;height:50px;place-items:center;border-radius:50%;background:var(--lime);color:var(--forest);font-size:24px}.viewer-ui b{font-size:13px}.viewer-ui small{color:rgba(255,255,255,.62)}.viewer-compass{position:absolute;z-index:3;top:24px;right:24px;width:110px;height:110px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(4,17,10,.34);backdrop-filter:blur(9px)}.viewer-compass i{position:absolute;left:50%;top:12px;width:2px;height:40px;background:var(--lime);transform-origin:50% 43px;transform:rotate(var(--compass,0deg))}.viewer-compass span{position:absolute;font-size:9px;font-weight:800}.viewer-compass span:nth-of-type(1){top:6px;left:50%;transform:translateX(-50%)}.viewer-compass span:nth-of-type(2){right:8px;top:50%;transform:translateY(-50%)}.viewer-compass span:nth-of-type(3){bottom:6px;left:50%;transform:translateX(-50%)}.viewer-compass span:nth-of-type(4){left:8px;top:50%;transform:translateY(-50%)}
@media(max-width:780px){.brand-logo img{width:145px}.room-360-viewer{min-height:390px;height:56vh}.room-360-viewer img{width:180%}.viewer-compass{width:82px;height:82px}.viewer-compass i{height:30px;transform-origin:50% 32px}.pool-panel.scroll-video-scene{height:220vh}}

/* Premium stability and cinematic upgrade v4 */
.hero-scroll{height:260vh}.hero-sticky video{opacity:1!important;filter:saturate(1.12) contrast(1.04) brightness(1.1);object-position:center center}.hero-photo{display:none}.hero-overlay{background:linear-gradient(90deg,rgba(1,12,7,.40) 0%,rgba(2,16,9,.12) 52%,transparent 84%),linear-gradient(0deg,rgba(1,12,7,.38),transparent 52%)}.hero-grain{opacity:.025}.hero-content{text-shadow:0 4px 26px rgba(0,0,0,.28)}
.room-360-section{padding-bottom:clamp(70px,8vw,120px)!important}.room-360-viewer video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.015);filter:saturate(1.08) contrast(1.04);will-change:transform}.viewer-scan{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(207,247,101,.12) 48%,transparent 60%);transform:translateX(-100%);animation:viewerScan 5s ease-in-out infinite}.viewer-progress{position:absolute;z-index:4;left:28px;right:28px;bottom:16px;height:2px;background:rgba(255,255,255,.2);overflow:hidden}.viewer-progress i{display:block;height:100%;width:var(--view-progress,0%);background:var(--lime);box-shadow:0 0 16px var(--lime)}@keyframes viewerScan{50%,100%{transform:translateX(100%)}}
/* Never leave empty dark scroll tails */
.pool-panel.scroll-video-scene{height:165vh}.cinematic.scroll-video-scene{height:135vh}.river-scroll-film{height:155vh}.cinematic-sticky,.pool-sticky,.river-film-sticky{position:sticky;top:0;height:100vh;min-height:620px;overflow:hidden}.cinematic-sticky>.scene-video,.pool-sticky>.scene-video,.river-film-sticky>.scene-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;opacity:1!important;background:#0a1c12}.cinematic-copy{position:absolute;left:max(6vw,28px);bottom:12vh;width:min(700px,86vw)}
/* Layered frame-by-frame depth tied to scroll progress */
.frame-layers{position:absolute;inset:0;z-index:3;pointer-events:none;perspective:1000px;overflow:hidden}.frame-layers i,.frame-layers b{position:absolute;display:block;will-change:transform,opacity}.frame-layers i:nth-child(1){inset:-8%;border:1px solid rgba(216,239,167,.18);border-radius:50%;transform:translate3d(calc((var(--scene-progress,0) - .5)*-8vw),calc((var(--scene-progress,0) - .5)*5vh),80px) scale(1.1)}.frame-layers i:nth-child(2){width:46vw;height:46vw;right:-18vw;top:-16vw;border:1px solid rgba(255,255,255,.16);border-radius:50%;transform:rotate(calc(var(--scene-progress,0)*90deg))}.frame-layers i:nth-child(3){width:32vw;height:1px;left:8%;top:28%;background:linear-gradient(90deg,transparent,rgba(217,246,117,.6),transparent);transform:translateX(calc(var(--scene-progress,0)*35vw)) rotate(-12deg)}.frame-layers b{inset:0;background:radial-gradient(circle at calc(20% + var(--scene-progress,0)*60%) 48%,rgba(205,239,111,.16),transparent 28%);mix-blend-mode:screen}.river-layers b{background:radial-gradient(circle at calc(20% + var(--scene-progress,0)*60%) 58%,rgba(124,225,255,.24),transparent 30%)}
/* Premium adventure cards */
.activity-grid{gap:24px}.activity-card{min-height:500px;border-radius:26px;border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 70px rgba(0,0,0,.3);isolation:isolate;transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s}.activity-card:before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.16),transparent 30%);opacity:.4;pointer-events:none}.activity-card:hover{transform:translateY(-12px) scale(1.015);box-shadow:0 42px 100px rgba(0,0,0,.48)}.activity-card>img{transition:transform 1.4s cubic-bezier(.2,.7,.2,1),filter .8s;filter:saturate(.92) contrast(1.05)}.activity-card:hover>img{transform:scale(1.13);filter:saturate(1.18) contrast(1.08)}.activity-shade{background:linear-gradient(0deg,rgba(1,10,7,.94) 0%,rgba(1,13,8,.2) 60%,rgba(1,13,8,.08))}.activity-copy{transition:transform .65s}.activity-card:hover .activity-copy{transform:translateY(-10px)}.activity-copy b{display:inline-flex;padding:6px 10px;border-radius:99px;background:rgba(210,242,104,.14);border:1px solid rgba(210,242,104,.35);backdrop-filter:blur(8px)}
.water-fx:after{content:"";position:absolute;z-index:3;left:-10%;right:-10%;bottom:-22%;height:48%;background:repeating-radial-gradient(ellipse at 50% 100%,rgba(190,239,255,.38) 0 2px,transparent 4px 22px);filter:blur(1px);opacity:0;transform:translateY(30%);transition:.8s}.water-fx:hover:after{opacity:.8;transform:translateY(0);animation:premiumWater 3s linear infinite}.jungle-fx:after{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(110deg,transparent 15%,rgba(210,242,104,.22) 46%,transparent 62%);clip-path:polygon(45% 0,72% 0,56% 100%,20% 100%);opacity:0;transform:translateX(-30%);transition:1s}.jungle-fx:hover:after{opacity:1;transform:translateX(10%)}.mountain-fx:after{content:"";position:absolute;z-index:3;inset:35% -10% -10%;background:linear-gradient(180deg,transparent,rgba(228,239,226,.28));filter:blur(18px);transform:translateY(45%);opacity:0;transition:1s}.mountain-fx:hover:after{opacity:1;transform:translateY(0)}.bird-fx .bird-layer i{font-size:0}.bird-fx .bird-layer i:before,.bird-fx .bird-layer i:after{content:"";position:absolute;width:18px;height:8px;border-top:2px solid #fff;border-radius:50%;transform-origin:right center}.bird-fx .bird-layer i:after{transform:scaleX(-1);transform-origin:left center}.bird-fx:hover .bird-layer i{animation:realBird 2.8s cubic-bezier(.2,.5,.3,1) infinite}.zip-fx:hover .cable{box-shadow:0 0 14px rgba(255,255,255,.8)}@keyframes premiumWater{to{background-position:80px 0}}@keyframes realBird{0%{opacity:0;transform:translate(-40px,60px) scale(.5)}20%{opacity:1}100%{opacity:0;transform:translate(190px,-120px) scale(1.2)}}
@media(max-width:780px){.hero-scroll{height:210vh}.pool-panel.scroll-video-scene,.river-scroll-film{height:140vh}.cinematic.scroll-video-scene{height:125vh}.cinematic-sticky,.pool-sticky,.river-film-sticky{min-height:100svh}.activity-card{min-height:420px!important}}
