/* ===================== New Vision Motors — design system v3 ===================== */
:root{
  --nvm-navy:#0E1B3C; --nvm-navy-2:#16244d; --nvm-navy-3:#0a1430;
  --nvm-red:#D11A2D; --nvm-red-rgb:209,26,45; --nvm-red-2:#b3121f;
  --nvm-ink:#0E1B3C; --nvm-muted:#5b6577; --nvm-light:#f4f6f9; --nvm-line:#e6e9ef;
  --bs-primary:#0E1B3C; --bs-primary-rgb:14,27,60;
  --bs-body-color:#2a3650;
  --bs-body-font-family:'Lexend Deca',system-ui,-apple-system,sans-serif;
  --nvm-display:'Racing Sans One','Lexend Deca',sans-serif;
  --nvm-head:'Lexend Deca',sans-serif;
  --nvm-shadow:0 1rem 2.6rem rgba(14,27,60,.14);
  --nvm-ease:cubic-bezier(.2,.7,.2,1);
  scroll-padding-top:118px;
}
body{font-family:var(--bs-body-font-family);color:var(--bs-body-color);overflow-x:hidden;font-weight:300;}
h1,h2,.display-1,.display-2,.display-3,.display-4,.display-5,.display-6{font-family:var(--nvm-display);font-weight:400;color:var(--nvm-ink);letter-spacing:.005em;line-height:1.06;text-transform:uppercase;}
h3,h4,h5,h6{font-family:var(--nvm-head);font-weight:700;color:var(--nvm-ink);}
.fw-black{font-weight:400!important;} a{color:var(--nvm-navy);text-decoration:none;}
.lead{font-size:1.12rem;font-weight:300;}
section{scroll-margin-top:118px;}
.nvm-sec{padding:5.5rem 0;}
.text-accent{color:var(--nvm-red)!important;}
.bg-navy{background-color:var(--nvm-navy)!important;color:#fff;}
.bg-soft{background-color:var(--nvm-light)!important;}

/* section label (small red kicker with line) */
.nvm-label{font-family:var(--nvm-head);text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--nvm-red);font-size:.78rem;display:inline-flex;align-items:center;gap:.55rem;margin-bottom:.7rem;}
.nvm-label::before{content:"";width:28px;height:2px;background:var(--nvm-red);display:inline-block;}
.nvm-label.center{justify-content:center;}
.nvm-label.on-dark{color:#fff;opacity:.9;}

/* ---- no-JS / reveal guard ---- */
.no-js .reveal{opacity:1!important;transform:none!important;}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--nvm-ease),transform .8s var(--nvm-ease);}
.reveal.reveal-in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.1s;} .reveal.d2{transition-delay:.2s;} .reveal.d3{transition-delay:.3s;} .reveal.d4{transition-delay:.4s;}

