/* Pages pratiques LOAD (29/09/2026) : contact, notre méthode, mentions légales, 404, recherche, pages anglaises */

/* Haut de page */
.pp-hero{padding-block:var(--e-6) var(--e-5)}
.pp-hero h1{max-width:none;font-size:clamp(1.7rem,4.6vw,2.9rem);line-height:1.08}
.pp-hero .hero__h1-suite{max-width:none}
main>section[id]{scroll-margin-top:56px}
.pp-hero--court{padding-bottom:var(--e-5)}
.pp-chapo{font-size:var(--t-chapo);max-width:56ch}
.pp-cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e-3);margin-top:var(--e-4)}
.pp-cta--centre{justify-content:center}
.pp-micro{margin-top:var(--e-3);font-size:var(--t-legende);color:var(--c-texte-doux)}
.pp-micro a{white-space:nowrap}
.pp-insecable{white-space:nowrap}
.pp-cache{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pp-code{font-family:var(--f-titre);font-weight:700;font-size:1rem;letter-spacing:.12em;color:var(--c-accent);margin-bottom:var(--e-2)}

/* Titres et textes de section */
.pp-titre{text-align:center;margin-bottom:var(--e-4)}
.pp-intro{max-width:var(--largeur-texte);margin:0 auto var(--e-5);text-align:center}
.pp-definition{max-width:var(--largeur-texte);margin:0 auto var(--e-5);text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.pp-definition--seule{margin-bottom:0}
.pp-texte{max-width:var(--largeur-texte);margin-inline:auto}
.pp-texte p{text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.pp-texte p+p{margin-top:var(--e-3)}
.pp-texte ul{margin-top:var(--e-3);padding-left:1.3em}
.pp-texte li+li{margin-top:var(--e-2)}
.pp-note{max-width:var(--largeur-texte);margin:var(--e-4) auto 0;text-align:center;font-size:var(--t-petit);color:var(--c-texte-doux)}

/* Cartes */
.pp-cartes{display:grid;gap:var(--e-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.pp-cartes--2{grid-template-columns:repeat(2,1fr);max-width:960px;margin-inline:auto}
.pp-cartes--3{grid-template-columns:repeat(3,1fr)}
.pp-cartes--4{grid-template-columns:repeat(4,1fr)}
.pp-carte{display:flex;flex-direction:column;background:var(--c-blanc);border:1px solid var(--c-bordure);border-radius:12px;padding:var(--e-4) var(--e-4) var(--e-4);text-align:center}
.pp-carte--bleu{background:var(--c-carte-bleu);border-color:transparent}
.pp-carte--vert{background:var(--c-carte-vert);border-color:transparent}
.pp-carte--jaune{background:var(--c-carte-jaune);border-color:transparent}
.pp-carte--rose{background:var(--c-carte-rose);border-color:transparent}
.pp-carte--hive{background:linear-gradient(var(--c-hive-noir),var(--c-hive-noir)) padding-box,linear-gradient(135deg,var(--c-hive-cyan),var(--c-hive-violet)) border-box;border:1px solid transparent;color:#c9ccd6}
.pp-carte__surtitre{font-family:var(--f-menu);font-weight:600;font-size:var(--t-mini);letter-spacing:var(--ls-capitales);text-transform:uppercase;color:var(--c-orange)}
.pp-carte--hive .pp-carte__surtitre{color:var(--c-hive-cyan)}
.pp-carte h3{font-size:var(--t-carte-titre);color:var(--c-secondaire)}
.pp-carte--hive h3{color:var(--c-blanc)}
.pp-carte__prix{margin-top:var(--e-1);font-family:var(--f-titre);font-weight:700;font-size:var(--t-base);color:var(--c-primaire);white-space:nowrap}
.pp-carte--hive .pp-carte__prix{color:var(--c-blanc)}
.pp-carte__texte{margin-top:var(--e-3);font-size:var(--t-petit);text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.pp-carte__texte--centre,.pp-cartes--3 .pp-carte__texte{text-align:center;-webkit-hyphens:manual;hyphens:manual}
.pp-cartes--3 .pp-carte h3{font-size:1.15rem}
.pp-carte__liste{margin:var(--e-3) 0 0;padding-left:1.2em;text-align:left;font-size:var(--t-petit)}
.pp-carte__liste li+li{margin-top:var(--e-1)}
.pp-carte__pourqui{margin-top:var(--e-3);font-size:var(--t-legende);color:var(--c-texte-doux)}
.pp-carte__cta{margin-top:auto;padding-top:var(--e-4)}
.pp-carte--hive .btn{background:#fff;color:#050507;border-color:#fff;box-shadow:0 6px 20px rgb(120 90 255 / 28%)}
.pp-carte--hive .btn:hover{background:#fff;color:#050507;border-color:#fff}
.pp-carte__n{display:inline-grid;place-items:center;width:2.4rem;height:2.4rem;margin:0 auto var(--e-2);border-radius:50%;background:var(--c-carte-bleu);color:var(--c-secondaire);font-family:var(--f-titre);font-weight:700}
@media (width<=1000px){.pp-cartes--4{grid-template-columns:repeat(2,1fr)}}
@media (width<=900px){.pp-cartes--3{grid-template-columns:1fr;max-width:620px;margin-inline:auto}}
@media (width<=700px){.pp-cartes--2,.pp-cartes--4{grid-template-columns:1fr}}
@media (width<=480px){.pp-carte{padding:var(--e-4) var(--e-3)}.pp-carte__prix{white-space:normal}}
@media (width<=700px){.pp-carte__texte{text-align:left;-webkit-hyphens:manual;hyphens:manual}.pp-cartes--3 .pp-carte__texte{text-align:center}}
/* Cartes à 3 colonnes étroites (tablette) : les retours forcés ne tiennent plus, on laisse le texte couler */
@media (901px<=width<=1180px){.pp-cartes--3 .pp-carte__texte .br-bureau{display:none}}

/* Étapes : reprise de .parcours sur 3 colonnes */
.parcours.parcours--3{grid-template-columns:repeat(3,1fr);margin-top:0}
.section--gris .parcours__etape{background:var(--c-blanc);border:1px solid var(--c-bordure)}
@media (width<=900px){.parcours.parcours--3{grid-template-columns:1fr;max-width:620px;margin-inline:auto}}

/* Visuel du haut de page : fiche sur le modèle des tarifs */
.tarifs--bref div.tarif:hover .tarif__nom{color:inherit}
.tarifs--bref .tarif__prix{color:var(--c-secondaire)}
.tarifs--bref a.tarif .tarif__prix{color:var(--c-accent)}
.tarifs__pied a{text-decoration:none}.tarifs__pied a:hover{text-decoration:underline}
.pp-articles{text-align:left}.pp-articles .carte__image picture{height:100%}
.tarifs__pied--bleu{background:var(--c-carte-bleu)}
.tarifs__pied--bleu strong{color:var(--c-secondaire)}
/* Un mot protégé dans un titre de fiche ne doit pas hériter du style du sous-titre (.tarifs__titre span) */
.tarifs__titre .pp-insecable{font:inherit;letter-spacing:normal;text-transform:none;color:inherit;margin:0;display:inline}
/* Pied de fiche cliquable (404 : rendez-vous) */
a.tarifs__pied.pp-pied-lien{color:var(--c-texte);text-decoration:none;transition:background-color .18s,box-shadow .18s}
a.tarifs__pied.pp-pied-lien strong{white-space:nowrap}
a.tarifs__pied.pp-pied-lien:hover{box-shadow:0 6px 16px rgb(0 48 63 / 10%)}
a.tarifs__pied.pp-pied-lien:hover strong{text-decoration:underline}
a.tarifs__pied.pp-pied-lien:focus-visible{outline:3px solid #9fc0ff;outline-offset:2px}
.pp-micro+.pp-micro{margin-top:var(--e-1)}
@media (width<=480px){.tarifs--bref .tarif__prix{white-space:normal;text-align:right}.tarifs__pied{flex-wrap:wrap;gap:.2rem .8rem}}
.pp-tag{display:inline-block;padding:.15rem .6rem;border-radius:99px;font-family:var(--f-menu);font-size:var(--t-mini);font-weight:600;white-space:nowrap}
.pp-tag--humain{background:var(--c-carte-vert);color:#1c5c33}
.pp-tag--outil{background:#050507;color:#fff}
.pp-tag--outil span{background:linear-gradient(90deg,#3d8bff,#9d5cff);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}

/* Coordonnées */
.pp-coord{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e-3);max-width:1040px;margin:0 auto}
.pp-coord__carte{background:var(--c-gris-clair);border-radius:12px;padding:var(--e-4) var(--e-3);text-align:center}
.pp-coord__label{font-family:var(--f-menu);font-weight:600;font-size:var(--t-mini);letter-spacing:var(--ls-capitales);text-transform:uppercase;color:var(--c-texte-doux)}
.pp-coord__valeur{margin-top:var(--e-1);font-weight:700;color:var(--c-primaire);overflow-wrap:anywhere}
.pp-coord__note{margin-top:var(--e-1);font-size:var(--t-legende);color:var(--c-texte-doux)}
.pp-coord__valeur a{text-decoration:none}
.pp-coord__valeur a:hover{text-decoration:underline}
@media (width<=1000px){.pp-coord{grid-template-columns:1fr;max-width:560px}}

/* Formulaire : présentation seulement */
.pp-form{max-width:680px;margin:var(--e-5) auto 0}
.pp-form .fbrevo[data-astro-cid-uiflwvrb]{border-radius:14px;padding:var(--e-5) var(--e-4);box-shadow:0 14px 34px rgb(0 48 63 / 8%)}
.pp-form .fbrevo__titre[data-astro-cid-uiflwvrb]{text-align:center;font-size:var(--t-carte-titre);color:var(--c-secondaire)}
.pp-form .fbrevo__intro{text-align:center;font-size:var(--t-petit);color:var(--c-texte-doux);margin-bottom:var(--e-4)}
.pp-form .fbrevo__form[data-astro-cid-uiflwvrb] .btn[data-astro-cid-uiflwvrb]{justify-self:center;min-width:12rem}
@media (width<=480px){.pp-form .fbrevo[data-astro-cid-uiflwvrb]{padding:var(--e-4) var(--e-3)}.pp-form .fbrevo__form[data-astro-cid-uiflwvrb] .btn[data-astro-cid-uiflwvrb]{justify-self:stretch}}

/* Agenda Microsoft Bookings (chargé au clic) : styles du composant, repris pour les pages qui ne les embarquent pas */
.pp-agenda{margin-top:var(--e-5)}
.cadre[data-astro-cid-exddsyit]{border:1px solid var(--c-bordure);border-radius:var(--rayon);background:var(--c-gris-clair);overflow:hidden}
.cadre__invite[data-astro-cid-exddsyit]{padding:var(--e-5) var(--e-4);text-align:center;max-width:56ch;margin-inline:auto}
.cadre__service[data-astro-cid-exddsyit]{font-family:var(--f-titre);font-weight:700;font-size:var(--t-chapo);color:var(--c-primaire)}
.cadre__desc[data-astro-cid-exddsyit]{margin-top:var(--e-2)}
.cadre__note[data-astro-cid-exddsyit]{margin-top:var(--e-3);font-size:var(--t-legende);color:var(--c-texte-doux)}
.cadre__invite[data-astro-cid-exddsyit] .btn[data-astro-cid-exddsyit]{margin-top:var(--e-4);cursor:pointer;border:0}
.cadre__repli[data-astro-cid-exddsyit]{margin-top:var(--e-3);font-size:var(--t-legende);color:var(--c-texte-doux)}
.cadre[data-astro-cid-exddsyit] iframe{border:0;width:100%;display:block}
.pp-agenda .cadre[data-astro-cid-exddsyit]{background:var(--c-blanc);border-radius:14px;box-shadow:0 14px 34px rgb(0 48 63 / 8%)}

/* Offres (reprise des cartes de l'accueil) */
.pp-offres ul{grid-template-columns:repeat(4,1fr)}
@media (width<=1000px){.pp-offres ul{grid-template-columns:repeat(2,1fr)}}
@media (width<=560px){.pp-offres ul{grid-template-columns:1fr}}

/* Questions fréquentes */
.pp-faq{max-width:900px;margin:0 auto}
.pp-faq__item{border:1px solid var(--c-bordure);border-radius:var(--rayon);margin-bottom:var(--e-2);background:var(--c-blanc)}
/* Le summary reste en bloc : en flex, chaque mot protégé (span .pp-insecable) devenait un élément séparé */
.pp-faq__item summary{display:block;position:relative;padding:var(--e-3) var(--e-3) var(--e-3) calc(var(--e-3) + 1.4em);font-family:var(--f-menu);font-size:var(--t-petit);color:var(--c-primaire);cursor:pointer;list-style:none}
.pp-faq__item summary::-webkit-details-marker{display:none}
.pp-faq__item summary::marker{content:""}
.pp-faq__item summary:before{content:"+";position:absolute;left:var(--e-3);top:50%;transform:translateY(-50%);color:var(--c-accent);font-weight:700;font-size:var(--t-chapo);line-height:1}
.pp-faq__item[open] summary:before{content:"\2212"}
.pp-faq__item summary:hover{color:var(--c-accent)}
.pp-faq__reponse{padding:0 var(--e-3) var(--e-3) calc(var(--e-3) + 1.4em);font-size:var(--t-petit)}
.pp-faq__reponse p{text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.pp-faq__reponse p+p{margin-top:var(--e-2)}
.pp-faq__reponse ul{margin-top:var(--e-2);padding-left:1.2em}
@media (width<=480px){.pp-faq__reponse{padding-left:var(--e-3)}.pp-faq__reponse p{text-align:left}}

/* Lectures liées */
.pp-liens{list-style:none;margin:0;padding:0;display:grid;gap:var(--e-3);grid-template-columns:repeat(3,1fr)}
.pp-liens li{display:flex}
.pp-lien{display:flex;flex-direction:column;width:100%;padding:var(--e-4);border-radius:12px;text-align:center;text-decoration:none;color:var(--c-texte);transition:transform .18s,box-shadow .18s}
.pp-lien:hover{color:var(--c-texte);transform:translateY(-2px);box-shadow:0 10px 24px rgb(0 48 63 / 12%)}
.pp-lien:focus-visible{outline:3px solid #9fc0ff;outline-offset:2px}
.pp-lien strong{font-family:var(--f-titre);font-size:var(--t-chapo);line-height:1.3;color:var(--c-secondaire)}
.pp-lien span{margin-top:var(--e-2);font-size:var(--t-petit)}
.pp-lien--bleu{background:var(--c-carte-bleu)}.pp-lien--vert{background:var(--c-carte-vert)}.pp-lien--jaune{background:var(--c-carte-jaune)}.pp-lien--rose{background:var(--c-carte-rose)}
.pp-lien--blanc{background:var(--c-blanc);border:1px solid var(--c-bordure)}
@media (width<=900px){.pp-liens{grid-template-columns:1fr;max-width:620px;margin-inline:auto}}

/* Bloc final d'appel au rendez-vous */
.pp-final{margin-top:var(--e-6);padding:var(--e-5) var(--e-4);border-radius:16px;background:var(--c-carte-bleu);text-align:center}
.pp-final h2{font-size:var(--t-h3);color:var(--c-secondaire)}
.pp-final p{max-width:60ch;margin:var(--e-2) auto 0}
.pp-final .pp-cta{justify-content:center;max-width:none;margin-top:var(--e-4)}
.pp-section--fin{padding-bottom:0}
.pp-final--seul{margin-top:0}

/* Pastilles de recherche */
.pp-puces{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:var(--e-3)}
.pp-puce{display:inline-block;padding:.45rem .9rem;border:1px solid var(--c-bordure);border-radius:99px;background:var(--c-blanc);font-family:var(--f-menu);font-size:var(--t-legende);font-weight:600;color:var(--c-secondaire);text-decoration:none;transition:border-color .18s,color .18s}
.pp-puce:hover{border-color:var(--c-accent);color:var(--c-accent)}
.pp-rubriques{list-style:none;margin:0;padding:0;display:grid;gap:var(--e-2);grid-template-columns:repeat(4,1fr)}
.pp-rubriques a{display:block;height:100%;padding:var(--e-3);border-radius:10px;background:var(--c-blanc);border:1px solid var(--c-bordure);text-align:center;font-family:var(--f-menu);font-weight:600;font-size:var(--t-petit);color:var(--c-secondaire);text-decoration:none;transition:border-color .18s,box-shadow .18s,color .18s}
.pp-rubriques a:hover{border-color:var(--c-accent);color:var(--c-accent);box-shadow:0 6px 16px rgb(0 48 63 / 8%)}
@media (width<=900px){.pp-rubriques{grid-template-columns:repeat(2,1fr)}}

/* Recherche Pagefind */
.pp-recherche{--pagefind-ui-scale:.9;--pagefind-ui-primary:var(--c-accent);--pagefind-ui-text:var(--c-primaire);--pagefind-ui-background:var(--c-blanc);--pagefind-ui-border:var(--c-bordure);--pagefind-ui-tag:var(--c-gris-clair);--pagefind-ui-border-width:1px;--pagefind-ui-border-radius:10px;--pagefind-ui-font:var(--f-texte);margin-top:var(--e-4)}
.pp-recherche .pagefind-ui__search-input{box-shadow:0 10px 26px rgb(0 48 63 / 8%)}
.pp-recherche .pagefind-ui__result-link{color:var(--c-secondaire)}
.pp-recherche .pagefind-ui__button{border-radius:10px}
.pp-form-recherche{display:flex;gap:var(--e-2);margin-top:var(--e-4);max-width:560px}
.pp-form-recherche input{flex:1;min-width:0;padding:.75em 1em;border:1px solid var(--c-bordure);border-radius:10px;background:var(--c-blanc);font-size:var(--t-base)}
.pp-form-recherche .btn{flex-shrink:0;border:0}

/* Mentions légales */
.pp-legal{max-width:var(--largeur-texte);margin-inline:auto}
.pp-legal>h2{font-size:var(--t-prose-h2);scroll-margin-top:calc(72px + var(--e-4))}
.pp-legal>h2:not(:first-child){margin-top:var(--e-6)}
.pp-legal p{margin-top:var(--e-3);text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.pp-legal h3{margin-top:var(--e-4);font-size:var(--t-h4);color:var(--c-secondaire)}
.pp-legal dl{margin:var(--e-3) 0 0;display:grid;grid-template-columns:16rem 1fr;border-top:1px solid var(--c-bordure)}
.pp-legal dt,.pp-legal dd{margin:0;padding:.7rem 0;border-bottom:1px solid var(--c-bordure);font-size:var(--t-petit)}
.pp-legal dt{font-family:var(--f-menu);font-weight:600;color:var(--c-primaire);padding-right:var(--e-3)}
.pp-legal ul{margin-top:var(--e-3);padding-left:1.3em}
.pp-legal li+li{margin-top:var(--e-1)}
.pp-legal #gestion-consentement{margin-top:var(--e-3);padding:var(--e-4) var(--e-3);border-radius:12px;background:var(--c-blanc);border:1px solid var(--c-bordure);text-align:center}
.pp-legal #gestion-consentement p{margin-top:0;text-align:center}
.pp-legal #gestion-consentement .btn{margin-top:var(--e-2)}
@media (width<=560px){.pp-legal dl{grid-template-columns:1fr}.pp-legal dt{padding-bottom:0;border-bottom:0}.pp-legal dd{padding-top:.2rem}.pp-legal p{text-align:left}}

/* Mobile */
@media (width<=560px){
.pp-hero{padding-block:var(--e-4)}
.pp-chapo{font-size:var(--t-base)}
.pp-cta{gap:var(--e-2)}
.pp-hero .pp-cta .btn,.pp-final .pp-cta .btn{flex:1 1 100%;text-align:center}
.pp-final{padding:var(--e-4) var(--e-3)}
.pp-definition{text-align:left}
.pp-texte p{text-align:left}
.pp-form-recherche{flex-direction:column}
}
