:root{
  --cream:#FFF8EC;
  --paper:#FFFFFF;
  --ink:#2E2A3D;
  --ink-soft:#5C5470;
  --sky:#2FA8E0;
  --sky-dark:#1E86B8;
  --sun:#FFC64B;
  --coral:#FF6F59;
  --coral-dark:#E8543F;
  --grass:#4FBE8C;
  --mint:#EAFBF3;
  --muted:#EDE8DD;
  --radius-lg:32px;
  --radius-md:20px;
  --shadow:0 14px 34px -14px rgba(46,42,61,.22);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{
  margin:0;
  font-family:'Vazirmatn','IRANSans',Tahoma,'Segoe UI',sans-serif;
  background:var(--cream);
  color:var(--ink);
  line-height:1.9;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
section{padding:80px 6vw;position:relative;}
.container{max-width:1180px;margin:0 auto;}

.eyebrow{
  display:inline-flex;align-items:center;gap:6px;
  font-weight:700;font-size:.85rem;color:var(--coral-dark);
  background:rgba(255,111,89,.1);
  padding:6px 16px;border-radius:999px;margin-bottom:14px;
}
.section-head{max-width:640px;margin:0 auto 44px;text-align:center;}
.section-head h2{margin-bottom:12px;}
.section-head p{margin:0 auto;}
h1,h2,h3{font-family:'Vazirmatn',sans-serif;font-weight:800;color:var(--sky-dark);margin:0 0 .5em;}
h2{font-size:clamp(1.7rem,3vw,2.4rem);}
h3{font-size:1.15rem;color:var(--ink);}
p{color:var(--ink-soft);}
.lede{font-size:1.05rem;max-width:640px;}
.hl{
  background-image:linear-gradient(120deg, var(--sun) 0%, var(--sun) 100%);
  background-repeat:no-repeat;background-size:100% 42%;background-position:0 88%;
  padding:0 4px;color:var(--ink);
}

/* ================= HEADER & NAV 2026 ================= */
.modern-header {
  position: sticky; top: 0; z-index: 100;
  background: rgba(255, 248, 236, 0.85);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.03);
}

.nav-wrap {
  max-width: 1180px;
  margin: 0 auto;
  padding: 16px 6vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 76px;
}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--sky-dark);font-size:1.25rem;flex-shrink:0;}
.logo i{color:var(--coral);font-size:1.7rem;}

.glass-nav ul{display:flex;align-items:center;gap:26px;font-weight:600;color:var(--ink);}
.glass-nav a{padding:6px 2px;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;}
.glass-nav a:hover{border-color:var(--coral); color: var(--coral);}
.glass-nav .nav-cta{display:none;}
.nav-close{display:none;}
.nav-backdrop{display:none;}

.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.cta-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--coral);color:#fff;font-weight:700;
  padding:13px 26px;border-radius:999px;border:none;cursor:pointer;
  box-shadow:0 10px 22px -8px rgba(255,111,89,.65);
  transition:transform .18s ease;
}
.cta-btn:hover{transform:translateY(-2px) rotate(-1deg);}
.cta-btn.outline{background:transparent;color:var(--sky-dark);border:2px solid var(--sky);box-shadow:none;}

