/* ============================================================
   Eletna / EletnaOS — Design System
   Brand: navy + aqua/sage + ivory, premium longevity
   ============================================================ */

/* ---------- Tokens ---------- */
:root {
  /* Type scale (fluid) */
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.85rem);
  --text-sm: clamp(0.875rem, 0.82rem + 0.3vw, 1rem);
  --text-base: clamp(1rem, 0.96rem + 0.25vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.7vw, 1.45rem);
  --text-xl: clamp(1.5rem, 1.2rem + 1.2vw, 2.2rem);
  --text-2xl: clamp(2rem, 1.3rem + 2.4vw, 3.4rem);
  --text-3xl: clamp(2.5rem, 1.2rem + 4vw, 4.75rem);

  /* Spacing 4px base */
  --space-1: 0.25rem;  --space-2: 0.5rem;  --space-3: 0.75rem;
  --space-4: 1rem;     --space-5: 1.25rem; --space-6: 1.5rem;
  --space-8: 2rem;     --space-10: 2.5rem; --space-12: 3rem;
  --space-16: 4rem;    --space-20: 5rem;   --space-24: 6rem;
  --space-32: 8rem;

  /* Brand color — light (default) */
  --color-bg: #f8f6f0;
  --color-surface: #fffef9;
  --color-surface-2: #f2efe6;
  --color-surface-offset: #ece8dd;
  --color-border: #ddd6c8;
  --color-divider: #e6e1d5;

  --color-text: #17262f;
  --color-text-muted: #566670;
  --color-text-faint: #97a2a8;
  --color-text-inverse: #f8f6f0;

  /* Navy primary */
  --navy: #12293d;
  --navy-2: #1f3a52;
  --navy-deep: #0d1f2f;
  --color-primary: #12293d;
  --color-primary-hover: #1f3a52;

  /* Aqua / sage accent */
  --aqua: #4f9a93;
  --aqua-soft: #7fbfb6;
  --aqua-pale: #cfe3df;
  --color-accent: #4f9a93;
  --color-accent-hover: #3d8079;

  /* Copper — used sparingly */
  --copper: #b07a45;
  --copper-soft: #cf9a68;

  --color-success: #437a52;
  --color-error: #a3453f;

  --radius-sm: 0.375rem; --radius-md: 0.625rem; --radius-lg: 1rem;
  --radius-xl: 1.5rem; --radius-full: 9999px;

  --transition-interactive: 200ms cubic-bezier(0.16, 1, 0.3, 1);

  --shadow-sm: 0 1px 3px rgba(18,41,61,0.06);
  --shadow-md: 0 8px 24px rgba(18,41,61,0.09);
  --shadow-lg: 0 24px 60px rgba(18,41,61,0.14);

  --content-narrow: 680px;
  --content-default: 1020px;
  --content-wide: 1220px;

  --font-display: 'Zodiak', Georgia, serif;
  --font-body: 'Work Sans', system-ui, sans-serif;

  /* refined tracking echoing the wordmark */
  --track-brand: 0.42em;
  --track-eyebrow: 0.24em;
}

[data-theme="dark"] {
  --color-bg: #0d1f2f;
  --color-surface: #12293d;
  --color-surface-2: #17303f;
  --color-surface-offset: #1c3646;
  --color-border: #294657;
  --color-divider: #223c4d;

  --color-text: #e7ecec;
  --color-text-muted: #9db0b4;
  --color-text-faint: #6a8085;
  --color-text-inverse: #0d1f2f;

  --color-primary: #7fbfb6;
  --color-primary-hover: #9ad2c9;
  --color-accent: #7fbfb6;
  --color-accent-hover: #9ad2c9;

  --color-border: #294657;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
  --shadow-md: 0 8px 24px rgba(0,0,0,0.4);
  --shadow-lg: 0 24px 60px rgba(0,0,0,0.5);
}

/* ---------- Base reset ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;scroll-behavior:smooth;
  scroll-padding-top:5rem;
}
body{
  min-height:100dvh;line-height:1.65;
  font-family:var(--font-body);font-size:var(--text-base);
  color:var(--color-text);background:var(--color-bg);
}
img,picture,svg,video{display:block;max-width:100%;height:auto}
ul[role='list']{list-style:none}
input,button,textarea,select{font:inherit;color:inherit}
h1,h2,h3,h4{text-wrap:balance;line-height:1.12;font-family:var(--font-display);font-weight:500}
p,li{text-wrap:pretty;max-width:70ch}
button{cursor:pointer;background:none;border:none}
a{color:inherit}
::selection{background:var(--aqua-pale);color:var(--navy)}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
a,button,input,textarea,select,[role=button]{transition:color var(--transition-interactive),background var(--transition-interactive),border-color var(--transition-interactive),box-shadow var(--transition-interactive),transform var(--transition-interactive)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:var(--space-4);top:-3rem;z-index:200;background:var(--navy);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);transition:top .2s}
.skip-link:focus{top:var(--space-4)}

/* ---------- Layout ---------- */
.wrap{width:100%;max-width:var(--content-wide);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,3rem)}
.wrap--default{max-width:var(--content-default)}
.wrap--narrow{max-width:var(--content-narrow)}
section{padding-block:clamp(var(--space-16),8vw,var(--space-32))}
.section-tight{padding-block:clamp(var(--space-12),5vw,var(--space-20))}

