/*
 * IZ CRO Component Cohesion v1.1.0
 *
 * Shared structure, project-owned appearance. Every visual value resolves from the active CRO
 * profile tokens. No dealer colour, font or corner radius is baked into the component adapter.
 * Supports both the legacy financing shortcode and the canonical IZ Leads financing renderer.
 */

body[class*="cro-profile--"].iz-cro-components--classic,
body[class*="cro-profile--"].iz-cro-components--bold,
body[class*="cro-profile--"].iz-cro-components--minimal,
body[class*="cro-profile--"].iz-cro-components--sport,
body[class*="cro-profile--"].iz-cro-components--showroom {
  --iz-cc-bg:var(--cro-surface);
  --iz-cc-soft:var(--cro-surface-2);
  --iz-cc-line:var(--cro-line);
  --iz-cc-line-strong:var(--cro-line-2);
  --iz-cc-text:var(--cro-ink);
  --iz-cc-muted:var(--cro-muted);
  --iz-cc-focus:var(--cro-accent);
  --iz-cc-action:var(--cro-accent);
  --iz-cc-action-text:var(--cro-on-accent);
  --iz-cc-primary-action:var(--cro-ink);
  --iz-cc-primary-action-text:var(--cro-on-primary);
  --iz-cc-radius:var(--cro-radius);
  --iz-cc-radius-sm:var(--cro-radius-sm);
  --iz-cc-shadow:var(--cro-shadow);
  --iz-cc-font:var(--cro-font);
  --iz-cc-control-h:48px;
}

/* Payment calculator ---------------------------------------------------- */
body[class*="cro-profile--"].iz-cro-components--showroom .cro-hero__est,
body[class*="cro-profile--"].iz-cro-components--classic .cro-hero__est,
body[class*="cro-profile--"].iz-cro-components--bold .cro-hero__est,
body[class*="cro-profile--"].iz-cro-components--minimal .cro-hero__est,
body[class*="cro-profile--"].iz-cro-components--sport .cro-hero__est { min-width:0; }

body[class*="cro-profile--"].iz-cro-components--showroom .cro-estimator,
body[class*="cro-profile--"].iz-cro-components--classic .cro-estimator,
body[class*="cro-profile--"].iz-cro-components--bold .cro-estimator,
body[class*="cro-profile--"].iz-cro-components--minimal .cro-estimator,
body[class*="cro-profile--"].iz-cro-components--sport .cro-estimator {
  margin:0;padding:clamp(20px,2.4vw,28px);overflow:hidden;
  color:var(--iz-cc-text);background:var(--iz-cc-bg);
  border:1px solid var(--iz-cc-line);border-radius:var(--iz-cc-radius);
  box-shadow:var(--iz-cc-shadow);font-family:var(--iz-cc-font);
}
body[class*="cro-profile--"] .cro-estimator__head{padding-bottom:16px;border-bottom:1px solid var(--iz-cc-line)}
body[class*="cro-profile--"] .cro-estimator__head p{max-width:46ch;margin:6px 0 0;color:var(--iz-cc-muted)}
body[class*="cro-profile--"] .cro-estimator__body{padding-top:18px}
body[class*="cro-profile--"] .cro-estimator__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body[class*="cro-profile--"] .cro-estimator label{gap:7px;color:var(--iz-cc-text);font-weight:700}
body[class*="cro-profile--"] .cro-estimator__pfx{
  height:var(--iz-cc-control-h);min-width:0;gap:6px;padding:0 12px;
  color:var(--iz-cc-muted);background:var(--iz-cc-bg);
  border:1px solid var(--iz-cc-line-strong);border-radius:var(--iz-cc-radius-sm);
}
body[class*="cro-profile--"] .cro-estimator__pfx input{
  min-width:0!important;height:calc(var(--iz-cc-control-h) - 2px)!important;margin:0!important;padding:0!important;
  color:var(--iz-cc-text)!important;background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;font:inherit!important;
}
body[class*="cro-profile--"] .cro-estimator select{
  width:100%!important;height:var(--iz-cc-control-h)!important;min-width:0;padding:0 12px!important;
  color:var(--iz-cc-text)!important;background-color:var(--iz-cc-bg)!important;
  border:1px solid var(--iz-cc-line-strong)!important;border-radius:var(--iz-cc-radius-sm)!important;
  box-shadow:none!important;font:inherit!important;
}
body[class*="cro-profile--"] .cro-estimator__pfx:focus-within,
body[class*="cro-profile--"] .cro-estimator select:focus{
  outline:2px solid var(--cro-soft);outline-offset:0;border-color:var(--iz-cc-focus);box-shadow:none;
}
body[class*="cro-profile--"] .cro-estimator__out{
  margin-top:18px;padding:16px;align-items:center;
  background:var(--iz-cc-soft);border:1px solid var(--iz-cc-line);border-radius:var(--iz-cc-radius-sm);
}
body[class*="cro-profile--"] .cro-estimator__amt{font-variant-numeric:tabular-nums}
body[class*="cro-profile--"] .cro-estimator__out .cro-btn{min-width:210px}
body[class*="cro-profile--"] .cro-estimator__disc{margin:14px 0 0;color:var(--iz-cc-muted)}