/* دکمه‌ی همبرگری — همیشه یه‌جا و یه شکل ثابت می‌مونه، فقط خطوطش تبدیل به ضربدر می‌شن */
.modern-toggle {
  display: none; align-items:center; justify-content: center; flex-direction: column; gap: 5px;
  width: 46px; height: 46px; border-radius: 16px; flex-shrink:0;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(47, 168, 224, 0.2);
  box-shadow: 0 4px 15px rgba(47, 168, 224, 0.1);
  cursor: pointer; transition: background 0.2s ease;
  position: relative; z-index: 101;
}
.modern-toggle .hamburger-line {
  width: 20px; height: 2px; background: var(--sky-dark);
  border-radius: 2px; transition: transform 0.35s ease, opacity 0.25s ease;
}
.modern-toggle.is-active .hamburger-line:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.modern-toggle.is-active .hamburger-line:nth-child(2) { opacity: 0; }
.modern-toggle.is-active .hamburger-line:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ---------- منوی موبایل: یه پنل تمام‌عرض که دقیقاً زیر خودِ هدر باز می‌شه ---------- */
@media (max-width: 1024px) {
  .modern-toggle { display: flex; }
  .header-actions > .cta-btn { display: none; }

  .nav-backdrop{
    display:block;
    position:fixed;inset:0;background:rgba(30,26,46,.4);
    opacity:0;pointer-events:none;transition:opacity .35s ease;z-index:98;
    backdrop-filter: blur(4px);
  }
  .nav-backdrop.show{opacity:1;pointer-events:auto;}

  .glass-nav {
    position: fixed; top: var(--header-h, 76px); left: 0; right: 0;
    max-height: 0; overflow: hidden;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    border-radius: 0 0 28px 28px;
    box-shadow: 0 25px 50px -20px rgba(46, 42, 61, 0.35);
    transition: max-height 0.4s cubic-bezier(.22,1,.36,1);
    z-index: 99;
  }
  .glass-nav.open { max-height: 78vh; overflow-y: auto; }

  .glass-nav ul{
    display:grid; grid-template-columns:repeat(2,1fr); gap:10px;
    padding: 20px 6vw 26px; list-style:none;
  }

  .glass-nav a {
    background: var(--mint); border-radius: 16px; padding: 16px 14px;
    display:flex; flex-direction:column; align-items:flex-start; gap:8px;
    font-size: .92rem; border-bottom: none; white-space:normal;
  }
  .glass-nav a i{font-size:1.25rem;color:var(--coral);}
  .glass-nav a:hover { background: rgba(47, 168, 224, 0.14); color: var(--sky-dark); }

  .glass-nav .nav-cta{display:block; grid-column: 1 / -1;}
}

/* ================= HERO 2026: full-bleed image with overlaid text ================= */
.hero-full{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:92vh;display:flex;align-items:flex-end;
  border-radius:0 0 44px 44px;
}
.hero-media{position:absolute;inset:0;z-index:-1;}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 32%;}
.hero-scrim{
  position:absolute;inset:0;
  background:
    linear-gradient(0deg, rgba(18,15,26,.9) 0%, rgba(18,15,26,.6) 30%, rgba(18,15,26,.05) 58%, rgba(18,15,26,.18) 100%);
}

.hero-full-content{position:relative;z-index:2;max-width:680px;padding:0 6vw 96px;color:#fff;}
.hero-full-content .hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px;}
.badge-pill{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;padding:7px 15px;border-radius:999px;}
.glass-pill-dark{
  background:rgba(255,255,255,.16);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.32);color:#fff;
}
.hero-full-content h1{
  color:#fff;font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.32;margin-bottom:20px;
  text-shadow:0 4px 26px rgba(0,0,0,.3);
}
.hero-full-content .lede{color:rgba(255,255,255,.9);font-size:1.08rem;line-height:1.85;margin-bottom:34px;}
.hero-full-content .hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}
.cta-btn.outline-light{background:rgba(255,255,255,.12);color:#fff;border:2px solid rgba(255,255,255,.55);backdrop-filter:blur(6px);}
.cta-btn.outline-light:hover{background:rgba(255,255,255,.22);}

.hero-float-badge{
  position:absolute;z-index:2;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);
  border-radius:999px;padding:12px 20px;box-shadow:var(--shadow);
  font-weight:700;font-size:.85rem;display:flex;align-items:center;gap:8px;
  color:var(--sky-dark);animation:heroFloat 4.5s ease-in-out infinite;white-space:nowrap;
}
.hero-float-badge i{font-size:1.1rem;color:var(--coral);}
.hero-float-badge.hf1{top:9%;left:7%;animation-delay:.2s;}
.hero-float-badge.hf2{top:22%;left:5%;animation-delay:1.1s;}
@keyframes heroFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}

.scroll-cue{
  position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;
  width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.14);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.35);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  animation:cueBounce 2s ease-in-out infinite;
}
@keyframes cueBounce{0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,7px);}}
@media (prefers-reduced-motion:reduce){.hero-float-badge,.scroll-cue{animation:none;}}

@media (max-width:1024px){
  .hero-media img{object-position:center 22%;}
}
@media (max-width:900px){
  .hero-full{min-height:82vh;border-radius:0 0 28px 28px;}
  .hero-full-content{max-width:100%;padding:0 6vw 64px;}
  .hero-float-badge{display:none;}
}