.eyebrow{
  display:inline-flex;align-items:center;gap:var(--space-2);
  font-size:var(--text-xs);font-weight:600;text-transform:uppercase;
  letter-spacing:var(--track-eyebrow);color:var(--color-accent);
  margin-bottom:var(--space-5);
}
.eyebrow::before{content:"";width:1.75rem;height:1px;background:var(--color-accent);opacity:.7}
#metodo .eyebrow{white-space:nowrap}
@media(max-width:600px){#metodo .eyebrow{white-space:normal}}
.section-head{max-width:44rem;margin-bottom:clamp(var(--space-10),5vw,var(--space-16))}
.section-head h2{font-size:var(--text-2xl);letter-spacing:-0.01em}
.section-head p{margin-top:var(--space-5);color:var(--color-text-muted);font-size:var(--text-lg)}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);
  padding:0.9rem 1.6rem;border-radius:var(--radius-full);
  font-size:var(--text-sm);font-weight:600;letter-spacing:0.01em;
  text-decoration:none;text-align:center;min-height:44px;
}
@media(min-width:481px){.btn{white-space:nowrap}}
.btn--primary{background:var(--navy);color:#f8f6f0}
.btn--primary:hover{background:var(--navy-2);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.btn--accent{background:var(--aqua);color:#fff}
.btn--accent:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.btn--ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}
.btn--ghost:hover{border-color:var(--navy);color:var(--navy);transform:translateY(-2px)}
[data-theme=dark] .btn--ghost:hover{border-color:var(--aqua);color:var(--aqua)}
.btn--light{background:rgba(255,255,255,0.1);color:#f8f6f0;border:1px solid rgba(255,255,255,0.25)}
.btn--light:hover{background:rgba(255,255,255,0.18);transform:translateY(-2px)}
.btn--lg{padding:1.05rem 2rem;font-size:var(--text-base)}
.btn--block{width:100%}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:transparent;
  padding-block:var(--space-3);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:4rem;
  background:color-mix(in srgb, var(--color-bg) 82%, transparent);
  backdrop-filter:blur(16px);
  border:1px solid var(--color-divider);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-md);
}
.brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none}
.brand img{height:2.6rem;width:auto}
.brand__mark{height:2.4rem;width:auto}
.brand__text{display:flex;flex-direction:column;line-height:1;justify-content:center}
.brand__name{font-family:var(--font-body);font-weight:700;font-size:1rem;letter-spacing:0.2em;color:var(--navy);text-transform:uppercase;white-space:nowrap}
.brand__os{letter-spacing:0.12em;color:var(--color-accent)}
[data-theme=dark] .brand__name{color:var(--color-text)}
.brand__sub{font-size:0.55rem;letter-spacing:0.12em;color:var(--color-text-faint);text-transform:uppercase;margin-top:4px;max-width:15rem;white-space:nowrap}
.nav{display:flex;align-items:center;gap:var(--space-6)}
.nav a{font-size:var(--text-sm);font-weight:500;text-decoration:none;color:var(--color-text-muted)}
.nav a:hover{color:var(--navy)}
[data-theme=dark] .nav a:hover{color:var(--aqua)}
.nav-group{position:relative;display:flex;align-items:center}
.nav-trigger{display:inline-flex;align-items:center;gap:4px;padding:0;margin:0;border:0;background:none;cursor:pointer;font-family:inherit;font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}
.nav-group:hover .nav-trigger,.nav-group:focus-within .nav-trigger,.nav-group.open .nav-trigger{color:var(--navy)}
[data-theme=dark] .nav-group:hover .nav-trigger,[data-theme=dark] .nav-group:focus-within .nav-trigger,[data-theme=dark] .nav-group.open .nav-trigger{color:var(--aqua)}
.nav-caret{transition:transform .2s ease}
.nav-group:hover .nav-caret,.nav-group:focus-within .nav-caret,.nav-group.open .nav-caret{transform:rotate(180deg)}
.nav-menu{
  position:absolute;top:100%;left:50%;
  display:flex;flex-direction:column;gap:2px;min-width:12rem;
  margin-top:0.65rem;padding:var(--space-3);
  background:var(--color-surface);border:1px solid var(--color-divider);
  border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateX(-50%) translateY(6px);
  transition:opacity .2s ease,transform .2s ease;z-index:120;
}
.nav-menu::before{content:"";position:absolute;left:0;right:0;top:-0.65rem;height:0.65rem}
.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu,.nav-group.open .nav-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-menu a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);white-space:nowrap}
.nav-menu a:hover{background:var(--color-surface-2);color:var(--navy)}
[data-theme=dark] .nav-menu a:hover{color:var(--aqua)}
.header-cta{display:flex;align-items:center;gap:var(--space-3)}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-full);color:var(--color-text-muted);border:1px solid transparent}
.theme-toggle:hover{background:var(--color-surface-2);color:var(--navy)}
.lang-select{appearance:none;-webkit-appearance:none;height:42px;padding:0 var(--space-3);border-radius:var(--radius-full);border:1px solid var(--color-divider);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;cursor:pointer}
.lang-select:hover{border-color:var(--aqua);color:var(--navy)}
.lang-select:focus-visible{outline:2px solid var(--aqua);outline-offset:2px}
.menu-btn{display:none;width:44px;height:44px;align-items:center;justify-content:center;color:var(--color-text)}
.mobile-nav{display:none}

