/*
Theme Name: AidBase
Theme URI: https://aidnetwork.jp/
Author: AidNetwork
Description: AidCMS専用の軽量ベーステーマ。ヘッダー、フッター、共通レイアウトを提供します。
Version: 1.0.0-alpha188
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: aidbase
*/
:root{--aidbase-radius-sm:12px;--aidbase-radius-md:20px;--aidbase-radius-pill:999px;--aidbase-navy:#0b1d3a;--aidbase-blue:#2182d6;--aidbase-cyan:#35a6c7;--aidbase-green:#79be68;--aidbase-brand-primary:#2182d6;--aidbase-brand-secondary:#35a6c7;--aidbase-brand-tertiary:#79be68;--aidbase-brand-gradient:linear-gradient(105deg,#2182d6 0%,#35a6c7 48%,#79be68 100%);--aidbase-brand-gradient-soft:linear-gradient(135deg,rgba(33,130,214,.12) 0%,rgba(53,166,199,.10) 48%,rgba(121,190,104,.12) 100%);--aidbase-line:#e9eef4;--aidbase-muted:#647184}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--aidbase-navy);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.aidbase-inner{width:min(1180px,calc(100% - 48px));margin:auto}.aidbase-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(233,238,244,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.aidbase-header-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}.aidbase-brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:max-content}.aidbase-brand img{display:block;max-height:48px;width:auto}.aidbase-brand-text{display:flex;flex-direction:column;line-height:1}.aidbase-brand-name{font-size:24px;font-weight:800;letter-spacing:-.03em}.aidbase-brand-tag{font-size:10px;font-weight:650;letter-spacing:.04em;margin-top:8px;color:#5d6979}.aidbase-nav-wrap{display:flex;align-items:center;gap:28px}.aidbase-nav{display:flex;align-items:center;gap:28px}.aidbase-nav ul{display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none}.aidbase-nav a{text-decoration:none;font-weight:700;font-size:14px;white-space:nowrap;transition:color .2s}.aidbase-nav a:hover{color:var(--aidbase-blue)}.aidbase-header-contact{display:inline-flex;align-items:center;gap:9px;padding:13px 20px;border-radius:999px;background:var(--aidbase-blue);color:#fff;text-decoration:none;font-size:14px;font-weight:750;box-shadow:0 10px 24px rgba(33,103,214,.18)}.aidbase-header-contact svg{width:17px;height:17px}.aidbase-menu-toggle{display:none;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}.aidbase-menu-toggle span{display:block;width:25px;height:2px;margin:6px auto;background:var(--aidbase-navy);transition:.25s}.aidbase-menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(8px) rotate(45deg)}.aidbase-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.aidbase-menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-8px) rotate(-45deg)}.aidbase-footer{background:#f8fafc;border-top:1px solid var(--aidbase-line);padding:60px 0 26px}.aidbase-footer-main{display:grid;grid-template-columns:1.35fr 2fr;gap:80px;padding-bottom:38px}.aidbase-footer-brand{font-size:24px;font-weight:800;margin-bottom:10px}.aidbase-footer-tag{color:var(--aidbase-muted);font-size:13px;line-height:1.8;margin:0 0 18px}.aidbase-footer-address{color:#4e5c6d;font-style:normal;font-size:13px;line-height:2.05}.aidbase-footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.aidbase-footer-links strong{display:block;font-size:14px;margin-bottom:13px}.aidbase-footer-links a{display:block;text-decoration:none;color:#566476;font-size:13px;margin:9px 0}.aidbase-footer-links a:hover{color:var(--aidbase-blue)}.aidbase-footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;border-top:1px solid var(--aidbase-line);padding-top:24px;color:#788393;font-size:12px;line-height:1.7;text-align:left}.aidbase-footer-bottom span:first-child{margin-right:auto}.aidbase-footer-bottom span:last-child{text-align:right}.aidbase-missing-plugin{padding:100px 0;min-height:55vh}@media(max-width:900px){.aidbase-inner{width:min(100% - 32px,1180px)}.aidbase-header-row{min-height:68px}.aidbase-header-contact{display:none}.aidbase-menu-toggle{display:block}.aidbase-nav-wrap{position:absolute;display:none;top:68px;left:0;right:0;padding:15px 16px 22px;background:#fff;border-bottom:1px solid var(--aidbase-line);box-shadow:0 16px 30px rgba(11,29,58,.08)}.aidbase-nav-wrap.is-open{display:block}.aidbase-nav,.aidbase-nav ul{display:flex;flex-direction:column;align-items:stretch;gap:0}.aidbase-nav a{display:block;padding:13px 8px;border-bottom:1px solid #f0f3f7}.aidbase-footer-main{grid-template-columns:1fr;gap:36px}.aidbase-footer-links{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.aidbase-brand-name{font-size:21px}.aidbase-brand-tag{font-size:9px}.aidbase-footer-links{grid-template-columns:1fr 1fr}.aidbase-footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}.aidbase-footer-bottom span:last-child{text-align:left}.aidbase-footer{padding-top:46px}}

/* AidCMS alpha5 footer settings integration */
.aidbase-footer-logo{display:block;max-width:180px;max-height:60px;width:auto;height:auto;object-fit:contain}.aidbase-footer-address a{color:inherit;text-decoration:none}.aidbase-footer-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.aidbase-footer-socials a{display:inline-flex;align-items:center;min-height:34px;padding:5px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:inherit;text-decoration:none;font-size:12px}.aidbase-footer-socials a:hover{background:rgba(255,255,255,.08)}

/* AidBase 1.0.0-alpha7: shared interactive radius */
.aidbase-header-contact{border-radius:var(--aidbase-radius-pill)}


/* AidBase 1.0.0-alpha14: structured mobile navigation */
.aidbase-mobile-nav{display:none}
.aidbase-mobile-nav__topbar{display:none}
@media(max-width:900px){
  body.aidbase-menu-open{overflow:hidden}
  .aidbase-nav-wrap{top:100%;padding:0;background:#fff;border-bottom:0;box-shadow:0 18px 36px rgba(11,29,58,.13);max-height:calc(100dvh - 68px);overflow:hidden}
  .aidbase-nav--desktop,.aidbase-nav-wrap>.aidbase-header-contact{display:none}
  .aidbase-mobile-nav{display:block;height:calc(100dvh - 68px);background:linear-gradient(180deg,#fff 0%,#fff 68%,#f4faff 100%)}
  .aidbase-mobile-nav__scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px calc(34px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}
  .aidbase-mobile-nav a{text-decoration:none}
  .aidbase-mobile-nav__home{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:54px;padding:0 4px 14px;border-bottom:1px solid var(--aidbase-line);font-size:16px;font-weight:800}
  .aidbase-mobile-nav__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#eef5ff;color:var(--aidbase-blue)}
  .aidbase-mobile-nav__icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .aidbase-mobile-nav__arrow{font-size:25px;font-weight:500;color:#8b98aa}
  .aidbase-mobile-nav__section{margin-top:24px}
  .aidbase-mobile-nav__heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:0 2px 12px}
  .aidbase-mobile-nav__heading span{font-size:18px;font-weight:850;letter-spacing:-.02em}
  .aidbase-mobile-nav__heading small{color:#7b8797;font-size:10px;font-weight:650}
  .aidbase-mobile-nav__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .aidbase-mobile-nav__grid>a{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:92px;padding:16px 15px 14px;border:1px solid #e5ebf2;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(31,64,105,.055);overflow:hidden}
  .aidbase-mobile-nav__grid strong{font-size:14px;font-weight:820;line-height:1.35}
  .aidbase-mobile-nav__grid small{margin-top:5px;color:#7a8798;font-size:10px;font-weight:650;line-height:1.4}
  .aidbase-mobile-nav__service-mark{position:absolute;top:0;left:0;width:100%;height:4px;background:#2167d6}
  .aidbase-mobile-nav__service-mark--green{background:#66b66a}.aidbase-mobile-nav__service-mark--orange{background:#e8a15b}.aidbase-mobile-nav__service-mark--purple{background:#8d78d6}
  .aidbase-mobile-nav__links{border-top:1px solid var(--aidbase-line)}
  .aidbase-mobile-nav__links a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 4px;border-bottom:1px solid var(--aidbase-line);font-size:14px;font-weight:760}
  .aidbase-mobile-nav__links a span:last-child{color:#8b98aa;font-size:22px;font-weight:500}
  .aidbase-mobile-nav__recruit{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:26px;padding:17px 20px;border-radius:20px;background:#0b1d3a;color:#fff;box-shadow:0 14px 28px rgba(11,29,58,.16)}
  .aidbase-mobile-nav__recruit span:first-child{display:flex;flex-direction:column;gap:4px}.aidbase-mobile-nav__recruit small{color:#c9d4e4;font-size:10px;font-weight:650}.aidbase-mobile-nav__recruit strong{font-size:15px;font-weight:820}
  .aidbase-mobile-nav__contact{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:14px 18px;border-radius:999px;background:var(--aidbase-blue);color:#fff;font-size:14px;font-weight:820;box-shadow:0 14px 28px rgba(33,103,214,.2)}
  .aidbase-mobile-nav__contact .aidbase-mobile-nav__icon{background:rgba(255,255,255,.16);color:#fff}
  .aidbase-mobile-nav__note{margin:12px 10px 0;color:#738094;font-size:10px;font-weight:600;line-height:1.7;text-align:center}
}
@media(max-width:380px){
  .aidbase-mobile-nav__scroll{padding-inline:16px}.aidbase-mobile-nav__grid{gap:8px}.aidbase-mobile-nav__grid>a{padding-inline:12px}.aidbase-mobile-nav__heading small{display:none}
}

/* === alpha35 UI polish: mobile navigation and CTA family === */
@media(max-width:980px){
  .aidbase-mobile-nav{
    background:
      radial-gradient(circle at 88% 8%,rgba(33,130,214,.10),transparent 28%),
      radial-gradient(circle at 8% 92%,rgba(121,190,104,.10),transparent 30%),
      linear-gradient(180deg,#fff 0%,#f9fcff 54%,#f7fcf7 100%);
  }
  .aidbase-mobile-nav__grid{gap:12px}
  .aidbase-mobile-nav__grid>a{
    --menu-accent:#2182d6;
    --menu-accent-2:#66b66a;
    display:grid;
    grid-template-columns:42px 1fr 22px;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:12px;
    min-height:112px;
    padding:17px 15px;
    border:1px solid color-mix(in srgb,var(--menu-accent) 18%,#e7edf4);
    border-radius:22px;
    background:
      radial-gradient(circle at 100% 0,color-mix(in srgb,var(--menu-accent-2) 16%,transparent),transparent 42%),
      linear-gradient(145deg,#fff 0%,color-mix(in srgb,var(--menu-accent) 5%,#fff) 100%);
    box-shadow:0 14px 34px rgba(23,51,78,.07);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  }
  .aidbase-mobile-nav__grid>a:active{transform:scale(.975)}
  .aidbase-mobile-nav__grid>a:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(23,51,78,.11)}
  .aidbase-mobile-nav__service--homecare{--menu-accent:#2167d6;--menu-accent-2:#66b66a}
  .aidbase-mobile-nav__service--consultation{--menu-accent:#5d9f70;--menu-accent-2:#9dc994}
  .aidbase-mobile-nav__service--child{--menu-accent:#78ad63;--menu-accent-2:#d8b65d}
  .aidbase-mobile-nav__service--after{--menu-accent:#43a9a2;--menu-accent-2:#f0a65a}
  .aidbase-mobile-nav__service-icon{
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:15px;
    background:linear-gradient(145deg,color-mix(in srgb,var(--menu-accent) 14%,#fff),color-mix(in srgb,var(--menu-accent-2) 12%,#fff));
    color:var(--menu-accent);
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--menu-accent) 14%,transparent);
  }
  .aidbase-mobile-nav__service-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .aidbase-mobile-nav__grid strong{align-self:end;font-size:14px}
  .aidbase-mobile-nav__grid small{align-self:start;margin:3px 0 0}
  .aidbase-mobile-nav__service-arrow{grid-column:3;grid-row:1/3;align-self:center;color:var(--menu-accent);font-size:17px;font-weight:800;transition:transform .2s ease}
  .aidbase-mobile-nav__grid>a:hover .aidbase-mobile-nav__service-arrow{transform:translateX(3px)}
  .aidbase-mobile-nav__service-mark{display:none!important}

  .aidbase-mobile-nav__recruit,
  .aidbase-mobile-nav__contact{
    display:grid;
    grid-template-columns:1fr 32px;
    align-items:center;
    gap:16px;
    min-height:76px;
    margin-top:14px;
    padding:18px 20px;
    border:0;
    border-radius:22px;
    color:#fff;
    box-shadow:0 16px 34px rgba(26,104,151,.18);
    overflow:hidden;
    position:relative;
    transition:transform .2s ease,box-shadow .2s ease;
  }
  .aidbase-mobile-nav__recruit{margin-top:28px;background:linear-gradient(115deg,#17375c 0%,#2182d6 56%,#35a6c7 100%)}
  .aidbase-mobile-nav__contact{background:var(--aidbase-brand-gradient,linear-gradient(105deg,#2182d6 0%,#35a6c7 48%,#79be68 100%))}
  .aidbase-mobile-nav__recruit:before,.aidbase-mobile-nav__contact:before{content:"";position:absolute;width:120px;height:120px;right:-44px;top:-52px;border-radius:50%;background:rgba(255,255,255,.13)}
  .aidbase-mobile-nav__recruit:active,.aidbase-mobile-nav__contact:active{transform:scale(.985)}
  .aidbase-mobile-nav__recruit:hover,.aidbase-mobile-nav__contact:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(26,104,151,.24)}
  .aidbase-mobile-nav__recruit>span:last-child,.aidbase-mobile-nav__contact>span:last-child{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.16);font-size:16px;z-index:1}
  .aidbase-mobile-nav__recruit span:first-child{z-index:1}
  .aidbase-mobile-nav__recruit small{color:rgba(255,255,255,.76)}
  .aidbase-mobile-nav__contact{grid-template-columns:34px 1fr 32px;font-size:14px}
  .aidbase-mobile-nav__contact .aidbase-mobile-nav__icon{width:34px;height:34px;background:rgba(255,255,255,.15);z-index:1}
  .aidbase-mobile-nav__contact>span:nth-child(2){z-index:1}
}

/* === alpha36 Aid Navigator: branded service panels === */
@media(max-width:980px){
  .aidbase-mobile-nav__scroll{padding-top:14px}
  .aidbase-mobile-nav__welcome{position:relative;margin:0 0 18px;padding:18px 18px 17px;border:1px solid rgba(33,130,214,.10);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(245,251,255,.92));box-shadow:0 14px 36px rgba(31,73,112,.07);overflow:hidden}
  .aidbase-mobile-nav__welcome:after{content:"";position:absolute;right:-34px;top:-46px;width:132px;height:132px;border-radius:50%;background:var(--aidbase-brand-gradient-soft);filter:blur(1px)}
  .aidbase-mobile-nav__welcome-kicker{position:relative;z-index:1;display:block;margin-bottom:7px;color:var(--aidbase-brand-primary);font-size:9px;font-weight:900;letter-spacing:.18em}
  .aidbase-mobile-nav__welcome strong{position:relative;z-index:1;display:block;font-size:20px;line-height:1.42;letter-spacing:-.035em}
  .aidbase-mobile-nav__welcome p{position:relative;z-index:1;max-width:82%;margin:7px 0 0;color:#667488;font-size:11px;font-weight:600;line-height:1.7}
  .aidbase-mobile-nav__home{min-height:48px;padding-bottom:12px;font-size:14px}
  .aidbase-mobile-nav__section{margin-top:20px}
  .aidbase-mobile-nav__heading span{display:flex;align-items:center;gap:8px}
  .aidbase-mobile-nav__heading span i{font-style:normal;color:var(--aidbase-brand-primary);font-size:8px;font-weight:900;letter-spacing:.14em}
  .aidbase-mobile-nav__grid{grid-template-columns:1fr 1fr;gap:12px}
  .aidbase-mobile-nav__grid>a{display:grid;grid-template-columns:40px 1fr 24px;grid-template-rows:1fr;align-items:center;min-height:154px;padding:17px 14px 15px;border-radius:25px;overflow:hidden;isolation:isolate}
  .aidbase-mobile-nav__service-art{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
  .aidbase-mobile-nav__service-art:before{content:"";position:absolute;right:-25px;top:-35px;width:112px;height:112px;border-radius:38% 62% 55% 45%/44% 46% 54% 56%;background:linear-gradient(145deg,color-mix(in srgb,var(--menu-accent) 18%,transparent),color-mix(in srgb,var(--menu-accent-2) 13%,transparent));transform:rotate(18deg)}
  .aidbase-mobile-nav__service-art:after{content:"";position:absolute;left:-28px;bottom:-46px;width:106px;height:106px;border-radius:50%;border:18px solid color-mix(in srgb,var(--menu-accent) 7%,transparent)}
  .aidbase-mobile-nav__service-art span{position:absolute;right:14px;bottom:14px;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--menu-accent-2) 17%,transparent);box-shadow:-28px -18px 0 -8px color-mix(in srgb,var(--menu-accent) 16%,transparent)}
  .aidbase-mobile-nav__service-icon{grid-column:1;grid-row:1;align-self:start;width:40px;height:40px;border-radius:14px;z-index:1}
  .aidbase-mobile-nav__service-copy{grid-column:1/4;grid-row:1;align-self:end;display:flex;flex-direction:column;min-width:0;padding-top:50px;z-index:1}
  .aidbase-mobile-nav__service-copy em{margin-bottom:5px;color:var(--menu-accent);font-size:7px;font-style:normal;font-weight:900;letter-spacing:.14em}
  .aidbase-mobile-nav__service-copy strong{font-size:15px;line-height:1.25;letter-spacing:-.025em}
  .aidbase-mobile-nav__service-copy small{display:block;min-height:30px;margin-top:6px;color:#5d6979;font-size:10px;font-weight:650;line-height:1.5}
  .aidbase-mobile-nav__service-copy b{display:inline-flex;align-self:flex-start;margin-top:9px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--menu-accent) 13%,transparent);color:var(--menu-accent);font-size:8px;font-weight:850;line-height:1}
  .aidbase-mobile-nav__service-arrow{grid-column:3;grid-row:1;align-self:start;justify-self:end;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.72);box-shadow:0 6px 16px rgba(34,73,108,.08);font-size:13px}
  .aidbase-mobile-nav__grid>a:hover .aidbase-mobile-nav__service-art:before{transform:rotate(25deg) scale(1.08)}
  .aidbase-mobile-nav__service-art:before{transition:transform .35s ease}
  .aidbase-mobile-nav__links{display:grid;grid-template-columns:1fr 1fr;gap:9px;border-top:0}
  .aidbase-mobile-nav__links a{min-height:58px;padding:0 13px;border:1px solid #e7edf3;border-radius:17px;background:rgba(255,255,255,.78);box-shadow:0 8px 22px rgba(29,64,96,.045);font-size:12px}
  .aidbase-mobile-nav__links a span:first-child{display:flex;align-items:center;gap:8px}
  .aidbase-mobile-nav__links a i{display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:#eef6ff;color:var(--aidbase-brand-primary);font-size:8px;font-style:normal;font-weight:900}
  .aidbase-mobile-nav__links a:last-child{grid-column:1/-1}
  .aidbase-mobile-nav__recruit,.aidbase-mobile-nav__contact{border-radius:24px}
}
@media(max-width:430px){
  .aidbase-mobile-nav__grid{gap:10px}
  .aidbase-mobile-nav__grid>a{min-height:148px;padding-inline:12px}
  .aidbase-mobile-nav__service-copy strong{font-size:14px}
  .aidbase-mobile-nav__service-copy small{font-size:9px}
  .aidbase-mobile-nav__welcome strong{font-size:18px}
}
@media(max-width:350px){
  .aidbase-mobile-nav__grid{grid-template-columns:1fr}
  .aidbase-mobile-nav__grid>a{min-height:130px}
}


/* === alpha53: refined service distinction without visual noise === */
@media(max-width:980px){
  .aidbase-mobile-nav__service{
    --card-tint:#f7fbff;
    --card-glow:rgba(70,148,205,.10);
    background:
      radial-gradient(circle at 86% 16%,var(--card-glow) 0 18%,transparent 42%),
      linear-gradient(145deg,#fff 0%,var(--card-tint) 100%)!important;
    border-color:color-mix(in srgb,var(--menu-accent) 16%,#e5ebf2)!important;
    box-shadow:0 12px 28px rgba(25,58,92,.065)!important;
  }
  .aidbase-mobile-nav__service--homecare{--card-tint:#f5f9ff;--card-glow:rgba(43,113,191,.11)}
  .aidbase-mobile-nav__service--consultation{--card-tint:#f4fbf8;--card-glow:rgba(50,153,121,.11)}
  .aidbase-mobile-nav__service--child{--card-tint:#fffaf4;--card-glow:rgba(225,145,67,.10)}
  .aidbase-mobile-nav__service--after{--card-tint:#faf7ff;--card-glow:rgba(126,93,191,.10)}
  .aidbase-mobile-nav__service-copy strong{
    color:#0b1d3a;
    font-weight:900;
  }
  .aidbase-mobile-nav__service-copy em{
    opacity:.92;
  }
  .aidbase-mobile-nav__service-icon{
    background:rgba(255,255,255,.88)!important;
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--menu-accent) 18%,transparent),0 8px 20px rgba(25,58,92,.07)!important;
  }
  .aidbase-mobile-nav__service-arrow{
    color:var(--menu-accent);
    background:rgba(255,255,255,.86);
    box-shadow:0 6px 16px rgba(25,58,92,.07),inset 0 0 0 1px color-mix(in srgb,var(--menu-accent) 12%,transparent);
  }
  .aidbase-mobile-nav__service-copy b{
    background:rgba(255,255,255,.82);
  }
}


/* === alpha57: premium mobile navigator + compact contact experience === */
@media (max-width:980px){
  .aidbase-mobile-nav__welcome{display:none!important}
  .aidbase-mobile-nav__scroll{padding:18px 20px calc(32px + env(safe-area-inset-bottom))}
  .aidbase-mobile-nav__home{min-height:58px;padding:0 4px 15px;margin-bottom:4px}
  .aidbase-mobile-nav__section{margin-top:22px}
  .aidbase-mobile-nav__heading{margin:0 2px 14px}
  .aidbase-mobile-nav__heading span{font-size:22px;letter-spacing:-.035em}
  .aidbase-mobile-nav__heading small{display:block;font-size:11px}
  .aidbase-mobile-nav__grid{display:grid;grid-template-columns:1fr;gap:14px}
  .aidbase-mobile-nav__grid>a.aidbase-mobile-nav__service{
    --menu-accent:#2f86d8;--menu-tint:#eff7ff;--menu-art:rgba(47,134,216,.13);
    display:grid!important;grid-template-columns:104px minmax(0,1fr) 54px!important;grid-template-rows:1fr!important;
    align-items:center!important;column-gap:18px!important;min-height:154px!important;padding:20px 18px 18px 20px!important;
    border:1px solid color-mix(in srgb,var(--menu-accent) 22%,#e3ebf3)!important;border-left:5px solid var(--menu-accent)!important;
    border-radius:24px!important;background:linear-gradient(110deg,#fff 0%,var(--menu-tint) 100%)!important;
    box-shadow:0 14px 34px rgba(22,55,89,.08)!important;isolation:isolate;overflow:hidden
  }
  .aidbase-mobile-nav__service--homecare{--menu-accent:#2f86d8!important;--menu-tint:#edf6ff!important;--menu-art:rgba(47,134,216,.15)!important}
  .aidbase-mobile-nav__service--consultation{--menu-accent:#2daa67!important;--menu-tint:#effbf3!important;--menu-art:rgba(45,170,103,.14)!important}
  .aidbase-mobile-nav__service--child{--menu-accent:#ed8b27!important;--menu-tint:#fff7ed!important;--menu-art:rgba(237,139,39,.15)!important}
  .aidbase-mobile-nav__service--after{--menu-accent:#8664d3!important;--menu-tint:#f7f2ff!important;--menu-art:rgba(134,100,211,.14)!important}
  .aidbase-mobile-nav__service-icon{
    grid-column:1!important;grid-row:1!important;align-self:center!important;width:88px!important;height:88px!important;border-radius:50%!important;
    background:rgba(255,255,255,.94)!important;color:var(--menu-accent)!important;
    box-shadow:0 12px 26px rgba(25,58,92,.10),inset 0 0 0 1px color-mix(in srgb,var(--menu-accent) 18%,transparent)!important;z-index:2
  }
  .aidbase-mobile-nav__service-icon svg{width:48px!important;height:48px!important}
  .aidbase-mobile-nav__service-copy{
    grid-column:2!important;grid-row:1!important;align-self:center!important;padding:0!important;display:flex!important;min-width:0!important;z-index:2
  }
  .aidbase-mobile-nav__service-title{display:flex!important;align-items:baseline!important;gap:14px!important;flex-wrap:wrap!important}
  .aidbase-mobile-nav__service-copy strong{font-size:24px!important;line-height:1.15!important;letter-spacing:-.045em!important}
  .aidbase-mobile-nav__service-copy em{order:2;margin:0!important;color:var(--menu-accent)!important;font-size:10px!important;letter-spacing:.18em!important;white-space:nowrap}
  .aidbase-mobile-nav__service-copy small{min-height:0!important;margin-top:11px!important;color:#4f6074!important;font-size:13px!important;line-height:1.55!important}
  .aidbase-mobile-nav__service-copy b{margin-top:11px!important;padding:6px 11px!important;color:var(--menu-accent)!important;background:rgba(255,255,255,.70)!important;font-size:10px!important}
  .aidbase-mobile-nav__service-arrow{
    grid-column:3!important;grid-row:1!important;align-self:center!important;justify-self:end!important;width:52px!important;height:52px!important;
    color:var(--menu-accent)!important;background:rgba(255,255,255,.94)!important;font-size:31px!important;box-shadow:0 12px 24px rgba(25,58,92,.10)!important;z-index:3
  }
  .aidbase-mobile-nav__service-art{display:block!important;position:absolute!important;inset:0!important;z-index:0!important}
  .aidbase-mobile-nav__service-art:before{right:-12px!important;top:auto!important;bottom:-26px!important;width:230px!important;height:150px!important;border-radius:50% 40% 0 0!important;background:var(--menu-art)!important;filter:blur(.2px);transform:none!important}
  .aidbase-mobile-nav__service-art:after{left:auto!important;right:36px!important;bottom:20px!important;width:90px!important;height:90px!important;border:0!important;border-radius:50%!important;background:color-mix(in srgb,var(--menu-accent) 7%,transparent)!important}
  .aidbase-mobile-nav__service-art span{right:86px!important;bottom:30px!important;width:34px!important;height:34px!important;background:color-mix(in srgb,var(--menu-accent) 9%,transparent)!important;box-shadow:45px -34px 0 16px color-mix(in srgb,var(--menu-accent) 5%,transparent)!important}
  .aidbase-mobile-nav__links{grid-template-columns:1fr!important;gap:9px!important}
  .aidbase-mobile-nav__links a{position:relative;min-height:76px!important;padding:0 20px 0 126px!important;border-radius:18px!important;overflow:hidden}
  .aidbase-mobile-nav__links a>i{position:absolute!important;left:8px!important;bottom:-17px!important;width:auto!important;height:auto!important;background:none!important;color:rgba(33,130,214,.08)!important;font-size:76px!important;font-weight:900!important;line-height:1!important;letter-spacing:-.08em!important}
  .aidbase-mobile-nav__link-icon{position:absolute;left:88px;display:grid!important;place-items:center;width:34px;height:34px;border-radius:50%;background:#eef6ff;color:#2182d6}
  .aidbase-mobile-nav__link-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .aidbase-mobile-nav__link-copy{display:flex;flex-direction:column;gap:3px}
  .aidbase-mobile-nav__link-copy strong{font-size:15px}.aidbase-mobile-nav__link-copy small{color:#748196;font-size:10px}
}
@media(max-width:520px){
  .aidbase-mobile-nav__scroll{padding-inline:16px}
  .aidbase-mobile-nav__grid>a.aidbase-mobile-nav__service{grid-template-columns:86px minmax(0,1fr) 46px!important;column-gap:13px!important;min-height:138px!important;padding:17px 14px 16px 15px!important;border-radius:22px!important}
  .aidbase-mobile-nav__service-icon{width:74px!important;height:74px!important}.aidbase-mobile-nav__service-icon svg{width:40px!important;height:40px!important}
  .aidbase-mobile-nav__service-copy strong{font-size:20px!important}.aidbase-mobile-nav__service-copy em{font-size:8px!important}.aidbase-mobile-nav__service-copy small{font-size:11px!important;margin-top:8px!important}.aidbase-mobile-nav__service-copy b{margin-top:8px!important}
  .aidbase-mobile-nav__service-arrow{width:44px!important;height:44px!important;font-size:27px!important}
}


/* === alpha79: desktop legacy-menu link repair and dropdown interaction === */
@media (min-width:901px){
  .aidbase-nav--desktop{position:relative;z-index:120}
  .aidbase-nav--desktop ul{position:relative}
  .aidbase-nav--desktop li{position:relative;list-style:none}
  .aidbase-nav--desktop a,.aidbase-nav--desktop .aidbase-menu-label{position:relative;z-index:2;pointer-events:auto;cursor:pointer}
  .aidbase-nav--desktop .sub-menu{
    position:absolute;top:calc(100% + 14px);left:50%;display:flex;flex-direction:column;align-items:stretch;gap:0;
    min-width:210px;padding:10px;margin:0;transform:translate(-50%,8px);opacity:0;visibility:hidden;pointer-events:none;
    border:1px solid rgba(204,217,230,.75);border-radius:18px;background:rgba(255,255,255,.98);
    box-shadow:0 18px 44px rgba(18,46,76,.14);transition:opacity .18s ease,transform .18s ease,visibility .18s ease
  }
  .aidbase-nav--desktop .sub-menu:before{content:"";position:absolute;left:0;right:0;top:-16px;height:18px}
  .aidbase-nav--desktop .sub-menu li{width:100%}
  .aidbase-nav--desktop .sub-menu a{display:block;width:100%;padding:11px 13px;border-radius:11px;font-size:13px;color:#24384f}
  .aidbase-nav--desktop .sub-menu a:hover,.aidbase-nav--desktop .sub-menu a:focus-visible{background:#f2f8fb;color:var(--aidbase-brand-primary)}
  .aidbase-nav--desktop .menu-item-has-children:hover>.sub-menu,
  .aidbase-nav--desktop .menu-item-has-children:focus-within>.sub-menu,
  .aidbase-nav--desktop .menu-item-has-children.is-menu-open>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
}


/* === alpha84 trust center === */
.aid-trust-center{color:#102b46;background:#fff}
.aid-trust-center__hero{padding:clamp(72px,10vw,132px) 0;background:linear-gradient(135deg,#eef8ff 0%,#f3fbf8 100%);text-align:center}
.aid-trust-center__hero p{margin:0 0 14px;color:#158eaf;font-size:.74rem;font-weight:850;letter-spacing:.2em}
.aid-trust-center__hero h1{margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1.2}
.aid-trust-center__hero span{display:block;max-width:680px;margin:24px auto 0;color:#5b6f82;line-height:1.9}
.aid-trust-center__body{padding:clamp(64px,9vw,112px) 0}
.aid-trust-center__intro{max-width:760px;margin:0 auto 48px;color:#51677b;font-size:1rem;line-height:2}
.aid-trust-center__links{max-width:920px;margin:0 auto;border-top:1px solid #dce8ec}
.aid-trust-center__links a{display:grid;grid-template-columns:54px 1fr 32px;align-items:center;gap:18px;padding:24px 4px;border-bottom:1px solid #dce8ec;color:inherit;text-decoration:none;transition:.2s ease}
.aid-trust-center__links a:hover{padding-left:10px;background:#f8fbfc}
.aid-trust-center__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f1f7fb;color:#246ec2;box-shadow:inset 0 0 0 1px #e0ebf2}
.aid-trust-center__icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.aid-trust-center__links strong{display:block;font-size:1.02rem}.aid-trust-center__links small{display:block;margin-top:5px;color:#708193;line-height:1.6}.aid-trust-center__links b{color:#178eaf;font-size:1.25rem}
@media(max-width:600px){.aid-trust-center__links a{grid-template-columns:44px 1fr 22px;gap:13px;padding:20px 0}.aid-trust-center__icon{width:42px;height:42px}.aid-trust-center__links strong{font-size:.94rem}.aid-trust-center__links small{font-size:.76rem}}

/* AidBase v1.0.0-alpha105 — alpha95 menu preserved / content-only overflow hardening */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  overscroll-behavior-x:none;
}
@supports (overflow:clip){
  html,
  body{overflow-x:clip}
}
body{position:relative}
#page,
.site,
.site-content,
.aidbase-site,
.aidbase-main,
main,
.aidcms-page,
.aidcms-consultation{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:clip;
}
.aidbase-inner,
.aidbase-inner > *,
[class*="-grid"] > *,
[class*="__grid"] > *{
  min-width:0;
  max-width:100%;
}
main img,
main svg,
main video,
main canvas,
main iframe,
main select,
main input,
main textarea{
  max-width:100%;
}
/* Keep the alpha95 mobile menu untouched. Only decorative content areas are isolated. */
.consult-intro,
.consult-cta,
.aidbase-cta-premium,
.aid-story,
.aid-story__art{
  contain:paint;
}

/* AidBase alpha106 — mobile navigation is mounted under body and fixed to viewport */
@media (max-width:900px){
  html.aidbase-menu-open,
  body.aidbase-menu-open{
    overflow:hidden!important;
    overscroll-behavior:none;
  }
  body > .aidbase-nav-wrap{
    position:fixed!important;
    z-index:9998!important;
    inset:68px 0 0 0!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    display:none!important;
    overflow:hidden!important;
    background:#fff!important;
    border:0!important;
    box-shadow:0 18px 36px rgba(11,29,58,.13)!important;
    transform:none!important;
  }
  body > .aidbase-nav-wrap.is-open{display:block!important;}
  body > .aidbase-nav-wrap .aidbase-mobile-nav{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__scroll{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
    padding-bottom:calc(140px + env(safe-area-inset-bottom))!important;
  }
  .aidbase-header{z-index:9999!important;}
  .aidbase-menu-toggle{position:relative;z-index:10000;}
}
body.admin-bar > .aidbase-nav-wrap{
  top:calc(68px + 46px)!important;
}
@media (min-width:783px) and (max-width:900px){
  body.admin-bar > .aidbase-nav-wrap{top:calc(68px + 32px)!important;}
}


/* AidBase alpha107 — dedicated close control inside the mobile menu */
.aidbase-mobile-nav__close{display:none}
@media (max-width:900px){
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close{
    position:absolute!important;
    top:12px!important;
    right:max(16px,env(safe-area-inset-right))!important;
    z-index:10005!important;
    display:grid!important;
    place-items:center!important;
    width:46px!important;
    height:46px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #dfe7f0!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 8px 24px rgba(11,29,58,.12)!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close span{
    position:absolute!important;
    width:22px!important;
    height:2px!important;
    border-radius:2px!important;
    background:var(--aidbase-navy)!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close span:first-child{transform:rotate(45deg)!important}
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close span:last-child{transform:rotate(-45deg)!important}
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close:focus-visible{
    outline:3px solid rgba(33,130,214,.28)!important;
    outline-offset:3px!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__scroll{
    padding-top:70px!important;
  }
}


/* AidBase alpha108 — true full-screen mobile navigation */
@media (max-width:900px){
  body > .aidbase-nav-wrap{
    position:fixed!important;
    z-index:2147483000!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  body > .aidbase-nav-wrap.is-open{
    display:flex!important;
    flex-direction:column!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__topbar{
    position:relative!important;
    z-index:2!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:88px!important;
    padding:calc(12px + env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) 12px max(22px,env(safe-area-inset-left))!important;
    background:rgba(255,255,255,.98)!important;
    border-bottom:1px solid rgba(226,234,243,.9)!important;
  }
  .aidbase-mobile-nav__brand{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    color:var(--aidbase-navy)!important;
    text-decoration:none!important;
  }
  .aidbase-mobile-nav__logo{
    display:block!important;
    width:auto!important;
    max-width:210px!important;
    max-height:50px!important;
  }
  .aidbase-mobile-nav__brand-text{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    line-height:1!important;
  }
  .aidbase-mobile-nav__brand-text strong{
    font-size:25px!important;
    font-weight:850!important;
    letter-spacing:-.04em!important;
    white-space:nowrap!important;
  }
  .aidbase-mobile-nav__brand-text small{
    margin-top:9px!important;
    color:#5d6979!important;
    font-size:9px!important;
    font-weight:650!important;
    letter-spacing:.04em!important;
    white-space:nowrap!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    flex:0 0 48px!important;
    width:48px!important;
    height:48px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    background:linear-gradient(180deg,#fff 0%,#fff 70%,#f4faff 100%)!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__scroll{
    height:100%!important;
    padding-top:24px!important;
    padding-bottom:calc(44px + env(safe-area-inset-bottom))!important;
  }
  body.aidbase-menu-open .aidbase-header{
    visibility:hidden!important;
    pointer-events:none!important;
  }
}
body.admin-bar > .aidbase-nav-wrap{
  top:0!important;
  height:100dvh!important;
}

/* AidBase 1.0.0-alpha109 — full menu header balance */
@media (max-width:900px){
  body > .aidbase-nav-wrap .aidbase-mobile-nav__topbar{
    width:100%!important;
    min-height:92px!important;
    padding:calc(14px + env(safe-area-inset-top)) max(26px,env(safe-area-inset-right)) 14px max(26px,env(safe-area-inset-left))!important;
    justify-content:flex-start!important;
    gap:20px!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand{
    flex:1 1 auto!important;
    justify-content:flex-start!important;
    text-align:left!important;
    margin:0!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand-text{
    align-items:flex-start!important;
    text-align:left!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand-text strong{
    font-size:27px!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand-text small{
    font-size:10px!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__logo{
    margin:0!important;
    max-width:220px!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close{
    flex:0 0 48px!important;
    margin-left:auto!important;
    align-self:center!important;
  }
}

/* AidBase 1.0.0-alpha110 — numbered-card page palette corrections */
/* Top OUR VALUE: move the editorial number slightly inward. */
.aidcms-strength-card .aidcms-strength-no{
  right:54px!important;
}

/* After-school: every number follows the same accent used by its bottom line. */
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card--1{--numbered-accent:#4f86cf!important;--numbered-soft:#e7f0fc!important}
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card--2{--numbered-accent:#63ad73!important;--numbered-soft:#e9f6ec!important}
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card--3{--numbered-accent:#7664c8!important;--numbered-soft:#eeeafd!important}
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card--4{--numbered-accent:#31a195!important;--numbered-soft:#e7f7f4!important}
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card--5{--numbered-accent:#e79a45!important;--numbered-soft:#fff1df!important}
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card--6{--numbered-accent:#58778f!important;--numbered-soft:#eaf0f4!important}
.aidcms-after-school :is(.after-promise-grid,.after-activity-grid) .aid-numbered-card .aid-numbered-card__number{
  color:var(--numbered-soft)!important;
}

/* Home-care: replace the old single teal treatment and decorative circle. */
.aidcms-homecare .aidbase-support-grid .aid-numbered-card--1{--numbered-accent:#4f86cf!important;--numbered-soft:#e7f0fc!important}
.aidcms-homecare .aidbase-support-grid .aid-numbered-card--2{--numbered-accent:#63ad73!important;--numbered-soft:#e9f6ec!important}
.aidcms-homecare .aidbase-support-grid .aid-numbered-card--3{--numbered-accent:#7664c8!important;--numbered-soft:#eeeafd!important}
.aidcms-homecare .aidbase-support-grid .aid-numbered-card--4{--numbered-accent:#31a195!important;--numbered-soft:#e7f7f4!important}
.aidcms-homecare .aidbase-support-grid .aid-numbered-card .aid-numbered-card__number{
  color:var(--numbered-soft)!important;
}
.aidcms-homecare .aidbase-support-grid .aid-numbered-card:after{
  content:""!important;
  position:absolute!important;
  left:34px!important;
  right:auto!important;
  bottom:27px!important;
  width:82px!important;
  height:3px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--numbered-accent),color-mix(in srgb,var(--numbered-accent) 45%,transparent) 48%,transparent 100%)!important;
}

@media(max-width:760px){
  .aidcms-strength-card .aidcms-strength-no{right:46px!important}
  .aidcms-homecare .aidbase-support-grid .aid-numbered-card:after{
    left:24px!important;
    bottom:23px!important;
  }
}

/* AidBase 1.0.0-alpha114 — home OUR VALUE uses the same number position as service cards */
body .aidcms-strength-grid .aidcms-strength-card .aidcms-strength-no,
body .aidcms-strength-grid article.aidcms-strength-card .aidcms-strength-no{
  right:12px!important;
  left:auto!important;
}
@media(max-width:760px){
  body .aidcms-strength-grid .aidcms-strength-card .aidcms-strength-no,
  body .aidcms-strength-grid article.aidcms-strength-card .aidcms-strength-no{
    right:8px!important;
  }
}

/* === alpha115: stable purpose-built desktop navigation === */
@media (min-width:901px){
  .aidbase-header-row{gap:clamp(18px,2.2vw,34px)}
  .aidbase-nav-wrap{display:flex;align-items:center;gap:18px;min-width:0}
  .aidbase-nav--desktop{display:block;position:relative;z-index:220}
  .aidbase-desktop-menu{display:flex!important;align-items:stretch!important;gap:clamp(18px,2vw,32px)!important;margin:0!important;padding:0!important;list-style:none!important}
  .aidbase-desktop-menu>li{position:relative;display:flex;align-items:center;list-style:none}
  .aidbase-desktop-menu__trigger,
  .aidbase-desktop-menu__link{
    appearance:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;
    min-height:58px;padding:7px 0;border:0;background:transparent;color:var(--aidbase-navy);text-decoration:none;
    font:inherit;white-space:nowrap;cursor:pointer
  }
  .aidbase-desktop-menu__trigger{position:relative;padding-right:17px}
  .aidbase-desktop-menu__trigger small,
  .aidbase-desktop-menu__link small{color:#2182d6;font-size:8px;font-weight:850;letter-spacing:.17em;line-height:1}
  .aidbase-desktop-menu__trigger span,
  .aidbase-desktop-menu__link span{font-size:13px;font-weight:800;line-height:1.25}
  .aidbase-desktop-menu__trigger i{position:absolute;right:0;bottom:17px;width:7px;height:7px;border-right:1.5px solid #718096;border-bottom:1.5px solid #718096;transform:rotate(45deg);transition:transform .18s ease}
  .aidbase-desktop-menu__group.is-menu-open>.aidbase-desktop-menu__trigger i{transform:translateY(3px) rotate(225deg)}
  .aidbase-desktop-menu__trigger:hover span,
  .aidbase-desktop-menu__link:hover span,
  .aidbase-desktop-menu__trigger:focus-visible span,
  .aidbase-desktop-menu__link:focus-visible span{color:var(--aidbase-blue)}
  .aidbase-desktop-menu__trigger:focus-visible,
  .aidbase-desktop-menu__link:focus-visible{outline:2px solid rgba(33,130,214,.35);outline-offset:5px;border-radius:4px}
  .aidbase-nav--desktop .sub-menu{
    top:calc(100% + 8px);left:50%;min-width:250px;padding:10px;gap:2px;
    transform:translate(-50%,7px);z-index:300
  }
  .aidbase-nav--desktop .sub-menu a{display:flex!important;flex-direction:column;gap:3px;padding:12px 14px!important}
  .aidbase-nav--desktop .sub-menu a strong{font-size:13px;line-height:1.35}
  .aidbase-nav--desktop .sub-menu a small{color:#718096;font-size:10px;font-weight:600;line-height:1.45}
  .aidbase-nav--desktop .menu-item-has-children:hover>.sub-menu,
  .aidbase-nav--desktop .menu-item-has-children:focus-within>.sub-menu,
  .aidbase-nav--desktop .menu-item-has-children.is-menu-open>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
  .aidbase-header-contact{flex:0 0 auto;padding:12px 19px;font-size:13px}
}
@media (min-width:901px) and (max-width:1120px){
  .aidbase-inner{width:min(100% - 28px,1180px)}
  .aidbase-header-row{gap:14px}
  .aidbase-desktop-menu{gap:15px!important}
  .aidbase-desktop-menu__trigger span,.aidbase-desktop-menu__link span{font-size:12px}
  .aidbase-header-contact{padding:11px 15px}
}


/* AidBase 1.0.0-alpha134: editable child story media + recruit entry */
.aidcms-child-story .aidbase-media-copy{align-items:center}
.aidcms-child-story--left .aidbase-media-copy__media{order:-1}
.aidcms-child-story--no-image .aidbase-media-copy{grid-template-columns:1fr}
.aidcms-child-story--no-image .aidbase-media-copy__copy{max-width:780px}
.aidcms-child-story__media{min-height:0!important;aspect-ratio:4/3;border-radius:24px;box-shadow:0 16px 42px rgba(11,29,58,.08)}
.aidcms-child-story__media img{width:100%;height:100%;min-height:0!important;object-fit:cover}
.aidcms-child-story__media--1-1{aspect-ratio:1/1}
.aidcms-child-story__media--16-9{aspect-ratio:16/9}
.aid-recruit-entry{scroll-margin-top:96px}
.aid-recruit-entry__inner{max-width:880px}
.aid-recruit-entry .aidbase-section__head{margin-bottom:20px}
@media(max-width:900px){.aidcms-child-story--left .aidbase-media-copy__media{order:0}.aidcms-child-story__media{border-radius:18px}.aid-recruit-entry{scroll-margin-top:78px}}

/* AidBase alpha139: four-column footer policy center */
@media(min-width:901px){.aidbase-footer-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.aidbase-footer-main{grid-template-columns:1.15fr 2.35fr;gap:64px}}


/* alpha154: prevent reload-time scroll anchoring drift while late content settles. */
html, body { overflow-anchor: none; }


/* AidBase 1.0.0-alpha159: pinpoint mobile header test.
   Disable sticky positioning only on <=900px to isolate Safari sticky/compositing issues. */
@media (max-width:900px){
  .aidbase-header{
    position:static!important;
    top:auto!important;
  }
}


/* AidBase 1.0.0-alpha160: pinpoint mobile header-row repair.
   Keep alpha159 sticky test result, and normalize only the visible mobile header box. */
@media (max-width:900px){
  .aidbase-header > .aidbase-inner.aidbase-header-row{
    display:flex!important;
    position:relative!important;
    width:calc(100% - 32px)!important;
    min-height:68px!important;
    height:68px!important;
    margin:0 auto!important;
    padding:0!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    overflow:visible!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }
  .aidbase-header-row > .aidbase-brand{
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:calc(100% - 56px)!important;
    align-items:center!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }
  .aidbase-header-row > .aidbase-brand img,
  .aidbase-header-row > .aidbase-brand .aidbase-logo{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    max-height:44px!important;
    height:auto!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle{
    display:block!important;
    position:relative!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    overflow:visible!important;
    pointer-events:auto!important;
    z-index:3!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle span{
    display:block!important;
    width:25px!important;
    height:2px!important;
    margin:6px auto!important;
    background:var(--aidbase-navy)!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .aidbase-header-row > .aidbase-nav-wrap{
    display:none!important;
  }
  .aidbase-header-row > .aidbase-nav-wrap.is-open{
    display:block!important;
  }
}


/* AidBase 1.0.0-alpha163: iOS hamburger root-cause test.
   A stale aidbase-menu-open state must not make the entire header invisible. */
@media (max-width:900px){
  body.aidbase-menu-open .aidbase-header{
    visibility:visible!important;
    pointer-events:auto!important;
  }
}


/* AidBase 1.0.0-alpha169 — restore true one-page fullscreen mobile navigation.
   The menu panel is mounted under <body> by menu.js, so it is independent of the
   header/hero scroll position. Keep the visible header sticky while browsing. */
@media (max-width:900px){
  .aidbase-header{
    position:sticky!important;
    top:0!important;
    z-index:9999!important;
  }
  body > .aidbase-nav-wrap{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    overflow:hidden!important;
  }
  body > .aidbase-nav-wrap.is-open{display:flex!important;flex-direction:column!important;}
  body > .aidbase-nav-wrap .aidbase-mobile-nav{flex:1 1 auto!important;min-height:0!important;height:100%!important;}
  body > .aidbase-nav-wrap .aidbase-mobile-nav__scroll{height:100%!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;}
}


/* AidBase 1.0.0-alpha170 — zero-jump fullscreen mobile menu lock.
   Keep the document at its current scroll position; only suppress background scrolling.
   This avoids iOS Safari briefly painting the page at another Y position on close. */
html.aidbase-menu-open,
body.aidbase-menu-open{
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
body.aidbase-menu-open{
  position:static!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  width:auto!important;
}
@media (max-width:900px){
  body > .aidbase-nav-wrap.is-open{
    touch-action:auto!important;
    overscroll-behavior:contain!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__scroll{
    touch-action:pan-y!important;
  }
}


/* AidBase 1.0.0-alpha171 — compact Company Overview OUR VALUE cards.
   Preserve the established visual system while removing excessive vertical whitespace. */
@media (max-width:760px){
  .aidcms-company .aidcms-value-card,
  .aidcms-company .aid-unified-value{
    min-height:218px!important;
    padding:22px 22px 24px!important;
    border-radius:25px!important;
  }
  .aidcms-company .aidcms-value-card .aidrep-value__number,
  .aidcms-company .aid-unified-value__number{
    right:14px!important;
    top:-3px!important;
    font-size:82px!important;
  }
  .aidcms-company .aidcms-value-card .aidrep-value__meta,
  .aidcms-company .aid-unified-value__meta{
    min-height:34px!important;
    gap:11px!important;
    margin-bottom:19px!important;
  }
  .aidcms-company .aidcms-value-card .aidrep-value__pill,
  .aidcms-company .aid-unified-value__pill{
    min-height:34px!important;
    padding:5px 14px!important;
    font-size:13px!important;
  }
  .aidcms-company .aidcms-value-card h3,
  .aidcms-company .aid-unified-value h3{
    margin-bottom:11px!important;
    font-size:23px!important;
    line-height:1.45!important;
  }
  .aidcms-company .aidcms-value-card p,
  .aidcms-company .aid-unified-value p{
    padding-bottom:18px!important;
    font-size:15px!important;
    line-height:1.72!important;
  }
  .aidcms-company .aidcms-value-card .aidrep-value__line,
  .aidcms-company .aid-unified-value__line{
    left:22px!important;
    bottom:18px!important;
    width:72px!important;
  }
}


/* AidBase 1.0.0-alpha172 — Company Overview OUR VALUE spacing */
@media (max-width:760px){
  .aidcms-company .aidbase-company-values{
    gap:22px !important;
  }
}


/* AidBase 1.0.0-alpha173 — refined two-line mobile menu trigger.
   Keep the proven alpha170 fullscreen menu behavior; visual treatment only. */
@media (max-width:900px){
  .aidbase-header-row > .aidbase-menu-toggle{
    display:grid!important;
    place-content:center!important;
    gap:7px!important;
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle span{
    display:block!important;
    height:2px!important;
    margin:0!important;
    border:0!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#2182d6 0%,#35a6c7 55%,#79be68 100%)!important;
    transform-origin:center!important;
    transition:width .22s ease,transform .28s cubic-bezier(.2,.75,.25,1),opacity .18s ease!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle span:first-child{
    width:30px!important;
    justify-self:end!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle span:last-child{
    width:21px!important;
    justify-self:end!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle[aria-expanded="true"]{
    gap:0!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle[aria-expanded="true"] span:first-child{
    width:28px!important;
    transform:translateY(1px) rotate(45deg)!important;
  }
  .aidbase-header-row > .aidbase-menu-toggle[aria-expanded="true"] span:last-child{
    width:28px!important;
    transform:translateY(-1px) rotate(-45deg)!important;
  }
}


/* AidBase 1.0.0-alpha174 — mobile header/menu topbar exact-size unification.
   Closed header and fullscreen-menu header now use the same geometry. */
@media(max-width:900px){
  .aidbase-header > .aidbase-inner.aidbase-header-row{
    width:calc(100% - 32px)!important;
    min-height:92px!important;
    height:92px!important;
    padding:0!important;
  }
  .aidbase-header-row > .aidbase-brand{
    height:92px!important;
    align-items:center!important;
  }
  .aidbase-header-row > .aidbase-brand .aidbase-brand-name{
    font-size:25px!important;
    line-height:1!important;
  }
  .aidbase-header-row > .aidbase-brand .aidbase-brand-tag{
    margin-top:9px!important;
    font-size:9px!important;
    line-height:1.15!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__topbar{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:92px!important;
    height:92px!important;
    padding:0 16px!important;
    align-items:center!important;
    gap:12px!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand-text strong{
    font-size:25px!important;
    line-height:1!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand-text small{
    margin-top:9px!important;
    font-size:9px!important;
    line-height:1.15!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close{
    flex:0 0 48px!important;
    width:48px!important;
    height:48px!important;
    margin-left:auto!important;
  }
}


/* AidBase 1.0.0-alpha175 — keep the menu trigger visually stable while Safari navigates. */
@media(max-width:900px){
  html.aidbase-menu-navigating .aidbase-menu-toggle,
  html.aidbase-menu-navigating .aidbase-menu-toggle *,
  body.aidbase-menu-navigating .aidbase-menu-toggle,
  body.aidbase-menu-navigating .aidbase-menu-toggle *{
    transition:none!important;
    animation:none!important;
  }
}


/* AidBase 1.0.0-alpha176 — mobile drawer close control matches the new 2-line burger.
   Remove the legacy black X and draw the same blue→green two-line mark in its open state. */
@media(max-width:900px){
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close{
    position:relative!important;
    display:block!important;
    flex:0 0 48px!important;
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin-left:auto!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  /* Kill all legacy black-X sources. */
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close > span,
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close > i,
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close > svg{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
  }

  body > .aidbase-nav-wrap .aidbase-mobile-nav__close::before,
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close::after{
    content:""!important;
    position:absolute!important;
    right:7px!important;
    top:23px!important;
    width:29px!important;
    height:2px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#2182d6 0%,#35a6c7 58%,#79be68 100%)!important;
    opacity:1!important;
    visibility:visible!important;
    transform-origin:center!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close::before{
    transform:rotate(45deg)!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__close::after{
    transform:rotate(-45deg)!important;
  }
}


/* AidBase 1.0.0-alpha179 — exact same compact mobile header geometry, closed and open */
@media(max-width:900px){
  :root{--aidbase-mobile-header-h:68px;}

  .aidbase-header{
    min-height:var(--aidbase-mobile-header-h)!important;
    height:var(--aidbase-mobile-header-h)!important;
  }
  .aidbase-header > .aidbase-inner.aidbase-header-row{
    min-height:var(--aidbase-mobile-header-h)!important;
    height:var(--aidbase-mobile-header-h)!important;
    padding-top:0!important;
    padding-bottom:0!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__topbar{
    min-height:var(--aidbase-mobile-header-h)!important;
    height:var(--aidbase-mobile-header-h)!important;
    padding-top:0!important;
    padding-bottom:0!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand,
  body > .aidbase-nav-wrap .aidbase-mobile-nav__brand-text{
    min-height:0!important;
    margin:0!important;
    padding:0!important;
  }
}
