/* =========================================================
   QualiValue - Front Page Redesign
   Light theme (Oracle-inspired), sticky header & footer,
   hero slider (slide-left), hover animations & icons
   ========================================================= */

/* ---------- Base reset ---------- */
*,
*::before,
*::after { box-sizing: border-box; }
* { margin: 0; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img, picture, svg, video, canvas { max-width: 100%; display: block; }
input, button, textarea, select { font: inherit; color: inherit; background: none; border: none; outline: none; }
button { cursor: pointer; }

/* ---------- Theme tokens ---------- */
:root{
  --clr-red:#ff0000;
  --clr-navy:#001a5c;
  --grad-accent:linear-gradient(90deg,var(--clr-red) 0%,var(--clr-navy) 100%);
  --text-main:var(--clr-navy);
  --text-dim:#475569;
  --text-on-accent:#fff;
  --bg-page:#fff;
  --bg-section:#f9fafb;
  --bg-card:rgba(255,255,255,.7);
  --line-soft:rgba(0,0,0,.06);
  --line-strong:rgba(0,0,0,.12);
  --radius-lg:1rem; --radius-md:.75rem;
  --header-h:64px; --footer-h:36px;
  --container-max:1280px; --space-page-x:1.5rem; --space-section-y:clamp(3rem,2vw + 2rem,4rem);
  --font-body:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --fs-xs:.8rem; --fs-sm:.9rem; --fs-md:1rem; --fs-lg:clamp(1.125rem,.3vw + 1rem,1.25rem);
  --fs-xl:clamp(1.5rem,1vw + 1rem,1.8rem);
  --fs-2xl:clamp(2rem,1.2vw + 1.25rem,2.4rem);
  --fs-3xl:clamp(2.3rem,1.4vw + 1.5rem,3rem);
  --shadow-card:0 30px 60px rgba(0,0,0,.08);
  --shadow-hover:0 32px 64px rgba(0,0,0,.12);
  --shadow-elevated:0 50px 100px rgba(0,0,0,.12);
}

body.theme-light{
  background-color:var(--bg-page); color:var(--text-main);
  font-family:var(--font-body); line-height:1.55; min-height:100vh;
  padding-top:var(--header-h); padding-bottom:var(--footer-h);
  display:flex; flex-direction:column;
}

.container{ width:100%; max-width:var(--container-max); margin-inline:auto; padding-inline:var(--space-page-x); }

/* ================= HEADER ================= */
.site-header{ position:fixed; inset:0 0 auto 0; height:var(--header-h); z-index:1000;
  background-color:rgba(255,255,255,.7); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-soft); display:flex; align-items:center; }
.header-inner{ display:flex; align-items:center; justify-content:space-between; }
.brand{ display:flex; align-items:center; text-decoration:none; }
.brand-logo{ height:40px; width:auto; display:block; }
.brand-logo--on-light{ display:block; } .brand-logo--on-dark{ display:none; }

.main-nav{ position:fixed; top:var(--header-h); right:0; background:#fff; border-left:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft); box-shadow:0 40px 80px rgba(0,0,0,.08); display:none; flex-direction:column;
  min-width:min(250px,80vw); padding:1rem 1.25rem; border-radius:0 0 0 var(--radius-md); z-index:1001; }
.main-nav__link{ color:var(--text-main); font-size:var(--fs-md); font-weight:500; line-height:1.4; text-decoration:none;
  padding:.75rem .5rem; border-radius:var(--radius-md); display:block; border:1px solid transparent; text-align:left; }
.main-nav__link:hover{ background-color:rgba(0,0,0,.03); border-color:var(--line-soft); }
.main-nav__cta{ background-image:var(--grad-accent); background-size:200% 100%; color:var(--text-on-accent); font-weight:600;
  text-align:center; margin-top:.5rem; border-radius:var(--radius-md); border:0; transition:box-shadow .15s ease,transform .15s ease;
  box-shadow:0 20px 40px rgba(255,0,0,.3); }
.main-nav__cta:hover{ transform:translateY(-2px); box-shadow:0 30px 60px rgba(255,0,0,.4); }
.burger{ display:flex; flex-direction:column; justify-content:center; gap:5px; width:42px; height:42px; padding:0;
  border-radius:var(--radius-md); border:1px solid var(--line-soft); background-color:rgba(255,255,255,.6);
  box-shadow:0 20px 30px rgba(0,0,0,.05); }