@media (max-width:900px){
  .nav,.header-cta .btn{display:none}
  .menu-btn{display:inline-flex}
  .mobile-nav{display:none;flex-direction:column;gap:2px;margin-top:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
  .mobile-nav.open{display:flex}
  .mobile-nav a{padding:var(--space-3) var(--space-2);text-decoration:none;color:var(--color-text);font-weight:500;border-radius:var(--radius-md)}
  .mobile-nav a:hover{background:var(--color-surface-2)}
  .mobile-nav__label{padding:var(--space-3) var(--space-2) var(--space-1);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint)}
  .mobile-nav__label ~ .mobile-nav__label,.mobile-nav a + .mobile-nav__label{margin-top:var(--space-2);border-top:1px solid var(--color-divider);padding-top:var(--space-3)}
  .mobile-nav .btn{display:inline-flex;margin-top:var(--space-2)}
}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;padding-block:clamp(var(--space-20),9vw,var(--space-32)) clamp(var(--space-16),7vw,var(--space-24))}
.hero::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(120% 80% at 82% 8%, rgba(127,191,182,0.20), transparent 60%),
    radial-gradient(90% 70% at 8% 92%, rgba(18,41,61,0.06), transparent 55%);
  pointer-events:none;
}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr 0.85fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.hero h1{font-size:var(--text-3xl);letter-spacing:-0.015em}
.hero .lead{margin-top:var(--space-6);font-size:var(--text-lg);color:var(--color-text-muted);max-width:34ch}
.hero .claim{
  display:block;font-family:var(--font-body);font-weight:600;
  text-transform:uppercase;letter-spacing:var(--track-eyebrow);
  color:var(--color-accent);font-size:var(--text-sm);margin-bottom:var(--space-5);
}
.hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-10)}
.hero-cta .btn{flex:1 1 auto;min-width:0}
.hero-note{margin-top:var(--space-6);font-size:var(--text-xs);color:var(--color-text-faint);letter-spacing:0.01em}
.hero-visual{position:relative}
.hero-logo-card{
  background:var(--color-surface);border:1px solid var(--color-divider);
  border-radius:var(--radius-xl);padding:clamp(1.5rem,3vw,2.5rem);
  box-shadow:var(--shadow-lg);text-align:center;
}
.hero-logo-card img{width:min(100%,300px);margin-inline:auto}
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4)}
.hero-stat{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-3);min-width:0}
.hero-stat b{display:block;font-family:var(--font-display);font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.15;color:var(--navy);overflow-wrap:anywhere}
[data-theme=dark] .hero-stat b{color:var(--aqua)}
.hero-stat span{display:block;margin-top:.35rem;font-size:.78rem;line-height:1.45;color:var(--color-text-muted)}

@media (max-width:860px){
  .hero-inner{grid-template-columns:1fr}
  .hero-visual{order:-1}
  .hero .lead{max-width:none}
}
@media (max-width:480px){
  .hero-stats{grid-template-columns:1fr}
}

