/* AvilaFan legal-page layout, using Akuerò Club's own brand and document text.
   Loaded only by the four legal documents, not the contact page or homepage. */
.legal-document-page{--legal-gutter:clamp(24px,5.1vw,80px);--legal-muted:#626874;--legal-body:#42464f;--legal-border:#dce1e9}
.legal-width{width:min(1280px,calc(100% - var(--legal-gutter)*2));margin-inline:auto}
.legal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:24px;border-bottom:1px solid var(--legal-border)}
.legal-header img{width:94px;height:68px;object-fit:contain}
.legal-document-page .legal-main{max-width:none;padding:64px 0 100px}
.legal-intro{padding-bottom:45px;border-bottom:1px solid var(--legal-border);margin-bottom:45px;max-width:1050px}
.legal-intro .eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.19em;line-height:1.6}
.legal-intro h1{font-size:clamp(34px,4vw,62px);line-height:1.08;max-width:22ch;overflow-wrap:anywhere}
.legal-subtitle{font-size:clamp(19px,1.7vw,25px);line-height:1.4;color:var(--legal-muted);margin:24px 0 0}
.legal-updated{font-size:14px;line-height:1.5;color:var(--legal-muted);margin:16px 0 0}
.qa-intro{max-width:none;padding:2px 0 36px;margin-bottom:45px}
.qa-intro .eyebrow{margin-bottom:17px}
.qa-intro h1{font-size:clamp(40px,4vw,62px);line-height:1.08;max-width:none}
.qa-intro .legal-subtitle{margin-top:23px}
.qa-intro .legal-updated{margin-top:14px;font-size:13px}
.legal-layout{display:grid;grid-template-columns:235px minmax(0,780px);gap:clamp(35px,6vw,90px);align-items:start}
.legal-layout aside{position:sticky;top:30px;min-width:0}
.legal-document-nav{display:grid;gap:5px;border-left:2px solid var(--legal-border);padding-left:18px}
.legal-document-nav a{font-size:16px;line-height:1.4;padding:9px 0;color:var(--legal-muted)}
.legal-document-nav a[aria-current=page]{font-weight:600;color:var(--brand-blue)}
.legal-document-nav a:hover,.legal-index a:hover{color:var(--brand-blue);text-decoration:underline;text-underline-offset:3px}
.legal-index{margin-top:28px;font-size:14px;line-height:1.5;color:var(--legal-muted)}
.legal-index summary{font-weight:600;color:var(--ink);cursor:pointer;padding:8px 0}
.legal-index nav{display:grid;gap:12px;margin-top:14px;max-height:50vh;max-height:50dvh;overflow:auto;overscroll-behavior:contain;padding-right:8px}
.legal-document{min-width:0;font-size:18px;line-height:1.55;color:var(--legal-body)}
.legal-document h2{font-size:27px;line-height:1.2;letter-spacing:-.025em;color:var(--ink);margin:44px 0 20px;scroll-margin-top:35px;overflow-wrap:anywhere}
.legal-document h3{font-size:22px;line-height:1.25;letter-spacing:-.02em;color:var(--ink);margin:30px 0 16px;overflow-wrap:anywhere}
.legal-document p{line-height:1.55;white-space:pre-line;margin:0 0 19px;overflow-wrap:anywhere}
.legal-document ul{list-style:disc;margin:0 0 22px;padding-left:24px}
.legal-document li{padding-left:5px;margin-bottom:9px;white-space:pre-line;overflow-wrap:anywhere}
.legal-document a{color:var(--brand-blue);text-decoration:underline;text-underline-offset:3px}
@media(min-width:1700px){
 .legal-document-page{--legal-gutter:clamp(80px,5vw,120px)}
 .legal-width{width:min(1760px,calc(100% - var(--legal-gutter)*2))}
 .legal-layout{grid-template-columns:280px minmax(0,900px)}
 .legal-document{font-size:20px}.legal-document h2{font-size:31px}.legal-document h3{font-size:25px}
}
@media(max-width:1000px){
 .legal-document-page{--legal-gutter:30px}
 .legal-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}
 .legal-document{font-size:17px}.legal-document h2{font-size:25px}
}
@media(max-width:640px){
 .legal-document-page{--legal-gutter:24px}
 .legal-header{padding-block:16px}.legal-header img{width:80px;height:58px}
 .legal-document-page .legal-main{padding:38px 0 60px}
 .legal-intro{padding-bottom:28px;margin-bottom:28px}
 .qa-intro{padding-top:0}
 .legal-layout{display:block}.legal-layout aside{position:static;margin-bottom:35px}
 .legal-document-nav{display:flex;flex-wrap:wrap;gap:6px 20px;padding:0;border:0}
 .legal-document-nav a{font-size:14px;padding:5px 0}
 .legal-index{margin-top:15px;padding-block:8px;border-block:1px solid var(--legal-border)}
 .legal-document h2{margin-top:34px;font-size:24px}.legal-document h3{font-size:20px}
}
@media(max-width:380px){.legal-document-page{--legal-gutter:20px}}

/* Q & A — domande che si aprono al passaggio del mouse (o al tocco). */
.faq-document{padding-top:4px}
.faq-item{border-top:1px solid var(--legal-border)}
.faq-item:last-child{border-bottom:1px solid var(--legal-border)}
.faq-item h3{margin:0;font-size:inherit}
.faq-toggle{display:flex;align-items:baseline;gap:20px;width:100%;background:none;border:0;padding:19px 0;margin:0;text-align:left;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;transition:color .2s ease}
.faq-toggle:hover{color:var(--brand-blue)}
.faq-num{flex:0 0 auto;font-size:14px;font-weight:600;color:var(--legal-muted);font-variant-numeric:tabular-nums;letter-spacing:.04em}
.faq-question{flex:1;min-width:0}
.faq-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.22,.61,.36,1)}
.faq-panel>div{overflow:hidden;min-height:0}
.faq-panel p{margin:2px 0 20px;padding-left:calc(14px + 20px);max-width:64ch}
.faq-item.is-open .faq-panel{grid-template-rows:1fr}
.faq-item.is-open .faq-toggle{color:var(--brand-blue)}
@media(prefers-reduced-motion:reduce){.faq-panel{transition:none}}
