/* pagine interne: elenco progetti, scheda progetto */
.crumbs{font-size:14px;color:#cfe0d8;padding-block:4px 0}
.crumbs a{color:#fff}
.page-head{color:var(--onmat);padding-block:18px 40px}
.page-head h1{font-size:clamp(34px,5vw,58px);font-weight:800;letter-spacing:-.01em}
.page-head p{max-width:60ch;color:#dbe7e1;margin:14px 0 0;font-size:18px}

.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;align-items:center}
.filters label{font-size:13px;font-weight:700;color:var(--muted)}
.filters select{font:inherit;padding:9px 12px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.filters .count{margin-left:auto;color:var(--muted);font-size:14px}
.empty-note{padding:30px;border:2px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center}
.card a.cover{display:block;color:inherit;text-decoration:none}
.card h3 a{text-decoration:none}
.card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.badge.preview{background:var(--sun);color:#1d2a33}

.proj{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start}
.proj .gallery-main{margin:0;border-radius:18px;overflow:hidden;background:var(--chip);box-shadow:0 14px 40px #0002;min-width:0}
.proj .gallery-main img{display:block;width:100%;height:auto}
.proj .gallery-main figcaption{font-size:13px;color:var(--muted);padding:10px 14px;background:var(--paper)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
.facts div{background:var(--chip);border-radius:12px;padding:10px 14px}
.facts dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:2px 0 0;font-weight:700}
.buy{background:var(--ink);color:var(--paper);border-radius:18px;padding:22px;margin-top:6px}
.buy p{margin:8px 0 14px;opacity:.85;font-size:15px}
.buy .btn{width:100%;justify-content:center}
.buy small{display:block;margin-top:10px;opacity:.7}
.block{margin-top:56px}
.block h2{font-size:clamp(26px,3.2vw,36px);font-weight:800;margin-bottom:16px}
.mat{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.mat li{display:flex;gap:10px;align-items:baseline;border-bottom:1px dashed var(--line);padding-bottom:8px}
.mat li::before{content:"□";color:var(--leaf);font-weight:800}
.steps{padding-left:22px;margin:0;display:grid;gap:8px}
.inside{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.inside div{border:1px solid var(--line);border-radius:14px;padding:14px;min-width:0}
.inside b{display:block;font-family:var(--display);font-size:18px;margin-bottom:4px}
.inside span{color:var(--muted);font-size:14px}
.preview-sheet{margin:0;background:#fff;border-radius:10px;padding:10px;box-shadow:0 10px 30px #0002;max-width:420px}
.preview-sheet img{display:block;width:100%;height:auto}
.two{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}
.notice{font-size:14px;color:var(--muted);border-left:3px solid var(--sun);padding:6px 0 6px 12px;margin-top:14px}

@media (max-width:980px){.proj,.two{grid-template-columns:1fr}.inside{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.facts,.inside{grid-template-columns:1fr}.filters .count{margin-left:0;width:100%}}

/* pagine legali */
.prose{max-width:760px}
.prose h2{font-size:clamp(22px,2.6vw,28px);font-weight:800;margin:34px 0 10px}
.prose p,.prose li{line-height:1.7}
.prose ul{padding-left:22px;display:grid;gap:8px}
.prose a{color:var(--leaf);font-weight:600}
.prose .lead-p{font-size:19px}
.scroll-x{overflow-x:auto}
.tab{border-collapse:collapse;width:100%;font-size:15px}
.tab th,.tab td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 8px}
.foot a{color:inherit}

/* personalizzazione */
.panel-pers{margin-top:14px;border:2px dashed var(--coral);border-radius:16px;padding:16px 18px;background:var(--paper)}
.panel-pers b{font-family:var(--display);font-size:20px}
.panel-pers p{margin:6px 0 12px;color:var(--muted);font-size:15px}
.cta-pers{display:flex;gap:10px;flex-wrap:wrap}
.btn.ghost-dark{background:var(--chip);color:var(--ink)}

/* sezioni per materiale */
.sezioni{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.sezione{display:block;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:1/1;color:#fff;text-decoration:none;background:#ddd}
.sezione img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.sezione:hover img{transform:scale(1.04)}
.sezione span{position:absolute;inset:auto 0 0 0;padding:28px 14px 12px;background:linear-gradient(transparent,rgba(20,20,30,.78))}
.sezione b{display:block;font-family:var(--display);font-size:21px;line-height:1.1}
.sezione small{font-size:13px;opacity:.9}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chips a{background:var(--chip);color:var(--ink);padding:6px 12px;border-radius:999px;font-size:14px;text-decoration:none}

/* FAQ */
.faq h2{margin-top:36px}
.faq details{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:10px 0;background:var(--onmat, #fff)}
.faq summary{cursor:pointer;font-weight:700;list-style-position:outside}
.faq details[open] summary{margin-bottom:8px}

/* negozi partner nella scheda progetto */
.negozi-box{margin-top:18px;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.negozi-box h3{margin:0 0 8px;font-size:18px}
.negozi-box ul{margin:0;padding-left:18px}
.negozi-box li{margin:4px 0}
.negozi-box small{color:var(--muted)}

/* Lo faccio io / Le case di Lory */
.panel-faccio{margin-top:16px;border:1px dashed var(--line);border-radius:16px;padding:14px 16px}
.panel-faccio b{font-family:var(--display);font-size:20px}
.panel-faccio p{margin:6px 0 10px;color:var(--muted)}
.servizi{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.servizio{display:block;border-radius:20px;padding:22px 24px;background:var(--chip);color:var(--ink);text-decoration:none;border:1px solid var(--line)}
.servizio.lory{background:#fbefe7}
.servizio b{display:block;font-family:var(--display);font-size:28px;margin:4px 0 6px}
.servizio span:not(.eyebrow){display:block;color:var(--muted)}
.servizio i{display:inline-block;margin-top:12px;font-style:normal;font-weight:700;color:var(--coral)}
.passi{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:p}
.passi div{border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--onmat,#fff)}
.passi div::before{counter-increment:p;content:counter(p);display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--coral);color:#fff;font-weight:800;margin-bottom:8px}
.lory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.lory-card{border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--onmat,#fff);text-decoration:none;color:var(--ink)}
.lory-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.lory-card div{padding:12px 14px}
.lory-card b{display:block;font-size:18px}
.lory-card small{color:var(--muted)}
@media (max-width:820px){.servizi{grid-template-columns:1fr}.passi{grid-template-columns:1fr 1fr}}
