:root{

  --bg:#070809;
  --bg2:#10170f;
  --panel:#121a12;
  --panel2:#1b2418;
  --text:#f6f1e9;
  --muted:#aeb7b8;
  --line:rgba(255,255,255,.12);
  --gold:#7fa865;
  --gold2:#d7edc1;
  --bodyColor:#e7ece9;
  --radius:28px;
  --shadow:0 30px 80px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(circle at top left,#1a2428 0,#08090a 42%,#030303 100%);line-height:1.5;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.grain{position:fixed;inset:0;pointer-events:none;opacity:.12;z-index:100;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='170' height='170' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:26px;padding:18px clamp(18px,4vw,58px);background:rgba(7,8,9,.72);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:baseline;gap:10px;margin-right:auto}.brand-mark{font-weight:800;letter-spacing:.18em;font-size:1.35rem}.brand-sub{font-size:.72rem;color:var(--gold);text-transform:uppercase;letter-spacing:.18em}.main-nav{display:flex;gap:24px;color:var(--muted);font-size:.92rem}.main-nav a:hover,.main-nav a:focus{color:var(--text)}.header-cta,.button{border:1px solid var(--line);border-radius:999px;padding:12px 18px;transition:.25s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.header-cta{background:rgba(214,187,114,.12);color:var(--gold2)}.button.primary{background:linear-gradient(135deg,var(--gold),#8d7135);color:#111;font-weight:800;border-color:transparent}.button.ghost{background:rgba(255,255,255,.06);color:var(--text)}.button:hover,.header-cta:hover,.mini-button:hover{transform:translateY(-2px);filter:brightness(1.08)}.full{width:100%;margin-top:10px}.nav-toggle{display:none;background:none;border:0;color:var(--text);font-size:1.4rem}
.section-pad{padding:clamp(70px,9vw,132px) clamp(18px,5vw,72px)}.hero{min-height:88vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1.12fr);align-items:center;gap:40px;padding-top:70px}.eyebrow,.section-kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:.74rem}.hero h1,.section-head h2,.craft h2,.config-heading h2,.contact h2{font-family:'Playfair Display',serif;font-size:clamp(3.2rem,7vw,7.6rem);line-height:.9;margin:14px 0 22px}.hero h1 span{display:block;color:var(--gold2)}.lead{font-size:1.15rem;color:#d5dddd;max-width:670px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:640px}.hero-stats div,.craft-metrics div{border:1px solid var(--line);border-radius:20px;padding:18px;background:rgba(255,255,255,.05)}.hero-stats strong,.craft-metrics strong{display:block;font-size:1.8rem}.hero-stats span,.craft-metrics span{color:var(--muted);font-size:.9rem}.hero-visual{position:relative;min-height:500px;display:grid;place-items:center}.halo{position:absolute;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(214,187,114,.18),transparent 65%);filter:blur(10px)}.vehicle-art{width:min(100%,900px);position:relative;animation:float 5s ease-in-out infinite}.marquee{display:flex;gap:10px;overflow:hidden;border-block:1px solid var(--line);padding:18px;background:rgba(255,255,255,.04);white-space:nowrap}.marquee span{min-width:max-content;color:var(--muted);text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.8rem}.section-head{display:grid;grid-template-columns:1.1fr .8fr;gap:30px;align-items:end;margin-bottom:34px}.section-head h2,.craft h2,.config-heading h2,.contact h2{font-size:clamp(2.4rem,4.8vw,5.3rem)}.section-head p{color:var(--muted);font-size:1.05rem}.model-grid,.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.model-card,.experience-card,.summary-card,.config-panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));box-shadow:var(--shadow);padding:22px}.model-card h3,.experience-card h3{font-size:1.4rem;margin:.2rem 0}.model-card p,.experience-card p,.small{color:var(--muted)}.model-card ul{padding-left:18px;color:#d7dfdf}.model-image{height:210px;border-radius:22px;margin-bottom:22px;background:radial-gradient(circle at 60% 20%,rgba(255,255,255,.32),transparent 28%),linear-gradient(135deg,#202a2d,#07090a);position:relative;overflow:hidden}.model-image:after{content:"";position:absolute;left:10%;right:10%;bottom:42px;height:64px;border-radius:80px 90px 35px 35px;background:linear-gradient(90deg,#f4f2e7,#829295);box-shadow:0 32px 28px rgba(0,0,0,.35)}.model-range:after{background:linear-gradient(90deg,#485d56,#a7b8b2)}.model-signature:after{background:linear-gradient(90deg,#101111,#b99945)}.craft-card,.contact-panel{border:1px solid var(--line);border-radius:calc(var(--radius) + 12px);background:linear-gradient(135deg,rgba(214,187,114,.14),rgba(255,255,255,.035));padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:1fr 1fr;gap:40px;box-shadow:var(--shadow)}.craft-copy p,.contact-panel p{color:#d0d8d8;font-size:1.05rem}.craft-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}.config-heading{text-align:center;max-width:850px;margin:0 auto 40px}.config-heading p{color:var(--muted)}.config-shell{display:grid;grid-template-columns:320px minmax(0,1fr) 300px;gap:18px;align-items:stretch}.config-panel,.summary-card{position:relative;z-index:2}.step{display:flex;gap:10px;align-items:center;color:var(--muted);margin-bottom:18px}.step span{color:var(--gold);font-weight:800}.select-label{display:grid;gap:8px;color:var(--muted);font-size:.9rem}select,input,textarea{width:100%;border:1px solid var(--line);background:#0d1113;color:var(--text);border-radius:16px;padding:13px;margin-top:8px}textarea{min-height:110px;resize:vertical}.option-block{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.option-block h3{margin:0 0 12px}.swatches,.chips{display:flex;gap:10px;flex-wrap:wrap}.swatch{width:42px;height:42px;border-radius:50%;border:2px solid rgba(255,255,255,.28);background:var(--swatch);cursor:pointer}.swatch.active,.chip.active{outline:2px solid var(--gold);outline-offset:3px}.option-value{color:var(--muted);margin-bottom:0}.chip{border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.06);color:var(--text);padding:10px 12px;cursor:pointer}.check{display:flex;align-items:center;gap:10px;justify-content:space-between;border:1px solid var(--line);border-radius:16px;padding:12px;margin-top:10px;color:#e5e9e8}.check input{width:auto;margin:0}.check span{color:var(--gold);margin-left:auto}.config-stage{border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:radial-gradient(circle at 50% 20%,rgba(214,187,114,.13),transparent 35%),linear-gradient(180deg,#141a1d,#080a0b);min-height:720px;padding:18px;display:flex;flex-direction:column;box-shadow:var(--shadow);overflow:hidden}.view-tools{display:flex;justify-content:flex-end;gap:10px}.mini-button{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);border-radius:999px;padding:10px 14px;cursor:pointer}.vehicle-scene{position:relative;flex:1;display:grid;place-items:center;perspective:1200px}.sun-glow{position:absolute;width:64%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(246,224,158,.19),transparent 68%)}#configVehicle{width:min(96%,850px);transform:rotateY(0deg);transition:.55s ease}.vehicle-scene.rotated #configVehicle{transform:rotateY(-14deg) rotateX(2deg)}.vehicle-scene.night{background:radial-gradient(circle at 50% 18%,rgba(22,79,114,.3),transparent 45%);border-radius:28px}.config-body{fill:var(--bodyColor);transition:fill .3s ease}.rim{transition:stroke .3s}.spec-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.spec-strip div{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.045)}.spec-strip span{display:block;color:var(--muted);font-size:.78rem}.spec-strip strong{display:block;font-size:.86rem}.price{font-size:2.5rem;font-weight:900;color:var(--gold2);margin:10px 0}.summary-list{border-block:1px solid var(--line);margin:18px 0;padding:16px 0;color:#d7dfdf}.summary-list div{display:flex;justify-content:space-between;gap:16px;margin:10px 0}.experience-card span{color:var(--gold);font-weight:900}.contact-form{display:grid;gap:14px}.contact-form label{color:var(--muted);font-size:.9rem}.site-footer{display:flex;justify-content:space-between;gap:20px;padding:36px clamp(18px,5vw,72px);border-top:1px solid var(--line);color:var(--muted)}.site-footer strong{color:var(--text)}.site-footer nav{display:flex;gap:18px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@media (max-width:1150px){.hero,.section-head,.craft-card,.contact-panel{grid-template-columns:1fr}.config-shell{grid-template-columns:1fr}.config-stage{min-height:560px;order:2}.summary-card{order:3}.config-panel{order:1}.model-grid,.experience-grid{grid-template-columns:1fr 1fr}.hero-visual{min-height:360px}}
@media (max-width:760px){.nav-toggle{display:block}.main-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;background:#08090a;padding:20px;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.header-cta{display:none}.hero{padding-top:40px}.hero-stats,.craft-metrics,.spec-strip,.model-grid,.experience-grid{grid-template-columns:1fr}.hero h1{font-size:3.6rem}.site-footer{flex-direction:column}.config-stage{padding:12px}.view-tools{justify-content:flex-start}}


/* Real RŌVA product image integration */

.hero-car{
  width:min(100%,960px);
  max-height:720px;
  object-fit:contain;
  position:relative;
  z-index:1;
  filter:drop-shadow(0 34px 42px rgba(0,0,0,.58));
  animation:float 5s ease-in-out infinite;
  
 }
.model-image{
  height:255px;
  display:grid;
  place-items:top;
  background:
    radial-gradient(circle at 55% 30%,rgba(214,187,114,.18),transparent 38%),
    linear-gradient(135deg,#1d262a,#07090a);
}
.model-image:after{display:none}
.model-image img{
  width:112%;
  height:112%;
  object-fit:contain;
  filter:drop-shadow(0 18px 22px rgba(0,0,0,.45));
}
.gallery{padding-top:20px}
.vehicle-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.vehicle-gallery figure{
  margin:0;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028));
  overflow:hidden;
  box-shadow:var(--shadow);
}
.vehicle-gallery img{
  width:100%;
  aspect-ratio:1.28/1;
  object-fit:contain;
  padding:12px;
  display:block;
  background:radial-gradient(circle at center,rgba(214,187,114,.12),transparent 64%);
}
.vehicle-gallery figcaption{
  border-top:1px solid var(--line);
  padding:12px 14px;
  color:#e9eeee;
  font-weight:700;
  font-size:.9rem;
}
.variant-label{margin-top:16px}
.config-car-img{
  width:min(96%,980px);
  max-height:610px;
  object-fit:contain;
  position:relative;
  z-index:1;
  filter:drop-shadow(0 30px 35px rgba(0,0,0,.55));
  transform:rotateY(0deg);
  transition:transform .55s ease, filter .35s ease, opacity .25s ease;
}
.vehicle-scene.rotated .config-car-img{
  transform:rotateY(-10deg) rotateX(1deg) translateY(-6px);
}
.vehicle-scene.night .config-car-img{
  filter:drop-shadow(0 0 28px rgba(92,176,255,.20)) drop-shadow(0 30px 35px rgba(0,0,0,.65));
}
@media (max-width:1150px){.vehicle-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.vehicle-gallery{grid-template-columns:1fr 1fr}.hero-car{max-height:430px}}
@media (max-width:480px){.vehicle-gallery{grid-template-columns:1fr}}



/* NEW */
:root{
  --bg:#050505;
  --panel:#101315;
  --panel2:#151a1d;
  --text:#f6f1e9;
  --muted:#aab5b7;
  --gold:#d7b866;
  --gold2:#f5dfa2;
  --line:rgba(255,255,255,.13);
  --shadow:0 36px 85px rgba(0,0,0,.42);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 65% 0%,rgba(215,184,102,.12),transparent 30%),
    radial-gradient(circle at 0% 20%,rgba(60,93,96,.25),transparent 34%),
    linear-gradient(180deg,#080909,#030303 52%,#070707);
  line-height:1.5;
  overflow-x:hidden;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.10;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.7' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
  z-index:50;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.site-header{
  position:sticky;top:0;z-index:40;
  display:flex;align-items:center;gap:24px;
  padding:17px clamp(18px,4vw,62px);
  background:rgba(5,5,5,.73);
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--line);
}
.brand{margin-right:auto;display:flex;align-items:baseline;gap:10px}
.brand-word{font-weight:900;letter-spacing:.20em;font-size:1.34rem}
.brand-line{color:var(--gold);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;font-weight:800}
.nav{display:flex;gap:24px;color:var(--muted);font-size:.94rem}
.nav a:hover{color:var(--text)}
.pill,.button,.mini{
  border:1px solid var(--line);
  border-radius:999px;
  padding:11px 17px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:.25s ease;
}
.pill{background:rgba(215,184,102,.12);color:var(--gold2);font-weight:800}
.button-gold{background:linear-gradient(135deg,var(--gold2),#9d7c35);color:#111;border:0;font-weight:900}
.button-outline{background:rgba(255,255,255,.06);color:#fff}
.button:hover,.pill:hover,.mini:hover{transform:translateY(-2px);filter:brightness(1.08)}
.menu-button{display:none;background:none;border:0;color:#fff;font-size:1.35rem}
.hero{
  min-height:92vh;
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(460px,1.2fr);
  align-items:center;
  gap:36px;
  padding:clamp(48px,7vw,110px) clamp(18px,5vw,72px);
}
.kicker{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:900;
  font-size:.75rem;
}
h1,h2{
  font-family:"Playfair Display",serif;
  line-height:.92;
  margin:14px 0 22px;
}
h1{font-size:clamp(3.55rem,7.8vw,8.2rem)}
h1 span{display:block;color:var(--gold2)}
h2{font-size:clamp(2.45rem,4.8vw,5.4rem)}
.hero-text{font-size:1.18rem;color:#d9e0df;max-width:690px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:690px}
.metrics div,.tech-card,.summary,.config-controls,.model-card,.intro-card{
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028));
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.metrics div{padding:18px}
.metrics strong{display:block;font-size:1.72rem}
.metrics span{color:var(--muted);font-size:.9rem}
.hero-media{position:relative;display:grid;place-items:center;min-height:560px}
.vehicle-orbit{
  position:absolute;width:76%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(215,184,102,.19),transparent 68%);
  filter:blur(12px);
}
.hero-car{
  position:relative;z-index:1;width:min(100%,960px);
  filter:drop-shadow(0 35px 45px rgba(0,0,0,.58));
  animation:float 5s ease-in-out infinite;
}
.brand-strip{
  border-block:1px solid var(--line);
  padding:17px 0;
  overflow:hidden;
  display:flex;
  gap:34px;
  white-space:nowrap;
  background:rgba(255,255,255,.035);
}
.brand-strip span{color:var(--muted);font-weight:900;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;min-width:max-content}
.section{padding:clamp(74px,9vw,132px) clamp(18px,5vw,72px)}
.section-head{
  display:grid;
  grid-template-columns:1fr .72fr;
  gap:32px;
  align-items:end;
  margin-bottom:30px;
}
.section-head p{color:var(--muted);font-size:1.06rem}
.intro{padding-top:80px;padding-bottom:30px}
.intro-card{padding:clamp(28px,5vw,64px);max-width:1120px;margin:auto;background:linear-gradient(135deg,rgba(215,184,102,.14),rgba(255,255,255,.03))}
.intro-card h2{font-size:clamp(2.2rem,4.1vw,4.6rem)}
.intro-card p:last-child{max-width:850px;color:#d8dfdf;font-size:1.08rem}
.model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.model-card{overflow:hidden}
.model-card img{width:100%;height:260px;object-fit:contain;padding:16px;background:radial-gradient(circle at 50% 35%,rgba(215,184,102,.14),transparent 65%)}
.model-card div{padding:22px}
.model-card h3,.tech-card h3{font-size:1.42rem;margin:6px 0 8px}
.model-card p,.tech-card p,.small{color:var(--muted)}
.model-card a{color:var(--gold2);font-weight:900}
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tech-card{padding:24px}
.tech-card span{color:var(--gold);font-weight:900}
.filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.filter{
  border:1px solid var(--line);
  color:var(--text);
  background:rgba(255,255,255,.06);
  border-radius:999px;
  padding:10px 15px;
  cursor:pointer;
}
.filter.active{background:rgba(215,184,102,.18);color:var(--gold2);outline:2px solid rgba(215,184,102,.35)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gallery-item{
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025));
  box-shadow:var(--shadow);
}
.gallery-item img{
  width:100%;
  aspect-ratio:1.32/1;
  object-fit:contain;
  padding:12px;
  background:radial-gradient(circle at center,rgba(215,184,102,.12),transparent 64%);
}
.gallery-item figcaption{border-top:1px solid var(--line);padding:12px 14px;font-weight:900}
.gallery-item figcaption span{display:block;color:var(--muted);font-weight:600;font-size:.86rem;margin-top:3px}
.config-wrap{display:grid;grid-template-columns:310px minmax(0,1fr) 300px;gap:18px}
.config-controls,.summary{padding:22px}
.config-controls label{display:block;color:var(--muted);font-weight:700;font-size:.9rem;margin-bottom:15px}
select,input,textarea{
  width:100%;
  margin-top:8px;
  border:1px solid var(--line);
  border-radius:15px;
  padding:13px;
  background:#0b0e10;
  color:var(--text);
}
textarea{min-height:120px;resize:vertical}
.check-group{border-top:1px solid var(--line);padding-top:15px;margin-top:8px}
.check-group label{display:flex;gap:10px;align-items:center;color:#e9eeee;margin-bottom:10px}
.check-group input{width:auto;margin:0}
.full{width:100%;margin-top:10px}
.config-stage{
  border:1px solid var(--line);
  border-radius:calc(var(--radius) + 8px);
  min-height:660px;
  background:radial-gradient(circle at 50% 20%,rgba(215,184,102,.15),transparent 38%),linear-gradient(180deg,#131719,#070808);
  display:flex;flex-direction:column;
  overflow:hidden;
  box-shadow:var(--shadow);
  padding:18px;
}
.stage-top{display:flex;justify-content:flex-end;gap:10px}
.mini{background:rgba(255,255,255,.06);color:#fff}
#configImg{
  margin:auto;
  width:min(100%,980px);
  max-height:570px;
  object-fit:contain;
  filter:drop-shadow(0 32px 38px rgba(0,0,0,.58));
  transition:.45s ease;
}
.config-stage.angle #configImg{transform:rotateY(-10deg) translateY(-6px)}
.config-stage.night{background:radial-gradient(circle at 50% 12%,rgba(32,98,151,.28),transparent 38%),linear-gradient(180deg,#05070b,#020202)}
.summary h3{font-size:1.8rem;margin:4px 0}
.price{font-size:2.4rem;color:var(--gold2);font-weight:900;margin:18px 0}
.summary-lines{border-block:1px solid var(--line);padding:14px 0;margin:14px 0}
.summary-lines div{display:flex;justify-content:space-between;gap:12px;margin:9px 0;color:#dbe4e4}
.contact-panel{
  border:1px solid var(--line);
  border-radius:calc(var(--radius) + 12px);
  background:linear-gradient(135deg,rgba(215,184,102,.13),rgba(255,255,255,.03));
  display:grid;grid-template-columns:1fr .8fr;gap:40px;
  padding:clamp(28px,5vw,64px);
  box-shadow:var(--shadow);
}
.contact-panel p{color:#d8dfdf}
form label{display:block;color:var(--muted);font-weight:700;font-size:.9rem;margin-bottom:13px}
footer{
  border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:20px;
  padding:36px clamp(18px,5vw,72px);
  color:var(--muted);
}
footer strong{color:#fff}
footer nav{display:flex;gap:18px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@media(max-width:1150px){
  .hero,.section-head,.config-wrap,.contact-panel{grid-template-columns:1fr}
  .hero-media{min-height:420px}
  .model-grid,.tech-grid{grid-template-columns:1fr 1fr}
  .gallery-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .menu-button{display:block}
  .pill{display:none}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;padding:20px;background:#060606;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}
  h1{font-size:3.75rem}
  .metrics,.model-grid,.tech-grid,.gallery-grid{grid-template-columns:1fr}
  .hero{grid-template-columns:1fr;padding-top:42px}
  .config-stage{min-height:470px}
  footer{flex-direction:column}
}


/* 360 configurator + CMS additions */
.admin-pill{margin-right:-14px}
.spin-controls{
  border-top:1px solid var(--line);
  margin-top:10px;
  padding-top:12px;
  color:var(--muted);
}
.spin-controls label{
  display:flex;
  align-items:center;
  gap:14px;
  font-weight:800;
}
.spin-controls input[type="range"]{
  margin:0;
  accent-color:var(--gold);
}
#spinHint{
  margin:.55rem 0 0;
  font-size:.85rem;
  color:var(--muted);
}
.config-stage.night #configImg{
  filter:drop-shadow(0 0 28px rgba(82,168,255,.22)) drop-shadow(0 32px 40px rgba(0,0,0,.68));
}
.cms-note{
  width:100%;
  margin:12px 0 0;
  color:var(--muted);
}
.cms-note a{color:var(--gold2);font-weight:900}



/* Added 360 drag and CMS fallback polish */
.vehicle-scene{touch-action:none;cursor:grab}
.vehicle-scene:active{cursor:grabbing}
.spin-controls input[type="range"]{flex:1;min-width:140px}
.gallery-item figcaption span{display:block;color:var(--muted);font-weight:600;font-size:.78rem;margin-top:4px}
.config-car-img{user-select:none;-webkit-user-drag:none}

/* Refined configurator controls */
.config-car-canvas{
  width:min(96%,980px);
  max-height:610px;
  aspect-ratio:2048 / 1744;
  position:relative;
  z-index:2;
  filter:drop-shadow(0 30px 35px rgba(0,0,0,.55));
  user-select:none;
  display:none;
}
.vehicle-scene.night .config-car-canvas{
  filter:drop-shadow(0 0 28px rgba(92,176,255,.20)) drop-shadow(0 30px 35px rgba(0,0,0,.65));
}
/* Reduce vertical spacing between homepage sections */
.hero {
  min-height: 72vh;
  padding-top: clamp(32px, 5vw, 72px);
  padding-bottom: clamp(24px, 4vw, 56px);
}

/* Stop the second hero/info block from becoming a full-screen section */
.hero.section-pad {
  min-height: auto;
  display: block;
  padding-top: clamp(35px, 5vw, 70px);
  padding-bottom: clamp(35px, 5vw, 70px);
}

/* Reduce normal section spacing */
.section-pad,
.section {
  padding-top: clamp(45px, 6vw, 85px);
  padding-bottom: clamp(45px, 6vw, 85px);
}

/* Keep the moving text strip compact */
.marquee,
.brand-strip {
  padding-top: 12px;
  padding-bottom: 12px;
}
/* Earth green theme override */
:root{
  --bg:#07100b;
  --bg2:#10170f;
  --panel:#121a12;
  --panel2:#1b2418;
  --text:#f6f1e9;
  --muted:#b5bcae;
  --line:rgba(236,244,224,.14);
  --gold:#7fa865;
  --gold2:#d7edc1;
  --bodyColor:#e7ece9;
  --shadow:0 36px 85px rgba(0,0,0,.44);
}
body{
  background:
    radial-gradient(circle at 65% 0%,rgba(127,168,101,.14),transparent 30%),
    radial-gradient(circle at 0% 20%,rgba(96,80,45,.22),transparent 34%),
    linear-gradient(180deg,#07100b,#030403 52%,#050705);
}
.site-header{background:rgba(4,6,4,.76)}
.pill,.header-cta{background:rgba(127,168,101,.14);color:var(--gold2)}
.button-gold,.button.primary{background:linear-gradient(135deg,var(--gold2),#3f5f32);color:#111;border-color:transparent}
.vehicle-orbit,.halo{background:radial-gradient(circle,rgba(127,168,101,.20),transparent 68%)}
.intro-card,.craft-card,.contact-panel{background:linear-gradient(135deg,rgba(127,168,101,.14),rgba(255,255,255,.03))}
.model-card img,.vehicle-gallery img,.gallery-item img{background:radial-gradient(circle at center,rgba(127,168,101,.13),transparent 64%)}
.model-image{background:radial-gradient(circle at 55% 30%,rgba(127,168,101,.18),transparent 38%),linear-gradient(135deg,#1d2519,#07100b)}
.filter.active{background:rgba(127,168,101,.20);color:var(--gold2);outline:2px solid rgba(127,168,101,.36)}
.config-stage{background:radial-gradient(circle at 50% 20%,rgba(127,168,101,.15),transparent 38%),linear-gradient(180deg,#121810,#060806)}
.config-stage.night,.vehicle-scene.night{background:radial-gradient(circle at 50% 12%,rgba(50,85,42,.30),transparent 38%),linear-gradient(180deg,#050805,#020302)}
.sun-glow{background:radial-gradient(circle,rgba(215,237,193,.20),transparent 68%)}
.config-stage.night #configImg,.vehicle-scene.night .config-car-canvas,.vehicle-scene.night .config-car-img{filter:drop-shadow(0 0 28px rgba(127,168,101,.23)) drop-shadow(0 30px 38px rgba(0,0,0,.66))}
select,input,textarea{background:#0b100b;color:var(--text)}
.swatch.active,.chip.active{outline-color:var(--gold)}
.spin-controls input[type="range"], input[type="range"]{accent-color:var(--gold)}




/* Reliable anchor/link scrolling fixes */
#top,
#home,
#models,
#gallery,
#craft,
#experience,
#contact,
#configurator,
#technology{
  scroll-margin-top: 96px;
}
.hero-visual{
  position:relative;
  min-height:500px;
  display:grid;
  place-items:center;
}
.site-footer a:hover,
.site-footer a:focus,
.brand:hover,
.brand:focus{
  color:var(--gold2);
}


/* About, details and fleet revenue sections added from the current RŌVA Motors content */
.about-section .about-text{
  max-width:760px;
  color:#d8dfd6;
  font-size:1.04rem;
  margin-top:-6px;
}
.detail-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.detail-card,
.revenue-grid article{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028));
  box-shadow:var(--shadow);
  padding:24px;
}
.detail-card span,
.revenue-grid article span{
  color:var(--gold);
  font-weight:900;
  letter-spacing:.18em;
  font-size:.78rem;
}
.detail-card h3,
.revenue-grid article h3{
  font-size:1.28rem;
  margin:10px 0 8px;
}
.detail-card p,
.revenue-grid article p,
.revenue-copy p{
  color:var(--muted);
}
.fleet-revenue{
  padding-top:clamp(45px,6vw,90px);
}
.revenue-panel{
  border:1px solid var(--line);
  border-radius:calc(var(--radius) + 12px);
  background:
    radial-gradient(circle at 18% 10%,rgba(215,237,193,.16),transparent 34%),
    linear-gradient(135deg,rgba(127,168,101,.15),rgba(255,255,255,.03));
  box-shadow:var(--shadow);
  padding:clamp(28px,5vw,64px);
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:30px;
  align-items:center;
}
.revenue-copy h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(2.35rem,4.8vw,5.1rem);
  line-height:.92;
  margin:14px 0 18px;
}
.revenue-copy .button{
  margin-top:18px;
}
.revenue-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
@media (max-width:1150px){
  .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .revenue-panel{grid-template-columns:1fr}
}
@media (max-width:760px){
  .detail-grid,
  .revenue-grid{grid-template-columns:1fr}
  .revenue-panel{padding:24px}
}

/* Anchor spacing for new sections */
#about,
#details,
#fleet-revenue{
  scroll-margin-top:96px;
}

/* Final green polish: stats icons, technology row, and detail images */
.text-accent,
.hero-stats svg,
.revenue-grid svg{
  color:var(--gold);
  stroke:currentColor;
}
.hero-stats svg{
  width:28px;
  height:28px;
  display:block;
  margin-bottom:10px;
  color:var(--gold);
  filter:drop-shadow(0 0 12px rgba(127,168,101,.38));
}
.hero-stats div{
  border-color:rgba(127,168,101,.28);
  background:
    radial-gradient(circle at 18% 10%,rgba(127,168,101,.16),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03));
}
.hero-stats div:hover{
  border-color:rgba(215,237,193,.34);
  transform:translateY(-2px);
  transition:.25s ease;
}
.details-feature-grid,
.detail-grid{
  align-items:stretch;
}
.detail-photo-card,
.detail-card{
  padding:0 !important;
  overflow:hidden;
  border-color:rgba(127,168,101,.24);
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028));
}
.detail-photo-card{
  display:flex;
  flex-direction:column;
}
.detail-photo,
.details-section .detail-card .model-image{
  height:clamp(280px,24vw,390px);
  min-height:clamp(280px,24vw,390px);
  margin:0 !important;
  border-radius:0 !important;
  overflow:hidden;
  background:linear-gradient(135deg,#10180f,#050705);
}
.detail-photo img,
.details-section .detail-card .model-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center;
  padding:0 !important;
  filter:none !important;
  transform:scale(1.02);
  background:none !important;
}
.detail-copy{
  flex:1;
  background:rgba(5,7,5,.28);
}
.details-section .detail-card > span{
  display:block;
  width:100%;
  height:100%;
  font-size:0;
  letter-spacing:0;
}
#technology,
.tech{
  background:
    radial-gradient(circle at 82% 10%,rgba(127,168,101,.12),transparent 32%),
    linear-gradient(180deg,rgba(7,16,11,.18),rgba(7,16,11,0));
}
.tech .section-head{
  align-items:end;
}
.tech-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  align-items:stretch;
}
.tech-card{
  min-height:100%;
  padding:24px;
  border-color:rgba(127,168,101,.24);
  background:
    radial-gradient(circle at 18% 8%,rgba(127,168,101,.15),transparent 40%),
    linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.028));
}
.tech-card span{
  color:var(--gold) !important;
}
.tech-card h3{
  color:var(--text);
}
.tech-card p:last-child{
  color:var(--gold2);
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-top:auto;
}

#about,
#details,
#fleet-revenue,
#technology,
#gallery,
#craft,
#experience,
#contact,
#configurator{
  scroll-margin-top:96px;
}

@media (max-width:1150px){
  .tech-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:760px){
  .tech-grid{grid-template-columns:1fr !important;}
  .detail-photo,
  .details-section .detail-card .model-image{
    height:320px;
    min-height:320px;
  }
}
/* Our Story section */
.story-section{
  padding-top:clamp(45px,6vw,85px);
  padding-bottom:clamp(45px,6vw,85px);
}
.story-panel{
  border:1px solid var(--line);
  border-radius:calc(var(--radius) + 12px);
  background:
    radial-gradient(circle at 15% 12%,rgba(127,168,101,.20),transparent 32%),
    linear-gradient(135deg,rgba(127,168,101,.14),rgba(255,255,255,.032));
  box-shadow:var(--shadow);
  padding:clamp(28px,5vw,64px);
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);
  gap:clamp(24px,4vw,52px);
  align-items:center;
}
.story-copy p{
  color:#d8dfd5;
  font-size:1.06rem;
  max-width:760px;
}
.story-copy .button{margin-top:10px}
.story-cards{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.story-cards article{
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px;
  background:rgba(255,255,255,.045);
}
.story-cards span{
  color:var(--gold);
  font-weight:900;
  letter-spacing:.14em;
}
.story-cards h3{
  margin:6px 0 8px;
  font-size:1.18rem;
}
.story-cards p{
  margin:0;
  color:var(--muted);
}
@media(max-width:900px){
  .story-panel{grid-template-columns:1fr}
}
#our-story{scroll-margin-top:96px}

/* =========================================================
   FINAL HARMONY PASS — black luxury base with green accents
   ========================================================= */
:root{
  --bg:#030403;
  --bg2:#07100b;
  --panel:#080d08;
  --panel2:#0d160d;
  --text:#f6f4ee;
  --muted:#aeb7aa;
  --line:rgba(215,237,193,.15);
  --gold:#7fa865;
  --gold2:#d7edc1;
  --green-glow:rgba(127,168,101,.18);
  --green-soft:rgba(127,168,101,.10);
  --card-bg:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.022));
  --shadow:0 34px 86px rgba(0,0,0,.50);
}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  background:
    radial-gradient(circle at 72% 0%,rgba(127,168,101,.11),transparent 28%),
    radial-gradient(circle at 0% 18%,rgba(42,65,36,.24),transparent 34%),
    linear-gradient(180deg,#030403 0%,#050705 46%,#020302 100%) !important;
  color:var(--text);
}
.site-header{
  background:rgba(2,3,2,.84) !important;
  border-bottom:1px solid var(--line);
  box-shadow:0 12px 30px rgba(0,0,0,.24);
}
.brand-mark,.brand-word{color:#fff}.brand-sub,.brand-line{color:var(--gold2)}
.main-nav a,.nav a,.site-footer a{transition:color .2s ease, opacity .2s ease}.main-nav a:hover,.main-nav a:focus,.nav a:hover,.nav a:focus,.site-footer a:hover,.site-footer a:focus{color:var(--gold2)}
.header-cta,.pill{background:rgba(127,168,101,.14) !important;color:var(--gold2);border-color:rgba(215,237,193,.24)}
.button-gold,.button.primary{
  background:linear-gradient(135deg,#d7edc1 0%,#7fa865 52%,#3f5f32 100%) !important;
  color:#071007 !important;
  border-color:transparent !important;
  box-shadow:0 14px 34px rgba(127,168,101,.20);
}
.button-outline,.button.ghost,.mini-button,.mini{background:rgba(255,255,255,.055) !important;border-color:var(--line);color:#f7f4ee}
.section-pad,.section{padding-top:clamp(56px,7vw,98px);padding-bottom:clamp(56px,7vw,98px)}
.hero{min-height:78vh;background:transparent}.hero.section-pad{min-height:auto}.marquee{background:rgba(255,255,255,.025);border-color:var(--line)}
.kicker,.section-kicker,.eyebrow,.tech-card span,.revenue-grid article span,.step span,.check span{color:var(--gold2) !important}
.hero h1 span,h1 span,.price{color:var(--gold2) !important}.lead,.hero-text,.section-head p,.about-text,.craft-copy p,.contact-panel p,.model-card p,.tech-card p,.small,.revenue-copy p,.revenue-grid article p{color:var(--muted)}
.vehicle-orbit,.halo{background:radial-gradient(circle,var(--green-glow),transparent 68%) !important}
.model-card,.experience-card,.summary-card,.config-panel,.tech-card,.detail-card,.revenue-grid article,.vehicle-gallery figure,.gallery-item,.hero-stats div,.craft-metrics div{
  background:var(--card-bg) !important;
  border-color:var(--line) !important;
  box-shadow:var(--shadow);
}
.model-image,.model-card img,.vehicle-gallery img,.gallery-item img{
  background:radial-gradient(circle at center,rgba(127,168,101,.13),transparent 64%) !important;
}
.craft-card,.contact-panel,.revenue-panel,.intro-card{
  background:
    radial-gradient(circle at 18% 8%,rgba(215,237,193,.13),transparent 32%),
    linear-gradient(135deg,rgba(127,168,101,.12),rgba(255,255,255,.025)) !important;
  border-color:var(--line) !important;
}
.config-stage{
  background:radial-gradient(circle at 50% 20%,rgba(127,168,101,.16),transparent 38%),linear-gradient(180deg,#0c110c,#040604) !important;
  border-color:var(--line) !important;
}
.sun-glow{background:radial-gradient(circle,rgba(215,237,193,.19),transparent 68%) !important}
.hero-stats svg,.revenue-grid svg,.text-accent{color:var(--gold2) !important;stroke:currentColor !important}
.hero-stats div{min-height:150px;display:flex;flex-direction:column;gap:6px;justify-content:center}.hero-stats svg{width:24px;height:24px;margin-bottom:6px}
.revenue-grid article span:first-child{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(127,168,101,.13);border:1px solid rgba(215,237,193,.20);letter-spacing:0}
.revenue-grid article span + span{display:none}.revenue-grid svg{width:22px;height:22px}
.tech-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.tech-card{padding:24px;min-height:100%;display:flex;flex-direction:column}.tech-card p:last-child{margin-top:auto;color:var(--gold2);font-weight:900;letter-spacing:.08em}.tech-card h3{color:#fff}
.details-section{padding-top:clamp(42px,6vw,86px);padding-bottom:clamp(42px,6vw,86px)}
.sr-only{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.detail-grid-pictures-only{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.detail-grid-pictures-only .detail-card{padding:0;overflow:hidden;aspect-ratio:1/1;border-radius:28px;background:#050705 !important}
.detail-grid-pictures-only .detail-card img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:none;transition:transform .45s ease}
.detail-grid-pictures-only .detail-card:hover img{transform:scale(1.035)}
.vehicle-gallery figure{background:#050705 !important}.vehicle-gallery img{object-fit:contain}.vehicle-gallery figcaption{border-top:1px solid var(--line);color:#f4f1e9}
select,input,textarea{background:#070b07 !important;color:var(--text);border-color:var(--line)}
.swatch.active,.chip.active{outline-color:var(--gold2) !important}.chip{background:rgba(255,255,255,.055);border-color:var(--line)}
.site-footer{background:#020302;border-top:1px solid var(--line)}
#top,#home,#about,#models,#details,#fleet-revenue,#technology,#gallery,#craft,#experience,#contact,#configurator{scroll-margin-top:96px}
@media(max-width:1150px){
  .tech-grid,.detail-grid-pictures-only{grid-template-columns:repeat(2,minmax(0,1fr))}
  .revenue-panel{grid-template-columns:1fr}.revenue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .tech-grid,.detail-grid-pictures-only,.revenue-grid{grid-template-columns:1fr}
  .section-pad,.section{padding-top:48px;padding-bottom:48px}
  .hero{min-height:auto}.hero-stats div{min-height:auto}
}


/* Visible intro text for the Details picture section */
.details-section .detail-intro{
  margin-bottom:24px;
}
.details-section .detail-intro h2{
  color:#fff;
}
.details-section .detail-intro p:last-child{
  color:var(--muted);
  max-width:620px;
}

/* Mobile gallery fix: keep the gallery usable and readable on phones */
#gallery{
  overflow-x:hidden;
}
.vehicle-gallery,
#vehicleGallery{
  width:100%;
  max-width:100%;
}
.vehicle-gallery figure,
.gallery-item{
  min-width:0;
  touch-action:pan-y;
}
.vehicle-gallery figure:hover,
.gallery-item:hover{
  transform:none;
}
@media(max-width:760px){
  #gallery{
    padding-left:16px;
    padding-right:16px;
  }
  .vehicle-gallery,
  #vehicleGallery{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .vehicle-gallery figure,
  .gallery-item{
    width:100% !important;
    margin:0 !important;
    border-radius:22px;
    overflow:hidden;
  }
  
  .vehicle-gallery img,
  .gallery-item img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:4 / 3;
    object-fit:contain !important;
    padding:10px !important;
  }
  .vehicle-gallery figcaption,
  .gallery-item figcaption{
    font-size:.86rem;
    line-height:1.35;
    padding:10px 12px;
  }
}
@media(min-width:761px) and (max-width:1150px){
  .vehicle-gallery,
  #vehicleGallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
/* Footer quick links in one column */
.rova-footer .footer-links {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  gap: 8px;
  align-items: flex-start;
}

.rova-footer .footer-links a {
  display: block !important;
  white-space: normal;
  
}

/* Footer social links */
.footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}

.footer-socials a {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 8px 12px;
  color: var(--gold2);
  background: rgba(127, 168, 101, 0.08);
  font-weight: 700;
  font-size: 0.9rem;
}

.footer-socials a:hover {
  background: rgba(127, 168, 101, 0.18);
  color: var(--text);
}
/* RŌVA footer layout */
.rova-footer {
  display: grid;
  grid-template-columns: 1.3fr 0.8fr 1fr 0.8fr;
  gap: 34px;
  align-items: start;
  background: #030403;
}

.rova-footer h3,
.rova-footer h4 {
  margin: 0 0 14px;
  color: var(--text);
}

.rova-footer h3 {
  font-size: 1.7rem;
  letter-spacing: 0.18em;
}

.rova-footer h4 {
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--gold);
}

.rova-footer p,
.rova-footer a {
  color: var(--muted);
  line-height: 1.7;
}

.rova-footer a:hover {
  color: var(--gold2);
}

.footer-links,
.footer-contact {
  display: grid;
  gap: 8px;
}

.footer-tags {
  color: var(--gold2);
  font-weight: 800;
}

/* Correct responsive footer rules */
@media (max-width: 900px) {
  .rova-footer {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 620px) {
  .rova-footer {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   RÔVA CLEAN RESPONSIVE MOBILE — NO SWIPE
   Removes swipe behavior and swipe text.
   Uses simple gallery-style responsive cards/windows on mobile.
   ========================================================= */

html,
body {
  background-color: #07100b !important;
}

body {
  background:
    radial-gradient(circle at 50% -8%, rgba(127,168,101,.20), transparent 34%),
    radial-gradient(circle at 0% 20%, rgba(96,80,45,.14), transparent 38%),
    linear-gradient(180deg, #07100b 0%, #0a1209 32%, #0d160d 58%, #07100b 100%) !important;
  background-attachment: fixed !important;
}

section,
.hero,
.section,
.section-pad,
.models,
.details-section,
.tech,
.gallery,
.configurator,
.fleet-revenue,
.site-footer,
footer,
.hero-copy,
.hero-visual {
  background-color: transparent !important;
}

/* Keep the smooth hero background transition */
main > .hero:first-of-type {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

main > .hero:first-of-type::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 50% 42%, rgba(127,168,101,.18), transparent 44%),
    linear-gradient(180deg, rgba(7,16,11,.92) 0%, rgba(13,22,13,.88) 58%, rgba(7,16,11,.92) 100%) !important;
}

.marquee,
.brand-strip {
  background: linear-gradient(180deg, rgba(7,16,11,.82), rgba(9,17,10,.82)) !important;
  border-color: rgba(236,244,224,.12) !important;
}

.vehicle-orbit,
.halo {
  opacity: .78 !important;
  background: radial-gradient(circle, rgba(127,168,101,.18), transparent 68%) !important;
}

/* Collection heading in the same clean style as Gallery */
#models .section-kicker,
#models .models-gallery-heading .kicker {
  color: var(--gold2) !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  font-weight: 900 !important;
  font-size: .75rem !important;
  margin: 0 0 14px !important;
}

#models .section-head {
  display: block !important;
  max-width: 980px !important;
  margin-bottom: 34px !important;
}

#models .section-head h2,
#models .models-gallery-heading h2 {
  font-family: "Playfair Display", serif !important;
  font-size: clamp(2.6rem, 5.2vw, 5.5rem) !important;
  line-height: .92 !important;
  letter-spacing: -0.035em !important;
  margin: 0 0 20px !important;
}

#models .section-head p,
#models .models-gallery-heading p:not(.kicker) {
  color: var(--muted) !important;
  font-size: 1.06rem !important;
  line-height: 1.6 !important;
  max-width: 760px !important;
  margin: 0 !important;
}

@media (max-width: 760px) {

  /* Remove all swipe text completely */
  #models .section-kicker::after,
  #models .models-gallery-heading h2::after,
  #models .models-gallery-heading .kicker::after,
  #technology .section-head::after,
  #technology .section-head h2::after,
  .tech .section-head::after,
  .tech .section-head h2::after,
  #gallery > div:first-child::after,
  #gallery .kicker::after {
    content: none !important;
    display: none !important;
  }

  /* Header and hero responsive */
  .site-header {
    min-height: 78px !important;
    padding: 14px 18px !important;
    background: rgba(4,6,4,.86) !important;
    backdrop-filter: blur(18px) !important;
  }

  .brand-logo img,
  .brand img {
    max-width: 150px !important;
    height: auto !important;
  }

  main > .hero:first-of-type {
    min-height: auto !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    padding: 108px 20px 0 !important;
    margin: 0 !important;
  }

  main > .hero:first-of-type .hero-copy {
    text-align: center !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  main > .hero:first-of-type h1 {
    font-size: clamp(3rem, 14vw, 3.85rem) !important;
    line-height: .92 !important;
    margin-top: 16px !important;
    margin-bottom: 26px !important;
  }

  main > .hero:first-of-type .hero-text {
    font-size: 1.02rem !important;
    line-height: 1.58 !important;
    margin: 22px auto 0 !important;
    max-width: 92vw !important;
  }

  main > .hero:first-of-type .hero-actions {
    margin: 34px 0 0 !important;
    justify-content: center !important;
    gap: 18px !important;
  }

  main > .hero:first-of-type .hero-actions .button {
    width: 100% !important;
  }

  main > .hero:first-of-type .hero-visual {
    min-height: 350px !important;
    margin: 34px -20px 0 !important;
    padding: 0 20px 26px !important;
    display: grid !important;
    place-items: center !important;
  }

  main > .hero:first-of-type .hero-car {
    max-height: 330px !important;
    width: 96% !important;
    margin: 0 auto !important;
  }

  /* About stats compact windows */
  #about.hero {
    display: block !important;
    min-height: auto !important;
    padding: 56px 20px 54px !important;
  }

  #about .hero-copy {
    text-align: left !important;
  }

  #about h1 {
    font-size: clamp(2.55rem, 11.5vw, 3.35rem) !important;
    line-height: .94 !important;
    letter-spacing: -0.045em !important;
    margin: 0 0 28px !important;
  }

  #about .lead {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    max-width: none !important;
  }

  #about .revenue-grid {
    display: block !important;
    margin-top: 30px !important;
  }

  #about .hero-stats {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    max-width: none !important;
  }

  #about .hero-stats article {
    border: 1px solid rgba(236,244,224,.14) !important;
    border-radius: 22px !important;
    background:
      radial-gradient(circle at 18% 10%, rgba(127,168,101,.14), transparent 38%),
      linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.028)) !important;
    box-shadow: 0 20px 48px rgba(0,0,0,.28) !important;
    padding: 12px 14px !important;
    min-height: 74px !important;
    display: grid !important;
    grid-template-columns: 42px auto 1fr !important;
    grid-template-rows: auto auto !important;
    align-items: center !important;
    column-gap: 12px !important;
    row-gap: 5px !important;
  }

  #about .hero-stats article > span:first-child {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    display: flex !important;
    width: 42px !important;
    height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(215,237,193,.25) !important;
    border-radius: 14px !important;
    color: var(--gold2) !important;
  }

  #about .hero-stats article > span:first-child svg {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
    color: var(--gold2) !important;
    stroke: currentColor !important;
  }

  #about .hero-stats article > span:nth-of-type(2),
  #about .hero-stats article br {
    display: none !important;
  }

  #about .hero-stats article > p:first-of-type {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    color: var(--muted) !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    letter-spacing: .12em !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  #about .hero-stats article > span:has(h3) {
    grid-column: 3 !important;
    grid-row: 1 !important;
    display: block !important;
    min-width: 0 !important;
    text-align: right !important;
  }

  #about .hero-stats article h3 {
    margin: 0 !important;
    color: var(--gold2) !important;
    font-size: clamp(15px, 4.1vw, 18px) !important;
    line-height: 1.05 !important;
    letter-spacing: .06em !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
  }

  #about .hero-stats article > p:last-child {
    grid-column: 2 / 4 !important;
    grid-row: 2 !important;
    margin: 0 !important;
    color: var(--muted) !important;
    font-size: 13px !important;
    line-height: 1.28 !important;
  }

  /* No swipe: simple gallery-style responsive grids */
  #models .model-grid,
  #technology .tech-grid,
  .tech .tech-grid,
  #gallery .vehicle-gallery,
  #gallery #vehicleGallery,
  #gallery .gallery-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    scroll-snap-type: none !important;
  }

  #models .model-card,
  #technology .tech-card,
  .tech .tech-card,
  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: none !important;
    scroll-snap-align: none !important;
    margin: 0 !important;
  }

  #models .model-card img {
    height: 230px !important;
    object-fit: contain !important;
  }

  #gallery .vehicle-gallery img,
  #gallery #vehicleGallery img,
  #gallery .gallery-item img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: contain !important;
    padding: 10px !important;
  }

  #gallery .vehicle-gallery figcaption,
  #gallery #vehicleGallery figcaption,
  #gallery .gallery-item figcaption {
    display: block !important;
    font-size: .86rem !important;
    line-height: 1.35 !important;
    padding: 11px 12px !important;
    color: var(--text) !important;
  }

  /* Details small windows on mobile */
  #details {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
    overflow: hidden !important;
  }

  #details .detail-intro {
    margin-bottom: 22px !important;
  }

  #details .detail-intro h2 {
    font-size: clamp(2.45rem, 12vw, 3.6rem) !important;
    line-height: .92 !important;
    margin-bottom: 14px !important;
  }

  #details .detail-grid,
  #details .detail-grid-pictures-only {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
  }

  #details .detail-card {
    aspect-ratio: 1 / 1 !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #050705 !important;
    border: 1px solid rgba(215,237,193,.16) !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.34) !important;
  }

  #details .detail-card img,
  #details .detail-card .model-image img,
  #details .detail-photo img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    filter: none !important;
    transform: none !important;
  }

  #details .detail-card:first-child {
    grid-column: span 2 !important;
    aspect-ratio: 16 / 10 !important;
  }

  #details .detail-card:has(img[src*="d14.jpg"]) {
    display: none !important;
  }

  .rova-footer {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 430px) {
  #details .detail-grid,
  #details .detail-grid-pictures-only {
    gap: 9px !important;
  }

  #details .detail-card {
    border-radius: 14px !important;
  }
}