/* ---------- Brand strip ---------- */
.brand-strip{background:var(--navy);color:#eef3f2}
.brand-strip .wrap{text-align:center}
.brand-strip .letters{display:flex;justify-content:center;gap:clamp(.5rem,3vw,2rem);flex-wrap:wrap;margin-bottom:var(--space-6)}
.brand-strip .letters span{font-family:var(--font-display);font-size:clamp(1.6rem,5vw,3rem);color:#7fbfb6}
.brand-strip p{margin-inline:auto;color:#b9cbc9;font-size:var(--text-lg);letter-spacing:0.02em}
.brand-strip .payoff{font-family:var(--font-display);font-size:var(--text-xl);color:#fff;letter-spacing:0.02em;margin-bottom:var(--space-4)}
.brand-intro{max-width:62ch;margin-bottom:var(--space-10)}
.letter-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-top:var(--space-10);text-align:left}
.letter-card{display:grid;grid-template-columns:auto 1fr;gap:var(--space-4);background:rgba(255,255,255,0.055);border:1px solid rgba(255,255,255,0.11);border-radius:var(--radius-lg);padding:clamp(1.25rem,2.6vw,1.8rem)}
.letter-card__glyph{width:3rem;height:3rem;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background:rgba(127,191,182,0.16);color:var(--aqua-soft);font-family:var(--font-display);font-size:var(--text-xl);line-height:1}
.letter-card h3{font-family:var(--font-body);font-size:var(--text-base);font-weight:700;color:#fff;margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:0.04em}
.letter-card p{font-size:var(--text-sm);line-height:1.55;color:#b9cbc9;margin:0;max-width:none}
@media(max-width:820px){.letter-grid{grid-template-columns:1fr}.letter-card{grid-template-columns:1fr}.letter-card__glyph{width:2.75rem;height:2.75rem}}

/* ---------- Cards / grids ---------- */
.card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2.25rem)}
.card h3{font-size:var(--text-lg);margin-bottom:var(--space-3)}
.card p{color:var(--color-text-muted);font-size:var(--text-sm)}

.grid{display:grid;gap:var(--space-6)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:860px){.grid-2,.grid-3{grid-template-columns:1fr}}
@media(max-width:960px){.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grid-4{grid-template-columns:1fr}}

/* problem list */
.problem{background:var(--color-surface-2)}
.problem-inner{display:grid;grid-template-columns:0.9fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.chip-list{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.chip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:0.55rem 1.1rem;font-size:var(--text-sm);color:var(--color-text-muted)}
@media(max-width:860px){.problem-inner{grid-template-columns:1fr}}

/* method feature list */
.method-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}
.method-item{display:flex;gap:var(--space-4);padding-block:var(--space-2)}
.method-item .num{font-family:var(--font-display);font-size:var(--text-lg);color:var(--aqua);flex-shrink:0;width:2.2rem}
.method-item h3{font-size:var(--text-base);font-family:var(--font-body);font-weight:600;margin-bottom:var(--space-1)}
.method-item p{font-size:var(--text-sm);color:var(--color-text-muted)}
@media(max-width:720px){.method-list{grid-template-columns:1fr}}

/* timeline / percorso */
.timeline{position:relative;display:grid;gap:var(--space-8)}
.step{display:grid;grid-template-columns:auto 1fr;gap:var(--space-6);position:relative}
.step__badge{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}
.step__num{width:3rem;height:3rem;border-radius:var(--radius-full);background:var(--navy);color:#f8f6f0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:var(--text-lg);flex-shrink:0}
.step:not(:last-child) .step__line{flex:1;width:2px;background:var(--color-divider);min-height:2rem}
.step__body{padding-bottom:var(--space-4)}
.step__body .tag{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--color-accent);font-weight:600}
.step__body h3{font-size:var(--text-lg);margin:var(--space-2) 0}
.step__body p{color:var(--color-text-muted);font-size:var(--text-sm)}

/* areas grid */
.area-card{position:relative;overflow:hidden}
.area-card .ico{color:var(--aqua);margin-bottom:var(--space-4)}
.area-card ul{list-style:none;margin-top:var(--space-3);display:grid;gap:var(--space-1)}
.area-card li{font-size:var(--text-sm);color:var(--color-text-muted);padding-left:1rem;position:relative}
.area-card li::before{content:"";position:absolute;left:0;top:0.65em;width:5px;height:5px;border-radius:50%;background:var(--aqua-soft)}

/* profile */
.profile{background:var(--color-surface-2)}
.profile-inner{display:grid;grid-template-columns:0.8fr 1.2fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.profile-badges{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}
.profile-badges .chip{background:var(--color-surface);border-color:var(--aqua-pale)}
.profile-visual{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-xl);padding:clamp(1.5rem,4vw,2.5rem);box-shadow:var(--shadow-md)}
.profile-visual img{width:min(100%,300px);margin-inline:auto}
@media(max-width:860px){.profile-inner{grid-template-columns:1fr}}

/* eletnaos feature */
.os{background:var(--navy);color:#eef3f2}
.os .eyebrow{color:var(--aqua-soft)}
.os .eyebrow::before{background:var(--aqua-soft)}
.os .section-head h2{color:#fff}
.os .section-head p{color:#b9cbc9}
.os-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1)}
.os-card h3{color:#fff}
.os-card p{color:#a9bdbb}
.os-card .ico{color:var(--aqua-soft);margin-bottom:var(--space-4)}

/* pricing */
.pricing{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);max-width:840px;margin-inline:auto}
.plan{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-xl);padding:clamp(1.75rem,3vw,2.5rem);display:flex;flex-direction:column}
.plan--featured{border-color:var(--aqua);box-shadow:var(--shadow-md);position:relative}
.plan--featured::after{content:"Consigliato";position:absolute;top:1.5rem;right:1.5rem;font-size:var(--text-xs);font-weight:600;color:var(--aqua);letter-spacing:0.1em;text-transform:uppercase}
.plan__name{font-family:var(--font-display);font-size:var(--text-xl);color:var(--navy)}
[data-theme=dark] .plan__name{color:var(--aqua)}
.plan__price{font-size:var(--text-2xl);font-family:var(--font-display);margin:var(--space-4) 0 var(--space-1)}
.plan__price small{font-size:var(--text-sm);color:var(--color-text-muted);font-family:var(--font-body)}
.plan__desc{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-6)}
.plan ul{list-style:none;display:grid;gap:var(--space-3);margin-bottom:var(--space-8);flex:1}
.plan li{display:flex;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text)}
.plan li svg{color:var(--aqua);flex-shrink:0;margin-top:3px}
@media(max-width:720px){.pricing{grid-template-columns:1fr}}

/* marketplace */
.market-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.market-item{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5)}
.market-item .ico{color:var(--copper);margin-bottom:var(--space-3)}
.market-item h3{font-size:var(--text-base);font-family:var(--font-body);font-weight:600;margin-bottom:var(--space-2)}
.market-item p{font-size:var(--text-sm);color:var(--color-text-muted)}
@media(max-width:900px){.market-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.market-grid{grid-template-columns:1fr}}

/* biblioteca */
.book-card{display:flex;flex-direction:column;transition:transform .5s cubic-bezier(0.16,1,0.3,1),box-shadow .5s ease,border-color .5s ease}
.book-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--color-border)}
.book-cover{position:relative;aspect-ratio:5/7;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-6);padding:var(--space-6);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(155deg,var(--navy) 0%,var(--navy-2) 55%,var(--aqua) 130%);box-shadow:var(--shadow-sm)}
.book-cover::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:rgba(255,255,255,0.18)}
.book-cover--img{padding:0;background:none}
.book-cover--img::before{display:none}
.book-cover img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.book-cover__mark{font-size:var(--text-xs);font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--aqua-pale)}
.book-cover__title{font-family:var(--font-display);font-size:var(--text-lg);line-height:1.2;color:#fff}
.book-cover--soon{background:linear-gradient(155deg,var(--color-surface-2),var(--color-surface-offset));border:1px dashed var(--color-border)}
.book-cover--soon::before{background:var(--color-border)}
.book-cover--soon .book-cover__mark{color:var(--color-text-faint)}
.book-cover--soon .book-cover__title{color:var(--color-text-muted)}
.book-badge{align-self:flex-start;background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--aqua);border-radius:var(--radius-full);padding:0.3rem 0.85rem;font-size:var(--text-xs);font-weight:600;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:var(--space-4)}
.book-card h3{margin-bottom:var(--space-3)}
.book-card p{margin-bottom:var(--space-6)}
.book-card .btn{margin-top:auto}

