/* Loading skeletons for the @adc/ui Module Federation nav/footer.
   Shared across every migrated NewPublic master; the <link> to this file is emitted
   (render-blocking, near the top of <body>) by NewPublicSite.SkeletonSupportElement.
   Mirrors the real components' layout/tokens
   (packages/ui: nav-bar/NavBar.tsx, footer/Footer.tsx, tailwind.css). */
.adc-skel,.adc-skel *{box-sizing:border-box}

/* Sticky footer: on short pages (e.g. a single-field LCP wizard step) the legacy
   masters leave a gap of white page background below the footer instead of the
   footer sitting flush with the bottom of the viewport. body is the one element
   common to every migrated master (ADC.Master's `.site` wrapper > `form.formNewPublic`,
   CLS_Template_NEW.Master's bare `<form>`), so stretching body + its single real
   child to the viewport height and giving the footer (or its skeleton) an
   auto top-margin pushes it to the bottom on short pages without affecting tall
   ones, regardless of the master's inner DOM shape. Only loaded on MF-enabled
   pages (this file is gated on HasCommonMfHost), so it can't affect legacy pages. */
html{height:100%}
body{display:flex;flex-direction:column;min-height:100vh}
/* craftOverrides.css ships `div.site{position:absolute;top:0}` for the OLD fixed top nav
   (still used on non-MF pages). `flex`/`flex-grow` have no effect on an absolutely
   positioned element, so on MF pages that rule silently defeats the sticky-footer flex
   chain below: `.site` sized to its own content instead of the viewport, leaving a gap of
   bare `body` background under the footer on short pages (e.g. get_started/finddealer_wizard.aspx).
   The new NavBar/skeleton nav is itself `position:fixed`, so `.site` no longer needs to be
   taken out of flow to clear it — same margin-top offset, but back in normal flow. */
body>.site{position:static}
/* main.css ships a global `form{margin:auto}` reset. Auto left/right margins on a flex
   item suppress cross-axis stretch (per the flexbox spec) and shrink the item to fit its
   own content width instead, then center it via the auto margins - so without this
   override, body>form (and .site>form.formNewPublic) become a narrower, horizontally
   CENTERED column instead of stretching edge-to-edge, leaving white gutters on both
   sides of the nav/footer on every MF page (visible in the nav bar and footer background). */
body>.site,body>form{display:flex;flex-direction:column;flex:1 0 auto;margin:0}
.site>form.formNewPublic{display:flex;flex-direction:column;flex:1 0 auto;margin:0}
/* NavBar.tsx's root <header> is position:fixed, so [data-adc-mf="nav"] (its placeholder)
   collapses to 0 height and the content right after it renders underneath the fixed bar.
   Reserve --nav-h here once for every migrated master instead of each page adding its own
   offset. get_started's LcpMfSite pages already compensate for this via their own
   margin-top on their content wrapper, so they explicitly zero this out (see those pages'
   own <style> blocks) to avoid double-counting the same 86px twice. */
[data-adc-mf="nav"]{min-height:86px}
.adc-skel-footer,[data-adc-mf="footer"]{margin-top:auto}
/* SSR mode: the real prerendered nav/footer is in the DOM (crawlable) but hidden
   from the user until the host hydrates it, so it never flashes unstyled. The
   skeleton (sibling in front) is shown meanwhile; the host removes data-adc-hydrating
   after hydrateRoot, and skeleton.js reveals it as a fail-safe if the host never loads. */