/* =========================================================
   END RÔVA CLEAN RESPONSIVE MOBILE — NO SWIPE
   ========================================================= */

/* =========================================================
   RÔVA GALLERY — TOP ARROWS ONLY
   One carousel function. The arrows stay above the pictures.
   Duplicate arrows inside the cards/pictures are hidden.
   ========================================================= */

#gallery {
  overflow: hidden !important;
}

#gallery .gallery-title-row {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  margin-bottom: 24px !important;
}

#gallery .gallery-title-copy h2 {
  margin-bottom: 0 !important;
}

#gallery .gallery-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  margin-left: auto !important;
  padding-top: 44px !important;
  flex: 0 0 auto !important;
}

#gallery .gallery-carousel-shell {
  position: relative !important;
  width: 100% !important;
  margin-top: 0 !important;
}

#gallery .vehicle-gallery,
#gallery #vehicleGallery {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 4px 6px 20px !important;
  margin: 0 !important;
  scrollbar-width: none !important;
}

#gallery .vehicle-gallery::-webkit-scrollbar,
#gallery #vehicleGallery::-webkit-scrollbar {
  display: none !important;
}

/* 4 cards visible on desktop, tablet and mobile */
#gallery .vehicle-gallery figure,
#gallery #vehicleGallery figure,
#gallery .gallery-item {
  flex: 0 0 calc((100% - 54px) / 4) !important;
  min-width: calc((100% - 54px) / 4) !important;
  max-width: calc((100% - 54px) / 4) !important;
  scroll-snap-align: start !important;
  margin: 0 !important;
  border-radius: 24px !important;
  overflow: hidden !important;
}

