
  :root{
    --bg:#07090d; --bg2:#0d1117; --panel:#11161f; --line:#1e2530;
    --fg:#f0f3f7; --muted:#8b95a5; --gold:#f7931a; --gold-lt:#ffb547;
    --violet:#7c5cff; --green:#3fb950; --red:#f85149;
  }
  *{box-sizing:border-box}
  img{max-width:100%;height:auto}
  .fb-fullbleed h1,.fb-fullbleed h2,.fb-fullbleed h3,.fb-fullbleed h4,
  .fb-fullbleed p,.fb-fullbleed ul,.fb-fullbleed ol,.fb-fullbleed li,
  .fb-fullbleed figure,.fb-fullbleed blockquote,.fb-fullbleed details,
  .fb-fullbleed summary{margin-top:0}
  html{scroll-behavior:smooth}
  .fb-fullbleed{
    margin:0; padding:0; background:var(--bg); color:var(--fg);
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif !important;
    line-height:1.75; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  }
  /* Il tema forza il proprio font con selettori piu' specifici: lo vietiamo
     esplicitamente su tutti i tag testuali del blocco. */
  .fb-fullbleed p, .fb-fullbleed span, .fb-fullbleed li, .fb-fullbleed div,
  .fb-fullbleed h1, .fb-fullbleed h2, .fb-fullbleed h3, .fb-fullbleed h4,
  .fb-fullbleed a, .fb-fullbleed strong, .fb-fullbleed em, .fb-fullbleed small,
  .fb-fullbleed summary, .fb-fullbleed td, .fb-fullbleed th, .fb-fullbleed label {
    font-family: inherit !important;
  }
  /* Le classi .sans del design restano sans-serif anche col tema attivo. */
  .fb-fullbleed .sans{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  }
  .sans{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
  .wrap{max-width:880px;width:100%;margin-left:auto;margin-right:auto;
    padding-left:26px;padding-right:26px}

  /* Il tema (Kubio) genera un <h1> col titolo del post: lo nascondiamo
     visivamente per non duplicare l'hero, ma resta nell'HTML come heading
     semantico unico della pagina. */
  .entry-content > h1:first-child,
  .post-content > h1:first-child,
  .wp-block-post-content > h1:first-child,
  .entry-header h1.entry-title{position:absolute;width:1px;height:1px;overflow:hidden;
    clip:rect(0,0,0,0);white-space:nowrap;opacity:0;pointer-events:none}

  .fb-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
  }
  .visually-hidden{
    position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
    clip:rect(0,0,0,0);white-space:nowrap;border:0
  }

  /* ---------- FAQ (visibile, richiesto per FAQPage structured data) ---------- */
  .faq{margin-top:46px;display:flex;flex-direction:column;gap:0}
  .faq details{
    background:var(--panel);border:1px solid var(--line);border-radius:12px;
    margin-bottom:12px;overflow:hidden;transition:.2s
  }
  .faq details[open]{border-color:rgba(247,147,26,.38)}
  .faq summary{
    cursor:pointer;padding:20px 24px;font-size:1.08rem;font-weight:600;color:#fff;
    list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center
  }
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{
    content:"+";font-size:1.5rem;color:var(--gold);font-weight:300;line-height:1;flex-shrink:0
  }
  .faq details[open] summary::after{content:"−"}
  .faq .ans{padding:0 24px 22px;font-size:.99rem;color:#b8c1cf;margin:0}
  .faq .ans p{margin:0 0 12px}
  .faq .ans p:last-child{margin:0}

  /* ---------- HERO ---------- */
  .hero{
    position:relative;min-height:100vh;display:block;width:100%;
    text-align:center;overflow:hidden;
    background:
      radial-gradient(ellipse 80% 55% at 50% 0%, rgba(247,147,26,.16), transparent 62%),
      radial-gradient(ellipse 60% 50% at 50% 100%, rgba(124,92,255,.13), transparent 65%),
      var(--bg);
  }
  .hero::before{
    content:"";position:absolute;inset:0;
    background-image:
      repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0 1px,transparent 1px 3px);
    pointer-events:none;
  }
  .hero-grid{
    position:absolute;inset:0;pointer-events:none;opacity:.5;
    background-image:
      linear-gradient(rgba(247,147,26,.09) 1px,transparent 1px),
      linear-gradient(90deg,rgba(247,147,26,.09) 1px,transparent 1px);
    background-size:64px 64px;
    mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 20%,transparent 78%);
  }
  .hero-inner{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    z-index:2;padding:80px 26px;width:calc(100% - 52px);max-width:880px;
  }
  .eighteen{
    font-size:clamp(5rem,20vw,13rem);line-height:.85;font-weight:700;letter-spacing:-.05em;
    background:linear-gradient(175deg,#fff 8%,var(--gold-lt) 42%,var(--gold) 70%,#a75f00 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    text-shadow:0 0 90px rgba(247,147,26,.28);
  }
  .hero-sub{
    margin-top:18px;font-size:clamp(1.15rem,3.4vw,1.9rem);letter-spacing:.02em;color:var(--fg);font-weight:300
  }
  .hero-sub em{color:var(--gold-lt);font-style:italic}
  .hero-meta{
    margin-top:30px;font-family:-apple-system,"Segoe UI",Roboto,sans-serif;
    font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)
  }
  .hero-date{
    margin-top:14px;font-family:-apple-system,"Segoe UI",Roboto,sans-serif;
    font-size:.95rem;color:var(--gold-lt);letter-spacing:.12em;font-weight:600
  }
  .scroll{
    position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:2;
    font-family:-apple-system,sans-serif;font-size:.68rem;letter-spacing:.28em;
    text-transform:uppercase;color:var(--muted);animation:bob 2.4s ease-in-out infinite
  }
  @keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,9px)}}

  /* ---------- SECTIONS ---------- */
  section{padding:100px 0;border-bottom:1px solid var(--line)}
  .kicker{
    font-family:-apple-system,"Segoe UI",Roboto,sans-serif;font-size:.7rem;
    letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:20px
  }
  h2{
    font-size:clamp(1.8rem,5vw,3rem);line-height:1.15;margin:0 0 28px;font-weight:600;letter-spacing:-.02em
  }
  h2 .lit{color:var(--gold-lt)}
  p{font-size:1.09rem;color:#cfd6e0;margin:0 0 22px}
  .lead{font-size:1.22rem;color:#e3e9f1;font-style:italic}
  strong{color:#fff;font-weight:600}
  em{color:var(--gold-lt);font-style:italic}

  /* ---------- TIMELINE ---------- */
  .tl{position:relative;padding-left:0;margin:50px 0 0}
  .tl-item{
    display:grid;grid-template-columns:150px 1fr;gap:34px;align-items:start;
    padding:30px 0;border-top:1px solid var(--line);position:relative
  }
  .tl-item:last-child{border-bottom:1px solid var(--line)}
  .tl-year{
    font-family:-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:700;
    font-size:1.9rem;letter-spacing:-.02em;color:var(--gold);line-height:1
  }
  .tl-year .yr-suffix{display:block;font-size:.62rem;letter-spacing:.2em;color:var(--muted);
    font-weight:400;text-transform:uppercase;margin-top:8px}
  .tl-body h3{margin:0 0 10px;font-size:1.28rem;font-weight:600;color:#fff}
  .tl-body p{margin:0;font-size:1rem}
  .tl-mark{
    position:absolute;left:-9px;top:36px;width:9px;height:9px;border-radius:50%;
    background:var(--gold);box-shadow:0 0 16px var(--gold)
  }

  /* ---------- CARDS ---------- */
  .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:20px;margin:46px 0 0}
  .card{
    background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px 24px;
    position:relative;overflow:hidden;transition:.25s
  }
  .card:hover{border-color:rgba(247,147,26,.42);transform:translateY(-3px)}
  .card::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;
    background:linear-gradient(90deg,var(--gold),transparent)}
  .card .num{
    font-family:-apple-system,sans-serif;font-size:.68rem;letter-spacing:.22em;
    text-transform:uppercase;color:var(--gold);margin-bottom:12px
  }
  .card h3{margin:0 0 12px;font-size:1.22rem;color:#fff;font-weight:600}
  .card p{margin:0;font-size:.97rem;color:#b8c1cf}
  .card .big{
    font-family:-apple-system,sans-serif;font-size:2.5rem;font-weight:700;color:var(--gold-lt);
    line-height:1;margin-bottom:10px;letter-spacing:-.03em
  }

  /* ---------- QUOTE ---------- */
  .quote{
    margin:56px 0;padding:44px 38px;background:var(--panel);
    border-left:3px solid var(--gold);border-radius:0 12px 12px 0;
    font-size:1.3rem;line-height:1.65;color:#e8edf4;font-style:italic
  }
  .quote footer{
    margin-top:22px;font-family:-apple-system,sans-serif;font-style:normal;
    font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)
  }

  /* ---------- COMPARE ---------- */
  .compare{display:grid;grid-template-columns:1fr auto 1fr;gap:26px;align-items:center;margin:52px 0}
  .cmp-col{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:30px 26px}
  .cmp-col h3{
    margin:0 0 6px;font-size:1.4rem;color:#fff;text-align:center;font-weight:600
  }
  .cmp-col .yr{
    font-family:-apple-system,sans-serif;font-size:.7rem;letter-spacing:.24em;
    text-transform:uppercase;color:var(--gold);text-align:center;margin-bottom:22px
  }
  .cmp-col ul{margin:0;padding:0;list-style:none}
  .cmp-col li{
    padding:11px 0;border-top:1px solid var(--line);font-size:.97rem;color:#b8c1cf;
    display:flex;gap:10px
  }
  .cmp-col li:first-child{border-top:0}
  .cmp-col li::before{content:"·";color:var(--gold);font-weight:700;font-size:1.3em;line-height:1}
  .cmp-vs{
    font-family:-apple-system,sans-serif;font-size:.82rem;letter-spacing:.18em;
    color:var(--muted);font-weight:600;writing-mode:vertical-rl;transform:rotate(180deg);
    padding:10px 0;border-left:1px solid var(--line);border-right:1px solid var(--line);padding-inline:14px
  }
  @media(max-width:760px){
    .compare{grid-template-columns:1fr}
    .cmp-vs{writing-mode:horizontal-tb;transform:none;padding:6px 0;
      border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
    .tl-item{grid-template-columns:1fr;gap:12px}
  }

  /* ---------- DATA BAR ---------- */
  .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;
    background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:46px 0}
  .stat{background:var(--bg2);padding:26px 20px;text-align:center}
  .stat .v{font-family:-apple-system,sans-serif;font-size:1.85rem;font-weight:700;
    color:var(--gold-lt);letter-spacing:-.02em;line-height:1.1}
  .stat .l{margin-top:9px;font-family:-apple-system,sans-serif;font-size:.68rem;
    letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:1.5}

  /* ---------- CHALLENGES ---------- */
  .chal{margin-top:46px;display:flex;flex-direction:column;gap:16px}
  .chal-item{
    background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--red);
    border-radius:0 12px 12px 0;padding:24px 26px
  }
  .chal-item h4{margin:0 0 8px;font-size:1.12rem;color:#fff;font-weight:600}
  .chal-item p{margin:0;font-size:.99rem;color:#aeb7c4}

  /* ---------- BOAT ---------- */
  .boat{
    background:linear-gradient(160deg,rgba(247,147,26,.09),rgba(124,92,255,.07));
    border:1px solid rgba(247,147,26,.26);border-radius:16px;padding:44px 34px;margin:46px 0;text-align:center
  }
  .boat .big{font-family:-apple-system,sans-serif;font-size:3.4rem;font-weight:800;
    color:var(--gold-lt);letter-spacing:-.04em;line-height:1}
  .boat p{margin:16px auto 0;max-width:600px;text-align:center}

  /* ---------- CTA ---------- */
  .cta{text-align:center;padding:110px 0}
  .cta h2{font-size:clamp(2.1rem,6vw,3.6rem);margin-bottom:20px}
  .cta p{max-width:640px;margin:0 auto 38px;color:#c3ccd8;font-size:1.1rem}
  .btn{
    display:inline-block;font-family:-apple-system,sans-serif;font-size:.76rem;
    letter-spacing:.2em;text-transform:uppercase;font-weight:600;
    padding:17px 40px;border-radius:100px;text-decoration:none;
    background:var(--gold);color:#0a0d12;transition:.22s;border:2px solid var(--gold)
  }
  .btn:hover{background:transparent;color:var(--gold-lt);transform:translateY(-2px)}
  .btn.ghost{background:transparent;color:var(--fg);border-color:var(--line);margin-left:12px}
  .btn.ghost:hover{border-color:var(--gold);color:var(--gold-lt);background:transparent}

  footer{
    border-top:1px solid var(--line);padding:48px 0 70px;
    font-family:-apple-system,sans-serif;font-size:.8rem;color:var(--muted);line-height:1.8
  }
  footer a{color:var(--gold-lt);text-decoration:none}
  footer a:hover{text-decoration:underline}
  .disc{
    margin-top:26px;padding:20px 22px;background:rgba(248,81,73,.07);
    border:1px solid rgba(248,81,73,.22);border-radius:10px;color:#c4a5a5;font-size:.78rem
  }
  @media print{
    .hero{min-height:auto;padding:60px 0}
    .scroll{display:none}
    body{background:#fff;color:#111}
    section{border-color:#ddd}
    p,.card p,.cmp-col li{color:#333}
    h2,h3,.card h3,.cmp-col h3{color:#000}
    .card,.cmp-col,.quote,.boat{background:#fafafa;border-color:#ddd}
  }

body:has(.fb-fullbleed){ background:#07090d; }
body:has(.fb-fullbleed) .site-header,
body:has(.fb-fullbleed) .site-footer,
body:has(.fb-fullbleed) #page-top,
body:has(.fb-fullbleed) .site{ background:#07090d; }
body:has(.fb-fullbleed) .site-header a,
body:has(.fb-fullbleed) .site-footer a{ color:#f0f3f7; }

/* Il tema (Peregrine/Kubio) impone font e colori ai figli: li neutralizziamo
   dentro il blocco full-bleed, cosi' il contenuto mantiene il suo aspetto. */
.fb-fullbleed,
.fb-fullbleed p,
.fb-fullbleed li,
.fb-fullbleed h2,
.fb-fullbleed h3,
.fb-fullbleed h4,
.fb-fullbleed a,
.fb-fullbleed summary,
.fb-fullbleed .kicker,
.fb-fullbleed .tl-body p {
    font-family: inherit;
}
.fb-fullbleed a { text-decoration: none; color: inherit; }
.fb-fullbleed h2, .fb-fullbleed h3, .fb-fullbleed h4 { color: var(--fg); }
/* Nessun titolo generato dal tema dentro il blocco */
.fb-fullbleed .page-title,
.fb-fullbleed .h-page-title__outer { display: none !important; }