/* FAQ */
.faq{max-width:var(--content-narrow)}
.faq details{border-bottom:1px solid var(--color-divider);padding:var(--space-5) 0}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);cursor:pointer;font-weight:600;font-size:var(--text-base);list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary .plus{color:var(--aqua);transition:transform .2s;flex-shrink:0}
.faq details[open] summary .plus{transform:rotate(45deg)}
.faq details p{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}

/* contacts */
.contacts{background:var(--color-surface-2)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem)}
.locations{display:grid;gap:var(--space-4)}
.loc{display:flex;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md)}
.loc svg{color:var(--aqua);flex-shrink:0;margin-top:2px}
.loc b{display:block;font-size:var(--text-sm)}
.loc span{font-size:var(--text-sm);color:var(--color-text-muted)}
.contact-direct{display:grid;gap:var(--space-4);align-content:start}
.contact-direct a:not(.btn){display:flex;align-items:center;gap:var(--space-3);text-decoration:none;font-size:var(--text-lg);color:var(--navy);font-weight:500}
[data-theme=dark] .contact-direct a:not(.btn){color:var(--color-text)}
.contact-direct a:not(.btn):hover{color:var(--aqua)}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}}

/* disclaimer band */
.disclaimer{background:var(--color-surface-offset);border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider)}
.disclaimer .wrap{display:flex;gap:var(--space-4);align-items:flex-start;padding-block:var(--space-8)}
.disclaimer svg{color:var(--color-text-faint);flex-shrink:0}
.disclaimer p{font-size:var(--text-sm);color:var(--color-text-muted);max-width:none}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy-deep);color:#c4d2d0;padding-block:var(--space-20) var(--space-10)}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--space-10);padding-bottom:var(--space-12);border-bottom:1px solid rgba(255,255,255,0.1)}
.footer-logo{background:#fffef9;border-radius:var(--radius-lg);padding:var(--space-6);display:inline-block;margin-bottom:var(--space-6)}
.footer-logo img{width:200px}
.site-footer h4{color:#fff;font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:0.12em;margin-bottom:var(--space-5)}
.site-footer ul{list-style:none;display:grid;gap:var(--space-3)}
.site-footer a{color:#a9bdbb;text-decoration:none;font-size:var(--text-sm)}
.site-footer a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding-top:var(--space-8);font-size:var(--text-xs);color:#7f9694}
@media(max-width:820px){.footer-top{grid-template-columns:1fr;gap:var(--space-8)}}

/* ---------- Forms ---------- */
.field{margin-bottom:var(--space-5)}
.field label{display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-2)}
.field .req{color:var(--copper)}
.field input,.field select,.field textarea{
  width:100%;padding:0.85rem 1rem;border:1px solid var(--color-border);
  border-radius:var(--radius-md);background:var(--color-surface);
  font-size:var(--text-base);
}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--aqua);outline:none;box-shadow:0 0 0 3px var(--aqua-pale)}
.field textarea{min-height:120px;resize:vertical}
.field .hint{font-size:var(--text-xs);color:var(--color-text-faint);margin-top:var(--space-2)}
.field-error{color:var(--color-error);font-size:var(--text-xs);margin-top:var(--space-2);display:none}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--color-error)}
.field.invalid .field-error{display:block}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
@media(max-width:560px){.field-row{grid-template-columns:1fr}}

