/* Omkar Stays — style.css
   Colors:
   Primary: #204E37
   Secondary: #4C7A4F
   Accent: #D4A45B
   Background: #F7F5EF
   Text: #1F2937
*/
html,body{overflow-x:hidden} :root{
  --primary:#204E37;--secondary:#4C7A4F;--accent:#D4A45B;--bg:#F7F5EF;--text:#1F2937;font-family:Poppins,Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,Arial;margin:0}
img{max-width:100%;height:auto;display:block}

/* NAV */
.navbar{padding:.9rem 0;transition:all .35s ease;border-bottom:1px solid transparent}
.transparent-nav{background:rgba(22,48,37,.72);backdrop-filter:blur(10px);box-shadow:0 10px 25px rgba(17,43,33,.12);border-color:rgba(255,255,255,.12)}
.glass-nav{background:rgba(22,48,37,.88)!important;box-shadow:0 12px 32px rgba(17,43,33,.18)!important;border-color:rgba(255,255,255,.12)!important}
.navbar .brand-text{font-weight:700;font-family:Cormorant Garamond,serif;letter-spacing:.04em}
.navbar-brand{display:flex;align-items:center;color:#fff!important;text-decoration:none}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 20px rgba(0,0,0,.12);overflow:hidden;padding:0}
.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}
.navbar-nav{gap:.25rem}
.navbar .nav-link{color:rgba(255,255,255,.92)!important;font-weight:500;padding:.65rem .9rem;border-radius:999px;transition:all .2s ease}
.navbar .nav-link:hover,.navbar .nav-link:focus,.navbar .nav-link.active{color:#fff!important;background:rgba(255,255,255,.08)}
.navbar-toggler{border:1px solid rgba(255,255,255,.25);border-radius:10px;padding:.4rem .5rem}
.navbar-toggler:focus{box-shadow:none}
.btn-accent{background:var(--accent);border:none;color:#fff;box-shadow:0 8px 20px rgba(212,164,91,.25);transition:all .2s ease}
.btn-accent:hover,.btn-accent:focus{background:#c99549;color:#fff;transform:translateY(-1px)}

@media (max-width: 991.98px){
  .navbar-collapse{margin-top:.75rem;background:rgba(22,48,37,.9);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:.75rem}
  .navbar-nav{gap:.25rem}
  .navbar .nav-link{padding:.8rem 1rem}
  .navbar .btn-accent{margin-top:.25rem;width:100%}
}

/* HERO */
.hero-section{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0f1f1a}
.hero-section::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(16,31,25,.72),rgba(16,31,25,.18) 38%,rgba(16,31,25,.62));z-index:1}
.hero-media{position:absolute;inset:0;will-change:transform;transform:translate3d(0,0,0) scale(1.04)}
.hero-video{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.1) contrast(1.1)}
.hero-slider{position:absolute;inset:0}
.swiper-slide{background-size:cover;background-position:center;height:100%}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(32,78,55,0.12),rgba(17,43,33,0.38))}
.hero-content{position:relative;z-index:5;padding-top:8rem;color:#fff;max-width:1000px;text-shadow:0 3px 16px rgba(0,0,0,.45)}
.hero-title{font-family:Cormorant Garamond,serif;letter-spacing:.10em;font-size:clamp(3.4rem,7vw,7rem);text-transform:uppercase;text-shadow:0 8px 32px rgba(0,0,0,.52),0 0 18px rgba(0,0,0,.22);margin-bottom:.75rem}
.hero-sub{font-weight:700;font-size:clamp(1.1rem,2.2vw,2rem);letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.98);text-shadow:0 4px 18px rgba(0,0,0,.62),0 0 12px rgba(0,0,0,.22)}
.hero-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}
.tag{display:inline-block;background:rgba(20,33,24,.22);border:1px solid rgba(255,255,255,.18);padding:.45rem 1rem;border-radius:999px;margin:0 .25rem;color:#fff;backdrop-filter:blur(8px);box-shadow:0 10px 30px rgba(0,0,0,.12)}
.hero-ctas{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.hero-ctas .btn{padding:.9rem 1.6rem;border-radius:999px;border:1px solid rgba(255,255,255,.45);font-weight:600;letter-spacing:.04em;box-shadow:0 10px 35px rgba(0,0,0,.15)}
.hero-ctas .btn-outline-light{background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}
.index-landscape{height:auto;min-height:100vh;display:block;padding-top:70px;background:#f2f1ee}
.hero-image-strip{height:260px;background:url('../images/ChatGPT Image Aug 15, 2026, 09_43_34 PM.png') center/cover no-repeat}
.landing-panel{display:flex;flex-direction:column;gap:2rem;padding:2rem 2rem 0}
.landing-brand-row{display:flex;align-items:center;gap:.9rem;color:#1f2937;font-weight:600;font-size:2.1rem;padding:0 0 1.2rem 0}
.landing-brand-mark{width:46px;height:46px;border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:#f6f6f6;border:1px solid rgba(31,41,55,.12)}
.landing-brand-mark img{width:100%;height:100%;object-fit:cover}
.landing-brand-name{font-size:2rem;font-weight:600;color:#1f2937;letter-spacing:-.02em}
.landing-content-row{display:grid;grid-template-columns:1.15fr 2.1fr;align-items:start;gap:2rem;padding-bottom:2rem}
.landing-copy-block{padding:2rem 1rem 0 0}
.landing-copy-block h2{font-size:clamp(2.4rem,3vw,4rem);font-weight:300;line-height:1.15;color:#1f2937;margin:0 0 1rem;font-family:Georgia, serif;letter-spacing:-.03em}
.landing-copy-block p{font-size:1.1rem;line-height:1.7;color:rgba(31,41,55,.74);margin:0;max-width:740px}
.landing-cards{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:1.5rem}
.landing-card{background:#f7f6f4;border:1px solid rgba(17,43,33,.08);border-radius:18px;padding:1.75rem 1.2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:170px;box-shadow:0 10px 22px rgba(17,43,33,.04)}
.landing-icon{width:58px;height:58px;background:rgba(32,78,55,.12);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#204E37;margin-bottom:1rem}
.landing-icon i{font-size:2rem}
.landing-card h3{margin:0;color:#1f2937;font-size:2rem;font-weight:500;line-height:1.2}

.scroll-indicator{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:10}
.mouse{width:28px;height:44px;border:2px solid rgba(255,255,255,.8);border-radius:20px;display:inline-block}
.wheel{display:block;width:4px;height:8px;background:rgba(255,255,255,.8);margin:6px auto;border-radius:2px;animation:wheel 1.6s infinite}
@keyframes wheel{0%{transform:translateY(0)}50%{transform:translateY(8px)}100%{transform:translateY(0)}}

/* Sections and cards */
.py-6{padding-top:5rem;padding-bottom:5rem}
.intro-image{overflow:hidden;border-radius:26px;box-shadow:0 22px 48px rgba(17,43,33,.10);background:#eef2ee;border:1px solid rgba(17,43,33,.06)}
.intro-image img{display:block;width:100%;height:100%;min-height:480px;object-fit:cover}
.feature-card{background:#fff;border:1px solid rgba(17,43,33,.08);border-radius:18px;box-shadow:0 14px 28px rgba(17,43,33,.05);padding:1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;min-height:150px}
.feature-card i{width:52px;height:52px;border-radius:16px;background:rgba(32,78,55,.10);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.5rem;margin-bottom:1rem}
.feature-card h5{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937}
.test-card{background:#fff;border-radius:10px}
.masonry{display:block}
.masonry .col-md-4{margin-bottom:.75rem}

.gallery-layout{max-width:1200px;width:100%;margin:0 auto;padding:0 24px}
.gallery-header{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:20px;gap:1rem}
.gallery-header h3{margin:0;color:#1f2937;font-size:clamp(1.8rem,2vw,2.5rem);font-weight:700}
.gallery-header a{color:#1f2937;display:inline-flex;align-items:center;gap:.5rem;font-weight:600}
.hero-gallery{background-position:center center;min-height:560px;position:relative;overflow:hidden}
.hero-gallery::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,43,33,.2),rgba(17,43,33,.58));}
.hero-gallery .container{position:relative;z-index:1}
.hero-gallery .hero-heading{font-family:Georgia,serif;font-size:clamp(4.2rem,8vw,10rem);letter-spacing:-.05em;color:#fff;text-shadow:0 10px 24px rgba(0,0,0,.28);margin:0}
.hero-gallery .hero-sub{font-size:clamp(1.1rem,2vw,1.7rem);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.9);margin-top:1rem;text-shadow:0 8px 18px rgba(0,0,0,.25)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:100%;max-width:1200px;margin:0 auto;align-items:start}
.gallery-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.gallery-item{display:block;position:relative;overflow:hidden;border-radius:14px;box-shadow:0 18px 38px rgba(17,43,33,.08);background:#f5f2ec;transition:transform .25s ease, box-shadow .25s ease;width:100%}
.gallery-item:hover{transform:translateY(-3px);box-shadow:0 22px 42px rgba(17,43,33,.12)}
.gallery-item a,.gallery-item img{display:block;width:100%;height:100%;border-radius:14px}
.gallery-item a{overflow:hidden;aspect-ratio:4/3;background:#f5f2ec}
.gallery-item img{object-fit:cover;object-position:center;transition:transform .55s ease, filter .35s ease;width:100%;height:100%;background:#f5f2ec}
.gallery-item:hover img{transform:scale(1.03);filter:saturate(1.08)}

.experience-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2rem}
.experience-card{position:relative;overflow:hidden;border-radius:22px;min-height:420px;background:#fff;border:1px solid rgba(17,43,33,.06);box-shadow:0 18px 38px rgba(17,43,33,.06)}
.experience-card:nth-child(2){transform:rotate(1.2deg)}
.experience-card:nth-child(3){transform:rotate(-1.2deg)}
.experience-image{height:260px;background-size:cover;background-position:center;display:block;object-fit:cover;aspect-ratio:16/10}
.experience-copy{padding:1.4rem 1.2rem 1.5rem}
.experience-copy span{display:inline-block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);font-weight:700;margin-bottom:.6rem}
.experience-copy h4{font-size:1.55rem;margin-bottom:.55rem;color:var(--text)}
.experience-copy p{margin:0;color:rgba(31,41,55,.72);line-height:1.7}

.cta-band{background:linear-gradient(135deg,#204E37 0%,#2d5b45 35%,#d4a45b 100%);color:#fff;border-radius:28px;padding:2.2rem 2rem;box-shadow:0 22px 45px rgba(32,78,55,.18)}
.cta-band h3{font-size:clamp(2rem,3vw,3rem);margin:0 0 .6rem;font-weight:700}
.cta-band p{margin:0;color:rgba(255,255,255,.8);line-height:1.7}
.cta-band .btn{padding:.9rem 1.5rem;border-radius:999px;border:none;background:#fff;color:var(--primary);font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.12)}

/* Footer & floating */
.whatsapp-float{position:fixed;right:18px;bottom:18px;background:#25D366;color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(31,41,55,.15);z-index:999}
.instagram-float{position:fixed;right:18px;bottom:78px;background:linear-gradient(135deg,#f58529,#dd2a7b,#8134af,#515bd4);color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(31,41,55,.15);z-index:999}
@media (max-width: 991.98px){.experience-strip{grid-template-columns:1fr}} 
@media (max-width: 480px){.whatsapp-float{right:16px;bottom:16px}.instagram-float{right:16px;bottom:74px}}

/* Forms */
.booking-form .form-control{border-radius:6px}
.form-result{padding:.8rem 1rem;border-radius:8px;font-size:.95rem}
.form-result.alert{background:#eaf7ee;border:1px solid #bfe3c9;color:#1f5f3a}
.form-result.alert-danger{background:#fdecec;border:1px solid #f3b8b8;color:#8a2d2d}
.star-rating{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:.25rem;font-size:2rem;line-height:1}
.star-rating input{display:none}
.star-rating label{cursor:pointer;color:#d1d5db;transition:color .2s ease}
.star-rating label:hover,.star-rating label:hover ~ label,.star-rating input:checked ~ label{color:#f4b740}

/* Page hero for inner pages */
.page-hero{background-size:cover;background-position:center;min-height:360px;display:flex;align-items:center;background-color:#204E37;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(17,43,33,.62),rgba(17,43,33,.18));}
.page-hero .container{position:relative;z-index:1}
.page-hero .hero-heading{font-family:Cormorant Garamond,serif;font-size:clamp(3rem,5vw,6rem);letter-spacing:.04em;margin:0;color:#fff;text-shadow:0 8px 24px rgba(0,0,0,.35)}
.page-hero .hero-sub{font-size:clamp(1.1rem,2vw,1.6rem);color:rgba(255,255,255,.9);margin-top:.75rem;text-shadow:0 6px 18px rgba(0,0,0,.3)}
.page-hero.has-light-text .hero-heading, .page-hero.has-light-text .hero-sub{color:#1f2937}
.hero-tents{background-position:center center;min-height:440px}
.tent-gallery-grid .col-md-3{display:flex}
.tent-gallery-grid .gallery-thumb{min-height:260px}
.page-section{padding:4.5rem 0}
.page-shell{padding:4rem 0 5rem}
.section-title{font-size:clamp(2.2rem,3vw,3rem);font-weight:700;line-height:1.1;margin:0 0 1rem;font-family:Georgia, serif;letter-spacing:-.02em;color:#1f2937}
.section-kicker{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--secondary);margin-bottom:1rem;display:inline-block}
.lead-soft{font-size:1.12rem;line-height:1.8;color:rgba(31,41,55,.78)}
.info-grid, .stats-grid, .feature-grid{display:grid;gap:1.2rem}
.info-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
.feature-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));}
.info-card, .feature-card, .stat-box, .content-panel, .mini-card{background:#fff;border:1px solid rgba(31,41,55,.08);border-radius:18px;box-shadow:0 12px 30px rgba(17,43,33,.05)}
.info-card, .feature-card, .mini-card{padding:1.5rem}
.stat-box{padding:1.5rem 1rem 1.2rem;text-align:center;background:linear-gradient(180deg,#ffffff 0%, #f3f0ea 100%);border:1px solid rgba(17,43,33,.08);box-shadow:0 10px 24px rgba(17,43,33,.06)}
.stat-box strong{display:block;font-size:3.2rem;line-height:1;color:#1d2d25;font-weight:800;letter-spacing:-.07em;font-family:Poppins,Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums;margin-bottom:.35rem}
.stat-box span{font-size:.78rem;text-transform:uppercase;letter-spacing:.18em;color:#4a5d4f;font-weight:700;display:block}
.feature-card i{width:42px;height:42px;border-radius:50%;background:rgba(32,78,55,.08);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.1rem;margin-bottom:1rem}
.feature-card h4{font-size:1.15rem;margin:0 0 .5rem;color:#1f2937}
.feature-card p{margin:0;color:rgba(31,41,55,.7);line-height:1.7}

.landing-card h3,.landing-copy-block h2,.experience-copy h4,.price,.hero-title,.display-1{font-family:Poppins,Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.price{font-weight:800;color:#163b2d;font-size:2rem}
.landing-card h3{font-weight:800;color:#163b2d;line-height:1.15}
.landing-copy-block h2{font-weight:700;color:#163b2d;line-height:1.1}
.experience-copy h4{font-weight:700;color:#163b2d;line-height:1.2}
.content-panel{padding:1.5rem}
.list-check{list-style:none;padding:0;margin:0}
.list-check li{position:relative;padding-left:1.6rem;margin-bottom:.8rem;color:rgba(31,41,55,.82)}
.list-check li::before{content:"•";position:absolute;left:0;top:0;color:var(--primary);font-size:1.3rem;line-height:1}
.page-shell.bg-dark .section-title,
.page-shell.bg-dark .lead-soft,
.page-shell.bg-dark .stat-box strong,
.page-shell.bg-dark .stat-box span,
.page-shell.bg-dark .list-check li,
.page-shell.bg-dark .pill,
.page-shell.bg-dark .content-panel,
.page-shell.bg-dark .section-kicker{color:#f8f5f0}
.page-shell.bg-dark .lead-soft{color:rgba(255,255,255,.78)}
.page-shell.bg-dark .content-panel{background:#f5f2ee;color:#1f2937}
.page-shell.bg-dark .content-panel .section-kicker,
.page-shell.bg-dark .content-panel .list-check li,
.page-shell.bg-dark .content-panel .pill{color:#1f2937}
.gallery-thumb{display:flex;align-items:flex-end;position:relative;overflow:hidden;border-radius:22px;background-size:cover;background-position:center;width:100%;min-height:240px;aspect-ratio:4/3;box-shadow:0 18px 38px rgba(17,43,33,.12);transition:transform .25s ease, box-shadow .25s ease;background-repeat:no-repeat}
.gallery-thumb:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(17,43,33,.18)}
.gallery-thumb::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,43,33,.08),rgba(17,43,33,.55));}
.gallery-thumb span{position:relative;z-index:1;color:#fff;font-weight:600;font-size:1rem;background:rgba(17,43,33,.35);padding:.45rem .8rem;border-radius:999px;margin:1rem;display:inline-block}
.row.g-3 [class*='col-']{display:flex}
.row.g-3 [class*='col-'] > .gallery-thumb{height:100%}
.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:start}
.map-wrap{height:360px;border-radius:22px;overflow:hidden;border:1px solid rgba(17,43,33,.08);box-shadow:0 18px 38px rgba(17,43,33,.12)}
.map-placeholder{height:360px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d7d9d2,#9aa79d);border:1px solid rgba(17,43,33,.08);color:#1f2937;font-weight:600}
.contact-panel{background:#fff;border:1px solid rgba(31,41,55,.08);border-radius:22px;padding:1.8rem;box-shadow:0 18px 38px rgba(17,43,33,.08)}
.contact-list{list-style:none;padding:0;margin:1.25rem 0 0}
.contact-list li{margin-bottom:.9rem;color:rgba(31,41,55,.75);line-height:1.7}
.contact-list a{color:var(--primary);text-decoration:none}
.contact-mini{padding-top:1rem;border-top:1px solid rgba(31,41,55,.08)}
.nearby-section{margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(17,43,33,.08)}
.nearby-intro{max-width:760px;margin-bottom:2rem}
.nearby-intro p{margin:0.7rem 0 0;color:rgba(31,41,55,.72);font-size:1.1rem;line-height:1.7}
.property-summary{display:grid;grid-template-columns:1.5fr 1fr;gap:1.5rem;padding:1.6rem;border-radius:24px;background:linear-gradient(135deg,#f6f2e9,#edf2ee);border:1px solid rgba(17,43,33,.08);margin-bottom:2rem;align-items:center}
.property-badge{display:inline-block;padding:.45rem .8rem;border-radius:999px;background:rgba(32,78,55,.08);color:var(--primary);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.property-summary__content h3{margin:.8rem 0 .4rem;font-size:clamp(1.6rem,2vw,2.2rem);color:#1f2937}
.property-summary__content p{margin:0;color:rgba(31,41,55,.72);line-height:1.7}
.property-summary__meta{padding:1.2rem 1.1rem;border-radius:18px;background:rgba(255,255,255,.5);border:1px solid rgba(17,43,33,.06);color:#1f2937;font-weight:600;line-height:1.7}
.nearby-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.nearby-card{background:#fff;border:1px solid rgba(17,43,33,.08);border-radius:22px;overflow:hidden;box-shadow:0 18px 38px rgba(17,43,33,.06);display:flex;flex-direction:column}
.nearby-card__image-wrap{position:relative;aspect-ratio:16 / 10;overflow:hidden;background:#e7e5df}
.nearby-card__image-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.nearby-card__body{padding:1.2rem 1.1rem 1.15rem;display:flex;flex-direction:column;flex:1}
.nearby-card__tag{display:inline-block;padding:.38rem .68rem;border-radius:999px;background:rgba(32,78,55,.08);color:var(--primary);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.nearby-card__body h3{margin:.9rem 0 .35rem;font-size:1.45rem;line-height:1.25;color:#1f2937}
.nearby-card__meta{margin:0;color:#3b4b41;font-size:.88rem;font-weight:600}
.nearby-card__description{margin:0.9rem 0 1.15rem;color:rgba(31,41,55,.72);line-height:1.7;flex:1}
.nearby-card__button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1rem;border-radius:10px;background:#204E37;color:#fff;text-decoration:none;font-weight:600;transition:transform .2s ease, background .2s ease}
.nearby-card__button:hover{transform:translateY(-1px);background:#163a2d;color:#fff}
.pill-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.2rem}
.pill{display:inline-block;background:rgba(32,78,55,.08);color:var(--primary);padding:.5rem .9rem;border-radius:999px;font-weight:600}

@media (max-width: 900px){
  .contact-grid{grid-template-columns:1fr}
  .gallery-grid,.gallery-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-layout{padding:0 18px}
}

@media (max-width: 600px){
  .gallery-grid,.gallery-preview-grid{grid-template-columns:1fr}
  .gallery-header{flex-direction:column;align-items:flex-start}
  .gallery-layout{padding:0 16px}
}

/* Footer */
footer{font-size:.9rem}

/* Lightbox */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.82);display:none;align-items:center;justify-content:center;z-index:2000;padding:2rem;backdrop-filter:blur(6px)}
.lightbox.open{display:flex}
.lightbox-content{position:relative;max-width:82vw;max-height:82vh;padding:0.35rem;border-radius:18px;background:rgba(255,255,255,.06);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.lightbox-content img{max-width:100%;max-height:80vh;border-radius:14px;object-fit:contain;display:block}
.lightbox-close{position:absolute;top:-18px;right:-18px;background:#fff;border:none;border-radius:50%;width:38px;height:38px;font-size:1.3rem;line-height:1;cursor:pointer;box-shadow:0 12px 24px rgba(0,0,0,.2)}

/* Utilities */
.price{font-weight:700;color:var(--primary)}

/* Small tweaks */
.bg-ghost{background:rgba(31,41,55,.03)}

/* Accessibility focus */
a:focus{outline:3px solid rgba(212,164,91,.25);outline-offset:2px}