#gallery .vehicle-gallery img,
#gallery #vehicleGallery img,
#gallery .gallery-item img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: contain !important;
  padding: 12px !important;
}

#gallery .vehicle-gallery figcaption,
#gallery #vehicleGallery figcaption,
#gallery .gallery-item figcaption {
  display: block !important;
  border-top: 1px solid var(--line) !important;
  padding: 12px 14px !important;
  color: var(--text) !important;
  font-size: .9rem !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}

/* Hide old/duplicate arrows that sit on top of the pictures */
#gallery .gallery-carousel-shell > .gallery-arrow,
#gallery .vehicle-gallery .gallery-arrow,
#gallery #vehicleGallery .gallery-arrow,
#gallery figure .gallery-arrow,
#gallery .gallery-item .gallery-arrow,
#gallery .swiper-button-prev,
#gallery .swiper-button-next,
#gallery .card-arrow,
#gallery .image-arrow {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* These are the only visible gallery arrows */
#gallery .gallery-controls .gallery-arrow {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  z-index: 5 !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(215,237,193,.28) !important;
  background: rgba(3,4,3,.78) !important;
  color: var(--gold2) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 34px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.42) !important;
  backdrop-filter: blur(12px) !important;
  transition: transform .2s ease, opacity .2s ease, background .2s ease !important;
}

