/*
Theme Name:   Presenza Europe
Theme URI:    https://presenza-europe.com
Description:  Thème enfant de GeneratePress aux couleurs de Presenza Europe (bleu nuit et or, polices Jost et Public Sans hébergées sur le site).
Author:       NPO INVEST
Template:     generatepress
Version:      1.0.0
Requires at least: 6.4
Text Domain:  presenza
*/

@font-face{font-family:"Jost";src:url("fonts/jost-var.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Public Sans";src:url("fonts/publicsans-var.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --pz-navy:#13284A;
  --pz-ink:#13212C;
  --pz-muted:#4A5862;
  --pz-gold:#C9A55C;
  --pz-gold-light:#E2C786;
  --pz-gold-dark:#7A4E0E;
  --pz-gold-soft:#F2E7D3;
  --pz-bg:#F5F6F3;
  --pz-surface:#FFFFFF;
  --pz-line:#DCE0DC;
  --pz-display:"Jost",system-ui,sans-serif;
  --pz-body:"Public Sans","Helvetica Neue",Arial,sans-serif;
}

/* Base */
body{background:var(--pz-bg);color:var(--pz-ink);font-family:var(--pz-body);font-size:17px;line-height:1.6}
h1,h2,h3,h4,.main-title{font-family:var(--pz-display);font-weight:300;color:var(--pz-ink);text-wrap:balance}
h1{font-size:clamp(38px,5vw,62px);line-height:1.06}
h2{font-size:clamp(28px,3.4vw,44px);line-height:1.12}
h3{font-size:24px;line-height:1.2}
a{color:#1E4D6B}
a:hover,a:focus{color:var(--pz-ink)}
:focus-visible{outline:2px solid var(--pz-gold);outline-offset:2px}

/* En-tête GeneratePress */
.site-header{background:var(--pz-surface);border-bottom:1px solid var(--pz-line)}
.main-navigation,.main-navigation ul ul{background:transparent}
.main-navigation .main-nav ul li a{font-weight:500;color:var(--pz-ink);font-size:15px}
.main-navigation .main-nav ul li.current-menu-item>a{color:#1E4D6B;text-decoration:underline;text-underline-offset:6px}
.site-logo img{max-height:84px;width:auto}

/* Pages pleine largeur : le titre automatique est masqué, chaque page a son propre H1 */
.page .entry-header{display:none}
.separate-containers .inside-article{background:transparent;padding-left:0;padding-right:0}
.entry-content>*{max-width:1240px;margin-left:auto;margin-right:auto}

/* Sur-titre doré */
.pz-eyebrow{font-size:13px!important;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#1E4D6B;margin-bottom:8px}
.pz-band .pz-eyebrow{color:var(--pz-gold-light)}

/* Héros */
.pz-hero{padding:72px 0 56px}
.pz-hero p.pz-lede{font-size:19px;color:var(--pz-muted);max-width:620px}

/* Bande bleu nuit pleine largeur */
.pz-band{background:var(--pz-navy);color:#FFFFFF;padding:64px 32px;border-radius:12px}
.pz-band h2,.pz-band h3{color:#FFFFFF}
.pz-band p{color:#C9D2D8}

/* Cartes */
.pz-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin:24px auto}
.pz-card{background:var(--pz-surface);border:1px solid var(--pz-line);border-radius:10px;padding:24px;display:flex;flex-direction:column;gap:8px}
.pz-card h3{margin:0;font-size:23px}
.pz-card p{margin:0;font-size:15px;color:var(--pz-muted)}
.pz-card .pz-where{font-size:13px}
.pz-card .pz-price{color:var(--pz-ink);font-weight:600;margin-top:auto}
.pz-band .pz-card{background:#1B3560;border-color:#2C4A78}
.pz-band .pz-card h3{color:#FFFFFF}
.pz-band .pz-card p{color:#C9D2D8}

/* Encadré doré (Priorité, exemples, frais) */
.pz-note{background:var(--pz-gold-soft);border-radius:10px;padding:20px 24px;color:#3D2A08}
.pz-note strong{color:var(--pz-gold-dark)}

/* Tableaux de prix */
.pz-table{width:100%;border-collapse:collapse;font-size:15px;background:var(--pz-surface);border-radius:10px;overflow:hidden}
.pz-table th{text-align:left;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--pz-muted);padding:10px 14px;border-bottom:1px solid var(--pz-line)}
.pz-table td{padding:12px 14px;border-bottom:1px solid #ECEEEB;vertical-align:top}
.pz-table td.pz-num{text-align:right;font-weight:600;white-space:nowrap}
.pz-table-wrap{overflow-x:auto}

/* Étapes */
.pz-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;counter-reset:pz}
.pz-steps li{border-top:2px solid var(--pz-ink);padding-top:14px;counter-increment:pz}
.pz-steps li::before{content:counter(pz);display:block;font-family:var(--pz-display);font-weight:300;font-size:38px;line-height:1;color:#1E4D6B;margin-bottom:8px}

/* Boutons */
.wp-block-button .wp-block-button__link{background:#1E4D6B;color:#FFFFFF;border-radius:6px;font-weight:600;padding:14px 22px;min-height:44px}
.wp-block-button.pz-btn-gold .wp-block-button__link{background:var(--pz-gold);color:var(--pz-navy)}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--pz-ink);border:1px solid var(--pz-ink)}

/* Questions fréquentes */
.wp-block-details{border-bottom:1px solid var(--pz-line);padding:16px 0}
.wp-block-details summary{cursor:pointer;font-weight:600;font-size:18px}

/* Pied de page */
.pz-footer{background:var(--pz-navy);color:#C9D2D8;font-size:14px}
.pz-footer-inner{max-width:1240px;margin:0 auto;padding:48px 32px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px 48px}
.pz-footer a{color:#C9D2D8}
.pz-footer a:hover{color:#FFFFFF}
.pz-wordmark{display:inline-flex;flex-direction:column;align-items:center;gap:6px;color:var(--pz-gold)}
.pz-wordmark .pz-name{font-family:var(--pz-display);font-weight:300;font-size:40px;line-height:1}
.pz-wordmark .pz-name i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--pz-gold);margin-left:3px}
.pz-wordmark .pz-europe{font-family:var(--pz-display);font-weight:500;font-size:11px;letter-spacing:.72em;margin-left:.72em}
.pz-wordmark .pz-tag{font-family:var(--pz-display);font-weight:300;font-size:14px;color:var(--pz-gold-light)}
.pz-footer nav{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:flex-start}
.site-info{background:var(--pz-navy);color:#8FA0AE;font-size:13px}
.site-info a{color:#8FA0AE}

@media (max-width:768px){
  .pz-hero{padding:40px 0 32px}
  .pz-band{padding:40px 20px;border-radius:0}
  .entry-content>*{padding-left:16px;padding-right:16px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
