/* Andalus Health — shared shell (ticker, header, mega-menu, mobile menu, footer)
   Every class is prefixed `ah-` so it can sit beside site.css or v3.css without clashing. */
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700;800&family=Geist+Mono:wght@400;500&display=swap');

:root{
  --ah-ink:#02070A; --ah-ink-2:#0b141a; --ah-soft:rgba(2,7,10,.66); --ah-faint:rgba(2,7,10,.46);
  --ah-blue:#0297DE; --ah-blue-hover:#0281BD; --ah-blue-ink:#0272A8;
  --ah-line:rgba(2,7,10,.09); --ah-line-strong:rgba(2,7,10,.16);
  --ah-glass:rgba(255,255,255,.14); --ah-glass-strong:rgba(255,255,255,.22); --ah-glass-line:rgba(255,255,255,.34);
  --tk:36px; --ah-nav-h:72px; --ah-wrap:1200px;
}
.ah-wrap{max-width:var(--ah-wrap);margin:0 auto;padding:0 28px}
.ah-shell,.ah-shell *{font-family:'Geist',system-ui,-apple-system,sans-serif;letter-spacing:-.011em;box-sizing:border-box}
.ah-shell a{color:inherit;text-decoration:none}
.ah-shell ul{list-style:none;margin:0;padding:0}
.ah-shell button{font:inherit;cursor:pointer;border:0;background:none;color:inherit;padding:0}