.checkline{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-4)}
.checkline input[type=checkbox]{width:1.15rem;height:1.15rem;margin-top:3px;flex-shrink:0;accent-color:var(--navy)}
.checkline label{font-size:var(--text-sm);font-weight:400;color:var(--color-text-muted);margin:0}

/* option pills (radio/checkbox groups) */
.opts{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.opt{position:relative}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt label{
  display:inline-flex;align-items:center;gap:var(--space-2);
  padding:0.6rem 1.1rem;border:1px solid var(--color-border);
  border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500;
  cursor:pointer;background:var(--color-surface);margin:0;
}
.opt label:hover{border-color:var(--aqua)}
.opt input:checked+label{background:var(--navy);border-color:var(--navy);color:#f8f6f0}
.opt input:focus-visible+label{outline:2px solid var(--color-accent);outline-offset:2px}

/* scale 1-10 */
.scale{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.scale .opt label{width:2.6rem;height:2.6rem;padding:0;justify-content:center;border-radius:var(--radius-md)}

/* ---------- Multi-step wizard ---------- */
.wizard{max-width:720px;margin-inline:auto}
.progress{margin-bottom:var(--space-10)}
.progress-bar{height:4px;background:var(--color-surface-offset);border-radius:var(--radius-full);overflow:hidden}
.progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--navy),var(--aqua));border-radius:var(--radius-full);transition:width .4s cubic-bezier(0.16,1,0.3,1)}
.progress-meta{display:flex;justify-content:space-between;margin-top:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}
.progress-meta b{color:var(--navy)}
[data-theme=dark] .progress-meta b{color:var(--aqua)}

.step-panel{display:none;animation:fade .4s ease;border:0;margin:0;padding:0;min-inline-size:0}
.step-panel.active{display:block}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.step-panel h2{font-size:var(--text-xl);margin-bottom:var(--space-2)}
.step-panel .step-desc{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-8)}

.wizard-nav{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-divider)}

.assessment-card{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
.assessment-card .field{margin-bottom:var(--space-6)}
.assessment-card .field label{font-size:var(--text-sm);font-weight:600;letter-spacing:0.01em}
.assessment-card .field input,
.assessment-card .field select,
.assessment-card .field textarea{
  background:transparent;
  border:0;
  border-bottom:1px solid var(--color-divider);
  border-radius:0;
  padding:0.7rem 0;
  box-shadow:none;
}
.assessment-card .field input:focus,
.assessment-card .field select:focus,
.assessment-card .field textarea:focus{
  border-color:var(--aqua);
  box-shadow:0 1px 0 var(--aqua);
}
.assessment-card .field textarea{min-height:96px}
.assessment-card .opts{gap:var(--space-2)}
.assessment-card .opt label{
  padding:0.48rem 0.85rem;
  border-color:var(--color-divider);
  background:transparent;
  font-size:var(--text-xs);
  font-weight:500;
}
.assessment-card .opt label:hover{background:var(--color-surface-offset)}
.assessment-card .opt input:checked+label{background:var(--navy);border-color:var(--navy);color:#f8f6f0}
.assessment-card .scale .opt label{width:2.25rem;height:2.25rem;border-radius:var(--radius-full)}
.assessment-card .wizard-nav .btn{padding:0.75rem 1.1rem}

/* result / thank-you */
.result-card{max-width:600px;margin-inline:auto;text-align:center;background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-xl);padding:clamp(2rem,5vw,3.5rem);box-shadow:var(--shadow-lg)}
.result-icon{width:4.5rem;height:4.5rem;border-radius:var(--radius-full);background:var(--aqua-pale);color:var(--navy);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6)}
.priority-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:0.5rem 1.2rem;border-radius:var(--radius-full);font-weight:600;font-size:var(--text-sm);margin:var(--space-4) 0}
.priority-alta{background:#f7e6e0;color:#a3453f}
.priority-media{background:#f3ecdb;color:#8a6a2f}
.priority-bassa{background:var(--aqua-pale);color:var(--navy)}
[data-theme=dark] .priority-alta{background:#3a2320;color:#e2a79f}
[data-theme=dark] .priority-media{background:#3a3320;color:#dcc48c}
[data-theme=dark] .priority-bassa{background:#1c3646;color:var(--aqua-soft)}
.score-ring{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--navy)}
[data-theme=dark] .score-ring{color:var(--aqua)}

/* page hero (subpages) */
.page-hero{padding-block:clamp(var(--space-16),8vw,var(--space-24)) var(--space-12);background:var(--color-surface-2);border-bottom:1px solid var(--color-divider)}
.page-hero h1{font-size:var(--text-2xl);letter-spacing:-0.01em}
.page-hero p{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-lg);max-width:52ch}
.page-hero .claim{display:block;font-weight:600;text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--color-accent);font-size:var(--text-sm);margin-bottom:var(--space-4)}

/* auth (area riservata) */
.auth-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:start;max-width:1000px;margin-inline:auto}
.auth-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);background:var(--color-surface-offset);padding:var(--space-1);border-radius:var(--radius-full)}
.auth-tab{flex:1;padding:0.7rem;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted)}
.auth-tab.active{background:var(--color-surface);color:var(--navy);box-shadow:var(--shadow-sm)}
[data-theme=dark] .auth-tab.active{color:var(--aqua)}
.auth-panel{display:none}.auth-panel.active{display:block}
.mvp-note{background:var(--aqua-pale);color:var(--navy);border-radius:var(--radius-md);padding:var(--space-4);font-size:var(--text-sm);margin-bottom:var(--space-6);display:flex;gap:var(--space-3)}
[data-theme=dark] .mvp-note{background:#1c3646;color:var(--aqua-soft)}
.auth-side{background:var(--navy);color:#dbe6e4;border-radius:var(--radius-xl);padding:clamp(1.5rem,4vw,2.5rem)}
.auth-side h3{color:#fff;font-size:var(--text-lg);margin-bottom:var(--space-5)}
.auth-side ul{list-style:none;display:grid;gap:var(--space-4)}
.auth-side li{display:flex;gap:var(--space-3);font-size:var(--text-sm)}
.auth-side svg{color:var(--aqua-soft);flex-shrink:0;margin-top:2px}
@media(max-width:820px){.auth-wrap{grid-template-columns:1fr}.auth-side{order:-1}}

/* dashboard mock */
.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);margin-top:var(--space-8)}
.dash-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-6)}
.dash-card .label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.08em;color:var(--color-text-muted)}
.dash-card .val{font-family:var(--font-display);font-size:var(--text-xl);color:var(--navy);margin-top:var(--space-2)}
[data-theme=dark] .dash-card .val{color:var(--aqua)}
@media(max-width:720px){.dash-grid{grid-template-columns:1fr}}