#gallery .gallery-controls .gallery-arrow:hover {
  background: rgba(127,168,101,.18) !important;
  transform: scale(1.04) !important;
}

#gallery .gallery-controls .gallery-arrow.is-disabled {
  opacity: .35 !important;
  pointer-events: none !important;
}

/* Tablet: still 4 cards visible */
@media (min-width: 761px) and (max-width: 1150px) {
  #gallery .vehicle-gallery,
  #gallery #vehicleGallery {
    gap: 14px !important;
  }

  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    flex-basis: calc((100% - 42px) / 4) !important;
    min-width: calc((100% - 42px) / 4) !important;
    max-width: calc((100% - 42px) / 4) !important;
    border-radius: 22px !important;
  }

  #gallery .vehicle-gallery figcaption,
  #gallery #vehicleGallery figcaption,
  #gallery .gallery-item figcaption {
    font-size: .82rem !important;
    padding: 10px 11px !important;
  }
}

/* Mobile: still 4 cards visible, with only the top arrows */
@media (max-width: 760px) {
  #gallery {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  #gallery .gallery-title-row {
    align-items: flex-end !important;
    gap: 14px !important;
    margin-bottom: 18px !important;
  }

  #gallery .gallery-controls {
    padding-top: 0 !important;
    gap: 10px !important;
  }

  #gallery .gallery-controls .gallery-arrow {
    width: 38px !important;
    height: 38px !important;
    font-size: 26px !important;
  }

  #gallery .vehicle-gallery,
  #gallery #vehicleGallery {
    gap: 8px !important;
    padding: 4px 2px 18px !important;
  }

  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    flex: 0 0 calc((100% - 24px) / 4) !important;
    min-width: calc((100% - 24px) / 4) !important;
    max-width: calc((100% - 24px) / 4) !important;
    border-radius: 14px !important;
  }

  #gallery .vehicle-gallery img,
  #gallery #vehicleGallery img,
  #gallery .gallery-item img {
    aspect-ratio: 1 / 1 !important;
    padding: 5px !important;
  }

  #gallery .vehicle-gallery figcaption,
  #gallery #vehicleGallery figcaption,
  #gallery .gallery-item figcaption {
    font-size: .58rem !important;
    line-height: 1.15 !important;
    padding: 6px 5px !important;
    min-height: 34px !important;
  }
}

@media (max-width: 430px) {
  #gallery .vehicle-gallery,
  #gallery #vehicleGallery {
    gap: 7px !important;
  }

  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    flex-basis: calc((100% - 21px) / 4) !important;
    min-width: calc((100% - 21px) / 4) !important;
    max-width: calc((100% - 21px) / 4) !important;
  }

  #gallery .vehicle-gallery figcaption,
  #gallery #vehicleGallery figcaption,
  #gallery .gallery-item figcaption {
    font-size: .54rem !important;
    padding: 5px 4px !important;
  }
}

/* FINAL GALLERY RESPONSIVE COUNTS — desktop 4, tablet 2, mobile 1 */
#gallery .gallery-carousel-shell {
  position: relative !important;
  width: 100% !important;
  overflow: visible !important;
}

#gallery .vehicle-gallery,
#gallery #vehicleGallery {
  display: flex !important;
  grid-template-columns: none !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
}

#gallery .vehicle-gallery::-webkit-scrollbar,
#gallery #vehicleGallery::-webkit-scrollbar {
  display: none !important;
}

/* Desktop: 4 carts visible */
@media (min-width: 1151px) {
  #gallery .vehicle-gallery,
  #gallery #vehicleGallery {
    gap: 18px !important;
    padding: 4px 6px 20px !important;
  }

  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    flex: 0 0 calc((100% - 54px) / 4) !important;
    min-width: calc((100% - 54px) / 4) !important;
    max-width: calc((100% - 54px) / 4) !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
  }
}

/* Tablet: 2 carts visible */
@media (min-width: 761px) and (max-width: 1150px) {
  #gallery .vehicle-gallery,
  #gallery #vehicleGallery {
    gap: 16px !important;
    padding: 4px 4px 20px !important;
  }

  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    flex: 0 0 calc((100% - 16px) / 2) !important;
    min-width: calc((100% - 16px) / 2) !important;
    max-width: calc((100% - 16px) / 2) !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
    border-radius: 22px !important;
  }

  #gallery .vehicle-gallery figcaption,
  #gallery #vehicleGallery figcaption,
  #gallery .gallery-item figcaption {
    font-size: .92rem !important;
    line-height: 1.25 !important;
    padding: 12px 14px !important;
    min-height: 48px !important;
  }
}

/* Mobile: 1 cart visible */
@media (max-width: 760px) {
  #gallery {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  #gallery .gallery-title-row {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 18px !important;
  }

  #gallery .gallery-controls {
    padding-top: 0 !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
  }

  #gallery .gallery-controls .gallery-arrow {
    width: 40px !important;
    height: 40px !important;
    font-size: 27px !important;
  }

  #gallery .vehicle-gallery,
  #gallery #vehicleGallery {
    gap: 14px !important;
    padding: 4px 0 18px !important;
  }

  #gallery .vehicle-gallery figure,
  #gallery #vehicleGallery figure,
  #gallery .gallery-item {
    flex: 0 0 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
    border-radius: 22px !important;
  }

  #gallery .vehicle-gallery img,
  #gallery #vehicleGallery img,
  #gallery .gallery-item img {
    aspect-ratio: 4 / 3 !important;
    padding: 12px !important;
    object-fit: contain !important;
  }

  #gallery .vehicle-gallery figcaption,
  #gallery #vehicleGallery figcaption,
  #gallery .gallery-item figcaption {
    font-size: .95rem !important;
    line-height: 1.28 !important;
    padding: 12px 14px !important;
    min-height: 54px !important;
  }
}

/* =========================================================
   RÔVA FINAL FIX PACK — top background, details desktop 4-up,
   and smart mobile header/hamburger stability.
   Keep this at the very end of the last loaded CSS file.
   ========================================================= */