/* buttons */
.ah-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;font-weight:500;font-size:14.5px;line-height:1.2;white-space:nowrap;transition:transform .2s,background .2s,border-color .2s}
.ah-btn-white{background:#fff;color:var(--ah-ink)!important}.ah-btn-white:hover{background:#eef6fb;transform:translateY(-1px)}
.ah-btn-dark{background:var(--ah-ink);color:#fff!important}.ah-btn-dark:hover{background:var(--ah-ink-2);transform:translateY(-1px)}
.ah-btn-blue{background:var(--ah-blue);color:#fff!important}.ah-btn-blue:hover{background:var(--ah-blue-hover);transform:translateY(-1px)}
.ah-btn-glass{background:var(--ah-glass);border:1px solid var(--ah-glass-line);color:#fff!important;-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4)}
.ah-btn-glass:hover{background:var(--ah-glass-strong);transform:translateY(-1px)}

/* ticker (scrolls away with the page) */
.ah-ticker{position:absolute;top:0;left:0;right:0;z-index:120;height:36px;background:var(--ah-blue);color:#fff;overflow:hidden;display:flex;align-items:center;font-size:13px;font-weight:500}
.ah-ticker-track{display:flex;white-space:nowrap;animation:ah-tick 60s linear infinite}
.ah-ticker:hover .ah-ticker-track{animation-play-state:paused}
.ah-ticker a{display:inline-flex;gap:12px;align-items:center;padding:0 36px;color:#fff}
.ah-ticker a b{font-weight:600;letter-spacing:.03em}
.ah-ticker a::after{content:"•";opacity:.6;margin-left:36px}
@keyframes ah-tick{to{transform:translateX(-50%)}}

/* header */
.ah-nav{position:fixed;top:var(--tk);left:0;right:0;z-index:110;color:#fff;transition:background .25s,color .25s,box-shadow .25s}
.ah-nav-in{display:flex;align-items:center;justify-content:space-between;height:var(--ah-nav-h);gap:24px}
.ah-logo{display:block;position:relative;width:176px;height:22px;flex:none}
.ah-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:left center;transition:opacity .25s;max-width:none}
.ah-logo .l-dark{opacity:0}
.ah-menu{display:flex;gap:2px;align-items:center}
.ah-menu>li>a,.ah-menu>li>button{display:inline-flex;align-items:center;gap:6px;padding:10px 15px;font-size:15px;font-weight:500;border-radius:999px;opacity:.92;transition:background .2s,opacity .2s}
.ah-menu>li>a:hover,.ah-menu>li>button:hover,.ah-menu>li.open>button{opacity:1;background:rgba(255,255,255,.14)}
.ah-menu .chev{width:10px;height:10px;transition:transform .2s}
.ah-menu>li.open .chev{transform:rotate(180deg)}
.ah-nav-cta{display:flex;gap:10px;align-items:center}
.ah-burger{display:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--ah-glass-line)!important;align-items:center;justify-content:center}
.ah-burger i{display:block;width:16px;height:1.5px;background:currentColor;position:relative}
.ah-burger i::before,.ah-burger i::after{content:"";position:absolute;left:0;width:16px;height:1.5px;background:currentColor}
.ah-burger i::before{top:-5px}.ah-burger i::after{top:5px}

.ah-nav.light{background:rgba(255,255,255,.9);color:var(--ah-ink);-webkit-backdrop-filter:blur(20px) saturate(1.6);backdrop-filter:blur(20px) saturate(1.6);box-shadow:0 1px 0 var(--ah-line)}
.ah-nav.light .ah-logo .l-dark{opacity:1}.ah-nav.light .ah-logo .l-light{opacity:0}
.ah-nav.light .ah-menu>li>a:hover,.ah-nav.light .ah-menu>li>button:hover,.ah-nav.light .ah-menu>li.open>button{background:#f1f5f8}
.ah-nav.light .ah-btn-glass{background:transparent;border-color:var(--ah-line-strong);color:var(--ah-ink)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
.ah-nav.light .ah-btn-white{background:var(--ah-ink);color:#fff!important}
.ah-nav.light .ah-burger{border-color:var(--ah-line-strong)!important}

/* mega menu: links left, featured card right */
.ah-mega{position:absolute;top:100%;left:0;right:0;background:#f7f8fa;border-top:1px solid var(--ah-line);box-shadow:0 30px 60px rgba(2,7,10,.12);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s,transform .2s,visibility .2s;color:var(--ah-ink)}
.ah-nav.open-mega .ah-mega.on{opacity:1;visibility:visible;transform:none}
.ah-mega-in{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:48px 28px 56px;max-width:var(--ah-wrap);margin:0 auto}
.ah-mega-label{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ah-faint);margin-bottom:22px}
.ah-mega-links a{display:block;font-size:clamp(1.5rem,2.3vw,2rem);font-weight:600;letter-spacing:-.03em;line-height:1.25;color:var(--ah-blue-ink);padding:5px 0;transition:color .2s,transform .2s}
.ah-mega-links a:hover{color:var(--ah-ink);transform:translateX(4px)}
.ah-mega-sub{margin-top:26px;display:grid;gap:4px}
.ah-mega-sub a{font-size:15.5px;color:var(--ah-blue-ink);width:max-content}
.ah-mega-sub a:hover{color:var(--ah-ink)}
.ah-mega-card{display:block}
.ah-mega-card .img{aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#dfe6ec}
.ah-mega-card .img img{width:100%;height:100%;object-fit:cover;transition:opacity .25s}
.ah-mega-card small{display:block;font-family:'Geist Mono',monospace;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;margin:18px 0 6px}
.ah-mega-card p{font-size:16px;color:var(--ah-soft);max-width:44ch;margin:0;line-height:1.55}

.ah-scrim{position:fixed;inset:0;z-index:100;background:rgba(2,7,10,.35);opacity:0;visibility:hidden;transition:opacity .2s}
body.ah-nav-open .ah-scrim{opacity:1;visibility:visible}

/* mobile menu */
.ah-mobile{display:none;position:fixed;inset:0;z-index:105;background:#fff;padding:calc(var(--tk) + var(--ah-nav-h) + 12px) 24px 40px;overflow:auto}
.ah-mobile.open{display:block}
.ah-mobile a.l{display:block;padding:14px 0;font-size:22px;font-weight:500;letter-spacing:-.03em;border-bottom:1px solid var(--ah-line);color:var(--ah-ink)}
.ah-mobile small{display:block;margin:26px 0 4px;font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ah-faint)}

/* footer */
.ah-footer{padding:96px 0 40px;background:#fff;color:var(--ah-ink);border-top:1px solid var(--ah-line)}
.ah-foot{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px;padding-bottom:56px}
.ah-foot .flogo{display:block;height:22px;width:auto;margin-bottom:18px}
.ah-foot h5{font-size:13px;font-weight:500;color:var(--ah-faint);margin:0 0 16px}
.ah-foot ul{display:grid;gap:10px}
.ah-foot li a{font-size:15px;color:var(--ah-soft);transition:color .2s}
.ah-foot li a:hover{color:var(--ah-blue-ink)}
.ah-foot p{font-size:14.5px;color:var(--ah-soft);max-width:34ch;margin:0;line-height:1.6}
.ah-attrib{font-size:12.5px;color:var(--ah-faint);line-height:1.6;max-width:70ch;margin:0 0 22px}
.ah-legal{border-top:1px solid var(--ah-line);padding-top:26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:var(--ah-faint)}
.ah-legal nav{display:flex;gap:20px;flex-wrap:wrap}
.ah-legal a:hover{color:var(--ah-ink)}

@media (prefers-reduced-motion:reduce){.ah-ticker-track{animation:none}.ah-shell *{transition:none!important}}
@media (max-width:1000px){
  .ah-menu,.ah-nav-cta .ah-btn-glass,.ah-mega{display:none}
  .ah-burger{display:flex}
  .ah-foot{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .ah-wrap{padding:0 20px}
  .ah-logo{width:150px}
  .ah-nav-cta .ah-btn{padding:9px 14px;font-size:13px}
  .ah-nav-in{gap:10px}
  .ah-foot{grid-template-columns:1fr}
}


/* ---- footer v2: blue gradient with grain, light links, and a giant wordmark ---- */
.ah-footer{position:relative;isolation:isolate;overflow:hidden;color:#fff;border-top:0;padding:clamp(72px,8vw,110px) 0 0;
  background:
    radial-gradient(ellipse 60% 70% at 12% 0%,rgba(120,215,255,.55),rgba(120,215,255,0) 65%),
    radial-gradient(ellipse 70% 80% at 100% 55%,#0a4fc2 0%,rgba(10,79,194,0) 70%),
    linear-gradient(165deg,#0f9be6 0%,#0297DE 38%,#0a67cc 72%,#0a3f9c 100%)}
.ah-footer::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;mix-blend-mode:overlay;background:url(/image/bg/grad-blue.jpg) center/cover}
.ah-foot .flogo{height:24px;margin-bottom:20px}
.ah-foot h5{color:rgba(255,255,255,.78);font-size:15px;font-weight:500;margin:0 0 20px}
.ah-foot ul{gap:12px}
.ah-foot li a{color:#fff;font-size:15.5px;opacity:.95}
.ah-foot li a:hover{color:#fff;opacity:1;text-decoration:underline;text-underline-offset:4px}
.ah-foot p{color:rgba(255,255,255,.86);max-width:30ch}
.ah-attrib{color:rgba(255,255,255,.7)}
.ah-legal{border-top:1px solid rgba(255,255,255,.28);color:rgba(255,255,255,.82)}
.ah-legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.ah-giant{margin-top:clamp(40px,6vw,88px);padding:0 clamp(12px,2vw,28px);line-height:0}
.ah-giant img{display:block;width:100%;height:auto;opacity:.96;transform:translateY(14%);-webkit-mask-image:linear-gradient(to bottom,#000 55%,rgba(0,0,0,.0) 100%);mask-image:linear-gradient(to bottom,#000 55%,rgba(0,0,0,0) 100%)}
.ah-giant{overflow:hidden;height:clamp(70px,13.5vw,210px)}

/* live footer has three columns */
.ah-foot{grid-template-columns:1.6fr 1fr 1fr}
@media (max-width:1000px){.ah-foot{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ah-foot{grid-template-columns:1fr}}
