/* ============================================================
   pages.css — page-specific & home section styles
   ============================================================ */

/* ---------- HERO ---------- */
.hero{position:relative;overflow:hidden;padding-top:calc(var(--header-h) + 3.5rem);padding-bottom:clamp(3rem,5vw,6rem);background:
  radial-gradient(1200px 600px at 85% -10%,rgba(0,198,184,.10),transparent 60%),
  radial-gradient(900px 500px at 0% 10%,rgba(0,87,255,.08),transparent 55%),var(--white)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,4rem);align-items:center;position:relative;z-index:2}
.hero-copy h1{margin:1.1rem 0 1.2rem;font-size:var(--fs-hero)}
.hero-copy .lead{max-width:46ch}
.hero-actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}
.hero-trust{display:flex;align-items:center;gap:1rem;margin-top:2.2rem}
.hero-trust .avatars{display:flex}
.hero-trust .avatars span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:.8rem;color:#fff;background:var(--grad-brand);border:3px solid #fff;margin-left:-12px;box-shadow:var(--sh-sm)}
.hero-trust .avatars span:first-child{margin-left:0}
.hero-trust b{display:block;color:var(--navy);font-family:var(--font-display)}
.hero-trust span{font-size:.85rem;color:var(--muted)}

.hero-visual{position:relative}
.hero-img{position:relative;border-radius:var(--r-2xl);overflow:hidden;box-shadow:var(--sh-lg);aspect-ratio:7/8}
.hero-img img{width:100%;height:100%;object-fit:cover}
.float-card{position:absolute;display:flex;align-items:center;gap:.85rem;padding:.9rem 1.1rem;border-radius:var(--r-lg);box-shadow:var(--sh-lg);animation:floaty 6s var(--ease) infinite}
.fc-appt{top:8%;left:-6%;max-width:280px}
.fc-stat{bottom:9%;right:-6%;animation-delay:1.5s}
.float-card .fc-ic{width:42px;height:42px;border-radius:12px;background:var(--grad-brand-soft);color:var(--blue);display:grid;place-items:center;flex-shrink:0}
.float-card .fc-ic svg{width:22px;height:22px}
.float-card b{display:block;font-family:var(--font-display);font-size:.92rem;color:var(--navy);line-height:1.2}
.float-card span{font-size:.76rem;color:var(--muted)}
.fc-btn{width:36px;height:36px;border-radius:10px;background:var(--grad-brand);color:#fff;display:grid;place-items:center;flex-shrink:0}
.fc-btn svg{width:18px;height:18px}
.fc-ring{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--blue),var(--teal),var(--blue));flex-shrink:0}
.fc-ring b{background:#fff;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:.95rem;color:var(--navy)}
.float-chip{position:absolute;top:46%;right:-4%;display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:700;font-family:var(--font-display);color:var(--navy);padding:.55rem 1rem;border-radius:var(--r-pill);box-shadow:var(--sh-md);animation:floaty 7s var(--ease) infinite;animation-delay:.8s}
.float-chip .pulse{width:9px;height:9px;border-radius:50%;background:#ff4d57;box-shadow:0 0 0 0 rgba(255,77,87,.6);animation:pulse 1.8s infinite}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,77,87,.6)}70%{box-shadow:0 0 0 12px rgba(255,77,87,0)}100%{box-shadow:0 0 0 0 rgba(255,77,87,0)}}
@media(prefers-reduced-motion:reduce){.float-card,.float-chip{animation:none}}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{max-width:480px;margin-inline:auto;margin-top:1rem}
  .fc-appt{left:0}.fc-stat{right:0}
}

/* ---------- Features ---------- */
.feat-section{margin-top:-2rem}

/* ---------- About split ---------- */
.about-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.about-media{position:relative}
.am-main{width:100%;border-radius:var(--r-2xl);box-shadow:var(--sh-lg);object-fit:cover;aspect-ratio:8/9}
.am-badge{position:absolute;bottom:-1.2rem;right:-1.2rem;padding:1.2rem 1.5rem;border-radius:var(--r-lg);box-shadow:var(--sh-lg);text-align:center}
.am-badge b{font-family:var(--font-display);font-weight:800;font-size:1.9rem;color:var(--blue);display:block;line-height:1}
.am-badge span{font-size:.8rem;color:var(--muted)}
.about-copy h2{margin:1rem 0 1.1rem}
.check-list{display:flex;flex-direction:column;gap:.85rem;margin:1.6rem 0}
.check-list li{display:flex;align-items:flex-start;gap:.7rem;font-weight:500;color:var(--ink)}
.check-list li svg{width:22px;height:22px;color:var(--teal);flex-shrink:0;margin-top:.15rem}
.about-actions{display:flex;gap:.8rem;flex-wrap:wrap}
@media(max-width:820px){.about-split{grid-template-columns:1fr}.am-badge{right:1rem}}

/* ---------- Stats band ---------- */
.stats-band{position:relative;overflow:hidden;background:var(--grad-navy);color:#fff;border-radius:0}

/* ---------- Experience ---------- */
.exp-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.exp-copy h2{margin:1rem 0 1rem}
.exp-list{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1.8rem}
.exp-item{padding:1.1rem 1.2rem;background:var(--gray-50);border-radius:var(--r-md);border:1px solid var(--gray-200)}
.exp-item b{display:block;font-family:var(--font-display);color:var(--navy);margin-bottom:.25rem}
.exp-item span{font-size:.86rem;color:var(--muted)}
.exp-media{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.exp-media img{width:100%;border-radius:var(--r-lg);box-shadow:var(--sh-md);object-fit:cover;height:100%}
.exp-wide{grid-column:1/-1;aspect-ratio:3/1}
@media(max-width:820px){.exp-grid{grid-template-columns:1fr}}
@media(max-width:480px){.exp-list{grid-template-columns:1fr}}

/* ---------- Awards ---------- */
.awards-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;padding:1.8rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--r-xl)}
.award{display:flex;align-items:center;gap:.9rem}
.award .ic{width:50px;height:50px;border-radius:14px;background:#fff;box-shadow:var(--sh-sm);display:grid;place-items:center;color:var(--blue);flex-shrink:0}
.award .ic svg{width:24px;height:24px}
.award b{display:block;font-family:var(--font-display);color:var(--navy);font-size:.98rem}
.award span{font-size:.8rem;color:var(--muted)}
@media(max-width:760px){.awards-row{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.awards-row{grid-template-columns:1fr}}

/* ---------- Generic interior intro ---------- */
.intro-split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,4rem);align-items:center}
@media(max-width:860px){.intro-split{grid-template-columns:1fr}}
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
@media(max-width:640px){.mv-grid{grid-template-columns:1fr}}
.mv-card{padding:2rem 1.8rem;border-radius:var(--r-xl);border:1px solid var(--gray-200);background:#fff;box-shadow:var(--sh-sm)}
.mv-card .ic{width:54px;height:54px;border-radius:15px;background:var(--grad-brand);color:#fff;display:grid;place-items:center;margin-bottom:1.1rem;box-shadow:var(--sh-blue)}
.mv-card .ic svg{width:26px;height:26px}

/* Leadership grid */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.team-card{padding:1.6rem 1.4rem;text-align:center;border-radius:var(--r-xl);border:1px solid var(--gray-200);background:#fff;box-shadow:var(--sh-sm);transition:transform .35s var(--ease),box-shadow .35s}
.team-card:hover{transform:translateY(-6px);box-shadow:var(--sh-md)}
.team-avatar{width:96px;height:96px;border-radius:50%;margin:0 auto 1rem;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:1.4rem;color:#fff;background:var(--grad-brand);box-shadow:var(--sh-blue);overflow:hidden}
.team-avatar img{width:100%;height:100%;object-fit:cover}
.team-card b{font-family:var(--font-display);color:var(--navy);font-size:1.02rem;display:block}
.team-card span{font-size:.84rem;color:var(--blue);font-weight:600}
@media(max-width:900px){.team-grid{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.team-grid{grid-template-columns:1fr}}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,3rem);align-items:start}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr}}
.info-card{display:flex;gap:1rem;padding:1.4rem;border:1px solid var(--gray-200);border-radius:var(--r-lg);background:#fff;box-shadow:var(--sh-xs);margin-bottom:1rem}
.info-card .ic{width:48px;height:48px;border-radius:13px;background:var(--grad-brand-soft);color:var(--blue);display:grid;place-items:center;flex-shrink:0}
.info-card .ic svg{width:24px;height:24px}
.info-card b{font-family:var(--font-display);color:var(--navy);display:block;margin-bottom:.2rem}
.info-card span,.info-card a{font-size:.92rem;color:var(--muted);display:block}
.info-card a:hover{color:var(--blue)}
.map-embed{width:100%;border:0;border-radius:var(--r-xl);box-shadow:var(--sh-md);min-height:300px;filter:grayscale(.2)}
.form-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--r-2xl);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--sh-md)}