.privacy-note{background:var(--color-surface);border-top:1px solid var(--color-divider);padding-block:var(--space-12)}
.privacy-note .wrap{max-width:820px}
.privacy-note h2{font-size:var(--text-xl);margin-top:var(--space-3);margin-bottom:var(--space-4)}
.privacy-note p{color:var(--color-text-muted);margin-top:var(--space-3)}
.demo-copy{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface-offset);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-3);margin:var(--space-2) 0 var(--space-4)}

.toast{position:fixed;bottom:var(--space-6);left:50%;transform:translateX(-50%) translateY(6rem);background:var(--navy);color:#fff;padding:var(--space-4) var(--space-6);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);z-index:300;font-size:var(--text-sm);opacity:0;transition:all .35s cubic-bezier(0.16,1,0.3,1)}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(0.16,1,0.3,1)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* ============================================================
   Book landing pages (libro-*.html)
   ============================================================ */
.book-lp .eyebrow{margin-bottom:var(--space-4)}

/* 1. Hero */
.book-hero{padding-block:clamp(var(--space-16),8vw,var(--space-24)) clamp(var(--space-12),6vw,var(--space-20));background:var(--color-surface-2);border-bottom:1px solid var(--color-divider);overflow:hidden}
.book-hero__inner{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.book-hero__cover{display:flex;justify-content:center}
.book-hero__cover img{width:auto;max-height:520px;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transform:perspective(1400px) rotateY(-6deg);transition:transform .6s cubic-bezier(0.16,1,0.3,1)}
.book-hero__cover img:hover{transform:perspective(1400px) rotateY(0deg) translateY(-6px)}
.book-hero__badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--track-eyebrow);color:var(--color-accent);margin-bottom:var(--space-4)}
.book-hero h1{font-size:var(--text-2xl);letter-spacing:-0.01em}
.book-hero__subtitle{margin-top:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg);color:var(--navy)}
[data-theme=dark] .book-hero__subtitle{color:var(--aqua)}
.book-hero__impact{margin-top:var(--space-5);color:var(--color-text-muted);font-size:var(--text-lg);max-width:46ch}
.book-hero__cta{margin-top:var(--space-8);display:flex;flex-wrap:wrap;gap:var(--space-3)}
@media(max-width:860px){.book-hero__inner{grid-template-columns:1fr;text-align:center}.book-hero__cover{order:-1}.book-hero__impact{margin-inline:auto}.book-hero__badge,.book-hero .eyebrow{justify-content:center}.book-hero__cta{justify-content:center}.book-hero__cover img{transform:none}}

/* generic landing section heads centered */
.book-lp .lp-head{max-width:52rem;margin-inline:auto;text-align:center;margin-bottom:clamp(var(--space-10),5vw,var(--space-16))}
.book-lp .lp-head .eyebrow{justify-content:center}
.book-lp .lp-head h2{font-size:var(--text-xl);letter-spacing:-0.01em}
.book-lp .lp-head p{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-lg)}

/* 2. Perché questo libro */
.book-why{background:var(--color-bg)}
.book-why__body{max-width:var(--content-narrow);margin-inline:auto}
.book-why__body p{color:var(--color-text-muted);font-size:var(--text-lg);margin-top:var(--space-5)}
.book-why__body p:first-child{margin-top:0}

