/* /interstitial.css */
.chivi-interstitial{padding:0;border:0;border-radius:24px;width:min(900px,94vw);max-width:94vw;height:min(760px,92dvh);max-height:92dvh;background:#223b32;color:white;overflow:auto;box-shadow:0 24px 100px #0007;animation:chivi-ad-in .22s ease-out}.chivi-interstitial::backdrop{background:#101a16b8;backdrop-filter:blur(5px)}.chivi-interstitial article{position:relative;min-height:100%;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:20px 7% 40px;box-sizing:border-box}.interstitial-photo,.interstitial-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.interstitial-shade{background:linear-gradient(180deg,#15271b22 0%,#15271b55 25%,#12271cf5 85%)}.interstitial-label{position:absolute;left:24px;top:24px;padding:8px 12px;background:#16271dc9;border-radius:30px;font:12px system-ui}.chivi-interstitial .interstitial-close{display:grid;place-items:center;box-sizing:border-box;padding:0;min-width:48px;min-height:48px;line-height:1;appearance:none;position:sticky;align-self:flex-start;top:0;margin-left:auto;z-index:3;flex-shrink:0;width:48px;height:48px;border:1px solid #fff8;border-radius:50%;background:#fff;color:#16382a;font-size:24px;cursor:pointer}.chivi-interstitial .interstitial-close svg{display:block;width:24px;height:24px;flex:none;pointer-events:none}.interstitial-content{position:relative;z-index:1;max-width:610px;margin-left:0;width:100%;padding-top:30px}.interstitial-content>p:first-of-type{font:700 15px system-ui;letter-spacing:.03em}.interstitial-content h2{font:500 clamp(32px,6vw,62px)/1.04 Georgia,serif;margin:14px 0 20px;letter-spacing:-.03em;color:inherit}.interstitial-content p{font:17px/1.55 system-ui;color:inherit}.interstitial-logo,.interstitial-monogram{width:58px;height:58px;border-radius:16px;object-fit:contain;background:#f3e7cc;color:#273f30;display:grid;place-items:center;font:24px Georgia}.interstitial-cta{display:inline-flex;gap:28px;padding:16px 22px;border-radius:40px;background:#f4e7ca;color:#183c2b;font:700 16px system-ui;text-decoration:none;margin:12px 0 20px}.interstitial-content small{display:block;font:12px system-ui;opacity:.8}.chivi-interstitial :focus-visible{outline:3px solid #ffcf63;outline-offset:4px}.interstitial-demo-launch{position:fixed;bottom:24px;left:24px;z-index:9000;border:0;border-radius:30px;padding:14px 22px;background:#203e30;color:white;box-shadow:0 4px 18px #0003;max-width:85vw}.chivi-interstitial.is-mobile{width:390px}.chivi-interstitial.is-closing{animation:chivi-ad-out .16s ease-in forwards}@keyframes chivi-ad-in{from{opacity:0;transform:translateY(12px)}}@keyframes chivi-ad-out{to{opacity:0;transform:translateY(8px)}}@media(max-width:600px){.chivi-interstitial{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.chivi-interstitial article{padding:calc(env(safe-area-inset-top) + 20px) 24px calc(env(safe-area-inset-bottom) + 34px)}.interstitial-close{top:0}.interstitial-content{padding-top:80px}.interstitial-label{top:calc(env(safe-area-inset-top) + 24px)}.interstitial-content h2{font-size:44px}}@media(prefers-reduced-motion:reduce){.chivi-interstitial,.chivi-interstitial.is-closing{animation:none}.chivi-interstitial::backdrop{backdrop-filter:none}}

/* /loading-system.css */
:root{--motion-fast:120ms;--motion-normal:200ms;--motion-slow:280ms;--motion-ease-out:cubic-bezier(.2,.7,.3,1);--motion-ease-in-out:cubic-bezier(.4,0,.2,1);--motion-stagger:35ms;--motion-shimmer:1500ms;--chivi-skeleton-base:#e8edeb;--chivi-skeleton-highlight:#f2f5f3}
.chivi-skeleton{display:block;background:var(--chivi-skeleton-base);border-radius:6px;position:relative;overflow:hidden}.chivi-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 25%,var(--chivi-skeleton-highlight) 50%,transparent 75%);transform:translateX(-100%);animation:chivi-shimmer var(--motion-shimmer) ease-in-out 3}.chivi-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;pointer-events:none}.chivi-card-skeleton{padding:14px;border:1px solid #e1e7e4;border-radius:14px;min-width:0}.chivi-image-skeleton{aspect-ratio:16/9;width:100%;margin-bottom:14px}.chivi-sk-heading{height:20px;width:75%;margin-bottom:12px}.chivi-sk-line{height:12px;width:96%;margin-bottom:10px}.chivi-sk-short{width:55%}.chivi-sk-classifieds .chivi-image-skeleton{aspect-ratio:4/3}.chivi-sk-guide .chivi-image-skeleton{aspect-ratio:3/2}.chivi-preloader>p,.chivi-state-note{font-size:.9rem;line-height:1.5}.smart-loading .chivi-card-skeleton .chivi-image-skeleton{width:72px;height:72px;aspect-ratio:1;float:right;margin:0 0 8px 12px}.smart-loading .chivi-card-skeleton{min-height:164px}.smart-loading{min-height:210px}.chivi-motion{transition:opacity var(--motion-normal) var(--motion-ease-out) var(--chivi-stagger,0ms),transform var(--motion-normal) var(--motion-ease-out) var(--chivi-stagger,0ms)}.chivi-motion-pending{opacity:.45;transform:translateY(8px)}.chivi-image-reveal{transition:opacity var(--motion-normal) var(--motion-ease-out);background-color:var(--chivi-skeleton-base)}.chivi-image-pending{opacity:.6}.chivi-image-error{opacity:1;background:var(--chivi-skeleton-base)}
:where(button,.button,[role=button]){transition:background-color var(--motion-fast),box-shadow var(--motion-fast),opacity var(--motion-fast)}:where(button,.button,[role=button]):active:not(:disabled){opacity:.78}:where(button,[role=button])[aria-busy=true]{cursor:progress;box-shadow:inset 0 -3px 0 currentColor}:where(button):disabled{cursor:default}:where(a,button,input,select,textarea):focus-visible{outline:3px solid #227979;outline-offset:3px}:where(input[type=search]){transition:box-shadow var(--motion-fast)}:where(.smart-search-card,.home-classifieds-card,.guide-card):active{box-shadow:0 0 0 2px #ccdcd5}.chivi-smart-results[data-state=results],.chivi-smart-results[data-state=partial]{animation:chivi-results var(--motion-normal) var(--motion-ease-out)}.chivi-offline-note{position:fixed;bottom:80px;left:12px;right:12px;z-index:500;margin:auto;max-width:600px;padding:12px 16px;border:1px solid #b5c9c3;border-radius:12px;background:#f6faf8;color:#173e3b;font:14px/1.5 system-ui;box-shadow:0 3px 14px #0001}.chivi-offline-note[hidden]{display:none}.chivi-state-note[hidden]{display:none}.guide-smart-spinner[hidden]{display:none!important}
/* No overlay at entry. Skeletons belong to the component awaiting its data. */
#site-preloader{display:none!important}.chivi-entry-loading #app{visibility:visible!important;opacity:1!important}
@keyframes chivi-shimmer{to{transform:translateX(100%)}}@keyframes chivi-results{from{opacity:.8}to{opacity:1}}
@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--motion-normal)}
@media(max-width:540px){.smart-loading .chivi-skeleton-grid{grid-template-columns:1fr}.smart-loading .chivi-card-skeleton:nth-child(n+3){display:none}}
@media(prefers-reduced-motion:reduce),(update:slow){.chivi-skeleton::after{animation:none}.chivi-motion,.chivi-image-reveal,.chivi-smart-results,button,input{animation:none!important;transition:none!important}.chivi-motion-pending{opacity:1;transform:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
/* Reserve media using existing product proportions, including pending creatives. */
:where(.campaign-card,.guide-featured-card) img{aspect-ratio:3/2;object-fit:cover;width:100%}
:where(.product-card,.home-classifieds-card) img{aspect-ratio:4/3;object-fit:cover}
:where(.smart-search-image){aspect-ratio:1;object-fit:cover}
:where(.real-card,.curated-card) img{aspect-ratio:16/9;object-fit:cover}
.chivi-card-skeleton{display:block}.chivi-skeleton-grid>.chivi-card-skeleton{display:block}
/* No-fill slots collapse before entering the viewport. If eligibility finishes
   while visible, keep the footprint until it is below view or the route changes. */
[data-campaign-slot][data-motion-reserved]{min-height:var(--chivi-ad-reserved,320px)}
[data-campaign-slot][hidden][data-motion-reserved]{display:block!important}
[data-campaign-slot][data-motion-no-fill]{visibility:hidden;pointer-events:none}
[data-campaign-slot][data-motion-pending] .chivi-skeleton-grid{grid-template-columns:1fr}
.chivi-limited-motion .chivi-skeleton::after{animation:none}.chivi-limited-motion .chivi-image-reveal{transition:none}
@supports(view-transition-name:chivi-header){body>header{view-transition-name:chivi-header}::view-transition-group(chivi-header){animation:none}::view-transition-old(chivi-header){animation:none}::view-transition-new(chivi-header){animation:none}}