html,
body {
  background-color: #07100b !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body {
  background:
    radial-gradient(circle at 72% -10%, rgba(127,168,101,.16), transparent 32%),
    radial-gradient(circle at 0% 18%, rgba(96,80,45,.12), transparent 36%),
    linear-gradient(180deg, #07100b 0%, #07100b 24%, #081109 58%, #050705 100%) !important;
  background-attachment: scroll !important;
}

main,
main > section,
.hero,
.hero-copy,
.hero-visual,
.section,
.section-pad {
  background-color: transparent !important;
}

/* Remove the old rectangular hero overlays that caused the top horizontal band/seam. */
main > .hero:first-of-type,
body main > section.hero:first-of-type,
.hero:first-of-type {
  position: relative !important;
  isolation: isolate !important;
  background-color: #07100b !important;
  background-image:
    radial-gradient(circle at 74% 43%, rgba(127,168,101,.14) 0%, rgba(127,168,101,.08) 30%, transparent 58%),
    radial-gradient(circle at 45% 20%, rgba(215,237,193,.045) 0%, transparent 58%),
    linear-gradient(180deg, #07100b 0%, #07100b 62%, #07100b 100%) !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
  background-position: center center !important;
}

main > .hero:first-of-type::before,
main > .hero:first-of-type::after,
body main > section.hero:first-of-type::before,
body main > section.hero:first-of-type::after,
.hero:first-of-type::before,
.hero:first-of-type::after {
  content: none !important;
  display: none !important;
  background: none !important;
  box-shadow: none !important;
}

main > .hero:first-of-type .vehicle-orbit,
main > .hero:first-of-type .halo {
  opacity: .82 !important;
  background: radial-gradient(circle, rgba(127,168,101,.18), transparent 68%) !important;
}

/* Desktop browser: It's In The Details must be exactly 4 columns. */
@media (min-width: 1151px) {
  #details .detail-grid,
  #details .detail-grid-pictures-only,
  .details-section .detail-grid,
  .details-section .detail-grid-pictures-only {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
  }

  #details .detail-card,
  .details-section .detail-grid-pictures-only .detail-card {
    width: 100% !important;
    min-width: 0 !important;
    grid-column: auto !important;
    aspect-ratio: 1 / 1 !important;
  }

  #details .detail-card:has(img[src*="d14.jpg"]) {
    display: block !important;
  }
}

/* Keep the mobile details layout exactly as requested: small windows, not desktop 4-up. */
@media (max-width: 760px) {
  #details .detail-grid,
  #details .detail-grid-pictures-only {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  #details .detail-card:first-child {
    grid-column: span 2 !important;
    aspect-ratio: 16 / 10 !important;
  }

  #details .detail-card:has(img[src*="d14.jpg"]) {
    display: none !important;
  }
}

/* Smart mobile header: hidden when scrolling down, visible when scrolling up. */
.site-header {
  transform: translate3d(0,0,0) !important;
  transition: transform .26s ease, background .24s ease, box-shadow .24s ease !important;
  will-change: transform !important;
}

.site-header.is-scrolled {
  background: rgba(3,4,3,.94) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.32) !important;
}

.site-header.is-hidden {
  transform: translate3d(0,-120%,0) !important;
}

body.menu-open .site-header,
.site-header.menu-force-visible {
  transform: translate3d(0,0,0) !important;
}

@media (max-width: 760px) {
  :root { --rova-mobile-header-height: 74px; }

  body.menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  .site-header {
    min-height: var(--rova-mobile-header-height) !important;
    height: var(--rova-mobile-header-height) !important;
    padding: 10px 18px !important;
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) 64px !important;
    align-items: center !important;
    gap: 18px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 10050 !important;
  }

  .site-header > .brand-logo,
  .site-header > .brand {
    grid-column: 2 !important;
    justify-self: center !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    z-index: 10052 !important;
  }

  .site-header > .brand-logo img,
  .site-header > .brand img {
    height: auto !important;
    max-height: 37px !important;
    max-width: min(178px, 44vw) !important;
    object-fit: contain !important;
  }

  .nav-toggle {
    grid-column: 3 !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(215,237,193,.24) !important;
    background: rgba(127,168,101,.12) !important;
    color: var(--text) !important;
    font-size: 1.45rem !important;
    line-height: 1 !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
    position: relative !important;
    z-index: 10055 !important;
  }

  .header-cta { display: none !important; }

  .main-nav {
    position: fixed !important;
    top: var(--rova-mobile-header-height) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    height: calc(100vh - var(--rova-mobile-header-height)) !important;
    height: calc(100svh - var(--rova-mobile-header-height)) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(18px, 4vh, 30px) !important;
    padding: 28px 24px 42px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(127,168,101,.20), transparent 36%),
      linear-gradient(180deg, rgba(2,3,2,.985), rgba(5,8,5,.985)) !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: blur(22px) !important;
    -webkit-backdrop-filter: blur(22px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(0,-8px,0) !important;
    transition: opacity .25s ease, visibility .25s ease, transform .25s ease !important;
    z-index: 10040 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .main-nav.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0,0,0) !important;
  }

  .main-nav a {
    display: block !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    color: var(--text) !important;
    font-family: "Playfair Display", serif !important;
    font-size: clamp(2.15rem, 8.8vw, 3.7rem) !important;
    line-height: .95 !important;
    letter-spacing: .01em !important;
    text-align: center !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .main-nav a:active,
  .main-nav a:hover,
  .main-nav a:focus-visible {
    color: var(--gold2) !important;
  }
}

@media (max-width: 420px) {
  .site-header {
    grid-template-columns: 56px minmax(0,1fr) 56px !important;
    gap: 14px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .site-header > .brand-logo img,
  .site-header > .brand img {
    max-width: min(158px, 42vw) !important;
    max-height: 34px !important;
  }
}

/* =========================================================
   FINAL MOBILE STICKY HAMBURGER / HEADER FIX
   The mobile header is fixed to the top, hides on scroll down,
   and comes back/sticks immediately when scrolling up.
   ========================================================= */
html {
  scroll-padding-top: 96px !important;
}

.site-header.js-smart-header {
  will-change: transform !important;
  transition: transform .26s ease, background .24s ease, box-shadow .24s ease !important;
}

.site-header.js-smart-header.is-hidden {
  transform: translate3d(0,-120%,0) !important;
}

.site-header.js-smart-header.is-scrolled {
  background: rgba(3,4,3,.95) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.34) !important;
}

body.menu-open .site-header.js-smart-header,
.site-header.js-smart-header.menu-force-visible,
.site-header.js-smart-header.is-visible {
  transform: translate3d(0,0,0) !important;
}

@media (max-width: 760px) {
  :root {
    --rova-mobile-header-height: 76px;
  }

  body {
    padding-top: var(--rova-mobile-header-height) !important;
  }

  body.menu-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  .site-header,
  .site-header.js-smart-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: var(--rova-mobile-header-height) !important;
    height: var(--rova-mobile-header-height) !important;
    padding: 10px 18px !important;
    display: grid !important;
    grid-template-columns: 70px minmax(0,1fr) 70px !important;
    align-items: center !important;
    gap: 20px !important;
    z-index: 10050 !important;
    transform: translate3d(0,0,0) !important;
    -webkit-transform: translate3d(0,0,0) !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }

  .site-header.js-smart-header.is-hidden:not(.menu-force-visible) {
    transform: translate3d(0,-120%,0) !important;
    -webkit-transform: translate3d(0,-120%,0) !important;
    pointer-events: none !important;
  }

  .site-header.js-smart-header.is-visible,
  body.menu-open .site-header.js-smart-header,
  .site-header.js-smart-header.menu-force-visible {
    transform: translate3d(0,0,0) !important;
    -webkit-transform: translate3d(0,0,0) !important;
    pointer-events: auto !important;
  }

  .site-header > .brand-logo,
  .site-header > .brand {
    grid-column: 2 !important;
    justify-self: center !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    -webkit-transform: none !important;
    margin: 0 !important;
    max-width: 100% !important;
    z-index: 10052 !important;
  }

  .site-header > .brand-logo img,
  .site-header > .brand img {
    height: auto !important;
    max-height: 37px !important;
    max-width: min(172px, 43vw) !important;
    object-fit: contain !important;
  }

  .nav-toggle {
    grid-column: 3 !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(215,237,193,.26) !important;
    background: rgba(127,168,101,.13) !important;
    color: var(--text) !important;
    font-size: 1.46rem !important;
    line-height: 1 !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
    position: relative !important;
    z-index: 10055 !important;
  }

  .main-nav {
    position: fixed !important;
    top: var(--rova-mobile-header-height) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    height: calc(100vh - var(--rova-mobile-header-height)) !important;
    height: calc(100svh - var(--rova-mobile-header-height)) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(18px, 4vh, 30px) !important;
    padding: 28px 24px 42px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(127,168,101,.20), transparent 36%),
      linear-gradient(180deg, rgba(2,3,2,.988), rgba(5,8,5,.988)) !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: blur(22px) !important;
    -webkit-backdrop-filter: blur(22px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(0,-8px,0) !important;
    -webkit-transform: translate3d(0,-8px,0) !important;
    transition: opacity .25s ease, visibility .25s ease, transform .25s ease !important;
    z-index: 10040 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .main-nav.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0,0,0) !important;
    -webkit-transform: translate3d(0,0,0) !important;
  }

  .header-cta {
    display: none !important;
  }
}

@media (max-width: 420px) {
  .site-header,
  .site-header.js-smart-header {
    grid-template-columns: 62px minmax(0,1fr) 62px !important;
    gap: 16px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .site-header > .brand-logo img,
  .site-header > .brand img {
    max-width: min(154px, 42vw) !important;
    max-height: 34px !important;
  }
}

/* =========================================================
   RÔVA TECHNOLOGY MOBILE/TABLET CAROUSEL
   Same behavior as Collection/Gallery:
   desktop = 4 cards in one row, tablet = 2 cards, mobile = 1 card with arrows.
   ========================================================= */
#technology,
.tech {
  overflow: hidden !important;
}

#technology .tech-carousel-shell,
.tech .tech-carousel-shell {
  position: relative !important;
  width: 100% !important;
  overflow: visible !important;
}

#technology .tech-controls,
.tech .tech-controls {
  display: none !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin: -8px 0 18px !important;
}

#technology .tech-controls .tech-arrow,
.tech .tech-controls .tech-arrow {
  position: static !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(215,237,193,.28) !important;
  background: rgba(3,4,3,.78) !important;
  color: var(--gold2) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 27px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.42) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  -webkit-tap-highlight-color: transparent !important;
  touch-action: manipulation !important;
}

#technology .tech-controls .tech-arrow:hover,
#technology .tech-controls .tech-arrow:focus-visible,
.tech .tech-controls .tech-arrow:hover,
.tech .tech-controls .tech-arrow:focus-visible {
  background: rgba(127,168,101,.18) !important;
  outline: none !important;
}

#technology .tech-controls .tech-arrow.is-disabled,
.tech .tech-controls .tech-arrow.is-disabled {
  opacity: .35 !important;
  pointer-events: none !important;
}

@media (min-width: 1151px) {
  #technology .tech-controls,
  .tech .tech-controls {
    display: none !important;
  }

  #technology .tech-grid,
  #technology #techCarousel,
  .tech .tech-grid,
  .tech #techCarousel {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
    padding: 0 !important;
  }

  #technology .tech-card,
  .tech .tech-card {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }
}

@media (min-width: 761px) and (max-width: 1150px) {
  #technology .tech-controls,
  .tech .tech-controls {
    display: flex !important;
  }

  #technology .tech-grid,
  #technology #techCarousel,
  .tech .tech-grid,
  .tech #techCarousel {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 4px 4px 20px !important;
  }

  #technology .tech-grid::-webkit-scrollbar,
  #technology #techCarousel::-webkit-scrollbar,
  .tech .tech-grid::-webkit-scrollbar,
  .tech #techCarousel::-webkit-scrollbar {
    display: none !important;
  }

  #technology .tech-card,
  .tech .tech-card {
    flex: 0 0 calc((100% - 16px) / 2) !important;
    min-width: calc((100% - 16px) / 2) !important;
    max-width: calc((100% - 16px) / 2) !important;
    width: auto !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
  }
}

@media (max-width: 760px) {
  #technology .section-head,
  .tech .section-head {
    margin-bottom: 14px !important;
  }

  #technology .tech-controls,
  .tech .tech-controls {
    display: flex !important;
    margin: 0 0 14px !important;
  }

  #technology .tech-grid,
  #technology #techCarousel,
  .tech .tech-grid,
  .tech #techCarousel {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 4px 0 18px !important;
  }

  #technology .tech-grid::-webkit-scrollbar,
  #technology #techCarousel::-webkit-scrollbar,
  .tech .tech-grid::-webkit-scrollbar,
  .tech #techCarousel::-webkit-scrollbar {
    display: none !important;
  }

  #technology .tech-card,
  .tech .tech-card {
    flex: 0 0 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
    border-radius: 22px !important;
  }
}

/* =========================================================
   RÔVA HERO VIDEO LOOP FINAL
   Full visible hero video, no cart image, no browser controls/start button.
   ========================================================= */
main > .video-hero:first-of-type,
body main > section.video-hero:first-of-type,
.video-hero:first-of-type {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  min-height: min(92vh, 920px) !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-items: center !important;
  padding: clamp(112px, 12vw, 168px) clamp(20px, 6vw, 86px) clamp(72px, 8vw, 126px) !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

main > .video-hero:first-of-type::before,
main > .video-hero:first-of-type::after,
body main > section.video-hero:first-of-type::before,
body main > section.video-hero:first-of-type::after,
.video-hero:first-of-type::before,
.video-hero:first-of-type::after {
  content: none !important;
  display: none !important;
  background: none !important;
  box-shadow: none !important;
}

.hero-bg-video {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  z-index: -3 !important;
  opacity: 1 !important;
  pointer-events: none !important;
  background: transparent !important;
}

.hero-bg-video::-webkit-media-controls,
.hero-bg-video::-webkit-media-controls-panel,
.hero-bg-video::-webkit-media-controls-play-button,
.hero-bg-video::-webkit-media-controls-start-playback-button {
  display: none !important;
  opacity: 0 !important;
  -webkit-appearance: none !important;
}

.hero-video-shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(0,0,0,.58) 0%, rgba(0,0,0,.34) 42%, rgba(0,0,0,.18) 100%),
    linear-gradient(180deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,.16) 52%, rgba(0,0,0,.46) 100%) !important;
}

.video-hero .hero-copy {
  position: relative !important;
  z-index: 2 !important;
  max-width: 760px !important;
  background: transparent !important;
  color: var(--text) !important;
  text-shadow: 0 3px 28px rgba(0,0,0,.68) !important;
}

.video-hero .hero-text {
  color: rgba(246,244,238,.92) !important;
}

.video-hero .kicker,
.video-hero h1 span {
  text-shadow: 0 3px 24px rgba(0,0,0,.72) !important;
}

.video-hero .hero-visual,
.video-hero .vehicle-orbit,
.video-hero .halo,
.video-hero .hero-car {
  display: none !important;
}

@media (max-width: 760px) {
  main > .video-hero:first-of-type,
  body main > section.video-hero:first-of-type,
  .video-hero:first-of-type {
    min-height: 100svh !important;
    padding: 104px 20px 52px !important;
    text-align: center !important;
    align-items: center !important;
  }

  .video-hero .hero-copy {
    max-width: 100% !important;
    margin: 0 auto !important;
  }

  .hero-video-shade {
    background:
      linear-gradient(180deg, rgba(0,0,0,.48) 0%, rgba(0,0,0,.32) 40%, rgba(0,0,0,.60) 100%) !important;
  }

  .hero-bg-video {
    object-position: center center !important;
  }
}

