/* =========================================================
   QuickConto - superfici e bordi neutri 2026
   Da caricare PER ULTIMO dopo gli altri fogli di stile.

   Obiettivo:
   - topbar bianca con separatore grigio
   - fascia titolo/hero grigio chiaro con bordo grigio
   - niente bordi Melograno sulle superfici strutturali
   - Melograno conservato per CTA, link e piccoli accenti
   ========================================================= */

:root{
  --qc-neutral-bg:#F5F6F8;
  --qc-neutral-surface:#FFFFFF;
  --qc-neutral-line:#DCE2E7;
  --qc-neutral-line-strong:#C8D1D9;
}

body.qc-neutral-page{
  font-family:'Archivo',Arial,sans-serif;
}

/* Topbar / navigazione */
body.qc-neutral-page .qc-header,
body.qc-neutral-page .navbar{
  background:#FFFFFF !important;
  border:0 !important;
  border-bottom:1px solid var(--qc-neutral-line) !important;
  box-shadow:none !important;
}

body.qc-neutral-page .qc-header::before,
body.qc-neutral-page .qc-header::after,
body.qc-neutral-page .navbar::before,
body.qc-neutral-page .navbar::after{
  display:none !important;
  content:none !important;
  background:none !important;
  box-shadow:none !important;
}

/* Prima fascia / hero */
body.qc-neutral-page .hero,
body.qc-neutral-page .qc-hero,
body.qc-neutral-page .qc-pricing-hero{
  background:var(--qc-neutral-bg) !important;
  color:var(--ink, #1A2229) !important;
  border:0 !important;
  border-bottom:1px solid var(--qc-neutral-line) !important;
  box-shadow:none !important;
}

body.qc-neutral-page .hero::before,
body.qc-neutral-page .hero::after,
body.qc-neutral-page .qc-hero::before,
body.qc-neutral-page .qc-hero::after,
body.qc-neutral-page .qc-pricing-hero::before,
body.qc-neutral-page .qc-pricing-hero::after{
  background:none !important;
  border-color:var(--qc-neutral-line) !important;
  box-shadow:none !important;
}

/* Titoli delle pagine interne: stessa densita delle pagine legali */
body.qc-page.qc-neutral-page:not(.qc-pricing-page):not(.qc-order-page) .hero h1{
  font-family:'Archivo',Arial,sans-serif !important;
  font-size:clamp(30px,3.5vw,42px) !important;
  line-height:1.18 !important;
  font-weight:700 !important;
  letter-spacing:-.025em !important;
  color:var(--ink, #1A2229) !important;
}

body.qc-page.qc-neutral-page:not(.qc-pricing-page):not(.qc-order-page) .hero .subtitle,
body.qc-page.qc-neutral-page:not(.qc-pricing-page):not(.qc-order-page) .hero > p{
  font-family:'Archivo',Arial,sans-serif !important;
  font-size:16px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
  color:var(--ink-2, #3C4954) !important;
}

/* Checkout: il titolo e' dentro .page-header, non dentro .hero */
body.qc-order-page.qc-neutral-page .page-header{
  background:var(--qc-neutral-bg) !important;
  border:1px solid var(--qc-neutral-line) !important;
  border-left:1px solid var(--qc-neutral-line) !important;
  border-radius:4px !important;
  box-shadow:none !important;
  padding:20px 22px !important;
  margin-bottom:22px !important;
}

body.qc-order-page.qc-neutral-page .page-header::before,
body.qc-order-page.qc-neutral-page .page-header::after{
  display:none !important;
  content:none !important;
}

/* Footer delle pagine nuove */
body.qc-neutral-page .qc-footer{
  background:var(--qc-neutral-bg) !important;
  border-top:1px solid var(--qc-neutral-line) !important;
  box-shadow:none !important;
}

body.qc-neutral-page .qc-footer-bottom{
  border-top-color:var(--qc-neutral-line) !important;
}

/* Separazioni generiche: mai rosse sulle superfici neutre */
body.qc-neutral-page .hero,
body.qc-neutral-page .qc-hero,
body.qc-neutral-page .qc-pricing-hero,
body.qc-neutral-page .page-header{
  --border-color:var(--qc-neutral-line);
}

@media(max-width:720px){
  body.qc-order-page.qc-neutral-page .page-header{
    padding:18px 16px !important;
  }
}

/* =========================================================
   V2 - separatori strutturali forzati su grigio neutro
   ========================================================= */
body.qc-neutral-page .qc-header,
body.qc-neutral-page header.qc-header {
  background:#FFFFFF !important;
  border-top:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  border-bottom:1px solid #DCE2E7 !important;
  box-shadow:none !important;
  outline:0 !important;
}

body.qc-neutral-page .qc-header-inner,
body.qc-neutral-page .qc-nav {
  border-color:#DCE2E7 !important;
  box-shadow:none !important;
}

body.qc-neutral-page .hero,
body.qc-neutral-page .hero-pricing,
body.qc-neutral-page .qc-hero,
body.qc-neutral-page .qc-pricing-hero {
  background:#F5F6F8 !important;
  border-top:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  border-bottom:1px solid #DCE2E7 !important;
  box-shadow:none !important;
  outline:0 !important;
}

body.qc-neutral-page .hero::before,
body.qc-neutral-page .hero::after,
body.qc-neutral-page .hero-pricing::before,
body.qc-neutral-page .hero-pricing::after,
body.qc-neutral-page .qc-hero::before,
body.qc-neutral-page .qc-hero::after,
body.qc-neutral-page .qc-pricing-hero::before,
body.qc-neutral-page .qc-pricing-hero::after {
  content:none !important;
  display:none !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
}