/* 3. Cosa scoprirai — icon cards */
.discover-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-6)}
.discover-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-6);box-shadow:var(--shadow-sm)}
.discover-card__icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--radius-full);background:var(--aqua-pale);color:var(--navy);margin-bottom:var(--space-5)}
[data-theme=dark] .discover-card__icon{background:#1c3646;color:var(--aqua-soft)}
.discover-card h3{font-size:var(--text-lg);color:var(--navy)}
[data-theme=dark] .discover-card h3{color:var(--aqua)}
.discover-card p{margin-top:var(--space-3);color:var(--color-text-muted);font-size:var(--text-sm)}

/* 4. Dal libro alla pratica — vertical path */
.path{background:var(--color-surface-2)}
.path__steps{max-width:640px;margin-inline:auto;display:grid;gap:0}
.path__step{position:relative;display:flex;align-items:flex-start;gap:var(--space-5);padding-block:var(--space-5)}
.path__step:not(:last-child)::before{content:"";position:absolute;left:1.5rem;top:3.6rem;bottom:-0.4rem;width:2px;background:linear-gradient(var(--aqua),var(--aqua-pale))}
.path__marker{flex-shrink:0;width:3rem;height:3rem;border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-divider);display:flex;align-items:center;justify-content:center;font-size:1.35rem;box-shadow:var(--shadow-sm);z-index:1}
.path__label{padding-top:0.55rem;font-family:var(--font-display);font-size:var(--text-lg);color:var(--navy)}
[data-theme=dark] .path__label{color:var(--color-text)}
.path__quote{max-width:640px;margin:var(--space-12) auto 0;text-align:center;font-family:var(--font-display);font-size:var(--text-xl);color:var(--navy);line-height:1.3}
[data-theme=dark] .path__quote{color:var(--aqua)}

/* 5. Continua il tuo percorso */
.continue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5)}
.continue-card{display:flex;flex-direction:column;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-6);text-decoration:none;box-shadow:var(--shadow-sm)}
.continue-card:hover{border-color:var(--navy);transform:translateY(-3px);box-shadow:var(--shadow-md)}
[data-theme=dark] .continue-card:hover{border-color:var(--aqua)}
.continue-card h3{font-size:var(--text-base);color:var(--navy)}
[data-theme=dark] .continue-card h3{color:var(--aqua)}
.continue-card p{font-size:var(--text-sm);color:var(--color-text-muted)}
.continue-card__arrow{margin-top:auto;color:var(--color-accent);font-size:var(--text-sm);font-weight:600}
.continue-card--soon{opacity:0.7;pointer-events:none}

/* 6. Recensioni */
.reviews{background:var(--color-bg)}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-6)}
.review-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}
.review-card__stars{color:var(--copper);letter-spacing:0.15em;margin-bottom:var(--space-4)}
.review-card blockquote{font-family:var(--font-display);font-size:var(--text-lg);color:var(--navy);line-height:1.4}
[data-theme=dark] .review-card blockquote{color:var(--color-text)}
.review-card cite{display:block;margin-top:var(--space-5);font-style:normal;font-size:var(--text-sm);color:var(--color-text-muted)}

/* 7. Final CTA panel */
.book-final{background:var(--navy);color:#dbe6e4}
.book-final .wrap{max-width:760px;text-align:center}
.book-final h2{color:#fff;font-size:var(--text-xl)}
.book-final p{margin:var(--space-5) auto 0;color:#a9bdbb;font-size:var(--text-lg)}
.book-final__cta{margin-top:var(--space-8);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}

/* purchase / excerpt info anchors */
.book-info{background:var(--color-surface)}
.book-info .wrap{max-width:var(--content-narrow)}
.book-info__block{background:var(--color-surface-2);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-6)}
.book-info__block h3{font-size:var(--text-lg);color:var(--navy)}
[data-theme=dark] .book-info__block h3{color:var(--aqua)}
.book-info__block p{margin-top:var(--space-3);color:var(--color-text-muted)}
.book-info__block .btn{margin-top:var(--space-5)}

/* 6.5 Estratto (book excerpt) */
.book-excerpt{background:var(--color-bg)}
.book-excerpt .lp-head{margin-bottom:clamp(var(--space-8),4vw,var(--space-12))}
.book-excerpt__subtitle{margin-top:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg);color:var(--navy)}
[data-theme=dark] .book-excerpt__subtitle{color:var(--aqua)}
.book-excerpt__body{max-width:var(--content-narrow);margin-inline:auto}
.book-excerpt__body p{color:var(--color-text-muted);font-size:var(--text-lg);line-height:1.8;margin-top:var(--space-5)}
.book-excerpt__body p:first-child{margin-top:0}
.book-excerpt__lead{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.35;color:var(--navy)!important}
[data-theme=dark] .book-excerpt__lead{color:var(--aqua)!important}
.book-excerpt__quote{margin:clamp(var(--space-8),4vw,var(--space-12)) 0 0;padding-left:var(--space-6);border-left:2px solid var(--color-accent)}
.book-excerpt__quote p{font-family:var(--font-display);font-size:var(--text-lg);line-height:1.4;color:var(--navy);margin-top:var(--space-2)}
[data-theme=dark] .book-excerpt__quote p{color:var(--aqua)}
.book-excerpt__quote p:first-child{margin-top:0}