[data-adc-hydrating]{display:none!important}
.adc-skel-box{position:relative;overflow:hidden;border-radius:6px;background:var(--adc-skel-base)}
.adc-skel-box::after{content:'';position:absolute;top:0;right:0;bottom:0;left:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,var(--adc-skel-glow),transparent);animation:adc-skel-shimmer 1.3s ease-in-out infinite}
@keyframes adc-skel-shimmer{100%{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.adc-skel-box::after{animation:none}}

/* Nav (mirrors NavBar.tsx: fixed 86px white bar, #e6e6e6 hairline, 1440px container) */
.adc-skel-nav{--adc-skel-base:#cdd3da;--adc-skel-glow:rgba(255,255,255,.9);position:fixed;top:0;left:0;right:0;z-index:50;height:86px;background:#fff;border-bottom:1px solid #e6e6e6}
.adc-skel-nav__inner{display:flex;align-items:center;gap:24px;height:100%;max-width:1440px;margin:0 auto;padding:0 24px}
.adc-skel-nav__logo{width:132px;height:24px}
.adc-skel-nav__spacer{flex:1 1 auto}
.adc-skel-nav__item{width:66px;height:14px}
.adc-skel-nav__login{width:52px;height:14px}
.adc-skel-nav__cta{width:118px;height:38px;border-radius:9999px}
.adc-skel-nav__burger{display:none;width:26px;height:18px;border-radius:4px}
@media (max-width:900px){.adc-skel-nav__item,.adc-skel-nav__cta{display:none}.adc-skel-nav__login{margin-left:auto}.adc-skel-nav__burger{display:inline-block}}

/* Footer (mirrors Footer.tsx: #0a0a0a, 5-column link grid, #262626 divider, logos/social + legal/lang rows) */
.adc-skel-footer{--adc-skel-base:#1f1f1f;--adc-skel-glow:rgba(255,255,255,.06);background:#0a0a0a;padding:70px 24px 30px}
.adc-skel-footer__inner{max-width:1232px;margin:0 auto;display:flex;flex-direction:column;gap:40px}
.adc-skel-footer__cols{display:grid;grid-template-columns:repeat(5,1fr);gap:32px}
.adc-skel-footer__col{display:flex;flex-direction:column;gap:18px}
.adc-skel-footer__title{width:60%;height:16px;margin-bottom:8px}
.adc-skel-footer__link{width:82%;height:15px}
.adc-skel-footer__link--short{width:55%}
.adc-skel-footer__divider{height:1px;background:#262626}
.adc-skel-footer__row{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.adc-skel-footer__logos{width:190px;height:38px}
.adc-skel-footer__social{display:flex;gap:12px}
.adc-skel-footer__dot{width:40px;height:40px;border-radius:9999px}
.adc-skel-footer__legal{display:flex;gap:24px;flex-wrap:wrap}
.adc-skel-footer__legal-item{width:90px;height:15px}
.adc-skel-footer__lang{width:70px;height:16px}
@media (max-width:768px){.adc-skel-footer__cols{grid-template-columns:1fr;gap:18px}.adc-skel-footer__row{flex-direction:column;align-items:flex-start;gap:20px}}

/* Find-dealer-wizard step 1 (mirrors FindDealerWizard.tsx's "type" step: light
   hero with 3 property-type tiles, "How It Works" 3-column band, brand CTA band) */
.adc-skel-wizard{--adc-skel-base:#e2e6ea;--adc-skel-glow:rgba(255,255,255,.9)}
.adc-skel-wizard__hero{background:#f7f9fb;padding:64px 24px;text-align:center}
.adc-skel-wizard__eyebrow{width:140px;height:14px;margin:0 auto}
.adc-skel-wizard__heading{width:min(600px,80%);height:40px;margin:12px auto 0}
.adc-skel-wizard__subheading{width:260px;height:16px;margin:12px auto 0}
.adc-skel-wizard__card{max-width:760px;margin:40px auto 0;background:#fff;border:1px solid #d4dde8;border-radius:28px;padding:32px;display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.adc-skel-wizard__option{display:flex;flex-direction:column;align-items:center;gap:11px}
.adc-skel-wizard__option-icon{width:100%;aspect-ratio:1.55;border-radius:16px;border:1.5px solid #d4dde8}
.adc-skel-wizard__option-pill{width:100%;min-height:50px;border-radius:9999px}
.adc-skel-wizard__link{width:160px;height:16px;margin:32px auto 0}
.adc-skel-wizard__how{background:#fff;padding:80px 24px;max-width:1100px;margin:0 auto;text-align:center}
.adc-skel-wizard__how-heading{width:220px;height:32px;margin:0 auto}
.adc-skel-wizard__how-subheading{width:300px;height:16px;margin:8px auto 0}
.adc-skel-wizard__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:56px;text-align:left}
.adc-skel-wizard__step-num{width:44px;height:44px;border-radius:12px}
.adc-skel-wizard__step-title{width:70%;height:16px;margin-top:20px}
.adc-skel-wizard__step-desc{width:100%;height:32px;margin-top:8px}
.adc-skel-wizard__cta{background:#db3000;padding:56px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:32px;max-width:1100px;margin:0 auto}
.adc-skel-wizard__cta-heading{display:block;width:280px;max-width:100%;height:28px;background:rgba(255,255,255,.35);border-radius:6px}
.adc-skel-wizard__cta-body{display:block;width:340px;max-width:100%;height:16px;margin-top:12px;background:rgba(255,255,255,.25);border-radius:6px}
.adc-skel-wizard__cta-btns{display:flex;gap:16px}
.adc-skel-wizard__cta-btn{width:110px;height:44px;border-radius:9999px;background:rgba(255,255,255,.35)}
@media (max-width:768px){.adc-skel-wizard__card{grid-template-columns:1fr 1fr}.adc-skel-wizard__steps{grid-template-columns:1fr}.adc-skel-wizard__step-desc{height:48px}.adc-skel-wizard__cta{flex-direction:column;align-items:flex-start}}
