/* Athletic Edge PT — static handoff stylesheet
   Tokens, site chrome (utility bar, header + dropdowns, drawer, CTA band, footer)
   and the generated hover utilities. Page bodies carry inline styles; see README.md. */

:root{
  --ae-navy:#1F263E;
  --ae-navy-deep:#151b30;
  --ae-teal:#006B78;
  --ae-lime:#CEE985;
  --ae-ink:#262626;
  --ae-ink-soft:#3d4353;
  --ae-mist:#F4F6F5;
  --ae-rule:#e3e7e6;
  --ae-wrap:1240px;
  --ae-gutter:clamp(20px,5vw,64px);
}

*{box-sizing:border-box}
html{scroll-padding-top:140px}
body{margin:0;font-family:Roboto,Helvetica,Arial,sans-serif;color:var(--ae-ink);background:#fff;text-wrap:pretty;-webkit-font-smoothing:antialiased}
a{color:var(--ae-teal)}
a:hover{color:var(--ae-navy)}
:focus-visible{outline:3px solid var(--ae-lime);outline-offset:2px}
img,svg{max-width:100%}
h1,h2,h3{overflow-wrap:break-word}
.ae-wrap{max-width:var(--ae-wrap);margin:0 auto;padding:clamp(48px,7vw,88px) var(--ae-gutter)}
@keyframes aeHeroDrift{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.14) translate3d(-1.5%,-1%,0)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Buttons */
.ae-btn{display:flex;align-items:center;min-height:44px;padding:0 20px;text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.ae-btn--lime{background:var(--ae-lime);color:var(--ae-navy)}
.ae-btn--lime:hover{background:#fff;color:var(--ae-navy)}
.ae-btn--teal{background:var(--ae-teal);color:#fff}
.ae-btn--teal:hover{background:var(--ae-navy);color:#fff}

/* Utility bar (housekeeping nav) */
.ae-util{background:var(--ae-navy-deep)}
.ae-util__bar{max-width:var(--ae-wrap);margin:0 auto;padding:0 var(--ae-gutter);display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:0 20px;font-size:13px;font-weight:500;letter-spacing:.02em}
.ae-util__link{display:flex;align-items:center;min-height:40px;color:rgba(255,255,255,.8);text-decoration:none}
.ae-util__link:hover{color:var(--ae-lime)}
.ae-util__pay{display:flex;align-items:center;min-height:40px;margin:4px 0;padding:0 18px;background:var(--ae-teal);color:#fff;text-decoration:none;font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.ae-util__pay:hover{background:var(--ae-lime);color:var(--ae-navy)}

/* Header */
.ae-header{background:var(--ae-navy);color:#fff;position:sticky;top:0;z-index:40}
.ae-header__bar{max-width:var(--ae-wrap);margin:0 auto;padding:14px var(--ae-gutter);display:flex;align-items:center;gap:clamp(12px,2vw,32px)}
.ae-header__logo{display:block;flex:0 0 auto}
.ae-header__logo img{display:block;height:clamp(52px,6.2vw,76px);width:auto}
.ae-nav{display:flex;flex-wrap:nowrap;align-items:center;gap:4px 18px;margin-left:auto;font-size:14px;font-weight:500}
.ae-nav__link{display:flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;white-space:nowrap}
.ae-nav__link:hover,.ae-nav__link.is-current{color:var(--ae-lime)}
.ae-header__cta{flex:0 0 auto}

/* Dropdowns — pure CSS on hover/focus; aept.js adds tap-to-open for touch */
.ae-dd{position:relative}
.ae-dd__menu{display:none;position:absolute;top:100%;left:-22px;min-width:320px;padding-top:14px;z-index:50;flex-direction:column}
.ae-dd__menu--narrow{min-width:220px}
.ae-dd__menu::before{content:"";display:block;border-top:4px solid var(--ae-lime)}
.ae-dd:hover .ae-dd__menu,.ae-dd:focus-within .ae-dd__menu,.ae-dd.is-open .ae-dd__menu{display:flex}
.ae-dd__link{display:flex;align-items:center;min-height:44px;padding:12px 22px;font-size:15px;font-weight:500;color:var(--ae-navy);background:#fff;text-decoration:none;border-bottom:1px solid #eceeed;box-shadow:0 18px 40px rgba(31,38,62,.12)}
.ae-dd__link:hover{background:var(--ae-mist);color:var(--ae-teal)}

/* Mobile drawer */
.ae-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:48px;height:48px;padding:0 12px;margin-left:auto;background:transparent;border:2px solid rgba(255,255,255,.5);cursor:pointer}
.ae-burger:hover{border-color:var(--ae-lime)}
.ae-burger span{display:block;height:2px;background:#fff;transition:transform 160ms ease,opacity 160ms ease}
.ae-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.ae-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.ae-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.ae-drawer{border-top:2px solid rgba(255,255,255,.18);padding:8px var(--ae-gutter) 20px;display:flex;flex-direction:column;max-height:calc(100vh - 120px);overflow-y:auto}
.ae-drawer[hidden]{display:none}
.ae-drawer__link{display:flex;align-items:center;min-height:56px;padding:4px 0;font-size:17px;font-weight:500;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.14)}
.ae-drawer__link--sub{min-height:48px;padding-left:18px;font-size:15px;color:rgba(255,255,255,.86)}
.ae-drawer__link:hover,.ae-drawer__link.is-current{color:var(--ae-lime)}
.ae-drawer__cta{margin-top:16px;min-height:56px;justify-content:center;font-size:15px}
@media (max-width:1079px){
  .ae-nav,.ae-header__cta{display:none}
  .ae-burger{display:flex}
}
@media (min-width:1080px){ .ae-drawer{display:none!important} }

/* Closing CTA band */
.ae-start{background:var(--ae-teal);color:#fff;scroll-margin-top:140px}
.ae-start .ae-wrap{padding:clamp(56px,8vw,96px) var(--ae-gutter)}
.ae-start__title{font-size:clamp(30px,3.6vw,44px);line-height:1.08;font-weight:900;letter-spacing:-.02em;margin:0}
.ae-start__lede{font-size:18.5px;line-height:1.6;margin:16px 0 0;max-width:56ch;color:rgba(255,255,255,.92)}
.ae-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.ae-tab{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5);font:inherit;font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:14px 26px;cursor:pointer}
.ae-tab:hover{border-color:var(--ae-lime);color:var(--ae-lime)}
.ae-tab[aria-selected="true"]{background:var(--ae-lime);color:var(--ae-navy);border-color:var(--ae-lime)}
.ae-clinic{margin-top:28px;background:#fff;color:var(--ae-navy);padding:clamp(24px,3vw,36px);display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;align-items:center;max-width:840px}
.ae-clinic__kicker{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ae-teal);margin:0 0 10px}
.ae-clinic__name{font-size:26px;line-height:1.15;font-weight:900;letter-spacing:-.01em;margin:0}
.ae-clinic__addr{font-size:16px;line-height:1.6;margin:8px 0 0;color:var(--ae-ink-soft)}
.ae-clinic__phone{margin:10px 0 0}
.ae-clinic__phone a{display:flex;align-items:center;min-height:44px;font-size:19px;font-weight:700;color:var(--ae-teal);text-decoration:none}
.ae-clinic__hours{font-size:15px;line-height:1.6;margin:6px 0 0;color:var(--ae-ink-soft)}
.ae-clinic__more{display:flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ae-teal);text-decoration:none}
.ae-clinic__more:hover{color:var(--ae-navy)}
.ae-clinic__cta{min-height:56px;justify-content:center;text-align:center;font-size:15px;padding:18px 24px;white-space:normal}

/* Footer */
.ae-foot{background:var(--ae-navy);color:rgba(255,255,255,.72)}
.ae-foot .ae-wrap{padding:clamp(40px,5vw,64px) var(--ae-gutter)}
.ae-foot__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:32px clamp(24px,4vw,48px);align-items:start}
.ae-foot__logo{display:block;height:56px;width:auto}
.ae-foot__phones{display:flex;flex-direction:column;margin:16px 0 0;font-size:14.5px;line-height:1.55}
.ae-foot__phones a{display:flex;align-items:center;gap:8px;min-height:44px;color:#fff;text-decoration:none}
.ae-foot__phones a span+span{color:var(--ae-lime);font-weight:700}
.ae-foot__phones a:hover{color:var(--ae-lime)}
.ae-foot__social{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.ae-foot__social a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.3);text-decoration:none}
.ae-foot__social a:hover{border-color:var(--ae-lime);background:rgba(206,233,133,.14)}
.ae-foot__social img{display:block;width:18px;height:18px;filter:brightness(0) invert(1)}
.ae-foot__col{display:flex;flex-direction:column;font-size:14.5px}
.ae-foot__head{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ae-lime);margin:0 0 10px}
.ae-foot__link{display:flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.14)}
.ae-foot__link:hover{color:var(--ae-lime)}
.ae-foot__refs{font-size:11.5px;line-height:1.6;margin:40px 0 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.6);overflow-wrap:anywhere}
.ae-foot__refs strong{letter-spacing:.06em}
.ae-foot__legal{font-size:13px;margin:24px 0 0;color:#fff}

/* Generated hover utilities (one class per distinct hover treatment in the page bodies).
   !important is required because the page bodies still carry inline styles. */
.hv-1:hover, .hv-1:focus-visible { background:#ffffff !important; }
.hv-2:hover, .hv-2:focus-visible { border-color:#CEE985 !important; color:#CEE985 !important; }
.hv-3:hover, .hv-3:focus-visible { background:#CEE985 !important; color:#1F263E !important; }
.hv-4:hover, .hv-4:focus-visible { background:#F4F6F5 !important; }
.hv-5:hover, .hv-5:focus-visible { color:#CEE985 !important; }
.hv-6:hover, .hv-6:focus-visible { background:#1F263E !important; }
.hv-7:hover, .hv-7:focus-visible { color:#006B78 !important; }
.hv-8:hover, .hv-8:focus-visible { background:#005560 !important; }
.hv-9:hover, .hv-9:focus-visible { color:#1F263E !important; }

/* WordPress: keep sticky header below the admin bar */
.admin-bar .ae-header{top:32px}
@media (max-width:782px){.admin-bar .ae-header{top:46px}}
@media (max-width:600px){.admin-bar .ae-header{top:0}}
