@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

:root{
  --nfe-black:#0a0d10;
  --nfe-ink:#12171c;
  --nfe-charcoal:#1b2229;
  --nfe-steel:#65707a;
  --nfe-muted:#737d86;
  --nfe-line:#dce1e5;
  --nfe-soft:#f5f7f8;
  --nfe-silver:#eef1f3;
  --nfe-white:#fff;
  --nfe-plate:#f5c915;
  --nfe-accent:#20272e;
  --nfe-shadow:0 18px 50px rgba(15,23,30,.10);
  --nfe-shadow-soft:0 10px 28px rgba(15,23,30,.07);
  --nfe-radius:14px;
  --nfe-font:"Plus Jakarta Sans",Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--nfe-ink);font-family:var(--nfe-font);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body .container{width:min(1220px,calc(100% - 48px));margin-inline:auto}
body h1,body h2,body h3,body h4,body p{margin-top:0}
body h1,body h2,body h3,body h4{font-family:var(--nfe-font);color:var(--nfe-ink);letter-spacing:-.035em}
body h1{font-size:clamp(2.7rem,4.5vw,4.7rem);line-height:1.02;font-weight:800}
body h2{font-size:clamp(2rem,3vw,3rem);line-height:1.08;font-weight:800}
body h3{font-size:1.24rem;line-height:1.2;font-weight:750}
body a{color:inherit}

