/* CarPath Premium 0.5.0 RC7.0.6 — Browser Calibration baseline
   Final reference geometry for 1440 / 1024 / 768 / 430 / 390.
   Presentation-only overrides. No business logic or schema dependencies. */

:root{
  --cp-cal-shell:1440px;
  --cp-cal-gutter:28px;
  --cp-cal-blue:#1478f2;
  --cp-cal-navy:#061827;
  --cp-cal-ink:#102338;
  --cp-cal-muted:#6b7f92;
  --cp-cal-line:#dfe7ef;
  --cp-cal-canvas:#f4f7fa;
  --cp-cal-card:#fff;
}

/* Global shell and chrome */
.cp-theme-final:not(.cp-system-page) .wrap{width:min(var(--cp-cal-shell),calc(100% - (var(--cp-cal-gutter) * 2)))}
.cp-theme-final:not(.cp-system-page) .header{background:var(--cp-cal-navy);color:#fff}
.cp-theme-final:not(.cp-system-page) .topbar{height:58px;min-height:58px}
.cp-theme-final:not(.cp-system-page) .nav-shell,.cp-theme-final:not(.cp-system-page) .nav{height:40px;min-height:40px}
.cp-theme-final:not(.cp-system-page) .nav>a,
.cp-theme-final:not(.cp-system-page) .nav-button,
.cp-theme-final:not(.cp-system-page) .mega-toggle{height:40px;font-size:11px;line-height:1;padding-inline:15px}
.cp-theme-final:not(.page-home) main{background:var(--cp-cal-canvas)}
.cp-theme-final:not(.page-home) .section{margin-top:20px}
.cp-theme-final:not(.page-home) .section:last-child{margin-bottom:24px}

/* Shared photographic inner hero */
.cp-theme-final:not(.page-home) .page-hero{height:232px;min-height:232px}
.cp-theme-final:not(.page-home) .page-hero-inner{padding:20px 0 22px}
.cp-theme-final:not(.page-home) .page-hero h1{font-size:38px;line-height:1.02;max-width:720px;margin:2px 0 7px}
.cp-theme-final:not(.page-home) .page-hero p{max-width:640px;font-size:13px;line-height:1.38}
.cp-theme-final:not(.page-home) .breadcrumbs{font-size:9px;margin-bottom:8px}

/* Shared page rhythm */
.cp-ref-toolbar,.catalog-sidebar,.catalog-results,.lot-section,.cp-ref-lot-panel,
.tracker-search-card,.tracker-card,.selection-form-card,.selection-side,.calculator-page-card,
.faq-side,.faq-main details,.faq-contact,.blog-featured article,.rich-blog article,.article-main,
.side-card,.contact-cards>div,.contact-info,.contact-form-card,.legal-toc,.legal-content,
.cp-garage-nav,.cp-garage-cars,.cp-garage-bottom>section,.cp-gv-side>.side-card,.cp-live-panel{
  border-color:var(--cp-cal-line);border-radius:9px;box-shadow:0 5px 18px rgba(18,48,74,.055)
}
.cp-theme-final:not(.page-home) h2{letter-spacing:-.025em}
.cp-theme-final:not(.page-home) .btn{border-radius:6px}

/* Catalog: 3 columns at desktop, measured card density */
.page-catalog .cp-ref-catalog{grid-template-columns:238px minmax(0,1fr);gap:16px}
.page-catalog .cp-ref-catalog .catalog-results{padding:12px}
.page-catalog .cp-ref-catalog .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.page-catalog .cp-ref-catalog .vehicle-photo{height:168px}
.page-catalog .cp-ref-catalog .vehicle-body{padding:9px 9px 10px}
.page-catalog .cp-ref-catalog .vehicle h3{font-size:11px;line-height:1.22;min-height:27px}
.page-catalog .cp-ref-catalog .vehicle strong{font-size:16px}

/* Search Results: denser 4-column result surface like approved reference. */
.page-search .cp-ref-catalog{grid-template-columns:220px minmax(0,1fr);gap:14px}
.page-search .cp-ref-catalog .catalog-results{padding:10px}
.page-search .cp-ref-catalog .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.page-search .cp-ref-catalog .vehicle-photo{height:142px}
.page-search .cp-ref-catalog .vehicle-body{padding:8px}
.page-search .cp-ref-catalog .vehicle h3{font-size:10px;line-height:1.2;min-height:24px}
.page-search .cp-ref-catalog .vehicle-meta,.page-search .cp-ref-catalog .vehicle-lot{font-size:7px}
.page-search .cp-ref-catalog .vehicle strong{font-size:15px}
.page-search .cp-ref-catalog .vehicle .btn{min-height:29px;padding:6px 8px}

/* Live Search: one centered light search panel on photographic page. */
.page-live-search .cp-live-reference{max-width:1120px!important}
.page-live-search .cp-live-panel{padding:16px 18px 18px}
.page-live-search .cp-live-heading{margin-bottom:11px}
.page-live-search .cp-live-heading h2{font-size:25px}
.page-live-search .cp-live-query{max-width:820px;grid-template-columns:minmax(0,1fr) 130px}
.page-live-search .cp-live-query input,.page-live-search .cp-live-query .btn{height:42px;min-height:42px}
.page-live-search .cp-live-layout{grid-template-columns:225px minmax(0,1fr)}
.page-live-search .cp-live-row{grid-template-columns:132px minmax(0,1fr) 96px 104px;gap:10px}
.page-live-search .cp-live-photo img{width:132px;height:72px}

/* Lot: reference uses compact title band, large gallery and narrow quote panel. */
.page-lot .page-hero{height:205px;min-height:205px}
.page-lot .page-hero h1{font-size:36px}
.page-lot .cp-ref-lot{grid-template-columns:minmax(0,1fr) 302px;gap:16px}
.page-lot .cp-lot-gallery .lot-primary{height:402px!important}
.page-lot .cp-lot-gallery .lot-thumbs a{height:64px}
.page-lot .cp-lot-quick{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.page-lot .cp-lot-quick>div{min-height:56px;padding:7px}
.page-lot .cp-ref-lot-panel{top:112px}
.page-lot .cp-ref-lot .lot-section{padding:14px}
.page-lot .cp-ref-lot .spec-grid{grid-template-columns:repeat(4,minmax(0,1fr))}

/* Calculator / Selection / Tracker: align forms to the same white canvas density. */
.page-calculator .calculator-page{grid-template-columns:minmax(0,1fr) 330px;gap:16px}
.page-calculator .calculator-page-card{padding:18px}
.page-selection .selection-layout{grid-template-columns:minmax(0,1fr) 300px;gap:16px}
.page-selection .selection-form-card,.page-selection .selection-side{padding:16px}
.page-tracker .tracker-page{gap:16px}
.page-tracker .tracker-search-card,.page-tracker .tracker-card{padding:16px}

/* Garage: keep content light like the unified references; only hero/footer are dark. */
.page-garage,.page-garage-login,.page-garage-vehicle{background:var(--cp-cal-canvas)!important;color:var(--cp-cal-ink)!important}
.page-garage main,.page-garage-login main,.page-garage-vehicle main{background:var(--cp-cal-canvas)!important}
.page-garage-login .cp-garage-login-ref{background:#edf3f8;min-height:560px}
.page-garage-login .cp-garage-login-inner{min-height:560px;grid-template-columns:minmax(0,1.15fr) 410px;gap:38px;padding:34px 0}
.page-garage-login .cp-garage-login-copy h1{font-size:42px;line-height:1.04}
.page-garage-login .cp-login-card{background:#fff;color:var(--cp-cal-ink);padding:22px;border-radius:10px;box-shadow:0 12px 32px rgba(10,37,60,.10)}
.page-garage .cp-garage-dashboard{grid-template-columns:180px minmax(0,1fr);gap:14px}
.page-garage .cp-garage-content .garage-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.page-garage .cp-garage-cars .garage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.page-garage-vehicle .cp-garage-vehicle{grid-template-columns:minmax(0,1fr) 286px;gap:16px}
.page-garage-vehicle .cp-gv-side{top:112px}

/* Content pages */
.page-inspection .inspection-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.page-damage .damage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.page-faq .faq-layout{grid-template-columns:220px minmax(0,1fr);gap:14px}
.page-blog .rich-blog{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.page-article .article-layout{grid-template-columns:minmax(0,1fr) 280px;gap:16px;max-width:1120px;margin-inline:auto}
.page-article .article-main{padding:20px}
.page-article .article-prose{font-size:12px;line-height:1.68}
.page-contacts .contact-layout{grid-template-columns:minmax(0,1fr) 420px;gap:16px}

/* Legal references are explicitly 2-column: TOC + document. */
.page-privacy .cp-ref-legal,.page-terms .cp-ref-legal,.page-cookies .cp-ref-legal{grid-template-columns:210px minmax(0,1fr);gap:14px;max-width:1180px;margin-inline:auto}
.page-privacy .cp-ref-legal .legal-side,.page-terms .cp-ref-legal .legal-side,.page-cookies .cp-ref-legal .legal-side{display:none}
.page-privacy .legal-content,.page-terms .legal-content,.page-cookies .legal-content{padding:18px 20px}
.page-privacy .legal-content>h2,.page-terms .legal-content>h2,.page-cookies .legal-content>h2{font-size:22px}

/* Error pages: shorter photo hero, white utility content below. */
.page-404 .cp-ref-error,.page-500 .cp-ref-error{min-height:310px}
.page-404 .cp-ref-error-inner,.page-500 .cp-ref-error-inner{min-height:310px}
.page-404 .cp-ref-error strong,.page-500 .cp-ref-error strong{font-size:92px}
.page-404 .cp-ref-error h1,.page-500 .cp-ref-error h1{font-size:29px}
.page-404 .cp-error-actions,.page-500 .cp-error-actions{margin-top:16px}

/* Footer: one compact footer geometry across all routes. */
.cp-theme-final .cp-final-footer{min-height:146px;padding:16px 0 0}
.cp-theme-final .footer-grid{min-height:108px;gap:20px;padding-bottom:10px}
.cp-theme-final .footer h3{font-size:9px}
.cp-theme-final .footer a,.cp-theme-final .footer p{font-size:8px;line-height:1.35}
.cp-theme-final .footer-bottom{min-height:36px;padding:8px 0;font-size:8px}

/* 1024 / compact desktop */
@media(max-width:1180px){
  :root{--cp-cal-gutter:22px}
  .cp-theme-final:not(.cp-system-page) .nav>a,.cp-theme-final:not(.cp-system-page) .nav-button,.cp-theme-final:not(.cp-system-page) .mega-toggle{padding-inline:10px;font-size:10px}
  .page-catalog .cp-ref-catalog{grid-template-columns:210px minmax(0,1fr)}
  .page-search .cp-ref-catalog{grid-template-columns:200px minmax(0,1fr)}
  .page-search .cp-ref-catalog .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-lot .cp-ref-lot,.page-garage-vehicle .cp-garage-vehicle{grid-template-columns:1fr}
  .page-lot .cp-ref-lot-panel,.page-garage-vehicle .cp-gv-side{position:static}
  .page-lot .cp-ref-lot-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .page-lot .cp-ref-lot-panel .cost-table{grid-column:1/-1}
  .page-calculator .calculator-page{grid-template-columns:minmax(0,1fr) 300px}
  .page-selection .selection-layout{grid-template-columns:minmax(0,1fr) 270px}
  .page-article .article-layout{grid-template-columns:minmax(0,1fr) 250px}
  .page-contacts .contact-layout{grid-template-columns:minmax(0,1fr) 360px}
}

/* 768 / tablet */
@media(max-width:820px){
  :root{--cp-cal-gutter:16px}
  .cp-theme-final:not(.page-home) .page-hero{height:auto;min-height:220px}
  .cp-theme-final:not(.page-home) .page-hero h1{font-size:32px}
  .cp-theme-final:not(.page-home) .page-hero p{font-size:12px}
  .page-catalog .cp-ref-catalog,.page-search .cp-ref-catalog{grid-template-columns:1fr}
  .page-catalog .cp-ref-catalog .catalog-sidebar,.page-search .cp-ref-catalog .catalog-sidebar{position:static}
  .page-catalog .cp-ref-catalog .catalog-sidebar form,.page-search .cp-ref-catalog .catalog-sidebar form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-catalog .cp-ref-catalog .catalog-grid,.page-search .cp-ref-catalog .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-live-search .cp-live-layout{grid-template-columns:1fr}
  .page-live-search .cp-live-layout>aside{border-right:0;border-bottom:1px solid var(--cp-cal-line);padding:0 0 12px}
  .page-live-search .cp-live-suggestions{padding-left:0;padding-top:12px}
  .page-live-search .cp-live-row{grid-template-columns:110px minmax(0,1fr) 86px}
  .page-live-search .cp-live-row .btn{display:none}
  .page-lot .cp-lot-gallery .lot-primary{height:350px!important}
  .page-lot .cp-lot-quick{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-calculator .calculator-page,.page-selection .selection-layout,.page-contacts .contact-layout,.page-article .article-layout{grid-template-columns:1fr}
  .page-garage-login .cp-garage-login-inner{grid-template-columns:1fr;gap:20px;padding:30px 0}
  .page-garage-login .cp-login-card{max-width:520px;width:100%}
  .page-garage .cp-garage-dashboard{grid-template-columns:1fr}
  .page-garage .cp-garage-nav{display:flex;overflow:auto;position:static;gap:4px}
  .page-garage .cp-garage-nav strong{display:none}
  .page-garage .cp-garage-nav a{white-space:nowrap}
  .page-garage .cp-garage-content .garage-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-inspection .inspection-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-damage .damage-grid,.page-blog .rich-blog{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-faq .faq-layout{grid-template-columns:1fr}
  .page-privacy .cp-ref-legal,.page-terms .cp-ref-legal,.page-cookies .cp-ref-legal{grid-template-columns:1fr}
  .page-privacy .legal-toc,.page-terms .legal-toc,.page-cookies .legal-toc{position:static;display:flex;gap:5px;overflow:auto}
  .page-privacy .legal-toc h3,.page-terms .legal-toc h3,.page-cookies .legal-toc h3{display:none}
  .page-privacy .legal-toc a,.page-terms .legal-toc a,.page-cookies .legal-toc a{white-space:nowrap}
}

/* 430 / 390 mobile */
@media(max-width:560px){
  :root{--cp-cal-gutter:12px}
  html,body{max-width:100%;overflow-x:hidden}
  .cp-theme-final:not(.cp-system-page) .wrap{width:calc(100% - 24px)}
  .cp-theme-final:not(.page-home) .section{margin-top:14px}
  .cp-theme-final:not(.page-home) .page-hero{min-height:196px}
  .cp-theme-final:not(.page-home) .page-hero-inner{padding:18px 0}
  .cp-theme-final:not(.page-home) .page-hero h1{font-size:28px;line-height:1.05;letter-spacing:-.7px}
  .cp-theme-final:not(.page-home) .page-hero p{font-size:11px;line-height:1.4;max-width:92%}
  .page-catalog .cp-ref-catalog .catalog-sidebar form,.page-search .cp-ref-catalog .catalog-sidebar form{grid-template-columns:1fr}
  .page-catalog .cp-ref-catalog .catalog-grid,.page-search .cp-ref-catalog .catalog-grid{grid-template-columns:1fr}
  .page-catalog .cp-ref-catalog .vehicle-photo,.page-search .cp-ref-catalog .vehicle-photo{height:202px}
  .page-live-search .cp-live-panel{padding:11px}
  .page-live-search .cp-live-query{grid-template-columns:1fr}
  .page-live-search .cp-live-layout>aside{display:none}
  .page-live-search .cp-live-row{grid-template-columns:84px minmax(0,1fr);gap:8px}
  .page-live-search .cp-live-row>strong{grid-column:2;font-size:14px}
  .page-live-search .cp-live-photo img{width:84px;height:62px}
  .page-live-search .cp-live-hints{display:none}
  .page-lot .cp-lot-gallery .lot-primary{height:255px!important}
  .page-lot .cp-lot-gallery .lot-thumbs{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
  .page-lot .cp-lot-gallery .lot-thumbs a{height:46px}
  .page-lot .cp-lot-quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-lot .cp-ref-lot-panel{display:block}
  .page-lot .cp-ref-lot .spec-grid{grid-template-columns:1fr 1fr}
  .page-garage-login .cp-garage-login-ref,.page-garage-login .cp-garage-login-inner{min-height:auto}
  .page-garage-login .cp-garage-login-copy h1{font-size:31px}
  .page-garage-login .cp-garage-login-benefits,.page-garage-features{grid-template-columns:1fr 1fr}
  .page-garage .cp-garage-content .garage-stats{grid-template-columns:1fr 1fr}
  .page-garage .cp-garage-cars .garage-grid{grid-template-columns:1fr}
  .page-garage-vehicle .cp-gv-tabs{overflow:auto;scrollbar-width:none}
  .page-garage-vehicle .cp-gv-tabs span{white-space:nowrap}
  .page-inspection .inspection-steps,.page-damage .damage-grid,.page-blog .rich-blog{grid-template-columns:1fr}
  .page-privacy .legal-content,.page-terms .legal-content,.page-cookies .legal-content{padding:14px}
  .page-404 .cp-ref-error,.page-500 .cp-ref-error,.page-404 .cp-ref-error-inner,.page-500 .cp-ref-error-inner{min-height:280px}
  .page-404 .cp-ref-error strong,.page-500 .cp-ref-error strong{font-size:72px;letter-spacing:-3px}
  .page-404 .cp-ref-error h1,.page-500 .cp-ref-error h1{font-size:25px}
  .cp-theme-final .footer-grid{grid-template-columns:1fr 1fr;gap:16px 14px}
  .cp-theme-final .footer-brand,.cp-theme-final .footer-contact{grid-column:1/-1}
  .cp-theme-final .footer-bottom{grid-template-columns:1fr;gap:7px}
}

@media(max-width:410px){
  .cp-theme-final:not(.cp-system-page) .wrap{width:calc(100% - 20px)}
  .page-catalog .cp-ref-catalog .vehicle-photo,.page-search .cp-ref-catalog .vehicle-photo{height:190px}
  .page-garage .cp-garage-content .garage-stats{grid-template-columns:1fr}
  .page-garage-login .cp-garage-login-benefits,.page-garage-features{grid-template-columns:1fr}
  .page-lot .cp-ref-lot .spec-grid{grid-template-columns:1fr}
  .cp-theme-final .footer-grid{grid-template-columns:1fr}
  .cp-theme-final .footer-brand,.cp-theme-final .footer-contact{grid-column:auto}
}
