/* TownHub composition with AhiBizz's identity; the public launch frame is outside this scope. */
body.ahi-townhub .ahi-townhub-app{
  --ahi-th-header-height:80px;
  --th-navy:#142540;--th-navy-soft:#203c5c;--th-gold:#d7aa43;--th-gold-light:#ecd097;
  --th-page:var(--ahi-surface-page,#f5f7fa);--th-surface:var(--ahi-surface,#fff);
  --th-raised:var(--ahi-surface-raised,#f0f3f7);--th-ink:var(--ahi-text,#142540);
  --th-muted:var(--ahi-muted,#758397);--th-line:var(--ahi-line,#e4e9f0);
  --th-warm:var(--ahi-warm,#f8f3e8);--th-radius:20px;--th-shadow:0 10px 36px #14254008;
  --ahi-dir-text:var(--th-ink);--ahi-dir-muted:var(--th-muted);--ahi-dir-line:var(--th-line);
  --ahi-dir-gold:var(--th-gold);--ahi-dir-cream:var(--th-warm);
  isolation:isolate;min-block-size:100svh;background:var(--th-page);color:var(--th-ink);
  font-family:Montserrat,system-ui,sans-serif;line-height:1.65;overflow-wrap:break-word;
}
body.ahi-townhub .ahi-townhub-app *,body.ahi-townhub .ahi-townhub-app *::before,body.ahi-townhub .ahi-townhub-app *::after{box-sizing:border-box}
body.ahi-townhub .ahi-townhub-app :is(main,section,article,aside,form,fieldset,nav,div){min-inline-size:0}
body.ahi-townhub .ahi-townhub-app .ahi-hero-photo-cell img{max-inline-size:none}
body.ahi-townhub .ahi-townhub-app :is(h1,h2,h3,h4){letter-spacing:-.025em;line-height:1.3;text-wrap:balance}
body.ahi-townhub .ahi-townhub-app :is(button,input,select,textarea){font:inherit}
body.ahi-townhub .ahi-townhub-app :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--th-gold);outline-offset:4px}
body.ahi-townhub .ahi-townhub-app :is(input,select,textarea){scroll-margin-block-start:calc(var(--ahi-th-header-height) + 24px)}
body.ahi-townhub .ahi-townhub-app :is(.ahi-directory,.ahi-business-page,.ahi-admin-page,.ahi-account-page,.ahi-approval-page,.ahi-membership,.ahi-eco-page,.ahi-partner-page){background:transparent;color:var(--th-ink)}
body.ahi-townhub .ahi-townhub-app :is(.ahi-dir-container,.ahi-dir-footer-inner){inline-size:min(1280px,calc(100% - 64px));margin-inline:auto}
body.ahi-townhub .ahi-townhub-app .ahi-dir-header{
  position:sticky;inset-block-start:0;z-index:60;block-size:auto;min-block-size:var(--ahi-th-header-height);
  background:linear-gradient(115deg,#142540fa,#203c5cfa);border-block-end:1px solid #ffffff13;
  box-shadow:0 4px 24px #10213c0d;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
body.ahi-townhub .ahi-townhub-app .ahi-dir-header-inner{
  display:grid;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr);gap:24px;
  inline-size:min(1420px,calc(100% - 64px));min-block-size:var(--ahi-th-header-height);margin-inline:auto;padding:0;align-items:center;
}
body.ahi-townhub .ahi-townhub-app .ahi-dir-brand{display:inline-flex;justify-self:start;align-items:center;padding:0;background:transparent!important;border:0!important;border-radius:0;box-shadow:none;inline-size:176px;flex:none}
body.ahi-townhub .ahi-townhub-app .ahi-dir-brand .ahi-dir-logo{inline-size:100%;block-size:auto;max-block-size:52px;object-fit:contain}
body.ahi-townhub .ahi-townhub-app .ahi-dir-header :is(.ahi-brand-logo-color){display:none!important}
body.ahi-townhub .ahi-townhub-app .ahi-dir-header :is(.ahi-brand-logo-white){display:block!important}
body.ahi-townhub .ahi-townhub-app .ahi-dir-desktop-nav{position:static;display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:nowrap;transform:none;inset:auto;white-space:nowrap}
body.ahi-townhub .ahi-townhub-app .ahi-dir-desktop-nav :is(a,summary){position:relative;padding:29px 0;color:#f1f4f9;font-size:12px;font-weight:650;line-height:1.4;text-decoration:none;transition:color .18s ease}
body.ahi-townhub .ahi-townhub-app .ahi-dir-desktop-nav :is(a:hover,a.is-current,summary:hover){color:var(--th-gold-light)}
body.ahi-townhub .ahi-townhub-app .ahi-dir-desktop-nav a.is-current::after{content:"";position:absolute;inset-block-end:18px;inset-inline:0;block-size:2px;background:var(--th-gold);border-radius:2px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-header-actions{justify-self:end;display:flex;align-items:center;gap:14px;min-inline-size:0}
body.ahi-townhub .ahi-townhub-app .ahi-dir-join{min-block-size:44px;border-radius:12px;padding:12px 20px;font-size:12px;white-space:nowrap;background:linear-gradient(125deg,var(--th-gold-light),var(--th-gold));color:#142540!important;box-shadow:0 5px 16px #d7aa431a}
body.ahi-townhub .ahi-townhub-app .ahi-dir-menu-toggle{inline-size:42px;block-size:42px;border:1px solid #ffffff25;border-radius:12px;background:#ffffff08;color:#fff;display:none;align-items:center;justify-content:center;flex:none}
body.ahi-townhub .ahi-townhub-app .ahi-dir-menu-toggle svg{inline-size:21px;block-size:21px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-ecosystem-menu>div{inset-block-start:calc(100% - 1px);border:1px solid var(--th-line);border-radius:0 0 16px 16px;box-shadow:0 18px 42px #1425401a;background:var(--th-surface);padding:10px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-ecosystem-menu>div a{padding:12px 14px;border-radius:10px;color:var(--th-ink);white-space:normal}
body.ahi-townhub .ahi-townhub-app .ahi-dir-ecosystem-menu>div a:hover{background:var(--th-warm);color:var(--th-ink)}
body.ahi-townhub .ahi-townhub-app :is(.ahi-dir-button,.ahi-account-button,.ahi-approval-button,.ahi-business-button,.ahi-membership-button,.ahi-partner-button){min-block-size:44px;border-radius:12px;padding:12px 20px;font-size:13px;font-weight:700;line-height:1.5;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
body.ahi-townhub .ahi-townhub-app :is(.ahi-dir-button,.ahi-account-button,.ahi-approval-button,.ahi-business-button,.ahi-membership-button,.ahi-partner-button):not(:disabled):hover{transform:translateY(-1px);box-shadow:0 7px 20px #14254012}
body.ahi-townhub .ahi-townhub-app :is(.ahi-dir-button-outline,.ahi-account-secondary,.ahi-approval-button.is-secondary,.ahi-business-button.is-secondary,.ahi-membership-secondary){background:var(--th-surface);border:1px solid var(--th-line);box-shadow:none;color:var(--th-ink)!important}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer{background:linear-gradient(135deg,#142540,#192f4c);border-block-start:1px solid #ffffff0a;padding-block:56px 0;color:#d5deea}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-inner{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:42px;padding-block:0 38px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-inner>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-inner strong{color:#fff;font-size:13px;font-weight:750;margin-block-end:8px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer a{font-size:12px;line-height:1.7;color:#c5d0df;text-decoration:none}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer a:hover{color:var(--th-gold-light)}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer .ahi-dir-brand{inline-size:175px;margin-block-end:8px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-brand p{font-size:12px;color:#b5c2d4;max-inline-size:240px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-base{border-block-start:1px solid #ffffff12;padding:20px 24px;font-size:11px;color:#9dacc1;text-align:center}
body.ahi-townhub .ahi-townhub-app .ahi-dir-bottom-nav{border:1px solid var(--th-line);border-radius:24px;background:color-mix(in srgb,var(--th-surface) 94%,transparent);box-shadow:0 12px 38px #14254014;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
body.ahi-townhub .ahi-townhub-app .ahi-dir-bottom-nav a{border-radius:16px;color:var(--th-muted);font-size:11px;gap:5px}
body.ahi-townhub .ahi-townhub-app .ahi-dir-bottom-nav a.is-current{background:var(--th-warm);color:var(--ahi-gold-text,#88651f)}
body.ahi-townhub .ahi-townhub-app .ahi-dir-bottom-nav svg{inline-size:22px;block-size:22px}
@media(min-width:1181px){body.ahi-townhub .ahi-townhub-app .ahi-dir-desktop-nav{display:flex}body.ahi-townhub .ahi-townhub-app .ahi-dir-mobile-menu{display:none}}
@media(max-width:1180px){
  body.ahi-townhub .ahi-townhub-app .ahi-dir-header-inner{grid-template-columns:1fr auto;gap:18px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-desktop-nav{display:none}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-menu-toggle{display:inline-flex}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-mobile-menu{position:absolute;inset-block-start:calc(100% + 8px);inset-inline:20px;max-block-size:calc(100svh - 110px);overflow-y:auto;overscroll-behavior:contain;inline-size:auto;margin:0;padding:12px;display:flex;flex-direction:column;align-items:stretch;gap:3px;background:#182f4df7;border:1px solid #ffffff1a;border-radius:18px;box-shadow:0 20px 50px #0c1c3333;backdrop-filter:blur(20px)}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-mobile-menu :is(a,summary){display:block;padding:13px 15px;min-block-size:44px;border-radius:11px;color:#eaf0f8;font-size:13px;font-weight:600;line-height:1.5;text-decoration:none}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-mobile-menu :is(a:hover,a.is-current){background:#ffffff0b;color:var(--th-gold-light)}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-mobile-menu .ahi-dir-ecosystem-menu>div{position:static;background:#ffffff07;border:0;border-radius:12px;box-shadow:none;margin-block:4px;padding:5px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-mobile-menu .ahi-dir-ecosystem-menu>div a{color:#eaf0f8;padding-inline-start:26px}
}
@media(max-width:760px){
  body.ahi-townhub .ahi-townhub-app{--ahi-th-header-height:72px}
  body.ahi-townhub .ahi-townhub-app :is(.ahi-dir-container,.ahi-dir-footer-inner){inline-size:calc(100% - 32px)}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-header-inner{inline-size:calc(100% - 32px);gap:12px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-brand{inline-size:140px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-header-actions{gap:10px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-join{display:none}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-footer{padding-block-start:34px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px;padding-block-end:28px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-brand{grid-column:1/-1}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-inner a{font-size:11px}
  body.ahi-townhub .ahi-townhub-app .ahi-dir-footer-base{padding-block:17px}
  body.ahi-townhub .ahi-townhub-app:has(.ahi-dir-bottom-nav){padding-block-end:calc(104px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:360px){body.ahi-townhub .ahi-townhub-app .ahi-dir-brand{inline-size:126px}body.ahi-townhub .ahi-townhub-app .ahi-dir-header-inner{gap:8px}body.ahi-townhub .ahi-townhub-app .ahi-dir-header-actions{gap:7px}}
@media(prefers-reduced-motion:reduce){body.ahi-townhub .ahi-townhub-app *,body.ahi-townhub .ahi-townhub-app *::before,body.ahi-townhub .ahi-townhub-app *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
[data-ahi-motion="paused"] body.ahi-townhub .ahi-townhub-app *,[data-ahi-motion="paused"] body.ahi-townhub .ahi-townhub-app *::before,[data-ahi-motion="paused"] body.ahi-townhub .ahi-townhub-app *::after{animation-play-state:paused!important}
body.ahi-townhub .ahi-townhub-app .ahi-business-route .leaflet-tooltip{inline-size:max-content;max-inline-size:min(220px,calc(100vw - 80px))}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-brand-area{display:flex;align-items:center;gap:14px;justify-self:start;min-inline-size:0}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-trigger{display:inline-flex;align-items:center;justify-content:center;flex:none;inline-size:40px;block-size:40px;border:1px solid #ffffff26;border-radius:12px;color:#ecd097;background:#ffffff08;cursor:pointer}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-trigger svg{inline-size:19px;block-size:19px}
body.ahi-townhub:has(.ahi-townhub-search-overlay){overflow:hidden}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-overlay{position:fixed;inset:0;z-index:10030;display:flex;justify-content:center;align-items:flex-start;padding:clamp(90px,16vh,180px) 24px 32px;background:#0a1726bd;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:auto;overscroll-behavior:contain}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-dialog{inline-size:min(1040px,100%);max-block-size:calc(100dvh - 120px);overflow:auto;border:1px solid var(--th-line);border-radius:20px;background:var(--th-surface);color:var(--th-ink);padding:30px;box-shadow:0 30px 100px #0005;animation:ahi-search-arrive .2s ease-out}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-block-end:24px}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-heading h2{margin:0;color:var(--th-ink);font-size:24px}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-close{display:inline-flex;align-items:center;justify-content:center;flex:none;inline-size:44px;block-size:44px;border:1px solid var(--th-line);border-radius:12px;background:var(--th-raised);color:var(--th-ink);cursor:pointer}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;border:1px solid var(--th-line);border-radius:12px;padding:8px;gap:0}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form>label{display:flex;align-items:center;gap:10px;min-inline-size:0;padding:4px 14px;border-inline-end:1px solid var(--th-line)}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form>label svg{flex:none;inline-size:18px;block-size:18px;color:var(--th-gold)}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form :is(input,select){inline-size:100%;min-inline-size:0;min-block-size:44px;padding:0;border:0;border-radius:0;background:transparent;color:var(--th-ink);font-size:13px;outline-offset:0}
body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form>.ahi-dir-button{margin-inline-start:8px;background:var(--th-gold);border:0;color:#142540}
@keyframes ahi-search-arrive{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-brand-area{gap:8px}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-trigger{inline-size:34px;block-size:38px;border-color:transparent;background:transparent}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-overlay{padding:90px 16px 24px}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-dialog{padding:20px;max-block-size:calc(100dvh - 110px)}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form{grid-template-columns:1fr}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form>label{border-inline:0;border-block-end:1px solid var(--th-line);padding-block:8px}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form :is(input,select){font-size:16px}
  body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-form>.ahi-dir-button{margin-inline-start:0;margin-block-start:8px}
}
@media(max-width:360px){body.ahi-townhub .ahi-townhub-app .ahi-townhub-brand-area{gap:4px}body.ahi-townhub .ahi-townhub-app .ahi-townhub-search-trigger{inline-size:30px}}
