/* NWM Driving School - portal theme (2026-10-20) */
:root{
  --nwm-navy:#173446; --nwm-navy-2:#1f4459; --nwm-navy-3:#0f2533;
  --nwm-yellow:#ffb025; --nwm-yellow-2:#ffc24f; --nwm-green:#1e7b3c; --nwm-red:#e4252b;
  --nwm-ink:#173446; --nwm-muted:#5f6b7a; --nwm-line:#e6e9ee; --nwm-bg:#f5f7fa; --nwm-white:#fff;
  --nwm-radius:16px; --nwm-shadow:0 10px 30px rgba(23,52,70,.08); --nwm-head:72px;
  --nwm-font:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif; --nwm-display:'Plus Jakarta Sans','Inter',system-ui,sans-serif;
}
html{scroll-behavior:smooth; scroll-padding-top:calc(var(--nwm-head) + 12px);}
body{font-family:var(--nwm-font); color:var(--nwm-ink); -webkit-font-smoothing:antialiased; overflow-x:hidden;}
.nwm-container{width:100%; max-width:1200px; margin:0 auto; padding:0 20px;}
@media (min-width:768px){.nwm-container{padding:0 32px;}}

/* ---------- Buttons ---------- */
.nwm-btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:50px; padding:0 24px; border-radius:12px; font-family:var(--nwm-font); font-size:16px; font-weight:600; line-height:1; text-decoration:none!important; border:2px solid transparent; cursor:pointer; transition:transform .15s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease; white-space:nowrap;}
.nwm-btn:hover{transform:translateY(-2px);}
.nwm-btn:focus-visible{outline:3px solid var(--nwm-yellow); outline-offset:3px;}
.nwm-btn-primary{background:var(--nwm-yellow); color:var(--nwm-navy)!important; box-shadow:0 8px 20px rgba(255,176,37,.35);}
.nwm-btn-primary:hover{background:var(--nwm-yellow-2); box-shadow:0 12px 26px rgba(255,176,37,.45);}
.nwm-btn-ghost{background:rgba(255,255,255,.06); color:#fff!important; border-color:rgba(255,255,255,.35);}
.nwm-btn-ghost:hover{border-color:#fff; background:rgba(255,255,255,.12);}
.nwm-btn-outline{background:#fff; color:var(--nwm-navy)!important; border-color:var(--nwm-line);}
.nwm-btn-outline:hover{border-color:var(--nwm-navy);}
.nwm-btn-navy{background:var(--nwm-navy); color:#fff!important;}
.nwm-btn-navy:hover{background:var(--nwm-navy-2);}
.nwm-btn-sm{min-height:42px; padding:0 18px; font-size:15px; border-radius:10px;}
.nwm-btn-block{width:100%;}

/* ---------- Animated logo ---------- */
.nwm-logo{display:inline-flex; align-items:center; text-decoration:none!important; line-height:0;}
.nwm-logo svg{height:52px; width:auto; display:block; overflow:visible;}
.nwm-logo .lg-circle{transform-box:fill-box; transform-origin:center; animation:nwmPop .6s cubic-bezier(.34,1.56,.64,1) both;}
.nwm-logo .lg-c2{animation-delay:.12s;} .nwm-logo .lg-c3{animation-delay:.24s;}
.nwm-logo .lg-dash{animation:nwmDash 1.2s linear infinite;}
.nwm-logo .lg-car{animation:nwmDrive 7s cubic-bezier(.45,.05,.55,.95) infinite;}
.nwm-logo .lg-wheel{transform-box:fill-box; transform-origin:center; animation:nwmSpin .5s linear infinite;}
.nwm-logo:hover .lg-circle{animation:nwmBounce .5s ease both;}
.nwm-logo:hover .lg-c2{animation-delay:.08s;} .nwm-logo:hover .lg-c3{animation-delay:.16s;}
@keyframes nwmPop{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}
@keyframes nwmBounce{0%,100%{transform:translateY(0)}40%{transform:translateY(-5px)}}
@keyframes nwmDash{to{stroke-dashoffset:-16}}
@keyframes nwmDrive{0%{transform:translateX(-40px)}45%{transform:translateX(250px)}45.01%{transform:translateX(-40px)}100%{transform:translateX(-40px)}}
@keyframes nwmSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.nwm-logo *{animation:none!important}}

/* ---------- Header ---------- */
.nwm-header{position:sticky; top:0; z-index:1000; background:rgba(23,52,70,.97); backdrop-filter:saturate(140%) blur(8px); -webkit-backdrop-filter:saturate(140%) blur(8px); box-shadow:0 1px 0 rgba(255,255,255,.06); transition:box-shadow .2s;}
.nwm-header.is-scrolled{box-shadow:0 8px 24px rgba(0,0,0,.18);}
.nwm-header-inner{display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:var(--nwm-head);}
.nwm-nav{display:none; align-items:center; gap:4px;}
.nwm-navlink{color:rgba(255,255,255,.85)!important; text-decoration:none!important; font-weight:500; font-size:15px; padding:10px 14px; border-radius:10px; transition:background .2s,color .2s; position:relative;}
.nwm-navlink:hover{color:#fff!important; background:rgba(255,255,255,.08);}
.nwm-navlink.is-active{color:var(--nwm-yellow)!important;}
.nwm-header-actions{display:none; align-items:center; gap:10px;}
.nwm-burger{display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:12px; border:1px solid rgba(255,255,255,.25); background:transparent; color:var(--nwm-yellow); font-size:20px; cursor:pointer;}
.nwm-mobile{position:fixed; inset:0; z-index:1100; pointer-events:none;}
.nwm-mobile-backdrop{position:absolute; inset:0; background:rgba(10,24,34,.55); opacity:0; transition:opacity .25s;}
.nwm-mobile-panel{position:absolute; top:0; right:0; bottom:0; width:min(86vw,340px); background:var(--nwm-navy); color:#fff; padding:20px; display:flex; flex-direction:column; gap:6px; transform:translateX(100%); transition:transform .3s cubic-bezier(.2,.8,.2,1); box-shadow:-10px 0 30px rgba(0,0,0,.25); overflow-y:auto;}
.nwm-mobile.is-open{pointer-events:auto;}
.nwm-mobile.is-open .nwm-mobile-backdrop{opacity:1;}
.nwm-mobile.is-open .nwm-mobile-panel{transform:none;}
.nwm-mobile-top{display:flex; align-items:center; justify-content:space-between; margin-bottom:14px;}
.nwm-mobile-close{width:42px; height:42px; border-radius:50%; border:0; background:rgba(255,255,255,.1); color:#fff; font-size:18px; cursor:pointer;}
.nwm-mobile .nwm-navlink{display:block; font-size:17px; padding:14px 12px; border-bottom:1px solid rgba(255,255,255,.07); border-radius:0;}
.nwm-mobile-cta{margin-top:auto; display:grid; gap:10px; padding-top:18px;}
@media (min-width:992px){
  :root{--nwm-head:84px;}
  .nwm-nav,.nwm-header-actions{display:flex;}
  .nwm-burger{display:none;}
  .nwm-logo svg{height:58px;}
}

/* ---------- Section basics ---------- */
.nwm-section{padding:72px 0;}
@media (max-width:767.98px){.nwm-section{padding:52px 0;}}
.nwm-section-alt{background:var(--nwm-bg);}
.nwm-eyebrow{display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--nwm-green); margin:0 0 10px;}
.nwm-eyebrow::before{content:""; width:22px; height:3px; border-radius:2px; background:linear-gradient(90deg,var(--nwm-green) 33%,var(--nwm-yellow) 33% 66%,var(--nwm-red) 66%);}
.nwm-title{font-family:var(--nwm-display); font-size:clamp(26px,3.4vw,40px); line-height:1.15; font-weight:800; color:var(--nwm-navy); margin:0 0 14px; letter-spacing:-.01em;}
.nwm-lead{font-size:clamp(15px,1.4vw,17px); line-height:1.7; color:var(--nwm-muted); margin:0;}
.nwm-head-center{text-align:center; max-width:680px; margin:0 auto 36px;}
.nwm-head-center .nwm-eyebrow{justify-content:center;}
.nwm-stripe{display:flex; height:5px;} .nwm-stripe span{flex:1;}
.nwm-stripe span:nth-child(1){background:var(--nwm-green);} .nwm-stripe span:nth-child(2){background:var(--nwm-yellow);} .nwm-stripe span:nth-child(3){background:var(--nwm-red);}
.nwm-card{background:#fff; border:1px solid var(--nwm-line); border-radius:var(--nwm-radius); box-shadow:var(--nwm-shadow);}
.nwm-reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease;}
.nwm-reveal.is-in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){.nwm-reveal{opacity:1; transform:none;}}

/* ---------- Hero ---------- */
.nwm-hero{position:relative; color:#fff; background:var(--nwm-navy) center/cover no-repeat; overflow:hidden;}
.nwm-hero::before{content:""; position:absolute; inset:0; background:linear-gradient(100deg, rgba(15,37,51,.96) 0%, rgba(23,52,70,.88) 45%, rgba(23,52,70,.45) 100%);}
.nwm-hero-inner{position:relative; z-index:1; padding:72px 0 96px; max-width:640px;}
.nwm-hero-badge{display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border-radius:999px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); font-size:14px; font-weight:500; margin-bottom:20px;}
.nwm-hero-badge i{color:var(--nwm-yellow);}
.nwm-hero h1{font-family:var(--nwm-display); color:#fff; font-size:clamp(34px,5.6vw,60px); line-height:1.06; font-weight:800; letter-spacing:-.02em; margin:0 0 18px;}
.nwm-hero h1 em{font-style:normal; color:var(--nwm-yellow);}
.nwm-hero p{color:rgba(255,255,255,.82); font-size:clamp(15px,1.5vw,18px); line-height:1.65; margin:0 0 28px;}
.nwm-hero-ctas{display:flex; flex-wrap:wrap; gap:12px;}
.nwm-hero-facts{display:flex; flex-wrap:wrap; gap:22px; margin-top:34px; padding-top:24px; border-top:1px solid rgba(255,255,255,.14);}
.nwm-hero-fact strong{display:block; font-family:var(--nwm-display); font-size:24px; color:#fff; line-height:1.1;}
.nwm-hero-fact span{font-size:13px; color:rgba(255,255,255,.7);}
.nwm-road{position:absolute; left:0; right:0; bottom:0; height:44px; z-index:1; background:var(--nwm-navy-3); overflow:hidden;}
.nwm-road::before{content:""; position:absolute; left:0; right:0; top:50%; height:3px; margin-top:-1.5px; background:repeating-linear-gradient(90deg,var(--nwm-yellow) 0 26px,transparent 26px 52px); animation:nwmRoad 1s linear infinite;}
.nwm-road-car{position:absolute; bottom:6px; left:0; width:70px; animation:nwmRoadCar 12s linear infinite;}
@keyframes nwmRoad{to{background-position:-52px 0}}
@keyframes nwmRoadCar{from{transform:translateX(-90px)}to{transform:translateX(calc(100vw + 20px))}}
@media (max-width:767.98px){
  .nwm-hero::before{background:linear-gradient(180deg, rgba(15,37,51,.9) 0%, rgba(23,52,70,.88) 100%);}
  .nwm-hero-inner{padding:48px 0 84px;}
  .nwm-hero-ctas .nwm-btn{flex:1 1 100%;}
  .nwm-hero-facts{gap:16px 26px;}
}
@media (prefers-reduced-motion:reduce){.nwm-road::before,.nwm-road-car{animation:none}}

/* ---------- About ---------- */
.nwm-about-grid{display:grid; gap:40px; align-items:center;}
@media (min-width:992px){.nwm-about-grid{grid-template-columns:1.05fr 1fr; gap:64px;}}
.nwm-checks{list-style:none; padding:0; margin:24px 0 28px; display:grid; gap:14px;}
.nwm-checks li{display:flex; gap:12px; align-items:flex-start; font-size:16px; line-height:1.55; color:var(--nwm-ink);}
.nwm-checks li::before{content:"\f00c"; font-family:"Font Awesome 6 Free"; font-weight:900; flex:0 0 28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:12px; color:#fff; background:var(--nwm-green); margin-top:-1px;}
.nwm-checks li:nth-child(2)::before{background:var(--nwm-yellow); color:var(--nwm-navy);}
.nwm-checks li:nth-child(3)::before{background:var(--nwm-red);}
.nwm-about-media{position:relative; padding:0 0 26px 0;}
.nwm-about-media img{width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:20px; display:block; box-shadow:var(--nwm-shadow);}
.nwm-about-exp{position:absolute; left:-10px; bottom:0; background:var(--nwm-yellow); color:var(--nwm-navy); border-radius:16px; padding:16px 20px; box-shadow:0 12px 28px rgba(255,176,37,.35);}
.nwm-about-exp strong{display:block; font-family:var(--nwm-display); font-size:30px; line-height:1;}
.nwm-about-exp span{font-size:13px; font-weight:600;}
@media (max-width:575.98px){.nwm-about-exp{left:12px;}}

/* ---------- Packages ---------- */
.nwm-tabs{display:flex; gap:8px; overflow-x:auto; padding:4px 20px 12px; margin:0 -20px 18px; scrollbar-width:none; -webkit-overflow-scrolling:touch; scroll-snap-type:x proximity;}
.nwm-tabs::-webkit-scrollbar{display:none;}
@media (min-width:992px){.nwm-tabs{flex-wrap:wrap; justify-content:center; overflow:visible; margin:0 0 28px; padding:0;}}
.nwm-tab{flex:0 0 auto; scroll-snap-align:start; border:1px solid var(--nwm-line); background:#fff; color:var(--nwm-navy); font-weight:600; font-size:14px; padding:11px 18px; border-radius:999px; cursor:pointer; transition:all .2s; white-space:nowrap; font-family:var(--nwm-font);}
.nwm-tab:hover{border-color:var(--nwm-navy);}
.nwm-tab.is-active{background:var(--nwm-navy); border-color:var(--nwm-navy); color:#fff; box-shadow:0 6px 16px rgba(23,52,70,.2);}
.nwm-pane{display:none;} .nwm-pane.is-active{display:block; animation:nwmFade .35s ease;}
@keyframes nwmFade{from{opacity:0; transform:translateY(8px)}to{opacity:1; transform:none}}
.nwm-pkg-grid{display:grid; gap:20px; grid-template-columns:1fr;}
@media (min-width:640px){.nwm-pkg-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1024px){.nwm-pkg-grid{grid-template-columns:repeat(3,1fr); gap:24px;}}
.nwm-pkg-card{display:flex; flex-direction:column; overflow:hidden; transition:transform .2s, box-shadow .2s; height:100%;}
.nwm-pkg-card:hover{transform:translateY(-4px); box-shadow:0 18px 40px rgba(23,52,70,.14);}
.nwm-pkg-img{position:relative; display:block; aspect-ratio:16/10; background:var(--nwm-bg); overflow:hidden;}
.nwm-pkg-img img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s;}
.nwm-pkg-card:hover .nwm-pkg-img img{transform:scale(1.04);}
.nwm-pkg-price{position:absolute; left:14px; bottom:14px; background:var(--nwm-yellow); color:var(--nwm-navy); font-weight:800; font-size:17px; padding:7px 14px; border-radius:10px; box-shadow:0 6px 14px rgba(0,0,0,.18);}
.nwm-pkg-body{padding:20px; display:flex; flex-direction:column; flex:1;}
.nwm-pkg-title{font-family:var(--nwm-display); font-size:19px; line-height:1.3; font-weight:700; color:var(--nwm-navy)!important; text-decoration:none!important; margin:0 0 8px; display:block;}
.nwm-pkg-title:hover{color:var(--nwm-green)!important;}
.nwm-pkg-text{font-size:14.5px; line-height:1.6; color:var(--nwm-muted); margin:0 0 16px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;}
.nwm-pkg-meta{display:flex; align-items:center; gap:10px; margin:0 0 16px; font-size:13.5px; color:var(--nwm-muted);}
.nwm-avatars{display:flex;}
.nwm-avatar-sm{width:30px; height:30px; border-radius:50%; background:var(--nwm-navy); color:var(--nwm-yellow); font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center; border:2px solid #fff; margin-left:-8px; position:relative; overflow:hidden;}
.nwm-avatar-sm:first-child{margin-left:0;}
.nwm-avatar-sm img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.nwm-pkg-actions{margin-top:auto; display:grid; grid-template-columns:1fr 1fr; gap:10px;}
.nwm-pkg-actions .nwm-btn{min-height:44px; padding:0 12px; font-size:14.5px;}
.nwm-empty{text-align:center; color:var(--nwm-muted); padding:30px;}

/* ---------- FAQ ---------- */
.nwm-faq{max-width:820px; margin:0 auto; display:grid; gap:12px;}
.nwm-faq details{background:#fff; border:1px solid var(--nwm-line); border-radius:14px; padding:0 20px;}
.nwm-faq summary{cursor:pointer; list-style:none; padding:18px 0; font-weight:600; color:var(--nwm-navy); display:flex; justify-content:space-between; gap:12px;}
.nwm-faq summary::-webkit-details-marker{display:none;}
.nwm-faq summary::after{content:"+"; font-size:22px; line-height:1; color:var(--nwm-green);}
.nwm-faq details[open] summary::after{content:"\2212";}
.nwm-faq details p{margin:0 0 18px; color:var(--nwm-muted); line-height:1.65;}

/* ---------- Gallery / instructors / testimonials ---------- */
.nwm-gallery{display:grid; gap:12px; grid-template-columns:repeat(2,1fr);}
@media (min-width:768px){.nwm-gallery{grid-template-columns:repeat(3,1fr); gap:16px;}}
.nwm-gallery a{display:block; aspect-ratio:1/1; border-radius:14px; overflow:hidden;}
.nwm-gallery img{width:100%; height:100%; object-fit:cover; transition:transform .4s;}
.nwm-gallery a:hover img{transform:scale(1.05);}
.nwm-scroller{display:grid; grid-auto-flow:column; grid-auto-columns:minmax(260px,1fr); gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:8px; scrollbar-width:thin;}
.nwm-scroller > *{scroll-snap-align:start;}
.nwm-person{padding:22px; text-align:center;}
.nwm-person .nwm-avatar-lg{width:96px; height:96px; margin:0 auto 14px; border-radius:50%; background:var(--nwm-navy); color:var(--nwm-yellow); font-weight:800; font-size:28px; display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; border:3px solid var(--nwm-yellow);}
.nwm-person .nwm-avatar-lg img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.nwm-person h3{font-size:18px; margin:0 0 4px; color:var(--nwm-navy); font-weight:700;}
.nwm-person p{margin:0; color:var(--nwm-muted); font-size:14px;}
.nwm-quote{padding:24px;}
.nwm-quote blockquote{margin:0 0 18px; color:var(--nwm-ink); line-height:1.65; font-size:15.5px;}
.nwm-quote .who{display:flex; align-items:center; gap:12px;}
.nwm-quote .who strong{display:block; color:var(--nwm-navy);}
.nwm-quote .who span{font-size:13px; color:var(--nwm-muted);}

/* ---------- Contact ---------- */
.nwm-contact-grid{display:grid; gap:24px;}
@media (min-width:992px){.nwm-contact-grid{grid-template-columns:1.4fr 1fr; gap:28px;}}
.nwm-form{padding:24px;}
@media (min-width:768px){.nwm-form{padding:32px;}}
.nwm-form-grid{display:grid; gap:16px; grid-template-columns:1fr;}
@media (min-width:640px){.nwm-form-grid{grid-template-columns:1fr 1fr;} .nwm-form-grid .is-full{grid-column:1/-1;}}
.nwm-field label{display:block; font-size:13.5px; font-weight:600; color:var(--nwm-navy); margin:0 0 6px;}
.nwm-input{width:100%; min-height:50px; padding:12px 16px; border:1.5px solid var(--nwm-line); border-radius:12px; background:#fbfcfd; font-size:16px; color:var(--nwm-ink); font-family:var(--nwm-font); transition:border-color .2s, box-shadow .2s, background .2s; -webkit-appearance:none; appearance:none;}
.nwm-input::placeholder{color:#9aa4b1;}
.nwm-input:focus{outline:0; border-color:var(--nwm-yellow); background:#fff; box-shadow:0 0 0 4px rgba(255,176,37,.2);}
textarea.nwm-input{min-height:140px; resize:vertical;}
.nwm-form .nwm-btn{margin-top:18px;}
.nwm-info{padding:24px; display:flex; flex-direction:column; gap:14px;}
.nwm-info-item{display:flex; gap:14px; align-items:flex-start; text-decoration:none!important; color:var(--nwm-ink)!important; padding:12px; border-radius:12px; transition:background .2s;}
.nwm-info-item:hover{background:var(--nwm-bg);}
.nwm-info-ico{flex:0 0 44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:17px;}
.nwm-info-item:nth-child(1) .nwm-info-ico{background:var(--nwm-green);} .nwm-info-item:nth-child(2) .nwm-info-ico{background:var(--nwm-yellow); color:var(--nwm-navy);} .nwm-info-item:nth-child(3) .nwm-info-ico{background:var(--nwm-red);}
.nwm-info-item small{display:block; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--nwm-muted); font-weight:600;}
.nwm-info-item span{font-weight:600; line-height:1.45; word-break:break-word;}
.nwm-map{border-radius:14px; overflow:hidden; aspect-ratio:4/3; background:var(--nwm-bg);}
.nwm-map iframe{width:100%!important; height:100%!important; border:0; display:block;}

/* ---------- CTA band ---------- */
.nwm-cta{background:linear-gradient(120deg,var(--nwm-navy),var(--nwm-navy-2)); color:#fff; border-radius:24px; padding:36px 28px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; position:relative; overflow:hidden;}
.nwm-cta::after{content:""; position:absolute; right:-60px; top:-60px; width:220px; height:220px; border-radius:50%; background:radial-gradient(circle, rgba(255,176,37,.25), transparent 70%);}
.nwm-cta h2{font-family:var(--nwm-display); color:#fff; font-size:clamp(22px,3vw,32px); margin:0 0 6px; font-weight:800;}
.nwm-cta p{margin:0; color:rgba(255,255,255,.8);}
.nwm-cta .nwm-btn{position:relative; z-index:1;}
@media (max-width:575.98px){.nwm-cta .nwm-btn{width:100%;}}

/* ---------- Footer ---------- */
.nwm-footer{background:var(--nwm-navy-3); color:rgba(255,255,255,.75); padding:56px 0 0;}
.nwm-footer-grid{display:grid; gap:32px; grid-template-columns:1fr;}
@media (min-width:640px){.nwm-footer-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:992px){.nwm-footer-grid{grid-template-columns:1.4fr 1fr 1.3fr 1fr;}}
.nwm-footer p{color:rgba(255,255,255,.7); line-height:1.65; font-size:15px; margin:14px 0 0;}
.nwm-footer h4{color:#fff; font-size:14px; letter-spacing:.12em; text-transform:uppercase; font-weight:700; margin:0 0 16px;}
.nwm-footer ul{list-style:none; padding:0; margin:0; display:grid; gap:10px;}
.nwm-footer a{color:rgba(255,255,255,.78)!important; text-decoration:none!important; transition:color .2s;}
.nwm-footer a:hover{color:var(--nwm-yellow)!important;}
.nwm-footer-contact li a{display:flex; gap:10px; align-items:flex-start; line-height:1.5;}
.nwm-footer-contact i{color:var(--nwm-yellow); margin-top:4px; width:16px;}
.nwm-social{display:flex; gap:10px; flex-wrap:wrap;}
.nwm-social a{width:40px; height:40px; border-radius:10px; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center;}
.nwm-social a:hover{background:var(--nwm-yellow); color:var(--nwm-navy)!important;}
.nwm-footer-bottom{margin-top:40px; padding:20px 0 calc(20px + env(safe-area-inset-bottom)); border-top:1px solid rgba(255,255,255,.08); display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; font-size:14px;}

/* ---------- Floating mobile CTA (home) ---------- */
.nwm-float{position:fixed; left:12px; right:12px; bottom:12px; z-index:90; display:flex; gap:10px; transform:translateY(140%); transition:transform .3s ease;}
.nwm-float.is-show{transform:none;}
.nwm-float .nwm-btn{flex:1; min-height:52px; box-shadow:0 10px 24px rgba(0,0,0,.2);}
.nwm-float .nwm-btn-navy{flex:0 0 52px; padding:0;}
@media (min-width:992px){.nwm-float{display:none;}}

/* ---------- Cookie consent ---------- */
.cookie-consent-wrap{box-shadow:none!important;}
.js-cookie-consent{position:fixed; left:12px; right:12px; bottom:12px; z-index:1200!important; max-width:460px; margin-left:auto; font-family:var(--nwm-font);}
.js-cookie-consent > div{padding:0!important;}
.js-cookie-consent .rounded-lg{background:var(--nwm-navy)!important; color:#fff; border-radius:16px!important; padding:16px 18px!important; box-shadow:0 16px 40px rgba(0,0,0,.3);}
.js-cookie-consent .flex{display:flex; align-items:center; gap:14px; flex-wrap:nowrap;}
.js-cookie-consent .hidden{display:block!important;}
.js-cookie-consent .w-0{width:auto!important; flex:1;}
.js-cookie-consent .cookie-consent__message{color:#fff!important; margin:0!important; font-size:14px; line-height:1.45;}
.js-cookie-consent .mt-2{margin:0!important; width:auto!important;}
.js-cookie-consent .cookie-consent__agree{background:var(--nwm-yellow)!important; color:var(--nwm-navy)!important; border:0; border-radius:10px; padding:10px 16px; font-weight:700; white-space:nowrap; cursor:pointer;}

/* ---------- Generic inner pages (about, policies) ---------- */
.landing-section-content .subtitle{color:var(--nwm-green)!important;}
.landing-section-content .title{font-family:var(--nwm-display);}
img{max-width:100%;}

/* ---------- Spacing overrides (base theme forces margin:0 !important on headings/paragraphs) ---------- */
.nwm-hero h1{margin-bottom:18px!important;}
.nwm-hero p{margin-bottom:28px!important;}
.nwm-title{margin-bottom:14px!important;}
.nwm-eyebrow{margin-bottom:10px!important;}
.nwm-head-center .nwm-lead{margin-bottom:0!important;}
.nwm-about-grid .nwm-lead{margin-bottom:0!important;}
.nwm-pkg-title{margin-bottom:8px!important;}
.nwm-pkg-text{margin-bottom:16px!important;}
.nwm-footer p{margin-top:14px!important;}
.nwm-footer h4{margin-bottom:16px!important;}
.nwm-cta h2{margin-bottom:6px!important;}
.nwm-person h3{margin-bottom:4px!important;}
.nwm-faq details p{margin-bottom:18px!important;}
.js-cookie-consent .cookie-consent__message{font-size:14px!important; line-height:1.45!important;}
@media (max-width:575.98px){.js-cookie-consent .cookie-consent__message{font-size:13px!important;}}

@media (max-width:991.98px){.nwm-footer-bottom{padding-bottom:calc(92px + env(safe-area-inset-bottom));}}
.nwm-tab{text-transform:lowercase;} .nwm-tab::first-letter{text-transform:uppercase;}
/* Older inner pages (about, policies) */
section .container{max-width:1200px!important; margin-left:auto!important; margin-right:auto!important; padding-left:20px!important; padding-right:20px!important;}
@media (min-width:768px){section .container{padding-left:32px!important; padding-right:32px!important;}}
.landing-aboutUs{padding:56px 0!important;}
