/* ==========================================================================
   FAQ — scoped .lp-faq. Dinamica ma sobria, buon contrasto sul nero.
   ========================================================================== */
body.page-template-page-faq .wd-page-title,
body.page-template-page-faq .page-header,
body.page-template-page-faq .main-page-title,
body.page-template-page-faq .title-wrapper,
body.page-template-page-faq .woodmart-breadcrumbs,
body.page-template-page-faq .wd-breadcrumbs,
body.page-template-page-faq nav.woocommerce-breadcrumb{display:none!important;}
body.page-template-page-faq .content-area,
body.page-template-page-faq .site-content,
body.page-template-page-faq .wd-page-content{padding-top:0!important;padding-bottom:0!important;}
body.page-template-page-faq .wd-content-layout{padding-block:0!important;max-width:none!important;}

.lp-faq{
  --bg:#141414; --bg2:#101013; --panel:#1c1c22; --panel-h:#23232b;
  --line:rgba(255,255,255,.10); --line2:rgba(255,255,255,.06);
  --text:#F4F6F8; --muted:#a6acb8; --muted2:#d3d8df; --title:wheat;
  --gold:#FFB80C; --gold2:#FFC838; --glow:rgba(255,184,12,.5);
  --serif:Georgia,"Iowan Old Style","Times New Roman",Times,serif;
  --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s5:48px; --maxw:860px; --r:14px;
  width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  background:radial-gradient(1100px 520px at 50% -8%, rgba(255,184,12,.06), transparent 60%), var(--bg);
  color:var(--text); font-family:var(--sans); -webkit-font-smoothing:antialiased; scroll-behavior:smooth;
}
.lp-faq *,.lp-faq *::before,.lp-faq *::after{box-sizing:border-box;}
.lp-faq .lp-wrap{max-width:var(--maxw); margin:0 auto; padding:var(--s5) var(--s3) calc(var(--s5) + 8px);}
.lp-faq h1{font-family:var(--serif); font-weight:600; color:var(--title); line-height:1.15; font-size:clamp(2rem,5vw,2.7rem); margin:0 0 12px; text-wrap:balance;}
.lp-faq .lp-intro{color:var(--muted2); line-height:1.65; margin:0 0 var(--s3); max-width:60ch; font-size:1.05rem;}
.lp-faq a{color:var(--gold); text-decoration:none;}
.lp-faq a:hover{text-decoration:underline;}
.lp-faq :focus-visible{outline:2px solid var(--gold2); outline-offset:3px; border-radius:8px;}

/* Nav a pillole per categoria */
.lp-faq .lp-nav{display:flex; flex-wrap:wrap; gap:10px; margin:0 0 var(--s5); position:sticky; top:8px; z-index:5;}
.lp-faq .lp-nav a{display:inline-flex; align-items:center; gap:8px; font-size:.86rem; font-weight:600; color:var(--muted2);
  background:rgba(28,28,34,.85); backdrop-filter:blur(6px); border:1px solid var(--line); border-radius:999px; padding:9px 16px;
  transition:border-color .18s, color .18s, transform .18s, background .18s;}
.lp-faq .lp-nav a:hover{color:#141414; background:var(--gold); border-color:var(--gold); transform:translateY(-1px); text-decoration:none;}
.lp-faq .lp-nav a svg{width:15px; height:15px;}

/* Sezioni */
.lp-faq .lp-sec{margin:0 0 var(--s5); scroll-margin-top:70px;}
.lp-faq h2{display:flex; align-items:center; gap:12px; font-family:var(--sans); font-weight:700; font-size:1rem; text-transform:uppercase; letter-spacing:.08em; color:var(--gold); margin:0 0 var(--s2);}
.lp-faq h2::before{content:""; width:22px; height:2px; background:var(--gold); border-radius:2px; flex:0 0 auto;}

/* Accordion */
.lp-faq .lp-list{display:grid; gap:12px;}
.lp-faq details{background:var(--panel); border:1px solid var(--line); border-radius:var(--r); overflow:hidden; transition:border-color .2s, box-shadow .2s, transform .2s;}
.lp-faq details:hover{border-color:rgba(255,184,12,.4);}
.lp-faq details[open]{border-color:rgba(255,184,12,.55); box-shadow:0 10px 34px rgba(0,0,0,.4), inset 3px 0 0 var(--gold);}
.lp-faq summary{cursor:pointer; padding:17px 20px; list-style:none; display:flex; justify-content:space-between; gap:16px; align-items:center;}
.lp-faq summary::-webkit-details-marker{display:none;}
.lp-faq summary h3{margin:0; font-family:var(--sans); font-size:1.02rem; font-weight:600; color:var(--text); line-height:1.4;}
.lp-faq summary::after{content:""; width:12px; height:12px; flex:0 0 auto; position:relative; transition:transform .25s;
  background:
    linear-gradient(var(--gold),var(--gold)) center/12px 2px no-repeat,
    linear-gradient(var(--gold),var(--gold)) center/2px 12px no-repeat;}
.lp-faq details[open] summary::after{transform:rotate(135deg);}
.lp-faq .lp-a{padding:0 20px 18px; margin:0; color:var(--muted2); font-size:.97rem; line-height:1.7;}
.lp-faq details[open] .lp-a{animation:lpfade .32s ease-out;}
.lp-faq .lp-a a{color:var(--gold2);}
@keyframes lpfade{from{opacity:0; transform:translateY(-6px);} to{opacity:1; transform:none;}}

/* Reveal allo scroll */
.lp-faq .rv{opacity:0; transform:translateY(16px); transition:opacity .55s ease-out, transform .55s ease-out;}
.lp-faq .rv.is-in{opacity:1; transform:none;}

.lp-faq .lp-legal{margin-top:var(--s5); padding-top:var(--s3); border-top:1px solid var(--line2); font-size:.82rem; color:var(--muted); line-height:1.6;}

@media(prefers-reduced-motion:reduce){
  .lp-faq{scroll-behavior:auto;}
  .lp-faq .rv{opacity:1; transform:none; transition:none;}
  .lp-faq details,.lp-faq .lp-nav a,.lp-faq summary::after{transition:none;}
  .lp-faq details[open] .lp-a{animation:none;}
}