/* ================= REST OF THE STYLES ================= */
.photo-ph{
  border-radius:var(--radius-md);
  color:#fff;text-align:center;position:relative;
  overflow:hidden;
}
.photo-ph i{font-size:2rem;opacity:.9;}
.photo-ph span{font-size:.85rem;font-weight:600;opacity:.9;padding:0 12px;}
.photo-ph img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
}
.photo-ph:has(img) i,.photo-ph:has(img) > span:not(:has(img)){display:none;}
.photo-ph:has(img) span{padding:0;}
.photo-ph.card-photo{aspect-ratio:16/10;background:linear-gradient(140deg,var(--sky),var(--grass) 120%);border-radius:var(--radius-md) var(--radius-md) 0 0;}
.photo-ph.avatar-photo{
  aspect-ratio:1;
  border-radius:50%;
  background:linear-gradient(160deg,var(--sun),var(--coral));
  box-shadow:var(--shadow);
  width:100%;
}

.about{background:var(--paper);}
.about-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:center;}
.avatar-wrap{width:min(280px,80%);margin:0 auto;position:relative;}
.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.tag{background:var(--mint);color:var(--sky-dark);font-weight:600;font-size:.85rem;padding:8px 16px;border-radius:999px;}
.name-badge{color:var(--coral-dark);font-weight:700;margin-bottom:4px;display:block;font-size:.95rem;}

.services{background:var(--cream);}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px;}