/* Shared buttons */
.btn,.nfe-secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:0 23px;border-radius:8px;font:700 12px/1 var(--nfe-font);letter-spacing:.015em;text-decoration:none;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}
.btn-primary{border:1px solid #0a0d10;background:#0a0d10;color:#fff!important;box-shadow:0 8px 20px rgba(0,0,0,.14)}
.btn-primary:hover{background:#242b32;transform:translateY(-2px);box-shadow:0 13px 28px rgba(0,0,0,.18)}
.nfe-secondary-btn{border:1px solid rgba(255,255,255,.48);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(5px)}
.nfe-secondary-btn:hover{background:#fff;color:#101418;border-color:#fff;transform:translateY(-2px)}

/* Utility bar */
.nfe-topbar{height:34px;background:#090c0f;color:#dfe4e7;border-bottom:1px solid rgba(255,255,255,.08);font:500 10px/34px var(--nfe-font);letter-spacing:.01em}
.nfe-topbar-inner{height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.nfe-topbar-points,.nfe-topbar-contact{display:flex;align-items:center;gap:11px;white-space:nowrap}
.nfe-topbar i{display:block;width:3px;height:3px;border-radius:50%;background:#6d7881}
.nfe-topbar a{color:#fff;text-decoration:none}

/* Header */
.nfe-header{position:relative;z-index:80;background:rgba(255,255,255,.98);border-bottom:1px solid #e3e7ea;box-shadow:0 5px 22px rgba(14,21,28,.05)}
.nfe-header-main{display:grid;grid-template-columns:230px minmax(0,1fr) auto;align-items:center;gap:22px;min-height:82px}
.nfe-brand{display:flex;align-items:center;text-decoration:none}
.nfe-brand img{display:block;width:205px;max-height:58px;object-fit:contain;object-position:left center}
.nfe-brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,#fafafa,#9ba4aa);border:1px solid #8d969d;font:800 22px/1 var(--nfe-font)}
.nfe-brand-copy{display:grid;margin-left:10px}.nfe-brand-copy strong{font-size:22px;font-weight:800;letter-spacing:.08em}.nfe-brand-copy small{font-size:10px;font-weight:700;letter-spacing:.14em}
.nfe-main-nav{display:flex;align-items:center;justify-content:center;gap:3px}
.nfe-main-nav .nav-link,.nfe-main-nav .nav-parent{position:relative;display:inline-flex;align-items:center;gap:5px;padding:30px 10px 27px;border:0;background:none;color:#20262b;font:700 11px/1 var(--nfe-font);text-decoration:none;text-transform:uppercase;cursor:pointer}
.nfe-main-nav .nav-link:after,.nfe-main-nav .nav-parent:after{content:"";position:absolute;left:10px;right:10px;bottom:20px;height:2px;border-radius:2px;background:#111820;transform:scaleX(0);transition:transform .2s ease}
.nfe-main-nav .nav-link:hover:after,.nfe-main-nav .nav-parent:hover:after,.nfe-main-nav .nfe-home-link:after{transform:scaleX(1)}
.nfe-main-nav .nav-group{position:relative}
.nfe-main-nav .nav-dropdown{position:absolute;top:calc(100% - 13px);left:0;display:none;min-width:235px;padding:10px;background:#fff;border:1px solid #e0e5e8;border-radius:10px;box-shadow:0 20px 55px rgba(14,21,28,.16)}
.nfe-main-nav .nav-parent[aria-expanded="true"]+.nav-dropdown,.nfe-main-nav .nav-group:hover>.nav-dropdown{display:grid}
.nfe-main-nav .nav-dropdown a{padding:10px 11px;border-radius:7px;color:#343c43;font:600 12px/1.35 var(--nfe-font);text-decoration:none}.nfe-main-nav .nav-dropdown a:hover{background:#f2f5f6;color:#0b0e11}
.nfe-header-actions{display:flex;align-items:center;gap:16px}.nfe-header-phone{display:flex;align-items:center;gap:7px;font-size:12px;text-decoration:none}.nfe-header-phone span{font-size:7px}.nfe-header-phone strong{white-space:nowrap}.nfe-header-cta{min-height:44px}
.nfe-menu-toggle{display:none}

/* Hero — engine as the banner/background, same philosophy as the JLR/Citroen hero */
.nfe-hero{position:relative;isolation:isolate;overflow:hidden;background-color:#0c1115;background-image:linear-gradient(90deg,rgba(7,10,13,.96) 0%,rgba(7,10,13,.84) 35%,rgba(7,10,13,.39) 62%,rgba(7,10,13,.60) 100%),var(--nfe-hero-bg);background-repeat:no-repeat;background-size:cover;background-position:center 48%;color:#fff;border-bottom:1px solid #242c32}
.nfe-hero--home{min-height:560px}.nfe-hero--inner{min-height:420px;background-position:center 45%}
.nfe-hero-shade{position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 60% 48%,rgba(255,255,255,.09),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.03),transparent 28%,rgba(0,0,0,.16));pointer-events:none}
.nfe-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 335px;align-items:center;gap:80px;min-height:inherit;padding-block:66px}
.nfe-hero-copy{max-width:600px;padding:18px 0}.nfe-kicker{display:inline-flex;margin:0 0 18px;padding:8px 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(4,7,9,.32);color:#dfe5e8;font:700 10px/1 var(--nfe-font);letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(5px)}
.nfe-hero h1,.nfe-hero h2{max-width:650px;margin:0 0 15px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.28)}
.nfe-hero-subline{margin:0 0 21px;color:#fff;font-size:17px;font-weight:600}.nfe-hero-text{max-width:570px;color:#d7dde1;font-size:13px;line-height:1.72}.nfe-hero-text p{margin-bottom:13px}.nfe-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.nfe-quote-card{padding:28px 26px 26px;border:1px solid rgba(255,255,255,.72);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 30px 70px rgba(0,0,0,.30);color:#151a1e;backdrop-filter:blur(12px)}
.nfe-quote-kicker{display:block;margin-bottom:4px;color:#69737b;font:800 9px/1.2 var(--nfe-font);letter-spacing:.09em;text-transform:uppercase}.nfe-quote-card h2{margin:0 0 8px;color:#11161a;font-size:1.55rem;letter-spacing:-.04em}.nfe-quote-card>p{margin:0 0 18px;color:#636d74;font-size:11px;line-height:1.55}.nfe-vrm-form label{display:block;margin-bottom:6px;color:#20272c;font-size:10px;font-weight:700}
.nfe-number-plate{display:grid;grid-template-columns:42px 1fr;overflow:hidden;height:50px;margin-bottom:10px;border:1px solid #191e22;border-radius:7px;background:var(--nfe-plate);box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}.nfe-number-plate .plate-gb{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1847a4;color:#fff;font:700 8px/1.1 Arial,sans-serif}.nfe-number-plate .plate-gb b{font-size:9px}.nfe-number-plate .plate-gb small{font-size:7px}.nfe-number-plate input{min-width:0;border:0!important;background:transparent!important;color:#181818!important;outline:0!important;text-align:center;font:800 21px/50px Arial,sans-serif;letter-spacing:.045em;text-transform:uppercase;box-shadow:none!important}.nfe-vrm-submit{width:100%;min-height:46px}.nfe-quote-trust{display:grid;gap:7px;margin-top:16px;color:#5e686f;font-size:10px}.nfe-quote-trust span{display:flex;align-items:center;gap:6px}.vrm-inline-error{margin:4px 0 8px;color:#a32222;font-size:10px}

/* Section rhythm */
.nfe-section,.nfe-model-selector,.nfe-why-section,.nfe-why-strip,.nfe-callout-section{padding:70px 0}.nfe-section-title{margin-bottom:30px}.nfe-section-title>span{display:block;margin-bottom:8px;color:#7c858c;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.nfe-section-title h2,.nfe-section-title h3{margin-bottom:10px}.nfe-section-title p{margin:0;color:#727b82;font-size:13px}.nfe-section-title-center{text-align:center}.nfe-section-title-center .nfe-copy,.nfe-copy-center{max-width:760px;margin-inline:auto}.nfe-copy{color:#68727a;font-size:13px;line-height:1.75}.nfe-copy p:last-child{margin-bottom:0}

/* Slim facts/trust row */
.nfe-facts-section{background:#fff;border-bottom:1px solid #e3e7ea}.nfe-facts-strip{display:grid;grid-template-columns:repeat(4,1fr);min-height:108px}.nfe-facts-strip article{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:13px;padding:20px 24px;border-right:1px solid #e1e5e8}.nfe-facts-strip article:nth-child(n+5){display:none}.nfe-facts-strip article:last-child{border-right:0}.nfe-fact-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #a4adb4;border-radius:50%;background:#fafbfb;color:#171d22;font-size:14px;font-weight:800}.nfe-facts-strip strong{display:block;margin-bottom:4px;color:#161c21;font-size:10px;font-weight:800;text-transform:uppercase}.nfe-facts-strip p{margin:0;color:#747d84;font-size:9px;line-height:1.45}

/* Model selector — intentionally no car images */
.nfe-model-selector{background:linear-gradient(180deg,#f8fafb 0%,#fff 100%);border-bottom:1px solid #e5e9ec}.nfe-model-title{margin-bottom:28px}.nfe-model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.nfe-model-card{display:flex;min-height:138px;flex-direction:column;justify-content:space-between;padding:23px 22px;border:1px solid #dce2e6;border-radius:13px;background:rgba(255,255,255,.9);box-shadow:var(--nfe-shadow-soft);text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.nfe-model-card:hover{transform:translateY(-4px);border-color:#aeb8bf;box-shadow:var(--nfe-shadow)}.nfe-model-card strong{display:block;margin-bottom:5px;font-size:16px;font-weight:800;letter-spacing:-.025em;text-transform:uppercase}.nfe-model-card small{display:block;color:#7a848b;font-size:10px}.nfe-model-link{display:flex;align-items:center;justify-content:space-between;padding-top:15px;border-top:1px solid #edf0f2;font-size:10px;font-weight:800;text-transform:uppercase}.nfe-model-link b{font-size:17px;font-weight:500}.nfe-more-models{margin-top:22px;text-align:center}.nfe-more-models summary{display:inline-flex;align-items:center;gap:13px;min-height:42px;padding:0 20px;border:1px solid #cbd2d7;border-radius:999px;background:#fff;color:#22292e;font-size:10px;font-weight:800;text-transform:uppercase;cursor:pointer;list-style:none}.nfe-more-models summary::-webkit-details-marker{display:none}.nfe-more-models[open] summary span{transform:rotate(45deg)}.nfe-more-model-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:22px;text-align:left}.nfe-more-model-grid a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:66px;padding:14px 16px;border:1px solid #e0e5e8;border-radius:10px;background:#fff;text-decoration:none}.nfe-more-model-grid strong{font-size:12px}.nfe-more-model-grid span{color:#78828a;font-size:9px;white-space:nowrap}

/* Why choose */
.nfe-why-section,.nfe-why-strip{background:#fff}.nfe-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid #e0e5e8;border-radius:14px;background:#fff;box-shadow:var(--nfe-shadow-soft);overflow:hidden}.nfe-why-grid article{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:start;padding:23px;border-right:1px solid #e4e8eb}.nfe-why-grid article:last-child{border-right:0}.nfe-why-grid>article>span{display:grid;place-items:center;width:35px;height:35px;border:1px solid #b2bbc1;border-radius:50%;font-size:11px}.nfe-why-grid strong{display:block;color:#1c2328;font-size:11px}.nfe-why-grid p{margin:4px 0 0;color:#7a838a;font-size:9px;line-height:1.45}

/* Diagnostic */
.nfe-diagnostic-section{background:var(--nfe-soft)}.nfe-diagnostic-shell{display:grid;grid-template-columns:.82fr 1.18fr;overflow:hidden;border:1px solid #dce2e6;border-radius:18px;background:#fff;box-shadow:var(--nfe-shadow)}.nfe-diagnostic-image{min-height:430px;margin:0;background:#111}.nfe-diagnostic-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.04)}.nfe-diagnostic-content{padding:36px}.nfe-diagnostic-points{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:25px}.nfe-diagnostic-points article{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:15px;border:1px solid #e2e7ea;border-radius:10px;background:#fbfcfc}.nfe-diagnostic-points>article>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#151b20;color:#fff;font-size:9px;font-weight:800}.nfe-diagnostic-points strong{display:block;font-size:10px}.nfe-diagnostic-points p{margin:3px 0 0;color:#747e85;font-size:9px;line-height:1.45}

/* Service cards */
.nfe-service-section{position:relative;background:linear-gradient(180deg,#11171c,#171e24);color:#fff}.nfe-service-section .nfe-section-title h2,.nfe-service-section .nfe-section-title h3{color:#fff}.nfe-service-section .nfe-section-title>span,.nfe-service-section .nfe-copy{color:#aeb7bd}.nfe-service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.nfe-service-card{overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:15px;background:#20272d;box-shadow:0 22px 50px rgba(0,0,0,.23)}.nfe-service-photo{position:relative;height:145px;background:#0d1115}.nfe-service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.38))}.nfe-service-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.35) contrast(1.08)}.nfe-service-photo span{position:absolute;z-index:2;left:18px;bottom:15px;display:grid;place-items:center;width:39px;height:39px;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:rgba(7,10,12,.62);color:#fff;font-size:15px}.nfe-service-body{padding:23px}.nfe-service-body h3{margin-bottom:8px;color:#fff;font-size:17px}.nfe-service-body p{color:#c5cdd2;font-size:11px}.nfe-service-body ul{display:grid;gap:7px;margin:16px 0;padding:0;list-style:none;color:#d9dfe3;font-size:10px}.nfe-service-body li:before{content:"✓";margin-right:8px;color:#fff}.nfe-service-body small{display:block;margin-bottom:15px;color:#98a3aa;font-size:9px}.nfe-service-body .btn{width:100%;background:#fff;color:#111820!important;border-color:#fff}.nfe-service-body .btn:hover{background:#e9edef}

/* Comparison */
.nfe-compare-wrap{margin-top:34px;padding:27px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:#fff;color:#151b20;box-shadow:0 20px 55px rgba(0,0,0,.18)}.nfe-compare-title{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:18px}.nfe-compare-title span{display:block;margin-bottom:4px;color:#89939a;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.nfe-compare-title strong{font-size:20px}.nfe-compare-title p{max-width:430px;margin:0;color:#79838a;font-size:10px;text-align:right}.nfe-table-wrap{overflow:auto;border:1px solid #dfe4e7;border-radius:10px;background:#fff}.nfe-table{width:100%;min-width:730px;border-collapse:collapse;font-size:10px}.nfe-table th{padding:12px 13px;background:#1b2329;color:#fff;font-size:9px;font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:.025em}.nfe-table td{padding:11px 13px;border-top:1px solid #e3e7ea;border-right:1px solid #edf0f2;color:#4d575e}.nfe-table tr:nth-child(even) td{background:#fafbfb}.nfe-table td:last-child,.nfe-table th:last-child{border-right:0}.nfe-table-cta,.nfe-section-cta{margin-top:18px;text-align:center}

/* Specs */
.nfe-specs-section{background:#f7f9fa}.nfe-specs-shell{display:grid;grid-template-columns:minmax(0,1.25fr) 360px;gap:26px;align-items:stretch}.nfe-specs-content{min-width:0}.nfe-specs-visual{position:relative;overflow:hidden;margin:0;border-radius:16px;background:#12171b;box-shadow:var(--nfe-shadow)}.nfe-specs-visual img{width:100%;height:100%;min-height:390px;object-fit:cover;filter:grayscale(.25) brightness(.8)}.nfe-specs-visual figcaption{position:absolute;left:16px;right:16px;bottom:16px;padding:12px 14px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:rgba(8,11,14,.76);color:#e7ebed;font-size:9px;backdrop-filter:blur(8px)}

/* Process */
.nfe-process-section{background:#fff}.nfe-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.nfe-process-grid article{position:relative;padding:24px 21px;border:1px solid #dee4e7;border-radius:13px;background:#fff;box-shadow:var(--nfe-shadow-soft)}.nfe-process-grid article>span{display:grid;place-items:center;width:33px;height:33px;margin-bottom:15px;border-radius:50%;background:#12181d;color:#fff;font-size:10px;font-weight:800}.nfe-process-grid h3{font-size:14px}.nfe-process-grid p{margin:0;color:#737d84;font-size:10px;line-height:1.55}.nfe-process-table{margin-top:24px}

/* FAQ */
.nfe-faq-section{background:#f5f7f8}.nfe-faq-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:1000px;margin-inline:auto}.nfe-faq-list details{overflow:hidden;border:1px solid #dde3e6;border-radius:11px;background:#fff;box-shadow:0 6px 18px rgba(15,23,30,.035)}.nfe-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 18px;color:#20272d;font-size:12px;font-weight:700;cursor:pointer;list-style:none}.nfe-faq-list summary::-webkit-details-marker{display:none}.nfe-faq-list summary span{font-size:18px;font-weight:400;transition:transform .2s}.nfe-faq-list details[open] summary span{transform:rotate(45deg)}.nfe-faq-list details>div{padding:0 18px 17px;color:#6f7980;font-size:10px;line-height:1.65}

/* Bullets + generic content */
.nfe-generic-section{background:#fff}.nfe-generic-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:35px;align-items:center}.nfe-generic-grid--full{grid-template-columns:minmax(0,1fr)}.nfe-generic-grid--full>div{width:100%;min-width:0;max-width:none}.nfe-generic-grid figure{overflow:hidden;margin:0;border-radius:16px;box-shadow:var(--nfe-shadow)}.nfe-generic-grid figure img{display:block;width:100%;height:auto}.nfe-bullet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-top:22px}.nfe-bullet-grid article{padding:14px 15px;border:1px solid #e0e5e8;border-radius:10px;background:#fafbfb}.nfe-bullet-grid strong{display:block;font-size:10px}.nfe-bullet-grid p{margin:4px 0 0;color:#788188;font-size:9px}

/* Callout */
.nfe-callout-section{background:#fff}.nfe-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;padding:36px 38px;border-radius:18px;background:linear-gradient(105deg,#0d1216,#222b32);box-shadow:var(--nfe-shadow);color:#fff}.nfe-callout h2,.nfe-callout h3{color:#fff}.nfe-callout>div>span{display:block;margin-bottom:6px;color:#aeb8be;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.nfe-callout .nfe-copy{color:#cbd2d6}.nfe-callout ul{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 18px;margin:15px 0 0;padding:0;list-style:none;color:#e4e8ea;font-size:10px}.nfe-light-btn{border-color:#fff!important;background:#fff!important;color:#111820!important}.nfe-light-btn:hover{background:#e9edef!important}

/* Disclosure */
.nfe-disclosure-section{padding:18px 0;background:#f5f7f8;border-top:1px solid #e3e7ea}.nfe-disclosure-section details{max-width:1000px;margin:auto}.nfe-disclosure-section summary{display:flex;justify-content:space-between;color:#5f6970;font-size:10px;font-weight:700;text-transform:uppercase;cursor:pointer}.nfe-disclosure-section .nfe-copy{margin-top:13px;font-size:10px}

/* Final CTA */
.nfe-final-cta{position:relative;overflow:hidden;padding:58px 0;background:#0c1115;color:#fff}.nfe-final-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,11,14,.98) 0%,rgba(8,11,14,.83) 50%,rgba(8,11,14,.36) 100%),url('../images/sections/cta-engine.webp') center/cover no-repeat;opacity:.95}.nfe-final-cta-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:45px}.nfe-final-kicker{display:block;margin-bottom:7px;color:#abb5bb;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.nfe-final-cta h2,.nfe-final-cta h3{color:#fff}.nfe-final-cta .nfe-copy{max-width:640px;color:#d1d7da}.nfe-final-engine{display:none}

/* Footer */
.nfe-footer{padding-top:44px;background:#101519;color:#aeb7bd;border-top:1px solid #2b3339}.nfe-footer-main{display:grid;grid-template-columns:270px minmax(0,1fr);gap:55px;padding-bottom:34px}.nfe-footer-logo img{display:block;width:238px;max-width:100%;height:auto;filter:none}.nfe-footer-brand p{margin:15px 0;color:#9ea9af;font-size:10px;line-height:1.65}.nfe-footer-social{display:flex;gap:8px}.nfe-footer-social span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #515c63;border-radius:50%;color:#fff;font-size:10px}.nfe-footer-menus{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.nfe-footer-column h3{margin:0 0 13px;color:#fff;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.nfe-footer-column a,.nfe-footer-column span{display:block;margin-bottom:7px;color:#aab3b9;font-size:9px;line-height:1.5;text-decoration:none}.nfe-footer-column a:hover{color:#fff}.nfe-footer-disclosure{padding:14px 0;border-top:1px solid #293137;color:#7e898f;font-size:8px}.nfe-footer-disclosure p{margin:0}.nfe-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0 21px;border-top:1px solid #293137;color:#758087;font-size:8px}.nfe-footer-bottom div{display:flex;gap:17px}.nfe-footer-bottom a{text-decoration:none}

/* VRM popup inherits Nissan polish */
body .vrm-modal-dialog{border:1px solid #d6dce0;border-radius:16px;box-shadow:0 38px 95px rgba(0,0,0,.32);font-family:var(--nfe-font)}body .vrm-modal-header{background:linear-gradient(135deg,#10161a,#2c353c);color:#fff}body .vrm-modal-header h2,body .vrm-modal-header p{color:#fff}body .vehicle-found-badge{background:#fff;color:#111820}body .vrm-choice-card{border-color:#dce2e6;border-radius:10px}body .vrm-choice-card:has(input:checked){border-color:#111820;box-shadow:inset 0 0 0 1px #111820}body .vrm-choice-card input:checked~.choice-check{background:#111820;color:#fff}

/* Scroll reveal — only hidden once JS confirms it is active */
.nfe-js .nfe-reveal{opacity:0;transform:translateY(30px);transition:opacity .72s cubic-bezier(.2,.7,.2,1),transform .72s cubic-bezier(.2,.7,.2,1)}
.nfe-js .nfe-reveal.is-visible{opacity:1;transform:none}
.nfe-js .nfe-reveal .nfe-model-card,.nfe-js .nfe-reveal .nfe-service-card,.nfe-js .nfe-reveal .nfe-process-grid article,.nfe-js .nfe-reveal .nfe-faq-list details{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.nfe-js .nfe-reveal.is-visible .nfe-model-card,.nfe-js .nfe-reveal.is-visible .nfe-service-card,.nfe-js .nfe-reveal.is-visible .nfe-process-grid article,.nfe-js .nfe-reveal.is-visible .nfe-faq-list details{opacity:1;transform:none}
.nfe-js .nfe-reveal.is-visible .nfe-model-card:nth-child(2),.nfe-js .nfe-reveal.is-visible .nfe-service-card:nth-child(2),.nfe-js .nfe-reveal.is-visible .nfe-process-grid article:nth-child(2){transition-delay:.08s}.nfe-js .nfe-reveal.is-visible .nfe-model-card:nth-child(3),.nfe-js .nfe-reveal.is-visible .nfe-service-card:nth-child(3),.nfe-js .nfe-reveal.is-visible .nfe-process-grid article:nth-child(3){transition-delay:.15s}.nfe-js .nfe-reveal.is-visible .nfe-model-card:nth-child(4),.nfe-js .nfe-reveal.is-visible .nfe-process-grid article:nth-child(4){transition-delay:.22s}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nfe-js .nfe-reveal,.nfe-js .nfe-reveal *{opacity:1!important;transform:none!important;transition:none!important}}

body :focus-visible{outline:3px solid #68747d;outline-offset:3px}

@media(max-width:1180px){
  .nfe-header-main{grid-template-columns:205px minmax(0,1fr) auto;gap:10px}.nfe-brand img{width:180px}.nfe-main-nav .nav-link,.nfe-main-nav .nav-parent{padding-inline:7px;font-size:10px}.nfe-header-phone{display:none}.nfe-hero-grid{gap:48px}.nfe-footer-menus{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:960px){
  body .container{width:min(100% - 32px,840px)}
  .nfe-topbar-contact a:last-child,.nfe-topbar-contact i:last-of-type{display:none}.nfe-header-main{grid-template-columns:1fr auto;min-height:68px}.nfe-brand img{width:175px}.nfe-menu-toggle{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:44px;height:40px;padding:8px;border:1px solid #d8dee2;border-radius:8px;background:#fff}.nfe-menu-toggle span{display:block;width:22px;height:2px;background:#111820}.nfe-menu-toggle b{display:none}.nfe-header-actions{grid-column:2;grid-row:1}.nfe-header-cta{display:none}.nfe-main-nav{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;align-items:stretch;padding:10px 16px 17px;background:#fff;border-top:1px solid #e1e5e8;box-shadow:0 18px 35px rgba(0,0,0,.13)}.nfe-main-nav.is-open{display:flex}.nfe-main-nav .nav-link,.nfe-main-nav .nav-parent{width:100%;justify-content:space-between;padding:12px 5px}.nfe-main-nav .nav-link:after,.nfe-main-nav .nav-parent:after{display:none}.nfe-main-nav .nav-dropdown{position:static;width:100%;box-shadow:none;border:0;border-left:2px solid #dde2e5;border-radius:0}
  .nfe-hero-grid{grid-template-columns:1fr 300px;gap:30px;padding-block:48px}.nfe-hero--home{min-height:520px}.nfe-model-grid{grid-template-columns:repeat(2,1fr)}.nfe-more-model-grid{grid-template-columns:repeat(2,1fr)}.nfe-facts-strip{grid-template-columns:repeat(2,1fr)}.nfe-facts-strip article:nth-child(2){border-right:0}.nfe-facts-strip article:nth-child(-n+2){border-bottom:1px solid #e1e5e8}.nfe-why-grid{grid-template-columns:repeat(2,1fr)}.nfe-why-grid article:nth-child(2){border-right:0}.nfe-why-grid article:nth-child(-n+2){border-bottom:1px solid #e4e8eb}.nfe-diagnostic-shell,.nfe-specs-shell,.nfe-generic-grid{grid-template-columns:1fr}.nfe-diagnostic-image{min-height:320px}.nfe-service-cards{grid-template-columns:1fr}.nfe-process-grid{grid-template-columns:repeat(2,1fr)}.nfe-faq-list{grid-template-columns:1fr}.nfe-final-cta-grid{grid-template-columns:1fr}.nfe-footer-main{grid-template-columns:1fr}.nfe-footer-menus{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){
  body{font-size:14px}body .container{width:calc(100% - 24px)}body h1{font-size:clamp(2.35rem,11vw,3.3rem)}body h2{font-size:clamp(1.75rem,8vw,2.35rem)}
  .nfe-topbar{display:none}.nfe-header-main{min-height:62px}.nfe-brand img{width:158px;max-height:45px}.nfe-hero{background-position:62% center}.nfe-hero--home,.nfe-hero--inner{min-height:0}.nfe-hero-grid{grid-template-columns:1fr;gap:26px;padding-block:40px}.nfe-hero-copy{padding:0}.nfe-hero-text{font-size:12px}.nfe-hero-actions{flex-direction:column;align-items:stretch}.nfe-secondary-btn{width:100%}.nfe-quote-card{padding:22px 20px}.nfe-number-plate input{font-size:19px}.nfe-section,.nfe-model-selector,.nfe-why-section,.nfe-why-strip,.nfe-callout-section{padding:48px 0}
  .nfe-facts-strip{grid-template-columns:1fr}.nfe-facts-strip article{border-right:0;border-bottom:1px solid #e1e5e8}.nfe-facts-strip article:last-child{border-bottom:0}.nfe-model-grid{grid-template-columns:1fr}.nfe-model-card{min-height:118px}.nfe-more-model-grid{grid-template-columns:1fr}.nfe-why-grid{grid-template-columns:1fr}.nfe-why-grid article{border-right:0!important;border-bottom:1px solid #e4e8eb}.nfe-why-grid article:last-child{border-bottom:0}.nfe-diagnostic-content{padding:24px 20px}.nfe-diagnostic-points,.nfe-bullet-grid{grid-template-columns:1fr}.nfe-compare-wrap{padding:18px 14px}.nfe-compare-title{align-items:flex-start;flex-direction:column}.nfe-compare-title p{text-align:left}.nfe-process-grid{grid-template-columns:1fr}.nfe-callout{grid-template-columns:1fr;padding:27px 23px}.nfe-callout ul{grid-template-columns:1fr}.nfe-footer-menus{grid-template-columns:repeat(2,1fr)}.nfe-footer-bottom{align-items:flex-start;flex-direction:column}.nfe-footer-bottom div{flex-wrap:wrap}
}

/* =========================================================
   V4.1 HERO + VEHICLE LOOKUP REFINEMENT
   Nissan only. Keeps JLR/Citroen untouched.
   ========================================================= */

/* Smaller, more controlled hero typography */
.nfe-hero h1{
  max-width:590px;
  font-size:clamp(2.35rem,3.15vw,3.65rem);
  line-height:1.075;
  letter-spacing:-.045em;
}
.nfe-hero--inner h1{font-size:clamp(2.2rem,2.8vw,3.25rem)}
.nfe-hero-grid{grid-template-columns:minmax(0,1fr) 370px;gap:64px}
.nfe-hero-copy{max-width:620px}

/* Transparent/glass VRM panel instead of the previous white card */
.nfe-quote-card--glass{
  padding:28px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:18px;
  background:linear-gradient(150deg,rgba(12,17,21,.78),rgba(12,17,21,.52));
  box-shadow:0 28px 80px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.08);
  color:#fff;
  backdrop-filter:blur(18px) saturate(120%);
  -webkit-backdrop-filter:blur(18px) saturate(120%);
}
.nfe-quote-card--glass .nfe-quote-kicker{color:#aeb8bf}
.nfe-quote-card--glass h2{margin-bottom:9px;color:#fff;font-size:1.55rem;letter-spacing:-.04em}
.nfe-quote-card--glass>p{margin-bottom:20px;color:#c3cbd0;font-size:11px;line-height:1.6}
.nfe-quote-card--glass .nfe-vrm-form label{color:#eef2f4;font-size:10px}
.nfe-quote-card--glass .vrm-inline-error{color:#ffd3d3}

/* Larger registration plate */
.nfe-number-plate--large{
  grid-template-columns:50px 1fr;
  height:64px;
  margin-bottom:12px;
  border:1px solid rgba(255,255,255,.76);
  border-radius:9px;
  box-shadow:0 8px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.42);
}
.nfe-number-plate--large .plate-gb b{font-size:10px}
.nfe-number-plate--large .plate-gb small{font-size:7px}
.nfe-number-plate--large input{
  font-size:25px;
  line-height:64px;
  font-weight:800;
  letter-spacing:.065em;
}
.nfe-quote-card--glass .nfe-vrm-submit{
  min-height:50px;
  border-color:#fff;
  background:#fff;
  color:#0d1216!important;
  box-shadow:none;
}
.nfe-quote-card--glass .nfe-vrm-submit:hover{background:#e9eef1;transform:translateY(-1px)}
.nfe-quote-card--glass .nfe-vrm-submit b{font-size:14px}

.nfe-quote-or{display:flex;align-items:center;gap:12px;margin:14px 0;color:#9faab1;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.nfe-quote-or:before,.nfe-quote-or:after{content:"";height:1px;flex:1;background:rgba(255,255,255,.16)}
.nfe-quote-or span{display:block}

.nfe-manual-engine-trigger{
  width:100%;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  padding:12px 13px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(255,255,255,.055);
  color:#fff;
  text-align:left;
  font-family:var(--nfe-font);
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.nfe-manual-engine-trigger:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.42);transform:translateY(-1px)}
.nfe-manual-engine-trigger__icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:rgba(255,255,255,.06);font-size:18px}
.nfe-manual-engine-trigger>span:nth-child(2){display:grid;gap:3px}
.nfe-manual-engine-trigger strong{font-size:11px;font-weight:700}
.nfe-manual-engine-trigger small{color:#aeb8be;font-size:8px;line-height:1.4}
.nfe-manual-engine-trigger>b{font-size:14px;font-weight:500}
.nfe-quote-card--glass .nfe-quote-trust{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:15px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);color:#b5bec4;font-size:8px;line-height:1.35}

/* Nissan manual engine selector */
body.nfe-manual-engine-open{overflow:hidden}
.nfe-manual-engine-modal[hidden]{display:none!important}
.nfe-manual-engine-modal{position:fixed;inset:0;z-index:10060;display:grid;place-items:center;padding:24px;overflow:auto;font-family:var(--nfe-font)}
.nfe-manual-engine-backdrop{position:fixed;inset:0;border:0;background:rgba(5,8,11,.78);backdrop-filter:blur(7px);cursor:pointer}
.nfe-manual-engine-dialog{position:relative;width:min(760px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;padding:34px;border:1px solid #dce2e6;border-radius:20px;background:#fff;box-shadow:0 35px 110px rgba(0,0,0,.42)}
.nfe-manual-engine-close{position:absolute;right:18px;top:16px;width:38px;height:38px;border:1px solid #dce2e6;border-radius:50%;background:#fff;color:#111820;font:500 25px/1 var(--nfe-font);cursor:pointer}
.nfe-manual-engine-heading{padding-right:50px}.nfe-manual-engine-kicker{margin:0 0 7px;color:#707b83;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.nfe-manual-engine-heading h2{margin:0 0 8px;font-size:clamp(1.65rem,3vw,2.25rem)}.nfe-manual-engine-heading>p:last-child{max-width:620px;margin:0;color:#6d777e;font-size:12px}
.nfe-manual-engine-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:26px 0 20px}.nfe-manual-engine-progress span{position:relative;padding:10px 12px;border:1px solid #e1e6e9;border-radius:8px;background:#f7f9fa;color:#828b91;font-size:9px;font-weight:700;text-align:center;text-transform:uppercase}.nfe-manual-engine-progress span.is-active{border-color:#111820;background:#111820;color:#fff}.nfe-manual-engine-progress span.is-complete{border-color:#a7b0b6;background:#edf1f3;color:#242b30}
.nfe-manual-engine-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.nfe-manual-engine-fields label{display:grid;gap:6px}.nfe-manual-engine-fields label>span{color:#333b41;font-size:10px;font-weight:700}.nfe-manual-engine-fields select{width:100%;height:50px;padding:0 40px 0 13px;border:1px solid #d5dce0;border-radius:9px;background:#fff;color:#182025;font:600 12px/1 var(--nfe-font);outline:0}.nfe-manual-engine-fields select:focus{border-color:#111820;box-shadow:0 0 0 3px rgba(17,24,32,.08)}.nfe-manual-engine-fields select:disabled{background:#f4f6f7;color:#a1a9ae}.nfe-manual-engine-field--wide{grid-column:1/-1}
.nfe-manual-engine-status{min-height:22px;margin-top:10px;color:#647078;font-size:10px}.nfe-manual-engine-status.is-loading:before{content:"";display:inline-block;width:10px;height:10px;margin-right:7px;border:2px solid #c9d0d4;border-top-color:#111820;border-radius:50%;vertical-align:-1px;animation:nfeManualSpin .7s linear infinite}.nfe-manual-engine-status.is-error{color:#a92525}@keyframes nfeManualSpin{to{transform:rotate(360deg)}}
.nfe-manual-engine-summary{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px;margin-top:8px;padding:14px;border:1px solid #d8e0e4;border-radius:10px;background:#f7f9fa}.nfe-manual-engine-summary-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#111820;color:#fff;font-weight:800}.nfe-manual-engine-summary small{display:block;color:#7c868d;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.nfe-manual-engine-summary strong{display:block;margin:2px 0;color:#111820;font-size:13px}.nfe-manual-engine-summary p{margin:0;color:#68737a;font-size:10px}
.nfe-manual-engine-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.nfe-manual-engine-cancel,.nfe-manual-engine-continue{min-height:46px;padding:0 18px;border-radius:8px;font:700 10px/1 var(--nfe-font);text-transform:uppercase;cursor:pointer}.nfe-manual-engine-cancel{border:1px solid #d8dee2;background:#fff;color:#333b41}.nfe-manual-engine-continue{border:1px solid #111820;background:#111820;color:#fff}.nfe-manual-engine-continue:disabled{opacity:.38;cursor:not-allowed}.nfe-manual-engine-note{margin:16px 0 0;padding-top:14px;border-top:1px solid #e4e8ea;color:#848d93;font-size:9px;line-height:1.5}

/* Nissan auto context popup — uses the proven shared popup JS, with Nissan styling */
.nfe-context-quote-modal .context-quote-dialog{font-family:var(--nfe-font);border:1px solid #d9dfe3;border-radius:20px;box-shadow:0 38px 120px rgba(0,0,0,.42)}
.nfe-context-quote-modal .context-quote-header{background:linear-gradient(135deg,#0d1216,#262f36);color:#fff}
.nfe-context-quote-modal .context-quote-badge{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);color:#fff}
.nfe-context-quote-modal .context-quote-copy h3{font-family:var(--nfe-font);letter-spacing:-.035em}
.nfe-context-quote-modal .nfe-context-kicker{margin:0 0 5px;color:#7a858c;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.nfe-context-quote-modal .context-choice-card{border-radius:11px;border-color:#dce2e6}
.nfe-context-quote-modal .context-choice-card:has(input:checked){border-color:#111820;box-shadow:inset 0 0 0 1px #111820}
.nfe-context-quote-modal .context-choice-check{background:#111820!important}
.nfe-context-quote-modal .context-vrm-plate{min-height:62px;border-radius:9px}
.nfe-context-quote-modal .context-vrm-plate input{font-family:Arial,sans-serif;font-size:24px;font-weight:800}
.nfe-context-quote-modal .btn-primary{background:#111820;border-color:#111820;color:#fff!important}
.nfe-context-quote-modal .context-found-check circle,.nfe-context-quote-modal .context-success-tick circle{stroke:#111820}
.nfe-context-quote-modal .context-found-check path,.nfe-context-quote-modal .context-success-tick path{stroke:#111820}

@media(max-width:960px){
  .nfe-hero-grid{grid-template-columns:minmax(0,1fr) 330px;gap:30px}
  .nfe-hero h1{font-size:clamp(2.25rem,5vw,3.25rem)}
  .nfe-quote-card--glass{padding:22px}
}
@media(max-width:700px){
  .nfe-hero h1{font-size:clamp(2.05rem,9.2vw,2.85rem);line-height:1.08}
  .nfe-hero-grid{grid-template-columns:1fr}
  .nfe-quote-card--glass{padding:20px;background:rgba(10,15,19,.84)}
  .nfe-number-plate--large{height:60px;grid-template-columns:48px 1fr}
  .nfe-number-plate--large input{font-size:22px;line-height:60px}
  .nfe-quote-card--glass .nfe-quote-trust{grid-template-columns:1fr}
  .nfe-manual-engine-modal{padding:12px}
  .nfe-manual-engine-dialog{max-height:calc(100vh - 24px);padding:26px 18px 20px;border-radius:16px}
  .nfe-manual-engine-heading{padding-right:36px}.nfe-manual-engine-fields{grid-template-columns:1fr}.nfe-manual-engine-field--wide{grid-column:auto}.nfe-manual-engine-progress{gap:5px}.nfe-manual-engine-progress span{padding:8px 4px;font-size:7px}.nfe-manual-engine-actions{display:grid;grid-template-columns:1fr}.nfe-manual-engine-actions button{width:100%}
}

/* ==========================================================
   NISSAN V4.2 — wider hero lookup + readable content type
   ========================================================== */

/* Give the hero enough horizontal room for copy + a useful lookup panel. */
.nfe-hero .container{width:min(1380px,calc(100% - 48px))}
.nfe-hero-grid{grid-template-columns:minmax(0,1fr) minmax(520px,580px);gap:56px}
.nfe-hero-copy{max-width:590px}
.nfe-quote-card--wide{padding:30px 32px 24px}
.nfe-quote-card--wide h2{font-size:1.72rem;line-height:1.15}
.nfe-quote-card--wide>p{max-width:650px;margin-bottom:0;font-size:13px;line-height:1.65}

/* VRM on the left, useful Nissan engine buying/matching information on the right. */
.nfe-quote-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(215px,.92fr);gap:25px;align-items:start;margin-top:22px}
.nfe-quote-lookup{min-width:0}
.nfe-quote-benefits{min-width:0;padding:4px 0 4px 23px;border-left:1px solid rgba(255,255,255,.15)}
.nfe-quote-benefits__eyebrow{display:block;margin:0 0 6px;color:#9faab1;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.nfe-quote-benefits h3{margin:0 0 13px;color:#fff;font-size:15px;line-height:1.35;letter-spacing:-.02em}
.nfe-quote-benefits ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.nfe-quote-benefits li{position:relative;margin:0;padding-left:20px;color:#d1d8dc;font-size:11.5px;line-height:1.5}
.nfe-quote-benefits li:before{content:"✓";position:absolute;left:0;top:.05em;color:#fff;font-weight:800}
.nfe-quote-card--wide .nfe-vrm-form label{font-size:11px}
.nfe-quote-card--wide .nfe-number-plate--large{height:68px;grid-template-columns:52px 1fr}
.nfe-quote-card--wide .nfe-number-plate--large input{font-size:27px;line-height:68px}
.nfe-quote-card--wide .nfe-vrm-submit{min-height:52px;font-size:11px}
.nfe-quote-card--wide .nfe-manual-engine-trigger{padding:13px 14px}
.nfe-quote-card--wide .nfe-manual-engine-trigger strong{font-size:12px}
.nfe-quote-card--wide .nfe-manual-engine-trigger small{font-size:9.5px;line-height:1.5}
.nfe-quote-card--wide .nfe-quote-trust{grid-template-columns:repeat(3,auto);justify-content:space-between;gap:14px;margin-top:20px;padding-top:16px;font-size:9.5px}

/* Readability pass — content copy was too small in V4/V4.1. */
body{font-size:16px;line-height:1.7}
.nfe-hero-text{font-size:15px;line-height:1.75}
.nfe-section-title p,.nfe-copy{font-size:15px;line-height:1.75}
.nfe-facts-strip p{font-size:11.5px;line-height:1.55}
.nfe-model-card small{font-size:11.5px;line-height:1.55}
.nfe-more-model-grid span{font-size:10.5px}
.nfe-why-grid strong{font-size:12.5px}
.nfe-why-grid p{font-size:12.5px;line-height:1.6}
.nfe-diagnostic-points strong{font-size:12.5px}
.nfe-diagnostic-points p{font-size:12.5px;line-height:1.6}
.nfe-service-body p{font-size:14px;line-height:1.7}
.nfe-service-body ul{font-size:12.5px;line-height:1.55}
.nfe-service-body small{font-size:11px;line-height:1.55}
.nfe-compare-title p{font-size:12.5px;line-height:1.6}
.nfe-table{font-size:11.5px}
.nfe-table th{font-size:10.5px}
.nfe-table td{line-height:1.55}
.nfe-process-grid p{font-size:12.5px;line-height:1.65}
.nfe-faq-list summary{font-size:13.5px;line-height:1.45}
.nfe-faq-list details>div{font-size:13.5px;line-height:1.75}
.nfe-bullet-grid strong{font-size:12.5px}
.nfe-bullet-grid p{font-size:12.5px;line-height:1.65}
.nfe-callout ul{font-size:12.5px;line-height:1.6}

@media(max-width:1180px){
  .nfe-hero .container{width:min(1180px,calc(100% - 40px))}
  .nfe-hero-grid{grid-template-columns:minmax(0,1fr) minmax(410px,460px);gap:34px}
  .nfe-quote-layout{grid-template-columns:1fr;gap:19px}
  .nfe-quote-benefits{padding:17px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.15)}
  .nfe-quote-benefits ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
}

@media(max-width:930px){
  .nfe-hero-grid{grid-template-columns:1fr;max-width:820px;margin-inline:auto}
  .nfe-hero-copy{max-width:680px}
  .nfe-quote-card--wide{width:100%;max-width:780px}
  .nfe-quote-layout{grid-template-columns:minmax(0,1fr) minmax(230px,.9fr)}
  .nfe-quote-benefits{padding:4px 0 4px 22px;border-top:0;border-left:1px solid rgba(255,255,255,.15)}
  .nfe-quote-benefits ul{grid-template-columns:1fr}
}

@media(max-width:700px){
  body{font-size:15px}
  .nfe-hero .container{width:calc(100% - 24px)}
  .nfe-hero-text{font-size:14px}
  .nfe-quote-card--wide{padding:22px 19px 19px}
  .nfe-quote-card--wide h2{font-size:1.5rem}
  .nfe-quote-card--wide>p{font-size:12.5px}
  .nfe-quote-layout{grid-template-columns:1fr;gap:19px}
  .nfe-quote-benefits{padding:17px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.15)}
  .nfe-quote-benefits li{font-size:11.5px}
  .nfe-quote-card--wide .nfe-number-plate--large{height:62px;grid-template-columns:48px 1fr}
  .nfe-quote-card--wide .nfe-number-plate--large input{font-size:23px;line-height:62px}
  .nfe-quote-card--wide .nfe-quote-trust{grid-template-columns:1fr;justify-content:start}
  .nfe-section-title p,.nfe-copy{font-size:14px}
  .nfe-service-body p{font-size:13.5px}
  .nfe-faq-list details>div{font-size:13px}
}

/* ==========================================================
   NISSAN V4.3 — expanded desktop hero quote panel
   More breathing room for VRM lookup + engine option benefits.
   ========================================================== */
@media (min-width: 1281px){
  .nfe-hero .container{
    width:min(1580px,calc(100% - 64px));
  }

  .nfe-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(660px,720px);
    gap:54px;
  }

  .nfe-hero-copy{
    max-width:650px;
  }

  .nfe-quote-card--wide{
    width:100%;
    padding:34px 38px 28px;
  }

  .nfe-quote-card--wide h2{
    font-size:1.82rem;
  }

  .nfe-quote-card--wide>p{
    max-width:690px;
    font-size:13.5px;
  }

  .nfe-quote-layout{
    grid-template-columns:minmax(300px,1fr) minmax(285px,1fr);
    gap:32px;
    margin-top:25px;
  }

  .nfe-quote-benefits{
    padding-left:30px;
  }

  .nfe-quote-benefits h3{
    max-width:270px;
    font-size:16px;
  }

  .nfe-quote-benefits li{
    font-size:12px;
    line-height:1.55;
  }

  .nfe-quote-card--wide .nfe-number-plate--large{
    height:72px;
    grid-template-columns:56px 1fr;
  }

  .nfe-quote-card--wide .nfe-number-plate--large input{
    font-size:29px;
    line-height:72px;
  }

  .nfe-quote-card--wide .nfe-vrm-submit{
    min-height:56px;
  }

  .nfe-quote-card--wide .nfe-manual-engine-trigger{
    min-height:72px;
    padding:14px 16px;
  }

  .nfe-quote-card--wide .nfe-quote-trust{
    margin-top:24px;
    padding-top:18px;
  }
}

/* Keep a comfortable intermediate size on smaller desktop/laptop screens. */
@media (min-width:1181px) and (max-width:1280px){
  .nfe-hero .container{width:min(1240px,calc(100% - 40px))}
  .nfe-hero-grid{grid-template-columns:minmax(0,1fr) minmax(520px,560px);gap:38px}
  .nfe-quote-layout{grid-template-columns:minmax(0,1fr) minmax(220px,.95fr);gap:22px}
}


/* ==========================================================
   NISSAN V4.4 — stacked full-width hero composition
   Approved layout: heading -> full lookup panel -> copy -> CTAs
   ========================================================== */
.nfe-hero--stacked{min-height:0}
.nfe-hero--stacked .nfe-hero-shell{
  width:min(1540px,calc(100% - 72px));
  padding-block:32px 30px;
}
.nfe-hero--stacked .nfe-hero-intro{max-width:none}
.nfe-hero--stacked .nfe-kicker{margin-bottom:16px}
.nfe-hero--stacked h1,
.nfe-hero--stacked h2{
  max-width:none;
  margin:0 0 10px;
  font-size:clamp(2.55rem,3.25vw,3.75rem);
  line-height:1.06;
  letter-spacing:-.045em;
}
.nfe-hero--stacked .nfe-hero-subline{
  margin:0;
  font-size:17px;
  line-height:1.5;
}

.nfe-hero--stacked .nfe-quote-card--full{
  width:100%;
  margin-top:26px;
  padding:30px 32px 24px;
  border-radius:16px;
}
.nfe-hero--stacked .nfe-quote-card--full h2{
  margin:3px 0 8px;
  font-size:clamp(1.65rem,2vw,2.1rem);
  line-height:1.14;
  letter-spacing:-.035em;
}
.nfe-hero--stacked .nfe-quote-card--full>p{
  max-width:900px;
  margin:0;
  color:#c5cdd2;
  font-size:14px;
  line-height:1.65;
}
.nfe-hero--stacked .nfe-quote-layout{
  grid-template-columns:minmax(0,1.55fr) minmax(340px,.85fr);
  gap:30px;
  margin-top:26px;
}
.nfe-hero--stacked .nfe-quote-benefits{
  padding-left:30px;
}
.nfe-hero--stacked .nfe-quote-benefits h3{
  max-width:370px;
  font-size:17px;
}
.nfe-hero--stacked .nfe-quote-benefits li{
  font-size:12.5px;
  line-height:1.55;
}

/* Registration plate + submit button share a row on desktop. */
.nfe-vrm-form--horizontal{
  display:grid;
  grid-template-columns:minmax(0,1.7fr) minmax(240px,.72fr);
  align-items:end;
  gap:0;
}
.nfe-vrm-form--horizontal>label{grid-column:1/-1;margin-bottom:8px}
.nfe-vrm-form--horizontal .nfe-number-plate--large{
  margin:0;
  height:72px;
  border-radius:9px 0 0 9px;
}
.nfe-vrm-form--horizontal .nfe-number-plate--large input{
  font-size:30px;
  line-height:72px;
}
.nfe-vrm-form--horizontal .nfe-vrm-submit{
  width:100%;
  min-height:72px;
  height:72px;
  margin:0;
  border-radius:0 9px 9px 0;
  border-left:0;
  font-size:11.5px;
}
.nfe-vrm-form--horizontal .vrm-inline-error{grid-column:1/-1;margin-top:7px}
.nfe-hero--stacked .nfe-quote-or{margin:18px 0}
.nfe-hero--stacked .nfe-manual-engine-trigger{
  min-height:74px;
  padding:15px 17px;
}
.nfe-hero--stacked .nfe-manual-engine-trigger strong{font-size:13px}
.nfe-hero--stacked .nfe-manual-engine-trigger small{font-size:10.5px}

.nfe-hero--stacked .nfe-quote-trust--icons{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:22px;
  padding-top:19px;
  border-top:1px solid rgba(255,255,255,.13);
}
.nfe-hero--stacked .nfe-quote-trust--icons span{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  color:#c5cdd2;
  font-size:11px;
  line-height:1.4;
}
.nfe-hero--stacked .nfe-quote-trust--icons b{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  color:#fff;
  font-size:15px;
  font-weight:500;
}

.nfe-hero--stacked .nfe-hero-after{
  margin-top:26px;
  text-align:center;
}
.nfe-hero--stacked .nfe-hero-text{
  max-width:1260px;
  margin-inline:auto;
  color:#c8d0d5;
  font-size:15px;
  line-height:1.72;
}
.nfe-hero--stacked .nfe-hero-text p{margin:0 0 6px}
.nfe-hero-actions--wide{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  width:100%;
  margin-top:24px;
}
.nfe-hero-actions--wide .btn,
.nfe-hero-actions--wide .nfe-secondary-btn{
  width:100%;
  min-height:52px;
  justify-content:center;
}
.nfe-hero-actions--wide .btn.btn-primary{
  background:#f7c900;
  border-color:#f7c900;
  color:#0d1216!important;
}
.nfe-hero-actions--wide .btn.btn-primary:hover{background:#ffe05a;border-color:#ffe05a}
.nfe-hero-actions--wide .nfe-secondary-btn{
  border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.03);
  color:#fff;
}

@media(max-width:1180px){
  .nfe-hero--stacked .nfe-hero-shell{width:min(1120px,calc(100% - 40px))}
  .nfe-hero--stacked .nfe-quote-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:24px}
  .nfe-vrm-form--horizontal{grid-template-columns:minmax(0,1.4fr) minmax(210px,.8fr)}
  .nfe-hero--stacked .nfe-quote-benefits{padding-left:24px}
}
@media(max-width:900px){
  .nfe-hero--stacked .nfe-quote-layout{grid-template-columns:1fr}
  .nfe-hero--stacked .nfe-quote-benefits{padding:20px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.15)}
  .nfe-hero--stacked .nfe-quote-benefits ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}
}
@media(max-width:700px){
  .nfe-hero--stacked .nfe-hero-shell{width:calc(100% - 24px);padding-block:28px 26px}
  .nfe-hero--stacked h1,.nfe-hero--stacked h2{font-size:clamp(2rem,9vw,2.65rem)}
  .nfe-hero--stacked .nfe-quote-card--full{margin-top:20px;padding:22px 18px 18px}
  .nfe-vrm-form--horizontal{grid-template-columns:1fr;gap:10px}
  .nfe-vrm-form--horizontal>label{margin-bottom:0}
  .nfe-vrm-form--horizontal .nfe-number-plate--large{border-radius:9px}
  .nfe-vrm-form--horizontal .nfe-vrm-submit{height:54px;min-height:54px;border-left:1px solid #fff;border-radius:9px}
  .nfe-hero--stacked .nfe-quote-benefits ul{grid-template-columns:1fr}
  .nfe-hero--stacked .nfe-quote-trust--icons{grid-template-columns:1fr;gap:10px}
  .nfe-hero--stacked .nfe-quote-trust--icons span{justify-content:flex-start}
  .nfe-hero-actions--wide{grid-template-columns:1fr}
  .nfe-hero--stacked .nfe-hero-text{font-size:14px;text-align:left}
}

/* ============================================================
   V4.4.1 — Nissan VRM typography consistency
   Keep number plate, UK/GB badge and registration CTA on the
   same Plus Jakarta Sans type system as the rest of the site.
   ============================================================ */
.nfe-number-plate .plate-gb,
.nfe-number-plate .plate-gb b,
.nfe-number-plate .plate-gb small,
.nfe-number-plate input,
.nfe-number-plate--large input,
.nfe-vrm-form--horizontal .nfe-number-plate--large input,
.nfe-vrm-form--horizontal .nfe-vrm-submit,
.nfe-vrm-form--horizontal .nfe-vrm-submit *,
.nfe-context-quote-modal .context-vrm-plate input {
  font-family: var(--nfe-font) !important;
}

.nfe-number-plate input,
.nfe-number-plate--large input,
.nfe-vrm-form--horizontal .nfe-number-plate--large input {
  font-weight: 800;
  letter-spacing: .035em;
}

.nfe-number-plate .plate-gb,
.nfe-number-plate .plate-gb b,
.nfe-number-plate .plate-gb small {
  font-weight: 800;
  letter-spacing: -.01em;
}

.nfe-vrm-form--horizontal .nfe-vrm-submit {
  font-weight: 800;
  letter-spacing: -.015em;
}

/* ==========================================================
   NISSAN V4.5 — POPUP REDESIGN
   Nissan-only. Removes Citroen/red CTA styling and decorative
   option icons from both Nissan enquiry flows.
   ========================================================== */

/* AUTO / PAGE-LOAD NISSAN QUOTE POPUP */
.nfe-context-quote-modal .context-quote-backdrop{
  background:rgba(7,11,14,.80);
  backdrop-filter:blur(9px);
}
.nfe-context-quote-modal .context-quote-dialog{
  width:min(880px,100%);
  padding:34px 38px 38px;
  border:1px solid #d8dee2;
  border-radius:24px;
  background:linear-gradient(180deg,#fbfcfc 0%,#f4f6f7 100%);
  box-shadow:0 42px 120px rgba(0,0,0,.44);
  font-family:var(--nfe-font);
}
/* No black branding bar / Nissan Engine Matching badge. */
.nfe-context-quote-modal .context-quote-header{display:none!important}
.nfe-context-quote-modal .context-quote-close{
  right:20px;
  top:18px;
  width:42px;
  height:42px;
  border:1px solid #d6dce0;
  background:#fff;
  color:#111820;
  font:500 27px/1 var(--nfe-font);
  box-shadow:0 7px 20px rgba(17,24,32,.07);
}
.nfe-context-quote-modal .context-quote-close:hover{
  background:#111820;
  color:#fff;
  transform:none;
}
.nfe-context-stepbar{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  max-width:340px;
  margin:4px 64px 26px 0;
}
.nfe-context-stepbar span{
  height:4px;
  border-radius:999px;
  background:#dbe0e3;
}
.nfe-context-stepbar span.is-active,
.nfe-context-stepbar span.is-complete{background:#111820}
.nfe-context-quote-modal .context-quote-copy{
  max-width:720px;
  margin:0;
  text-align:left;
}
.nfe-context-quote-modal .nfe-context-kicker{
  margin:0 0 8px;
  color:#79838a;
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.nfe-context-quote-modal .context-quote-copy h3{
  margin:0;
  color:#111820;
  font-family:var(--nfe-font);
  font-size:clamp(1.85rem,3.2vw,2.65rem);
  line-height:1.08;
  letter-spacing:-.045em;
}
.nfe-context-quote-modal .context-quote-copy>p:last-child{
  max-width:680px;
  margin:10px 0 0;
  color:#68737b;
  font-size:15px;
  line-height:1.6;
}
.nfe-context-quote-modal .nfe-context-choice-grid,
.nfe-context-quote-modal .context-service-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
/* Hide legacy visual icons even if an older cached Blade view is rendered. */
.nfe-context-quote-modal .context-choice-icon,
.nfe-context-quote-modal .context-choice-check{display:none!important}
.nfe-context-quote-modal .nfe-context-choice-card{
  min-height:132px;
  align-items:flex-start;
  justify-content:flex-end;
  padding:22px 22px 20px;
  border:1px solid #d4dbe0;
  border-radius:15px;
  background:#fff;
  text-align:left;
  box-shadow:0 10px 28px rgba(18,27,34,.06);
  transform:none;
}
.nfe-context-quote-modal .nfe-context-choice-card:before{
  content:"";
  width:34px;
  height:3px;
  margin-bottom:auto;
  border-radius:99px;
  background:#c9d0d4;
  transition:width .18s ease,background .18s ease;
}
.nfe-context-quote-modal .nfe-context-choice-card:hover{
  border-color:#8e999f;
  box-shadow:0 15px 34px rgba(18,27,34,.10);
  transform:translateY(-2px);
}
.nfe-context-quote-modal .nfe-context-choice-card strong{
  color:#111820;
  font-size:18px;
  font-weight:800;
  letter-spacing:-.025em;
}
.nfe-context-quote-modal .nfe-context-choice-card small{
  margin-top:6px;
  color:#707a81;
  font-size:12px;
  line-height:1.45;
}
.nfe-context-quote-modal .nfe-context-choice-card:has(input:checked){
  border-color:#111820;
  background:#111820;
  box-shadow:0 15px 34px rgba(17,24,32,.20);
  transform:translateY(-2px);
}
.nfe-context-quote-modal .nfe-context-choice-card:has(input:checked):before{
  width:52px;
  background:#fff;
}
.nfe-context-quote-modal .nfe-context-choice-card:has(input:checked) strong{color:#fff}
.nfe-context-quote-modal .nfe-context-choice-card:has(input:checked) small{color:#cbd2d6}
.nfe-context-quote-modal .nfe-context-choice-card:has(input:focus-visible){
  outline:3px solid rgba(17,24,32,.15);
  outline-offset:3px;
}
.nfe-context-quote-modal .nfe-context-actions{
  margin-top:24px;
  padding:0;
  background:transparent;
  box-shadow:none;
}
.nfe-context-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  min-height:54px;
  padding:0 26px;
  border:1px solid #111820!important;
  border-radius:11px;
  background:#111820!important;
  color:#fff!important;
  font:800 13px/1 var(--nfe-font)!important;
  letter-spacing:-.015em;
  text-decoration:none;
  box-shadow:0 12px 25px rgba(17,24,32,.18)!important;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.nfe-context-action:hover{
  border-color:#2d373e!important;
  background:#2d373e!important;
  transform:translateY(-1px);
  box-shadow:0 16px 30px rgba(17,24,32,.22)!important;
}
.nfe-context-action:focus-visible{
  outline:3px solid rgba(17,24,32,.17)!important;
  outline-offset:3px;
}
.nfe-context-action:disabled{opacity:.58;cursor:wait;transform:none}
.nfe-context-action--wide{min-width:260px}
.nfe-context-quote-modal .context-problem-field textarea,
.nfe-context-quote-modal .context-contact-grid input{
  border:1px solid #ccd4d9;
  border-radius:11px;
  background:#fff;
  color:#111820;
  font-family:var(--nfe-font);
}
.nfe-context-quote-modal .context-problem-field textarea:focus,
.nfe-context-quote-modal .context-contact-grid input:focus,
.nfe-context-quote-modal .context-vrm-plate input:focus{
  border-color:#111820;
  outline:3px solid rgba(17,24,32,.08);
}
.nfe-context-quote-modal .context-vrm-plate{
  max-width:650px;
  margin:26px 0 0;
  border:2px solid #111820;
  border-radius:11px;
  box-shadow:0 12px 28px rgba(17,24,32,.10),inset 0 0 0 1px rgba(255,255,255,.38);
}
.nfe-context-quote-modal .context-vrm-plate input{
  font-family:var(--nfe-font)!important;
  letter-spacing:.055em;
}
.nfe-context-quote-modal .context-vehicle-confirmation,
.nfe-context-quote-modal .context-final-vehicle{
  border-color:#d8dee2;
  background:#eef1f3;
  color:#505c64;
}
.nfe-context-quote-modal .context-vehicle-confirmation strong,
.nfe-context-quote-modal .context-final-vehicle strong{color:#111820}
.nfe-context-quote-modal .context-found-kicker{color:#68737b}
.nfe-context-quote-modal .context-found-check svg,
.nfe-context-quote-modal .context-success-tick svg{stroke:#111820}
.nfe-context-quote-modal .context-found-check svg{fill:#eef1f3}
.nfe-context-quote-modal .context-found-plate{border-color:#111820}
.nfe-context-quote-modal .context-privacy{
  color:#7a848b;
  font-size:11px;
}
.nfe-context-quote-modal .context-quote-success .nfe-context-action{margin-top:8px}

/* HERO-VRM RESULT POPUP — same Nissan visual language */
.nfe-vrm-modal .vrm-modal-dialog{
  border:1px solid #d7dde1;
  border-radius:20px;
  background:#f7f8f9;
  font-family:var(--nfe-font);
  box-shadow:0 40px 110px rgba(0,0,0,.40);
}
.nfe-vrm-modal .vrm-modal-header{
  border-bottom:1px solid #dce1e4;
  background:#eef1f3;
  color:#111820;
}
.nfe-vrm-modal .vrm-modal-header h2,
.nfe-vrm-modal .vrm-modal-header p{color:#111820}
.nfe-vrm-modal .vehicle-found-badge{
  border:1px solid #cfd6da;
  background:#fff;
  color:#5f6970;
}
.nfe-vrm-modal .choice-icon,
.nfe-vrm-modal .choice-check{display:none!important}
.nfe-vrm-modal .nfe-vrm-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.nfe-vrm-modal .nfe-vrm-choice-card{
  min-height:122px;
  align-items:flex-start;
  justify-content:flex-end;
  padding:20px;
  border:1px solid #d3dade;
  border-radius:14px;
  background:#fff;
  text-align:left;
  box-shadow:0 8px 24px rgba(17,24,32,.06);
}
.nfe-vrm-modal .nfe-vrm-choice-card strong{color:#111820;font-size:17px;letter-spacing:-.02em}
.nfe-vrm-modal .nfe-vrm-choice-card small{margin-top:6px;color:#707a81;font-size:12px;line-height:1.4}
.nfe-vrm-modal .nfe-vrm-choice-card:has(input:checked){
  border-color:#111820;
  background:#111820;
  box-shadow:0 14px 30px rgba(17,24,32,.18);
}
.nfe-vrm-modal .nfe-vrm-choice-card:has(input:checked) strong{color:#fff}
.nfe-vrm-modal .nfe-vrm-choice-card:has(input:checked) small{color:#cbd2d6}
.nfe-vrm-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  min-height:50px;
  padding:0 24px;
  border:1px solid #111820!important;
  border-radius:10px;
  background:#111820!important;
  color:#fff!important;
  font:800 12px/1 var(--nfe-font)!important;
  box-shadow:0 10px 24px rgba(17,24,32,.17)!important;
  cursor:pointer;
}
.nfe-vrm-action:hover{background:#2d373e!important;border-color:#2d373e!important}
.nfe-vrm-action--wide{min-width:250px}
.nfe-vrm-modal .vrm-problem-field textarea:focus,
.nfe-vrm-modal .vrm-contact-grid input:focus{border-color:#111820;box-shadow:0 0 0 3px rgba(17,24,32,.08)}

@media(max-width:700px){
  .nfe-context-quote-modal{align-items:flex-end;padding:0}
  .nfe-context-quote-modal .context-quote-dialog{
    max-height:96dvh;
    padding:24px 16px calc(22px + env(safe-area-inset-bottom));
    border-radius:22px 22px 0 0;
  }
  .nfe-context-quote-modal .context-quote-close{right:12px;top:10px;width:40px;height:40px}
  .nfe-context-stepbar{max-width:220px;margin:2px 52px 20px 0;gap:5px}
  .nfe-context-quote-modal .context-quote-copy h3{font-size:1.8rem}
  .nfe-context-quote-modal .context-quote-copy>p:last-child{font-size:14px}
  .nfe-context-quote-modal .nfe-context-choice-grid,
  .nfe-context-quote-modal .context-service-grid{grid-template-columns:1fr;gap:9px;margin-top:18px}
  .nfe-context-quote-modal .nfe-context-choice-card{
    min-height:92px;
    padding:17px 18px;
  }
  .nfe-context-quote-modal .nfe-context-choice-card:before{margin-bottom:15px}
  .nfe-context-quote-modal .nfe-context-actions{position:static;margin-top:18px;padding:0}
  .nfe-context-action,.nfe-context-action--wide{width:100%;min-width:0}
  .nfe-context-quote-modal .context-vrm-plate{margin-top:18px}
  .nfe-vrm-modal .nfe-vrm-choice-grid{grid-template-columns:1fr;gap:9px}
  .nfe-vrm-modal .nfe-vrm-choice-card{min-height:88px;padding:17px}
  .nfe-vrm-action,.nfe-vrm-action--wide{width:100%;min-width:0}
}

/* =========================================================
   V4.6 — Nissan mobile header/menu correction
   Fixes hamburger being pushed to a second grid row and
   makes the mobile navigation/dropdowns reliable on touch.
   ========================================================= */
@media (max-width:960px){
  .nfe-header-main{
    grid-template-columns:minmax(0,1fr) 48px!important;
    grid-template-rows:68px!important;
    gap:12px!important;
    min-height:68px!important;
  }
  .nfe-brand{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0;
    align-self:center;
  }
  .nfe-brand img{
    width:min(175px,100%)!important;
    max-height:52px!important;
  }
  .nfe-header-actions{
    display:none!important;
  }
  .nfe-menu-toggle{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    display:flex!important;
    width:46px!important;
    height:44px!important;
    margin:0!important;
    padding:9px!important;
    border:1px solid #d5dce0!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:0 5px 16px rgba(15,23,30,.06);
    z-index:102;
  }
  .nfe-menu-toggle span{
    width:23px!important;
    height:2px!important;
    margin:0!important;
    background:#10171c!important;
    border-radius:999px;
    transform-origin:center;
    transition:transform .22s ease,opacity .18s ease;
  }
  .nfe-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .nfe-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .nfe-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

  .nfe-main-nav{
    position:absolute!important;
    z-index:101!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    max-height:calc(100vh - 68px);
    overflow-y:auto;
    padding:12px max(16px,calc((100vw - 840px)/2)) 18px!important;
    background:#fff!important;
    border-top:1px solid #e0e5e8!important;
    border-bottom:1px solid #dfe5e8;
    box-shadow:0 22px 38px rgba(9,14,18,.16)!important;
  }
  .nfe-main-nav.is-open{
    display:flex!important;
  }
  .nfe-main-nav .nav-link,
  .nfe-main-nav .nav-parent{
    min-height:48px;
    width:100%!important;
    justify-content:space-between!important;
    padding:14px 8px!important;
    border-bottom:1px solid #edf0f2!important;
    color:#13191e!important;
    font-size:12px!important;
    text-align:left;
  }
  .nfe-main-nav .nav-group:last-child .nav-parent,
  .nfe-main-nav>.nav-link:last-child{border-bottom:0!important}
  .nfe-main-nav .nav-group:hover>.nav-dropdown{display:none}
  .nfe-main-nav .nav-parent[aria-expanded="true"]+.nav-dropdown{
    display:grid!important;
  }
  .nfe-main-nav .nav-dropdown{
    position:static!important;
    width:100%!important;
    min-width:0!important;
    margin:0 0 8px!important;
    padding:5px 0 5px 14px!important;
    border:0!important;
    border-left:2px solid #d8dee2!important;
    border-radius:0!important;
    background:#f7f9fa!important;
    box-shadow:none!important;
  }
  .nfe-main-nav .nav-dropdown a{
    padding:11px 12px!important;
    color:#343d44!important;
    font-size:12px!important;
  }
  body.nfe-mobile-menu-open{
    overflow:hidden;
  }
}

@media (max-width:700px){
  .nfe-header-main{
    grid-template-rows:64px!important;
    min-height:64px!important;
  }
  .nfe-brand img{
    width:min(168px,100%)!important;
    max-height:48px!important;
  }
  .nfe-main-nav{
    max-height:calc(100vh - 64px);
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* =========================================================
   V4.6.1 — Nissan mobile navigation hardening
   The aria-expanded sibling rule is an additional CSS fallback:
   button -> nav are adjacent in nissan-header.blade.php.
   ========================================================= */
@media (max-width:960px){
  .nfe-menu-toggle[aria-expanded="true"] + .nfe-main-nav,
  .nfe-main-nav[data-menu-open="true"]{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  .nfe-main-nav{
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease;
  }

  .nfe-main-nav.is-open{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
}


/* =========================================================
   V4.2 TYPOGRAPHY + FOOTER LOGO ACCESSIBILITY TUNE-UP
   Nissan only. Improves legibility and fixes the distorted footer logo.
   ========================================================= */
body{font-size:16px;line-height:1.72}
.nfe-copy,.nfe-copy p,.nfe-hero-text,.nfe-hero-subline,.nfe-section-title+.nfe-copy,.nfe-section-title .nfe-copy{font-size:1.0625rem;line-height:1.78}
.nfe-section-title span,.nfe-kicker,.nfe-final-kicker,.nfe-quote-benefits__eyebrow{font-size:.82rem;letter-spacing:.12em}
.nfe-facts-strip article strong,.nfe-why-grid strong,.nfe-bullet-grid strong,.nfe-diagnostic-points strong,.nfe-process-grid h3,.nfe-service-body h3{font-size:1.15rem;line-height:1.4}
.nfe-facts-strip article p,.nfe-why-grid p,.nfe-bullet-grid p,.nfe-diagnostic-points p,.nfe-process-grid p,.nfe-service-body p,.nfe-service-body li,.nfe-callout li,.nfe-disclosure-section .nfe-copy li,.nfe-disclosure-section .nfe-copy p,.nfe-faq-list details div{font-size:1rem;line-height:1.75}
.nfe-table th{font-size:.95rem;line-height:1.35;padding:16px 16px 15px}
.nfe-table td{font-size:1rem;line-height:1.7;padding:16px}
.nfe-process-grid article{padding:28px 26px 24px}
.nfe-process-grid article span{width:44px;height:44px;font-size:1.1rem}
.nfe-process-grid article h3{margin-bottom:10px}
.nfe-why-grid article{padding:30px 28px 34px}
.nfe-why-grid article span{width:44px;height:44px;font-size:1.05rem}
.nfe-specs-visual figcaption{font-size:.92rem;line-height:1.6}
.nfe-footer{padding-top:52px}
.nfe-footer-logo{display:inline-flex;align-items:center;max-width:100%}
.nfe-footer-logo img{width:min(238px,100%);height:auto;filter:none;transform:none}
.nfe-footer-brand p{margin:18px 0 20px;font-size:1rem;line-height:1.8}
.nfe-footer-social span{width:38px;height:38px;font-size:1rem}
.nfe-footer-column h3{margin-bottom:16px;font-size:1rem;letter-spacing:.05em}
.nfe-footer-column a,.nfe-footer-column span{margin-bottom:10px;font-size:.96rem;line-height:1.7}
.nfe-footer-disclosure{padding:18px 0;font-size:.92rem;line-height:1.75}
.nfe-footer-bottom{padding:18px 0 24px;font-size:.92rem;line-height:1.6}

@media (max-width: 900px){
  body{font-size:15.5px}
  .nfe-copy,.nfe-copy p,.nfe-hero-text,.nfe-hero-subline,.nfe-facts-strip article p,.nfe-why-grid p,.nfe-bullet-grid p,.nfe-diagnostic-points p,.nfe-process-grid p,.nfe-service-body p,.nfe-service-body li,.nfe-callout li,.nfe-disclosure-section .nfe-copy li,.nfe-disclosure-section .nfe-copy p,.nfe-faq-list details div,.nfe-table td{font-size:.98rem}
  .nfe-table th{font-size:.9rem}
  .nfe-footer-logo img{width:min(220px,100%)}
  .nfe-footer-brand p,.nfe-footer-column a,.nfe-footer-column span{font-size:.93rem}
}

@media (max-width: 640px){
  body{font-size:15px}
  .nfe-process-grid article,.nfe-why-grid article{padding:24px 20px}
  .nfe-footer-logo img{width:min(205px,100%)}
  .nfe-footer-brand p,.nfe-footer-column a,.nfe-footer-column span,.nfe-footer-disclosure,.nfe-footer-bottom{font-size:.9rem}
}

/* =========================================================
   V4.7 — Nissan hero model cross-fade showcase
   Rebalances the lookup panel and replaces the bullet column
   with an image-first Nissan model carousel.
   ========================================================= */
.nfe-hero--stacked .nfe-quote-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:30px;
  align-items:stretch;
}
.nfe-hero--stacked .nfe-quote-lookup{
  align-self:center;
  max-width:780px;
  width:100%;
}
.nfe-hero-model-showcase{
  min-width:0;
  padding-left:30px;
  border-left:1px solid rgba(255,255,255,.15);
  display:flex;
  align-items:stretch;
}
.nfe-model-slider-frame{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  min-height:300px;
  aspect-ratio:16/9;
  border:1px solid rgba(255,255,255,.20);
  border-radius:18px;
  background:#171d22;
  box-shadow:0 22px 55px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.06);
}
.nfe-model-slide{
  position:absolute;
  inset:0;
  z-index:1;
  margin:0;
  opacity:0;
  visibility:hidden;
  overflow:hidden;
  background:#11181d;
  transition:opacity .65s ease,visibility 0s linear .65s;
  pointer-events:none;
}
.nfe-model-slide.is-active{
  z-index:2;
  opacity:1;
  visibility:visible;
  transition:opacity .65s ease,visibility 0s;
}
.nfe-model-slide img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.nfe-model-slide::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(8,12,15,.02) 38%,rgba(8,12,15,.72) 100%);
}
.nfe-model-slide figcaption{
  position:absolute;
  left:22px;
  right:86px;
  bottom:20px;
  z-index:2;
  display:grid;
  gap:3px;
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.48);
}
.nfe-model-slide figcaption span{
  color:#d5dce0;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.nfe-model-slide figcaption strong{
  font-size:1.45rem;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-.025em;
}
.nfe-model-slider-dots{
  position:absolute;
  right:18px;
  bottom:20px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:7px;
}
.nfe-model-slider-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:1px solid rgba(255,255,255,.75);
  border-radius:999px;
  background:rgba(255,255,255,.18);
  box-shadow:none;
  cursor:pointer;
  transition:width .25s ease,background .25s ease,border-color .25s ease;
}
.nfe-model-slider-dots button.is-active{
  width:24px;
  background:#fff;
  border-color:#fff;
}
.nfe-model-slider-dots button:focus-visible{
  outline:2px solid #fff;
  outline-offset:3px;
}

@media(max-width:1180px){
  .nfe-hero--stacked .nfe-quote-layout{
    grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr);
    gap:24px;
  }
  .nfe-hero-model-showcase{padding-left:24px}
  .nfe-model-slider-frame{min-height:270px}
}
@media(max-width:900px){
  .nfe-hero--stacked .nfe-quote-layout{grid-template-columns:1fr;gap:22px}
  .nfe-hero--stacked .nfe-quote-lookup{max-width:none}
  .nfe-hero-model-showcase{
    padding:20px 0 0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.15);
  }
  .nfe-model-slider-frame{min-height:0;aspect-ratio:16/8}
}
@media(max-width:640px){
  .nfe-model-slider-frame{aspect-ratio:16/10;border-radius:14px}
  .nfe-model-slide figcaption{left:16px;bottom:16px}
  .nfe-model-slide figcaption strong{font-size:1.25rem}
  .nfe-model-slider-dots{right:14px;bottom:17px}
}
@media(prefers-reduced-motion:reduce){
  .nfe-model-slide,.nfe-model-slide.is-active{transition:none}
  .nfe-model-slider-dots button{transition:none}
}


/* =========================================================
   V4.8 — Nissan first-screen hero refinement
   Keeps the full lookup + model showcase visible on laptops,
   removes the heavy outer panel, and lets the engine hero
   artwork remain part of the visual composition.
   ========================================================= */
.nfe-hero--stacked{
  background-image:
    linear-gradient(90deg,rgba(5,9,12,.88) 0%,rgba(5,9,12,.72) 43%,rgba(5,9,12,.55) 100%),
    var(--nfe-hero-bg);
  background-position:center 46%;
}
.nfe-hero--stacked .nfe-hero-shade{
  background:
    radial-gradient(circle at 78% 46%,rgba(255,255,255,.09),transparent 27%),
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.12));
}
.nfe-hero--stacked .nfe-hero-shell{
  width:min(1480px,calc(100% - 64px));
  padding-block:24px 26px;
}
.nfe-hero--stacked .nfe-hero-intro{max-width:1320px}
.nfe-hero--stacked .nfe-kicker{
  margin-bottom:10px;
  padding:7px 11px;
  font-size:.72rem;
}
.nfe-hero--stacked h1,
.nfe-hero--stacked .nfe-hero-intro>h2{
  margin-bottom:7px;
  font-size:clamp(2.35rem,3vw,3.35rem);
  line-height:1.04;
}
.nfe-hero--stacked .nfe-hero-subline{
  font-size:1rem;
  line-height:1.4;
}

/* The outer quote shell is deliberately transparent: the hero image is the background. */
.nfe-hero--stacked .nfe-quote-card--full,
.nfe-hero--stacked .nfe-quote-card--glass{
  margin-top:18px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.nfe-hero--stacked .nfe-quote-layout{
  grid-template-columns:minmax(480px,.94fr) minmax(520px,1.06fr);
  gap:18px;
  margin-top:0;
  align-items:stretch;
}

/* Compact left lookup surface. */
.nfe-hero--stacked .nfe-quote-lookup-panel{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  max-width:none;
  padding:24px 24px 20px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(8,13,17,.72),rgba(8,13,17,.48));
  box-shadow:0 18px 54px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.nfe-hero--stacked .nfe-quote-copy{margin-bottom:17px}
.nfe-hero--stacked .nfe-quote-copy .nfe-quote-kicker{
  display:block;
  margin:0 0 5px;
  padding:0;
  color:#b8c1c7;
  font-size:.68rem;
}
.nfe-hero--stacked .nfe-quote-card--full .nfe-quote-copy h2{
  margin:0 0 6px;
  color:#fff;
  font-size:clamp(1.55rem,1.85vw,1.95rem);
  line-height:1.12;
}
.nfe-hero--stacked .nfe-quote-copy p{
  max-width:650px;
  margin:0;
  color:#c8d0d5;
  font-size:.91rem;
  line-height:1.55;
}

/* Lower, faster registration interaction without sacrificing plate presence. */
.nfe-hero--stacked .nfe-vrm-form--horizontal{
  grid-template-columns:minmax(0,1.58fr) minmax(205px,.78fr);
}
.nfe-hero--stacked .nfe-vrm-form--horizontal>label{
  margin-bottom:6px;
  font-size:.8rem;
}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large,
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit{
  height:60px;
  min-height:60px;
}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large{grid-template-columns:46px 1fr}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large input{
  font-size:1.55rem;
  line-height:60px;
}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit{
  padding-inline:15px;
  font-size:.69rem;
}
.nfe-hero--stacked .nfe-quote-or{margin:11px 0}
.nfe-hero--stacked .nfe-manual-engine-trigger{
  min-height:58px;
  padding:10px 13px;
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.055);
}
.nfe-hero--stacked .nfe-manual-engine-trigger__icon{width:32px;height:32px}
.nfe-hero--stacked .nfe-manual-engine-trigger strong{font-size:.78rem}
.nfe-hero--stacked .nfe-manual-engine-trigger small{font-size:.67rem}

/* Trust signals live inside the lookup panel instead of increasing overall hero height. */
.nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:14px 0 0;
  padding:12px 0 0;
  border-top:1px solid rgba(255,255,255,.11);
}
.nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact span{
  flex:1 1 0;
  justify-content:flex-start;
  gap:7px;
  color:#c6cdd2;
  font-size:.65rem;
  white-space:nowrap;
}
.nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact b{
  width:24px;
  height:24px;
  flex:0 0 24px;
  font-size:.72rem;
}

/* The model frame aligns with the top/bottom of the lookup panel. */
.nfe-hero--stacked .nfe-hero-model-showcase{
  min-width:0;
  padding:0;
  border:0;
}
.nfe-hero--stacked .nfe-model-slider-frame{
  min-height:0;
  height:100%;
  aspect-ratio:auto;
  border-radius:16px;
  border-color:rgba(255,255,255,.18);
  background:rgba(12,17,21,.56);
  box-shadow:0 20px 58px rgba(0,0,0,.22);
}
.nfe-hero--stacked .nfe-model-slide img{object-position:center 46%}
.nfe-hero--stacked .nfe-model-slide figcaption{
  left:20px;
  bottom:18px;
}
.nfe-hero--stacked .nfe-model-slide figcaption strong{font-size:1.35rem}
.nfe-hero--stacked .nfe-model-slider-dots{right:18px;bottom:19px}

/* Content after the primary interaction should not push the quote below the fold. */
.nfe-hero--stacked .nfe-hero-after{margin-top:18px}
.nfe-hero--stacked .nfe-hero-text{
  max-width:1100px;
  font-size:.9rem;
  line-height:1.58;
}
.nfe-hero--stacked .nfe-hero-actions--wide{
  max-width:900px;
  margin:14px auto 0;
}
.nfe-hero--stacked .nfe-hero-actions--wide .btn,
.nfe-hero--stacked .nfe-hero-actions--wide .nfe-secondary-btn{min-height:46px}

@media(max-width:1280px){
  .nfe-hero--stacked .nfe-hero-shell{width:min(1200px,calc(100% - 40px));padding-block:20px 22px}
  .nfe-hero--stacked .nfe-quote-layout{grid-template-columns:minmax(440px,.98fr) minmax(430px,1.02fr);gap:16px}
  .nfe-hero--stacked .nfe-quote-lookup-panel{padding:20px 20px 17px}
  .nfe-hero--stacked .nfe-quote-copy{margin-bottom:14px}
  .nfe-hero--stacked .nfe-vrm-form--horizontal{grid-template-columns:minmax(0,1.45fr) minmax(190px,.8fr)}
  .nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact span{font-size:.61rem}
}
@media(max-width:1020px){
  .nfe-hero--stacked .nfe-quote-layout{grid-template-columns:1fr;gap:14px}
  .nfe-hero--stacked .nfe-hero-model-showcase{min-height:280px}
  .nfe-hero--stacked .nfe-model-slider-frame{height:auto;aspect-ratio:16/7.5}
  .nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact span{font-size:.68rem}
}
@media(max-width:700px){
  .nfe-hero--stacked .nfe-hero-shell{width:calc(100% - 24px);padding-block:20px 22px}
  .nfe-hero--stacked h1,.nfe-hero--stacked .nfe-hero-intro>h2{font-size:clamp(2rem,9vw,2.6rem)}
  .nfe-hero--stacked .nfe-quote-card--full{margin-top:15px;padding:0}
  .nfe-hero--stacked .nfe-quote-lookup-panel{padding:18px 16px 16px;border-radius:14px}
  .nfe-hero--stacked .nfe-quote-copy p{font-size:.86rem}
  .nfe-hero--stacked .nfe-vrm-form--horizontal{grid-template-columns:1fr;gap:8px}
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large{border-radius:9px}
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit{height:50px;min-height:50px;border-left:1px solid #fff;border-radius:9px}
  .nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact{flex-wrap:wrap;justify-content:flex-start}
  .nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact span{flex:0 1 auto;min-width:calc(50% - 6px);white-space:normal}
  .nfe-hero--stacked .nfe-hero-model-showcase{min-height:0}
  .nfe-hero--stacked .nfe-model-slider-frame{aspect-ratio:16/10;border-radius:14px}
  .nfe-hero--stacked .nfe-hero-after{margin-top:16px}
}


/* =========================================================
   V4.9 — Nissan service slider static cross-fade
   Removes the zoom/scale treatment so no edge line appears
   during transitions.
   ========================================================= */
.nfe-hero--stacked .nfe-model-slide{
  transform:none;
  transition:opacity .65s ease,visibility 0s linear .65s;
}
.nfe-hero--stacked .nfe-model-slide.is-active{
  transform:none;
  transition:opacity .65s ease,visibility 0s;
}
.nfe-hero--stacked .nfe-model-slider-frame{
  background:#0f1418;
}
.nfe-hero--stacked .nfe-model-slide img{
  object-position:center center;
}

/* =========================================================
   V5.0 — Nissan master-workbook content + review module
   Related-page linking, source citations, takeaways and
   genuine verified customer cases. Nissan only.
   ========================================================= */
.nfe-engine-code-link{font-weight:800;color:#0b1115;text-underline-offset:3px}
.nfe-engine-code-link:hover{text-decoration-thickness:2px}

.nfe-takeaways-section{padding-block:34px;background:#f5f7f8}
.nfe-takeaways-card{padding:30px 34px;border:1px solid #dce2e6;border-radius:16px;background:#fff;box-shadow:var(--nfe-shadow-soft)}
.nfe-takeaways-card .nfe-section-title{margin-bottom:18px}
.nfe-takeaways-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;margin:0;padding:0;list-style:none}
.nfe-takeaways-list li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;align-items:start;color:#39434a;font-size:1rem;line-height:1.65}
.nfe-takeaways-list li>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #cbd3d8;border-radius:50%;color:#111820;font-weight:800}
.nfe-takeaways-list a{font-weight:700;text-underline-offset:3px}

.nfe-related-section{padding-block:54px;background:#fff}
.nfe-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}
.nfe-related-card{position:relative;display:flex;min-height:170px;flex-direction:column;padding:22px 54px 22px 22px;border:1px solid #dce2e6;border-radius:14px;background:#f8fafb;text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.nfe-related-card:hover{transform:translateY(-3px);border-color:#aeb8be;box-shadow:var(--nfe-shadow-soft)}
.nfe-related-card>span{margin-bottom:8px;color:#707b83;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.nfe-related-card>strong{font-size:1.08rem;line-height:1.4}
.nfe-related-card>p{margin:9px 0 0;color:#68737a;font-size:.93rem;line-height:1.65}
.nfe-related-card>b{position:absolute;right:20px;top:22px;font-size:1.15rem}

.nfe-sources-section{padding:34px 0 48px;background:#f5f7f8}
.nfe-sources-card{padding:28px 32px;border:1px solid #dce2e6;border-radius:14px;background:#fff}
.nfe-source-list{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}
.nfe-source-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 18px;padding:14px 16px;border:1px solid #e0e5e8;border-radius:10px;text-decoration:none}
.nfe-source-list a:hover{border-color:#aeb8be;background:#f8fafb}
.nfe-source-list strong{font-size:.97rem}.nfe-source-list span{grid-column:1;color:#68737a;font-size:.9rem;line-height:1.6}.nfe-source-list b{grid-column:2;grid-row:1/3;align-self:center}

.nfe-reviews-section{padding:64px 0;background:#f5f7f8;border-top:1px solid #e1e6e9}
.nfe-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px}
.nfe-review-card{overflow:hidden;border:1px solid #d9e0e4;border-radius:16px;background:#fff;box-shadow:var(--nfe-shadow-soft)}
.nfe-review-images{display:grid;height:220px;background:#151b20}
.nfe-review-images--1{grid-template-columns:1fr}.nfe-review-images--2{grid-template-columns:repeat(2,1fr)}.nfe-review-images--3{grid-template-columns:repeat(3,1fr)}
.nfe-review-images img{display:block;width:100%;height:100%;min-width:0;object-fit:cover}
.nfe-review-card-body{padding:24px}
.nfe-review-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.nfe-review-stars{color:#111820;font-size:1rem;letter-spacing:.12em}.nfe-review-verified{padding:5px 9px;border-radius:999px;background:#edf3ef;color:#294b37;font-size:.72rem;font-weight:800;text-transform:uppercase}
.nfe-review-card h3{margin:0 0 7px;font-size:1.2rem}.nfe-review-vehicle{margin:0 0 18px;color:#68737a;font-size:.9rem;font-weight:700}
.nfe-review-case{padding:13px 15px;margin:10px 0;border-left:3px solid #1c252c;background:#f7f9fa}.nfe-review-case strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.nfe-review-case p{margin:4px 0 0;color:#4e5961;font-size:.94rem;line-height:1.65}
.nfe-review-card blockquote{margin:18px 0;padding:0;border:0;color:#2b353c;font-size:1rem;line-height:1.75}
.nfe-review-card footer{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;padding-top:15px;border-top:1px solid #e4e8ea;color:#69747b;font-size:.82rem}.nfe-review-card footer strong{color:#151b20;font-size:.9rem}

@media(max-width:900px){
  .nfe-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nfe-review-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .nfe-takeaways-card,.nfe-sources-card{padding:22px 18px}
  .nfe-takeaways-list,.nfe-related-grid{grid-template-columns:1fr}
  .nfe-related-card{min-height:145px}
  .nfe-review-images{height:185px}.nfe-review-card-body{padding:20px}
}

/* Nissan SEO navigation refinements */
.nfe-breadcrumbs{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px;color:#c9d1d6;font-size:.75rem;line-height:1.5}
.nfe-breadcrumbs a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.34)}
.nfe-breadcrumbs a:hover{border-bottom-color:#fff}.nfe-breadcrumbs>span[aria-hidden]{opacity:.55}.nfe-breadcrumbs>span[aria-current]{color:#b6c0c6}
@media(min-width:961px){
  .nfe-main-nav .nav-dropdown{width:min(500px,80vw);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:6px}
}
@media(max-width:960px){.nfe-main-nav .nav-dropdown{width:auto;grid-template-columns:1fr}}

/* =========================================================
   V5.0 — Nissan verified manual engine selector
   Four-stage dependency: model -> year -> size -> engine code.
   ========================================================= */
.nfe-manual-engine-progress{grid-template-columns:repeat(4,1fr)}
.nfe-manual-engine-fields label{min-width:0}
@media(max-width:640px){
  .nfe-manual-engine-progress{grid-template-columns:repeat(2,1fr)}
}


/* =========================================================
   V5.0 — Engine-code related models + demo case presentation
   ========================================================= */
.nfe-related-models-section{background:#f6f8f9;border-top:1px solid #e3e8eb;border-bottom:1px solid #e3e8eb}
.nfe-related-model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin-top:28px}
.nfe-related-model-card{overflow:hidden;border:1px solid #dce2e6;border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(15,23,30,.06)}
.nfe-related-model-media{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(145deg,#e9eef1,#cbd3d8);text-decoration:none}
.nfe-related-model-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.nfe-related-model-card:hover .nfe-related-model-media img{transform:scale(1.025)}
.nfe-related-model-media>span{position:absolute;inset:0;display:grid;place-items:center;color:#5f6a72;font-size:3rem;font-weight:800}
.nfe-related-model-body{padding:20px}
.nfe-related-model-kicker{display:block;margin-bottom:5px;color:#73808a;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.nfe-related-model-body h3{margin:0 0 7px;font-size:1.35rem}
.nfe-related-model-body h3 a{text-decoration:none}
.nfe-related-model-body p{margin:0 0 14px;color:#68737b;font-size:.94rem}
.nfe-related-model-link{font-size:.9rem;font-weight:800;text-decoration:none}
.nfe-related-model-link span{margin-left:5px}
.nfe-review-demo,.review-demo-badge{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #c9a728;border-radius:999px;background:#fff9d9;color:#6f5b00;font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
@media(max-width:640px){.nfe-related-model-grid{grid-template-columns:1fr}.nfe-related-model-body{padding:17px}}

/* =========================================================
   V5.1 — Nissan footer technical navigation split
   Keeps Engine Codes and Engine Sizes in separate columns
   so the footer stays compact instead of one very tall list.
   ========================================================= */
@media (min-width:1351px){
  .nfe-footer .container{width:min(1540px,calc(100% - 48px))}
  .nfe-footer-main{grid-template-columns:280px minmax(0,1fr);gap:46px}
  .nfe-footer-menus{
    grid-template-columns:minmax(145px,1fr) minmax(130px,.9fr) minmax(130px,.9fr) minmax(125px,.85fr) minmax(125px,.85fr) minmax(205px,1.35fr);
    gap:22px;
    align-items:start;
  }
}
@media (min-width:961px) and (max-width:1350px){
  .nfe-footer-main{grid-template-columns:240px minmax(0,1fr);gap:36px}
  .nfe-footer-menus{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
}
.nfe-footer-column--codes,.nfe-footer-column--sizes{min-width:0}
.nfe-footer-column--sizes a{white-space:nowrap}
@media (max-width:700px){
  .nfe-footer-column--sizes a{white-space:normal}
}


/* NFE FOOTER V10 — force six compact menu columns on wide screens */
@media (min-width:1351px){
  .nfe-footer-menus{
    grid-template-columns:minmax(140px,1fr) minmax(125px,.9fr) minmax(125px,.9fr) minmax(120px,.85fr) minmax(120px,.85fr) minmax(205px,1.3fr)!important;
    align-items:start;
  }
}

/* =========================================================
   V5.2 — Nissan footer horizontal-overflow correction
   Nissan stylesheet only. Keeps the six-column desktop footer,
   but allows every column/link to shrink and wrap safely.
   ========================================================= */
.nfe-footer{
  max-width:100%;
  overflow-x:hidden;
  overflow-x:clip;
}
.nfe-footer-main,
.nfe-footer-brand,
.nfe-footer-menus,
.nfe-footer-column,
.nfe-footer-bottom,
.nfe-footer-bottom > div{
  min-width:0;
}
.nfe-footer-column a,
.nfe-footer-column span{
  max-width:100%;
  white-space:normal!important;
  overflow-wrap:anywhere;
  word-break:normal;
}
.nfe-contact-column a{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.nfe-footer-bottom,
.nfe-footer-bottom > div{
  flex-wrap:wrap;
}

@media (min-width:1351px){
  .nfe-footer .container{
    width:min(1480px,calc(100% - 48px));
    max-width:calc(100% - 48px);
  }
  .nfe-footer-main{
    grid-template-columns:minmax(210px,250px) minmax(0,1fr);
    gap:34px;
  }
  .nfe-footer-menus{
    grid-template-columns:
      minmax(0,1.08fr)
      minmax(0,.96fr)
      minmax(0,1fr)
      minmax(0,.90fr)
      minmax(0,.84fr)
      minmax(0,1.32fr)!important;
    gap:16px;
    width:100%;
    min-width:0;
  }
  .nfe-footer-logo img{width:min(220px,100%)}
  .nfe-footer-brand p{font-size:.93rem;line-height:1.72}
  .nfe-footer-column h3{font-size:.94rem}
  .nfe-footer-column a,
  .nfe-footer-column span{font-size:.90rem;line-height:1.58}
  .nfe-contact-column a{font-size:.86rem}
}

@media (min-width:961px) and (max-width:1350px){
  .nfe-footer .container{max-width:calc(100% - 40px)}
  .nfe-footer-menus{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}
}

@media (max-width:960px){
  .nfe-footer .container{max-width:100%}
}

/* =========================================================
   NISSAN ENGINE CODE PRODUCT PAGES V2
   Nissan-only product merchandising layer.
   ========================================================= */
.nfe-engine-product-intro{
  position:relative;
  overflow:hidden;
  padding:38px 0 64px;
  background:
    radial-gradient(circle at 8% 10%,rgba(214,31,52,.14),transparent 32%),
    radial-gradient(circle at 92% 18%,rgba(20,113,146,.15),transparent 34%),
    linear-gradient(180deg,#f8fafc 0%,#fff 75%);
}
.nfe-engine-product-intro:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,#c8102e 0%,#e74343 38%,#1787a5 72%,#0f4f65 100%);
}
.nfe-breadcrumbs--product{margin:0 0 20px;color:#687782}
.nfe-engine-product-shell{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,500px);
  gap:34px;
  align-items:center;
  padding:34px;
  border:1px solid rgba(20,36,48,.09);
  border-radius:28px;
  background:rgba(255,255,255,.95);
  box-shadow:0 28px 70px rgba(22,39,52,.12);
}
.nfe-engine-product-badges{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.nfe-engine-product-kicker,.nfe-product-stock{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:8px 13px;
  border-radius:999px;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.nfe-engine-product-kicker{background:#fdecef;color:#9f1730;border:1px solid #f7c7cf}
.nfe-product-stock{background:#e9f7ef;color:#176b40;border:1px solid #c6ead5}
.nfe-product-stock--outofstock{background:#f3f4f6;color:#5d6670;border-color:#dfe3e6}
.nfe-product-stock--limitedavailability,.nfe-product-stock--backorder,.nfe-product-stock--preorder{background:#fff4df;color:#8a5a00;border-color:#f5d8a0}
.nfe-engine-product-copy h1{
  margin:18px 0 14px;
  max-width:780px;
  color:#14232d;
  font-size:clamp(2.15rem,4.3vw,3.8rem);
  line-height:1.04;
  letter-spacing:-.035em;
}
.nfe-engine-product-lead{margin:0 0 20px;color:#4d5e69;font-size:16px;line-height:1.75}
.nfe-engine-product-price-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
  margin:22px 0;
  padding:20px;
  border:1px solid #f1cbd1;
  border-radius:20px;
  background:linear-gradient(120deg,#fff2f4 0%,#fff9ef 52%,#eef9fc 100%);
  box-shadow:inset 4px 0 0 #c8102e;
}
.nfe-price-label{display:block;margin-bottom:4px;color:#7a5960;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.nfe-product-price{display:block;color:#c8102e;font-size:clamp(1.85rem,3vw,2.65rem);line-height:1;font-weight:900;letter-spacing:-.03em}
.nfe-product-price--pending{font-size:1.55rem;color:#42545f}
.nfe-engine-product-price-card small{display:block;margin-top:7px;color:#6a7379;font-size:10px;line-height:1.45}
.nfe-buy-now{min-width:180px;justify-content:center;background:linear-gradient(135deg,#d11e39,#a90e28);box-shadow:0 12px 26px rgba(190,24,52,.25)}
.nfe-engine-product-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 20px}
.nfe-engine-product-meta span{display:block;padding:12px 14px;border:1px solid #dce8ed;border-radius:13px;background:#f7fbfc;color:#42535e;font-size:12px;line-height:1.5}
.nfe-engine-product-points{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.nfe-engine-product-points li{position:relative;padding-left:28px;color:#3e4f59;font-size:12px;line-height:1.55}
.nfe-engine-product-points li:before{content:"✓";position:absolute;left:0;top:-1px;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#dff4e8;color:#157244;font-size:11px;font-weight:900}
.nfe-product-compat-link{display:inline-flex;align-items:center;gap:8px;margin-top:19px;color:#0d708e;font-size:12px;font-weight:800;text-decoration:none}
.nfe-product-compat-link:hover{color:#c8102e}
.nfe-engine-product-visual{
  margin:0;
  padding:16px;
  border-radius:26px;
  background:linear-gradient(160deg,#0c1720 0%,#153544 55%,#0d6a7f 100%);
  box-shadow:0 20px 44px rgba(10,32,44,.24);
}
.nfe-product-image-stage{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  background:
    radial-gradient(circle at 72% 22%,rgba(232,48,69,.38),transparent 29%),
    radial-gradient(circle at 25% 78%,rgba(46,181,201,.28),transparent 31%),
    linear-gradient(145deg,#edf3f5,#fff);
}
.nfe-product-image-stage:after{content:"";position:absolute;inset:auto -45px -70px auto;width:180px;height:180px;border:28px solid rgba(200,16,46,.13);border-radius:50%;pointer-events:none}
.nfe-product-image-stage img{position:relative;z-index:1;display:block;width:100%;max-width:500px;aspect-ratio:1/1;object-fit:cover;margin:auto}
.nfe-engine-product-visual figcaption{display:grid;gap:4px;padding:14px 8px 3px;color:#d4e1e7}
.nfe-engine-product-visual figcaption strong{color:#fff;font-size:14px}
.nfe-engine-product-visual figcaption span{font-size:10px;line-height:1.45}
.nfe-engine-types-section{background:linear-gradient(180deg,#fff,#f7fafb)}
.nfe-engine-types-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.nfe-engine-type-card{position:relative;overflow:hidden;display:grid;gap:13px;padding:24px;border:1px solid #e1e8ec;border-radius:20px;background:#fff;box-shadow:0 16px 36px rgba(20,40,54,.07)}
.nfe-engine-type-card:nth-child(1){border-top:4px solid #1883a1;background:linear-gradient(180deg,#f1fbfd,#fff 34%)}
.nfe-engine-type-card:nth-child(2){border-top:4px solid #c8102e;background:linear-gradient(180deg,#fff3f5,#fff 34%)}
.nfe-engine-type-card:nth-child(3){border-top:4px solid #d89421;background:linear-gradient(180deg,#fff9eb,#fff 34%)}
.nfe-engine-type-badge{display:inline-flex;width:max-content;padding:6px 10px;border-radius:999px;background:#ecf2f5;color:#3b5663;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.nfe-engine-type-card h3{margin:0;color:#162833}.nfe-engine-type-card p,.nfe-engine-type-card li{color:#56656e}.nfe-engine-type-card ul{display:grid;gap:7px;margin:0;padding-left:18px}
.nfe-engine-compatibility-section{background:#f3f8fa}
.nfe-engine-compatibility-shell{padding:28px;border:1px solid #d9e7ec;border-radius:24px;background:#fff;box-shadow:0 18px 42px rgba(20,40,54,.07)}
.nfe-engine-compatibility-note{margin-top:15px;padding:14px 16px;border-left:4px solid #1883a1;border-radius:10px;background:#eef9fc;color:#315563}
@media(max-width:1080px){.nfe-engine-product-shell{grid-template-columns:1fr}.nfe-engine-product-visual{max-width:620px;width:100%;margin-inline:auto}.nfe-engine-types-grid{grid-template-columns:1fr}.nfe-engine-product-meta{grid-template-columns:1fr}}
@media(max-width:700px){.nfe-engine-product-intro{padding-top:24px}.nfe-engine-product-shell{padding:18px;border-radius:20px}.nfe-engine-product-price-card{grid-template-columns:1fr}.nfe-buy-now{width:100%}.nfe-engine-product-copy h1{font-size:clamp(2rem,10vw,2.8rem)}.nfe-engine-product-visual{padding:10px;border-radius:20px}.nfe-product-image-stage{border-radius:15px}.nfe-engine-compatibility-shell{padding:17px}}

/* =========================================================
   NISSAN ENGINE CODE PRODUCT HEADER V3
   Cleaner product header, visible breadcrumbs, larger details.
   ========================================================= */
.nfe-engine-product-intro{
  padding:30px 0 58px;
  background:#f2f4f5;
}
.nfe-engine-product-intro:before{
  height:4px;
  background:#c8102e;
}
.nfe-breadcrumbs--product{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0 0 18px;
  color:#52616b;
  font-size:13px;
  line-height:1.4;
}
.nfe-breadcrumbs--product a{
  color:#243640 !important;
  text-decoration:none;
  font-weight:700;
}
.nfe-breadcrumbs--product a:hover{color:#c8102e !important}
.nfe-breadcrumbs--product span[aria-current="page"]{
  color:#6b7780;
  font-weight:700;
}
.nfe-engine-product-shell{
  gap:32px;
  padding:32px;
  background:#fff;
  box-shadow:0 18px 48px rgba(22,39,52,.09);
}
.nfe-engine-product-copy h1{
  margin:16px 0 14px;
  max-width:760px;
  font-size:clamp(2rem,3.2vw,3rem);
  line-height:1.08;
  letter-spacing:-.025em;
}
.nfe-engine-product-lead{
  margin:0 0 20px;
  color:#43535d;
  font-size:17px;
  line-height:1.7;
}
.nfe-engine-product-price-card{
  background:#f8f9fa;
  border-color:#d9dee2;
  box-shadow:inset 4px 0 0 #c8102e;
}
.nfe-engine-product-price-card small{
  margin-top:8px;
  color:#596872;
  font-size:13px;
  line-height:1.5;
}
.nfe-price-label{font-size:11px}
.nfe-buy-now{
  min-width:205px;
  background:#c8102e;
}
.nfe-engine-product-meta span{
  padding:14px 15px;
  background:#f7f9fa;
  color:#354751;
  font-size:14px;
  line-height:1.55;
}
.nfe-engine-product-points li{
  padding-left:30px;
  color:#354751;
  font-size:14px;
  line-height:1.6;
}
.nfe-product-compat-link{
  font-size:14px;
}
.nfe-engine-product-visual figcaption strong{font-size:15px}
.nfe-engine-product-visual figcaption span{font-size:12px;line-height:1.5}
@media(max-width:700px){
  .nfe-engine-product-copy h1{font-size:clamp(1.8rem,8vw,2.35rem)}
  .nfe-engine-product-lead{font-size:16px}
  .nfe-engine-product-meta span,.nfe-engine-product-points li{font-size:13px}
}

/* ======================================================================
   NFE v4 — Shared information blocks
   Key Takeaways + At-a-Glance + Trust Strip
   Nissan-only presentation refresh. No markup/database changes required.
   ====================================================================== */

/* ---------- Shared spacing / section surface ---------- */
.nfe-takeaways-section,
.nfe-facts-section,
.nfe-why-section,
.nfe-why-strip {
  position: relative;
}

/* ---------- 1) KEY TAKEAWAYS ---------- */
.nfe-takeaways-section {
  padding: 54px 0;
  background: #eef4f7;
}

.nfe-takeaways-card {
  position: relative;
  overflow: hidden;
  padding: 36px 40px 38px;
  border: 1px solid #d4e0e6;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(15, 42, 54, .08);
}

.nfe-takeaways-card::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(90deg, #be123c 0 28%, #0f6d7a 28% 65%, #d9a326 65% 100%);
}

.nfe-takeaways-card .nfe-section-title {
  margin-bottom: 24px;
}

.nfe-takeaways-card .nfe-section-title > span {
  width: fit-content;
  margin-bottom: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #e8f3f5;
  color: #0f6d7a;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .11em;
}

.nfe-takeaways-card .nfe-section-title h2,
.nfe-takeaways-card .nfe-section-title h3 {
  margin: 0;
  color: #102c38;
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.08;
}

.nfe-takeaways-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.nfe-takeaways-list li {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  min-height: 86px;
  padding: 18px 20px;
  border: 1px solid #dce7eb;
  border-radius: 16px;
  background: #f8fbfc;
  color: #334a55;
  font-size: 1rem;
  line-height: 1.65;
}

.nfe-takeaways-list li:nth-child(2n) {
  background: #fff9f2;
  border-color: #eadfce;
}

.nfe-takeaways-list li > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  background: #0f6d7a;
  color: #fff;
  box-shadow: 0 8px 18px rgba(15, 109, 122, .18);
  font-size: .95rem;
  font-weight: 900;
}

.nfe-takeaways-list li:nth-child(2n) > span {
  background: #be123c;
  box-shadow: 0 8px 18px rgba(190, 18, 60, .16);
}

.nfe-takeaways-list li > div {
  padding-top: 3px;
}

/* ---------- 2) AT-A-GLANCE / FACTS ---------- */
.nfe-facts-section {
  padding: 30px 0;
  border: 0;
  background: #f7fafb;
}

.nfe-facts-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  min-height: 0;
}

.nfe-facts-strip article {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
  min-height: 126px;
  padding: 22px 20px;
  border: 1px solid #d9e5e9;
  border-radius: 16px;
  background: #eef7f8;
  box-shadow: 0 10px 26px rgba(16, 44, 56, .055);
}

.nfe-facts-strip article:nth-child(2) {
  border-color: #eadfcf;
  background: #fff8ef;
}

.nfe-facts-strip article:nth-child(3) {
  border-color: #d9e8dc;
  background: #f2f9f3;
}

.nfe-facts-strip article:nth-child(4) {
  border-color: #deddf0;
  background: #f6f4fb;
}

.nfe-facts-strip article:nth-child(n+5) {
  display: none;
}

.nfe-fact-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 14px;
  background: #0f6d7a;
  color: #fff;
  box-shadow: 0 8px 18px rgba(15, 109, 122, .16);
  font-size: 1rem;
  font-weight: 900;
}

.nfe-facts-strip article:nth-child(2) .nfe-fact-icon { background: #c05c20; }
.nfe-facts-strip article:nth-child(3) .nfe-fact-icon { background: #2e7d4f; }
.nfe-facts-strip article:nth-child(4) .nfe-fact-icon { background: #61549a; }

.nfe-facts-strip article strong {
  display: block;
  margin: 0 0 6px;
  color: #173340;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .045em;
  line-height: 1.35;
  text-transform: uppercase;
}

.nfe-facts-strip article p {
  margin: 0;
  color: #526873;
  font-size: .96rem;
  line-height: 1.6;
}

/* ---------- 3) TRUST STRIP ---------- */
.nfe-why-section,
.nfe-why-strip {
  padding: 44px 0;
  background: #ffffff;
}

.nfe-why-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.nfe-why-grid article {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  min-width: 0;
  min-height: 118px;
  padding: 22px 20px;
  border: 1px solid #dce7eb;
  border-radius: 16px;
  background: #f8fbfc;
  box-shadow: 0 10px 26px rgba(16, 44, 56, .055);
}

.nfe-why-grid article:nth-child(2) {
  border-color: #eadfcf;
  background: #fff8ef;
}

.nfe-why-grid article:nth-child(3) {
  border-color: #d8e8dd;
  background: #f1f8f3;
}

.nfe-why-grid article:nth-child(4) {
  border-color: #ddddee;
  background: #f6f4fb;
}

.nfe-why-grid > article > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 14px;
  background: #0f6d7a;
  color: #fff;
  box-shadow: 0 8px 18px rgba(15, 109, 122, .16);
  font-size: 1rem;
  font-weight: 900;
}

.nfe-why-grid article:nth-child(2) > span { background: #c05c20; }
.nfe-why-grid article:nth-child(3) > span { background: #2e7d4f; }
.nfe-why-grid article:nth-child(4) > span { background: #61549a; }

.nfe-why-grid strong {
  display: block;
  margin: 1px 0 5px;
  color: #173340;
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.4;
}

.nfe-why-grid p {
  margin: 0;
  color: #5b6f79;
  font-size: .92rem;
  line-height: 1.55;
}

.nfe-trust-note {
  max-width: 860px;
  margin: 18px auto 0;
  padding: 15px 18px;
  border-left: 4px solid #0f6d7a;
  border-radius: 0 12px 12px 0;
  background: #eef7f8;
  color: #48616d;
  text-align: left;
}

.nfe-trust-note p {
  margin: 0;
  color: inherit;
  font-size: .96rem;
  line-height: 1.65;
}

/* ---------- Responsive ---------- */
@media (max-width: 1040px) {
  .nfe-facts-strip,
  .nfe-why-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nfe-facts-strip article,
  .nfe-why-grid article {
    border-right: 1px solid #dce7eb !important;
    border-bottom: 1px solid #dce7eb !important;
  }
}

@media (max-width: 700px) {
  .nfe-takeaways-section { padding: 38px 0; }
  .nfe-takeaways-card { padding: 28px 20px; border-radius: 18px; }
  .nfe-takeaways-list { grid-template-columns: 1fr; }
  .nfe-takeaways-list li { min-height: 0; padding: 16px; }

  .nfe-facts-section,
  .nfe-why-section,
  .nfe-why-strip { padding: 34px 0; }

  .nfe-facts-strip,
  .nfe-why-grid { grid-template-columns: 1fr; gap: 12px; }

  .nfe-facts-strip article,
  .nfe-why-grid article {
    min-height: 0;
    padding: 18px;
  }

  .nfe-facts-strip article p,
  .nfe-why-grid p,
  .nfe-trust-note p { font-size: .94rem; }
}

/* =========================================================
   V5.5 — Nissan desktop header + hero presentation polish
   CSS-only. Keeps current menus, lookup form and slider logic.
   ========================================================= */

/* Top utility bar: slightly clearer, less visually flat. */
.nfe-topbar{
  height:36px;
  line-height:36px;
  background:linear-gradient(90deg,#080c10 0%,#101820 58%,#07151a 100%);
  border-bottom:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 -1px 0 rgba(29,153,171,.13);
}
.nfe-topbar-inner{height:36px}
.nfe-topbar-points,.nfe-topbar-contact{gap:12px}
.nfe-topbar-points span:first-child{color:#fff;font-weight:700}
.nfe-topbar-points span:last-child{color:#cbd6dc}
.nfe-topbar-contact{color:#cbd6dc}
.nfe-topbar-contact a{font-weight:650}
.nfe-topbar i{width:4px;height:4px;background:#71828c}

/* Desktop header: single-line navigation with a calmer visual rhythm. */
.nfe-header{
  border-bottom:1px solid #dde5e9;
  box-shadow:0 8px 28px rgba(14,21,28,.07);
}
.nfe-header:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  background:linear-gradient(90deg,#c81835 0 33%,#cfd7dc 33% 67%,#08758a 67% 100%);
  opacity:.9;
  pointer-events:none;
}
.nfe-header-main{
  grid-template-columns:220px minmax(0,1fr) 150px;
  gap:16px;
  min-height:90px;
}
.nfe-brand img{
  width:200px;
  max-height:60px;
}
.nfe-main-nav{
  justify-content:center;
  gap:1px;
  min-width:0;
}
.nfe-main-nav .nav-link,
.nfe-main-nav .nav-parent{
  min-width:0;
  padding:34px 8px 31px;
  font-size:10.5px;
  line-height:1;
  letter-spacing:.005em;
  white-space:nowrap;
}
.nfe-main-nav .nav-parent span{font-size:.9em;margin-left:1px}
.nfe-main-nav .nav-link:after,
.nfe-main-nav .nav-parent:after{
  left:8px;
  right:8px;
  bottom:24px;
  height:2px;
  background:linear-gradient(90deg,#c81835,#08758a);
}
.nfe-main-nav .nav-link:hover,
.nfe-main-nav .nav-parent:hover{color:#08758a}
.nfe-main-nav .nfe-home-link{color:#10171c}
.nfe-header-actions{gap:10px;justify-content:flex-end}
.nfe-header-cta{
  width:150px;
  min-width:150px;
  min-height:50px;
  border-radius:10px;
  background:#0b1115;
  border-color:#0b1115;
  box-shadow:0 10px 24px rgba(11,17,21,.13);
  font-size:.78rem;
  white-space:nowrap;
}
.nfe-header-cta:hover{
  transform:translateY(-1px);
  background:#08758a;
  border-color:#08758a;
  box-shadow:0 12px 26px rgba(8,117,138,.18);
}

/* Hero: cleaner hierarchy and stronger separation between intro and tools. */
.nfe-hero--stacked{
  background-image:
    linear-gradient(90deg,rgba(4,9,13,.94) 0%,rgba(5,11,16,.84) 42%,rgba(5,10,14,.60) 74%,rgba(5,10,14,.70) 100%),
    var(--nfe-hero-bg);
}
.nfe-hero--stacked .nfe-hero-shade{
  background:
    radial-gradient(circle at 72% 34%,rgba(8,117,138,.18),transparent 29%),
    radial-gradient(circle at 20% 26%,rgba(200,24,53,.12),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.16));
}
.nfe-hero--stacked .nfe-hero-shell{
  width:min(1480px,calc(100% - 72px));
  padding-block:28px 30px;
}
.nfe-hero--stacked .nfe-hero-intro{
  max-width:1180px;
  padding-left:2px;
}
.nfe-hero--stacked .nfe-kicker{
  margin-bottom:12px;
  padding:8px 14px;
  border-color:rgba(255,255,255,.24);
  background:rgba(10,18,23,.60);
  color:#e8f0f3;
  box-shadow:inset 3px 0 0 #c81835;
}
.nfe-hero--stacked h1,
.nfe-hero--stacked .nfe-hero-intro>h2{
  max-width:1180px;
  margin-bottom:8px;
  font-size:clamp(2.35rem,2.7vw,3.05rem);
  line-height:1.04;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.nfe-hero--stacked .nfe-hero-subline{
  margin-bottom:0;
  color:#eef3f5;
  font-size:1.05rem;
  font-weight:650;
}
.nfe-hero--stacked .nfe-quote-card--full{margin-top:19px}
.nfe-hero--stacked .nfe-quote-layout{
  grid-template-columns:minmax(500px,.94fr) minmax(520px,1.06fr);
  gap:20px;
}
.nfe-hero--stacked .nfe-quote-lookup-panel{
  padding:25px 26px 21px;
  border:1px solid rgba(255,255,255,.18);
  border-top-color:rgba(255,255,255,.28);
  background:linear-gradient(150deg,rgba(7,14,18,.86),rgba(10,21,27,.68));
  box-shadow:0 22px 56px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.06);
}
.nfe-hero--stacked .nfe-quote-copy .nfe-quote-kicker{
  color:#9fd4de;
  letter-spacing:.11em;
}
.nfe-hero--stacked .nfe-quote-card--full .nfe-quote-copy h2{
  font-size:clamp(1.55rem,1.65vw,1.85rem);
  letter-spacing:-.03em;
}
.nfe-hero--stacked .nfe-quote-copy p{
  color:#d3dde1;
  font-size:.93rem;
}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large,
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit{
  height:66px;
  min-height:58px;
}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit{
  background:#fff;
  color:#111820;
  border-color:#fff;
  font-size:.7rem;
  font-weight:800;
}
.nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit:hover{
  background:#edf7f8;
  border-color:#edf7f8;
  color:#075e6f;
}
.nfe-hero--stacked .nfe-manual-engine-trigger{
  border-color:rgba(126,191,204,.25);
  background:rgba(8,117,138,.075);
}
.nfe-hero--stacked .nfe-manual-engine-trigger:hover{
  border-color:rgba(126,191,204,.48);
  background:rgba(8,117,138,.14);
}
.nfe-hero--stacked .nfe-hero-model-showcase{
  border-radius:17px;
  overflow:hidden;
}
.nfe-hero--stacked .nfe-model-slider-frame{
  border-radius:17px;
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 24px 60px rgba(0,0,0,.26);
}
.nfe-hero--stacked .nfe-model-slide:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 48%,rgba(4,9,12,.18) 65%,rgba(4,9,12,.76) 100%);
  pointer-events:none;
}
.nfe-hero--stacked .nfe-model-slide figcaption{
  z-index:2;
  max-width:72%;
  text-shadow:0 2px 14px rgba(0,0,0,.65);
}
.nfe-hero--stacked .nfe-model-slide figcaption span{
  color:#d7edf1;
  font-weight:800;
  letter-spacing:.09em;
}
.nfe-hero--stacked .nfe-model-slide figcaption strong{
  font-size:1.3rem;
  line-height:1.18;
}
.nfe-hero--stacked .nfe-model-slider-dots button.is-active{
  background:#fff;
  box-shadow:0 0 0 3px rgba(8,117,138,.35);
}
.nfe-hero--stacked .nfe-hero-after{
  max-width:1180px;
  margin:18px auto 0;
  text-align:center;
}
.nfe-hero--stacked .nfe-hero-text{
  max-width:1180px;
  color:#d7e0e4;
  font-size:.92rem;
  line-height:1.62;
}

/* Fit the full desktop navigation before switching to the mobile header. */
@media (max-width:1380px) and (min-width:961px){
  .nfe-header-main{
    grid-template-columns:175px minmax(0,1fr) 128px;
    gap:9px;
    min-height:82px;
  }
  .nfe-brand img{width:164px;max-height:52px}
  .nfe-main-nav .nav-link,
  .nfe-main-nav .nav-parent{
    padding:30px 5px 27px;
    font-size:9.2px;
  }
  .nfe-main-nav .nav-link:after,
  .nfe-main-nav .nav-parent:after{left:5px;right:5px;bottom:20px}
  .nfe-header-cta{width:128px;min-width:128px;min-height:46px;font-size:.7rem}
  .nfe-hero--stacked .nfe-hero-shell{width:min(1260px,calc(100% - 40px))}
  .nfe-hero--stacked .nfe-quote-layout{grid-template-columns:minmax(440px,.98fr) minmax(430px,1.02fr);gap:16px}
}

@media (max-width:1080px) and (min-width:961px){
  .nfe-header-main{grid-template-columns:150px minmax(0,1fr) 112px;gap:5px}
  .nfe-brand img{width:142px}
  .nfe-main-nav .nav-link,
  .nfe-main-nav .nav-parent{padding-inline:4px;font-size:8.5px}
  .nfe-header-cta{width:112px;min-width:112px;padding-inline:8px;font-size:.64rem}
}

/* Keep the existing mobile menu behavior unchanged, only tidy presentation. */
@media (max-width:960px){
  .nfe-header:after{height:2px}
  .nfe-main-nav .nav-link,
  .nfe-main-nav .nav-parent{white-space:normal}
  .nfe-hero--stacked .nfe-hero-shell{width:min(100% - 32px,840px)}
  .nfe-hero--stacked h1,
  .nfe-hero--stacked .nfe-hero-intro>h2{font-size:clamp(2rem,5.5vw,2.65rem)}
  .nfe-hero--stacked .nfe-hero-after{text-align:left}
}
@media (max-width:700px){
  .nfe-hero--stacked .nfe-hero-shell{width:calc(100% - 24px)}
  .nfe-hero--stacked h1,
  .nfe-hero--stacked .nfe-hero-intro>h2{font-size:clamp(1.95rem,8.7vw,2.5rem);line-height:1.06}
  .nfe-hero--stacked .nfe-kicker{font-size:.66rem}
  .nfe-hero--stacked .nfe-hero-subline{font-size:.96rem}
  .nfe-hero--stacked .nfe-quote-lookup-panel{padding:18px 16px 16px}
  .nfe-hero--stacked .nfe-model-slide figcaption{max-width:76%}
  .nfe-hero--stacked .nfe-model-slide figcaption strong{font-size:1.05rem}
}

/* ======================================================================
   NFE v6 — Engine Code product-page reference layout
   Matches the clean open product composition requested in the supplied
   screenshot. Nissan Engine Code pages only; no shared-site markup change.
   ====================================================================== */

/* Wider product canvas without changing the global site container. */
.nfe-engine-product-intro > .container {
  width: min(1460px, calc(100% - 64px));
  max-width: none;
}

.nfe-engine-product-intro {
  padding: 30px 0 58px;
  background: #f1f3f4;
}

.nfe-engine-product-intro::before {
  height: 4px;
  background: #c8102e;
}

.nfe-breadcrumbs--product {
  margin-bottom: 42px;
  font-size: 15px;
  gap: 10px;
}

/* Open two-column composition rather than one large boxed card. */
.nfe-engine-product-shell {
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .82fr);
  gap: clamp(46px, 5vw, 82px);
  align-items: center;
  padding: 18px 34px 20px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.nfe-engine-product-copy {
  min-width: 0;
  max-width: 790px;
}

.nfe-engine-product-badges {
  margin-bottom: 22px;
}

.nfe-engine-product-kicker {
  padding: 9px 16px;
  background: #fff0f2;
  border-color: #efbec7;
  color: #b31330;
  font-size: 12px;
  letter-spacing: .045em;
}

.nfe-product-stock {
  padding: 9px 14px;
  font-size: 12px;
}

.nfe-engine-product-copy h1 {
  max-width: 760px;
  margin: 0 0 18px;
  color: #102936;
  font-size: clamp(2.75rem, 4vw, 4.25rem);
  line-height: 1.02;
  letter-spacing: -.038em;
}

.nfe-engine-product-lead {
  max-width: 770px;
  margin-bottom: 28px;
  color: #425b69;
  font-size: 18px;
  line-height: 1.72;
}

.nfe-engine-product-price-card {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 255px);
  gap: 24px;
  margin: 0 0 28px;
  padding: 24px 26px;
  border: 1px solid #d8dde0;
  border-left: 5px solid #c8102e;
  border-radius: 22px;
  background: #f8f9fa;
  box-shadow: none;
}

.nfe-price-label {
  margin-bottom: 7px;
  color: #74545b;
  font-size: 12px;
}

.nfe-product-price--pending {
  color: #314d5d;
  font-size: clamp(1.7rem, 2.3vw, 2.1rem);
}

.nfe-engine-product-price-card small {
  max-width: 470px;
  color: #60727d;
  font-size: 14px;
  line-height: 1.55;
}

.nfe-buy-now {
  min-height: 60px;
  min-width: 0;
  padding-inline: 28px;
  border-radius: 11px;
  font-size: 14px;
  letter-spacing: .015em;
  background: #c8102e;
  box-shadow: 0 12px 26px rgba(200, 16, 46, .18);
}

.nfe-buy-now:hover {
  background: #a90d27;
  transform: translateY(-1px);
}

.nfe-engine-product-meta {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.nfe-engine-product-meta span {
  min-height: 74px;
  display: flex;
  align-items: flex-start;
  padding: 17px 18px;
  border-color: #d5e2e8;
  border-radius: 15px;
  background: #f7fafb;
  color: #334f5e;
  font-size: 15px;
  line-height: 1.55;
}

.nfe-engine-product-points {
  gap: 12px;
}

.nfe-engine-product-points li {
  padding-left: 34px;
  color: #344e5c;
  font-size: 15px;
  line-height: 1.6;
}

.nfe-engine-product-points li::before {
  top: 0;
  width: 22px;
  height: 22px;
  font-size: 12px;
}

.nfe-product-compat-link {
  margin-top: 22px;
  font-size: 15px;
}

/* Reference image treatment: simple large soft-grey product stage. */
.nfe-engine-product-visual {
  width: 100%;
  max-width: 560px;
  justify-self: end;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 28px;
  background: #dfe1e2;
  box-shadow: 0 18px 42px rgba(31, 49, 60, .10);
}

.nfe-product-image-stage {
  overflow: hidden;
  border-radius: 28px;
  background: #dfe1e2;
}

.nfe-product-image-stage::after {
  display: none;
}

.nfe-product-image-stage img {
  width: 100%;
  max-width: none;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 28px;
}

/* The requested reference has no dark caption block below the engine image. */
.nfe-engine-product-visual figcaption {
  display: none;
}

@media (max-width: 1180px) {
  .nfe-engine-product-intro > .container {
    width: min(1120px, calc(100% - 40px));
  }

  .nfe-engine-product-shell {
    grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr);
    gap: 38px;
    padding-inline: 10px;
  }

  .nfe-engine-product-copy h1 {
    font-size: clamp(2.4rem, 4.4vw, 3.45rem);
  }
}

@media (max-width: 960px) {
  .nfe-breadcrumbs--product {
    margin-bottom: 24px;
  }

  .nfe-engine-product-shell {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 0;
  }

  .nfe-engine-product-copy {
    max-width: none;
  }

  .nfe-engine-product-visual {
    width: min(100%, 620px);
    max-width: 620px;
    justify-self: center;
  }
}

@media (max-width: 700px) {
  .nfe-engine-product-intro > .container {
    width: calc(100% - 24px);
  }

  .nfe-engine-product-intro {
    padding: 22px 0 42px;
  }

  .nfe-breadcrumbs--product {
    margin-bottom: 22px;
    font-size: 13px;
  }

  .nfe-engine-product-badges {
    margin-bottom: 16px;
  }

  .nfe-engine-product-copy h1 {
    font-size: clamp(2rem, 10vw, 2.7rem);
  }

  .nfe-engine-product-lead {
    font-size: 16px;
    line-height: 1.65;
  }

  .nfe-engine-product-price-card {
    grid-template-columns: 1fr;
    padding: 19px;
  }

  .nfe-buy-now {
    width: 100%;
  }

  .nfe-engine-product-meta {
    grid-template-columns: 1fr;
  }

  .nfe-engine-product-meta span {
    min-height: 0;
    font-size: 14px;
  }

  .nfe-engine-product-points li,
  .nfe-product-compat-link {
    font-size: 14px;
  }

  .nfe-engine-product-visual,
  .nfe-product-image-stage,
  .nfe-product-image-stage img {
    border-radius: 20px;
  }
}

/* ======================================================================
   NFE v7 — Engine Code product alignment correction
   Aligns product breadcrumb + product content to the exact same desktop
   container used by the Nissan header. Header itself is intentionally
   untouched.
   ====================================================================== */

/* Match .nfe-header-main / global site container exactly on desktop. */
.nfe-engine-product-intro > .container{
  width:min(1220px,calc(100% - 48px));
  max-width:none;
  margin-inline:auto;
}

/* Breadcrumb and product content now share one left edge. */
.nfe-breadcrumbs--product{
  margin:0 0 30px;
  padding:0;
}

.nfe-engine-product-shell{
  grid-template-columns:minmax(0,1fr) minmax(390px,470px);
  gap:clamp(36px,4vw,54px);
  align-items:start;
  padding:0;
  margin:0;
}

.nfe-engine-product-copy{
  width:100%;
  max-width:none;
  padding:0;
  margin:0;
}

.nfe-engine-product-badges{
  margin-top:0;
  margin-bottom:20px;
}

.nfe-engine-product-copy h1{
  max-width:700px;
  font-size:clamp(2.55rem,3.35vw,3.65rem);
}

.nfe-engine-product-lead{
  max-width:720px;
}

/* Keep the image aligned with the actual product body rather than drifting
   outside the header/content axis. */
.nfe-engine-product-visual{
  width:100%;
  max-width:470px;
  justify-self:end;
  margin-top:72px;
}

@media(max-width:1268px) and (min-width:961px){
  .nfe-engine-product-intro > .container{
    width:calc(100% - 48px);
  }
  .nfe-engine-product-shell{
    grid-template-columns:minmax(0,1fr) minmax(350px,420px);
    gap:32px;
  }
  .nfe-engine-product-copy h1{
    font-size:clamp(2.35rem,3.8vw,3.2rem);
  }
  .nfe-engine-product-visual{
    max-width:420px;
    margin-top:64px;
  }
}

/* Match the global Nissan container rules at tablet/mobile widths too. */
@media(max-width:960px){
  .nfe-engine-product-intro > .container{
    width:min(100% - 32px,840px);
  }
  .nfe-breadcrumbs--product{
    margin-bottom:24px;
  }
  .nfe-engine-product-shell{
    grid-template-columns:1fr;
    gap:30px;
  }
  .nfe-engine-product-visual{
    width:min(100%,620px);
    max-width:620px;
    justify-self:center;
    margin-top:0;
  }
}

@media(max-width:700px){
  .nfe-engine-product-intro > .container{
    width:calc(100% - 24px);
  }
  .nfe-breadcrumbs--product{
    margin-bottom:20px;
  }
}

/* ======================================================================
   NFE v10 — Engine image-only dotted loader
   Old YouTube-style circular dots. The loader exists ONLY inside the
   Engine Code product image stage; no page-level loading overlay.
   ====================================================================== */
.nfe-product-image-stage{
  position:relative;
  isolation:isolate;
  min-height:500px;
  overflow:hidden;
  background:#e6e8ea;
}

.nfe-product-image-stage .nfe-product-image{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:auto;
  opacity:0;
  transform:scale(.985);
  transition:opacity .32s ease,transform .42s ease;
}

.nfe-product-image-loader{
  position:absolute;
  z-index:4;
  top:50%;
  left:50%;
  width:54px;
  height:54px;
  transform:translate(-50%,-50%);
  pointer-events:none;
  opacity:0;
  transition:opacity .16s ease;
}

.nfe-product-image-loader i{
  position:absolute;
  top:23px;
  left:23px;
  width:8px;
  height:8px;
  margin:-4px 0 0 -4px;
  border-radius:50%;
  background:#c80d2f;
  box-shadow:0 1px 5px rgba(15,23,42,.18);
  transform-origin:4px 4px;
  animation:nfe-product-dot-pulse .88s linear infinite;
}

.nfe-product-image-loader i:nth-child(1){transform:rotate(0deg) translateY(-21px);animation-delay:-.77s}
.nfe-product-image-loader i:nth-child(2){transform:rotate(45deg) translateY(-21px);animation-delay:-.66s}
.nfe-product-image-loader i:nth-child(3){transform:rotate(90deg) translateY(-21px);animation-delay:-.55s}
.nfe-product-image-loader i:nth-child(4){transform:rotate(135deg) translateY(-21px);animation-delay:-.44s}
.nfe-product-image-loader i:nth-child(5){transform:rotate(180deg) translateY(-21px);animation-delay:-.33s}
.nfe-product-image-loader i:nth-child(6){transform:rotate(225deg) translateY(-21px);animation-delay:-.22s}
.nfe-product-image-loader i:nth-child(7){transform:rotate(270deg) translateY(-21px);animation-delay:-.11s}
.nfe-product-image-loader i:nth-child(8){transform:rotate(315deg) translateY(-21px);animation-delay:0s}

.nfe-product-image-stage.is-loading .nfe-product-image-loader{
  opacity:1;
}

.nfe-product-image-stage.is-loaded .nfe-product-image{
  opacity:1;
  transform:none;
}

.nfe-product-image-stage.is-loaded .nfe-product-image-loader{
  opacity:0;
  visibility:hidden;
}

@keyframes nfe-product-dot-pulse{
  0%,100%{opacity:.18}
  45%{opacity:1}
}

@media(max-width:700px){
  .nfe-product-image-stage{min-height:0;aspect-ratio:1/1}
  .nfe-product-image-loader{width:48px;height:48px}
  .nfe-product-image-loader i{top:20px;left:20px;width:7px;height:7px;margin:-3.5px 0 0 -3.5px}
  .nfe-product-image-loader i:nth-child(1){transform:rotate(0deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(2){transform:rotate(45deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(3){transform:rotate(90deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(4){transform:rotate(135deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(5){transform:rotate(180deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(6){transform:rotate(225deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(7){transform:rotate(270deg) translateY(-18px)}
  .nfe-product-image-loader i:nth-child(8){transform:rotate(315deg) translateY(-18px)}
}

@media(prefers-reduced-motion:reduce){
  .nfe-product-image-loader i{animation:none;opacity:.65}
  .nfe-product-image-stage .nfe-product-image{transition:opacity .12s ease;transform:none}
}

/* ========================================================================
   V11 — Nissan technical specifications section
   Cleaner product-spec treatment for the shared #specs / compatibility table.
   ======================================================================== */
.nfe-specs-section {
  position: relative;
  overflow: hidden;
  background: #f2f5f7;
  padding-block: clamp(54px, 6vw, 82px);
}

.nfe-specs-section::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, #c8102e 0 34%, #d7dfe4 34% 68%, #0f7180 68% 100%);
  pointer-events: none;
}

.nfe-specs-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(330px, .72fr);
  gap: 26px;
  align-items: stretch;
}

.nfe-specs-content,
.nfe-specs-visual {
  min-width: 0;
  border: 1px solid #dbe3e8;
  border-radius: 22px;
  box-shadow: 0 18px 46px rgba(15, 32, 42, .07);
}

.nfe-specs-content {
  position: relative;
  overflow: hidden;
  background: #fff;
  padding: clamp(24px, 3vw, 36px);
}

.nfe-specs-content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 108px;
  border-radius: 0 0 6px 0;
  background: #c8102e;
}

.nfe-specs-content .nfe-section-title {
  margin-bottom: 15px;
}

.nfe-specs-content .nfe-section-title > span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin-bottom: 12px;
  padding: 6px 12px;
  border: 1px solid #b9dce1;
  border-radius: 999px;
  background: #eef9fa;
  color: #096574;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.nfe-specs-content .nfe-section-title h2,
.nfe-specs-content .nfe-section-title h3 {
  max-width: 860px;
  margin: 0;
  color: #0b2839;
  font-size: clamp(2rem, 3.25vw, 3rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}

.nfe-specs-content > .nfe-copy {
  max-width: 900px;
  margin: 0 0 22px;
  color: #536b7a;
  font-size: 1rem;
  line-height: 1.78;
}

.nfe-specs-content > .nfe-copy p {
  margin: 0 0 10px;
}

.nfe-specs-content .nfe-table-wrap {
  overflow: hidden;
  margin-top: 22px;
  border: 1px solid #d9e2e7;
  border-radius: 16px;
  background: #fff;
  box-shadow: none;
}

.nfe-specs-content .nfe-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.nfe-specs-content .nfe-table th {
  padding: 16px 18px;
  border: 0;
  background: #102b3a;
  color: #fff;
  font-size: .79rem;
  font-weight: 800;
  letter-spacing: .075em;
  text-align: left;
  text-transform: uppercase;
}

.nfe-specs-content .nfe-table th:first-child {
  width: 34%;
  box-shadow: inset 4px 0 0 #c8102e;
}

.nfe-specs-content .nfe-table td {
  padding: 16px 18px;
  border: 0;
  border-bottom: 1px solid #e2e8ec;
  background: #fff;
  color: #314d5e;
  font-size: .98rem;
  line-height: 1.45;
  vertical-align: middle;
}

.nfe-specs-content .nfe-table td:first-child {
  color: #17384a;
  font-weight: 700;
}

.nfe-specs-content .nfe-table tbody tr:nth-child(even) td {
  background: #f7fafb;
}

.nfe-specs-content .nfe-table tbody tr:last-child td {
  border-bottom: 0;
}

.nfe-specs-content .nfe-table tbody tr {
  transition: background-color .18s ease, transform .18s ease;
}

.nfe-specs-content .nfe-table tbody tr:hover td {
  background: #eef8f9;
}

.nfe-specs-content .nfe-engine-code-link {
  color: #b70d28;
  font-weight: 800;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.nfe-specs-visual {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  margin: 0;
  padding: 20px;
  background: linear-gradient(145deg, #e7ecef, #f7f9fa 62%, #e5eef0);
}

.nfe-specs-visual::before {
  content: "Engine matched to code";
  position: absolute;
  z-index: 2;
  top: 18px;
  left: 18px;
  padding: 7px 11px;
  border: 1px solid rgba(15, 113, 128, .22);
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  color: #0b6573;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  backdrop-filter: blur(6px);
}

.nfe-specs-visual img {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 1 / 1;
  flex: 1 1 auto;
  object-fit: contain;
  border-radius: 16px;
  background: #edf0f2;
  filter: none;
}

.nfe-specs-visual figcaption {
  position: static;
  margin-top: 14px;
  padding: 14px 15px;
  border: 1px solid #cde0e4;
  border-radius: 12px;
  background: #eef8f9;
  color: #355663;
  font-size: .88rem;
  font-weight: 600;
  line-height: 1.55;
  backdrop-filter: none;
}

.nfe-specs-visual figcaption::before {
  content: "✓";
  display: inline-grid;
  width: 22px;
  height: 22px;
  margin-right: 8px;
  place-items: center;
  border-radius: 50%;
  background: #0f7180;
  color: #fff;
  font-size: .75rem;
  font-weight: 900;
  vertical-align: middle;
}

@media (max-width: 960px) {
  .nfe-specs-shell {
    grid-template-columns: 1fr;
  }

  .nfe-specs-visual {
    max-width: 640px;
    width: 100%;
    margin-inline: auto;
  }
}

@media (max-width: 640px) {
  .nfe-specs-section {
    padding-block: 42px;
  }

  .nfe-specs-content,
  .nfe-specs-visual {
    border-radius: 18px;
  }

  .nfe-specs-content {
    padding: 20px 16px;
  }

  .nfe-specs-content .nfe-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .nfe-specs-content .nfe-table {
    min-width: 540px;
  }

  .nfe-specs-content .nfe-table th,
  .nfe-specs-content .nfe-table td {
    padding: 14px 14px;
  }

  .nfe-specs-visual {
    padding: 14px;
  }
}


/* ========================================================================
   V12 — Technical specifications full-width layout
   Engine image is already shown in the product intro, so the specifications
   section uses the complete site container for clearer technical data.
   ======================================================================== */
.nfe-specs-shell {
  display: block;
}

.nfe-specs-content {
  width: 100%;
  max-width: none;
}

.nfe-specs-content .nfe-section-title h2,
.nfe-specs-content .nfe-section-title h3 {
  max-width: 1000px;
}

.nfe-specs-content > .nfe-copy {
  max-width: 1080px;
}

.nfe-specs-content .nfe-table-wrap {
  width: 100%;
}

@media (max-width: 960px) {
  .nfe-specs-shell {
    display: block;
  }
}

/* ======================================================================
   NFE v13 — Mobile home hero containment / VRM layout
   Mobile only. Desktop and tablet/desktop header remain unchanged.
   ====================================================================== */
@media (max-width:700px){
  /* Never allow a hero child to create horizontal page overflow. */
  .nfe-hero--stacked,
  .nfe-hero--stacked .nfe-hero-shell,
  .nfe-hero--stacked .nfe-hero-intro,
  .nfe-hero--stacked .nfe-quote-card--full,
  .nfe-hero--stacked .nfe-quote-layout,
  .nfe-hero--stacked .nfe-quote-lookup,
  .nfe-hero--stacked .nfe-quote-lookup-panel,
  .nfe-hero--stacked .nfe-vrm-form--horizontal,
  .nfe-hero--stacked .nfe-number-plate--large,
  .nfe-hero--stacked .nfe-manual-engine-trigger{
    min-width:0!important;
    max-width:100%!important;
  }

  .nfe-hero--stacked{
    background-position:55% center;
  }
  .nfe-hero--stacked .nfe-hero-shell{
    width:calc(100% - 24px)!important;
    padding:18px 0 22px!important;
  }
  .nfe-hero--stacked .nfe-hero-intro{
    padding:0!important;
  }
  .nfe-hero--stacked .nfe-kicker{
    margin-bottom:10px;
    padding:7px 12px;
    font-size:.61rem!important;
    line-height:1.2;
    letter-spacing:.075em;
  }
  .nfe-hero--stacked h1,
  .nfe-hero--stacked .nfe-hero-intro>h2{
    max-width:430px;
    margin-bottom:8px;
    font-size:clamp(1.85rem,8.1vw,2.3rem)!important;
    line-height:1.06!important;
    letter-spacing:-.04em;
    text-wrap:pretty;
  }
  .nfe-hero--stacked .nfe-hero-subline{
    max-width:430px;
    margin-bottom:0;
    font-size:.9rem!important;
    line-height:1.48;
  }

  .nfe-hero--stacked .nfe-quote-card--full,
  .nfe-hero--stacked .nfe-quote-card--wide,
  .nfe-hero--stacked .nfe-quote-card--glass{
    width:100%!important;
    margin:16px 0 0!important;
    padding:0!important;
    border:0;
    background:transparent;
    box-shadow:none;
    overflow:visible;
  }
  .nfe-hero--stacked .nfe-quote-layout{
    display:block!important;
    width:100%!important;
    margin:0!important;
  }
  .nfe-hero--stacked .nfe-quote-lookup-panel{
    width:100%!important;
    padding:17px 14px 15px!important;
    border-radius:15px!important;
    overflow:hidden;
  }
  .nfe-hero--stacked .nfe-quote-copy{
    margin-bottom:14px!important;
  }
  .nfe-hero--stacked .nfe-quote-copy .nfe-quote-kicker{
    font-size:.67rem;
  }
  .nfe-hero--stacked .nfe-quote-card--full .nfe-quote-copy h2{
    margin-bottom:7px;
    font-size:1.42rem!important;
    line-height:1.13;
  }
  .nfe-hero--stacked .nfe-quote-copy p{
    max-width:100%;
    margin-bottom:0;
    font-size:.83rem!important;
    line-height:1.58;
    overflow-wrap:anywhere;
  }

  /* On mobile the registration UI is intentionally vertical. */
  .nfe-hero--stacked .nfe-vrm-form--horizontal{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    gap:9px!important;
  }
  .nfe-hero--stacked .nfe-vrm-form--horizontal>label{
    width:100%;
    margin:0 0 1px!important;
    font-size:.76rem;
  }
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large{
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr)!important;
    width:100%!important;
    height:60px!important;
    margin:0!important;
    border-radius:10px!important;
    overflow:hidden!important;
  }
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large .plate-gb{
    width:54px;
  }
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large input{
    display:block;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:60px!important;
    padding:0 8px!important;
    font-size:clamp(1.35rem,6.3vw,1.72rem)!important;
    line-height:60px!important;
    letter-spacing:.02em!important;
  }
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-vrm-submit{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:52px!important;
    min-height:52px!important;
    padding:0 16px!important;
    border-left:1px solid #fff!important;
    border-radius:10px!important;
    justify-content:center;
    gap:18px;
    font-size:.72rem!important;
  }

  .nfe-hero--stacked .nfe-quote-or{
    margin:12px 0!important;
  }
  .nfe-hero--stacked .nfe-manual-engine-trigger{
    grid-template-columns:34px minmax(0,1fr) 18px!important;
    width:100%!important;
    min-height:68px!important;
    padding:11px 12px!important;
    gap:10px!important;
  }
  .nfe-hero--stacked .nfe-manual-engine-trigger>span:nth-child(2){
    min-width:0;
  }
  .nfe-hero--stacked .nfe-manual-engine-trigger strong,
  .nfe-hero--stacked .nfe-manual-engine-trigger small{
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .nfe-hero--stacked .nfe-manual-engine-trigger strong{font-size:.76rem!important}
  .nfe-hero--stacked .nfe-manual-engine-trigger small{font-size:.66rem!important;line-height:1.42}

  .nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:13px!important;
    padding-top:13px!important;
  }
  .nfe-hero--stacked .nfe-quote-trust--icons.nfe-quote-trust--compact span{
    min-width:0!important;
    justify-content:flex-start!important;
    font-size:.67rem!important;
  }

  /* Keep the slider below the lookup and stop it widening the hero. */
  .nfe-hero--stacked .nfe-hero-model-showcase{
    width:100%!important;
    min-width:0!important;
    margin-top:14px!important;
  }
  .nfe-hero--stacked .nfe-model-slider-frame{
    width:100%!important;
    max-width:100%!important;
    aspect-ratio:4/3!important;
  }
}

@media (max-width:430px){
  .nfe-hero--stacked .nfe-hero-shell{width:calc(100% - 20px)!important}
  .nfe-hero--stacked h1,
  .nfe-hero--stacked .nfe-hero-intro>h2{font-size:1.78rem!important}
  .nfe-hero--stacked .nfe-quote-lookup-panel{padding:16px 12px 14px!important}
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large{grid-template-columns:50px minmax(0,1fr)!important}
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large .plate-gb{width:50px}
  .nfe-hero--stacked .nfe-vrm-form--horizontal .nfe-number-plate--large input{font-size:1.3rem!important}
}

/* ==========================================================
   NISSAN V16 — HOMEPAGE ALL-MODEL NAVIGATION
   Show every Nissan Model page openly; no collapsed "Other" list.
   ========================================================== */
.nfe-model-selector--all{
  position:relative;
  overflow:hidden;
  padding:74px 0 82px;
  background:
    radial-gradient(circle at 8% 10%,rgba(205,20,46,.055),transparent 26%),
    radial-gradient(circle at 92% 88%,rgba(0,113,133,.055),transparent 28%),
    linear-gradient(180deg,#f7f9fa 0%,#fff 100%);
}
.nfe-model-selector--all:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:3px;
  background:linear-gradient(90deg,#cf1736 0 34%,#dce3e7 34% 66%,#08758a 66% 100%);
}
.nfe-model-selector--all .nfe-model-title{
  max-width:780px;
  margin:0 auto 38px;
}
.nfe-model-selector--all .nfe-model-title>span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 13px;
  margin-bottom:10px;
  border:1px solid #c9dbe0;
  border-radius:999px;
  background:#f5fbfc;
  color:#0a6f82;
  font-size:10px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.nfe-model-selector--all .nfe-model-title h2{
  margin-bottom:10px;
  font-size:clamp(2.25rem,4vw,3.4rem);
  line-height:1.03;
  letter-spacing:-.045em;
}
.nfe-model-selector--all .nfe-model-title p{
  max-width:680px;
  margin-inline:auto;
  color:#687680;
  font-size:15px;
  line-height:1.7;
}
.nfe-model-grid--all{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.nfe-model-card--all{
  position:relative;
  min-width:0;
  min-height:190px;
  padding:20px;
  overflow:hidden;
  border:1px solid #dce4e8;
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 13px 34px rgba(23,36,45,.055);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.nfe-model-card--all:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:#cf1736;
  opacity:.9;
}
.nfe-model-card--all:nth-child(3n+2):before{background:#08758a}
.nfe-model-card--all:nth-child(3n):before{background:#d69a1f}
.nfe-model-card--all:hover{
  transform:translateY(-5px);
  border-color:#bccbd1;
  box-shadow:0 22px 45px rgba(23,36,45,.11);
}
.nfe-model-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:26px;
}
.nfe-model-card-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border:1px solid #d8e1e5;
  border-radius:11px;
  background:#f6f9fa;
  color:#6c7981;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}
.nfe-model-card-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#111a20;
  color:#fff;
  font-size:15px;
  transition:transform .2s ease,background .2s ease;
}
.nfe-model-card--all:hover .nfe-model-card-arrow{
  transform:translate(2px,-2px);
  background:#cf1736;
}
.nfe-model-card-copy{
  min-width:0;
  margin-bottom:20px;
}
.nfe-model-card--all .nfe-model-card-copy strong{
  display:block;
  margin:0 0 7px;
  color:#101b22;
  font-size:20px;
  line-height:1.15;
  letter-spacing:-.025em;
  text-transform:none;
}
.nfe-model-card--all .nfe-model-card-copy small{
  color:#74818a;
  font-size:12px;
  line-height:1.5;
}
.nfe-model-card--all .nfe-model-link{
  gap:12px;
  color:#26343c;
  font-size:10px;
  letter-spacing:.025em;
}
.nfe-model-card--all .nfe-model-link b{
  margin-left:auto;
}
/* This component no longer renders the legacy collapsed model list. */
.nfe-model-selector--all .nfe-more-models{display:none!important}

@media (max-width:1080px){
  .nfe-model-grid--all{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:820px){
  .nfe-model-selector--all{padding:58px 0 64px}
  .nfe-model-grid--all{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
  .nfe-model-card--all{min-height:176px}
}
@media (max-width:560px){
  .nfe-model-selector--all{padding:48px 0 52px}
  .nfe-model-selector--all .nfe-model-title{margin-bottom:26px}
  .nfe-model-selector--all .nfe-model-title h2{font-size:2.15rem}
  .nfe-model-selector--all .nfe-model-title p{font-size:13px;line-height:1.6}
  .nfe-model-grid--all{grid-template-columns:1fr;gap:11px}
  .nfe-model-card--all{
    min-height:154px;
    padding:17px 18px;
    border-radius:15px;
  }
  .nfe-model-card-top{margin-bottom:18px}
  .nfe-model-card--all .nfe-model-card-copy strong{font-size:18px}
}

/* ===== Nissan page-specific aggregate rating ===== */
.nfe-page-rating {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  font-size: .92rem;
  line-height: 1.35;
}
.nfe-page-rating__stars {
  color: #f5a623;
  letter-spacing: 2px;
  font-size: 1.02rem;
  text-shadow: 0 1px 0 rgba(120, 72, 0, .08);
}
.nfe-page-rating strong {
  color: #102f3c;
  font-weight: 800;
}
.nfe-page-rating > span:last-child {
  color: #5c6d78;
}
.nfe-page-rating--product {
  margin: -4px 0 14px;
  padding: 8px 12px;
  border: 1px solid #e4d8b8;
  border-radius: 999px;
  background: #fffaf0;
}
.nfe-page-rating--hero {
  margin-top: 10px;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  background: rgba(8,18,24,.58);
  backdrop-filter: blur(8px);
}
.nfe-page-rating--hero strong,
.nfe-page-rating--hero > span:last-child {
  color: #fff;
}
@media (max-width: 700px) {
  .nfe-page-rating {
    font-size: .84rem;
    gap: 6px;
  }
  .nfe-page-rating__stars {
    font-size: .94rem;
    letter-spacing: 1px;
  }
  .nfe-page-rating--product,
  .nfe-page-rating--hero {
    border-radius: 16px;
  }
}
