/* SMF Tappetini — tutto sotto .smf-config-page per non toccare il tema. */
.smf-config-page{
  --smf-paper:#FFFFFF; --smf-surface:#F4F5F7; --smf-surface-2:#E9EBEF;
  --smf-ink:#1B283A; --smf-ink-soft:#65696D; --smf-rule:#DCDFE3;
  --smf-accent:#D10F14; --smf-accent-contrast:#FFFFFF; --smf-navy:#141414; --smf-navy-contrast:#FFFFFF;
  font-family:'Clash Grotesk','Helvetica Neue',Helvetica,Arial,sans-serif;
  color:var(--smf-ink-soft); font-size:15px; line-height:1.65;
  max-width:1360px; margin:0 auto; padding:8px 8px 40px;
}
@media (min-width:1500px){ .smf-config-page{max-width:1500px;} }
.smf-config-page *{box-sizing:border-box;}
.smf-config-page h2, .smf-config-page h3{margin:0;}

/* HERO */
.smf-hero{position:relative; border-radius:8px; overflow:hidden; margin-top:8px; background:#0b0b0d;}
.smf-hero-bg{position:absolute; inset:0; background-size:cover; background-position:center right;}
.smf-hero-bg::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,10,12,0.94) 0%, rgba(10,10,12,0.86) 38%, rgba(10,10,12,0.35) 70%, rgba(10,10,12,0.1) 100%);}
.smf-hero-inner{position:relative; padding:44px 40px; max-width:620px;}
@media (max-width:640px){ .smf-hero-inner{padding:30px 22px; max-width:100%;} .smf-hero-bg::after{background:linear-gradient(180deg, rgba(10,10,12,0.84), rgba(10,10,12,0.92));} }
.smf-hero-eyebrow{display:flex; align-items:center; gap:8px; font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:#fff; margin:0 0 16px;}
.smf-hero-title{font-family:'Clash Grotesk',sans-serif; font-weight:600; font-size:clamp(30px,4.4vw,50px); line-height:1.03; color:#fff; margin:0 0 14px; letter-spacing:-0.02em;}
.smf-hero-sub{font-size:17px; color:#D7D9DC; margin:0 0 22px; max-width:34ch;}
.smf-hero-features{display:flex; gap:26px; flex-wrap:wrap; margin-bottom:24px;}
.smf-hero-features .smf-hf{display:flex; align-items:center; gap:9px; font-size:12.5px; color:#EDEFF2; max-width:180px; line-height:1.3;}
.smf-hero-features .smf-hf svg{width:22px; height:22px; flex-shrink:0; stroke:#fff; fill:none;}
.smf-hero-cta{display:inline-flex; align-items:center; gap:10px; background:var(--smf-accent); color:#fff; font-weight:600; font-size:15px; text-transform:uppercase; letter-spacing:.03em; padding:15px 26px; border-radius:6px; text-decoration:none; border:none; cursor:pointer;}
.smf-hero-cta:hover{opacity:.93; color:#fff;}
.smf-hero-mini{display:flex; gap:24px; flex-wrap:wrap; margin-top:22px;}
.smf-hero-mini span{display:flex; align-items:center; gap:8px; font-size:12px; color:#C7CACE;}
.smf-hero-mini svg{width:16px; height:16px; stroke:#C7CACE; fill:none; flex-shrink:0;}

/* TRUST BAR */
.smf-trustbar{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; padding:22px 8px; border-bottom:1px solid var(--smf-rule); margin-top:4px;}
@media (max-width:760px){ .smf-trustbar{grid-template-columns:1fr 1fr;} }
.smf-trustbar .smf-tb{display:flex; align-items:center; gap:12px;}
.smf-trustbar .smf-tb svg{width:26px; height:26px; stroke:var(--smf-ink); fill:none; flex-shrink:0;}
.smf-trustbar .smf-tb b{display:block; color:var(--smf-ink); font-size:13.5px; font-weight:600;}
.smf-trustbar .smf-tb span{font-size:12px; color:var(--smf-ink-soft);}

/* SECTION HEADING */
.smf-section-head{margin-top:34px;}
.smf-section-head h2{font-family:'Clash Grotesk',sans-serif; font-weight:600; font-size:clamp(22px,2.6vw,28px); color:var(--smf-ink); margin:0 0 6px; letter-spacing:-0.01em;}
.smf-section-head p{font-size:15px; color:var(--smf-ink-soft); margin:0;}

/* CARDS + CONFIG */
.smf-card{background:var(--smf-surface); border:1px solid var(--smf-rule); border-radius:5px; padding:24px 26px;}
.smf-vehicle{margin-top:20px; display:grid; grid-template-columns:1fr 1fr 1.3fr auto; gap:14px; align-items:end;}
@media (max-width:760px){ .smf-vehicle{grid-template-columns:1fr 1fr;} .smf-vehicle .smf-btn{grid-column:1/-1;} }
.smf-field label{display:flex; justify-content:space-between; font-size:11.5px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--smf-ink-soft); margin-bottom:7px;}
.smf-field label .smf-count{font-weight:500; text-transform:none; letter-spacing:0; font-variant-numeric:tabular-nums;}
.smf-config-page select, .smf-config-page input[type="text"], .smf-config-page textarea{width:100%; font-family:inherit; font-size:14.5px; color:var(--smf-ink); background:var(--smf-paper); border:1px solid var(--smf-rule); border-radius:5px; padding:11px 12px;}
.smf-config-page textarea{resize:vertical; line-height:1.5;}
.smf-config-page select:focus-visible, .smf-config-page input:focus-visible, .smf-config-page textarea:focus-visible, .smf-config-page button:focus-visible{outline:2px solid var(--smf-accent); outline-offset:1px;}
.smf-btn{font-family:inherit; font-weight:600; font-size:13px; letter-spacing:.05em; text-transform:uppercase; background:var(--smf-navy); color:var(--smf-navy-contrast); border:none; border-radius:5px; padding:12px 22px; cursor:pointer; white-space:nowrap;}
.smf-btn:hover{opacity:.92;}
.smf-btn-cta{background:var(--smf-accent); color:var(--smf-accent-contrast); font-size:14px; padding:15px 26px;}

.smf-vnote{margin-top:12px; font-size:14px; color:var(--smf-ink-soft);}
.smf-vnote b{color:var(--smf-ink); font-weight:600;}
.smf-checks{list-style:none; display:flex; flex-wrap:wrap; gap:10px 22px; margin:8px 0 0; padding:0;}
.smf-checks li{display:flex; align-items:center; gap:7px; font-size:13px; font-weight:500; color:var(--smf-ink);}
.smf-checks li::before{content:"✓"; display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; border-radius:50%; background:#1a8f4a; color:#fff; font-size:11px; font-weight:700; flex-shrink:0;}

.smf-studio{display:grid; grid-template-columns:minmax(280px,1fr) minmax(300px,440px); gap:18px; margin-top:18px; align-items:start;}
@media (max-width:820px){ .smf-studio{grid-template-columns:1fr;} }
.smf-stage-card{padding:18px; display:flex; flex-direction:column;}
@media (min-width:821px){ .smf-stage-card{position:sticky; top:16px; align-self:start;} }
.smf-stage{flex:1; background:var(--smf-paper); border:1px solid var(--smf-rule); border-radius:5px; display:flex; align-items:center; justify-content:center; padding:16px; min-height:420px;}
.smf-stage svg{max-width:300px; width:100%; height:auto; filter:drop-shadow(0 14px 20px rgba(27,40,58,0.16));}
.smf-note{margin-top:12px; font-size:12px; color:var(--smf-ink-soft); border-left:2px solid var(--smf-rule); padding-left:10px; line-height:1.55;}

.smf-form{padding:24px 26px; display:flex; flex-direction:column; gap:24px;}
.smf-swatches{display:flex; flex-wrap:wrap; gap:9px;}
.smf-swatch{width:28px; height:28px; border-radius:50%; border:1px solid rgba(27,40,58,0.22); cursor:pointer; padding:0; position:relative;}
.smf-swatch[aria-pressed="true"]{box-shadow:0 0 0 2px var(--smf-surface), 0 0 0 4px var(--smf-accent);}
.smf-swatch .smf-name{position:absolute; top:34px; left:50%; transform:translateX(-50%); font-size:9px; color:var(--smf-ink-soft); white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .1s; background:var(--smf-paper); padding:1px 4px; border-radius:3px; border:1px solid var(--smf-rule); z-index:2;}
.smf-swatch:hover .smf-name, .smf-swatch:focus-visible .smf-name{opacity:1;}
.smf-divider{border:none; border-top:1px solid var(--smf-rule); margin:0;}
.smf-h2{font-weight:600; font-size:13px; letter-spacing:.09em; text-transform:uppercase; color:var(--smf-ink); margin:0 0 16px;}
.smf-choice-row{display:flex; gap:10px;}
.smf-choice{flex:1; display:flex; flex-direction:column; align-items:center; gap:8px; padding:14px 10px; border:1px solid var(--smf-rule); background:var(--smf-paper); border-radius:5px; cursor:pointer;}
.smf-choice svg{width:36px; height:30px;}
.smf-choice span{font-size:12px; font-weight:600; color:var(--smf-ink-soft); text-align:center;}
.smf-choice.smf-active{border-color:var(--smf-accent); box-shadow:0 0 0 1px var(--smf-accent);}
.smf-choice.smf-active span{color:var(--smf-ink);}
.smf-check{display:flex; align-items:center; gap:10px; padding:12px 14px; border:1px solid var(--smf-rule); border-radius:5px; background:var(--smf-paper); cursor:pointer; margin-bottom:14px;}
.smf-check input{width:17px; height:17px; accent-color:var(--smf-accent); cursor:pointer;}
.smf-check span{font-size:14px; font-weight:600; color:var(--smf-ink);}
.smf-block{border:1px solid var(--smf-rule); border-radius:5px; padding:16px 16px 18px; background:var(--smf-paper);}
.smf-block-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:12px;}
.smf-block-head h3{font-size:12px; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:var(--smf-ink);}
.smf-switch{position:relative; width:38px; height:22px; flex-shrink:0;}
.smf-switch input{opacity:0; width:0; height:0;}
.smf-track{position:absolute; inset:0; background:var(--smf-rule); border-radius:20px; cursor:pointer; transition:background .15s;}
.smf-track::before{content:""; position:absolute; width:16px; height:16px; left:3px; top:3px; background:var(--smf-paper); border-radius:50%; transition:transform .15s;}
.smf-switch input:checked + .smf-track{background:var(--smf-accent);}
.smf-switch input:checked + .smf-track::before{transform:translateX(16px);}
.smf-fields{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
.smf-fields .smf-full{grid-column:1/-1;}
.smf-disabled{opacity:.4; pointer-events:none;}
.smf-price-tag{font-size:11px; font-weight:600; color:var(--smf-accent); text-transform:none; letter-spacing:0;}

.smf-summary{margin-top:6px; display:grid; grid-template-columns:1fr auto; gap:22px; align-items:start;}
@media (max-width:900px){ .smf-summary{grid-template-columns:1fr;} }
.smf-sum-list{font-size:13px; display:flex; flex-direction:column; gap:2px;}
.smf-sum-row{display:grid; grid-template-columns:130px 1fr; gap:12px; padding:8px 0; color:var(--smf-ink-soft); border-bottom:1px solid var(--smf-rule);}
.smf-sum-row:last-child{border-bottom:none;}
.smf-sum-row > span{font-size:11.5px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; color:var(--smf-ink-soft); padding-top:1px;}
.smf-sum-row b{color:var(--smf-ink); font-weight:600; text-align:left; overflow-wrap:anywhere; line-height:1.4;}
.smf-price-block{text-align:right; display:flex; flex-direction:column; gap:10px; align-items:flex-end;}
.smf-price{font-size:30px; font-weight:600; color:var(--smf-ink); font-variant-numeric:tabular-nums;}
.smf-cta-note{font-size:11.5px; color:var(--smf-ink-soft); max-width:24ch; text-align:right;}
.smf-ack-note{grid-column:1/-1; display:flex; gap:12px; align-items:flex-start; margin:16px 0 0; padding:14px 16px; background:var(--smf-surface-2); border:1px solid var(--smf-rule); border-radius:6px;}
.smf-ack-note svg{width:20px; height:20px; stroke:var(--smf-accent); fill:none; flex-shrink:0; margin-top:1px;}
.smf-ack-note span{font-size:13.5px; color:var(--smf-ink); line-height:1.55;}

/* MADE IN ITALY */
.smf-miq{display:grid; grid-template-columns:1fr 1fr; gap:0; margin-top:52px; border:1px solid var(--smf-rule); border-radius:8px; overflow:hidden; background:var(--smf-surface);}
@media (max-width:760px){ .smf-miq{grid-template-columns:1fr;} }
.smf-miq-img{min-height:280px; background-size:cover; background-position:center;}
.smf-miq-text{padding:34px 36px;}
.smf-miq-flag{display:inline-block; width:44px; height:8px; border-radius:2px; background:linear-gradient(90deg,#1a8f4a 0 33%,#f3f3f3 33% 66%,#c8102e 66% 100%); margin-bottom:14px;}
.smf-miq-text h3{font-family:'Clash Grotesk',sans-serif; font-weight:600; font-size:24px; color:var(--smf-ink); margin:0 0 12px;}
.smf-miq-text p{font-size:14.5px; color:var(--smf-ink-soft); line-height:1.65; margin:0 0 22px; max-width:52ch;}
.smf-miq-feats{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
@media (max-width:520px){ .smf-miq-feats{grid-template-columns:1fr 1fr;} }
.smf-mf{display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; font-size:11.5px; color:var(--smf-ink-soft);}
.smf-mf svg{width:30px; height:30px; stroke:var(--smf-ink); fill:none;}

/* GALLERY */
.smf-gallery-wrap{margin-top:48px;}
.smf-gallery-wrap h2{font-family:'Clash Grotesk',sans-serif; font-weight:600; font-size:20px; color:var(--smf-ink); margin:0 0 16px;}
.smf-gallery{display:grid; grid-template-columns:repeat(4,1fr); gap:12px;}
@media (max-width:820px){ .smf-gallery{grid-template-columns:repeat(2,1fr);} }
.smf-gtile{aspect-ratio:4/3; border:1px solid var(--smf-rule); border-radius:6px; overflow:hidden; background:var(--smf-surface);}
.smf-gtile img{width:100%; height:100%; object-fit:cover; display:block;}

/* SEO + FAQ */
.smf-seo{margin-top:52px;}
.smf-seo h2{font-family:'Clash Grotesk',sans-serif; font-weight:600; font-size:22px; color:var(--smf-ink); margin:0 0 12px;}
.smf-seo p{max-width:72ch; font-size:14.5px; color:var(--smf-ink-soft); line-height:1.75;}
.smf-faq{margin-top:24px; display:flex; flex-direction:column; gap:10px;}
.smf-faq details{border:1px solid var(--smf-rule); border-radius:5px; background:var(--smf-surface);}
.smf-faq summary{cursor:pointer; list-style:none; padding:15px 18px; font-weight:600; font-size:14px; color:var(--smf-ink); display:flex; justify-content:space-between; align-items:center;}
.smf-faq summary::-webkit-details-marker{display:none;}
.smf-faq summary::after{content:"+"; font-size:18px; color:var(--smf-ink-soft); font-weight:400;}
.smf-faq details[open] summary::after{content:"–";}
.smf-faq p{margin:0; padding:0 18px 16px; font-size:13.5px; color:var(--smf-ink-soft); line-height:1.65;}
