/*
Theme Name: Direction Energia
Theme URI: https://directionenergia.it
Author: Direction
Description: Tema per directionenergia.it, il verticale rinnovabili di Direction. Angoli netti, linee sottili, fasce piene, bianco, nero e lime.
Version: 1.4.3
Text Domain: direction-energia
Requires at least: 6.4
Requires PHP: 7.4
*/
@font-face{font-family:Archivo;font-weight:400;font-display:swap;src:url(assets/fonts/archivo-400.woff2) format("woff2")}
@font-face{font-family:Archivo;font-weight:600;font-display:swap;src:url(assets/fonts/archivo-600.woff2) format("woff2")}
@font-face{font-family:Archivo;font-weight:800;font-display:swap;src:url(assets/fonts/archivo-800.woff2) format("woff2")}
@font-face{font-family:Archivo;font-weight:900;font-display:swap;src:url(assets/fonts/archivo-900.woff2) format("woff2")}
:root{--bianco:#fff;--nero:#0A0A0A;--lime:#DDFF3C;--grigio:#F2F3F5;--linea:#D9DBE0;--testo2:#3A3A3A;--pad:24px;--max:1220px}
*{box-sizing:border-box;border-radius:0}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bianco);color:var(--nero);font-family:Archivo,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--nero);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.eyebrow{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
h1,h2,h3{font-weight:900;text-transform:uppercase;margin:0}
.eyebrow{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.btn{display:inline-block;background:var(--nero);color:var(--lime);padding:16px 30px;font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.btn--piccolo{padding:11px 22px}
.link{display:inline-block;font-weight:800;text-transform:uppercase;font-size:14px;letter-spacing:.04em;border-bottom:3px solid currentColor;padding-bottom:2px}
a:hover{opacity:.88}
.tratteggio{background:var(--grigio) repeating-linear-gradient(135deg,#E3E5EA 0,#E3E5EA 1px,transparent 1px,transparent 18px)}
/* header */
.sito-header .wrap{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between;padding-top:24px;padding-bottom:24px}
.logo{display:flex;align-items:center}.logo img{display:block;height:44px;width:auto}

.nav{display:flex;flex-wrap:wrap;gap:6px 28px;align-items:center;font-size:15px;font-weight:600}
.menu{display:flex;flex-wrap:wrap;gap:6px 28px;list-style:none;margin:0;padding:0}
.burger{display:none;background:none;border:0;padding:8px 0;font:inherit;font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.08em;cursor:pointer;color:inherit}
/* hero */
.hero{padding-top:64px;padding-bottom:56px}
.hero h1{margin:20px 0 0;max-width:1100px;font-size:clamp(44px,8vw,108px);line-height:.9;letter-spacing:-.05em}
.hero h1 span{background:var(--lime);padding:0 10px}
.hero p{margin:32px 0 0;max-width:620px;font-size:20px;color:var(--testo2)}
/* porte */
.porte{display:flex;flex-wrap:wrap}
.porta{flex:1 1 480px;min-height:320px;padding:48px 24px;display:flex;flex-direction:column;justify-content:space-between}
.porta--azienda{background:var(--lime);padding-left:max(24px,calc((100vw - 1220px) / 2 + 24px))}
.porta--candidato{background:var(--nero);color:var(--bianco);padding-left:48px}
.porta--candidato .eyebrow{color:var(--lime)}
.porta .titolo{font-weight:900;font-size:clamp(32px,4vw,46px);line-height:.96;letter-spacing:-.04em;text-transform:uppercase;max-width:460px}
.porta .link{margin-top:24px}
.porta--candidato .link{color:var(--lime)}
/* foto e video */
.foto{height:380px;overflow:hidden;position:relative}
.foto img,.foto video{width:100%;height:100%;object-fit:cover;display:block}
.foto--bn img,.foto--bn video{filter:grayscale(1) contrast(1.05)}
.foto--vuota{display:flex;align-items:flex-end;padding:24px}
.foto--vuota span{font-size:13px;color:var(--testo2);font-weight:800;text-transform:uppercase;letter-spacing:.06em;max-width:1220px;margin:0 auto;width:100%;padding:0 24px}
.video-hero{height:clamp(280px,44vw,640px)}
.video-pausa{position:absolute;right:20px;bottom:20px;background:var(--nero);color:var(--lime);border:0;padding:10px 16px;font:inherit;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
/* numeri */
.numeri{padding-top:64px;display:flex;flex-wrap:wrap;gap:32px 48px}
.numero{flex:1 1 200px;border-top:2px solid var(--nero);padding-top:16px}
.numero b{display:block;font-weight:900;font-size:64px;line-height:1;letter-spacing:-.045em}
.numero span{display:block;margin-top:6px;color:var(--testo2)}
.frase-fiducia{margin:32px 0 0;max-width:720px;color:var(--testo2)}
/* sezioni */
.blocco{padding-top:120px}
.titolo-sez{margin:12px 0 0;font-size:clamp(34px,5vw,60px);line-height:.93;letter-spacing:-.045em}
/* filiere */
.filiere-wrap{display:flex;flex-wrap:wrap;gap:32px 64px}
.filiere-wrap>div:first-child{flex:1 1 300px}
.filiere{flex:2 1 540px;border-top:2px solid var(--nero);list-style:none;margin:0;padding:0}
.filiera{display:flex;flex-wrap:wrap;gap:4px 24px;padding:20px 0;border-bottom:1px solid var(--linea);align-items:baseline}
.filiera .n{font-size:14px;font-weight:800;min-width:30px}
.filiera .nome{flex:1 1 200px;font-weight:900;font-size:28px;line-height:1.05;letter-spacing:-.03em;text-transform:uppercase}
.filiera .testo{flex:1 1 240px;font-size:15px;color:var(--testo2)}
.chiusura{margin-top:28px;display:flex;gap:16px 28px;align-items:center;flex-wrap:wrap}
.chiusura p{margin:0}
/* profili */
.aree{margin-top:44px;display:flex;flex-wrap:wrap;gap:36px 32px}
.area{flex:1 1 230px;border-top:2px solid var(--nero);padding-top:18px}
.area h3{font-size:22px;letter-spacing:-.02em;line-height:1.1}
.area ul{margin:12px 0 0;padding:0;list-style:none;color:var(--testo2);font-size:16px}
/* metodo */
.metodo{margin-top:120px;background:var(--nero);color:var(--bianco)}
.metodo .wrap{padding-top:80px;padding-bottom:80px;display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-end}
.metodo .eyebrow{color:var(--lime)}
.metodo .c1{flex:1 1 400px}
.metodo .c1 h2{font-size:clamp(32px,4.6vw,56px)}
.metodo .c2{flex:1 1 380px;color:#D4D4D4;font-size:18px}
/* offerte */
.testa-riga{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end}
.righe{margin:32px 0 0;border-top:2px solid var(--nero);list-style:none;padding:0}
.riga{display:flex;flex-wrap:wrap;gap:6px 24px;padding:24px 0;border-bottom:1px solid var(--linea);align-items:center}
.riga .t{flex:2 1 260px;font-weight:900;font-size:26px;letter-spacing:-.03em;text-transform:uppercase}
.riga .m{flex:1 1 150px;color:var(--testo2)}
.annunci{list-style:none!important;margin:32px 0 0!important;padding:0!important;border-top:2px solid var(--nero)}
.annuncio{list-style:none;margin:0!important;padding:28px 0;border-bottom:1px solid var(--linea)}
.annuncio-meta{display:flex;flex-wrap:wrap;gap:4px 20px;color:var(--testo2);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.annuncio h3{margin:10px 0 8px;font-weight:900;font-size:26px;line-height:1.1;letter-spacing:-.02em;text-transform:uppercase}
.annuncio p{margin:0 0 18px;max-width:760px}
.annuncio-azioni{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.annunci-vuoto{margin:32px 0 0;padding:28px;background:var(--grigio,#F2F3F5)}
.annunci-vuoto p{margin:0 0 18px;max-width:700px}
.pill{background:var(--lime);padding:6px 14px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
/* magazine */
.schede{margin-top:32px;display:flex;flex-wrap:wrap;gap:32px 24px}
.scheda{flex:1 1 300px}
.scheda .foto{height:210px}
.scheda .eyebrow{display:block;margin-top:14px;font-size:12px;letter-spacing:.1em}
.scheda h3{margin-top:6px;font-size:24px;line-height:1.05;letter-spacing:-.025em}
.scheda p{margin:8px 0 0;color:var(--testo2);font-size:16px}
/* contatti */
.contatti{margin-top:120px;background:var(--lime)}
.contatti .wrap{padding-top:72px;padding-bottom:72px;display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center;justify-content:space-between}
.contatti h2{flex:1 1 440px;font-size:clamp(36px,5.2vw,64px);line-height:.9;letter-spacing:-.05em}
.contatti .azioni{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center}
/* footer */
.sito-footer .wrap{padding-top:40px;padding-bottom:40px;display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;color:var(--testo2);font-size:15px}
.sito-footer a{text-decoration:underline}
.sito-footer p{margin:0 0 4px}
.sito-footer ul{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;margin:0;padding:0}
.sito-footer ul a{text-decoration:none}
/* pagine interne e articoli */
.pagina{padding-top:64px;padding-bottom:96px}
.pagina h1{font-size:clamp(36px,5.5vw,76px);line-height:.92;letter-spacing:-.045em;margin-bottom:32px;max-width:18ch}
.contenuto{max-width:760px}
.contenuto h2{font-size:clamp(24px,3vw,36px);margin:40px 0 12px;letter-spacing:-.025em;line-height:1}
.contenuto h3{margin:28px 0 8px;font-size:22px}
.contenuto a{box-shadow:inset 0 -3px 0 var(--lime)}
.contenuto ul{padding-left:1.1em}
.contenuto img{margin:24px 0}
.meta{display:block;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;margin-bottom:16px}
.paginazione{margin-top:40px}
.screen-reader-text{position:absolute;left:-9999px;top:0;background:var(--lime);color:var(--nero);padding:12px 16px;z-index:100;font-weight:800}
.screen-reader-text:focus{left:8px;top:8px}
@media (max-width:760px){
 .burger{display:block}
 .nav{width:100%;flex-direction:column;align-items:flex-start}
 .menu{display:none;flex-direction:column;width:100%;gap:0}
 .menu.aperto{display:flex}
 .menu a{display:block;padding:14px 0;border-top:1px solid var(--linea)}
 .hero{padding-top:40px}
 .porta--candidato{padding-left:24px}
 .blocco{padding-top:80px}
 .numero b{font-size:52px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* modulo contatti */
.modulo{max-width:720px;display:grid;gap:18px;margin-top:24px}
.modulo .campo{display:grid;gap:6px;font-weight:600;font-size:15px;border:0;padding:0;margin:0}
.modulo legend{font-weight:600;font-size:15px;margin-bottom:6px}
.modulo input[type=text],.modulo input[type=email],.modulo input[type=tel],.modulo select,.modulo textarea{font:inherit;font-weight:400;padding:12px 14px;border:1px solid var(--linea);background:var(--bianco);border-radius:0;width:100%}
.modulo input:focus,.modulo select:focus,.modulo textarea:focus{outline:2px solid var(--nero);outline-offset:0;border-color:var(--nero)}
.modulo .scelta{font-weight:400;margin-right:24px}
.modulo .privacy{font-size:15px}
.modulo .privacy a,.nota-candidati a{box-shadow:inset 0 -3px 0 var(--lime)}
.modulo .btn{border:0;cursor:pointer;justify-self:start;font-family:inherit}
.nota-candidati{margin:0;font-size:15px;color:var(--testo2);background:var(--grigio);padding:12px 16px}
.hp{position:absolute;left:-9999px}
.avviso{padding:16px 20px;font-weight:600}
.avviso--ok{background:var(--lime)}
.avviso--errore{background:var(--nero);color:var(--bianco)}
/* pagine interne */
.testa-pagina{padding-top:64px;padding-bottom:32px}
.testa-pagina h1{margin-top:16px;font-size:clamp(40px,7vw,96px);line-height:.9;letter-spacing:-.05em;max-width:14ch}
.testa-pagina .sommario{margin:28px 0 0;max-width:720px;font-size:20px;color:var(--testo2)}
.contenuto{max-width:820px;padding-bottom:16px}
.contenuto>p:first-child strong{font-size:20px;font-weight:600;line-height:1.45;display:block}
.contenuto h2{font-weight:900;text-transform:uppercase;font-size:clamp(26px,3.2vw,40px);letter-spacing:-.04em;line-height:.95;margin:56px 0 20px;padding-top:16px;border-top:2px solid var(--nero)}
.contenuto .wp-block-table{margin:0}
.contenuto table{width:100%;border-collapse:collapse;font-size:16px}
.contenuto th{text-align:left;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:0 16px 10px 0;border-bottom:2px solid var(--nero)}
.contenuto td{padding:16px 16px 16px 0;border-bottom:1px solid var(--linea);vertical-align:top}
.contenuto td:first-child{font-weight:800;width:32%}
.contenuto ul,.contenuto ol{padding-left:1.2em}
.contenuto li{margin:8px 0}
.contenuto .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin:32px 0}
.contenuto .wp-block-button__link{display:inline-block;background:var(--nero);color:var(--lime);padding:16px 30px;font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase;box-shadow:none}
.contenuto .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--nero);padding:0 0 2px;border-bottom:3px solid var(--nero)}
.porte--pagina{margin-top:72px}
.porta .testo-porta{font-weight:900;font-size:clamp(24px,2.6vw,32px);line-height:1.05;letter-spacing:-.03em;text-transform:uppercase;max-width:520px}
.altre-filiere .filiere{margin-top:16px}
.altre-filiere .filiera .nome{font-size:22px}
.spazio-fondo{height:96px}
article .contatti{margin-top:96px}
.filiera .freccia{flex:0 0 auto;margin-left:auto;text-align:right}
.single .testa-pagina h1{font-size:clamp(34px,5.4vw,72px);max-width:20ch;line-height:.95}
@media (max-width:760px){
 .sito-header{position:relative}
 .sito-header .wrap{flex-wrap:nowrap}
 .logo img{height:36px}

 .nav{width:auto;flex-direction:row;align-items:center}
 .nav>.btn{display:none}
 .menu.aperto{position:absolute;left:0;right:0;top:100%;z-index:60;background:var(--bianco);padding:0 24px 8px;border-bottom:2px solid var(--nero)}
}
.solo-mobile{display:none}
@media (max-width:760px){.solo-mobile{display:list-item}}
/* magazine */
.filtri{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.filtri a{padding:8px 14px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--grigio)}
.filtri a.attivo,.filtri a:hover{background:var(--nero);color:var(--lime);opacity:1}
.copertina{display:block;aspect-ratio:3/2;overflow:hidden;position:relative}
.copertina img{width:100%;height:100%;object-fit:cover}
.copertina--lime{background:var(--lime);color:var(--nero)}
.copertina--nero{background:var(--nero);color:var(--lime)}
.copertina--grigio{background:var(--grigio);color:var(--nero)}
.copertina-cat{position:absolute;left:20px;top:18px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.copertina-segno{position:absolute;right:16px;bottom:-0.18em;font-weight:900;font-size:clamp(120px,14vw,220px);line-height:1;letter-spacing:-.06em}
.copertina--grande .copertina-segno{font-size:clamp(160px,22vw,340px)}
.in-evidenza{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;border-top:2px solid var(--nero);padding-top:32px;margin-top:8px}
.in-evidenza .copertina{aspect-ratio:4/3}
.in-evidenza h2{font-size:clamp(30px,3.6vw,48px);line-height:.95;letter-spacing:-.045em;margin:12px 0 16px}
.in-evidenza p{margin:0 0 24px;color:var(--testo2);font-size:18px}
.schede--archivio{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 28px;margin-top:64px}
.schede--archivio .scheda .copertina{margin-bottom:16px}
.schede--archivio .scheda h3{font-size:22px}
.paginazione .nav-links{display:flex;gap:16px;font-weight:800;text-transform:uppercase;font-size:14px}
/* articolo */
.testa-articolo .eyebrow a:hover{box-shadow:inset 0 -3px 0 var(--lime)}
.meta-articolo{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:28px;padding-top:16px;border-top:1px solid var(--linea);font-size:14px;color:var(--testo2)}
.corpo-articolo{display:grid;grid-template-columns:minmax(0,820px) 1fr;gap:48px;align-items:start;padding-top:24px}
.corpo-articolo .contenuto{font-size:18px;line-height:1.65}
.condividi{position:sticky;top:24px;display:grid;gap:10px;justify-items:start;border-top:2px solid var(--nero);padding-top:14px;max-width:200px}
.condividi a{font-weight:700;font-size:15px}
.condividi a:hover{box-shadow:inset 0 -3px 0 var(--lime)}
.correlati{padding-top:96px}
.correlati .schede--archivio{margin-top:32px}
@media (max-width:960px){
 .in-evidenza{grid-template-columns:1fr;gap:24px}
 .schede--archivio{grid-template-columns:1fr 1fr}
 .corpo-articolo{grid-template-columns:1fr}
 .condividi{position:static;grid-auto-flow:column;max-width:none;gap:20px;align-items:center}
}
@media (max-width:560px){.schede--archivio{grid-template-columns:1fr}}
#magazine .scheda .copertina{margin-bottom:0}

/* chi siamo (1.4.2) */
.chi-siamo-testa{display:flex;flex-wrap:wrap;gap:24px 64px;align-items:flex-start}
.chi-siamo-testa>div:first-child{flex:1 1 420px}
.chi-siamo-testo{flex:1 1 420px;color:var(--testo2);font-size:18px}
.chi-siamo-testo p{margin:0 0 16px}
.chi-siamo-testo a{border-bottom:2px solid var(--lime)}
.chi-siamo-sotto{margin-top:64px}
.area p{margin:12px 0 0;color:var(--testo2);font-size:16px}
.chi-siamo-link{margin-top:40px;display:flex;flex-wrap:wrap;gap:16px 36px}
.aree--quattro .area{flex:1 1 200px}
/* porte su schermi stretti (1.4.3) */
@media (max-width:1000px){.porta{min-height:0;padding:44px 24px!important;justify-content:flex-start;gap:16px}.porta .link{margin-top:20px}}