/* =========================================================
   RÔVA HERO VIDEO MOBILE ZOOM
   Makes the hero video closer on iPhone/mobile so it is easier to see.
   ========================================================= */
@media (max-width: 760px) {
  .hero-bg-video {
    transform: scale(1.42) !important;
    transform-origin: center center !important;
    object-position: center center !important;
  }
}

@media (max-width: 420px) {
  .hero-bg-video {
    transform: scale(1.55) !important;
  }
}


/* =========================================================
   RÔVA STANDALONE VIDEO BEFORE HERO
   Video sits above the hero in its own full-size area.
   The hero below keeps the green/black background and cart image.
   ========================================================= */
.rova-video-intro {
  position: relative !important;
  width: 100% !important;
  min-height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #000 !important;
  border-bottom: 1px solid rgba(215,237,193,.15) !important;
}

.rova-standalone-video {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: calc(100svh - 78px) !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #000 !important;
  margin: 0 auto !important;
}

/* Hide browser/iOS video controls and play overlay */
.rova-standalone-video::-webkit-media-controls,
.rova-standalone-video::-webkit-media-controls-panel,
.rova-standalone-video::-webkit-media-controls-play-button,
.rova-standalone-video::-webkit-media-controls-start-playback-button {
  display: none !important;
  opacity: 0 !important;
  -webkit-appearance: none !important;
}

/* Hero returns to the original green/black cart design */
main > .hero:first-of-type,
body main > section.hero:first-of-type {
  background:
    radial-gradient(circle at 65% 0%, rgba(127,168,101,.14), transparent 30%),
    radial-gradient(circle at 0% 20%, rgba(96,80,45,.22), transparent 34%),
    linear-gradient(180deg, #07100b, #030403 52%, #050705) !important;
}

main > .hero:first-of-type .hero-visual {
  display: grid !important;
}

main > .hero:first-of-type .hero-car {
  display: block !important;
}

@media (max-width: 760px) {
  .rova-video-intro {
    margin-top: 0 !important;
  }

  .rova-standalone-video {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  main > .hero:first-of-type,
  body main > section.hero:first-of-type {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 42px 16px !important;
    min-height: auto !important;
    text-align: center !important;
  }

  main > .hero:first-of-type .hero-copy {
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  main > .hero:first-of-type .hero-visual {
    display: grid !important;
    place-items: center !important;
    min-height: auto !important;
    width: 100% !important;
  }

  main > .hero:first-of-type .hero-car {
    display: block !important;
    width: min(112%, 520px) !important;
    max-height: 360px !important;
    object-fit: contain !important;
    margin-inline: auto !important;
  }
}

/* =========================================================
   RÔVA FIX 2026-05-11 v2
   Force intro video to true full browser width on desktop,
   tablet and mobile. Autoplay muted once; click script enables sound.
   ========================================================= */
html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

main#home,
body > main#home {
  width: 100% !important;
  max-width: none !important;
  overflow-x: clip !important;
}

main#home > section.rova-video-intro,
.rova-video-intro {
  display: block !important;
  position: relative !important;
  left: 50% !important;
  right: auto !important;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #000 !important;
  line-height: 0 !important;
  box-sizing: border-box !important;
}

main#home > section.rova-video-intro > video.rova-standalone-video,
.rova-video-intro > .rova-standalone-video,
.rova-standalone-video {
  display: block !important;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #000 !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

.rova-standalone-video::-webkit-media-controls,
.rova-standalone-video::-webkit-media-controls-panel,
.rova-standalone-video::-webkit-media-controls-play-button,
.rova-standalone-video::-webkit-media-controls-start-playback-button {
  display: none !important;
  opacity: 0 !important;
  -webkit-appearance: none !important;
}

@supports (width: 100dvw) {
  main#home > section.rova-video-intro,
  .rova-video-intro,
  main#home > section.rova-video-intro > video.rova-standalone-video,
  .rova-video-intro > .rova-standalone-video,
  .rova-standalone-video {
    width: 100dvw !important;
    min-width: 100dvw !important;
    max-width: 100dvw !important;
  }
  main#home > section.rova-video-intro,
  .rova-video-intro {
    margin-left: -50dvw !important;
  }
}

/* RÔVA configurator update — colour-only seat/stitch swatches and collection links */
.collection-config-card{
  cursor:pointer;
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.collection-config-card:hover,
.collection-config-card:focus-visible{
  transform:translateY(-4px);
  border-color:rgba(214,187,114,.55);
  box-shadow:0 24px 70px rgba(0,0,0,.38);
  outline:none;
}
.collection-config-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:18px;
  color:var(--gold2);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.78rem;
}
.collection-config-link::after{content:" →";padding-left:6px}

.rova-choice-panel .config-panel-top{
  border:0;
  border-radius:0;
  padding:0;
  background:transparent;
  margin-bottom:20px;
}
.config-panel-title{
  margin:0;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:clamp(1.1rem,2vw,1.55rem);
  font-weight:900;
  line-height:1.25;
}
.compact-price{
  margin:5px 0 2px;
  font-size:clamp(2rem,3.2vw,2.7rem);
}
.config-code{
  margin:0;
  color:var(--muted);
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  letter-spacing:.08em;
  font-size:.86rem;
}
.option-block-first{border-top:0;margin-top:0;padding-top:0}
#modelSelect[type="hidden"]{display:none!important}
.config-choice-cards,
.config-choice-list{
  display:grid;
  gap:10px;
}
.choice-card,
.choice-row{
  width:100%;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.055);
  color:var(--text);
  padding:14px;
  text-align:left;
  cursor:pointer;
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
.choice-card{
  display:grid;
  gap:4px;
}
.choice-card strong,
.choice-row strong{
  font-size:.98rem;
  font-weight:900;
}
.choice-card span,
.choice-row span{
  color:var(--muted);
  font-size:.82rem;
  line-height:1.35;
}
.choice-card em{
  color:var(--gold2);
  font-style:normal;
  font-weight:900;
  margin-top:4px;
}
.choice-card em.contact-sales-label{
  font-size:.78rem;
  line-height:1.25;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.price.price-contact{
  font-size:clamp(1.25rem,2vw,1.65rem) !important;
  line-height:1.18;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.choice-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.choice-card.active,
.choice-row.active,
.choice-card:hover,
.choice-row:hover{
  border-color:rgba(214,187,114,.8);
  background:rgba(214,187,114,.12);
  transform:translateY(-1px);
}
.design-choice-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
.design-choice-card{display:grid;grid-template-columns:150px 1fr;align-items:center;text-align:left;gap:16px;padding:16px;}
.design-choice-media{display:flex;align-items:center;justify-content:center;min-height:104px;}
.design-choice-media img{display:block;width:100%;max-width:150px;height:auto;object-fit:contain;filter:drop-shadow(0 14px 24px rgba(0,0,0,.35));}
.design-choice-copy{display:grid;gap:4px;}
.design-choice-copy strong{font-size:1.08rem;font-weight:900;}
.design-choice-copy small{font-size:.78rem;color:var(--muted);line-height:1.25;}
@media(max-width:640px){.design-choice-cards{grid-template-columns:1fr}.design-choice-card{grid-template-columns:132px 1fr}.design-choice-media{min-height:92px}.design-choice-media img{max-width:132px}}
.wheel-choice-row{
  padding:10px 14px 10px 10px;
}
.wheel-choice-thumb{
  width:52px;
  height:52px;
  flex:0 0 52px;
  object-fit:contain;
  border-radius:999px;
  background:rgba(0,0,0,.18);
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.35));
}
.wheel-choice-copy{
  flex:1;
  min-width:0;
  display:grid;
  gap:2px;
}
.wheel-choice-copy small{
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.02em;
}
.wheel-sub-options{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:14px;
}
.wheel-sub-options h4{
  margin:0 0 9px;
  font-size:.76rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--muted);
}
.compact-chips{
  gap:8px;
}
.compact-chips .chip{
  min-height:46px;
  padding:10px 14px;
}
.choice-row .wheel-choice-price{
  margin-left:auto;
  white-space:nowrap;
  font-weight:800;
}

.rova-choice-panel .swatches{
  gap:12px;
}
.rova-choice-panel .swatch{
  width:46px;
  height:46px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.32);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.26),0 10px 22px rgba(0,0,0,.22);
}
.rova-choice-panel .swatch.active{
  outline:2px solid var(--gold);
  outline-offset:4px;
}
.rova-choice-panel .option-value{
  margin-top:12px;
  font-size:.78rem;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--gold2);
  font-weight:800;
}
.bespoke-input-label{
  display:grid;
  gap:6px;
  color:var(--muted);
  font-size:.86rem;
}
.bespoke-logo-block input{
  text-transform:uppercase;
  letter-spacing:.08em;
}
.estimate-card .config-actions{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.estimate-card .button{
  text-align:center;
}

@media (max-width:760px){
  .choice-row{align-items:flex-start;flex-direction:column;gap:4px}
  .choice-row.wheel-choice-row{align-items:center;flex-direction:row;gap:10px}
  .wheel-choice-thumb{width:44px;height:44px;flex-basis:44px}
  .choice-row .wheel-choice-price{font-size:.78rem}
  .rova-choice-panel .swatch{width:42px;height:42px}
  .collection-config-link{width:100%;border:1px solid rgba(214,187,114,.3);border-radius:999px;padding:11px 12px}
}

/* =========================================================
   RÔVA final configurator layout — 360 left, scroll config right
   Desktop: equal-height windows. Mobile: config first, 360 underneath.
   ========================================================= */
.rova-left360-right-config{
  width:100%;
}
.rova-left360-right-config .rova-config-scroll-panel{
  scrollbar-width:thin;
  scrollbar-color:rgba(215,237,193,.35) rgba(255,255,255,.04);
}
.rova-left360-right-config .rova-config-scroll-panel::-webkit-scrollbar{
  width:8px;
}
.rova-left360-right-config .rova-config-scroll-panel::-webkit-scrollbar-track{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}
.rova-left360-right-config .rova-config-scroll-panel::-webkit-scrollbar-thumb{
  background:rgba(215,237,193,.35);
  border-radius:999px;
}
.rova-panel-estimate{
  margin-top:24px;
  padding:18px !important;
  background:linear-gradient(135deg,rgba(127,168,101,.13),rgba(255,255,255,.035)) !important;
  box-shadow:none !important;
}
.rova-panel-estimate .summary-list{
  margin-bottom:14px;
}
.rova-panel-estimate .config-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.rova-panel-estimate .button.full{
  width:100%;
  margin-top:0;
  min-height:46px;
}

@media (min-width:1151px){
  .rova-left360-right-config{
    display:grid !important;
    grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr) !important;
    gap:clamp(18px,2.4vw,34px) !important;
    align-items:start !important;
  }
  .rova-left360-right-config .config-stage,
  .rova-left360-right-config .rova-config-scroll-panel{
    height:clamp(660px,74vh,820px) !important;
    min-height:0 !important;
    max-height:clamp(660px,74vh,820px) !important;
  }
  .rova-left360-right-config .config-stage{
    grid-column:1 !important;
    grid-row:1 !important;
    overflow:hidden !important;
    position:sticky;
    top:96px;
  }
  .rova-left360-right-config .rova-config-scroll-panel{
    grid-column:2 !important;
    grid-row:1 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding:clamp(20px,2vw,28px) !important;
  }
  .rova-left360-right-config .vehicle-scene{
    min-height:0 !important;
    flex:1 1 auto !important;
    overflow:hidden !important;
  }
  .rova-left360-right-config .config-car-img,
  .rova-left360-right-config .config-car-canvas{
    width:100% !important;
    max-width:980px !important;
    max-height:100% !important;
    object-fit:contain !important;
  }
  .rova-left360-right-config .spin-controls,
  .rova-left360-right-config .spec-strip{
    flex:0 0 auto !important;
  }
}

