.elementor-kit-9{--e-global-color-primary:#2A2944;--e-global-color-secondary:#54C3C3;--e-global-color-text:#33373D;--e-global-color-accent:#2F8F8F;--e-global-color-navydeep:#1E1D33;--e-global-color-tealtint:#EAF7F7;--e-global-color-muted:#6B7079;--e-global-color-linegrey:#E3E6EA;--e-global-color-bgsoft:#F6F8F9;--e-global-color-white:#FFFFFF;--e-global-color-warn:#C0392B;--e-global-color-star:#F5B301;--e-global-color-whatsapp:#25D366;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.5px;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;--e-global-typography-eyebrow-font-family:"Inter";--e-global-typography-eyebrow-font-size:13px;--e-global-typography-eyebrow-font-weight:600;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-letter-spacing:1.6px;color:#33373D;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:#54C3C3;font-family:"Inter", Sans-serif;font-size:17px;font-weight:700;color:#1E1D33;border-radius:8px 8px 8px 8px;padding:17px 28px 17px 28px;}.elementor-kit-9 button:hover,.elementor-kit-9 button:focus,.elementor-kit-9 input[type="button"]:hover,.elementor-kit-9 input[type="button"]:focus,.elementor-kit-9 input[type="submit"]:hover,.elementor-kit-9 input[type="submit"]:focus,.elementor-kit-9 .elementor-button:hover,.elementor-kit-9 .elementor-button:focus{background-color:#66D0D0;color:#1E1D33;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 a{color:#2F8F8F;}.elementor-kit-9 a:hover{color:#2A2944;}.elementor-kit-9 h1{color:#2A2944;font-family:"Poppins", Sans-serif;font-size:52px;font-weight:600;line-height:1.18em;}.elementor-kit-9 h2{color:#2A2944;font-family:"Poppins", Sans-serif;font-size:38px;font-weight:600;line-height:1.22em;}.elementor-kit-9 h3{color:#2A2944;font-family:"Poppins", Sans-serif;font-size:19px;font-weight:600;line-height:1.32em;}.elementor-kit-9 h4{color:#2A2944;font-family:"Poppins", Sans-serif;font-size:17px;font-weight:600;line-height:1.32em;}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:16px;color:#33373D;background-color:#FFFFFF;border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-9{font-size:16px;}.elementor-kit-9 h1{font-size:34px;}.elementor-kit-9 h2{font-size:27px;}.elementor-kit-9 h3{font-size:18px;}.elementor-kit-9 h4{font-size:17px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Elementor gives the glyph a 0.25em right margin, which pushes it off centre
   inside the circle. Zeroing its own custom property is the supported hook. */
.nct-ticks,.nct-yes,.nct-no,.nct-meh{--e-icon-list-icon-margin:0}

/* ===== Round markers on icon lists =====
   The circle is a fixed square box; the glyph is locked to a square inside it
   so it stays centred. Spacing to the text is a margin on the circle, never
   padding (padding would sit inside the circle and push the glyph off-centre),
   which is why these lists have their Text Indent set to 0. */
.nct-ticks .elementor-icon-list-icon,
.nct-yes .elementor-icon-list-icon,
.nct-no .elementor-icon-list-icon,
.nct-meh .elementor-icon-list-icon{
  box-sizing:border-box;
  width:22px;height:22px;flex:0 0 22px;
  padding:0;margin-right:10px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  line-height:0;
}
/* .elementor-widget prefix outranks Elementor's own icon-list svg rule,
   which adds a 0.25em right margin and knocks the glyph off centre */
.elementor-widget .nct-ticks .elementor-icon-list-icon svg,
.elementor-widget .nct-yes .elementor-icon-list-icon svg,
.elementor-widget .nct-no .elementor-icon-list-icon svg,
.elementor-widget .nct-meh .elementor-icon-list-icon svg,
.elementor-widget .nct-ticks .elementor-icon-list-icon i,
.elementor-widget .nct-yes .elementor-icon-list-icon i,
.elementor-widget .nct-no .elementor-icon-list-icon i,
.elementor-widget .nct-meh .elementor-icon-list-icon i{
  width:11px;height:11px;min-width:11px;flex:0 0 11px;
  display:block;margin:0;padding:0;font-size:11px;line-height:11px;text-align:center;
}
.nct-ticks .elementor-icon-list-item,
.nct-yes .elementor-icon-list-item,
.nct-no .elementor-icon-list-item,
.nct-meh .elementor-icon-list-item{align-items:flex-start}
.nct-ticks .elementor-icon-list-icon{background:#54C3C3;color:#1E1D33}
.nct-yes .elementor-icon-list-icon{background:#54C3C3;color:#1E1D33}
.nct-no .elementor-icon-list-icon{background:#F9DEDB;color:#C0392B}
.nct-meh .elementor-icon-list-icon{background:#E9ECEF;color:#6B7079}
.nct-ticks .elementor-icon-list-icon svg,.nct-yes .elementor-icon-list-icon svg{fill:#1E1D33}
.nct-ticks .elementor-icon-list-icon i,.nct-yes .elementor-icon-list-icon i{color:#1E1D33}
.nct-no .elementor-icon-list-icon svg{fill:#C0392B}
.nct-no .elementor-icon-list-icon i{color:#C0392B}
.nct-meh .elementor-icon-list-icon svg{fill:#6B7079}
.nct-meh .elementor-icon-list-icon i{color:#6B7079}
/* nudge the marker onto the first line of text rather than the block centre */
.nct-ticks .elementor-icon-list-icon,
.nct-yes .elementor-icon-list-icon,
.nct-no .elementor-icon-list-icon,
.nct-meh .elementor-icon-list-icon{margin-top:2px}
/* ===== National Caravan Trader - global styles ===== */
/* Header: transparent over the hero on the front page, solid once scrolled */
.nct-header{transition:background-color .25s ease,box-shadow .25s ease}
body.home .nct-header{background:linear-gradient(rgba(30,29,51,.55),rgba(30,29,51,0))!important}
body.home .nct-header.elementor-sticky--effects{background:#2A2944!important;box-shadow:0 4px 20px rgba(30,29,51,.25)}
body.home .nct-header img{filter:drop-shadow(0 1px 6px rgba(30,29,51,.6))}
body.home .nct-hero{margin-top:-68px;padding-top:132px}
@media(max-width:767px){body.home .nct-hero{margin-top:-64px;padding-top:96px}}


/* Numbered step badge */
.nct-num .elementor-heading-title{width:52px;height:52px;border-radius:50%;background:#54C3C3;color:#1E1D33;
  display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;line-height:1}

/* Make- and model chips */
.nct-chips .elementor-icon-list-items{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.nct-chips .elementor-icon-list-item{border:1.5px solid #E3E6EA;border-radius:30px;padding:7px 16px!important;background:#fff;margin:0!important}
.nct-chips .elementor-icon-list-item span{font-size:15px;font-weight:600;color:#2A2944}

/* Cards fill the row evenly */
.nct-card{height:100%}

/* Sticky mobile action bar */
.nct-sticky-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;box-shadow:0 -6px 24px rgba(30,29,51,.15);
  padding-bottom:calc(10px + env(safe-area-inset-bottom))!important}
.nct-iconbtn .elementor-button-icon{margin:0}
.nct-iconbtn .elementor-button-content-wrapper{gap:0}

/* Star rows */
.nct-stars .elementor-star-full,.nct-stars i{color:#F5B301}
.nct-stars{letter-spacing:3px}

/* Reduce the Elementor form label / field rhythm to match the design */
.nct-form .elementor-field-group>label{font-weight:600;font-size:14px;color:#2A2944;margin-bottom:6px}
.nct-form .elementor-field-textual{min-height:50px;padding:13px 14px}
.nct-form .elementor-field-type-acceptance label{font-weight:400;font-size:13px;color:#6B7079;line-height:1.45}
.nct-form .elementor-field-type-acceptance .elementor-field-option{display:flex;gap:10px;align-items:flex-start}
.nct-form .e-form__buttons{width:100%}
.nct-form .elementor-button{width:100%;justify-content:center}
.nct-form .e-form__indicators__indicator{font-weight:600}

/* Footer */
.nct-footer-legal p{margin:0}
.nct-footer .elementor-nav-menu--main .elementor-item{padding-left:12px;padding-right:12px}
/* ---- layout helpers ---- */
.nct-2col .elementor-icon-list-items{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;max-width:520px}
@media(max-width:767px){.nct-2col .elementor-icon-list-items{gap:8px 10px}
 .nct-2col .elementor-icon-list-text{font-size:13px!important}}
.nct-shadow-text,.nct-shadow-text p,.nct-2col .elementor-icon-list-text{text-shadow:0 1px 10px rgba(30,29,51,.7)}
.nct-beat .elementor-icon-list-items{background:rgba(30,29,51,.55);border:1.5px solid rgba(111,218,218,.7);border-radius:10px;padding:10px 14px;display:inline-flex;max-width:540px}
.nct-center-list .elementor-icon-list-items{justify-content:center}
.nct-why .elementor-icon{border-radius:10px}
.nct-headcall .elementor-icon-box-description{margin-top:0}
.nct-best{position:relative}


/* FAQ accordion spacing */
.nct-faq .elementor-accordion-item{border-radius:10px;overflow:hidden;margin-bottom:10px}
.nct-faq .elementor-accordion-item:last-child{margin-bottom:0}

/* numbered next steps on the thank you page */
.nct-nextsteps ol.nct-steps{list-style:none;padding:0;margin:0;counter-reset:ns;display:grid;gap:14px}
.nct-nextsteps ol.nct-steps li{display:flex;gap:14px;align-items:flex-start}
.nct-nextsteps ol.nct-steps li:before{counter-increment:ns;content:counter(ns);width:30px;height:30px;border-radius:50%;
  background:#EAF7F7;color:#2F8F8F;font-weight:700;display:flex;align-items:center;justify-content:center;flex:0 0 30px;font-size:14px}

/* make / model chips sit flush */
.nct-chips .elementor-icon-list-icon{display:none}
.nct-flag .elementor-heading-title{white-space:nowrap;display:block;text-align:center}
.nct-form .e-form__indicators__indicator__progress__meter{line-height:20px;font-size:11px}
.nct-form .e-form__indicators{margin-bottom:16px}

/* styled upload dropzone, matching the design */
.nct-form .elementor-field-type-upload input[type=file]{
  width:100%;border:2px dashed #B9C2CB;border-radius:12px;padding:26px 16px;background:#F6F8F9;
  cursor:pointer;font-size:15px;color:#6B7079;transition:border-color .15s,background .15s}
.nct-form .elementor-field-type-upload input[type=file]:hover{border-color:#2F8F8F;background:#EAF7F7}
.nct-form .elementor-field-type-upload input[type=file]::file-.elementor-kit-9-button{
  border:0;background:#2A2944;color:#fff;font:inherit;font-weight:600;padding:10px 16px;border-radius:8px;margin-right:14px;cursor:pointer}
.nct-drop{display:none}
/* responsive fixes */
.nct-form .elementor-button{white-space:normal;max-width:100%;line-height:1.3}
.nct-form .elementor-field-group.elementor-field-type-next,
.nct-form .elementor-field-group.elementor-field-type-submit,
.nct-form .elementor-field-group.elementor-field-type-previous{max-width:100%}
.e-con,.e-con-inner{max-width:100%}
@media(max-width:767px){
  .nct-form .elementor-button{font-size:15px!important;padding-left:14px!important;padding-right:14px!important}
  .nct-headcall .elementor-icon-box-title{display:none}
  .nct-headcall .elementor-icon-box-wrapper{display:flex;align-items:center;gap:8px}
  .nct-headcall .elementor-icon-box-icon{margin:0!important}
  .nct-header .e-con-inner{min-height:64px}
  .nct-beat .elementor-icon-list-items{padding:8px 12px}
  .nct-2col .elementor-icon-list-items{max-width:100%}
}
/* mobile marker scale */
@media(max-width:767px){
  .nct-2col .elementor-icon-list-icon{width:18px;height:18px;flex:0 0 18px;margin-right:8px}
  .elementor-widget .nct-2col .elementor-icon-list-icon svg,.elementor-widget .nct-2col .elementor-icon-list-icon i{margin:0;width:9px;height:9px;min-width:9px;flex:0 0 9px;font-size:9px;line-height:9px}
}/* End custom CSS */