/* ---------- کارت‌های خدمات: افکت «باز شدن جلد کتاب» ---------- */
/* From Uiverse.io by eslam-hany — با رنگ‌ها و محتوای سایت خودمون هماهنگ شده */
.card{
  position:relative;
  border-radius:var(--radius-md);
  width:100%;
  height:400px;
  background-color:var(--paper);
  box-shadow:var(--shadow);
  transform-style:preserve-3d;
  perspective:1600px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--ink);
  overflow:hidden;
}
.card .cover{
  top:0;left:0;position:absolute;
  background-color:var(--paper);
  width:100%;height:100%;
  border-radius:var(--radius-md);
  cursor:pointer;
  transition:transform .5s ease;
  transform-origin:0;
  box-shadow:var(--shadow);
  overflow:hidden;
  border-top:5px solid var(--accent,var(--coral));
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.card:nth-child(1){--accent:var(--coral);}
.card:nth-child(2){--accent:var(--sky);}
.card:nth-child(3){--accent:var(--sun);}
.card:nth-child(4){--accent:var(--grass);}
.card:nth-child(5){--accent:var(--coral);}
.card:nth-child(6){--accent:var(--sky);}
.card .cover img{
  width:100%;height:100%;object-fit:cover;display:block;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.card:hover .cover{transform:rotateY(-80deg);}

.card .card-body{padding:24px 26px;}
.card .icon-badge{width:44px;height:44px;border-radius:14px;background:rgba(255,111,89,.12);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.card .icon-badge i{color:var(--coral);font-size:1.1rem;}
.card p{font-size:.92rem;line-height:1.85;margin:0;}

.booking{background:var(--mint);}
.booking-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;margin-top:40px;align-items:start;}

.paziresh-banner{
  display:flex;align-items:center;gap:16px;
  background:linear-gradient(135deg,var(--sky-dark),var(--sky));
  color:#fff;border-radius:20px;padding:18px 22px;margin-top:28px;
  box-shadow:0 14px 30px -12px rgba(30,134,184,.5);
  transition:transform .18s ease;
}
.paziresh-banner:hover{transform:translateY(-2px);}
.paziresh-banner-icon{
  width:46px;height:46px;border-radius:14px;flex-shrink:0;
  background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;color:var(--sun);
}
.paziresh-banner-text{display:flex;flex-direction:column;gap:2px;flex:1;}
.paziresh-banner-text strong{font-size:.98rem;}
.paziresh-banner-text span{font-size:.85rem;color:rgba(255,255,255,.85);}
.paziresh-banner-arrow{font-size:1.1rem;color:#fff;flex-shrink:0;}
@media (max-width:640px){
  .paziresh-banner{flex-wrap:wrap;}
  .paziresh-banner-arrow{display:none;}
}
.booking .deco-5{top:8%;right:6%;position:absolute;color:var(--coral);font-size:1.6rem;opacity:.5;}
.booking .deco-6{bottom:10%;left:5%;position:absolute;color:var(--sun);font-size:1.4rem;opacity:.6;}

.booking-form{
  background:var(--paper);border-radius:var(--radius-lg);padding:32px;
  box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px;
}
.booking-form label{
  display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:700;color:var(--sky-dark);
}
.booking-form input,.booking-form select,.booking-form textarea{
  font-family:inherit;font-size:.95rem;font-weight:400;color:var(--ink);
  border:2px solid var(--mint);background:var(--cream);border-radius:14px;
  padding:11px 14px;outline:none;transition:border-color .15s ease;resize:vertical;
}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--sky);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.form-note{font-size:.78rem;color:var(--ink-soft);margin:0;}

.hours-card{
  background:var(--paper);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow);
}
.hours-card h3{display:flex;align-items:center;gap:8px;color:var(--sky-dark);font-size:1.05rem;}
.hours-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.92rem;}
.hours-table td{padding:11px 10px;border-bottom:1px solid var(--mint);color:var(--ink-soft);}
.hours-table td:first-child{font-weight:700;color:var(--ink);}
.hours-table tr:last-child td{border-bottom:none;}
.hours-table tr.is-today td{color:var(--coral-dark);font-weight:700;}
.hours-table tr.is-today{background:rgba(255,111,89,.08);border-radius:10px;}
.hours-table tr.is-closed td{color:#B9B2C6;font-style:italic;}

.media{background:var(--sky-dark);color:#fff;}
.media h2, .media .eyebrow{color:#fff;}
.media .eyebrow{background:rgba(255,255,255,.14);color:var(--sun);}
.media p.lede{color:rgba(255,255,255,.82);}
.filter-row{display:flex;gap:10px;margin:28px 0 8px;}
.filter-btn{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.25);padding:8px 20px;border-radius:999px;font-weight:600;font-size:.85rem;cursor:pointer;}
.filter-btn.is-active{background:var(--sun);border-color:var(--sun);color:var(--ink);}
.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px;}
.media-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-md);padding:24px;display:flex;flex-direction:column;gap:14px;}
.media-type{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:var(--sun);width:fit-content;}
.media-card h3{color:#fff;font-size:1.05rem;}
.media-card p{color:rgba(255,255,255,.78);font-size:.9rem;margin:0;}
.player{display:flex;align-items:center;gap:12px;background:rgba(0,0,0,.2);border-radius:999px;padding:8px 14px;}
.player button{width:34px;height:34px;border-radius:50%;background:var(--sun);border:none;display:flex;align-items:center;justify-content:center;color:var(--ink);cursor:pointer;flex-shrink:0;}
.player .track{flex:1;height:4px;border-radius:2px;background:rgba(255,255,255,.25);position:relative;overflow:hidden;}
.player .track::after{content:"";position:absolute;inset:0;width:28%;background:var(--sun);}
.read-link{font-weight:700;color:var(--sun);font-size:.88rem;display:inline-flex;align-items:center;gap:6px;}
.media-more{text-align:center;margin-top:40px;}
.cta-btn.outline-media{background:rgba(255,255,255,.1);color:#fff;border:2px solid rgba(255,255,255,.35);}
.cta-btn.outline-media:hover{background:rgba(255,255,255,.18);}

/* ================= صفحات داخلی: لیست مقالات + صفحه‌ی هر مقاله ================= */
.page-header{
  background:linear-gradient(135deg,var(--sky-dark),var(--sky));
  color:#fff;padding:120px 6vw 70px;text-align:center;
}
.page-header .eyebrow{background:rgba(255,255,255,.16);color:var(--sun);}
.page-header h1{color:#fff;font-size:clamp(1.8rem,3.5vw,2.6rem);margin-bottom:10px;}
.page-header p{color:rgba(255,255,255,.85);max-width:560px;margin:0 auto;}
.breadcrumb{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:18px;font-size:.85rem;color:rgba(255,255,255,.75);}
.breadcrumb a{color:#fff;font-weight:700;}
.breadcrumb i{font-size:.7rem;}

.articles-listing{background:var(--cream);padding:70px 6vw;}
.articles-listing .media-grid{margin-top:0;}
.articles-listing .media-card{background:var(--paper);border:1px solid rgba(46,42,61,.08);box-shadow:var(--shadow);}
.articles-listing .media-card h3{color:var(--ink);}
.articles-listing .media-card p{color:var(--ink-soft);}
.articles-listing .media-type{color:var(--coral-dark);}
.articles-listing .read-link{color:var(--sky-dark);}
.articles-listing .filter-btn{background:var(--mint);color:var(--sky-dark);border-color:transparent;}
.articles-listing .filter-btn.is-active{background:var(--coral);border-color:var(--coral);color:#fff;}

.article-page{background:var(--paper);padding:64px 6vw 90px;}
.article-body{max-width:720px;margin:0 auto;}
.article-body .article-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;}
.article-body h1{font-size:clamp(1.7rem,3.2vw,2.3rem);margin-bottom:20px;line-height:1.5;}
.article-body h2{font-size:1.3rem;color:var(--sky-dark);margin-top:42px;margin-bottom:14px;}
.article-body p{font-size:1.02rem;line-height:2;color:var(--ink-soft);margin-bottom:18px;}
.article-body ul{margin:0 0 22px;padding-inline-start:22px;}
.article-body ul li{font-size:1rem;line-height:1.95;color:var(--ink-soft);margin-bottom:10px;list-style:none;position:relative;padding-inline-start:26px;}
.article-body ul li::before{
  content:"\f303";font-family:"Font Awesome 6 Free";font-weight:900;
  position:absolute;right:0;top:2px;color:var(--coral);font-size:.85rem;
}
.article-cta{
  margin-top:48px;background:var(--mint);border-radius:var(--radius-md);
  padding:28px;text-align:center;
}
.article-cta h3{color:var(--sky-dark);margin-bottom:8px;}
.article-cta p{margin-bottom:20px;}
.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--sky-dark);font-weight:700;margin-bottom:30px;}

.quotes{background:var(--cream);}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px;}
.quote-card{background:var(--paper);border-radius:var(--radius-md);padding:26px;box-shadow:var(--shadow);position:relative;}
.quote-card i{color:var(--sun);font-size:1.3rem;margin-bottom:10px;display:block;}
.quote-card p{font-size:.93rem;margin-bottom:14px;}
.quote-name{font-weight:700;color:var(--sky-dark);font-size:.85rem;}

.contact{background:var(--paper);}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;}
.info-row{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px;}
.info-row .icon-badge{width:44px;height:44px;border-radius:14px;background:var(--mint);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.info-row .icon-badge i{color:var(--sky-dark);font-size:1.05rem;}
.info-row strong{display:block;color:var(--sky-dark);margin-bottom:2px;}
.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:8px;}
.social-btn{display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:14px;background:var(--cream);font-weight:700;font-size:.88rem;color:var(--ink);border:1px solid rgba(46,42,61,.08);}
.social-btn i{color:var(--coral);font-size:1.05rem;}
.map-card{
  background:var(--paper);border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:var(--shadow);display:flex;flex-direction:column;
}
.map-embed{position:relative;width:100%;aspect-ratio:16/10;background:var(--mint);}
.map-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.map-info{padding:26px 26px 28px;display:flex;flex-direction:column;gap:18px;}
.map-info-top{display:flex;align-items:flex-start;gap:14px;}
.map-pin{
  width:44px;height:44px;border-radius:14px;flex-shrink:0;
  background:rgba(255,111,89,.12);display:flex;align-items:center;justify-content:center;
}
.map-pin i{font-size:1.15rem;color:var(--coral);}
.map-info h3.location{font-size:1.05rem;color:var(--sky-dark);margin:0 0 4px;}
.map-info p.location{font-size:.9rem;color:var(--ink-soft);margin:0;}
.map-chips{display:flex;flex-wrap:wrap;gap:10px;}
.map-chip{
  display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;
  background:var(--mint);color:var(--sky-dark);padding:7px 14px;border-radius:999px;
}
.map-chip i{font-size:.85rem;color:var(--grass);}
.locationbtn{align-self:flex-start;}

footer{background:var(--ink);color:rgba(255,255,255,.75);padding:40px 6vw 26px;}
.footer-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;max-width:1180px;margin:0 auto;}
.footer-row .logo{color:#fff;}
.footer-social{display:flex;gap:16px;}
.footer-social i{font-size:1.15rem;color:var(--sun);}
.footer-note{text-align:center;font-size:.8rem;margin-top:24px;color:rgba(255,255,255,.5);}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
.reveal.in-view{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;} html{scroll-behavior:auto;}}

/* ================= RESPONSIVE ADJUSTMENTS ================= */

@media (max-width:900px){
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:36px;}
  .card-grid,.media-grid,.quote-grid{grid-template-columns:1fr 1fr;}
  .social-grid{grid-template-columns:1fr 1fr;}
  .booking-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
}

@media (max-width:640px){
  .card-grid,.media-grid,.quote-grid,.social-grid{grid-template-columns:1fr;}
  section{padding:60px 6vw;}
  .sticker{display:none;} /* Hiding stickers on very small screens for clean UX */
  .hero-card { padding: 40px 24px; gap: 32px;}
  .hero h1 { font-size: 2rem; }
}