.burger span{ display:block; height:2px; width:20px; background:var(--text-main); border-radius:1px;
  transition:transform .2s ease,opacity .2s ease; }
.burger.open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.burger.open span:nth-child(2){ opacity:0; }
.burger.open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
.site-header.nav-open .main-nav{ display:flex; }

.nav-item{ width:100%; }
.nav-parent{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:.5rem; background:none;
  border:1px solid transparent; border-radius:var(--radius-md); padding:.75rem .5rem; color:var(--text-main);
  font-size:var(--fs-md); font-weight:500; line-height:1.4; text-align:left; }
.nav-parent:hover{ background-color:rgba(0,0,0,.03); border-color:var(--line-soft); }
.chevron{ border:solid var(--text-main); border-width:0 2px 2px 0; display:inline-block; padding:2px; transform:rotate(45deg);
  transition:transform .15s ease; }
.dropdown{ display:none; flex-direction:column; padding-left:.75rem; border-left:2px solid var(--clr-red); margin-left:.5rem;
  margin-bottom:.5rem; gap:.25rem; }
.dropdown a{ color:var(--text-main); text-decoration:none; font-size:var(--fs-sm); line-height:1.4; padding:.5rem 0; border-radius:var(--radius-md); }
.dropdown a:hover{ background-color:rgba(0,0,0,.03); color:var(--text-main); text-decoration:none; }
.nav-has-dropdown.mobile-open>.dropdown{ display:flex; }
.nav-has-dropdown.mobile-open>.nav-parent .chevron{ transform:rotate(-135deg) translateY(1px); }

@media (min-width:800px){
  .main-nav{ all:unset; display:flex; align-items:center; gap:1rem; }
  .main-nav__link{ padding:.5rem .75rem; border-radius:var(--radius-md); font-size:var(--fs-sm); border:1px solid transparent; }
  .main-nav__link:hover{ background-color:rgba(0,0,0,.03); border-color:var(--line-soft); }
  .main-nav__cta{ margin-top:0; font-size:var(--fs-sm); padding:.6rem .9rem; margin-left:auto; }
  .burger{ display:none; }
  .nav-item{ position:relative; width:auto; }
  .nav-parent{ all:unset; cursor:pointer; display:flex; align-items:center; font-size:var(--fs-sm); font-weight:500;
    line-height:1.4; padding:.5rem .75rem; border-radius:var(--radius-md); border:1px solid transparent; color:var(--text-main); }
  .nav-parent:hover{ background-color:rgba(0,0,0,.03); border-color:var(--line-soft); }
  .chevron{ margin-left:.4rem; }
  .dropdown{ all:unset; position:absolute; top:100%; right:0; min-width:260px; background:#fff; border:1px solid var(--line-soft);
    box-shadow:0 40px 80px rgba(0,0,0,.08); border-radius:var(--radius-md); padding:.75rem; display:flex; flex-direction:column; gap:.5rem;
    opacity:0; pointer-events:none; transform:translateY(-4px); transition:opacity .15s ease, transform .15s ease; z-index:2000; }
  .dropdown a{ color:var(--text-main); text-decoration:none; font-size:var(--fs-sm); font-weight:500; line-height:1.4; padding:.5rem .75rem;
    border-radius:var(--radius-md); border:1px solid transparent; display:block; }
  .dropdown a:hover{ background-color:rgba(0,0,0,.03); border-color:var(--line-soft); text-decoration:none; }
  .nav-has-dropdown:hover .dropdown,
  .nav-has-dropdown:focus-within .dropdown,
  .dropdown:hover, .dropdown:focus-within{ opacity:1; pointer-events:auto; transform:translateY(0); }
  .nav-has-dropdown:hover .chevron,
  .nav-has-dropdown:focus-within .chevron,
  .dropdown:hover ~ .chevron,
  .dropdown:focus-within ~ .chevron{ transform:rotate(-135deg) translateY(1px); }
  .nav-has-dropdown.mobile-open > .dropdown{ display:flex; }
}

/* ================= HERO SLIDER (slide-left) ================= */
.hero-slider{ position:relative; background:#efefef;
  background-image:repeating-linear-gradient(-70deg, rgba(0,0,0,.03) 0px, rgba(0,0,0,.03) 1px, rgba(0,0,0,0) 1px, rgba(0,0,0,0) 8px);
  padding-top:clamp(2rem,1.5vw + 1rem,3rem); padding-bottom:clamp(2rem,1.5vw + 1rem,3rem);
  overflow:hidden; border-bottom:1px solid var(--line-soft); }
