/*
Theme Name: GTP Child
Template: twentytwentyfive
Version: 3.1
*/

:root {
    --gtp-primary: #1a4f7a;
    --gtp-light:   oklch(from var(--gtp-primary) 95% 0.03 h);
    --gtp-muted:   oklch(from var(--gtp-primary) 75% 0.08 h);
    --gtp-dark:    oklch(from var(--gtp-primary) 20% 0.05 h);
    --gtp-darker:  oklch(from var(--gtp-primary) 12% 0.03 h);
    --gtp-accent:  oklch(from var(--gtp-primary) 55% 0.15 h);
    --gtp-on-primary: #ffffff;
    --gtp-text:    oklch(from var(--gtp-primary) 15% 0.02 h);
    --gtp-text-muted: oklch(from var(--gtp-primary) 45% 0.04 h);
    --gtp-bg:      #ffffff;
    --gtp-bg-alt:  #f8f8f8;
}

@media (prefers-color-scheme: dark) {
    :root {
        --gtp-bg:      oklch(from var(--gtp-primary) 8%  0.04 h);
        --gtp-bg-alt:  oklch(from var(--gtp-primary) 12% 0.04 h);
        --gtp-light:   oklch(from var(--gtp-primary) 18% 0.05 h);
        --gtp-text:    oklch(from var(--gtp-primary) 92% 0.03 h);
        --gtp-text-muted: oklch(from var(--gtp-primary) 65% 0.05 h);
        --gtp-accent:  oklch(from var(--gtp-primary) 70% 0.15 h);
    }
}

body, h1, h2, h3, h4, p, a {
    font-family: 'Fira Sans', sans-serif;
}

body {
    background-color: var(--gtp-bg) !important;
    color: var(--gtp-text) !important;
}

/* Sezioni bianche */
.wp-block-group[id="chi-siamo"],
.wp-block-group[id="faq"] {
    background-color: var(--gtp-bg) !important;
}

/* Sezioni grigio alternato */
.wp-block-group[id="sicurezza"] {
    background-color: var(--gtp-bg-alt) !important;
}

/* Sezioni colore primario */
.wp-block-group[id="terminal"],
.wp-block-group[id="contatti"] {
    background-color: var(--gtp-primary) !important;
}

/* Card sicurezza sfondo chiaro */
.wp-block-group[id="sicurezza"] .wp-block-group {
    background-color: var(--gtp-bg) !important;
}

/* Box presenza - sfondo tenue */
.wp-block-group[id="chi-siamo"] .wp-block-group {
    background-color: var(--gtp-light) !important;
}

/* Testi generici */
p, li {
    color: var(--gtp-text) !important;
}

h2, h3, h4 {
    color: var(--gtp-primary) !important;
}

/* Testi su sfondo primario */
.wp-block-group[id="terminal"] h2,
.wp-block-group[id="terminal"] p,
.wp-block-group[id="contatti"] h2,
.wp-block-group[id="contatti"] p,
.wp-block-group[id="contatti"] a {
    color: var(--gtp-on-primary) !important;
}

/* Testi muted su sfondo primario */
.wp-block-group[id="terminal"] p[style*="color"],
.wp-block-group[id="contatti"] p[style*="color:#666"] {
    color: var(--gtp-muted) !important;
}

/* Hero */
.wp-block-cover__image-background {
    filter: grayscale(100%);
}

.wp-block-cover__background {
    mix-blend-mode: multiply;
    opacity: 0.82 !important;
    background-color: var(--gtp-primary) !important;
}

.wp-block-cover.alignfull:first-of-type {
    min-height: 100vh !important;
}

/* Header */
header.wp-block-template-part {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    background: transparent !important;
    transition: background 0.3s ease, box-shadow 0.3s ease !important;
}

.wp-block-template-part.scrolled {
    background: var(--gtp-bg) !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.12) !important;
}

.wp-block-template-part.scrolled a,
.wp-block-template-part.scrolled .wp-block-navigation-item__content {
    color: var(--gtp-primary) !important;
}