/* All project lead forms use the same profile primitives. This intentionally sits above the
 * financing-only layout so Contact, VDP, Consign and Shipping no longer retain donor geometry. */
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form){
  color:var(--iz-cc-text);font-family:var(--iz-cc-font);
}
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) label{
  color:var(--iz-cc-text)!important;font-family:var(--iz-cc-font);font-size:13px;font-weight:700;
}
body[class*="cro-profile--"] #page :is(form.dag-form,form.iz-leads-form)
  :is(input,select,textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form)
  :is(input,select,textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]){
  min-width:0;min-height:var(--iz-cc-control-h)!important;padding:12px 14px!important;
  color:var(--iz-cc-text)!important;-webkit-text-fill-color:var(--iz-cc-text)!important;
  background:var(--iz-cc-bg)!important;border:1px solid var(--iz-cc-line-strong)!important;
  border-radius:var(--iz-cc-radius-sm)!important;box-shadow:none!important;
  font:400 15px/1.3 var(--iz-cc-font)!important;box-sizing:border-box;
}
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form)
  :is(input,select,textarea):focus{
  outline:2px solid var(--cro-soft)!important;outline-offset:0!important;
  border-color:var(--iz-cc-focus)!important;box-shadow:none!important;
}
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) textarea{
  min-height:120px!important;resize:vertical;
}
body[class*="cro-profile--"] #page :is(form.dag-form,form.iz-leads-form) :is(button,input)[type="submit"],
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) :is(button,input)[type="submit"]{
  min-height:48px;padding:13px 20px!important;color:var(--iz-cc-primary-action-text)!important;
  background:var(--iz-cc-primary-action)!important;border:1px solid var(--iz-cc-primary-action)!important;
  border-radius:var(--iz-cc-radius-sm)!important;box-shadow:none!important;text-transform:none!important;
  letter-spacing:.005em!important;font:700 15px/1 var(--iz-cc-font)!important;cursor:pointer;
}
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) .iz-field{
  position:relative;display:block;width:100%;min-width:0;
}
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) .iz-field .iz-phone-cc{
  position:absolute;z-index:2;left:1px;top:1px;bottom:1px;display:flex;align-items:center;
  padding:0 11px 0 14px;color:var(--iz-cc-muted);background:transparent;
  border-right:1px solid var(--iz-cc-line);pointer-events:none;font:600 14px/1 var(--iz-cc-font);
}
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) .iz-field .iz-phone-cc.hide{display:none}
body[class*="cro-profile--"] #page :is(form.dag-form,form.iz-leads-form) .iz-field[data-iz-field] .iz-phone-cc:not(.hide) + input[type="tel"],
body[class*="cro-profile--"] :is(form.dag-form,form.iz-leads-form) .iz-field[data-iz-field] .iz-phone-cc:not(.hide) + input[type="tel"]{
  padding-left:56px!important;
}