.slider-pattern{ position:absolute; inset:0;
  background-image:radial-gradient(circle at 20% 30%, rgba(255,255,255,.8) 0%, rgba(255,255,255,0) 60%),
                   radial-gradient(circle at 80% 70%, rgba(255,255,255,.6) 0%, rgba(255,255,255,0) 60%);
  pointer-events:none; mix-blend-mode:screen; }
.slider-stage{ position:relative; max-width:var(--container-max); margin-inline:auto; min-height:320px; overflow:hidden; }
.slider-track{ display:flex; transition:transform 1.867s ease; will-change:transform; }
.slide{ position:relative; opacity:1; pointer-events:auto; display:flex; align-items:center; justify-content:center;
  padding-inline:var(--space-page-x); flex:0 0 100%; }
.slide-inner{ background:#fff; border:1px solid var(--line-soft); box-shadow:var(--shadow-elevated);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:2rem; width:100%; overflow:hidden; position:relative; min-height:460px; }
@media (max-width:800px){ .slide-inner{ grid-template-columns:1fr; min-height:460px; } }
.slide-media{ position:relative; overflow:hidden; background:#000; }
.slide-media img{ width:100%; height:100%; object-fit:cover; min-height:220px; }
.slide-content{ padding:clamp(1.5rem,1.2vw + 1rem,2rem); display:flex; flex-direction:column; justify-content:center; }
.slide-headline{ font-size:var(--fs-2xl); line-height:1.2; font-weight:500; color:var(--text-main); margin-bottom:1rem;
  font-family:Georgia,'Times New Roman',Times,serif; letter-spacing:-.02em; }
.slide-accent-bar{ width:48px; height:4px; background:var(--clr-red); margin-bottom:1rem; }
.slide-text{ font-size:var(--fs-md); line-height:1.5; color:var(--text-dim); margin-bottom:1.5rem; max-width:60ch; }
.btn--dark{ background-image:var(--grad-accent); background-size:200% 100%; color:var(--text-on-accent); border-radius:var(--radius-md);
  padding:.8rem 1rem; font-size:var(--fs-sm); font-weight:600; line-height:1.2; border:1px solid rgba(255,255,255,.3);
  box-shadow:0 20px 40px rgba(255,0,0,.3); text-decoration:none; display:inline-block;
  transition:box-shadow .15s ease, transform .15s ease, background-position .3s ease; }
.btn--dark:hover{ background-position:100% 0; transform:translateY(-2px); box-shadow:0 30px 60px rgba(255,0,0,.4); }

/* nav arrows */
.slider-nav{ position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.8);
  border:1px solid var(--line-soft); border-radius:var(--radius-md); width:44px; height:44px; box-shadow:var(--shadow-card);
  display:flex; align-items:center; justify-content:center; padding:0; z-index:10; transition:box-shadow .15s ease, transform .15s ease; }
.slider-nav:hover{ transform:translateY(-50%) translateY(-2px); box-shadow:var(--shadow-hover); }
.slider-nav--prev{ left:clamp(.5rem,2vw,2rem); }
.slider-nav--next{ right:clamp(.5rem,2vw,2rem); }
.slider-arrow{ width:18px; height:18px; border:solid var(--text-main); border-width:0 3px 3px 0; display:inline-block; }
.slider-nav--prev .slider-arrow{ transform:rotate(135deg); }
.slider-nav--next .slider-arrow{ transform:rotate(-45deg); }

/* dots */
.slider-dots{ display:flex; align-items:center; justify-content:center; gap:8px; padding:.9rem 0 .2rem; }
.slider-dot{ width:10px; height:10px; border-radius:9999px; border:2px solid var(--text-main); background:transparent; padding:0; display:inline-block;
  transition:transform .15s ease, background-color .15s ease, border-color .15s ease, opacity .15s ease; opacity:.7; }
.slider-dot:hover{ transform:scale(1.1); opacity:1; }
.slider-dot.is-active{ background:var(--text-main); border-color:var(--text-main); transform:scale(1.15); opacity:1; }
.slider-dot:focus-visible{ outline:2px solid var(--clr-red); outline-offset:2px; }

/* ================= HERO, SERVICES, WHY, CTA, FOOTER ================= */
/* (unchanged from the working build; omitted here for brevity in this file) */
/* Keep the rest of your CSS below exactly as in your current working version ... */

/* HERO */
.hero{ position:relative; background:var(--bg-page); padding-top:var(--space-section-y); padding-bottom:var(--space-section-y); overflow:hidden; }
.hero-bg-overlay{ position:absolute; inset:0; background:radial-gradient(circle at 10% 20%, rgba(255,0,0,.08) 0%, rgba(255,255,255,0) 60%),
  radial-gradient(circle at 80% 30%, rgba(0,26,92,.08) 0%, rgba(255,255,255,0) 60%); pointer-events:none; filter:blur(60px); opacity:.8; }
.hero-inner{ position:relative; display:grid; gap:2rem; }
@media (min-width:900px){ .hero-inner{ grid-template-columns:minmax(0,2fr) minmax(0,1fr); align-items:center; } }
.hero-copy{ max-width:46rem; position:relative; z-index:1; }
.hero-headline{ font-size:var(--fs-3xl); font-weight:600; line-height:1.15; color:var(--text-main); letter-spacing:-.03em; margin-bottom:1rem; }
.accent-dot{ color:var(--clr-red); }
.lead{ color:var(--text-main); font-size:var(--fs-lg); line-height:1.5; margin-bottom:1rem; font-weight:500; }
.sublead{ color:var(--text-dim); font-size:var(--fs-md); line-height:1.55; max-width:60ch; margin-bottom:1.5rem; }
.sublead a{ color:var(--clr-red); font-weight:500; text-decoration:none; }
.sublead a:hover{ text-decoration:underline; }
.hero-cta{ display:flex; flex-wrap:wrap; gap:.75rem; }
.hero-card{ position:relative; z-index:1; max-width:26rem; }
.hero-card__inner{ background:var(--bg-card); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border:1px solid var(--line-strong);
  border-radius:var(--radius-lg); box-shadow:var(--shadow-card); padding:1.5rem 1.25rem; position:relative; overflow:hidden; }
.hero-card__inner::before{ content:""; position:absolute; inset:0; background:radial-gradient(circle at 0% 0%, rgba(255,0,0,.08) 0%, transparent 70%);
  pointer-events:none; }
.hero-card__title{ font-size:var(--fs-xl); font-weight:600; line-height:1.3; color:var(--text-main); margin-bottom:.75rem; }
.hero-card__text{ color:var(--text-dim); font-size:var(--fs-md); line-height:1.5; }

/* Buttons */
.btn{ display:inline-block; text-decoration:none; border-radius:var(--radius-md); font-weight:600; line-height:1.2; border:0; cursor:pointer; position:relative;
  transition:box-shadow .15s ease, transform .15s ease, background-position .3s ease; white-space:nowrap; }
.btn--primary{ background-image:var(--grad-accent); background-size:200% 100%; color:var(--text-on-accent); padding:.8rem 1rem; font-size:var(--fs-sm);
  box-shadow:0 20px 40px rgba(255,0,0,.3); border:1px solid rgba(255,255,255,.3); }
.btn--primary:hover{ background-position:100% 0; transform:translateY(-2px); box-shadow:0 30px 60px rgba(255,0,0,.4); }
.btn--ghost{ background:transparent; color:var(--text-main); border:1px solid var(--line-strong); padding:.8rem 1rem; font-size:var(--fs-sm); }
.btn--ghost:hover{ box-shadow:0 20px 40px rgba(0,0,0,.08); background:rgba(0,0,0,.03); transform:translateY(-2px); }
.btn--link{ background:none; color:var(--clr-red); font-size:var(--fs-sm); padding:0; border-radius:0; font-weight:500; border-bottom:1px solid transparent; }
.btn--link:hover{ border-bottom:1px solid var(--clr-red); }
.btn--lg{ font-size:var(--fs-md); padding:.9rem 1.15rem; }

/* Sections */
.services,.why{ background:var(--bg-section); padding-top:var(--space-section-y); padding-bottom:var(--space-section-y); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); }
.section-header{ max-width:48rem; margin-bottom:2rem; }
.section-title{ font-size:var(--fs-2xl); font-weight:600; line-height:1.2; color:var(--text-main); margin-bottom:.75rem; letter-spacing:-.03em; }
.section-intro{ color:var(--text-dim); font-size:var(--fs-md); line-height:1.5; max-width:60ch; }

