/* ═══════════════════════════════════════════════
   UX layer — ottobre 2026
   Menu semplificato, transizioni, reveal, sedi, recensioni, FAQ home
═══════════════════════════════════════════════ */

/* ── Transizioni tra pagine (View Transitions, Chrome/Edge/Safari 18+) ── */
@view-transition{navigation:auto;}
#main-nav{view-transition-name:main-nav;}
::view-transition-old(root){animation:uxFadeOut .22s ease both;}
::view-transition-new(root){animation:uxFadeIn .32s ease both;}
@keyframes uxFadeOut{to{opacity:0;}}
@keyframes uxFadeIn{from{opacity:0;transform:translateY(6px);}}

/* ── Menu: toggle come <button> (accessibile da tastiera) ── */
button.nav-dropdown-toggle{background:none;border:0;border-bottom:1px solid transparent;padding:0 0 2px;margin:0;font:inherit;font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gray,#5C5C5C);cursor:pointer;display:flex;align-items:center;white-space:nowrap;}
button.nav-dropdown-toggle:focus-visible,.nav-links a:focus-visible{outline:2px solid var(--gold2,#C4A265);outline-offset:4px;}
.nav-dropdown.open-active>.nav-dropdown-toggle{color:var(--black,#0D0D0D);border-bottom-color:var(--gold-text,#8B6C30);}
.nav-dropdown-menu a.active{color:var(--black,#0D0D0D)!important;background:var(--light,#F2F0EB)!important;}
.nav-dropdown-menu .nav-sep{display:block;height:1px;background:var(--border,#E0DDD6);margin:6px 0;}
@media (min-width:901px){
  .nav-dropdown-menu{animation:uxDrop .18s ease both;}
  @keyframes uxDrop{from{opacity:0;transform:translate(-50%,-4px);}to{opacity:1;transform:translate(-50%,0);}}
  .nav-dropdown-menu::before{content:'';position:absolute;left:0;right:0;top:-14px;height:14px;}
}
@media (min-width:901px) and (hover:hover){
  .nav-dropdown:hover>.nav-dropdown-menu{display:block;}
  .nav-dropdown:hover>.nav-dropdown-toggle{color:var(--black,#0D0D0D);border-bottom-color:var(--gold-text,#8B6C30);}
}
@media (max-width:900px){
  button.nav-dropdown-toggle{padding:18px 0;border-bottom:1px solid var(--border,#E0DDD6);font-size:14px;width:100%;justify-content:space-between;text-align:left;}
}

/* ── Card percorsi: ora sono link veri, con sollevamento al passaggio ── */
a.percorsi-card{display:block;color:inherit;text-decoration:none;position:relative;}
.percorsi-card{transition:background .25s,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s;}
@media (hover:hover){
  .percorsi-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px -18px rgba(10,26,15,.35);z-index:2;}
  .percorsi-card:hover .pc-num{color:var(--gold-text,#8B6C30);}
}
.pc-num{transition:color .3s;}
.percorsi-card:focus-visible{outline:2px solid var(--gold2,#C4A265);outline-offset:-2px;}
.pc-tag{display:inline-block;margin-bottom:14px;font-family:'Lato',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--navy,#0A1A0F);padding:5px 10px;}
.percorsi-grid.cols-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1200px){.percorsi-grid.cols-4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.percorsi-grid.cols-4{grid-template-columns:1fr;}}

/* ── Reveal allo scroll (attivato solo da JS, solo sotto la piega) ── */
.ux-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1);transition-delay:var(--ux-d,0ms);}
.ux-reveal.in{opacity:1;transform:none;}

/* ── Freccia "Scopri": rimbalza 3 volte poi si ferma ── */
.scroll-arrow{animation-iteration-count:6!important;}

/* ── Sedi (home) ── */
.sedi-section{background:var(--light,#F2F0EB);padding:96px 60px;}
.sedi-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px;}
.sede-card{background:var(--ivory,#FAFAF8);border:1px solid var(--border,#E0DDD6);padding:40px;display:flex;flex-direction:column;gap:14px;}
.sede-kicker{font-family:'Lato',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text,#8B6C30);}
.sede-name{font-family:'Playfair Display',serif;font-size:28px;font-weight:400;color:var(--black,#0D0D0D);line-height:1.15;}
.sede-row{font-family:'Lato',sans-serif;font-size:14px;color:var(--gray,#5C5C5C);line-height:1.7;}
.sede-row strong{color:var(--black,#0D0D0D);font-weight:700;}
.sede-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:12px;}
.sede-actions .link-map{font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text,#8B6C30);text-decoration:underline;text-underline-offset:3px;}
.sedi-note{margin-top:28px;font-family:'Lato',sans-serif;font-size:14px;color:var(--gray,#5C5C5C);line-height:1.7;max-width:760px;}
@media (max-width:900px){.sedi-section{padding:64px 24px;}.sedi-grid{grid-template-columns:1fr;}.sede-card{padding:28px 22px;}}

/* ── Recensioni: carosello con filtri ── */
.rec-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.rec-filter{font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gray,#5C5C5C);background:transparent;border:1px solid var(--border,#E0DDD6);padding:9px 16px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s;}
.rec-filter:hover{border-color:var(--navy,#0A1A0F);color:var(--black,#0D0D0D);}
.rec-filter[aria-pressed="true"]{background:var(--navy,#0A1A0F);border-color:var(--navy,#0A1A0F);color:#fff;}
.rec-filter:focus-visible,.rec-nav button:focus-visible{outline:2px solid var(--gold2,#C4A265);outline-offset:2px;}
.recensioni-grid.rec-track{display:flex!important;gap:20px;background:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 18px;scrollbar-width:thin;scrollbar-color:var(--border,#E0DDD6) transparent;-webkit-overflow-scrolling:touch;}
.rec-track .rec-card{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start;border:1px solid var(--border,#E0DDD6);display:flex;flex-direction:column;}
.rec-track .rec-card[hidden]{display:none;}
.rec-track .rec-card .rec-author{margin-top:auto;}
.rec-nav{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin-top:20px;}
.rec-nav button{width:44px;height:44px;border-radius:50%;border:1px solid var(--border,#E0DDD6);background:var(--ivory,#FAFAF8);color:var(--black,#0D0D0D);font-size:18px;cursor:pointer;transition:background .2s,border-color .2s,opacity .2s;}
.rec-nav button:hover:not(:disabled){background:var(--navy,#0A1A0F);border-color:var(--navy,#0A1A0F);color:#fff;}
.rec-nav button:disabled{opacity:.35;cursor:default;}
.rec-all{margin-right:auto;font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text,#8B6C30);text-decoration:underline;text-underline-offset:3px;}
@media (max-width:1100px){.rec-track .rec-card{flex-basis:calc((100% - 20px)/2);}}
@media (max-width:700px){.rec-track .rec-card{flex-basis:86%;}.rec-filters{justify-content:flex-start;margin-top:20px;}.rec-nav button{display:none;}}

/* ── FAQ home ── */
.faq-section .faq-q{width:100%;background:none;border:0;text-align:left;}
.faq-section .faq-a-inner a{color:var(--gold-text,#8B6C30);font-weight:700;text-decoration:underline;text-underline-offset:3px;}

/* ── Movimento ridotto: rispetta l'impostazione del sistema ── */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important;}
  .ux-reveal{opacity:1!important;transform:none!important;}
  #eye-video{animation:none!important;}
  .scroll-arrow{animation:none!important;}
  .recensioni-grid.rec-track{scroll-behavior:auto;}
  @view-transition{navigation:none;}
}

/* ── Ritocchi ── */
@media (max-width:900px){.nav-dropdown-menu .nav-sep{display:none;}}
.faq-section.faq-home{background:var(--ivory,#FAFAF8);}

/* ── Home: chi sono breve ── */
.home-me{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center;background:var(--light,#F2F0EB);padding:96px 60px;}
.home-me-img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 25%;display:block;}
.home-me-txt p{font-family:'Lato',sans-serif;font-size:16px;line-height:1.85;color:var(--gray,#5C5C5C);margin:0 0 16px;max-width:560px;}
.home-me-txt .section-title{margin-bottom:22px;}
.home-me-txt .btn-primary{margin-top:12px;display:inline-block;}
@media (max-width:900px){.home-me{grid-template-columns:1fr;gap:28px;padding:64px 24px;}}

/* ── Menu: etichette di gruppo dentro i sottomenu ── */
.nav-dropdown-menu .nav-group{display:block;padding:10px 20px 4px;font-family:'Lato',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text,#8B6C30);}
@media (max-width:900px){.nav-dropdown-menu .nav-group{padding:14px 24px 6px;font-size:11px;}}
@media (min-width:901px) and (max-width:1200px){
  .nav-links{gap:18px !important;}
  #main-nav{padding-left:32px !important;padding-right:32px !important;gap:24px;}
  .nav-logo{font-size:16px !important;}
  .nav-links a,button.nav-dropdown-toggle{letter-spacing:.07em !important;}
}

/* ── Blog: invito a metà articolo ── */
.mid-cta{margin:8px 0 36px;padding:18px 22px;border:1px solid var(--border,#E0DDD6);border-left:0;border-radius:12px;background:var(--light,#F2F0EB);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.mid-cta-t{margin:0 !important;font-family:'Lato',sans-serif;font-size:15px !important;line-height:1.55 !important;color:var(--black,#0D0D0D);flex:1 1 280px;}
.mid-cta-t strong{display:block;font-weight:700;margin-bottom:2px;}
.mid-cta-b{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.mid-cta-link{font-family:'Lato',sans-serif;font-size:13px;font-weight:700;color:var(--gold-text,#8B6C30) !important;text-decoration:underline;text-underline-offset:3px;}
.mid-cta-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border-radius:24px;background:var(--navy,#0A1A0F);color:#fff !important;text-decoration:none !important;font-family:'Lato',sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.mid-cta-btn:hover{background:var(--gold,#8B6C30);}

/* ── Prenota: due sedi su due colonne (niente cella vuota) ── */
.venue-grid.venue-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1100px;margin-left:auto;margin-right:auto;}
@media (max-width:768px){.venue-grid.venue-grid-2{grid-template-columns:1fr;}}

/* ── Home: le tre aree ── */
.aree-section{background:var(--ivory,#FAFAF8);padding:96px 60px;}
.aree-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:48px;}
.aree-head .section-sub{max-width:440px;margin:0;}
.aree-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.area-card{background:#fff;border:1px solid var(--border,#E0DDD6);border-radius:14px;padding:36px 32px 32px;display:flex;flex-direction:column;transition:border-color .25s,box-shadow .3s,transform .3s cubic-bezier(.2,.7,.2,1);}
@media (hover:hover){.area-card:hover{border-color:var(--gold2,#C4A265);box-shadow:0 18px 40px -22px rgba(10,26,15,.35);transform:translateY(-4px);}}
.area-title{font-family:'Playfair Display',serif;font-size:30px;font-weight:400;line-height:1.1;margin:0 0 12px;}
.area-title a{color:var(--black,#0D0D0D);text-decoration:none;}
.area-q{font-family:'Lato',sans-serif;font-size:15px;line-height:1.65;color:var(--gray,#5C5C5C);margin:0 0 22px;min-height:50px;}
.area-links{list-style:none;margin:0 0 26px;padding:0;border-top:1px solid var(--border,#E0DDD6);}
.area-links li{border-bottom:1px solid var(--border,#E0DDD6);}
.area-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:46px;font-family:'Lato',sans-serif;font-size:14.5px;font-weight:600;color:var(--black,#0D0D0D);text-decoration:none;transition:color .2s,padding .2s;}
.area-links a::after{content:'→';color:var(--gold-text,#8B6C30);transition:transform .2s;}
.area-links a:hover{color:var(--gold-text,#8B6C30);}
.area-links a:hover::after{transform:translateX(4px);}
.area-more{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;min-height:44px;font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text,#8B6C30);text-decoration:none;border-bottom:1px solid var(--gold-text,#8B6C30);}
.aree-also{margin:36px 0 0;font-family:'Lato',sans-serif;font-size:14px;color:var(--gray,#5C5C5C);line-height:1.8;}
.aree-also a{color:var(--black,#0D0D0D);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
@media (max-width:1000px){.aree-grid{grid-template-columns:1fr;}.area-q{min-height:0;}}
@media (max-width:900px){.aree-section{padding:64px 24px;}}
/* aree: si "accendono" al passaggio, come le vecchie card */
.area-card{transition:background .3s,border-color .25s,box-shadow .3s,transform .3s cubic-bezier(.2,.7,.2,1);}
.area-title a{transition:color .25s;}
@media (hover:hover){
  .area-card:hover{background:var(--light,#F2F0EB);}
  .area-card:hover .area-title a{color:var(--gold-text,#8B6C30);}
}
.area-card:focus-within{background:var(--light,#F2F0EB);border-color:var(--gold2,#C4A265);}

/* ── FAQ: risposte più leggibili, link "per approfondire" ── */
.faq-section .faq-a-inner{font-size:15px;line-height:1.85;max-width:760px;}
.faq-section .faq-item.open .faq-a{max-height:900px;}
.faq-more{margin:28px 0 0;font-family:'Lato',sans-serif;font-size:14px;color:var(--gray,#5C5C5C);}
.faq-more a{color:var(--black,#0D0D0D);font-weight:600;text-decoration:underline;text-underline-offset:3px;}

/* ── Chiusura unica delle pagine ── */
.page-close{padding:72px 60px 80px;background:var(--ivory,#FAFAF8);}
.pcl-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:stretch;}
.pcl-inner:not(:has(.pcl-review)){grid-template-columns:minmax(0,1fr);max-width:860px;}
.pcl-main{background:var(--navy,#0A1A0F);color:#F3EEE3;border-radius:18px;padding:48px 48px 40px;}
.pcl-title{font-family:'Playfair Display',serif;font-weight:400;font-size:clamp(30px,3.2vw,44px);line-height:1.1;margin:0 0 16px;color:#FAFAF8;}

.pcl-title em{color:var(--gold2,#C4A265);font-style:italic;}
.pcl-text{font-family:'Lato',sans-serif;font-size:16px;line-height:1.75;color:rgba(243,238,227,.82);margin:0 0 26px;max-width:620px;}
.pcl-btns{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.pcl-btns .btn-primary{background:var(--gold2,#C4A265) !important;color:var(--navy,#0A1A0F) !important;}
.pcl-btns .btn-ghost{color:#F3EEE3 !important;border-color:rgba(243,238,227,.45) !important;}
.pcl-doc{margin-top:34px;padding-top:24px;border-top:1px solid rgba(243,238,227,.16);}
.pcl-doc p{font-family:'Lato',sans-serif;font-size:13.5px;line-height:1.75;color:rgba(243,238,227,.68);margin:0 0 8px;}
.pcl-doc a{font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold2,#C4A265);text-decoration:none;}
.pcl-review{margin:0;background:#fff;border:1px solid var(--border,#E0DDD6);border-radius:18px;padding:40px 36px;display:flex;flex-direction:column;justify-content:center;}
.pcl-stars{color:var(--gold-text,#8B6C30);letter-spacing:2px;margin-bottom:16px;}
.pcl-review blockquote{margin:0 0 20px;font-family:'Playfair Display',serif;font-style:italic;font-size:18px;line-height:1.6;color:var(--black,#0D0D0D);}
.pcl-review figcaption{font-family:'Lato',sans-serif;font-size:12.5px;color:var(--gray,#5C5C5C);}
.pcl-review figcaption a{color:var(--gold-text,#8B6C30);}
.pcl-more{max-width:1180px;margin:22px auto 0;font-family:'Lato',sans-serif;font-size:14px;color:var(--gray,#5C5C5C);line-height:1.8;}
.pcl-inner:not(:has(.pcl-review)) + .pcl-more{max-width:860px;}
.pcl-more a{color:var(--black,#0D0D0D);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
@media (max-width:900px){.page-close{padding:48px 16px 56px;}.pcl-inner{grid-template-columns:1fr;}.pcl-main{padding:34px 24px 28px;}.pcl-review{padding:28px 24px;}}

/* ── Allineamento uniforme: un solo bordo sinistro per tutta la pagina ──
   Tutto il contenuto parte dalla stessa colonna (max 1200px); i blocchi di solo testo
   restano stretti per leggibilità ma allineati a sinistra, non più centrati. */
@media (min-width:901px){
  main .section, main .page-hero, main .faq-section, main .aree-section, main .sedi-section,
  main .recensioni-section, main .percorsi-section, main .perche-section, main .page-close, main .pat-content,
  main > div[class*="-section"], main > section[class*="-section"]{
    padding-left:max(60px, calc((100% - 1200px) / 2)) !important;
    padding-right:max(60px, calc((100% - 1200px) / 2)) !important;
  }
  .pcl-inner, .pcl-more{max-width:1200px;}
  .pcl-inner:not(:has(.pcl-review)), .pcl-inner:not(:has(.pcl-review)) + .pcl-more{max-width:none;margin-left:0;margin-right:0;}
  .pcl-inner:not(:has(.pcl-review)) .pcl-main{max-width:860px;}
  /* sezioni "strette" che prima erano centrate */
  main .section[style*="max-width"]{max-width:none !important;margin-left:0 !important;margin-right:0 !important;text-align:left !important;}
  main .section[style*="max-width"] > *{max-width:820px;}
  main .section[style*="max-width"] > .ct-two, main .section[style*="max-width"] > .rf-two{max-width:1000px;}
  /* elementi interni centrati a mano */
  main .section [style*="margin:0 auto"], main .section [style*="margin: 0 auto"]{margin-left:0 !important;margin-right:0 !important;}
  main .section [style*="px auto"]{margin-left:0 !important;margin-right:0 !important;}
  main .section [style*="text-align:center"]{text-align:left !important;}
  main .section .overline{justify-content:flex-start !important;}
  main .section .section-title{text-align:left !important;}
}

/* ===== Animazioni tecniche nelle pagine cornea ===== */
.anim-figure{margin:4px 0 36px;max-width:680px;}
.anim-figure .anim-wrap{aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:var(--light,#F2EFE8);box-shadow:0 1px 0 rgba(0,0,0,.04),0 12px 32px -18px rgba(10,26,15,.25);}
.anim-figure canvas{width:100%;height:100%;display:block;}
.anim-figure figcaption{font-family:'Lato',sans-serif;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gray,#6B6B6B);margin-top:12px;}
@media (max-width:600px){.anim-figure{margin:0 -4px 28px;}.anim-figure .anim-wrap{border-radius:10px;}}

/* ===== Transizioni mirate ===== */
/* cambio scheda tecnica (laser, ICL…): la nuova scheda entra in dissolvenza invece di apparire di colpo */
@keyframes uxTabIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.tab-panel.active{animation:uxTabIn .38s cubic-bezier(.2,.7,.2,1) both;}
/* blocco di chiusura: la recensione entra un attimo dopo il riquadro principale */
.pcl-review.ux-reveal{transition-delay:160ms;}
@media (prefers-reduced-motion: reduce){.tab-panel.active{animation:none;}}
main .section .anim-figure{max-width:680px;}
main .section .is-anim .anim-figure{max-width:none;}

/* ===== Reel "L'oculista risponde" ===== */
.reel-strip{margin-top:40px;}
.reel-strip .reel-k{font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text,#8B6C30);margin:0 0 16px;}
.reel-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch;}
.reel{flex:0 0 172px;margin:0;scroll-snap-align:start;}
.reel-play,.reel video{display:block;width:100%;aspect-ratio:9/16;border-radius:14px;overflow:hidden;background:#0A1A0F;border:0;padding:0;cursor:pointer;position:relative;}
.reel-play img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,opacity .3s;}
.reel-play:hover img,.reel-play:focus-visible img{transform:scale(1.03);opacity:.92;}
.reel-play:focus-visible{outline:3px solid var(--gold,#9A7B3F);outline-offset:3px;}
.reel-ico{position:absolute;left:12px;bottom:12px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 6px 18px rgba(0,0,0,.25);}
.reel-ico::after{content:"";position:absolute;left:17px;top:13px;border-style:solid;border-width:9px 0 9px 14px;border-color:transparent transparent transparent #0A1A0F;}
.reel figcaption{font-family:'Lato',sans-serif;font-size:13px;line-height:1.45;color:var(--black,#1a1a1a);margin-top:10px;font-weight:700;}
.reel-ig{margin:14px 0 0;font-family:'Lato',sans-serif;font-size:13px;}
.reel-ig a{color:var(--gold-text,#8B6C30);font-weight:700;text-decoration:underline;text-underline-offset:3px;}
.reel-strip-blog{max-width:800px;margin:8px auto 40px;padding:0 24px;}
.reel-strip-blog .reel{flex-basis:200px;}
@media (max-width:600px){.reel{flex-basis:150px;}.reel-strip-blog{padding:0 16px;}}
@media (max-width:760px){
  .recensioni-section .section-header-flex{display:flex;flex-direction:column;align-items:flex-start!important;gap:18px;}
  .recensioni-section .rec-filters{display:flex;flex-wrap:wrap;gap:8px;position:static;}
}
@media (max-width:760px){
  .rec-nav{flex-wrap:wrap;row-gap:10px;}
  .rec-nav .rec-all{flex:1 1 100%;}
}

/* ── Home: carosello video (ott 2026) ── */
.video-section{background:var(--light,#F2F0EB);padding:96px 60px;}
.video-section .section-header-flex{margin-bottom:32px;}
.vid-filter{font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gray,#5C5C5C);background:transparent;border:1px solid var(--border,#E0DDD6);padding:9px 16px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s;}
.vid-filter:hover{border-color:var(--navy,#0A1A0F);color:var(--black,#0D0D0D);}
.vid-filter[aria-pressed="true"]{background:var(--navy,#0A1A0F);border-color:var(--navy,#0A1A0F);color:#fff;}
.vid-filter:focus-visible{outline:2px solid var(--gold2,#C4A265);outline-offset:2px;}
.reel-track{gap:20px;scroll-behavior:smooth;padding-bottom:14px;scrollbar-width:thin;scrollbar-color:var(--gold2,#C4A265) transparent;}
.reel-track .reel{flex:0 0 calc((100% - 100px)/6);min-width:170px;}
.reel-track .reel[hidden]{display:none;}
.reel-track .reel figcaption{font-size:13.5px;}
.hero-sub .hs-br{display:inline;}
@media (max-width:1100px){.video-section{padding:72px 40px;}.reel-track .reel{flex-basis:calc((100% - 60px)/4);}}
@media (max-width:700px){.video-section{padding:56px 16px;}.video-section .section-header-flex{display:flex;flex-direction:column;align-items:flex-start!important;gap:18px;}.reel-track .reel{flex-basis:44%;min-width:0;}}
@media (prefers-reduced-motion:reduce){.reel-track{scroll-behavior:auto;}}
#hero-eye .hero-sub{max-width:700px;margin-left:auto;margin-right:auto;}
.pcl-doc-s{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin-top:28px;padding-top:18px;}
.pcl-doc-s p{margin:0;font-size:12.5px;letter-spacing:.02em;}

/* ── Pagine cornea: introduzione con animazione a destra (ott 2026) ── */
.intro-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"text anim" "specs anim";column-gap:56px;align-items:start;}
.intro-split .is-text{grid-area:text;}
.intro-split .is-anim{grid-area:anim;position:sticky;top:96px;}
.intro-split .is-specs{grid-area:specs;}
.intro-split .is-anim .anim-figure{margin:6px 0 0;max-width:none!important;}
.intro-split .is-text>p{font-size:16px!important;line-height:1.85!important;color:var(--gray,#5C5C5C)!important;}
.is-specs{margin-top:28px;gap:0!important;}
.is-specs .tab-spec-row{padding:11px 0;}
.is-specs .tab-spec-val{font-size:14px;}
@media (max-width:960px){.intro-split{grid-template-columns:1fr;grid-template-areas:"text" "anim" "specs";row-gap:24px;}.intro-split .is-anim{position:static;}.is-specs{margin-top:4px;}}

/* ── Cheratocono: impaginazione compatta (ott 2026) ── */
.kc-block{max-width:none!important;}
.kc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:32px;}
.kc-head .section-title{margin:0;}
.kc-head>p{max-width:520px;margin:0;font-family:'Lato',sans-serif;font-size:15.5px;line-height:1.75;color:var(--gray,#5C5C5C);}
.kc-grid{display:grid;gap:16px;}
.kc-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.kc-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.kc-card{background:#fff;border:1px solid var(--border,#E0DDD6);border-radius:14px;padding:22px 22px 20px;display:flex;flex-direction:column;}
.kc-card strong{font-family:'Lato',sans-serif;font-size:15px;color:var(--black,#0D0D0D);}
.kc-card p{font-family:'Lato',sans-serif;font-size:14px;line-height:1.65;color:var(--gray,#5C5C5C);margin:8px 0 0;}
.kc-step{text-decoration:none;transition:background .3s,border-color .25s,box-shadow .3s,transform .3s cubic-bezier(.2,.7,.2,1);}
.kc-step strong{font-family:'Playfair Display',serif;font-size:22px;font-weight:400;}
.kc-step p{margin-bottom:18px;}
.kc-ph{font-family:'Lato',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text,#8B6C30);margin-bottom:10px;}
.kc-more{margin-top:auto;align-self:flex-start;font-family:'Lato',sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text,#8B6C30);border-bottom:1px solid var(--gold-text,#8B6C30);padding-bottom:4px;}
@media (hover:hover){.kc-step:hover{background:var(--light,#F2F0EB);border-color:var(--gold2,#C4A265);box-shadow:0 18px 40px -22px rgba(10,26,15,.35);transform:translateY(-4px);}}
.kc-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start;}
.kc-two .is-specs{margin-top:0;}
.kc-p{font-family:'Lato',sans-serif;font-size:16px;line-height:1.85;color:var(--gray,#5C5C5C);}
.kc-p a{color:var(--black,#0D0D0D);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.kc-h3{font-family:'Playfair Display',serif;font-size:26px;font-weight:400;margin:0 0 12px;}
@media (max-width:1100px){.kc-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:900px){.kc-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}.kc-two{grid-template-columns:1fr;gap:32px;}}
@media (max-width:600px){.kc-grid-3,.kc-grid-4{grid-template-columns:1fr;}}

/* ── Difetti visivi (ott 2026) ── */
.dv-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;}
.dv-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.dv-chips a{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--border,#E0DDD6);border-radius:14px;padding:18px 20px;text-decoration:none;transition:background .3s,border-color .25s,transform .3s;}
.dv-chips a strong{font-family:'Playfair Display',serif;font-size:21px;font-weight:400;color:var(--black,#0D0D0D);}
.dv-chips a span{font-family:'Lato',sans-serif;font-size:13.5px;color:var(--gray,#5C5C5C);}
.dv-chips a::after{content:'↓';color:var(--gold-text,#8B6C30);font-size:14px;margin-top:4px;}
@media (hover:hover){.dv-chips a:hover{background:var(--light,#F2F0EB);border-color:var(--gold2,#C4A265);transform:translateY(-3px);}}
.dv-def{scroll-margin-top:90px;max-width:none!important;}
.dv-def>*{max-width:none;}
.dv-signs{list-style:none;margin:20px 0;padding:0;border-top:1px solid var(--border,#E0DDD6);}
.dv-signs li{font-family:'Lato',sans-serif;font-size:15px;line-height:1.6;color:var(--black,#0D0D0D);padding:10px 0 10px 22px;border-bottom:1px solid var(--border,#E0DDD6);position:relative;}
.dv-signs li::before{content:'';position:absolute;left:2px;top:19px;width:8px;height:8px;border-radius:50%;background:var(--gold2,#C4A265);}
.dv-how{font-size:16px!important;}
@media (max-width:900px){.dv-intro{grid-template-columns:1fr;gap:28px;}}
@media (max-width:480px){.dv-chips{grid-template-columns:1fr;}}
.dl-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px;}
@media (max-width:900px){.dl-grid-2{grid-template-columns:1fr;}}