/* ---- buttons (clean solid, no sweep / no follow) ---- */
.btn{font-family:var(--nvm-head);font-weight:700;letter-spacing:.03em;text-transform:uppercase;font-size:.82rem;border-radius:.4rem;padding:.85rem 1.7rem;transition:transform .25s var(--nvm-ease),box-shadow .25s var(--nvm-ease),background-color .25s,border-color .25s,color .25s;}
.btn-lg{padding:1rem 2.2rem;font-size:.9rem;}
.btn:hover{transform:translateY(-3px);}
.btn-primary{--bs-btn-bg:var(--nvm-navy);--bs-btn-border-color:var(--nvm-navy);--bs-btn-hover-bg:var(--nvm-navy-2);--bs-btn-hover-border-color:var(--nvm-navy-2);--bs-btn-active-bg:var(--nvm-navy-3);--bs-btn-color:#fff;--bs-btn-hover-color:#fff;}
.btn-primary:hover{box-shadow:0 .7rem 1.5rem rgba(14,27,60,.32);}
.btn-accent{--bs-btn-bg:var(--nvm-red);--bs-btn-border-color:var(--nvm-red);--bs-btn-hover-bg:var(--nvm-red-2);--bs-btn-hover-border-color:var(--nvm-red-2);--bs-btn-active-bg:var(--nvm-red-2);--bs-btn-color:#fff;--bs-btn-hover-color:#fff;color:#fff;}
.btn-accent:hover{box-shadow:0 .7rem 1.6rem rgba(var(--nvm-red-rgb),.42);}
.btn-outline-light{--bs-btn-border-color:rgba(255,255,255,.55);--bs-btn-color:#fff;--bs-btn-hover-bg:#fff;--bs-btn-hover-color:var(--nvm-navy);--bs-btn-hover-border-color:#fff;}
.btn-arrow{display:inline-flex;align-items:center;gap:.5rem;}
.btn-arrow::after{content:"\2192";transition:transform .25s var(--nvm-ease);display:inline-block;}
.btn-arrow:hover::after{transform:translateX(6px);}

/* magic cursor removed per request */

/* ---- top info bar ---- */
.nvm-topbar{background:var(--nvm-navy);color:rgba(255,255,255,.78);font-size:.8rem;}
.nvm-topbar a{color:rgba(255,255,255,.78);} .nvm-topbar a:hover{color:#fff;}
.nvm-topbar .bi{color:var(--nvm-red);margin-right:.35rem;}
.nvm-topbar .sep{width:1px;height:14px;background:rgba(255,255,255,.18);display:inline-block;margin:0 .25rem;}

/* ---- header / navbar ---- */
.nvm-header{position:sticky;top:0;z-index:1030;transition:box-shadow .3s;}
.nvm-header.scrolled{box-shadow:0 8px 30px rgba(14,27,60,.16);}
.nvm-header.scrolled .nvm-topbar{display:none;}
.nvm-header .navbar{background:#fff;}
.nvm-header .navbar-brand img{display:block;height:48px;width:auto;}
.nvm-navlink{position:relative;font-family:var(--nvm-head);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;color:var(--nvm-navy)!important;padding:.6rem .95rem!important;}
.nvm-navlink::after{content:"";position:absolute;left:.95rem;right:.95rem;bottom:.35rem;height:2px;background:var(--nvm-red);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--nvm-ease);}
.nvm-navlink:hover{color:var(--nvm-red)!important;} .nvm-navlink:hover::after{transform:scaleX(1);}
/* mega menu (Vehicles) */
.nvm-mega-menu{border:0;border-radius:0 0 .8rem .8rem;box-shadow:0 1rem 2.6rem rgba(14,27,60,.16);padding:1.6rem 1.8rem;width:min(680px,94vw);}
.nvm-mega-h{font-family:var(--nvm-head);text-transform:uppercase;letter-spacing:.07em;font-size:.82rem;color:var(--nvm-red);border-bottom:2px solid var(--nvm-line);padding-bottom:.5rem;margin-bottom:.85rem;}
.nvm-mega-h a{color:var(--nvm-red);} .nvm-mega-h a:hover{color:var(--nvm-red-2);}
.nvm-mega-col ul{list-style:none;padding:0;margin:0;}
.nvm-mega-col ul li{margin-bottom:.55rem;}
.nvm-mega-col ul li a{color:var(--nvm-ink);font-size:.9rem;font-weight:500;}
.nvm-mega-col ul li a:hover{color:var(--nvm-red);}
.nvm-mega-soon{color:var(--nvm-muted);font-size:.85rem;font-style:italic;}
@media(min-width:992px){ .nvm-mega{position:static;} .nvm-mega .nvm-mega-menu{left:auto;} .nvm-mega:hover>.nvm-mega-menu{display:block;} }
@media(max-width:991px){ .nvm-mega-menu{width:100%;box-shadow:none;padding:.5rem 0 .5rem 1rem;} .nvm-mega-menu .row{--bs-gutter-y:.5rem;} .nvm-mega-h{margin-bottom:.4rem;} }

/* ---- hero slider ---- */
.nvm-hero,.nvm-hero .carousel,.nvm-hero .carousel-inner,.nvm-hero .carousel-item{height:92vh;min-height:600px;}
.nvm-slide{height:92vh;min-height:600px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;}
.nvm-slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,12,30,.92) 0%,rgba(6,12,30,.62) 46%,rgba(6,12,30,.12) 100%);}
.nvm-slide .container{position:relative;z-index:2;}
.nvm-slide h1{color:#fff;font-size:clamp(2.6rem,5.6vw,5rem);line-height:1;text-shadow:0 18px 50px rgba(0,0,0,.5);margin-bottom:1.1rem;}
.nvm-slide p{color:rgba(255,255,255,.85);max-width:560px;font-size:1.18rem;text-shadow:0 2px 16px rgba(0,0,0,.45);}
.carousel-item .nvm-slide .nvm-label,.carousel-item .nvm-slide h1,.carousel-item .nvm-slide p,.carousel-item .nvm-slide .nvm-hero-cta{opacity:0;transform:translateY(30px);}
.carousel-item.active .nvm-slide .nvm-label{animation:nvmUp .8s var(--nvm-ease) .2s forwards;}
.carousel-item.active .nvm-slide h1{animation:nvmUp .8s var(--nvm-ease) .38s forwards;}
.carousel-item.active .nvm-slide p{animation:nvmUp .8s var(--nvm-ease) .56s forwards;}
.carousel-item.active .nvm-slide .nvm-hero-cta{animation:nvmUp .8s var(--nvm-ease) .74s forwards;}
@keyframes nvmUp{to{opacity:1;transform:none;}}
.nvm-hero .carousel-indicators{z-index:4;margin-bottom:1.8rem;gap:10px;}
.nvm-hero .carousel-indicators [data-bs-target]{width:64px;height:42px;border-radius:7px;background-size:cover;background-position:center;opacity:.5;border:2px solid rgba(255,255,255,.5);box-sizing:border-box;text-indent:0;transition:opacity .25s,border-color .25s,transform .25s;}
.nvm-hero .carousel-indicators [data-bs-target]:hover{opacity:.85;}
.nvm-hero .carousel-indicators .active{opacity:1;border-color:var(--nvm-red);transform:translateY(-3px);}
.nvm-hero .carousel-control-prev,.nvm-hero .carousel-control-next{width:56px;height:56px;top:50%;bottom:auto;transform:translateY(-50%);z-index:12;opacity:.95;border-radius:50%;background:rgba(14,27,60,.5);border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(2px);transition:background-color .25s,opacity .25s;}
.nvm-hero .carousel-control-prev{left:20px;}
.nvm-hero .carousel-control-next{right:20px;}
.nvm-hero .carousel-control-prev:hover,.nvm-hero .carousel-control-next:hover{opacity:1;background:var(--nvm-red);border-color:var(--nvm-red);}
.nvm-hero .carousel-control-prev-icon,.nvm-hero .carousel-control-next-icon{width:22px;height:22px;background-size:100%;background-color:transparent;border:0;}

/* ---- marquee ticker ---- */
.nvm-marquee{background:var(--nvm-red);color:#fff;overflow:hidden;white-space:nowrap;padding:.9rem 0;}
.nvm-marquee .nvm-track{display:inline-block;white-space:nowrap;animation:nvmMarquee 28s linear infinite;}
.nvm-marquee .nvm-track span{font-family:var(--nvm-display);text-transform:uppercase;font-size:1.15rem;letter-spacing:.06em;padding:0 1.4rem;}
.nvm-marquee .nvm-track i{opacity:.6;}
@keyframes nvmMarquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---- cards ---- */
.nvm-card{background:#fff;color:var(--bs-body-color);border:1px solid var(--nvm-line);border-radius:1rem;transition:transform .3s var(--nvm-ease),box-shadow .3s var(--nvm-ease),border-color .3s;overflow:hidden;height:100%;}
.nvm-card:hover{transform:translateY(-8px);box-shadow:var(--nvm-shadow);border-color:transparent;}
.nvm-cat-img{aspect-ratio:1/1;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--nvm-line);}
.nvm-cat-img img{width:100%;height:100%;object-fit:contain;padding:12px;transition:transform .5s var(--nvm-ease);}
/* richer archive card: model + short desc + key specs */
.nvm-cat-body2{padding:1.1rem 1.15rem;}
.nvm-card-model{font-family:var(--nvm-head);font-weight:700;font-size:1.05rem;letter-spacing:.02em;margin:0 0 .35rem;}
.nvm-card-model a{color:var(--nvm-ink);}
.nvm-card-desc{font-size:.82rem;color:var(--nvm-muted);margin:0 0 .6rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.nvm-card-specs{list-style:none;padding:0;margin:0;font-size:.76rem;color:var(--nvm-muted);}
.nvm-card-specs li{display:flex;justify-content:space-between;gap:.6rem;padding:.22rem 0;border-top:1px dashed var(--nvm-line);}
.nvm-card-specs li span:first-child{color:var(--nvm-ink);font-weight:600;white-space:nowrap;}
.nvm-card-specs li span:last-child{text-align:right;}
.nvm-card:hover .nvm-cat-img img,.nvm-cat:hover .nvm-cat-img img{transform:scale(1.08);}
.nvm-cat{display:block;position:relative;border-radius:1rem;overflow:hidden;background:#fff;border:1px solid var(--nvm-line);height:100%;transition:transform .3s var(--nvm-ease),box-shadow .3s var(--nvm-ease);}
.nvm-cat::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--nvm-red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--nvm-ease);}
.nvm-cat:hover{transform:translateY(-8px);box-shadow:var(--nvm-shadow);} .nvm-cat:hover::after{transform:scaleX(1);}
.nvm-cat .nvm-cat-body{padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;}
.nvm-cat .nvm-cat-body h5{margin:0;font-size:1rem;}
.nvm-cat .nvm-cat-arrow{color:var(--nvm-red);transition:transform .3s var(--nvm-ease);} .nvm-cat:hover .nvm-cat-arrow{transform:translateX(5px);}

.nvm-icon{width:60px;height:60px;border-radius:.9rem;display:inline-flex;align-items:center;justify-content:center;background:rgba(var(--nvm-red-rgb),.1);color:var(--nvm-red);font-size:1.7rem;flex:0 0 auto;transition:background .3s,color .3s,transform .3s;}
.nvm-card:hover .nvm-icon{background:var(--nvm-red);color:#fff;transform:rotate(-6deg);}
.nvm-svc{position:relative;background:#fff;border:1px solid var(--nvm-line);border-radius:1rem;padding:2rem 1.5rem;height:100%;overflow:hidden;transition:transform .3s var(--nvm-ease),box-shadow .3s var(--nvm-ease);}
.nvm-svc::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--nvm-red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--nvm-ease);}
.nvm-svc:hover{transform:translateY(-8px);box-shadow:var(--nvm-shadow);} .nvm-svc:hover::before{transform:scaleX(1);}
.nvm-svc .nvm-svc-no{position:absolute;top:1rem;right:1.2rem;font-family:var(--nvm-display);font-size:2.6rem;color:rgba(var(--nvm-red-rgb),.12);line-height:1;}

.nvm-stat .nvm-num{font-family:var(--nvm-display);font-size:clamp(1.7rem,2.1vw,2.3rem);line-height:1.15;color:#fff;white-space:nowrap;}
.nvm-stat .nvm-num.dark{color:var(--nvm-navy);} .nvm-stat .nvm-num .text-accent{color:var(--nvm-red)!important;}
.nvm-stat small{letter-spacing:.05em;text-transform:uppercase;font-size:.74rem;font-weight:600;line-height:1.3;}

.nvm-step{position:relative;padding:1.7rem 1.3rem;background:#fff;border:1px solid var(--nvm-line);border-radius:1rem;height:100%;transition:transform .3s var(--nvm-ease),box-shadow .3s var(--nvm-ease);}
.nvm-step:hover{transform:translateY(-6px);box-shadow:var(--nvm-shadow);}
.nvm-step .nvm-step-no{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--nvm-navy);color:#fff;font-family:var(--nvm-display);font-size:1.3rem;margin-bottom:1rem;}
.nvm-step:hover .nvm-step-no{background:var(--nvm-red);}

/* ---- about: overlapping image + spinning video badge ---- */
.nvm-about-media{position:relative;}
.nvm-about-media .nvm-about-img{border-radius:1rem;width:100%;height:auto;box-shadow:var(--nvm-shadow);}
.nvm-spinner{position:absolute;right:-26px;bottom:-26px;width:128px;height:128px;border-radius:50%;background:var(--nvm-navy);display:flex;align-items:center;justify-content:center;}
.nvm-spinner .nvm-spin-text{position:absolute;inset:0;animation:nvmSpin 14s linear infinite;}
.nvm-spinner .nvm-spin-text text{fill:#fff;font-family:var(--nvm-head);font-size:11.5px;letter-spacing:2.2px;text-transform:uppercase;}
.nvm-spinner .nvm-play{width:50px;height:50px;border-radius:50%;background:var(--nvm-red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;position:relative;z-index:2;}
.nvm-spinner .nvm-play::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--nvm-red);animation:nvmRipple 2s ease-out infinite;}
@keyframes nvmSpin{to{transform:rotate(360deg);}}
@keyframes nvmRipple{0%{transform:scale(1);opacity:.7;}100%{transform:scale(1.9);opacity:0;}}

/* ---- gallery ---- */
.nvm-gal{position:relative;display:block;border-radius:.9rem;overflow:hidden;aspect-ratio:4/3;background:#0d1b3e;}
.nvm-gal img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--nvm-ease);}
.nvm-gal::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,14,34,0) 35%,rgba(7,14,34,.78) 100%);opacity:.35;transition:opacity .4s;}
.nvm-gal .nvm-gal-cap{position:absolute;left:1rem;right:1rem;bottom:1rem;color:#fff;z-index:2;transform:translateY(8px);opacity:0;transition:transform .4s var(--nvm-ease),opacity .4s;font-family:var(--nvm-head);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;}
.nvm-gal .nvm-gal-plus{position:absolute;top:1rem;right:1rem;z-index:2;width:42px;height:42px;border-radius:50%;background:var(--nvm-red);color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);transition:opacity .35s,transform .35s var(--nvm-ease);}
.nvm-gal:hover img{transform:scale(1.1);} .nvm-gal:hover::after{opacity:1;} .nvm-gal:hover .nvm-gal-cap{transform:none;opacity:1;} .nvm-gal:hover .nvm-gal-plus{opacity:1;transform:scale(1);}

/* ---- testimonials ---- */
.nvm-quote{background:#fff;border:1px solid var(--nvm-line);border-radius:1rem;padding:1.8rem;height:100%;}
.nvm-quote.on-dark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#fff;}
.nvm-quote .nvm-stars{color:#ffb400;letter-spacing:3px;}
.nvm-ava{width:48px;height:48px;border-radius:50%;background:var(--nvm-red);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--nvm-head);font-weight:700;}

/* ---- FAQ ---- */
.nvm-faq .accordion-item{border:1px solid var(--nvm-line);border-radius:.8rem!important;margin-bottom:.8rem;overflow:hidden;background:#fff;}
.nvm-faq .accordion-button{font-family:var(--nvm-head);font-weight:700;color:var(--nvm-navy);padding:1.15rem 1.3rem;box-shadow:none;}
.nvm-faq .accordion-button:not(.collapsed){background:rgba(var(--nvm-red-rgb),.06);color:var(--nvm-red);}
.nvm-faq .accordion-button::after{background-image:none;content:"\002B";font-family:var(--nvm-head);font-weight:700;font-size:1.4rem;width:auto;height:auto;transform:none;color:var(--nvm-red);}
.nvm-faq .accordion-button:not(.collapsed)::after{content:"\2212";}
.nvm-faq .accordion-button:focus{box-shadow:none;}
.nvm-faq .accordion-body{color:var(--nvm-muted);padding-top:0;}

/* ---- parallax band ---- */
.nvm-parallax{position:relative;overflow:hidden;}
.nvm-parallax .nvm-px-bg{position:absolute;inset:-12% 0;background-size:cover;background-position:center;will-change:transform;z-index:0;}
.nvm-parallax .nvm-px-overlay{position:absolute;inset:0;background:rgba(7,14,34,.78);z-index:1;}
.nvm-parallax .container{position:relative;z-index:2;}

/* ---- video lightbox ---- */
.nvm-lightbox{position:fixed;inset:0;background:rgba(6,12,30,.92);z-index:100000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s;}
.nvm-lightbox.open{opacity:1;visibility:visible;}
.nvm-lightbox .nvm-lb-inner{width:min(90vw,960px);aspect-ratio:16/9;}
.nvm-lightbox iframe{width:100%;height:100%;border:0;border-radius:.6rem;}
.nvm-lightbox .nvm-lb-close{position:absolute;top:24px;right:30px;color:#fff;font-size:2rem;background:none;border:0;cursor:pointer;}

/* ---- footer ---- */
.nvm-footer a{color:rgba(255,255,255,.62);transition:color .2s;} .nvm-footer a:hover{color:#fff;}
.nvm-foot-h{font-family:var(--nvm-head);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:#fff;margin-bottom:.9rem;}
.nvm-foot-list li{margin-bottom:.5rem;font-size:.92rem;}
.nvm-soc{width:38px;height:38px;border-radius:.5rem;background:rgba(255,255,255,.1);display:inline-flex;align-items:center;justify-content:center;color:#fff!important;font-size:.95rem;transition:background .25s,transform .25s;}
.nvm-soc:hover{background:var(--nvm-red);transform:translateY(-3px);}

/* ---- GTranslate placement ---- */
.nvm-gt-wrap{display:inline-flex;align-items:center;min-height:34px;line-height:1;}
.nvm-gt-wrap .gtranslate_wrapper{display:inline-flex;align-items:center;min-height:34px;}
.nvm-gt-nav{display:flex;align-items:center;}
.nvm-gt-nav .gtranslate_wrapper{max-width:190px;}
.nvm-mobile-tools{display:none;align-items:center;gap:.55rem;}
.nvm-gt-mobile{display:none;}
.nvm-footer-meta{margin-left:auto;}
.nvm-footer .nvm-gt-wrap{min-height:32px;}
.nvm-header .gt_selector,.nvm-footer .gt_selector{max-width:190px;border-radius:.45rem;border:1px solid var(--nvm-line);font-size:.82rem;}
.nvm-header .gt_switcher,.nvm-footer .gt_switcher{font-family:var(--nvm-body);font-size:.82rem;line-height:1.2;box-shadow:none;}
@media(max-width:991px){.nvm-mobile-tools{display:flex;}.nvm-gt-mobile{display:inline-flex;}.nvm-gt-nav{display:none!important;}.nvm-gt-mobile .gtranslate_wrapper{max-width:160px;}.nvm-header .nvm-gt-mobile .gt_selector{max-width:160px;min-height:34px;}.nvm-footer-meta{margin-left:0;width:100%;}}

/* ---- product single + archive ---- */
.nvm-crumb{font-size:.85rem;color:var(--nvm-muted);} .nvm-crumb a{color:var(--nvm-muted);} .nvm-crumb a:hover{color:var(--nvm-red);}
.nvm-prodmain-img{background:#f4f6f9;border:1px solid var(--nvm-line);border-radius:1rem;padding:1.6rem;display:flex;align-items:center;justify-content:center;}
.nvm-prodmain-img img{width:100%;height:auto;max-height:460px;object-fit:contain;}
.nvm-hl-list{list-style:none;padding:0;margin:0 0 1.6rem;}
.nvm-hl-list li{display:flex;gap:.6rem;align-items:flex-start;margin-bottom:.55rem;}
.nvm-hl-list .bi{color:var(--nvm-red);margin-top:.15rem;flex:0 0 auto;}
.nvm-spec-table{width:100%;border-collapse:collapse;}
.nvm-spec-table th,.nvm-spec-table td{padding:.7rem 1rem;border:1px solid var(--nvm-line);text-align:left;vertical-align:top;font-size:.95rem;}
.nvm-spec-table th{background:var(--nvm-light);font-family:var(--nvm-head);font-weight:700;color:var(--nvm-ink);width:38%;}
.nvm-pgallery{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-top:1rem;}
.nvm-pgallery .nvm-pg-item{border:1px solid var(--nvm-line);border-radius:.5rem;overflow:hidden;aspect-ratio:1;background:#f4f6f9;}
.nvm-pgallery img{width:100%;height:100%;object-fit:contain;padding:6px;transition:transform .4s var(--nvm-ease);}
.nvm-pgallery .nvm-pg-item:hover img{transform:scale(1.08);}
.nvm-prose{color:var(--nvm-muted);line-height:1.8;}
.nvm-prose h2,.nvm-prose h3,.nvm-prose h4{color:var(--nvm-ink);margin-top:1.4rem;}
/* model on cards + colors */
.nvm-cat-body h5{font-family:var(--nvm-head);font-weight:700;font-size:1.02rem;letter-spacing:.02em;}
.nvm-card-sub{font-size:.76rem;color:var(--nvm-muted);margin-top:.25rem;line-height:1.3;}
.nvm-colors{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;}
.nvm-colors-label{font-family:var(--nvm-head);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;color:var(--nvm-ink);margin-right:.3rem;}
.nvm-color-chip{display:inline-block;padding:.28rem .7rem;border:1px solid var(--nvm-line);border-radius:2rem;font-size:.8rem;color:var(--nvm-muted);background:#fff;}
/* product gallery carousel + thumbs + color switch */
.nvm-prod-carousel{background:#f4f6f9;border:1px solid var(--nvm-line);border-radius:1rem;overflow:hidden;}
.nvm-prod-carousel .carousel-item{aspect-ratio:1/1;background:#f4f6f9;}
.nvm-prod-carousel .carousel-item img{display:block;width:100%;height:100%;object-fit:contain;padding:1.6rem;}
.nvm-prod-carousel .carousel-control-prev-icon,.nvm-prod-carousel .carousel-control-next-icon{background-color:rgba(14,27,60,.45);border-radius:50%;width:42px;height:42px;background-size:38%;}
.nvm-prod-carousel:hover .carousel-control-prev-icon,.nvm-prod-carousel:hover .carousel-control-next-icon{background-color:var(--nvm-red);}
.nvm-prod-thumbs{display:flex;gap:.5rem;margin-top:.7rem;overflow-x:auto;padding-bottom:.35rem;scrollbar-width:thin;}
.nvm-pthumb{flex:0 0 auto;width:72px;height:72px;border:2px solid var(--nvm-line);border-radius:.5rem;background:#fff;padding:0;overflow:hidden;cursor:pointer;transition:border-color .2s;}
.nvm-pthumb img{width:100%;height:100%;object-fit:contain;padding:5px;}
.nvm-pthumb.active,.nvm-pthumb:hover{border-color:var(--nvm-red);}
.nvm-colorsw{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;}
.nvm-colorbtn{font-family:var(--nvm-head);font-weight:600;font-size:.8rem;padding:.42rem .95rem;border:1.5px solid var(--nvm-line);border-radius:2rem;background:#fff;color:var(--nvm-ink);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;}
.nvm-colorbtn:hover{border-color:var(--nvm-navy);}
.nvm-colorbtn.active{background:var(--nvm-navy);color:#fff;border-color:var(--nvm-navy);}
/* contact page */
.nvm-contact-card{background:#fff;border:1px solid var(--nvm-line);border-radius:1rem;padding:1.6rem;height:100%;}
.nvm-contact-list{list-style:none;padding:0;margin:0;}
.nvm-contact-list li{display:flex;gap:.8rem;align-items:flex-start;padding:.7rem 0;border-bottom:1px solid var(--nvm-line);}
.nvm-contact-list li:last-child{border-bottom:0;}
.nvm-contact-list .bi{color:var(--nvm-red);font-size:1.2rem;margin-top:.15rem;flex:0 0 auto;}
.nvm-contact-list .nvm-ci-label{font-family:var(--nvm-head);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--nvm-ink);display:block;}
.nvm-contact-list a{color:var(--nvm-muted);} .nvm-contact-list a:hover{color:var(--nvm-red);}
.nvm-cform .form-control{border-radius:.5rem;border:1px solid var(--nvm-line);padding:.8rem 1rem;margin-bottom:1rem;font-size:.95rem;}
.nvm-cform .form-control:focus{border-color:var(--nvm-navy);box-shadow:0 0 0 .2rem rgba(14,27,60,.12);}
.nvm-cf-hp{position:absolute;left:-9999px;}
.nvm-cf-msg{display:none;margin-top:.8rem;padding:.7rem 1rem;border-radius:.5rem;font-size:.9rem;}
.nvm-cf-msg.ok{display:block;background:rgba(40,167,69,.1);color:#1a7d36;}
.nvm-cf-msg.err{display:block;background:rgba(var(--nvm-red-rgb),.1);color:var(--nvm-red-2);}
.nvm-map iframe{width:100%;height:320px;border:0;border-radius:1rem;}
/* blog */
.nvm-post-thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:#f0f2f6;}
.nvm-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--nvm-ease);}
.nvm-card:hover .nvm-post-thumb img{transform:scale(1.06);}
/* pagination */
.nvm-sec .nav-links,.nvm-sec .pagination{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;justify-content:center;}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:44px;height:44px;padding:0 1rem;border:1px solid var(--nvm-line);border-radius:.5rem;font-family:var(--nvm-head);font-weight:600;font-size:.9rem;color:var(--nvm-ink);background:#fff;transition:background-color .2s,border-color .2s,color .2s;}
.page-numbers:hover{border-color:var(--nvm-red);color:var(--nvm-red);}
.page-numbers.current{background:var(--nvm-navy);border-color:var(--nvm-navy);color:#fff;}
.page-numbers.dots{border-color:transparent;background:transparent;}
.page-numbers.prev,.page-numbers.next{color:var(--nvm-navy);}
.page-numbers.prev:hover,.page-numbers.next:hover{background:var(--nvm-navy);border-color:var(--nvm-navy);color:#fff;}
/* ===== mobile hardening: no horizontal scroll ===== */
html{overflow-x:hidden;}
body{overflow-x:clip;max-width:100%;}
img,svg,video,iframe{max-width:100%;}
.nvm-spec-table{table-layout:fixed;width:100%;}
.nvm-spec-table th,.nvm-spec-table td{word-break:break-word;}
.nvm-prose{overflow-wrap:anywhere;}
.nvm-prose img,.nvm-prose iframe,.nvm-prose table{max-width:100%!important;height:auto;}
h1,h2,h3,.display-1,.display-2,.display-3,.display-4,.display-5,.display-6,.nvm-card-model,.nvm-card-desc{overflow-wrap:break-word;}
.container,.container-fluid,.row{max-width:100%;}
.row{--bs-gutter-x:1.5rem;}
@media(max-width:767.98px){
  .display-1,.display-2,.display-3{font-size:2.3rem!important;}
  .display-4{font-size:2rem!important;}
  .display-5{font-size:1.65rem!important;}
  .display-6{font-size:1.4rem!important;}
  .nvm-slide h1{font-size:2.1rem!important;}
  .lead{font-size:1rem;}
  .nvm-pgallery{grid-template-columns:repeat(2,1fr);}
  .nvm-sec{padding:2.8rem 0;}
  .nvm-stat .nvm-num{font-size:1.9rem!important;}
  .nvm-prod-carousel .carousel-item img{padding:1rem;}
  .nvm-hero .carousel-control-prev,.nvm-hero .carousel-control-next{width:42px;height:42px;}
  .nvm-hero .carousel-control-prev{left:10px;} .nvm-hero .carousel-control-next{right:10px;}
}
@media(max-width:575.98px){
  .nvm-hero .carousel-control-prev,.nvm-hero .carousel-control-next{display:none;}
}

@media(max-width:991px){
  :root{scroll-padding-top:78px;}
  .nvm-pgallery{grid-template-columns:repeat(3,1fr);}
  .nvm-sec{padding:3.4rem 0;}
  .nvm-hero,.nvm-hero .carousel,.nvm-hero .carousel-inner,.nvm-hero .carousel-item,.nvm-slide{height:auto;min-height:0;}
  .nvm-slide{padding:5rem 0;}
  .nvm-cursor-on,.nvm-cursor-on *{cursor:auto!important;}
  .nvm-cur-dot,.nvm-cur-ring{display:none;}
  .nvm-spinner{right:10px;bottom:-20px;width:104px;height:104px;}
}
/* ---- blog single + archive + faq ---- */
.nvm-article-meta{display:flex;flex-wrap:wrap;gap:1.1rem;align-items:center;color:#6b7280;font-size:.92rem;}
.nvm-article-meta i{color:var(--nvm-red);margin-right:.35rem;}
.nvm-prose h2,.nvm-prose h3{font-family:var(--nvm-head,inherit);color:var(--nvm-navy);margin-top:2rem;margin-bottom:.8rem;}
.nvm-prose p{margin-bottom:1.15rem;line-height:1.8;color:#39414f;}
.nvm-prose ul,.nvm-prose ol{margin-bottom:1.15rem;line-height:1.8;color:#39414f;}
.nvm-prose img{border-radius:14px;margin:1.4rem 0;}
.nvm-prose blockquote{border-left:4px solid var(--nvm-red);padding:.4rem 1.2rem;color:var(--nvm-navy);font-size:1.12rem;font-style:italic;margin:1.4rem 0;}
.nvm-postnav a{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.2rem;border:1px solid var(--nvm-line);border-radius:14px;text-decoration:none;color:var(--nvm-navy);transition:border-color .25s,transform .25s;background:#fff;}
.nvm-postnav a:hover{border-color:var(--nvm-red);transform:translateY(-2px);}
.nvm-postnav .lbl{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--nvm-red);}
.nvm-post-thumb.is-empty{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--nvm-navy),#1b3a6b);color:rgba(255,255,255,.55);font-size:2.2rem;min-height:190px;}
.nvm-faq .accordion{--bs-accordion-border-color:var(--nvm-line);}
.nvm-faq .accordion-item{border:1px solid var(--nvm-line);border-radius:14px!important;margin-bottom:.85rem;overflow:hidden;}
.nvm-faq .accordion-button{font-weight:600;color:var(--nvm-navy);background:#fff;font-size:1.05rem;}
.nvm-faq .accordion-button:not(.collapsed){color:#fff;background:var(--nvm-navy);box-shadow:none;}
.nvm-faq .accordion-button:focus{box-shadow:none;border-color:var(--nvm-line);}
.nvm-faq .accordion-button:not(.collapsed)::after{filter:brightness(0) invert(1);}
.nvm-faq .accordion-body{color:#475067;line-height:1.75;}
.nvm-post-hero{position:relative;background:var(--nvm-navy);background-size:cover;background-position:center;padding:5.5rem 0 4rem;}
.nvm-post-hero .nvm-post-hero-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,14,34,.66),rgba(7,14,34,.9));}
.nvm-post-hero .container{position:relative;z-index:2;}
.nvm-article-meta.on-dark{color:rgba(255,255,255,.82);}
.nvm-article-meta.on-dark i{color:#fff;}
.nvm-postcta{background:var(--nvm-navy);border-radius:1rem;}

.nvm-lightbox video{width:100%;height:100%;border:0;border-radius:.6rem;background:#000;object-fit:contain;}
.nvm-spinner a,.nvm-spinner .nvm-play{cursor:pointer;}

/* Japanese auction FAQ responsive hardening */
#auction-faq{overflow-x:clip;}
#auction-faq .container,
#auction-faq .row,
#auction-faq .accordion,
#auction-faq .accordion-item,
#auction-faq .accordion-header,
#auction-faq .accordion-button,
#auction-faq .accordion-collapse,
#auction-faq .accordion-body{max-width:100%;min-width:0;}
#auction-faq .accordion-button{white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.35;gap:.75rem;}
#auction-faq .accordion-button::after{flex:0 0 auto;margin-left:auto;}
#auction-faq .accordion-body{overflow-wrap:anywhere;word-break:normal;}
@media(max-width:575.98px){
  #auction-faq .accordion-button{padding:1rem;font-size:.98rem;}
  #auction-faq .accordion-body{padding:0 1rem 1rem;}
}

/* Fluent Forms contact page styling */
.nvm-fluent-form-wrap .ff-el-group{margin-bottom:1rem;}
.nvm-fluent-form-wrap .ff-el-input--label label{font-family:var(--nvm-head);font-weight:700;color:var(--nvm-ink);font-size:.9rem;margin-bottom:.4rem;}
.nvm-fluent-form-wrap .ff-el-form-control{border-radius:.5rem!important;border:1px solid var(--nvm-line)!important;padding:.8rem 1rem!important;font-size:.95rem!important;color:var(--bs-body-color)!important;box-shadow:none!important;}
.nvm-fluent-form-wrap textarea.ff-el-form-control{min-height:160px;}
.nvm-fluent-form-wrap .ff-el-form-control:focus{border-color:var(--nvm-navy)!important;box-shadow:0 0 0 .2rem rgba(14,27,60,.12)!important;}
.nvm-fluent-form-wrap .ff-btn-submit{font-family:var(--nvm-head)!important;font-weight:700!important;letter-spacing:.03em!important;text-transform:uppercase!important;border-radius:.4rem!important;padding:1rem 2.2rem!important;font-size:.9rem!important;background:var(--nvm-navy)!important;border-color:var(--nvm-navy)!important;color:#fff!important;transition:transform .25s var(--nvm-ease),box-shadow .25s var(--nvm-ease),background-color .25s!important;}
.nvm-fluent-form-wrap .ff-btn-submit:hover{transform:translateY(-3px);background:var(--nvm-navy-2)!important;border-color:var(--nvm-navy-2)!important;box-shadow:0 .7rem 1.5rem rgba(14,27,60,.32)!important;}
.nvm-fluent-form-wrap .ff-btn-submit::after{content:"\2192";display:inline-block;margin-left:.5rem;transition:transform .25s var(--nvm-ease);}
.nvm-fluent-form-wrap .ff-btn-submit:hover::after{transform:translateX(6px);}