/* Service grid */
.service-grid{ display:grid; gap:1.5rem; }
@media (min-width:600px){ .service-grid{ grid-template-columns:repeat(auto-fit, minmax(min(100%,260px),1fr)); } }
.service-card{ position:relative; background:#fff; border:1px solid var(--line-strong); border-radius:var(--radius-lg); box-shadow:var(--shadow-card);
  padding:1.25rem 1.25rem 1rem; display:flex; flex-direction:column; min-height:240px; overflow:hidden; transition:all .2s ease; }
.service-card:hover{ transform:translateY(-4px); border-color:rgba(255,0,0,.4); box-shadow:var(--shadow-hover); }
.service-card__icon{ color:var(--text-main); width:32px; height:32px; line-height:0; margin-bottom:.75rem; opacity:.9; transition:transform .2s ease, color .2s ease; }
.service-card__icon svg{ width:32px; height:32px; display:block; }
.service-card:hover .service-card__icon{ transform:scale(1.05); color:var(--clr-red); }
.service-card__bar{ background-image:var(--grad-accent); height:3px; width:60px; border-radius:3px; margin-bottom:1rem; box-shadow:0 10px 30px rgba(255,0,0,.4); transition:width .2s ease; }
.service-card:hover .service-card__bar{ width:80px; }
.service-card__title{ font-size:var(--fs-lg); font-weight:600; color:var(--text-main); line-height:1.3; margin-bottom:.5rem; }
.service-card__title a{ color:inherit; text-decoration:none; }
.service-card__title a:hover{ text-decoration:underline; text-decoration-color:var(--clr-red); }
.service-card__text{ flex-grow:1; font-size:var(--fs-sm); line-height:1.5; color:var(--text-dim); margin-bottom:1rem; }
.service-card__link{ font-size:var(--fs-sm); font-weight:500; text-decoration:none; color:var(--clr-red); line-height:1.3; transition:color .15s ease; }
.service-card__link:hover{ text-decoration:underline; }

