/* codiceautoradio.it - officina / elettrauto theme. Verde #0B7A3E, crema #FAF7F0, rosso #C8102E (tricolore accents only), testo #222. */
@font-face{font-family:"Alegreya";src:url(/assets/fonts/alegreya.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(/assets/fonts/sourcesans3.woff2) format("woff2");font-weight:200 900;font-display:swap}
:root{--g:#0B7A3E;--gd:#075A2D;--gl:#E6F2EA;--c:#FAF7F0;--sand:#EFE8D8;--r:#C8102E;--t:#222;--mut:#5A5A55;--line:#DDD5C4;--rad:16px;--serif:"Alegreya",Georgia,"Times New Roman",serif;--sans:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:12px}
body{margin:0;background:var(--c);color:var(--t);font:17px/1.6 var(--sans)}
img{max-width:100%;height:auto;display:block}
a{color:var(--gd);text-underline-offset:2px}
a:hover{color:var(--r)}
h1,h2,h3,.flogo,.logo span{font-family:var(--serif);line-height:1.2;color:var(--t)}
h2{font-size:1.6rem;margin:2.2rem 0 .7rem;padding-top:1.2rem;border-top:2px solid transparent;border-image:linear-gradient(90deg,var(--g) 0 33%,#fff 33% 66%,var(--r) 66%) 1;border-image-width:2px 0 0 0;display:block}
h3{font-size:1.25rem;margin:1.5rem 0 .4rem}
.h1{font-size:clamp(1.75rem,5.6vw,2.7rem);margin:.3rem 0 .6rem;font-weight:800}
.h-small{font-size:1.2rem;margin:0 0 .5rem;padding:0;border:0}
.wrap{max-width:1120px;margin:0 auto;padding:0 18px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:9}
.tri{height:4px;background:linear-gradient(90deg,var(--g) 0 33.3%,#fff 33.3% 66.6%,var(--r) 66.6%)}
.site-h{background:var(--c);border-bottom:1px solid var(--line);position:relative;z-index:5}
.hrow{display:flex;align-items:center;gap:12px;min-height:58px}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--t);font-size:1.2rem;margin-right:auto}
.logo b,.flogo b{color:var(--g)}
.mob{order:3;position:static}
.mob>summary{cursor:pointer;list-style:none;font-size:1.3rem;line-height:1;padding:7px 11px;border:1px solid var(--line);background:#fff;border-radius:10px}
.mob>summary::-webkit-details-marker,.sub>summary::-webkit-details-marker{display:none}
.mob .navlist{list-style:none;margin:0;padding:10px;position:absolute;right:12px;top:58px;background:#fff;border:1px solid var(--line);border-radius:var(--rad);min-width:240px;box-shadow:0 10px 30px rgba(0,0,0,.1)}
.navlist a,.sub>summary{display:block;padding:8px 10px;text-decoration:none;color:var(--t);border-radius:8px;font-weight:600}
.navlist a:hover,.sub>summary:hover{background:var(--gl)}
.sub>summary{cursor:pointer;list-style:none}.sub>summary::after{content:" \25BE"}
.desk{display:none}
.btn{display:inline-block;font:700 1rem/1.2 var(--sans);padding:12px 18px;border-radius:12px;border:2px solid var(--g);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}
.btn-green{background:var(--g);color:#fff}
.btn-green:hover,.btn-green:focus-visible{background:var(--r);border-color:var(--r);color:#fff}
.btn-ghost{background:transparent;color:var(--gd)}
.btn-head{padding:8px 10px;font-size:.88rem;order:2;white-space:nowrap}
.btn-big{width:100%;font-size:1.1rem;padding:15px 18px}
.btn[disabled]{opacity:.6;cursor:wait}
@media(max-width:420px){.logo span{font-size:1rem}.logo img{width:28px;height:28px}.hrow{gap:8px}}
@media(min-width:900px){
 .desk{display:block;order:1}.mob{display:none}
 .desk .navlist{display:flex;list-style:none;margin:0;padding:0;gap:4px;align-items:center}
 .has-sub{position:relative}.sub ul{list-style:none;position:absolute;top:42px;left:0;background:#fff;border:1px solid var(--line);border-radius:var(--rad);padding:8px;margin:0;min-width:210px;box-shadow:0 10px 30px rgba(0,0,0,.08)}
 .btn-head{order:3;padding:9px 14px;font-size:.95rem}
}
@media(max-width:440px){.reqform .fld:nth-of-type(1),.reqform .fld:nth-of-type(2){grid-column:span 2}}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:12px 0 0;font-size:.9rem;color:var(--mut)}
.crumbs li+li::before{content:"\203A";margin-right:6px}
/* hero: mobile order h1 > search > form > intro > image */
.hero{padding:14px 0 10px}
.hero-grid{display:grid;gap:14px;grid-template-areas:"h1" "search" "form" "intro" "img"}
.hero-grid .h1{grid-area:h1}.hero-intro{grid-area:intro}.hero-search{grid-area:search}.hero-form{grid-area:form}.hero-img{grid-area:img}
@media(min-width:900px){.hero{padding:30px 0 20px}.hero-grid{grid-template-columns:1.1fr .9fr;column-gap:36px;grid-template-areas:"h1 form" "intro form" "search form" "img form";align-items:start}.hero-form{position:sticky;top:12px}}
.lead{font-size:1.08rem;color:#333;margin:.2rem 0 .8rem}
.trust{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}
.trust li{background:var(--gl);color:var(--gd);font-weight:700;padding:4px 12px;border-radius:999px;font-size:.9rem}
.serialbar{background:#fff;border:2px solid var(--g);border-radius:var(--rad);padding:12px 14px}
.serialbar label{display:block;font-weight:700;margin-bottom:6px}
.sb-row{display:flex;gap:8px}
.sb-row input{flex:1;min-width:0}
.sb-hint{margin:6px 0 0;font-size:.85rem;color:var(--mut)}
input,select,textarea{font:inherit;color:var(--t);width:100%;padding:11px 12px;border:1.5px solid #BFB6A3;border-radius:10px;background:#fff}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(11,122,62,.25);border-color:var(--g)}
.serialbar input,#f-serial{text-transform:uppercase;font-family:ui-monospace,Menlo,Consolas,monospace;letter-spacing:.04em}
.serialbar input::placeholder,#f-serial::placeholder{text-transform:none;font-family:var(--sans);letter-spacing:0}
.invalid{border-color:var(--r)!important;background:#FFF5F6}
.reqbox{background:#fff;border:1px solid var(--line);border-top:4px solid var(--g);border-radius:var(--rad);padding:16px;box-shadow:0 6px 24px rgba(60,50,20,.06)}
.reqbox h2{margin:0 0 .6rem;padding:0;border:0;font-size:1.35rem}
.reqform{display:grid;gap:10px;grid-template-columns:1fr 1fr}
.reqform .fld{grid-column:span 2}
.reqform .fld:nth-of-type(1),.reqform .fld:nth-of-type(2){grid-column:span 1}
[data-contact] .fld{grid-column:span 2!important}
.fld label{display:block;font-weight:700;font-size:.95rem;margin-bottom:3px}
.fld small{display:block;color:var(--mut);font-size:.83rem;margin-top:3px}
.chk{grid-column:span 2;display:flex;gap:10px;align-items:flex-start;font-size:.93rem;line-height:1.4}
.chk input{width:20px;height:20px;flex:0 0 20px;margin-top:2px;accent-color:var(--g)}
.reqform .btn,.reqform .under,.reqform .form-msg{grid-column:span 2}
.under{margin:0;font-size:.88rem;color:var(--mut)}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.form-msg{margin:0;padding:10px 12px;border-radius:10px;font-weight:600}
.form-msg.ok{background:var(--gl);color:var(--gd)}
.form-msg.err{background:#FDECEE;color:#9E0C24}
.models{background:var(--sand);border-radius:var(--rad);padding:14px;margin-bottom:12px}
.notes{display:grid;gap:10px;margin-top:10px}
.note{background:#fff;border-radius:12px;padding:10px 12px}
.note h3{font-size:1.02rem;margin:0 0 4px}.note p{margin:0;font-size:.95rem}
.fig{margin:18px 0;background:var(--sand);border-radius:var(--rad);overflow:hidden}
.hero-img .fig{margin:0}
.prose{max-width:780px}
.prose.narrow{max-width:760px}
.prose ul,.prose ol{padding-left:1.3rem}
.prose li{margin:.25rem 0}
.qa{background:#fff;border:1px solid var(--line);border-radius:12px;margin:8px 0;padding:0 14px}
.qa summary{cursor:pointer;font-weight:700;padding:12px 0}
.qa p{margin:0 0 12px}
.bgrid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:12px 0 6px}
@media(min-width:700px){.bgrid{grid-template-columns:repeat(4,1fr)}}
.bcard{display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff;border:2px solid var(--g);border-radius:18px;padding:14px 8px;text-decoration:none;color:var(--t);height:100%;transition:border-color .15s,transform .15s}
.bcard:hover{border-color:var(--r);transform:translateY(-2px)}
.bcard .lcd{background:#C9E3BF;color:#123D22;font:700 .8rem ui-monospace,Menlo,monospace;letter-spacing:.15em;padding:2px 10px;border-radius:6px}
.bcard .bn{font:700 1.2rem var(--serif);text-align:center}
.bcard .go{font-size:.82rem;color:var(--gd);font-weight:700}
.pagehead{padding:10px 0 6px}
.two{display:grid;gap:28px}
@media(min-width:960px){.two{grid-template-columns:1fr 380px}.two .side{position:sticky;top:12px;align-self:start}}
.related{margin:26px 0;background:var(--sand);border-radius:var(--rad);padding:14px 16px}
.related ul,.blist{display:flex;flex-wrap:wrap;gap:8px 14px;list-style:none;padding:0;margin:0}
.band{background:var(--gd);color:#fff;text-align:center;padding:26px 18px;margin-top:34px}
.band p{font:700 1.35rem var(--serif);margin:0 0 10px;color:#fff}
.band .btn-green{background:#fff;color:var(--gd);border-color:#fff}.band .btn-green:hover{background:var(--r);color:#fff;border-color:var(--r)}
.draftnote{background:#FFF7E0;border-left:4px solid var(--r);padding:8px 12px;border-radius:6px;font-size:.92rem}
.company{color:var(--mut);font-size:.9rem}
.interim{color:var(--mut);font-style:italic}
.site-f{background:#1F2A22;color:#E9E4D8;margin-top:40px;font-size:.95rem}
.p-contact .site-f,.p-terms .site-f,.p-privacy .site-f,.p-404 .site-f{margin-top:0}
.site-f a{color:#fff}.site-f a:hover{color:#FFB3BE}
.fcols{display:grid;gap:22px;padding:28px 0 8px}
@media(min-width:800px){.fcols{grid-template-columns:1.3fr 1fr 1fr}}
.site-f ul{list-style:none;padding:0;margin:0}.site-f li{margin:4px 0}
.flogo{font-size:1.3rem;color:#fff;margin:0 0 6px}.flogo b{color:#7FD3A3}
.fh{font-weight:700;color:#fff;margin:0 0 6px;text-transform:uppercase;font-size:.82rem;letter-spacing:.08em}
.indep{border-top:1px solid #3A473D;padding-top:14px;font-size:.86rem;color:#CFC9BA}
.site-f .company{color:#A9A496;padding-bottom:24px;margin:0}