/* Canonical financing renderer -----------------------------------------
 * Some project themes only provide bare form primitives, leaving the canonical renderer as a
 * full-width grey sheet. Keep its semantic two-column grid, but give the page one readable card,
 * inline required markers, and project-token spacing. */
body[class*="cro-profile--"] .iz-leads-financing-page{
  padding:clamp(36px,6vw,76px) 20px;background:var(--iz-cc-soft);
}
body[class*="cro-profile--"] .iz-leads-financing-page .iz-leads-page-inner{
  width:100%;max-width:1040px;margin:0 auto;
}
body[class*="cro-profile--"] .iz-leads-financing-page .iz-leads-page-inner > h1{
  margin:0 0 22px;color:var(--iz-cc-text);font-family:var(--cro-font-display,var(--iz-cc-font));
  font-size:clamp(30px,4vw,44px);font-weight:800;line-height:1.08;letter-spacing:-.025em;
}
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing{
  display:grid;gap:22px;width:100%;margin:0;padding:clamp(20px,3vw,34px);
  color:var(--iz-cc-text);background:var(--iz-cc-bg);border:1px solid var(--iz-cc-line);
  border-radius:var(--iz-cc-radius);box-shadow:var(--iz-cc-shadow);box-sizing:border-box;
}
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing .iz-leads-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin:0;padding:0;
}
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing .iz-leads-grid > label{
  display:block;min-width:0;margin:0;color:var(--iz-cc-text)!important;
  font:700 13px/1.35 var(--iz-cc-font);
}
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing .iz-leads-grid > label >
  :is(input,select,textarea),
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing .iz-leads-grid > label > .iz-field{
  display:block;width:100%;margin-top:7px!important;
}
body[class*="cro-profile--"] #page .iz-leads-financing-page form.iz-leads-financing button[type="submit"],
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing button[type="submit"]{
  width:100%;min-height:50px;color:var(--iz-cc-action-text)!important;
  background:var(--iz-cc-action)!important;border-color:var(--iz-cc-action)!important;
}
body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing button[type="submit"]:disabled{
  opacity:.48;cursor:not-allowed;
}

