/* Health Matters - interior pages + mobile refinements */

/* two-column split (condition/contact pages) */
.split{display:grid;grid-template-columns:1.6fr .9fr;gap:48px;align-items:start;}
.split-even{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}

/* booking sidebar card */
.book-card{background:var(--ink);color:var(--text-light);border-radius:var(--radius-lg);
  padding:28px;position:sticky;top:96px;}
.book-card h3{color:var(--text-light);margin-bottom:.3rem;}
.book-card .sub{color:var(--text-light-2);font-size:.92rem;margin-bottom:1.2rem;}
.book-card .btn{width:100%;justify-content:center;margin-bottom:10px;}
.book-card .row{display:flex;gap:10px;align-items:flex-start;color:var(--text-light-2);
  font-size:.9rem;margin-top:14px;}
.book-card .row i{color:var(--gold);font-size:18px;margin-top:1px;}
.book-card .row a{color:var(--text-light);}
.book-card .row a:hover{color:var(--gold);}

/* credentials list (about) */
.cred{list-style:none;padding:0;margin:1.2rem 0 0;display:grid;gap:10px;}
.cred li{display:flex;gap:11px;align-items:flex-start;color:var(--text-dark-2);font-size:.96rem;}
.cred li i{color:var(--gold-dark);font-size:19px;margin-top:2px;}

/* section group label spacing on services */
.group + .group{margin-top:56px;}

/* map */
.map-frame{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--card-border);}
.map-frame iframe{display:block;width:100%;height:320px;border:0;}

/* portrait, about size */
.portrait-lg{aspect-ratio:4/5;max-width:380px;}

@media(max-width:860px){
  .split,.split-even{grid-template-columns:1fr;gap:30px;}
  .book-card{position:static;}
  .portrait-lg{max-width:100%;}
}

/* ===== mobile best practices ===== */
@media(max-width:620px){
  /* comfortable, single-column reading */
  .container{padding:0 18px;}
  h2{font-size:1.55rem;}
  .lead{font-size:1rem;}

  /* full-width, thumb-friendly buttons */
  .hero-actions,.cta-inner .hero-actions{flex-direction:column;align-items:stretch;width:100%;}
  .hero-actions .btn{width:100%;justify-content:center;min-height:50px;}
  .cta-inner{flex-direction:column;align-items:flex-start;}
  .cta-inner .hero-actions{margin-top:6px;}

  /* bigger tap targets */
  .nav-links.open a{min-height:48px;display:flex;align-items:center;font-size:1.05rem;}
  .chip{padding:12px 18px;}
  .btn{min-height:48px;}

  /* keep content clear of the sticky action bar + iOS home indicator */
  body{padding-bottom:64px;}
  .mobile-bar{padding-bottom:env(safe-area-inset-bottom);}
  .mobile-bar a{min-height:52px;}

  /* tighten hero portrait so the message + CTA stay above the fold */
  .portrait{min-height:280px;aspect-ratio:1/1;}

  /* prose breathing room */
  .prose h2{font-size:1.4rem;}

  /* form fills the screen width */
  .form-wrap iframe{min-height:820px;}
  .map-frame iframe{height:260px;}
}

/* photo cards (conditions) */
.photo-card{background:#fff;border:1px solid var(--card-border);border-radius:12px;overflow:hidden;
  display:flex;flex-direction:column;text-decoration:none;color:inherit;
  transition:transform .15s ease,box-shadow .2s ease;}
.photo-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
.photo-card .ph{width:100%;height:190px;object-fit:cover;display:block;}
.photo-card .pc-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1;}
.photo-card h3{margin-bottom:.35rem;}
.photo-card p{color:var(--text-dark-2);font-size:.95rem;flex:1;margin:0;}
.photo-card .more{margin-top:14px;color:var(--gold-dark);font-weight:500;font-size:.9rem;display:flex;align-items:center;gap:6px;}
/* keep card titles dark even inside dark (section-ink) sections */
.photo-card h3,.section-ink .photo-card h3{color:var(--text-dark);}
.photo-card p,.section-ink .photo-card p{color:var(--text-dark-2);}

/* banners */
.cond-banner{width:100%;height:300px;object-fit:cover;border-radius:12px;margin-bottom:1.6rem;}
.svc-banner{width:100%;height:340px;object-fit:cover;border-radius:var(--radius-lg);margin-bottom:40px;}

@media(max-width:620px){
  .cond-banner{height:210px;}
  .svc-banner{height:210px;margin-bottom:28px;}
  .photo-card .ph{height:200px;}
}

/* avoid mobile-zoom on any native inputs we add */
input,select,textarea{font-size:16px;}
/* never allow sideways scroll */
html,body{overflow-x:hidden;}

/* placeholder media tile (card/banner awaiting a real photo) */
.ph-ph{display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--gold);}
.ph-ph i{font-size:46px;}
.svc-banner.ph-ph{height:340px;}

/* nav dropdowns */
.nav-links > li.has-dd{position:relative;}
.nav-links .dd-top i{font-size:14px;vertical-align:-1px;margin-left:3px;}
.nav-links > li.has-dd::after{content:"";display:none;position:absolute;top:100%;left:0;right:0;height:14px;}
.nav-links > li.has-dd:hover::after{display:block;}
.nav-links .dd{list-style:none;margin:0;padding:8px;position:absolute;top:calc(100% + 12px);left:0;
  min-width:250px;max-height:70vh;overflow:auto;background:var(--ink-2);border:1px solid var(--line-dark);
  border-radius:12px;display:none;flex-direction:column;gap:2px;box-shadow:0 20px 44px rgba(0,0,0,.42);z-index:70;}
.nav-links > li.has-dd:hover .dd{display:flex;}
.nav-links .dd a{color:#C9CDD4;font-size:.88rem;padding:9px 12px;border-radius:8px;white-space:nowrap;display:block;}
.nav-links .dd a:hover{background:var(--ink);color:var(--gold);}

/* mini service cards (converted from the old chips) */
.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:1rem;}
.mini-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--card-border);
  border-radius:10px;padding:13px 15px;color:inherit;text-decoration:none;font-weight:500;font-size:.95rem;
  transition:border-color .15s,transform .15s;}
.mini-card:hover{border-color:var(--gold);transform:translateY(-2px);}
.mini-card i{color:var(--gold-dark);font-size:24px;flex-shrink:0;}

@media(max-width:620px){
  .mini-grid{grid-template-columns:1fr;}
}
@media(max-width:900px){
  .nav-links > li.has-dd::after{display:none;}
  /* mobile: dropdowns become tap-to-expand accordions showing each page */
  .nav-links .dd{position:static;background:transparent;border:none;box-shadow:none;
    padding:2px 0 8px 16px;min-width:0;max-height:none;gap:2px;}
  .nav-links li.has-dd:not(.dd-open) .dd{display:none !important;}
  .nav-links li.has-dd.dd-open .dd{display:flex !important;}
  .nav-links .dd-top{display:inline-flex;align-items:center;}
  .nav-links .dd-top i{transition:transform .2s ease;}
  .nav-links li.has-dd.dd-open .dd-top i{transform:rotate(180deg);}
  .nav-links .dd a{color:#C9CDD4;padding:10px 0;font-size:1rem;min-height:44px;display:flex;align-items:center;}
}

/* accolade / award */
.award-wrap{display:flex;justify-content:center;}
.award-wrap img{max-width:300px;width:100%;border-radius:12px;box-shadow:0 18px 40px rgba(13,17,23,.18);}

/* service video (SoftWave) */
.svc-video{width:100%;border-radius:12px;margin-bottom:1.4rem;display:block;background:#000;}
