/*
Theme Name: Panorama Performance
Theme URI: https://panoramaperformance.fr
Author: Panorama Performance
Description: Thème en blocs du site Panorama Performance.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: panorama
*/

:root { --pp-or:#E5A93B; --pp-anth:#3C3B3D; --pp-gris:#ABACAE; --pp-clair:#EFEEF0; }
body { -webkit-font-smoothing: antialiased; }
.pp-main { padding-top:0; padding-bottom:0; }
.pp-main > .wp-block-post-content > * { margin-block-start:0; }
.pp-pad { padding-top:4rem; padding-bottom:4rem; }
img { height:auto; }

/* En-tête */
.pp-header { padding-top:1rem; padding-bottom:1rem; position:sticky; top:0; z-index:50; }
.admin-bar .pp-header { top:32px; }
.pp-header .wp-block-site-logo img { max-width:250px; }
.pp-nav { font-size:.82rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; gap:1.4rem; }
.pp-nav a:hover { color:var(--pp-or) !important; }
.pp-nav .wp-block-navigation__submenu-container { background:#fff !important; color:var(--pp-anth) !important; border:0 !important; box-shadow:0 10px 30px rgba(0,0,0,.15); padding:.5rem 0; min-width:260px !important; }
.pp-nav .wp-block-navigation__submenu-container a { padding:.55rem 1.1rem !important; text-transform:none; font-weight:500; }
.pp-nav .wp-block-navigation__submenu-container a:hover { color:var(--pp-or) !important; }

/* Pied de page */
.pp-footer { padding-top:3rem; padding-bottom:2rem; margin-top:0; }
.pp-footer a { text-decoration:none; }
.pp-logo-footer img { max-width:230px; }
.pp-footer-sep { border-color:rgba(60,59,61,.25) !important; margin:1.5rem 0 1rem; }

/* Sections importées */
.pp-sec { padding-top:4.5rem; padding-bottom:4.5rem; margin-block-start:0 !important; }
.pp-sec .wp-block-columns { gap:3.5rem; }
.pp-sec .wp-block-image img { border-radius:2px; }
.pp-sous-titre { font-family:var(--wp--preset--font-family--roboto); text-transform:uppercase; letter-spacing:3px; font-weight:500; font-size:1.15rem; color:var(--pp-gris); margin-bottom:.5rem !important; }

/* Bandeaux de tête de page */
.pp-accroche-page-modele-2, .pp-accroche-page { padding:0; }
.pp-accroche-page-modele-2 > .wp-block-columns { gap:0; margin:0; align-items:stretch; }
.pp-accroche-page-modele-2 > .wp-block-columns > .wp-block-column:first-child { padding:5rem max(20px, calc((100vw - 1140px)/2)) 5rem max(20px, calc((100vw - 1140px)/2)); padding-right:3rem; display:flex; flex-direction:column; justify-content:center; }
.pp-accroche-page-modele-2 > .wp-block-columns > .wp-block-column:last-child .wp-block-image { margin:0; height:100%; }
.pp-accroche-page-modele-2 > .wp-block-columns > .wp-block-column:last-child img { width:100%; height:100%; min-height:380px; object-fit:cover; display:block; border-radius:0; }
.pp-accroche-page-modele-2 h1 { font-weight:400; }
.pp-accroche-page { padding:5rem 0 3rem; }

/* Accueil */
.pp-accroche-home { position:relative; min-height:78vh; display:flex; flex-direction:column; justify-content:center; background:var(--pp-anth) url("/wp-content/uploads/2026/11/header_Background_home-1.webp") left center/cover no-repeat; color:#fff; }
.pp-accroche-home h1 { font-size:clamp(2.6rem, 6vw, 5rem); font-weight:400; letter-spacing:.06em; }
.pp-accroche-home p { font-size:clamp(1.2rem, 2vw, 1.6rem); max-width:640px; font-weight:300; }
.pp-zone-4-home-1 { background:var(--pp-anth) url("/wp-content/uploads/2026/11/motifs_topographie-scaled.webp") center/cover no-repeat; color:#fff; }
.pp-zone-4-home-1 .pp-sous-titre { color:#fff; }
.pp-avantages { display:flex; flex-wrap:wrap; gap:.8rem; padding:0; list-style:none; }
.pp-avantages li { background:var(--pp-or); color:#fff; border-radius:999px; padding:.7rem 1.4rem; font-size:1.25rem; font-weight:600; }
.pp-zone-5-home-1 .wp-block-quote { background:var(--pp-clair); border:0; padding:2rem; border-radius:10px; margin:0; font-style:italic; }
.pp-zone-5-home-1 .wp-block-quote cite { font-style:normal; display:block; margin-top:1rem; }
.pp-zone-3-home-1 .pp-etape { border-left:3px solid var(--pp-or); padding-left:1.2rem; }

/* Méthode / FAQ */
.pp-bloc-faq-modele-2 { background:var(--pp-anth) url("/wp-content/uploads/2026/11/fond-gris-approche.webp") center/contain no-repeat; color:#fff; padding-top:7rem; padding-bottom:7rem; }
.pp-bloc-faq-modele-2 .wp-block-details { background:#fff; color:var(--pp-anth); border-radius:10px; padding:1.2rem 1.4rem; margin-bottom:1rem; }
.pp-bloc-faq-modele-2 .wp-block-details summary { font-size:1.2rem; font-weight:600; cursor:pointer; }
.pp-bloc-faq-modele-2 .wp-block-details summary .pp-etape-num { display:block; font-family:var(--wp--preset--font-family--roboto); font-size:.85rem; letter-spacing:3px; color:var(--pp-or); }

/* Chiffres */
.pp-chiffre { font-size:clamp(3rem,6vw,4.5rem); font-weight:700; color:#F9B233; line-height:1; margin-bottom:.3rem !important; }

/* Appels à l'action */
.pp-bloc-cta-1 { background:var(--pp-clair); }
.pp-bloc-cta-2 > .wp-block-columns { background:var(--pp-clair); padding:4rem; position:relative; align-items:center; }
.pp-bloc-cta-2 > .wp-block-columns::after { content:""; position:absolute; top:0; right:0; width:25%; height:100%; background:url("/wp-content/uploads/2026/11/element-1.webp") no-repeat center/cover; z-index:0; }
.pp-bloc-cta-2 > .wp-block-columns > * { position:relative; z-index:1; }
.wp-block-button__link { display:inline-flex; align-items:center; gap:1rem; }
.wp-block-button__link::after { content:"→"; padding-left:1rem; border-left:1px solid currentColor; font-weight:400; }

/* Cartes, listes, témoignages */
.pp-bloc-card .wp-block-column { background:var(--pp-clair); padding:2rem; border-radius:10px; }
.pp-bloc-temoignage .wp-block-quote, .pp-temoignage { background:var(--pp-clair); border:0; border-radius:10px; padding:2rem; }
.pp-texte-2-cols .wp-block-columns { gap:3rem; }
.pp-a-reconnecter { border:2px dashed var(--pp-or); padding:1rem 1.2rem; background:#fff8ea; color:var(--pp-anth); font-size:.95rem; }

/* Responsive */
@media (max-width: 781px) {
  .pp-sec { padding-top:3rem; padding-bottom:3rem; }
  .pp-accroche-page-modele-2 > .wp-block-columns > .wp-block-column:first-child { padding:3rem 20px; }
  .pp-bloc-cta-2 > .wp-block-columns { padding:2rem 1.2rem; }
  .pp-bloc-cta-2 > .wp-block-columns::after { display:none; }
  .admin-bar .pp-header { top:46px; }
}