.wp-site-blocks > header:not(.scrolled) a,
.wp-site-blocks > header:not(.scrolled) .wp-block-navigation__responsive-container-open,
.wp-site-blocks > header:not(.scrolled) .wp-block-navigation__responsive-container-open svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

.wp-site-blocks > header + * {
    margin-top: 0 !important;
}


/* Footer colori via variabili */
footer.wp-block-template-part,
footer.wp-block-group {
    background-color: var(--gtp-darker) !important;
}

footer.wp-block-template-part p,
footer.wp-block-group p {
    color: var(--gtp-muted) !important;
}



    h2   { font-size: 1.6rem; }
}


    h2   { font-size: 1.6rem; }
}


    h2   { font-size: 1.6rem; }
}



/* Tipografia */
html, body {
    font-size: 20px !important;
}

:root {
    --wp--preset--font-size--small:    0.85rem !important;
    --wp--preset--font-size--medium:   1rem !important;
    --wp--preset--font-size--normal:   1rem !important;
    --wp--preset--font-size--large:    1.2rem !important;
    --wp--preset--font-size--x-large:  1.5rem !important;
    --wp--preset--font-size--xx-large: 2rem !important;
    --wp--preset--font-size--huge:     2.5rem !important;
}

p, li,
.wp-block-paragraph,
.wp-block-list li {
    font-size: 1rem !important;
    line-height: 1.8 !important;
}

h1 { font-size: 3.5rem !important; font-weight: 700 !important; line-height: 1.1 !important; }
h2 { font-size: 2rem   !important; font-weight: 700 !important; line-height: 1.2 !important; }
h3 { font-size: 1.4rem !important; font-weight: 600 !important; line-height: 1.3 !important; }
h4 { font-size: 1.1rem !important; font-weight: 600 !important; line-height: 1.4 !important; }

@media (max-width: 768px) {
    html, body { font-size: 18px !important; }
    h1 { font-size: 2.5rem !important; }
    h2 { font-size: 1.6rem !important; }
}

/* Icone sezioni */
.gtp-section-icon {
    display: block;
    text-align: center;
    margin-bottom: 16px;
}
.gtp-section-icon svg {
    fill: var(--gtp-primary, #1a4f7a);
    width: 64px;
    height: 64px;
    color: var(--gtp-primary, #1a4f7a);
}
.gtp-section-icon--light svg {
    fill: #ffffff;
    color: #ffffff;
}


/* === Tipografia base (gestita da customizer) === */
:root {
    --gtp-font-size-base: 20px;
    --gtp-font-size-h1: 3.5rem;
    --gtp-font-size-h2: 2rem;
    --gtp-font-size-h3: 1.4rem;
    --gtp-font-size-h4: 1.1rem;
    --gtp-line-height: 1.8;
}

/* gtp-typography */
.entry-content p,
.entry-content li,
.wp-block-group p,
.wp-block-group li {
    font-size: var(--gtp-font-size-base) !important;
    line-height: var(--gtp-line-height) !important;
    color: var(--gtp-text);
}

.entry-content h1, .wp-block-group h1 {
    font-size: var(--gtp-font-size-h1) !important;
    color: var(--gtp-primary);
}

.entry-content h2, .wp-block-group h2 {
    font-size: var(--gtp-font-size-h2) !important;
    color: var(--gtp-primary);
}

.entry-content h3, .wp-block-group h3 {
    font-size: var(--gtp-font-size-h3) !important;
    color: var(--gtp-primary);
}

.entry-content h4, .wp-block-group h4 {
    font-size: var(--gtp-font-size-h4) !important;
    color: var(--gtp-primary);
}

/* Eccezioni colore su sfondo scuro */
#terminal h2,
#terminal p {
    color: var(--gtp-on-primary) !important;
}

.wp-block-cover h1,
.wp-block-cover p {
    color: var(--gtp-on-primary) !important;
}
