/*
Theme Name: NCB Auto Locksmith Premium
Theme URI: https://i-ncb.co.uk/
Author: NCB Auto Locksmith
Description: Premium automotive WordPress theme for NCB Auto Locksmith.
Version: 14.7
Requires at least: 6.2
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: ncb-auto-locksmith
*/
:root{--bg:#050b12;--bg2:#08111d;--panel:#0b1624;--panel2:#101f31;--line:#19334e;--blue:#0b86ff;--blue2:#18a7ff;--green:#23b84c;--white:#fff;--text:#eef5fc;--muted:#a8b7c8;--ink:#0c1520;--max:1220px;--radius:16px;--shadow:0 18px 55px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(var(--max),92%);margin:auto}.site-top{background:#03070c;border-bottom:1px solid #0d1c2b}.site-top .wrap{height:34px;display:flex;justify-content:flex-end;align-items:center;gap:24px;font-size:13px;color:#b7c4d2}.site-header{position:sticky;top:0;z-index:100;background:rgba(4,10,17,.96);backdrop-filter:blur(12px);border-bottom:1px solid #14273a}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:13px;min-width:max-content}.brand-logo{display:flex;align-items:center;gap:7px}.brand-ncb{font-weight:1000;font-size:42px;line-height:.8;letter-spacing:1px;color:#138dff;text-shadow:0 0 18px rgba(19,141,255,.25)}.brand-key{font-size:30px;filter:grayscale(1) brightness(2)}.brand-sub{display:block;font-size:11px;font-weight:900;letter-spacing:1.3px;color:#fff;margin-top:7px}.menu{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:900;text-transform:uppercase}.menu a{padding:29px 0;border-bottom:2px solid transparent}.menu a:hover{color:var(--blue2);border-bottom-color:var(--blue2)}.header-actions{display:flex;align-items:center;gap:12px}.phone-top{font-size:23px;font-weight:1000;white-space:nowrap}.phone-top:before{content:'☎';color:var(--blue);margin-right:7px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;padding:14px 20px;font-weight:1000;text-transform:uppercase;letter-spacing:.3px;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.btn-blue{background:linear-gradient(#1491ff,#066bce);color:white;box-shadow:0 10px 25px rgba(11,134,255,.22)}.btn-green{background:linear-gradient(#2ec85b,#159638);color:white}.btn-outline{border-color:#2b4a67;background:#091521}.hero{position:relative;min-height:620px;overflow:hidden;background:linear-gradient(90deg,#030911 0%,#06111d 42%,rgba(5,12,20,.35) 70%),url('assets/images/hero-car.jpg') right center/auto 100% no-repeat}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#050b12 100%);pointer-events:none}.hero .wrap{position:relative;z-index:2;padding:58px 0 42px}.hero-copy{max-width:660px}.kicker{font-size:13px;font-weight:1000;text-transform:uppercase;letter-spacing:1.8px;color:#72c2ff}.hero h1{font-size:clamp(52px,7.3vw,93px);line-height:.88;letter-spacing:-3px;margin:16px 0 18px;text-transform:uppercase;font-weight:1000}.hero h1 .blue{display:block;color:#128fff}.hero h2{font-size:25px;margin:0 0 18px;text-transform:uppercase}.trust-row{display:flex;flex-wrap:wrap;gap:19px;color:#eef7ff;font-size:14px;font-weight:800}.trust-row span:before{content:'✓';display:inline-grid;place-items:center;background:#0a85ff;color:white;width:18px;height:18px;border-radius:50%;margin-right:7px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0 18px}.hero-actions .btn{min-width:184px;font-size:17px}.hero-actions .small{display:block;font-size:12px;font-weight:700}.hero-location{color:#d0d9e4;font-weight:700}.hero-location:before{content:'●';color:#92a9bc;margin-right:9px}.section{padding:68px 0;border-top:1px solid #102439}.section-title{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:32px;text-align:center}.section-title:before,.section-title:after{content:'';height:2px;flex:1;background:linear-gradient(90deg,transparent,#117fc4)}.section-title:after{background:linear-gradient(90deg,#117fc4,transparent)}.section-title h2{font-size:26px;line-height:1;text-transform:uppercase;margin:0;white-space:nowrap;letter-spacing:.4px}.section-title h2 span{color:#0f91ff}.brands{display:grid;grid-template-columns:repeat(10,1fr);gap:15px}.brand-card{text-align:center;color:#dce7f1}.brand-badge{width:58px;height:58px;margin:0 auto 8px;border:2px solid #8fa5ba;border-radius:50%;display:grid;place-items:center;font-weight:1000;font-size:17px;background:radial-gradient(circle at 35% 30%,#25394b,#07111a 70%);box-shadow:inset 0 0 0 4px #07111a}.brand-card small{font-size:10px;font-weight:900;text-transform:uppercase}.many{text-align:center;color:#2da6ff;font-size:12px;font-weight:900;text-transform:uppercase;margin-top:14px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{position:relative;overflow:hidden;border:1px solid #35516b;border-radius:10px;background:linear-gradient(160deg,#14263a,#07111b);min-height:245px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 10px 25px rgba(0,0,0,.2)}.service-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 70% 10%,rgba(21,146,255,.26),transparent 33%)}.service-card>*{position:relative;z-index:1}.service-icon{width:49px;height:49px;border-radius:50%;display:grid;place-items:center;background:#0b85f7;margin-bottom:16px;font-size:23px}.service-card h3{margin:0 0 7px;text-transform:uppercase;font-size:21px}.service-card p{margin:0;color:#b7c6d6;font-size:14px}.why{background:linear-gradient(100deg,#091323,#0a1b31)}.why-grid{display:grid;grid-template-columns:1.15fr repeat(4,1fr);gap:18px;align-items:center}.why-intro h2{font-size:39px;line-height:1;margin:0;text-transform:uppercase}.why-intro span{color:#0c8fff}.why-item{display:flex;gap:12px;align-items:flex-start}.why-icon{flex:0 0 49px;width:49px;height:49px;border-radius:50%;border:4px solid #0a7ce5;display:grid;place-items:center;font-size:20px}.why-item h3{font-size:12px;text-transform:uppercase;margin:0 0 4px}.why-item p{font-size:11px;color:#b4c4d4;margin:0}.emergency{background:linear-gradient(90deg,#071220,#0a1726 55%,#07111a);padding:36px 0}.emergency-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.emergency h2{font-size:42px;line-height:1;margin:0;text-transform:uppercase}.emergency h2 span{display:block;color:#1291ff;font-size:27px;margin-top:8px}.checks{display:flex;gap:22px;flex-wrap:wrap;margin-top:18px}.checks span:before{content:'✓';color:#1cd569;margin-right:7px}.emergency-actions{display:grid;gap:10px;min-width:320px}.emergency-actions .btn{font-size:23px}.areas{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.area-card{min-height:132px;border:1px solid #314c66;border-radius:8px;overflow:hidden;background:linear-gradient(180deg,#173049,#08111a);display:flex;align-items:flex-end;justify-content:center;padding:14px;position:relative}.area-card:before{content:'🏙️';position:absolute;top:17px;font-size:40px;filter:grayscale(.7)}.area-card strong{font-size:12px;text-transform:uppercase;z-index:1}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.review{border:1px solid #29435b;border-radius:9px;padding:22px;background:#07111a}.stars{color:#26ce74;letter-spacing:2px;font-size:19px}.review p{color:#d7e1eb}.review small{font-weight:900}.review-placeholder{color:#8fa2b4;font-style:italic}.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.faq-list details{border:1px solid #29435b;border-radius:8px;background:#08131e;padding:17px}.faq-list summary{cursor:pointer;font-weight:900}.faq-list p{color:#aebdcc}.contact{background:linear-gradient(135deg,#06101a,#0d2032)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px}.contact-info{border:1px solid #29435b;border-radius:12px;padding:25px;background:#07111b}.contact-info h2{text-transform:uppercase;margin-top:0}.contact-row{padding:13px 0;border-bottom:1px solid #1e3347}.contact-row:last-child{border:0}.contact-row small{display:block;color:#8298ab}.form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form .full{grid-column:1/-1}.form input,.form select,.form textarea{width:100%;padding:14px;border-radius:7px;border:1px solid #31506a;background:#06111b;color:#fff;font:inherit}.form textarea{min-height:130px}.form button{cursor:pointer}.site-footer{background:#03070c;border-top:1px solid #173149;padding:40px 0 95px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:35px}.footer-grid h3{font-size:13px;text-transform:uppercase;color:#1b9cff}.footer-grid p,.footer-grid a{font-size:13px;color:#b5c3d0}.bottom-bar{position:fixed;left:0;right:0;bottom:0;height:55px;background:linear-gradient(90deg,#0867c5,#0e8bf3);z-index:100;display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 -7px 25px rgba(0,0,0,.3)}.bottom-bar a{display:flex;align-items:center;justify-content:center;font-weight:1000;border-right:1px solid rgba(255,255,255,.18)}.page-hero{padding:75px 0;background:linear-gradient(120deg,#06101a,#10263d);border-bottom:1px solid #214360}.page-hero h1{font-size:58px;text-transform:uppercase;margin:0}.page-hero p{color:#b5c6d7;font-size:18px;max-width:720px}.content{background:#fff;color:#101820;padding:60px 0}.content h2{color:#073762}.content a{color:#086fcf}.notice{padding:12px 15px;border-radius:7px;background:#fff1bf;color:#5d4500;margin:16px 0}
@media(max-width:1100px){.menu{display:none}.brands{grid-template-columns:repeat(5,1fr)}.why-grid{grid-template-columns:1fr 1fr 1fr}.why-intro{grid-column:1/-1}.areas{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.site-top{display:none}.nav{min-height:68px}.brand-ncb{font-size:34px}.phone-top{display:none}.header-actions .btn{padding:10px 12px;font-size:11px}.hero{min-height:630px;background:linear-gradient(180deg,rgba(3,9,17,.22),#030911 55%),url('assets/images/hero-car.jpg') 65% top/auto 52% no-repeat}.hero .wrap{padding-top:250px}.hero h1{font-size:52px}.hero h2{font-size:18px}.trust-row{gap:10px;font-size:12px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .btn{min-width:0;padding:13px 10px;font-size:14px}.section{padding:50px 0}.section-title h2{font-size:19px}.brands{grid-template-columns:repeat(3,1fr)}.services,.reviews,.contact-grid{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr}.emergency-grid{grid-template-columns:1fr}.emergency h2{font-size:32px}.emergency-actions{min-width:0}.areas{grid-template-columns:repeat(2,1fr)}.faq-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.bottom-bar{height:58px}.bottom-bar a{font-size:11px;text-align:center}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.site-footer{padding-bottom:90px}}

/* Vehicle manufacturer logo upgrade */
.vehicle-makes{background:linear-gradient(180deg,#050b12,#07121d)}
.vehicle-intro{max-width:760px;margin:-10px auto 30px;text-align:center;color:#aebdcc;font-size:15px}
.logo-grid{grid-template-columns:repeat(11,1fr);gap:12px 10px}
.logo-card{min-height:112px;padding:12px 5px;border:1px solid transparent;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.2s}
.logo-card:hover{background:#0a1825;border-color:#214a6b;transform:translateY(-2px)}
.logo-wrap{width:64px;height:58px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.logo-wrap img{width:54px;height:54px;object-fit:contain;filter:grayscale(1) invert(1);opacity:.92}
.logo-card:hover .logo-wrap img{filter:none;opacity:1}
.logo-card small{font-size:9px;line-height:1.2;min-height:22px;display:flex;align-items:center;justify-content:center}
.trademark-note{max-width:930px;margin:20px auto 0;text-align:center;color:#64798b;font-size:10px;line-height:1.5}
@media(max-width:1050px){.logo-grid{grid-template-columns:repeat(6,1fr)}}
@media(max-width:650px){.logo-grid{grid-template-columns:repeat(4,1fr);gap:8px}.logo-card{min-height:98px}.logo-wrap{width:52px;height:48px}.logo-wrap img{width:45px;height:45px}.vehicle-intro{font-size:13px}.trademark-note{font-size:9px}}
/* v4 SEO / conversion upgrades */
.page-hero{padding:76px 0;background:linear-gradient(135deg,#07111f,#0c2343);color:#fff}.page-hero h1{font-size:clamp(42px,6vw,68px);line-height:1.02;margin:10px 0 16px;letter-spacing:-2px}.page-hero p{max-width:780px;color:#cbd8e8;font-size:18px}.content-wrap{max-width:930px}.prose{font-size:18px}.prose .lead{font-size:22px;color:#2a3648}.prose h2{font-size:32px;line-height:1.15;margin:40px 0 12px}.content-cta{margin-top:44px;padding:30px;border-radius:20px;background:#0c1b31;color:#fff}.content-cta h2{margin-top:0;color:#fff}.link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}.link-grid a{padding:18px;border:1px solid #dfe6ef;border-radius:14px;background:#fff;font-weight:800;color:#0b1c34;box-shadow:0 6px 20px rgba(10,25,50,.05)}.card-link{display:inline-block;margin-top:16px;color:#1683ff;font-weight:800}.area-card{display:flex!important;flex-direction:column;gap:2px}.area-card span{font-size:12px;color:#6d7888}.center-link{text-align:center;margin-top:18px}.center-link a{color:#1683ff;font-weight:800}.review-launch{background:#f4f7fb}.review-launch-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}.section-title.left{text-align:left}.review-action{display:flex;justify-content:flex-end}.review-setup{padding:24px;border-radius:18px;background:#fff;border:1px solid #dfe6ef;box-shadow:0 10px 30px rgba(15,30,55,.06)}.review-setup strong,.review-setup span{display:block}.review-setup span{margin-top:6px;color:#6d7888;font-size:14px}.upload{padding:15px;border:1px dashed #aebbd0;border-radius:14px;background:#f8fafc}.upload strong,.upload span{display:block}.upload span{font-size:12px;color:#6d7888;margin:4px 0 10px}.form-privacy{font-size:12px;color:#6d7888;margin:0}.form-privacy a{text-decoration:underline}.hp{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}.logo-card .logo-wrap{min-height:62px}.logo-card .logo-wrap img{max-width:62px!important;max-height:42px!important;width:auto!important;height:auto!important}.trademark-note{max-width:900px;margin-left:auto;margin-right:auto}
@media(max-width:800px){.review-launch-grid{grid-template-columns:1fr}.review-action{justify-content:flex-start}.link-grid{grid-template-columns:1fr}.page-hero{padding:56px 0}.prose{font-size:17px}}

/* v5: high-contrast manufacturer logo cards */
.vehicle-makes{background:linear-gradient(180deg,#050b12,#07121d)}
.logo-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.logo-card{min-height:118px;padding:14px 10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#f8fafc;color:#0a1420;box-shadow:0 8px 22px rgba(0,0,0,.2);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.2s}
.logo-card:hover{background:#fff;border-color:#7fc4ff;transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.28)}
.logo-wrap{width:78px;height:54px;display:flex;align-items:center;justify-content:center;margin:0 auto 9px}
.logo-wrap img,.logo-card .logo-wrap img{width:auto!important;height:auto!important;max-width:56px!important;max-height:38px!important;object-fit:contain;filter:none!important;opacity:1!important}
.logo-card small{color:#18202a;font-size:9px;font-weight:1000;letter-spacing:.25px;text-transform:uppercase;min-height:18px}
.vehicle-intro,.trademark-note{color:#9fb0c0;text-align:center}
@media(max-width:1050px){.logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.logo-card{min-height:102px;padding:10px 6px}.logo-wrap{width:68px;height:48px}.logo-wrap img,.logo-card .logo-wrap img{max-width:50px!important;max-height:34px!important}}


/* v6: retina-sharp vector manufacturer marks */
.logo-card{min-height:116px;background:linear-gradient(180deg,#ffffff,#f4f7fa);border:1px solid #d9e0e7;box-shadow:0 9px 25px rgba(0,0,0,.18)}
.logo-card:hover{background:#fff;border-color:#68b9ff;box-shadow:0 14px 32px rgba(0,0,0,.24)}
.logo-card .logo-wrap{width:88px;height:58px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center}
.brand-vector{display:block;width:64px;height:42px;background:var(--brand);-webkit-mask-image:var(--brand-logo);mask-image:var(--brand-logo);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
.logo-card small{color:#111b27;font-size:9px;font-weight:900;letter-spacing:.28px;text-transform:uppercase}
@media(max-width:650px){.logo-card{min-height:100px}.logo-card .logo-wrap{width:72px;height:50px}.brand-vector{width:54px;height:36px}}

/* v7: bundled local SVG manufacturer logos */
.brand-vector{display:none!important}
.logo-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}
.logo-card .logo-wrap{width:92px;height:58px;margin:0 auto 8px}
.logo-card .logo-wrap img{display:block!important;width:auto!important;height:auto!important;max-width:68px!important;max-height:42px!important;object-fit:contain!important;filter:none!important;opacity:1!important}
@media(max-width:1050px){.logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.logo-card .logo-wrap{width:72px;height:48px}.logo-card .logo-wrap img{max-width:54px!important;max-height:34px!important}}

/* v8: Areas We Cover readability fix — keep icon above town name */
.area-card{
  min-height:150px;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:18px 14px!important;
  text-align:center!important;
}
.area-card:before{
  position:static!important;
  top:auto!important;
  display:block!important;
  font-size:32px!important;
  line-height:1!important;
  margin:0 0 8px!important;
  filter:grayscale(.55)!important;
}
.area-card strong{
  display:block!important;
  position:static!important;
  z-index:auto!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.2!important;
  letter-spacing:.2px!important;
}
.area-card span{
  display:block!important;
  margin:0!important;
  font-size:11px!important;
  line-height:1.3!important;
  color:#9fb0c1!important;
}
@media(max-width:760px){
  .area-card{min-height:142px!important;padding:16px 10px!important}
  .area-card:before{font-size:29px!important;margin-bottom:7px!important}
  .area-card strong{font-size:12px!important}
  .area-card span{font-size:10px!important}
}

/* v12: real Northampton jobs gallery */
.ncb-jobs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.ncb-job-card{margin:0;overflow:hidden;border-radius:16px;background:#fff;color:#1d2939;box-shadow:0 7px 24px rgba(0,0,0,.10)}
.ncb-job-card img{display:block;width:100%;height:230px;object-fit:cover}
.ncb-job-card figcaption{padding:16px;display:flex;flex-direction:column;gap:6px}
.ncb-job-card figcaption strong{font-size:1.05rem}
.ncb-job-card figcaption span{font-size:.94rem;line-height:1.5}
.ncb-jobs-note{font-size:.9rem;opacity:.85;margin:12px 0 24px}
@media(max-width:850px){.ncb-jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ncb-jobs-grid{grid-template-columns:1fr}.ncb-job-card img{height:240px}}

/* v13: editorial job photography with consistent crops and spacious cards */
.ncb-local-jobs{background:linear-gradient(160deg,#f2f6fa 0%,#e9f0f6 100%);color:#172638}
.ncb-local-jobs .section-head{max-width:800px}
.ncb-jobs-editorial{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch;margin:34px 0 20px}
.ncb-jobs-editorial .ncb-job-card{border:1px solid rgba(22,47,72,.09);border-radius:18px;box-shadow:0 10px 28px rgba(18,40,60,.09);display:flex;flex-direction:column}
.ncb-jobs-editorial .ncb-job-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:stretch}
.ncb-jobs-editorial .ncb-job-image{overflow:hidden;background:#dce6ef;min-height:230px}
.ncb-jobs-editorial .ncb-job-card img{width:100%;height:250px;object-fit:cover;object-position:center;transition:transform .3s ease}
.ncb-jobs-editorial .ncb-job-card:first-child img{height:100%;min-height:330px}
.ncb-jobs-editorial .ncb-job-card:hover img{transform:scale(1.025)}
.ncb-jobs-editorial .ncb-job-card figcaption{padding:24px;gap:9px;justify-content:center}
.ncb-jobs-editorial .ncb-job-card figcaption strong{font-size:1.15rem;line-height:1.3}
.ncb-jobs-editorial .ncb-job-card figcaption span{color:#526375}
.ncb-home-work{background:#0e1b2b;color:#fff}
.ncb-work-intro{max-width:760px;margin:0 auto 26px;text-align:center;color:#b8c8d9;line-height:1.7}
.ncb-home-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ncb-home-work-card{display:flex;flex-direction:column;overflow:hidden;border-radius:16px;background:#172b42;text-decoration:none;color:#fff;border:1px solid #31445a;transition:transform .2s ease}
.ncb-home-work-card:hover{transform:translateY(-3px)}
.ncb-home-work-card img{width:100%;height:215px;object-fit:cover;display:block}
.ncb-home-work-card span{display:flex;flex-direction:column;padding:18px;font-weight:700;gap:6px}
.ncb-home-work-card small{font-size:.85rem;font-weight:400;color:#93c5fd}
.ncb-work-link{text-align:center;margin:28px 0 0}
@media(max-width:760px){.ncb-jobs-editorial .ncb-job-card:first-child{display:flex;grid-column:1/-1}.ncb-jobs-editorial .ncb-job-card:first-child img{height:260px;min-height:0}.ncb-home-work-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ncb-jobs-editorial,.ncb-home-work-grid{grid-template-columns:1fr}.ncb-jobs-editorial .ncb-job-card img,.ncb-home-work-card img{height:225px}.ncb-jobs-editorial .ncb-job-card figcaption{padding:18px}}
@media(prefers-reduced-motion:reduce){.ncb-jobs-editorial .ncb-job-card img,.ncb-home-work-card{transition:none}}

/* V14 town photo galleries and editable page content */
.ncb-local-jobs .ncb-jobs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:24px}
.ncb-local-jobs .ncb-job-card{margin:0;background:#0b1b2b;border:1px solid #26384a;border-radius:14px;overflow:hidden}
.ncb-local-jobs .ncb-job-image{aspect-ratio:4/3;overflow:hidden;background:#102237}
.ncb-local-jobs .ncb-job-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.ncb-local-jobs .ncb-job-card a:hover img{transform:scale(1.035)}
.ncb-local-jobs .ncb-job-card figcaption{padding:14px;display:flex;flex-direction:column;gap:6px}
.ncb-local-jobs .ncb-job-card figcaption span{font-size:13px;opacity:.8}
.ncb-local-jobs .ncb-jobs-note{margin-top:20px}
.ncb-editor-content-inner{max-width:1000px;margin:auto}
.ncb-editor-content-inner img{max-width:100%;height:auto}

/* v14 Google Images-inspired compact town galleries */
.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}
.ncb-local-jobs .ncb-job-card{border-radius:9px;box-shadow:none;min-width:0}
.ncb-local-jobs .ncb-job-image{aspect-ratio:4/3}
.ncb-local-jobs .ncb-jobs-editorial .ncb-job-card img{width:100%;height:100%;object-fit:cover}
.ncb-local-jobs .ncb-jobs-editorial .ncb-job-card figcaption{padding:8px 10px;font-size:12px;line-height:1.35}
.ncb-local-jobs .ncb-jobs-editorial .ncb-job-card figcaption span{display:none}
@media(max-width:900px){.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ncb-local-jobs .ncb-jobs-editorial .ncb-job-card img{height:100%}}

/* v14.2: isolated town gallery layout; overrides older editorial card rules */
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial {
 display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:12px!important; align-items:start!important; margin:24px 0!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial > figure.ncb-job-card,
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial > figure.ncb-job-card:first-child {
 display:block!important; grid-column:auto!important; grid-row:auto!important;
 width:auto!important; min-width:0!important; margin:0!important; padding:0!important;
 border-radius:10px!important; overflow:hidden!important;
 background:#101f31!important; box-shadow:none!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial > figure.ncb-job-card > a {
 display:block!important; width:100%!important; text-decoration:none!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial .ncb-job-image {
 display:block!important; width:100%!important; height:auto!important; min-height:0!important;
 aspect-ratio:4 / 3!important; overflow:hidden!important; background:#15283b!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial .ncb-job-image img,
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial > figure.ncb-job-card:first-child img {
 display:block!important; width:100%!important; height:100%!important; min-height:0!important;
 max-height:none!important; aspect-ratio:4 / 3!important; object-fit:cover!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial figcaption {
 display:block!important; padding:9px 10px!important; margin:0!important;
 font-size:12px!important; line-height:1.4!important; color:#fff!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial figcaption strong {
 display:block!important; font-size:12px!important; font-weight:600!important; line-height:1.4!important;
}
section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial figcaption span {display:none!important}
@media(max-width:900px){section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial {grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:600px){section.ncb-local-jobs .ncb-jobs-grid.ncb-jobs-editorial {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}}

/* v14.6: clear, accessible accordion panels on NCB SEO landing pages */
.ncb-faq-panels{display:grid;grid-template-columns:1fr;gap:12px;max-width:960px}
.ncb-faq-panels details{border:1px solid #274763;border-radius:11px;background:#0b1a2a;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.12)}
.ncb-faq-panels details[open]{border-color:#247bd0}
.ncb-faq-panels summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:19px 20px;color:#fff;font-size:17px;line-height:1.4;font-weight:800}
.ncb-faq-panels summary::-webkit-details-marker{display:none}
.ncb-faq-panels summary::after{content:'+';display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:7px;background:#096ac4;color:#fff;font-size:25px;font-weight:600;line-height:1}
.ncb-faq-panels details[open] summary::after{content:'−'}
.ncb-faq-panels summary:hover{background:#122a43}
.ncb-faq-panels summary:focus-visible{outline:3px solid #70bdff;outline-offset:-3px}
.ncb-faq-panels details p{margin:0;padding:16px 20px 20px;border-top:1px solid #274763;color:#d9e6f2;line-height:1.65;font-size:15px}
@media(max-width:760px){.ncb-faq-panels summary{font-size:15px;padding:15px}.ncb-faq-panels details p{padding:14px 15px 18px}}