@media (min-width:761px) and (max-width:1150px){
  .rova-left360-right-config{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  .rova-left360-right-config .rova-config-scroll-panel{
    order:1 !important;
    max-height:none !important;
    overflow:visible !important;
  }
  .rova-left360-right-config .config-stage{
    order:2 !important;
    min-height:560px !important;
  }
}

@media (max-width:760px){
  .rova-left360-right-config{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .rova-left360-right-config .rova-config-scroll-panel{
    order:1 !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    padding:18px !important;
  }
  .rova-left360-right-config .config-stage{
    order:2 !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    padding:12px !important;
  }
  .rova-left360-right-config .vehicle-scene{
    min-height:300px !important;
    aspect-ratio:1.15 / 1 !important;
  }
  .rova-left360-right-config .config-car-img,
  .rova-left360-right-config .config-car-canvas{
    width:100% !important;
    max-width:100% !important;
    max-height:300px !important;
    object-fit:contain !important;
  }
  .rova-left360-right-config .spec-strip{
    grid-template-columns:1fr 1fr !important;
  }
  .rova-panel-estimate .config-actions{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   RÔVA browser configurator — final 3-column desktop layout
   1) 360 viewer  2) Your configuration  3) Estimated MSRP
   Mobile keeps configuration above the 360 viewer.
   ========================================================= */
.rova-estimate-column{
  position:relative;
  z-index:2;
}

@media (min-width:1151px){
  .rova-left360-right-config{
    display:grid !important;
    grid-template-columns:minmax(0,1.05fr) minmax(330px,.72fr) minmax(285px,.55fr) !important;
    gap:clamp(16px,1.7vw,26px) !important;
    align-items:start !important;
  }
  .rova-left360-right-config .config-stage{
    grid-column:1 !important;
    grid-row:1 !important;
    position:sticky !important;
    top:96px !important;
  }
  .rova-left360-right-config .rova-config-scroll-panel{
    grid-column:2 !important;
    grid-row:1 !important;
    padding:clamp(18px,1.6vw,24px) !important;
  }
  .rova-left360-right-config .rova-estimate-column{
    grid-column:3 !important;
    grid-row:1 !important;
    margin-top:0 !important;
    padding:clamp(18px,1.6vw,24px) !important;
    position:sticky !important;
    top:96px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
  }
  .rova-left360-right-config .config-stage,
  .rova-left360-right-config .rova-config-scroll-panel,
  .rova-left360-right-config .rova-estimate-column{
    height:clamp(660px,74vh,820px) !important;
    min-height:0 !important;
    max-height:clamp(660px,74vh,820px) !important;
  }
  .rova-left360-right-config .vehicle-scene{
    min-height:0 !important;
    flex:1 1 auto !important;
    overflow:hidden !important;
  }
  .rova-left360-right-config .config-car-img,
  .rova-left360-right-config .config-car-canvas{
    width:100% !important;
    max-width:980px !important;
    max-height:100% !important;
    object-fit:contain !important;
  }
  .rova-left360-right-config .spin-controls,
  .rova-left360-right-config .spec-strip,
  .rova-left360-right-config .view-tools{
    flex:0 0 auto !important;
  }
  .rova-estimate-column .price{
    font-size:clamp(2.15rem,2.8vw,3rem) !important;
  }
  .rova-estimate-column .summary-list{
    max-height:calc(100% - 250px) !important;
    overflow:auto !important;
    padding-right:4px !important;
  }
  .rova-estimate-column .config-actions{
    grid-template-columns:1fr !important;
    position:sticky !important;
    bottom:0 !important;
    padding-top:12px !important;
    background:linear-gradient(180deg,rgba(11,15,13,0),rgba(11,15,13,.96) 28%) !important;
  }
}

@media (min-width:761px) and (max-width:1150px){
  .rova-left360-right-config{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  .rova-left360-right-config .rova-config-scroll-panel{order:1 !important;max-height:none !important;overflow:visible !important;}
  .rova-left360-right-config .rova-estimate-column{order:2 !important;margin-top:0 !important;}
  .rova-left360-right-config .config-stage{order:3 !important;min-height:560px !important;}
}

@media (max-width:760px){
  .rova-left360-right-config{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .rova-left360-right-config .rova-config-scroll-panel{order:1 !important;width:100% !important;height:auto !important;max-height:none !important;overflow:visible !important;padding:18px !important;}
  .rova-left360-right-config .rova-estimate-column{order:2 !important;margin-top:0 !important;width:100% !important;height:auto !important;max-height:none !important;overflow:visible !important;}
  .rova-left360-right-config .config-stage{order:3 !important;width:100% !important;min-height:0 !important;height:auto !important;padding:12px !important;}
  .rova-left360-right-config .vehicle-scene{min-height:300px !important;aspect-ratio:1.15 / 1 !important;}
  .rova-left360-right-config .config-car-img,
  .rova-left360-right-config .config-car-canvas{width:100% !important;max-width:100% !important;max-height:300px !important;object-fit:contain !important;}
  .rova-left360-right-config .spec-strip{grid-template-columns:1fr 1fr !important;}
  .rova-estimate-column .config-actions{grid-template-columns:1fr !important;}
}


/* =========================================================
   RÔVA final header / arrow / horizontal ticker update
   Transparent menu over video, visible on scroll-up.
   ========================================================= */
html, body {
  scroll-behavior: smooth;
}

body {
  padding-top: 0 !important;
}

.site-header,
.site-header.js-smart-header,
.site-header.is-scrolled,
.site-header.js-smart-header.is-scrolled {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 10080 !important;
  background: transparent !important;
  background-color: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: translate3d(0,0,0) !important;
  transition: transform .34s ease, opacity .34s ease !important;
}

.site-header::before,
.site-header::after,
.site-header.js-smart-header::before,
.site-header.js-smart-header::after {
  display: none !important;
  content: none !important;
}

.site-header .main-nav a,
.site-header .brand,
.site-header .header-cta,
.site-header .nav-toggle {
  text-shadow: 0 2px 18px rgba(0,0,0,.74) !important;
}

.site-header .header-cta {
  background: rgba(214,187,114,.16) !important;
  border-color: rgba(214,187,114,.34) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

.site-header.js-smart-header.is-hidden:not(.menu-force-visible),
.site-header.is-hidden:not(.menu-force-visible) {
  transform: translate3d(0,-120%,0) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.site-header.js-smart-header.is-visible,
.site-header.is-visible,
body.menu-open .site-header,
body.menu-open .site-header.js-smart-header,
.site-header.menu-force-visible {
  transform: translate3d(0,0,0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

main#home > section.rova-video-intro,
.rova-video-intro {
  margin-top: 0 !important;
}

/* Keep mobile header floating over the video too. The opened hamburger panel can still use its dark overlay. */
@media (max-width: 760px) {
  body {
    padding-top: 0 !important;
  }

  .site-header,
  .site-header.js-smart-header {
    background: transparent !important;
    background-color: transparent !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .site-header .nav-toggle {
    background: rgba(0,0,0,.16) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 999px !important;
    width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* Floating back-to-top arrow */
.back-to-top {
  position: fixed !important;
  right: clamp(16px, 2vw, 26px) !important;
  bottom: clamp(16px, 2vw, 26px) !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(214,187,114,.45) !important;
  background: rgba(5,8,7,.72) !important;
  color: var(--gold2, #d6bb72) !important;
  font-size: 28px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10090 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0,10px,0) !important;
  transition: opacity .28s ease, visibility .28s ease, transform .28s ease, background .28s ease !important;
  box-shadow: 0 16px 45px rgba(0,0,0,.38) !important;
}

.back-to-top.show {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
}

.back-to-top:hover,
.back-to-top:focus-visible {
  background: rgba(5,8,7,.92) !important;
  transform: translate3d(0,-3px,0) !important;
  outline: none !important;
}

@media (max-width: 760px) {
  .back-to-top {
    width: 42px !important;
    height: 42px !important;
    right: 16px !important;
    bottom: 16px !important;
    font-size: 26px !important;
  }
}

/* Horizontal all-text banner ticker */
.rova-brand-ticker,
.marquee.rova-brand-ticker {
  display: block !important;
  width: 100% !important;
  overflow: hidden !important;
  border-block: 1px solid var(--line) !important;
  padding: 16px 0 !important;
  background: rgba(255,255,255,.04) !important;
  white-space: nowrap !important;
}

.rova-brand-ticker .marquee-track {
  display: flex !important;
  width: max-content !important;
  will-change: transform !important;
  animation: rova-horizontal-ticker 34s linear infinite !important;
}

.rova-brand-ticker:hover .marquee-track {
  animation-play-state: paused !important;
}

.rova-brand-ticker .marquee-group {
  display: flex !important;
  align-items: center !important;
  flex-shrink: 0 !important;
  gap: clamp(24px, 4vw, 58px) !important;
  padding-right: clamp(24px, 4vw, 58px) !important;
}

.rova-brand-ticker span {
  display: inline-flex !important;
  align-items: center !important;
  min-width: max-content !important;
  color: var(--muted) !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  font-weight: 800 !important;
  font-size: clamp(.72rem, 1.4vw, .86rem) !important;
}

.rova-brand-ticker span::after {
  content: "•";
  color: var(--gold2, #d6bb72);
  margin-left: clamp(24px, 4vw, 58px);
  opacity: .78;
}

@keyframes rova-horizontal-ticker {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-50%,0,0); }
}

@media (prefers-reduced-motion: reduce) {
  .rova-brand-ticker .marquee-track {
    animation-duration: 120s !important;
  }
}

@media(max-width:760px){
  .wheel-sub-options{grid-template-columns:1fr;}
}


/* Front configurator custom HEX colour inputs */
.custom-hex-control{
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}
.custom-hex-control label{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.custom-hex-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 48px auto auto;
  gap:8px;
  align-items:center;
}
.custom-hex-input,
.custom-color-picker{
  margin-top:0;
  height:46px;
}
.custom-hex-input{
  text-transform:uppercase;
  font-weight:800;
  letter-spacing:.04em;
}
.custom-color-picker{
  padding:4px;
  cursor:pointer;
}
.custom-hex-apply,
.custom-hex-board{
  height:46px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold2),var(--accent));
  color:#08100b;
  font-weight:900;
  padding:0 16px;
  cursor:pointer;
}
.custom-hex-board{
  background:rgba(255,255,255,.055);
  color:var(--text);
}
.sample-color-board[hidden]{display:none !important;}
.sample-color-board{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  background:rgba(6,9,10,.92);
  box-shadow:0 20px 50px rgba(0,0,0,.32);
  overflow:hidden;
}
.sample-color-board-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 12px 10px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.sample-color-board-head strong{
  color:var(--text);
  font-size:.86rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.sample-color-board-head button{
  width:34px;
  height:34px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
  background:rgba(255,255,255,.055);
  color:var(--text);
  cursor:pointer;
  font-size:1.25rem;
  line-height:1;
}
.sample-color-board-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(82px,1fr));
  gap:10px;
  max-height:420px;
  overflow:auto;
  padding:12px;
}
.sample-color-card{
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
  padding:6px;
  text-align:left;
  transition:border-color .18s ease,transform .18s ease,background .18s ease;
}
.sample-color-card:hover,
.sample-color-card.active{
  border-color:var(--gold2);
  background:rgba(214,187,114,.12);
  transform:translateY(-1px);
}
.sample-color-card.active{
  outline:2px solid var(--gold);
  outline-offset:2px;
}
.sample-color-card-image{
  display:block;
  aspect-ratio:1/1.35;
  border-radius:10px;
  overflow:hidden;
  background:rgba(255,255,255,.06);
}
.sample-color-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.sample-color-card-copy{
  display:grid;
  gap:1px;
  padding:6px 2px 0;
}
.sample-color-card-copy strong{
  font-size:.74rem;
  letter-spacing:.04em;
}
.sample-color-card-copy small{
  color:var(--muted);
  font-size:.68rem;
  margin:0;
}

.custom-board-only-row{
  grid-template-columns:1fr;
}
.custom-board-only-row .custom-hex-board{
  width:100%;
  justify-content:center;
}
.sample-color-card-price{
  display:inline-block;
  margin-top:3px;
  color:var(--gold2) !important;
  font-weight:800;
  letter-spacing:.03em;
}

.custom-hex-control small{
  display:block;
  color:var(--muted);
  margin-top:8px;
  line-height:1.35;
}
@media (max-width:560px){
  .custom-hex-row{grid-template-columns:1fr 48px}
  .custom-hex-apply,
  .custom-hex-board{grid-column:1 / -1;width:100%}
  .sample-color-board-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:360px}
}


/* ROVA premium option package rows */
.premium-options-block .premium-option-list{display:grid;gap:10px}
.premium-check{align-items:flex-start;justify-content:flex-start;gap:12px}
.premium-check input{margin-top:4px;flex:0 0 auto}
.premium-copy{display:grid;gap:4px;line-height:1.35;flex:1;min-width:0}
.premium-copy strong{display:block;color:var(--text);font-size:1rem}
.premium-copy small{display:block;color:var(--gold2);font-weight:800}
.premium-copy ul{margin:4px 0 0 18px;padding:0;color:var(--muted);font-size:.9rem}
.premium-price{color:var(--gold2);font-weight:900;white-space:nowrap;margin-left:auto}
@media(max-width:760px){.premium-check{display:grid;grid-template-columns:auto 1fr;align-items:start}.premium-price{grid-column:2;margin-left:0}.premium-copy ul{font-size:.86rem}}

/* =========================================================
   RÔVA crisp configurator preview
   ========================================================= */
#configCanvas,
#configVehicleImage {
  image-rendering: auto;
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}

.config-stage,
.config-preview,
.config-visual {
  transform: translateZ(0);
}


/* Day mode: clearer and lighter preview */
.vehicle-scene:not(.night),
.config-stage:not(.rova-night-active) {
  background:
    radial-gradient(circle at 50% 42%, rgba(214, 236, 196, 0.13), transparent 42%),
    radial-gradient(circle at 50% 8%, rgba(159, 188, 73, 0.10), transparent 36%),
    linear-gradient(180deg, rgba(16, 25, 18, 0.94) 0%, rgba(6, 10, 7, 0.98) 100%);
}

.vehicle-scene:not(.night) .config-car-canvas,
.vehicle-scene:not(.night) .config-car-img,
.config-stage:not(.rova-night-active) .config-car-canvas,
.config-stage:not(.rova-night-active) .config-car-img {
  filter:
    brightness(1.12)
    contrast(1.08)
    saturate(1.08)
    drop-shadow(0 28px 46px rgba(0, 0, 0, 0.46)) !important;
}

/* Night mode: darker, with stronger contrast */
.config-stage.rova-night-active,
.vehicle-scene.night {
  background:
    radial-gradient(circle at 50% 38%, rgba(4, 12, 9, 0.86), transparent 38%),
    radial-gradient(circle at 50% 12%, rgba(42, 72, 34, 0.11), transparent 30%),
    linear-gradient(180deg, #000000 0%, #020402 100%) !important;
}

.config-stage.rova-night-active .config-car-canvas,
.config-stage.rova-night-active .config-car-img,
.vehicle-scene.night .config-car-canvas,
.vehicle-scene.night .config-car-img {
  filter:
    brightness(0.50)
    contrast(1.30)
    saturate(0.82)
    drop-shadow(0 0 34px rgba(159, 188, 73, 0.12))
    drop-shadow(0 40px 58px rgba(0, 0, 0, 0.92)) !important;
}

/* Hide CSS LED glow overlay in day mode if present */
.vehicle-scene:not(.night) .rova-night-led-overlay,
.config-stage:not(.rova-night-active) .rova-night-led-overlay {
  display: none !important;
}

/* =========================================================
   RÔVA lighter Day mode + softer Night mode
   ========================================================= */

/* DAY MODE — even lighter and cleaner */
.vehicle-scene:not(.night),
.config-stage:not(.rova-night-active) {
  background:
    radial-gradient(circle at 50% 42%, rgba(228, 244, 212, 0.20), transparent 44%),
    radial-gradient(circle at 50% 10%, rgba(159, 188, 73, 0.16), transparent 36%),
    radial-gradient(circle at 50% 78%, rgba(255, 255, 255, 0.08), transparent 42%),
    linear-gradient(180deg, rgba(26, 39, 28, 0.98) 0%, rgba(12, 20, 14, 0.98) 100%) !important;
}

.vehicle-scene:not(.night) .sun-glow,
.config-stage:not(.rova-night-active) .sun-glow {
  opacity: 0.55 !important;
  background: radial-gradient(circle, rgba(202, 235, 174, 0.28), transparent 70%) !important;
}

.vehicle-scene:not(.night) .config-car-canvas,
.vehicle-scene:not(.night) .config-car-img,
.config-stage:not(.rova-night-active) .config-car-canvas,
.config-stage:not(.rova-night-active) .config-car-img {
  filter:
    brightness(1.26)
    contrast(1.06)
    saturate(1.10)
    drop-shadow(0 26px 42px rgba(0, 0, 0, 0.40)) !important;
}

/* NIGHT MODE — still night, but lighter than before */
.config-stage.rova-night-active,
.vehicle-scene.night {
  background:
    radial-gradient(circle at 50% 40%, rgba(18, 34, 24, 0.70), transparent 42%),
    radial-gradient(circle at 50% 14%, rgba(94, 125, 70, 0.20), transparent 34%),
    radial-gradient(circle at 50% 78%, rgba(255, 245, 190, 0.06), transparent 38%),
    linear-gradient(180deg, #070d09 0%, #020503 100%) !important;
}

.config-stage.rova-night-active .sun-glow,
.vehicle-scene.night .sun-glow {
  opacity: 0.22 !important;
  background: radial-gradient(circle, rgba(159, 188, 73, 0.20), transparent 72%) !important;
}

.config-stage.rova-night-active .config-car-canvas,
.config-stage.rova-night-active .config-car-img,
.vehicle-scene.night .config-car-canvas,
.vehicle-scene.night .config-car-img {
  filter:
    brightness(0.78)
    contrast(1.18)
    saturate(0.92)
    drop-shadow(0 0 32px rgba(159, 188, 73, 0.18))
    drop-shadow(0 36px 54px rgba(0, 0, 0, 0.78)) !important;
}

/* Keep LED / light overlays hidden in day mode */
.vehicle-scene:not(.night) .rova-night-led-overlay,
.config-stage:not(.rova-night-active) .rova-night-led-overlay {
  display: none !important;
}

/* Night button active style, lighter and more visible */
#nightBtn.rova-night-active {
  background: linear-gradient(135deg, rgba(159, 188, 73, 0.30), rgba(255, 255, 255, 0.10)) !important;
  border-color: rgba(185, 218, 102, 0.72) !important;
  color: #f2f8e8 !important;
}

/* =========================================================
   RÔVA day mode light reduction — 2026-05-26
   Keeps the shaded color masks, but makes daylight preview less bright.
   Night mode is unchanged.
   ========================================================= */
.vehicle-scene:not(.night),
.config-stage:not(.rova-night-active) {
  background:
    radial-gradient(circle at 50% 42%, rgba(228, 244, 212, 0.13), transparent 44%),
    radial-gradient(circle at 50% 10%, rgba(159, 188, 73, 0.10), transparent 36%),
    radial-gradient(circle at 50% 78%, rgba(255, 255, 255, 0.045), transparent 42%),
    linear-gradient(180deg, rgba(22, 34, 24, 0.98) 0%, rgba(10, 17, 12, 0.98) 100%) !important;
}

.vehicle-scene:not(.night) .sun-glow,
.config-stage:not(.rova-night-active) .sun-glow {
  opacity: 0.36 !important;
  background: radial-gradient(circle, rgba(202, 235, 174, 0.18), transparent 70%) !important;
}

.vehicle-scene:not(.night) .config-car-canvas,
.vehicle-scene:not(.night) .config-car-img,
.config-stage:not(.rova-night-active) .config-car-canvas,
.config-stage:not(.rova-night-active) .config-car-img {
  filter:
    brightness(1.14)
    contrast(1.05)
    saturate(1.06)
    drop-shadow(0 26px 42px rgba(0, 0, 0, 0.42)) !important;
}


/* Fleet/Courtesy quote pricing label override */
.rova-estimate-column .price.price-contact,
.summary-card .price.price-contact{
  font-size:clamp(1.2rem,2vw,1.65rem) !important;
  line-height:1.18 !important;
  letter-spacing:.04em;
  text-transform:uppercase;
}

/* Hide empty price/contact labels for quote-only Fleet/Courtesy cards */
.choice-card em:empty{
  display:none;
}


/* =========================================================
   RÔVA mobile/iPad configurator visibility fix — v8
   Keeps the configurator shell visible even if mobile browsers delay
   IntersectionObserver/reveal animations. This prevents the empty black
   section until pinch-zoom/resize.
   ========================================================= */
#configurator .config-shell,
#configurator .config-shell.reveal,
#configurator .config-shell.reveal.visible,
#configurator .config-stage,
#configurator .rova-config-scroll-panel,
#configurator .rova-estimate-column {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

#configurator .config-shell {
  min-height: 1px !important;
}

#configurator .config-stage {
  display: flex !important;
}

#configurator #vehicleScene {
  display: grid !important;
  min-height: 300px;
}

#configurator #configVehicleImage,
#configurator #configCanvas {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (min-width: 761px) and (max-width: 1150px) {
  #configurator .rova-left360-right-config {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  #configurator .rova-left360-right-config .rova-config-scroll-panel { order: 1 !important; }
  #configurator .rova-left360-right-config .rova-estimate-column { order: 2 !important; }
  #configurator .rova-left360-right-config .config-stage {
    order: 3 !important;
    min-height: 560px !important;
  }
}

