/*
Theme Name: Safari Resort Luxury
Author: Safari Resort
Description: Luxury resort theme for Safari Resort, Upper Kachura, Skardu.
Version: 2.6.0
*/
:root{--forest:#0b1713;--forest2:#10251d;--gold:#c9a967;--gold2:#dfc98e;--cream:#f7f5ef;--white:#fff;--ink:#101714;--muted:#626b66;--line:#e5dfd3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6;background:var(--cream)}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}.container{width:min(1180px,90%);margin:auto}
.site-header{position:absolute;z-index:20;left:0;right:0;color:#fff}.nav{display:flex;justify-content:space-between;align-items:center;padding:25px 0}.brand{font:25px Georgia,serif;letter-spacing:.08em}.menu{display:flex;gap:30px;font-size:14px}.menu a:hover{color:var(--gold2)}
.hero{min-height:700px;background:linear-gradient(90deg,rgba(4,13,9,.78),rgba(4,13,9,.30)),var(--hero,linear-gradient(135deg,#1a3027,#09130f)) center/cover;display:flex;align-items:center;color:#fff;text-align:center}.hero-content{max-width:850px;padding-top:70px;margin:auto}.hero .eyebrow{font-size:10px;letter-spacing:.23em}.hero h1{font:clamp(48px,6vw,78px)/1.03 Georgia,serif;margin:15px 0}.hero p{font-size:16px;max-width:650px;margin:0 auto;color:#f2f4f1}.hero-actions{margin-top:15px}
.btn{display:inline-block;padding:12px 25px;background:var(--gold);border:1px solid var(--gold);color:var(--ink);font-weight:bold;margin:8px 5px 0;cursor:pointer;transition:.25s}.btn:hover{background:var(--gold2);border-color:var(--gold2);transform:translateY(-2px)}.btn.alt{background:transparent;color:#fff;border-color:#fff}
.nature-section{background:var(--cream);padding:82px 0}.nature-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:64px}.nature-image{overflow:hidden}.nature-image img{width:100%;aspect-ratio:1.25/1;object-fit:cover}.nature-copy{padding-right:20px}.nature-copy .eyebrow{font-size:11px}.nature-copy h2{font:clamp(48px,5.2vw,76px)/1.03 Georgia,serif;margin:20px 0 28px;max-width:560px}.nature-copy p{font-size:18px;max-width:650px;color:#242b28;margin:0}
.section{padding:88px 0}.cream{background:var(--cream)}.dark{background:var(--forest);color:#fff}.head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.head.centered,.centered{text-align:center;justify-content:center}.head h2{font:clamp(34px,4.5vw,52px)/1.08 Georgia,serif;margin:8px 0}.head p{max-width:650px;color:var(--muted);margin:10px auto 0}.dark .head p{color:#d4d9d5}
.rooms-grid,.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:900px;margin:auto}.room-card{background:#fff;box-shadow:0 12px 30px rgba(11,23,19,.08);overflow:hidden;border:1px solid #eee8dd;transition:.3s}.room-card:hover{transform:translateY(-5px);box-shadow:0 22px 45px rgba(11,23,19,.14)}.room-card-link{display:block;height:100%}.room-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.room-body{padding:18px 18px 20px}.room-body h3{font:17px Georgia,serif;margin:0 0 8px}.room-body p{font-size:12px;line-height:1.55;color:var(--muted);margin:0 0 12px;min-height:56px}.price{font-weight:bold;font-size:13px}.price span{display:block}.price .pkr{font-size:12px;color:#626b66;margin-top:2px;font-weight:600}
.feature{padding:25px;border:1px solid rgba(201,169,103,.38);text-align:center;min-height:125px}.feature h3{font:16px Georgia,serif;margin:0 0 10px}.feature p{color:#d4d9d5;font-size:12px;margin:0}.gallery-cta{background:#08130f;color:#fff;padding:65px 0}.gallery-cta h2{font:38px Georgia,serif;line-height:1.05;margin:12px auto 20px;max-width:430px}
.dining-section{background:var(--cream)}.dining-section .head{margin-bottom:28px}.dining-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:900px;margin:auto}.dining-grid figure{margin:0;overflow:hidden;background:#fff;aspect-ratio:4/3}.dining-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.dining-grid figure:hover img{transform:scale(1.04)}
.cta{padding:65px 0;text-align:center;background:var(--forest2);color:#fff}.cta h2{font:38px Georgia,serif;margin:10px 0}.cta p{color:#d8dfdb}
.site-footer{background:#07100d;color:#fff;padding:48px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.site-footer h3{font:20px Georgia,serif;color:var(--gold)}.site-footer p,.site-footer a{color:#d4d9d5}.site-footer a:hover{color:#fff}.copyright{border-top:1px solid #ffffff22;margin-top:30px;padding-top:18px;font-size:12px}
/* Room detail */.room-hero{padding:130px 0 65px;background:var(--cream)}.room-detail-card{background:linear-gradient(135deg,var(--forest),var(--forest2));color:#fff;padding:48px 52px;border:1px solid rgba(201,169,103,.35);box-shadow:0 25px 60px rgba(11,23,19,.16)}.room-detail-card h1{font:clamp(45px,6vw,70px)/1.05 Georgia,serif;margin:0 0 18px}.room-description{max-width:850px;font-size:18px;color:#e4e8e5;margin:0}.room-rent{margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15)}.room-rent strong{display:block;font-size:22px}.room-rent .usd{display:block;margin-top:5px;color:var(--gold2);font-weight:700}.room-info{margin-top:50px}.room-info h2,.room-photos-heading h2{font:34px Georgia,serif;margin:0 0 20px}.facility-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 18px;padding:0;margin:0;list-style:none}.facility-list li{background:#fff;border:1px solid var(--line);padding:14px 16px;position:relative;padding-left:38px}.facility-list li:before{content:'✓';position:absolute;left:15px;color:var(--gold);font-weight:bold}.room-photos-heading{margin-top:60px;margin-bottom:22px}.room-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.room-gallery figure{margin:0;background:#fff;overflow:hidden}.room-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:.4s}.room-gallery figure:hover img{transform:scale(1.025)}.room-booking{text-align:center;margin-top:40px}
/* Gallery */.gallery-page{padding:135px 0 80px;background:var(--cream)}.gallery-page h1{font:clamp(45px,6vw,70px) Georgia,serif;margin:10px 0}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}.gallery-item{background:#fff;overflow:hidden}.gallery-item img{width:100%;aspect-ratio:1;object-fit:cover;transition:.4s}.gallery-item:hover img{transform:scale(1.04)}
/* Contact modal */.contact-modal{position:fixed;inset:0;background:rgba(5,12,9,.78);z-index:1000;display:none;align-items:center;justify-content:center;padding:22px}.contact-modal.is-open{display:flex}.contact-box{position:relative;width:min(560px,100%);background:#fff;padding:42px 40px;box-shadow:0 30px 80px rgba(0,0,0,.35);border-top:5px solid var(--gold)}.contact-box h2{font:38px Georgia,serif;margin:0 0 8px;color:var(--forest)}.contact-box>p{color:var(--muted);margin:0 0 25px}.contact-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:30px;cursor:pointer;color:var(--forest)}.contact-list{display:grid;gap:13px}.contact-item{display:block;padding:15px 16px;background:#f8f5ee;border:1px solid #e9e1d3}.contact-item strong{display:block;color:var(--forest);font-size:15px}.contact-item span{color:#303833;user-select:text;overflow-wrap:anywhere}.contact-item.whatsapp{border-color:var(--gold)}.contact-note{font-size:13px;color:var(--muted);margin-top:20px}.modal-lock{overflow:hidden}
@media(max-width:900px){.nature-grid{grid-template-columns:1fr;gap:35px}.nature-copy{padding-right:0}.rooms-grid,.features{grid-template-columns:1fr 1fr}.dining-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.room-gallery{grid-template-columns:repeat(2,1fr)}.menu{display:none}.footer-grid{grid-template-columns:1fr 1fr}.room-detail-card{padding:40px 32px}}
@media(max-width:650px){.rooms-grid,.features,.dining-grid,.gallery-grid,.room-gallery,.footer-grid{grid-template-columns:1fr}.section{padding:70px 0}.hero{min-height:650px}.hero h1{font-size:50px}.nature-section{padding:60px 0}.nature-copy h2{font-size:48px}.room-hero,.gallery-page{padding-top:120px}.room-detail-card{padding:34px 24px}.facility-list{grid-template-columns:1fr}.contact-box{padding:35px 22px}.contact-box h2{font-size:32px}}
