/*
Theme Name: In Contatto APS
Theme URI: https://incontattoaps.org
Description: Tema a blocchi leggero per il sito dell'Associazione In Contatto – APS. Header con logo e menu, footer con recapiti, tipografia Nunito incorporata (nessun font caricato da servizi esterni). Funziona insieme al plugin "In Contatto APS – Sito".
Author: Sviluppato per In Contatto – APS
Version: 1.1.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: in-contatto-aps
*/

/* ---------- Base ---------- */
:root{
	--ic-ink:var(--wp--preset--color--ink,#17324d);
	--ic-blue:var(--wp--preset--color--blue,#0b6fa4);
	--ic-orange:var(--wp--preset--color--orange,#b85c14);
	--ic-mist:var(--wp--preset--color--mist,#f2f7fa);
	--ic-muted:#4b5d6e;
	--ic-line:#dce5e9;
}
html{scroll-behavior:smooth;scroll-padding-top:92px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{text-underline-offset:.2em}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--ic-orange);outline-offset:3px;border-radius:3px}
img{height:auto}

/* ---------- Header ---------- */
.ic-header{background:#fff;border-bottom:1px solid var(--ic-line);position:sticky;top:0;z-index:50;padding-block:.55rem}
.admin-bar .ic-header{top:32px}
@media (max-width:782px){.admin-bar .ic-header{top:46px}}
.ic-header__inner{gap:1rem}
.ic-brand{gap:.7rem;align-items:center;flex-shrink:0}
.ic-brand .wp-block-site-logo{margin:0;line-height:0}
.ic-brand .wp-block-site-logo img{width:auto;height:52px;max-width:none}
.ic-brand .wp-block-site-title{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.15}
.ic-brand .wp-block-site-title a{text-decoration:none;color:var(--ic-ink)}
.ic-brand .wp-block-site-title::before{content:"Associazione";display:block;font-size:.62rem;letter-spacing:.2em;font-weight:700;color:var(--ic-muted)}

.ic-nav{font-size:.95rem;font-weight:700}
.ic-nav .wp-block-navigation-item__content{text-decoration:none;padding:.35rem .1rem;border-bottom:3px solid transparent}
.ic-nav .wp-block-navigation-item__content:hover{color:var(--ic-blue);border-bottom-color:currentColor}
.ic-nav .wp-block-navigation__container{gap:1.15rem}
.ic-nav .ic-nav__cta .wp-block-navigation-item__content{background:var(--ic-orange);color:#fff;border-radius:999px;padding:.5rem 1.1rem;border-bottom:0}
.ic-nav .ic-nav__cta .wp-block-navigation-item__content:hover{background:#9a4b0f;color:#fff}
/* voce attiva (la pagina corrente aggiunge una classe al body, vedi functions.php) */
body.ic-home .ic-nav .wp-block-navigation-item:first-child a{border-bottom-color:var(--ic-blue)}
body.ic-page-centro-in-contatto .ic-nav a[href*="/centro-in-contatto/"],
body.ic-page-corsi .ic-nav a[href*="/corsi/"],
body.ic-page-servizi .ic-nav a[href*="/servizi/"],
body.ic-page-news .ic-nav a[href*="/news/"],
body.ic-page-archivio .ic-nav a[href*="/archivio/"],
body.ic-page-contatti .ic-nav a[href*="/contatti/"]{border-bottom-color:var(--ic-blue)}

/* Il menu diventa "hamburger" sotto i 1024px (il blocco Navigazione lo fa di default solo sotto i 600px) */
@media (min-width:600px) and (max-width:1023px){
	.ic-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}
	.ic-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
}
.ic-nav .wp-block-navigation__responsive-container.is-menu-open{padding:1.5rem}
.ic-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:.4rem;font-size:1.15rem}
.ic-nav .wp-block-navigation__responsive-container.is-menu-open .ic-nav__cta{margin-top:.6rem}
@media (max-width:640px){
	.ic-brand .wp-block-site-logo img{height:44px}
	.ic-brand .wp-block-site-title{font-size:.9rem}
}

/* ---------- Intestazione di pagina (pagine interne) ---------- */
.ic-pagehead{padding-inline:max(1rem,var(--wp--style--root--padding-left,1rem));background:linear-gradient(180deg,var(--ic-mist),#fff);border-bottom:1px solid var(--ic-line);padding-block:clamp(1.6rem,4vw,3rem)}
.ic-pagehead .wp-block-post-title{margin:0;font-size:clamp(2rem,1.4rem + 2.6vw,3.2rem);letter-spacing:-.02em}
.ic-pagehead .wp-block-post-title::after{content:"";display:block;width:84px;height:6px;margin-top:.8rem;border-radius:3px;background:linear-gradient(90deg,#0b6fa4 0 25%,#e8892b 25% 50%,#7aa43a 50% 75%,#7a2f78 75%)}
.ic-pagebody{padding-bottom:clamp(2.5rem,6vw,5rem)}

/* ---------- Footer ---------- */
.ic-footer{background:var(--ic-ink);color:#e8eef4;padding-block:clamp(2rem,5vw,3.5rem) 1.5rem;margin-top:0}
.ic-footer a{color:#fff}
.ic-footer a:hover{color:#ffd9ad}
.ic-footer h2,.ic-footer h3{color:#fff}
.ic-footer__name{font-size:1.3rem;margin:0 0 .4rem}
.ic-footer__tag{font-style:italic;color:#cfe0ee;margin:0 0 .8rem}
.ic-footer h3{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:#cfe0ee;margin:0 0 .6rem;font-weight:800}
.ic-footer p{margin:.2rem 0;font-size:.98rem}
.ic-footer__links{list-style:none;margin:0;padding:0}
.ic-footer__links li{margin:.25rem 0}
.ic-footer__legal{border-top:1px solid rgba(255,255,255,.18);margin-top:1.8rem;padding-top:1rem;font-size:.85rem;color:#b9cadb}
.ic-footer__cols{gap:2rem}

/* ---------- 404 / blog ---------- */
.ic-center{text-align:center;padding-block:clamp(3rem,8vw,6rem)}