/* Financing form: remove the donor wrapper, keep one project-native card -- */
body[class*="cro-profile--"] .cro-finform{gap:24px}
body[class*="cro-profile--"] .cro-finform__tip,
body[class*="cro-profile--"] .cro-finform__main{
  color:var(--iz-cc-text);background:var(--iz-cc-bg);border:1px solid var(--iz-cc-line);
  border-radius:var(--iz-cc-radius);box-shadow:none;
}
body[class*="cro-profile--"] .cro-finform__tip{padding:20px;margin-bottom:16px}
body[class*="cro-profile--"] .cro-finform__main{min-width:0;padding:clamp(20px,3vw,34px)}
body[class*="cro-profile--"] .cro-consent{
  margin:0 0 22px;padding:14px 16px;color:var(--iz-cc-muted);background:var(--iz-cc-soft);
  border:1px solid var(--iz-cc-line);border-radius:var(--iz-cc-radius-sm);
}
body[class*="cro-profile--"] #page #apply-financing .contact-form-section,
body[class*="cro-profile--"] #apply-financing .contact-form-section{
  width:100%!important;margin:0!important;padding:0!important;color:var(--iz-cc-text)!important;
  background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
}
body[class*="cro-profile--"] #page #apply-financing .contact-form__wrapper,
body[class*="cro-profile--"] #apply-financing .contact-form__wrapper{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  color:var(--iz-cc-text)!important;background:transparent!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
body[class*="cro-profile--"] #apply-financing .contact-form__title{
  margin:0 0 5px;color:var(--iz-cc-text);font-family:var(--cro-font-display,var(--iz-cc-font));
  font-size:clamp(20px,2.2vw,26px);line-height:1.15;letter-spacing:-.02em;
}
body[class*="cro-profile--"] #apply-financing .contact-form__subtitle{margin:0 0 22px;color:var(--iz-cc-muted)}
body[class*="cro-profile--"] #apply-financing .contact-page-form,
body[class*="cro-profile--"] #apply-financing .iz-leads-financing{display:grid;gap:18px;width:100%;margin:0}
body[class*="cro-profile--"] #apply-financing .contact-form__row,
body[class*="cro-profile--"] #apply-financing .iz-leads-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0!important;padding:0!important;
}
body[class*="cro-profile--"] #apply-financing .contact-form__row:has(> :nth-child(3)){
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body[class*="cro-profile--"] #apply-financing .contact-form__row:has(> :only-child){grid-template-columns:1fr}
body[class*="cro-profile--"] #apply-financing .contact-form__field,
body[class*="cro-profile--"] #apply-financing .iz-leads-grid label{min-width:0;margin:0}
body[class*="cro-profile--"] #apply-financing .contact-form__field label,
body[class*="cro-profile--"] #apply-financing .contact-form__field > label,
body[class*="cro-profile--"] #apply-financing .iz-leads-grid label{
  display:flex;flex-direction:column;gap:7px;margin:0;color:var(--iz-cc-text)!important;
  font-family:var(--iz-cc-font);font-size:13px;font-weight:700;line-height:1.3;
}
body[class*="cro-profile--"] #apply-financing :is(.contact-page-form,.iz-leads-financing)
  :is(input,select,textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]){
  width:100%!important;max-width:none!important;min-width:0;min-height:var(--iz-cc-control-h)!important;
  margin:0!important;padding:12px 14px!important;color:var(--iz-cc-text)!important;
  -webkit-text-fill-color:var(--iz-cc-text)!important;background:var(--iz-cc-bg)!important;
  border:1px solid var(--iz-cc-line-strong)!important;border-radius:var(--iz-cc-radius-sm)!important;
  box-shadow:none!important;font:inherit!important;box-sizing:border-box;
}
body[class*="cro-profile--"] #apply-financing :is(.contact-page-form,.iz-leads-financing) textarea{
  min-height:120px!important;resize:vertical;
}
body[class*="cro-profile--"] #apply-financing :is(.contact-page-form,.iz-leads-financing)
  :is(input,select,textarea):focus{
  outline:2px solid var(--cro-soft)!important;outline-offset:0!important;
  border-color:var(--iz-cc-focus)!important;box-shadow:none!important;
}
body[class*="cro-profile--"] #apply-financing .iz-field{
  position:relative;display:block;width:100%;min-width:0;
}
body[class*="cro-profile--"] #apply-financing .iz-field .iz-phone-cc{
  position:absolute;z-index:2;left:1px;top:1px;bottom:1px;display:flex;align-items:center;
  padding:0 11px 0 14px;color:var(--iz-cc-muted);background:transparent;
  border-right:1px solid var(--iz-cc-line);pointer-events:none;font:600 14px/1 var(--iz-cc-font);
}
body[class*="cro-profile--"] #apply-financing .iz-field .iz-phone-cc.hide{display:none}
body[class*="cro-profile--"] #apply-financing .iz-field .iz-phone-cc:not(.hide) + input{padding-left:56px!important}
body[class*="cro-profile--"] #apply-financing .iz-field-error{display:block;margin-top:6px;color:var(--cro-warn);font-size:12px}
body[class*="cro-profile--"] #apply-financing .contact-form__actions{display:block;margin:2px 0 0}
body[class*="cro-profile--"] #page #apply-financing button[type="submit"],
body[class*="cro-profile--"] #apply-financing button[type="submit"]{
  width:100%!important;min-height:50px;margin:0;padding:14px 22px!important;
  color:var(--iz-cc-action-text)!important;background:var(--iz-cc-action)!important;
  border:1px solid var(--iz-cc-action)!important;border-radius:var(--iz-cc-radius-sm)!important;
  box-shadow:none!important;text-transform:none!important;letter-spacing:.005em!important;
  font:700 15px/1 var(--iz-cc-font)!important;cursor:pointer;
}