/* Why */
.why-inner{ display:grid; gap:2rem; }
@media (min-width:900px){ .why-inner{ grid-template-columns:minmax(0,2fr) minmax(0,1fr); align-items:start; } }
.why-copy .section-header{ margin-bottom:1.25rem; }
.why-list{ list-style:none; margin:0 0 1.5rem; padding:0; display:grid; gap:1rem; font-size:var(--fs-md); line-height:1.5; color:var(--text-main); }
.why-list li strong{ color:var(--text-main); font-weight:600; }
.btn--link{ margin-top:.5rem; }
.why-card{ max-width:26rem; background:#fff; border:1px solid var(--line-strong); border-radius:var(--radius-lg); box-shadow:var(--shadow-card); padding:1.25rem 1.25rem 1rem; position:relative; overflow:hidden; }
.why-card::before{ content:""; position:absolute; inset:0; background:radial-gradient(circle at 100% 0%, rgba(0,26,92,.08) 0%, transparent 70%); pointer-events:none; }
.why-card__badge{ display:inline-block; background-image:var(--grad-accent); color:var(--text-on-accent); font-size:var(--fs-xs); font-weight:600; line-height:1.2; padding:.4rem .6rem; border-radius:var(--radius-md); box-shadow:0 20px 40px rgba(255,0,0,.4); margin-bottom:.75rem; }
.why-card__text{ font-size:var(--fs-sm); line-height:1.5; color:var(--text-dim); }

/* CTA */
.cta{ background-image:radial-gradient(circle at 15% 20%, rgba(255,0,0,.3) 0%, rgba(0,0,0,0) 60%), radial-gradient(circle at 85% 30%, rgba(0,26,92,.5) 0%, rgba(0,0,0,0) 60%), var(--grad-accent);
  background-size:cover; background-repeat:no-repeat; color:var(--text-on-accent); text-align:center; padding-top:var(--space-section-y); padding-bottom:var(--space-section-y);
  border-top:1px solid var(--line-soft); }
.cta-inner{ max-width:48rem; margin-inline:auto; text-align:center; }
.cta-title{ font-size:var(--fs-2xl); font-weight:600; line-height:1.2; color:var(--text-on-accent); margin-bottom:.75rem; letter-spacing:-.03em; }
.cta-text{ font-size:var(--fs-md); line-height:1.5; color:var(--text-on-accent); opacity:.9; margin-bottom:1.5rem; }
.cta .btn--primary{ background-image:none; background-color:rgba(0,0,0,.25); box-shadow:0 20px 40px rgba(0,0,0,.7); border:1px solid rgba(255,255,255,.3); }
.cta .btn--primary:hover{ background-color:rgba(0,0,0,.4); box-shadow:0 30px 60px rgba(0,0,0,.8); }

/* FOOTER (fixed) */
.site-footer{ position:fixed; left:0; right:0; bottom:0; height:var(--footer-h); z-index:1000; background:rgba(255,255,255,.7);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-top:1px solid var(--line-soft); display:flex; align-items:center;
  color:var(--text-dim); font-size:var(--fs-xs); }
.footer-inner{ width:100%; display:flex; flex-wrap:wrap; row-gap:.5rem; column-gap:1rem; align-items:center; justify-content:space-between; }
.footer-copy{ color:var(--text-dim); line-height:1.4; }
.footer-links{ display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1rem; justify-content:flex-end; }
.footer-link{ color:var(--text-main); text-decoration:none; font-weight:500; font-size:var(--fs-xs); line-height:1.4; border-radius:var(--radius-md); border:1px solid transparent; padding:.4rem .5rem; }
.footer-link:hover{ color:var(--clr-red); text-decoration:underline; }

:focus-visible{ outline:2px solid var(--clr-red); outline-offset:2px; }

/* Slider Pause/Play control */
.slider-ctrl {
  font-size: var(--fs-xs);
  color: var(--text-main);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-md);
  padding: 0.35rem 0.6rem;
  background: #ffffff;
  line-height: 1;
  margin-left: 12px;
  transition: background-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.slider-ctrl:hover {
  background-color: rgba(0,0,0,0.03);
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.06);
}
.slider-ctrl:focus-visible {
  outline: 2px solid var(--clr-red);
  outline-offset: 2px;
}
/* Footer: links & cookie modal (minimal additions) */
.footer-links{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.footer-links .sep{color:#a7b1c8}
.linklike{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:var(--clr-navy);cursor:pointer;text-decoration:underline;text-underline-offset:2px}

/* Cookie modal (scoped) */
.qv-cookie-modal{position:fixed;inset:0;display:none;z-index:3000}
.qv-cookie-modal.is-open{display:block}
.qv-cookie-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.qv-cookie-dialog{position:relative;margin:10vh auto;max-width:min(600px,92vw);background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:12px;box-shadow:0 30px 60px rgba(0,0,0,.16)}
.qv-cookie-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem .5rem}
.qv-cookie-content{padding:0 1rem 1rem;color:#334155}
.qv-cookie-actions{display:flex;justify-content:flex-end;gap:.5rem;padding:.5rem 1rem 1rem}
.qv-cookie-close{appearance:none;background:none;border:0;font-size:1.25rem;line-height:1;cursor:pointer;padding:.25rem .4rem}
.qv-cookie-close:hover{opacity:.8}

/* ---- Slider: altezza fissa + immagini con angoli arrotondati (tutti e 4 gli angoli) ---- */

/* Desktop (>=800px): immagine a sinistra, testo a destra */
@media (min-width:800px){
  .hero-slider .slide-inner{
    height:460px;
    min-height:auto;
    max-height:460px;
  }

  .hero-slider .slide-media{
    height:100%;
    overflow:hidden;
    border-radius:var(--radius-lg);
  }

  .hero-slider .slide-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    border-radius:inherit;
  }
}

/* Mobile (<800px): immagine sopra, testo sotto */
@media (max-width:799px){
  .hero-slider .slide-media{
    overflow:hidden;
    border-radius:var(--radius-lg);
  }

  .hero-slider .slide-media img{
    width:100%;
    height:auto;
    object-fit:cover;
    border-radius:inherit;
  }
}
@media (min-width: 800px) {
  .header-inner .main-nav { margin-left: auto; margin-right: 0.75rem; }
  .main-nav__cta { margin-left: 0 !important; }
}

.nav-highlight {
  color: #667eea !important;
  font-weight: 600;
}

.badge-new {
  display: inline-block;
  background: #e74c3c;
  color: white;
  font-size: 0.65rem;
  padding: 0.15rem 0.4rem;
  border-radius: 3px;
  margin-left: 0.25rem;
  vertical-align: middle;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.btn--accent {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
}

.btn--accent:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
}