/*
Theme Name: IDRO2 Definitivo
Theme URI: https://www.idro2.it/
Author: OpenAI per IDRO2
Description: Tema WordPress completo per IDRO2 Termoidraulica, con servizi e realizzazioni modificabili, contatti via email, SEO tecnico, privacy e cookie policy.
Version: 7.1.0
Text Domain: idro2
*/
:root{--navy:#082b4c;--navy2:#0d3d67;--red:#d9272e;--ice:#eef6fb;--text:#172333;--muted:#617080;--white:#fff;--border:#d9e4ec;--shadow:0 15px 40px rgba(5,35,62,.12);--radius:18px;--wrap:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65;background:#fff}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.wrap{width:min(calc(100% - 36px),var(--wrap));margin:auto}.site-top{background:var(--navy);color:#dceaf4;font-size:.9rem}.site-top .wrap{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.site-header{background:#fff;position:sticky;top:0;z-index:999;border-bottom:1px solid var(--border)}.header-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.site-brand{display:flex;align-items:center;min-width:0}.custom-logo,.theme-brand-logo img{display:block;max-height:68px;width:auto;max-width:min(440px,38vw);object-fit:contain}.theme-brand-logo{display:inline-flex;align-items:center}.theme-brand-logo img{filter:none}.brand-fallback{font-weight:900;font-size:1.7rem;color:var(--navy);letter-spacing:-.03em}.brand-fallback span{color:var(--red)}.main-nav ul{display:flex;align-items:center;gap:7px;list-style:none;margin:0;padding:0}.main-nav a{display:block;padding:10px 12px;font-weight:700;color:var(--navy);border-radius:9px}.main-nav a:hover,.main-nav .current-menu-item>a{background:var(--ice);color:var(--red)}.menu-toggle{display:none;background:var(--navy);color:#fff;border:0;border-radius:8px;padding:9px 12px;font-size:1.2rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;background:var(--navy);color:#fff;border-radius:10px;font-weight:800;border:2px solid var(--navy);transition:.2s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(8,43,76,.2)}.btn-red{background:var(--red);border-color:var(--red)}.btn-outline{background:transparent;color:var(--navy)}.hero{min-height:650px;display:grid;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(3,26,48,.94) 0%,rgba(3,26,48,.78) 45%,rgba(3,26,48,.15) 100%),var(--hero) center/cover no-repeat}.hero-copy{max-width:720px;padding:100px 0}.eyebrow{color:var(--red);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem;margin-bottom:12px}.hero .eyebrow{color:#ffb3b6}.hero h1,.page-hero h1{font-size:clamp(2.5rem,5.4vw,5.1rem);line-height:1.03;letter-spacing:-.05em;margin:0 0 22px}.hero p{font-size:1.18rem;max-width:670px;color:#e3edf4}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.trustbar{margin-top:-54px;position:relative;z-index:3}.trustgrid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.trustitem{padding:26px;border-right:1px solid var(--border)}.trustitem:last-child{border:0}.trustitem strong,.trustitem span{display:block}.trustitem strong{color:var(--navy);font-size:1.05rem}.trustitem span{color:var(--muted);font-size:.92rem;margin-top:4px}.section{padding:92px 0}.section-soft{background:var(--ice)}.section-dark{background:var(--navy);color:#fff}.section-head{max-width:760px;margin:0 auto 46px;text-align:center}.section-head h2,.split h2,.cta h2,.content-area h2{font-size:clamp(2rem,3.3vw,3.3rem);line-height:1.12;letter-spacing:-.035em;color:var(--navy);margin:0 0 16px}.section-dark h2{color:#fff}.section-head p,.split p{color:var(--muted);font-size:1.05rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:30px;box-shadow:0 6px 18px rgba(8,43,76,.05);transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card h3{color:var(--navy);font-size:1.35rem;margin:14px 0 8px}.card p{color:var(--muted);margin:0}.service-icon{width:54px;height:54px;border-radius:14px;background:var(--ice);display:grid;place-items:center;font-size:1.7rem}.service-card img{width:100%;height:220px;object-fit:cover;border-radius:13px;margin-bottom:18px}.text-link{display:inline-block;margin-top:18px;color:var(--red);font-weight:900}.center-action{text-align:center;margin-top:38px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.rounded-image{width:100%;min-height:430px;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.feature-list{display:grid;gap:14px;margin-top:26px}.feature{display:flex;gap:12px;align-items:flex-start;font-weight:700}.check{background:var(--red);color:#fff;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.partner-band{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.partner-visual{background:var(--ice);padding:28px;border-radius:var(--radius)}.partner-visual img{border-radius:13px}.partner-logo{max-height:72px;width:auto!important;object-fit:contain!important;margin-bottom:20px}.partner-word{font-size:2rem;font-weight:900;color:#ed1c24;margin-bottom:20px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery figure{margin:0;position:relative;overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:0 8px 25px rgba(8,43,76,.08)}.gallery img{width:100%;height:290px;object-fit:cover;display:block}.gallery figcaption{padding:16px 18px;font-weight:800;color:var(--navy)}.cta{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--navy);color:#fff;border-radius:var(--radius);padding:42px}.cta h2{color:#fff;margin:0 0 8px;font-size:clamp(1.8rem,3vw,2.7rem)}.cta p{margin:0;color:#d6e5ef}.page-hero{padding:105px 0 70px;color:#fff;background:linear-gradient(rgba(3,27,49,.82),rgba(3,27,49,.82)),var(--crumb-bg) center/cover no-repeat}.page-hero h1{font-size:clamp(2.4rem,4.2vw,4rem);margin:20px 0 10px}.page-hero p{font-size:1.08rem;max-width:720px;color:#e2edf4}.breadcrumb{display:flex;gap:9px;align-items:center;font-size:.9rem;color:#dae8f1}.breadcrumb a{color:#fff;font-weight:800}.content-area{padding:76px 0}.prose{max-width:900px}.prose h2,.prose h3{color:var(--navy);line-height:1.2}.prose h2{margin-top:42px;font-size:2rem}.prose h3{margin-top:28px}.prose a{color:var(--red);text-decoration:underline}.prose ul{padding-left:22px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px}.contact-panel,.contact-form{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:32px;box-shadow:0 7px 24px rgba(8,43,76,.06)}.contact-panel{background:var(--navy);color:#fff}.contact-panel h2{color:#fff}.contact-item{margin:20px 0}.contact-item strong{display:block;color:#aacbe1}.contact-form label{font-weight:800;color:var(--navy);display:block;margin-bottom:6px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:13px;border:1px solid #bfcfda;border-radius:9px;font:inherit;margin-bottom:16px}.contact-form textarea{min-height:160px}.notice{padding:14px 18px;border-radius:10px;margin-bottom:20px}.notice-ok{background:#e6f7ed;color:#165c34}.notice-error{background:#fdebed;color:#902129}.work-meta{font-size:.9rem;color:var(--muted);margin-bottom:12px}.pagination{margin-top:35px}.site-footer{background:#031d34;color:#d3e1eb;padding:68px 0 22px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.2fr;gap:35px}.site-footer h3{color:#fff;font-size:1.05rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:9px 0}.site-footer a:hover{color:#fff}.footer-brand img{max-height:72px;width:auto;margin-bottom:15px}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.88rem}.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:9999;max-width:760px;margin:auto;background:#fff;color:var(--text);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.25);padding:20px;display:none;border:1px solid var(--border)}.cookie-banner.is-visible{display:block}.cookie-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.cookie-row p{margin:0;font-size:.92rem}.cookie-actions{display:flex;gap:8px;flex:0 0 auto}.cookie-actions button{cursor:pointer}.screen-reader-text{position:absolute;left:-9999px}.admin-hint{background:#fff6d8;border:1px solid #ebcf72;padding:13px;border-radius:8px}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:15px}.main-nav.is-open{display:block}.main-nav ul{display:block}.menu-toggle{display:block}.trustgrid,.cards,.gallery{grid-template-columns:repeat(2,1fr)}.split,.partner-band,.contact-grid,.footer-grid{grid-template-columns:1fr}.footer-grid{gap:22px}.hero{min-height:570px}.trustbar{margin-top:-30px}.rounded-image{min-height:320px}.site-top .wrap{display:block}.site-top span:last-child{display:none}}
@media(max-width:620px){.wrap{width:min(calc(100% - 24px),var(--wrap))}.hero-copy{padding:75px 0}.hero h1{font-size:2.65rem}.trustgrid,.cards,.gallery{grid-template-columns:1fr}.trustitem{border-right:0;border-bottom:1px solid var(--border)}.section{padding:66px 0}.cta,.cookie-row,.footer-bottom{display:block}.cta .btn{margin-top:22px}.cookie-actions{margin-top:14px}.gallery img{height:250px}.header-row{min-height:72px}.main-nav{top:72px}}
/* Refinements 6.2 */
.service-card-static:hover{transform:none;box-shadow:0 6px 18px rgba(8,43,76,.05)}
.gallery-static figure{cursor:default}
.gallery figcaption{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.02rem;font-weight:750;line-height:1.35;letter-spacing:-.01em;background:#fff}
.partner-logo-panel{min-height:260px;display:grid;place-items:center;background:#fff;border:1px solid var(--border);box-shadow:0 8px 25px rgba(8,43,76,.08)}
.partner-logo-large{max-width:min(440px,85%);max-height:120px!important;margin:0!important}

/* IDRO2 6.3: schede vetrina e icone modificabili */
.service-card-static{cursor:default}.service-card-static:hover{transform:none}.service-icon-image{width:34px!important;height:34px!important;object-fit:contain!important;margin:0!important;border-radius:0!important}.service-icon-symbol{line-height:1}.trust-icon{display:block;font-size:1.35rem;line-height:1;margin-bottom:10px}.service-card .service-icon{margin-bottom:12px}

/* IDRO2 6.4: icone servizi modificabili dal Customizer */
.service-icon{overflow:hidden}.service-icon-image{display:block;max-width:36px!important;max-height:36px!important}.service-icon-symbol{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI Emoji","Apple Color Emoji",sans-serif;font-size:1.55rem}

/* Icone servizi 6.5 */
.service-icon-svg{display:inline-flex;width:32px;height:32px;color:#0b4f7c;align-items:center;justify-content:center}
.service-icon-svg svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.service-icon-image{width:32px;height:32px;object-fit:contain;display:block}
.service-icon-symbol{font-size:28px;line-height:1;display:inline-flex;align-items:center;justify-content:center}

/* IDRO2 6.7: anteprima e sito pubblico usano la stessa icona colorata. */
.service-icon-symbol{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;font-size:1.75rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}

/* Partner Viessmann 6.8 */
.partner-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}.partner-actions .text-link{margin-top:0}.partner-logo-panel{padding:50px 34px}.partner-logo-large{display:block;max-width:min(460px,88%);max-height:130px!important;width:auto!important;height:auto!important;object-fit:contain!important}.partner-visual.partner-logo-panel img{border-radius:0}


/* Partner Viessmann 6.9 */
.prose a.btn,.prose a.btn-red{color:#fff!important;text-decoration:none!important}
.partner-site-button{margin-top:8px;background:var(--red)!important;border-color:var(--red)!important;color:#fff!important;box-shadow:0 10px 24px rgba(227,30,36,.20)}
.partner-site-button:hover,.partner-site-button:focus{background:var(--navy)!important;border-color:var(--navy)!important;color:#fff!important}
.partner-badge{display:inline-flex;align-items:center;gap:8px;margin:24px 0 16px;padding:9px 14px;border-radius:999px;background:#fff1f2;color:var(--red);font-weight:900;border:1px solid #ffd3d6}
.partner-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;list-style:none!important;padding:0!important;margin:0 0 24px!important}
.partner-benefits li{position:relative;padding-left:28px;color:var(--navy);font-weight:750}
.partner-benefits li:before{content:'✓';position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-size:.72rem;font-weight:900}
@media(max-width:620px){.partner-benefits{grid-template-columns:1fr}.partner-site-button{width:100%}}


/* Partner Viessmann 7.0 */
.partner-badge-link{text-decoration:none!important;cursor:pointer;transition:transform .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}
.partner-badge-link:hover,.partner-badge-link:focus{background:var(--red);color:#fff!important;border-color:var(--red);transform:translateY(-1px)}
.partner-logo-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;text-decoration:none!important}
.partner-logo-link .partner-logo{transition:transform .2s ease,filter .2s ease}
.partner-logo-link:hover .partner-logo,.partner-logo-link:focus .partner-logo{transform:scale(1.035);filter:drop-shadow(0 8px 16px rgba(8,43,76,.12))}

/* IDRO2 v7.1 – logo 3D e responsive */
@media(max-width:760px){.custom-logo,.theme-brand-logo img{max-height:54px;max-width:230px}.header-row{min-height:72px}}
@media(max-width:420px){.custom-logo,.theme-brand-logo img{max-height:46px;max-width:190px}}

.footer-brand .custom-logo-link{display:inline-flex;background:#fff;padding:8px 12px;border-radius:12px;margin-bottom:15px}.footer-brand .custom-logo{margin:0;max-height:56px}