/* Comments */
.comment{display:flex;gap:1rem;padding:1.2rem 0;border-bottom:1px solid var(--gray-100)}
.comment .cav{width:46px;height:46px;border-radius:50%;background:var(--grad-brand);color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;flex-shrink:0}
.comment b{font-family:var(--font-display);color:var(--navy)}
.comment .cdate{font-size:.78rem;color:var(--muted-2);margin-left:.5rem}

/* Care pillars (service page) */
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-top:1.5rem}
@media(max-width:560px){.pillars{grid-template-columns:1fr}}
.pillar{display:flex;gap:.9rem;padding:1.2rem;border-radius:var(--r-md);background:var(--gray-50);border:1px solid var(--gray-200)}
.pillar .ic{width:42px;height:42px;border-radius:12px;background:#fff;color:var(--blue);display:grid;place-items:center;box-shadow:var(--sh-xs);flex-shrink:0}
.pillar .ic svg{width:22px;height:22px}
.pillar b{font-family:var(--font-display);color:var(--navy);font-size:.95rem;display:block;margin-bottom:.2rem}
.pillar span{font-size:.84rem;color:var(--muted)}

.service-hero-img{width:100%;border-radius:var(--r-2xl);overflow:hidden;box-shadow:var(--sh-lg);margin-bottom:2rem;aspect-ratio:16/8}
.service-hero-img img{width:100%;height:100%;object-fit:cover}
.treat-list{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1.5rem 0}
@media(max-width:560px){.treat-list{grid-template-columns:1fr}}
.treat-list li{display:flex;align-items:flex-start;gap:.6rem;font-weight:500;color:var(--ink);font-size:.95rem}
.treat-list li svg{width:20px;height:20px;color:var(--teal);flex-shrink:0;margin-top:.15rem}

/* Article hero */
.article-hero-img{width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:var(--r-2xl);box-shadow:var(--sh-lg);margin-bottom:2.2rem}