@media (max-width: 760px) {
  #configurator .rova-left360-right-config {
    display: flex !important;
    flex-direction: column !important;
  }
  #configurator .rova-left360-right-config .rova-config-scroll-panel { order: 1 !important; }
  #configurator .rova-left360-right-config .rova-estimate-column { order: 2 !important; }
  #configurator .rova-left360-right-config .config-stage {
    order: 3 !important;
    min-height: 420px !important;
    height: auto !important;
    overflow: hidden !important;
  }
  #configurator .rova-left360-right-config #vehicleScene {
    min-height: 300px !important;
    height: auto !important;
    aspect-ratio: 1.15 / 1 !important;
  }
}


/* RÔVA contact phone fields */
.contact-phone-row{display:grid;grid-template-columns:minmax(145px,.52fr) 1fr;gap:14px;align-items:start;}
@media(max-width:640px){.contact-phone-row{grid-template-columns:1fr;}}


/* RÔVA update: make country code + phone number match cleanly */
.contact-phone-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  align-items:end;
}
.contact-phone-row label{
  min-width:0;
  display:flex;
  flex-direction:column;
  margin:0;
}
.contact-phone-row select,
.contact-phone-row input{
  width:100%;
  min-height:58px;
  height:58px;
  margin-top:8px;
  box-sizing:border-box;
  border-radius:18px;
}
.summary-pack-row span{display:grid;gap:3px;}
.summary-pack-row small{display:block;color:var(--muted);font-size:.76rem;line-height:1.35;margin-top:2px;}
@media(max-width:640px){
  .contact-phone-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .contact-phone-row select,.contact-phone-row input{font-size:.92rem;padding-inline:10px;min-height:54px;height:54px;}
}
@media(max-width:420px){
  .contact-phone-row{grid-template-columns:1fr;}
}


/* =========================================================
   RÔVA configurator detail layout fix — 2026-05-30
   Keeps the four 360 detail cards readable and stacks ROH/ROC
   design cards vertically so all design details stay visible.
   ========================================================= */
#configurator .spec-strip{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
#configurator .spec-strip div{
  min-width:0 !important;
  overflow:visible !important;
  padding:12px 14px !important;
}
#configurator .spec-strip span,
#configurator .spec-strip strong{
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  line-height:1.28 !important;
}
#configurator .spec-strip strong{
  font-size:clamp(.84rem,1vw,.96rem) !important;
}
#configurator .design-choice-cards{
  grid-template-columns:1fr !important;
}
#configurator .design-choice-card{
  grid-template-columns:minmax(120px,170px) minmax(0,1fr) !important;
  min-height:128px !important;
  gap:18px !important;
  align-items:center !important;
}
#configurator .design-choice-media{
  min-height:104px !important;
}
#configurator .design-choice-media img{
  max-width:170px !important;
  width:100% !important;
}
#configurator .design-choice-copy{
  min-width:0 !important;
}
#configurator .design-choice-copy strong,
#configurator .design-choice-copy small{
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}
@media (min-width:1151px){
  #configurator .rova-left360-right-config{
    grid-template-columns:minmax(430px,1.02fr) minmax(390px,.76fr) minmax(295px,.54fr) !important;
  }
  #configurator .rova-left360-right-config .config-stage{
    min-width:0 !important;
  }
}
@media (max-width:760px){
  #configurator .design-choice-card{
    grid-template-columns:minmax(108px,140px) minmax(0,1fr) !important;
    min-height:112px !important;
  }
  #configurator .design-choice-media img{
    max-width:140px !important;
  }
}

/* =========================================================
   RÔVA front configurator width balance — 2026-05-30
   Makes the 360 preview column smaller and gives the middle
   configuration column more room on full desktop screens.
   ========================================================= */
@media (min-width:1151px){
  #configurator .rova-left360-right-config{
    grid-template-columns:minmax(280px,.78fr) minmax(430px,1.15fr) minmax(265px,.62fr) !important;
  }
  #configurator .rova-left360-right-config .config-stage,
  #configurator .rova-left360-right-config .rova-config-scroll-panel,
  #configurator .rova-left360-right-config .rova-estimate-column{
    min-width:0 !important;
  }
}

/* RÔVA configurator update — RAL body/front colour board */
.ral-color-card .sample-color-card-image,
.ral-color-card-image{
  aspect-ratio:1/1;
  display:grid;
  place-items:stretch;
}
.ral-color-swatch{
  display:block;
  width:100%;
  height:100%;
  min-height:74px;
  border-radius:10px;
  background:var(--ral-color,#000);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18), inset 0 -18px 34px rgba(0,0,0,.16);
}
.ral-color-card .sample-color-card-copy{
  min-height:58px;
}
.ral-color-card .sample-color-card-copy strong{
  font-size:.72rem;
}
.ral-color-card .sample-color-card-copy small:first-of-type{
  color:var(--text);
  line-height:1.15;
}
@media(max-width:760px){
  .ral-color-swatch{min-height:64px;}
}


/* =========================================================
   RÔVA back office colour board selector
   ========================================================= */
.admin-color-row .admin-color-preview{
  width:46px;
  height:46px;
  align-self:end;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.20);
  background:var(--admin-preview,#e7ece9);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.18), inset 0 -12px 20px rgba(0,0,0,.14);
  margin-top:8px;
}
.admin-color-row .admin-board-pick{
  align-self:end;
  min-height:46px;
  white-space:nowrap;
  background:rgba(214,187,114,.14) !important;
  color:#f9edbd !important;
  border-color:rgba(214,187,114,.42) !important;
}
.admin-color-board-modal[hidden]{display:none !important;}
.admin-color-board-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(0,0,0,.70);
  backdrop-filter:blur(8px);
}
.admin-color-board-panel{
  width:min(1040px,96vw);
  max-height:min(84vh,820px);
  display:flex;
  flex-direction:column;
  border:1px solid rgba(255,255,255,.16);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(14,18,19,.98),rgba(6,8,9,.98));
  box-shadow:0 34px 90px rgba(0,0,0,.55);
  overflow:hidden;
}
.admin-color-board-head{flex:0 0 auto;}
.admin-color-board-grid{
  grid-template-columns:repeat(auto-fill,minmax(108px,1fr));
  max-height:calc(84vh - 96px);
}
@media(max-width:720px){
  .admin-color-board-modal{padding:10px;}
  .admin-color-board-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .admin-color-row .admin-board-pick{grid-column:1 / -1;width:100%;}
}

/* =========================================================
   RÔVA Gallery 360 + automatic carousel controls
   ========================================================= */
#gallery .gallery-360-item {
  position: relative !important;
}

#gallery .gallery-360-stage {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: radial-gradient(circle at center, rgba(127,168,101,.13), transparent 64%) !important;
  cursor: grab !important;
  touch-action: none !important;
  overflow: hidden !important;
  color: inherit !important;
}

#gallery .gallery-360-stage.is-rotating {
  cursor: grabbing !important;
}

#gallery .gallery-360-image {
  user-select: none !important;
  -webkit-user-select: none !important;
  -webkit-user-drag: none !important;
  pointer-events: none !important;
  transition: opacity .12s ease !important;
}

#gallery .gallery-360-stage.is-rotating .gallery-360-image {
  opacity: .96 !important;
}

#gallery .gallery-360-hint,
#gallery .gallery-360-badge {
  position: absolute !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(215,237,193,.22) !important;
  border-radius: 999px !important;
  background: rgba(3,4,3,.72) !important;
  color: #f4f1e9 !important;
  backdrop-filter: blur(10px) !important;
  pointer-events: none !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.24) !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

#gallery .gallery-360-hint {
  right: 12px !important;
  bottom: 12px !important;
  padding: 7px 10px !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
}

#gallery .gallery-360-badge {
  left: 12px !important;
  top: 12px !important;
  padding: 6px 9px !important;
  font-size: .6rem !important;
  font-weight: 800 !important;
  color: var(--gold2, #d7edc1) !important;
}

@media (max-width: 760px) {
  #gallery .gallery-360-hint {
    right: 10px !important;
    bottom: 10px !important;
    padding: 7px 10px !important;
    font-size: .68rem !important;
  }

  #gallery .gallery-360-badge {
    left: 10px !important;
    top: 10px !important;
    font-size: .58rem !important;
  }
}


/* RÔVA speed patch: keep the 360 gallery light until the chosen cart is used */
#gallery .gallery-360-image{content-visibility:auto;contain-intrinsic-size:420px 300px;}
#gallery .gallery-360-item{content-visibility:auto;contain-intrinsic-size:460px 380px;}
@media (max-width:760px){#gallery .gallery-360-stage{touch-action:pan-y !important;}}


/* Aftercare & warranty section */
.rova-aftercare {
  background: linear-gradient(180deg, rgba(14, 22, 28, 0.98) 0%, rgba(10, 16, 21, 1) 100%);
}

.aftercare-shell {
  display: grid;
  grid-template-columns: minmax(300px, 0.95fr) minmax(320px, 1.05fr);
  gap: clamp(1.5rem, 3vw, 3rem);
  align-items: stretch;
}

.aftercare-media,
.aftercare-content {
  min-width: 0;
}

.aftercare-image-card {
  position: sticky;
  top: 6rem;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(212, 175, 55, 0.18);
  background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
}

.aftercare-image-card img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
}

.aftercare-badge {
  position: absolute;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 1.25rem;
  padding: 1rem 1.1rem;
  border-radius: 20px;
  backdrop-filter: blur(14px);
  background: rgba(9, 15, 19, 0.75);
  border: 1px solid rgba(212, 175, 55, 0.2);
}

.aftercare-badge span {
  display: block;
  font-size: 0.78rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.7);
  margin-bottom: 0.35rem;
}

.aftercare-badge strong {
  font-size: 1rem;
  line-height: 1.45;
}

.aftercare-content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.aftercare-content .section-head {
  margin-bottom: 0;
}

.aftercare-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.aftercare-card {
  padding: 1.35rem;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.aftercare-card-highlight {
  background: linear-gradient(180deg, rgba(212, 175, 55, 0.14), rgba(255,255,255,0.03));
  border-color: rgba(212, 175, 55, 0.35);
}

.aftercare-card-kicker {
  display: inline-block;
  margin-bottom: 0.7rem;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--accent, #d4af37);
}

.aftercare-card h3 {
  margin: 0 0 0.65rem;
  font-size: clamp(1.15rem, 1.8vw, 1.45rem);
}

.aftercare-card p {
  margin: 0;
  color: rgba(255,255,255,0.76);
  line-height: 1.65;
}

.aftercare-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 0.25rem;
  padding: 1.1rem 1.15rem;
  border-radius: 22px;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.08);
}

.aftercare-footer p {
  flex: 1 1 320px;
  margin: 0;
  color: rgba(255,255,255,0.82);
}

@media (max-width: 1080px) {
  .aftercare-shell {
    grid-template-columns: 1fr;
  }

  .aftercare-image-card {
    position: relative;
    top: auto;
  }

  .aftercare-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .aftercare-image-card img {
    min-height: 300px;
  }

  .aftercare-footer {
    flex-direction: column;
    align-items: flex-start;
  }
}
