/* Critical public shell: header, navigation and first hero. */
:root{--ap-content:min(1220px,calc(100vw - 32px));--ap-font-body:Inter,system-ui,sans-serif;--ap-font-display:"Plus Jakarta Sans",Inter,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body.ap-client{margin:0;overflow-x:hidden;color:var(--ap-text,#111827);background:var(--ap-section-light,#fff);font-family:var(--ap-font-body)}body.ap-client a{color:var(--ap-link,var(--ap-accent,#ff4015))}.ap-main{width:100%;margin:0;padding-top:0!important}.ap-topbar{position:sticky;top:0;z-index:70;margin:0!important;color:var(--ap-menu-text,#fff);background:var(--ap-menu-bg,var(--ap-primary,#1f3a6f));border-bottom:1px solid rgba(255,255,255,.22);box-shadow:0 14px 38px rgba(15,23,42,.26)}.ap-topbar-inner{width:var(--ap-content);min-height:76px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px}.ap-brand,.ap-nav-link,.ap-nav-button,.ap-drawer-link,.ap-submenu-link,.ap-nav-dropdown-item{color:inherit;text-decoration:none}.ap-brand{min-width:0;display:inline-flex;align-items:center;gap:12px;font-family:var(--ap-font-display);font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ap-brand img,.ap-topbar .ap-brand img{width:44px;height:44px;object-fit:contain;background:transparent;border:0}.ap-brand-name{max-width:38vw;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ap-nav--desktop{display:flex;justify-content:flex-end;align-items:center;gap:4px}.ap-nav-item,.ap-nav-dropdown{position:relative}.ap-nav-link,.ap-nav-button,.ap-burger,.ap-header-cart{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border:1px solid transparent;background:transparent;color:inherit;font:850 12px/1 var(--ap-font-display);letter-spacing:.13em;text-transform:uppercase;cursor:pointer}.ap-nav-link:hover,.ap-nav-button:hover,.ap-nav-item:focus-within>.ap-nav-link,.ap-nav-dropdown:hover>.ap-nav-link,.ap-nav-dropdown.is-open>.ap-nav-link,.ap-nav-link.is-active{border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.12)}.ap-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.ap-submenu,.ap-nav-dropdown-panel{position:absolute;top:100%;left:0;z-index:100;min-width:260px;padding:8px;display:none;background:var(--ap-menu-bg,var(--ap-primary,#1f3a6f));color:#fff;border:1px solid rgba(255,255,255,.28)}.ap-nav-item:hover .ap-submenu,.ap-nav-item:focus-within .ap-submenu,.ap-nav-dropdown:hover .ap-nav-dropdown-panel,.ap-nav-dropdown:focus-within .ap-nav-dropdown-panel,.ap-nav-dropdown.is-open .ap-nav-dropdown-panel{display:grid;gap:4px}.ap-submenu-link,.ap-nav-dropdown-item{display:block;min-height:42px;padding:12px 14px;color:#fff!important;font:850 12px/1.25 var(--ap-font-display);letter-spacing:.08em;text-transform:uppercase}.ap-burger{display:none;width:46px;height:46px;padding:0;border-color:rgba(255,255,255,.32);gap:5px;flex-direction:column}.ap-burger span{display:block;width:22px;height:2px;background:currentColor}.ap-drawer{position:fixed;inset:0;z-index:90;min-height:100dvh;background:rgba(15,23,42,.42);color:#fff}.ap-drawer[hidden]{display:none!important}.ap-drawer-backdrop{position:absolute;inset:0}.ap-drawer-panel{position:relative;width:min(520px,100%);height:100dvh;margin-left:auto;padding:20px;overflow-y:auto;background:var(--ap-menu-bg,var(--ap-primary,#1f3a6f));border-left:1px solid rgba(255,255,255,.24)}.ap-drawer-link,.ap-drawer-accordion-summary{width:100%;min-height:46px;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font:850 13px/1.2 var(--ap-font-display);letter-spacing:.1em;text-transform:uppercase}.ap-hero,.ap-news-detail-hero,.ap-auto-hero-split,.ap-news-list-hero,.ap-home-simple-hero{width:100%;max-width:none!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden;background:var(--ap-section-dark,#111827);color:#fff}.ap-auto-hero-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(460px,74vh,760px)}.ap-auto-hero-media{position:relative;min-height:inherit;overflow:hidden;background:#111827}.ap-auto-hero-media img{width:100%;height:100%;display:block;object-fit:cover}.ap-auto-hero-content{position:relative;min-height:inherit;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(36px,6vw,90px);background:linear-gradient(145deg,color-mix(in srgb,var(--ap-primary,#1f3a6f) 88%,#05070b),#05070b);color:#fff}.ap-auto-hero-content>*{position:relative;z-index:1;max-width:720px}.ap-auto-hero-kicker,.ap-kicker{margin:0 0 14px;color:#fff;font:900 12px/1.2 var(--ap-font-display);letter-spacing:.18em;text-transform:uppercase}.ap-auto-hero-title,.ap-hero-title,.ap-auto-hero-content h1,.ap-auto-hero-content h2{margin:0;color:#fff;font:900 clamp(44px,7vw,104px)/.9 var(--ap-font-display);letter-spacing:0;text-transform:uppercase}.ap-hero-sub,.ap-auto-hero-content p{margin:22px 0 0;max-width:62ch;color:rgba(255,255,255,.92)!important;font-size:clamp(17px,1.8vw,22px);line-height:1.5}.ap-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}@media(max-width:900px){.ap-topbar-inner{min-height:66px;gap:10px}.ap-nav--desktop{display:none}.ap-burger{display:inline-flex}.ap-auto-hero-split{display:block;position:relative;min-height:min(70vh,620px)}.ap-auto-hero-media{position:absolute;inset:0}.ap-auto-hero-content{min-height:min(70vh,620px);background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.08) 72%);padding:28px 20px}.ap-auto-hero-title,.ap-hero-title{font-size:clamp(38px,12vw,64px)}}
/* Text with associated image: two columns on desktop, image on the right. */
.ap-pack-section-with-media .ap-pack-media,.ap-pack-section-with-media .ap-md-image{width:min(100%,450px);max-width:450px;justify-self:center}.ap-pack-section-with-media .ap-pack-media img,.ap-pack-section-with-media .ap-md-image img{width:100%;max-width:450px;height:auto}@media(min-width:761px){body.ap-client .ap-pack-section-with-media>.ap-pack-inner{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,450px)!important;align-items:start!important;gap:clamp(22px,4vw,48px)!important}body.ap-client .ap-pack-section-with-media>.ap-pack-inner>.ap-prose{grid-column:1!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}body.ap-client .ap-pack-section-with-media>.ap-pack-inner>.ap-pack-media,body.ap-client .ap-pack-section-with-media>.ap-pack-inner>.ap-md-image{grid-column:2!important;align-self:start!important;justify-self:end!important;margin:0!important}}@media(max-width:760px){body.ap-client .ap-pack-section-with-media>.ap-pack-inner{display:grid!important;grid-template-columns:minmax(0,1fr)!important}body.ap-client .ap-pack-section-with-media>.ap-pack-inner>.ap-pack-media,body.ap-client .ap-pack-section-with-media>.ap-pack-inner>.ap-md-image{grid-column:1!important;justify-self:center!important;margin-top:18px!important}}
/* Core CSS is deferred for these packs: the decorative legacy glow must not repaint the hero. */
header.ap-hero::after,.ap-news-detail-hero::after{content:none!important}

/* The split news hero is smaller than a full hero. Match its final title
   scale in the critical sheet so it cannot flash at the full-hero size. */
@media(min-width:901px){
body.ap-client .ap-news-detail-hero.ap-auto-hero-split:not(.ap-index-hero-full):not(.ap-index-hero-compact) :is(.ap-auto-hero-title,.ap-hero-title){
  font-size:clamp(30px,3.8vw,54px)!important;
  line-height:.98!important;
  max-width:12.5em!important;
}
}

/* Reserve the final parallax hero geometry before its page stylesheet arrives. */
body.ap-client .ap-news-detail-hero.ap-hero-parallax{min-height:clamp(420px,62vh,720px)!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:1fr!important;align-items:stretch!important}
body.ap-client .ap-news-detail-hero.ap-hero-parallax .ap-news-hero-content{position:relative!important;grid-area:1 / 1!important;align-self:end!important;justify-self:start!important;z-index:6!important;width:min(760px,calc(100vw - 64px))!important;max-width:min(760px,calc(100vw - 64px))!important;margin-left:max(42px,calc((100vw - 1220px) / 2 + 16px))!important;margin-right:auto!important;padding:clamp(130px,22vh,230px) 0 clamp(34px,7vh,80px)!important;box-sizing:border-box!important;min-height:0!important;height:auto!important}
@media(max-width:760px){body.ap-client .ap-news-detail-hero.ap-hero-parallax{min-height:clamp(420px,68vh,620px)!important}body.ap-client .ap-news-detail-hero.ap-hero-parallax .ap-news-hero-content{width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;margin-left:16px!important}}

/* The pack stylesheet is deferred. Reserve the article title's final rhythm
   here so its default browser heading metrics cannot create CLS. */
body.ap-client .ap-news-detail-body .ap-pack-section .ap-prose>h2,
body.ap-client .ap-pack-article .ap-pack-section .ap-prose>h2{
  position:relative;
  display:inline-block;
  max-width:100%;
  margin:0 0 22px;
  padding-bottom:10px;
  overflow-wrap:anywhere;
  font-family:var(--ap-font-display);
  font-size:clamp(28px,3.3vw,48px)!important;
  font-weight:900;
  line-height:1.05;
}

/* On a one-column hero the explanatory copy pushes the appointment action
   below the fold. Keep it for the desktop panel only. */
@media(max-width:900px){
  body.ap-client .ap-news-detail-hero.ap-auto-hero-split .ap-hero-sub{display:none!important;}
}