/* Inventory filter ------------------------------------------------------ */
body[class*="cro-profile--"] .cro-filters{
  overflow:hidden;color:var(--iz-cc-text);background:var(--iz-cc-bg);
  border:1px solid var(--iz-cc-line);border-radius:var(--iz-cc-radius);box-shadow:none;
}
body[class*="cro-profile--"] .cro-filters__head{
  min-height:58px;padding:10px 16px;background:var(--iz-cc-soft);border-bottom:1px solid var(--iz-cc-line);
}
body[class*="cro-profile--"] .cro-filters__head b{font-family:var(--cro-font-display,var(--iz-cc-font));font-size:16px}
body[class*="cro-profile--"] .cro-filters__form{display:grid;gap:0;padding:6px 16px 16px}
body[class*="cro-profile--"] .cro-facet{padding:13px 0;border-top:1px solid var(--iz-cc-line)}
body[class*="cro-profile--"] .cro-filters__form > .cro-facet:first-of-type{border-top:0}
body[class*="cro-profile--"] .cro-facet__lbl,
body[class*="cro-profile--"] .cro-facet > summary{
  margin:0 0 9px;padding:0;border:0;color:var(--iz-cc-text);font-size:13px;font-weight:700;line-height:1.35;
}
body[class*="cro-profile--"] .cro-facet > summary::after{top:-1px;color:var(--iz-cc-muted)}
body[class*="cro-profile--"] .cro-filters .cro-input,
body[class*="cro-profile--"] .cro-filters .cro-select,
body[class*="cro-profile--"] .cro-arch__sort .cro-select{
  width:100%!important;height:var(--iz-cc-control-h)!important;min-width:0;margin:0;padding:0 12px!important;
  color:var(--iz-cc-text)!important;background-color:var(--iz-cc-bg)!important;
  border:1px solid var(--iz-cc-line-strong)!important;border-radius:var(--iz-cc-radius-sm)!important;
  box-shadow:none!important;font:400 15px/1.2 var(--iz-cc-font)!important;box-sizing:border-box;
}
body[class*="cro-profile--"] .cro-filters .cro-select,
body[class*="cro-profile--"] .cro-arch__sort .cro-select{padding-right:34px!important}
body[class*="cro-profile--"] .cro-filters .cro-input:focus,
body[class*="cro-profile--"] .cro-filters .cro-select:focus,
body[class*="cro-profile--"] .cro-arch__sort .cro-select:focus{
  outline:2px solid var(--cro-soft);outline-offset:0;border-color:var(--iz-cc-focus);
}
body[class*="cro-profile--"] .cro-facet__range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px}
body[class*="cro-profile--"] .cro-filters__form > .cro-btn{margin-top:10px}

@media (min-width:992px){
  body[class*="cro-profile--"] .cro-finform{grid-template-columns:280px minmax(0,1fr)}
}
@media (max-width:767px){
  body[class*="cro-profile--"] .cro-estimator__grid{grid-template-columns:1fr}
  body[class*="cro-profile--"] .cro-estimator__out{align-items:stretch}
  body[class*="cro-profile--"] .cro-estimator__out .cro-btn{width:100%;min-width:0}
  body[class*="cro-profile--"] #apply-financing .contact-form__row,
  body[class*="cro-profile--"] #apply-financing .contact-form__row:has(> :nth-child(3)),
  body[class*="cro-profile--"] #apply-financing .iz-leads-grid{grid-template-columns:1fr}
  body[class*="cro-profile--"] #apply-financing .iz-leads-span-2{grid-column:auto}
  body[class*="cro-profile--"] .iz-leads-financing-page{padding:32px 16px 54px}
  body[class*="cro-profile--"] .iz-leads-financing-page .iz-leads-page-inner > h1{margin-bottom:18px}
  body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing{padding:20px 16px}
  body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing .iz-leads-grid{
    grid-template-columns:1fr;gap:16px;
  }
  body[class*="cro-profile--"] .iz-leads-financing-page form.iz-leads-financing .iz-leads-span-2{grid-column:auto}
}
