/* ── NAV — v2 chrome (spec §5/§6; reference: home-v2b.html) ──
   Mobile-first: burger + dropdown panel below 768px, inline links above. */
nav{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:12px 16px;
  background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);
  flex-shrink:0;position:relative;z-index:50;}
.logo{font-family:var(--sans);font-size:1.2rem;font-weight:900;letter-spacing:-.02em;color:var(--ink);cursor:pointer;white-space:nowrap;}
.logo b{color:var(--fairway);}
.nav-burger{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 auto;
  border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);cursor:pointer;}
.nav-burger svg{width:20px;height:20px;}
nav ul{display:none;list-style:none;}
nav.menu-open ul{display:flex;flex-direction:column;align-items:stretch;gap:2px;
  position:absolute;top:100%;left:0;right:0;background:var(--paper);
  border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:10px 16px 16px;z-index:60;}
nav ul li{cursor:pointer;font-size:.86rem;font-weight:800;color:var(--slate);transition:color .15s;padding:11px 2px;}
nav.menu-open ul li{border-bottom:1px dashed var(--line);}
nav.menu-open ul li:last-child{border-bottom:none;}
nav ul li:hover{color:var(--ink);}
nav ul li.active-nav{color:var(--fairway);}
.nav-cta{background:var(--fairway)!important;color:#fff!important;padding:10px 18px;border-radius:30px;
  font-size:.86rem;font-weight:800!important;transition:background .18s;text-align:center;}
.nav-cta:hover{background:var(--fairway-2)!important;}
nav.menu-open .nav-cta{margin-top:8px;}
.nav-cta-ghost{border:none!important;color:var(--ink)!important;padding:10px 2px!important;
  border-radius:30px!important;font-weight:800!important;transition:color .15s!important;}
.nav-cta-ghost:hover{color:var(--fairway)!important;}
.nav-avatar{width:36px;height:36px;border-radius:10px;background:var(--fairway);color:#fff;font-weight:800;
  font-size:.8rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;}
.nav-locked{opacity:.4;cursor:not-allowed!important;pointer-events:none;}
@media(min-width:768px){
  nav{padding:13px 28px;}
  .nav-burger{display:none;}
  nav ul, nav.menu-open ul{display:flex;flex-direction:row;align-items:center;gap:20px;
    position:static;background:none;border-bottom:none;box-shadow:none;padding:0;}
  nav.menu-open ul li{border-bottom:none;}
  nav ul li{padding:4px 0;}
  nav.menu-open .nav-cta{margin-top:0;}
  .nav-cta-ghost{padding:10px 12px!important;}
}
@media(min-width:980px){
  nav{padding:13px 36px;}
}

/* ── FOOTER — v2 chrome (ink band; markup normalised to .site-footer) ── */
.site-footer{background:var(--ink);color:rgba(255,255,255,.65);padding:30px 16px;font-size:.8rem;font-weight:600;}
.site-footer span[onclick]{cursor:pointer;transition:color .15s;}
.site-footer span[onclick]:hover{color:#fff;}
.footer-brand{font-family:var(--sans);font-size:1.15rem;font-weight:900;letter-spacing:-.02em;color:#fff;margin-bottom:4px;}
.footer-brand b{color:var(--green3);}
@media(min-width:768px){
  .site-footer{padding:36px 28px;}
}

.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);color:#d8f3dc;font-size:.78rem;font-weight:700;padding:6px 14px;border-radius:30px;margin-bottom:18px;}
.btn-white{background:#fff;color:var(--ink);padding:13px 26px;border:none;border-radius:30px;font-family:var(--sans);font-size:.9rem;font-weight:800;cursor:pointer;transition:transform .08s,box-shadow .2s;box-shadow:0 4px 16px rgba(20,33,27,.18);}
.btn-white:hover{box-shadow:0 8px 24px rgba(20,33,27,.24);}
.btn-white:active{transform:translateY(1px);}
.btn-ghost{background:transparent;color:#fff;padding:12px 26px;border:1px solid rgba(255,255,255,.45);border-radius:30px;font-family:var(--sans);font-size:.9rem;font-weight:800;cursor:pointer;transition:border-color .2s;}
.btn-ghost:hover{border-color:#fff;}

/* ── SEARCH BOX + CHIPS (shared; used by #homeSearch) ── */
.search-box{display:flex;gap:10px;flex-wrap:wrap;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;box-shadow:var(--shadow);margin-bottom:14px;align-items:center;}
.search-box input,.search-box select{border:none;outline:none;font-family:var(--sans);font-size:.9rem;font-weight:700;color:var(--ink);background:transparent;flex:1;min-width:120px;}
.search-box input::placeholder{color:var(--slate);font-weight:600;}
.sdiv{width:1px;background:var(--line);align-self:stretch;}
.search-go{background:var(--fairway);color:#fff;border:none;padding:11px 22px;border-radius:30px;font-family:var(--sans);font-size:.86rem;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .18s;}
.search-go:hover{background:var(--fairway-2);}
.chips{display:flex;gap:8px;flex-wrap:wrap;}
.chip{padding:8px 15px;border-radius:30px;border:1px solid var(--line);background:var(--paper);font-size:.8rem;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-weight:800;}
.chip:hover{border-color:var(--slate);}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink);}

/* ── COACH CARDS (shared grid; #coachGrid) ── */
.sec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:22px;}
.sec-head h3{font-family:'Lora',serif;font-size:1.3rem;}
.sec-head a{color:var(--fairway);font-size:.82rem;font-weight:800;cursor:pointer;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;}
.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer;box-shadow:var(--shadow);transition:transform .12s,box-shadow .12s;}
.card:hover{transform:translateY(-2px);box-shadow:0 2px 4px rgba(20,33,27,.05),0 14px 32px rgba(20,33,27,.1);}
.card-top{height:90px;position:relative;}
.card-pat{position:absolute;inset:0;opacity:.06;background-image:radial-gradient(circle,#fff 1px,transparent 1px);background-size:16px 16px;}
.avatar{width:54px;height:54px;border-radius:50%;border:3px solid #fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.1rem;color:#fff;position:absolute;bottom:-22px;left:16px;box-shadow:0 4px 12px rgba(0,0,0,.18);}
/* .badge (gold card corner) deleted in R3-pricing — R3-search removed the last markup that emitted it; --gold stays ratings-only per the design system. */
.card-body{padding:32px 16px 14px;}
.cname{font-family:var(--sans);font-weight:800;font-size:1rem;margin-bottom:3px;}
.ctitle{font-size:.78rem;color:var(--slate);font-weight:600;margin-bottom:8px;}
.cloc{font-size:.8rem;color:var(--ink);font-weight:700;margin-bottom:9px;}
.tags{display:flex;flex-wrap:wrap;gap:6px;}
.tag{font-size:.72rem;padding:4px 10px;border-radius:20px;border:1px solid var(--line);color:var(--slate);font-weight:700;}
.card-foot{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;border-top:1px solid var(--line);}
.stars{font-size:.78rem;color:var(--slate);display:flex;align-items:center;gap:3px;}
.s{color:var(--flag);}
.price{font-family:var(--mono);font-feature-settings:"tnum";font-weight:500;font-size:1.02rem;}
.price small{font-family:var(--sans);font-size:.72rem;color:var(--slate);font-weight:700;}
.book-btn{background:var(--fairway);color:#fff;border:none;padding:8px 16px;border-radius:30px;font-family:var(--sans);font-size:.78rem;font-weight:800;cursor:pointer;transition:background .18s;}
.book-btn:hover{background:var(--fairway-2);}

