/* Histoires futées — pages : espaces pros, FAQ, contact, informations légales,
   page standard, 404, recherche, commentaires. Maquettes : Espace pros, FAQ, Contact, Infos legales. */

/* -------------------------------------------------------------------------
   Formulaires de messages (contact, espaces pros) — champs de 48 px de la maquette
   ---------------------------------------------------------------------- */
.hf-pform{display:grid;gap:16px}
.hf-pform__field{display:grid;gap:6px}
.hf-pform__field[hidden]{display:none}
.hf-pform__label{font:700 14px/1.2 var(--font-brand)}
.hf-pform__opt{font-weight:400;color:color-mix(in oklab,#012C2D 64%,#F2F2F2)}
.hf-pform .hf-input{height:48px;font:400 16px/1 var(--font-brand)}
.hf-pform textarea.hf-input{height:auto;min-height:0;padding:14px 18px;border-radius:24px;font:400 16px/1.5 var(--font-brand);resize:vertical}
.hf-pform .hf-btn{justify-self:start}
.hf-pform__route{margin:-6px 0 0;font-size:14px;color:color-mix(in oklab,#012C2D 64%,#F2F2F2)}
.hf-msg-notice{margin:0;font-size:13px;line-height:1.45;color:color-mix(in oklab,#012C2D 80%,#F2F2F2)}
.hf-msg-notice .hf-todo{font-size:11px}
.hf-pform-sent{display:grid;gap:10px}
.hf-pform-sent strong{font:900 22px/1.2 var(--font-brand)}
.hf-pform-sent--lg strong{font-size:24px}

/* -------------------------------------------------------------------------
   Espace pros
   ---------------------------------------------------------------------- */
.hf-pros-hero{padding:20px}
.hf-pros-hero__box{position:relative;max-width:1240px;margin:0 auto;border-radius:36px;overflow:hidden;padding:clamp(40px,7vw,80px) clamp(24px,6vw,72px)}
.hf-pros-hero__fond{position:absolute;inset:0;background-size:cover;background-position:center}
.hf-pros-hero__in{position:relative;max-width:720px;display:grid;gap:18px}
.hf-pros-hero__kicker{margin:0;font:700 13px/1.3 var(--font-brand);letter-spacing:.08em;text-transform:uppercase}
.hf-pros-hero h1{margin:0;font:900 clamp(38px,6vw,60px)/1.05 var(--font-brand);letter-spacing:-.02em;text-wrap:balance}
.hf-pros-hero__intro{display:grid;gap:10px;font-size:19px;text-wrap:pretty}
.hf-pros-hero__intro>*{margin:0}
.hf-pros-tabs{display:flex;gap:8px;flex-wrap:wrap}
.hf-pros-tab{display:inline-flex;align-items:center;height:44px;padding:0 20px;box-sizing:border-box;border-radius:999px;border:2px solid #012C2D;background:rgba(255,255,255,.85);color:#012C2D;font:700 15px/1 var(--font-brand);text-decoration:none;transition:background var(--dur-fast),transform var(--dur-fast) var(--ease-bounce)}
.hf-pros-tab:hover{background:#fff;color:#012C2D;transform:translateY(-1px)}
.hf-pros-tab[aria-current="page"]{background:#F1C22A;box-shadow:0 3px 0 #012C2D}

.hf-pros-cards,.hf-pros-spaces{max-width:1120px;margin:0 auto;padding:40px 20px;box-sizing:border-box;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.hf-pros-spaces+.hf-pros-cards{padding-top:0}
.hf-pros-card{background:#fff;border-radius:24px;padding:28px;display:grid;gap:10px;align-content:start;min-width:0}
.hf-pros-card--wide{grid-column:1/-1;display:block}
.hf-pros-card>*{margin:0}
.hf-pros-card h2{font:900 22px/1.2 var(--font-brand);letter-spacing:-.02em}
.hf-pros-card h3{font:700 18px/1.25 var(--font-brand)}
.hf-pros-card ul,.hf-pros-card ol{padding-inline-start:1.2em}
.hf-pros-card li{margin:.2em 0}

/* Vue d'ensemble : une carte par espace */
.hf-pros-space{position:relative;overflow:hidden;border-radius:36px;padding:32px 28px;min-height:260px;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:#012C2D;text-decoration:none;transition:transform var(--dur-base) var(--ease-bounce)}
.hf-pros-space:hover{color:#012C2D;transform:translateY(-4px)}
.hf-pros-space>*:not(.hf-pros-space__fond){position:relative}
.hf-pros-space__fond{position:absolute;inset:0;background-size:cover;background-position:center}
.hf-pros-space__tab{font:700 13px/1 var(--font-brand);letter-spacing:.08em;text-transform:uppercase}
.hf-pros-space__title{font:900 clamp(26px,3vw,32px)/1.1 var(--font-brand);letter-spacing:-.02em}
.hf-pros-space__text{font-size:17px;text-wrap:pretty}
.hf-pros-space__go{margin-top:auto}
.hf-pros-space:hover .hf-pros-space__go{box-shadow:0 4px 0 var(--hf-encre);transform:translateY(-1px)}

/* Téléchargements */
.hf-pros-dl{max-width:1120px;margin:0 auto;padding:0 20px 40px;box-sizing:border-box}
.hf-pros-dl h2{margin:0 0 18px;font:900 clamp(26px,3.5vw,32px)/1.1 var(--font-brand);letter-spacing:-.02em}
.hf-pros-dl__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.hf-pros-dl__item{height:100%;box-sizing:border-box;background:#fff;border-radius:24px;padding:18px 20px;display:flex;align-items:center;gap:14px;color:#012C2D;text-decoration:none}
a.hf-pros-dl__item{transition:box-shadow var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-bounce)}
a.hf-pros-dl__item:hover{color:#012C2D;box-shadow:0 0 0 2px #012C2D;transform:translateY(-2px)}
.hf-pros-dl__icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;flex:none;color:#012C2D}
.hf-pros-dl__txt{flex:1;display:grid;gap:2px;min-width:0}
.hf-pros-dl__txt strong{font:700 16px/1.2 var(--font-brand)}
.hf-pros-dl__note{font-size:14px;color:color-mix(in oklab,#012C2D 64%,#F2F2F2)}

/* Formulaire */
.hf-pros-form{max-width:1120px;margin:0 auto;padding:0 20px 80px;box-sizing:border-box;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:28px;align-items:start;scroll-margin-top:120px}
.hf-pros-hero+.hf-pros-dl,.hf-pros-hero+.hf-pros-form{padding-top:20px}
.hf-pros-form__side{display:grid;gap:14px}
.hf-pros-form__side>*{margin:0}
.hf-pros-form__side h2{font:900 clamp(26px,3.5vw,34px)/1.1 var(--font-brand);letter-spacing:-.02em}
.hf-pros-form__mail{font:700 16px/1.3 var(--font-brand);overflow-wrap:anywhere}
.hf-pros-form__card{background:#fff;border-radius:24px;padding:clamp(22px,4vw,32px)}
.hf-pros-more{max-width:1120px;margin:0 auto;padding:0 20px 80px;box-sizing:border-box;font:700 17px/1.4 var(--font-brand)}

/* -------------------------------------------------------------------------
   FAQ
   ---------------------------------------------------------------------- */
.hf-faq{max-width:820px;margin:0 auto;padding:56px 20px 80px;box-sizing:border-box}
.hf-faq__title{margin:0 0 12px;font:900 clamp(38px,6vw,56px)/1.05 var(--font-brand);letter-spacing:-.02em;text-wrap:balance}
.hf-faq__intro{font-size:18px;margin:0 0 12px}
.hf-faq__intro>*{margin:0 0 10px}
.hf-faq__lead{margin:0 0 28px;font-size:18px}
.hf-faq__tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.hf-faq__tabs[hidden]{display:none}
.hf-faq__tab{height:44px;padding:0 20px;border-radius:999px;border:2px solid #012C2D;background:#fff;color:#012C2D;font:700 15px/1 var(--font-brand);cursor:pointer;transition:background var(--dur-fast),transform var(--dur-fast) var(--ease-bounce)}
.hf-faq__tab:hover{background:color-mix(in oklab,#F1C22A 25%,#fff);transform:translateY(-1px)}
.hf-faq__tab[aria-selected="true"]{background:#F1C22A;box-shadow:0 3px 0 #012C2D}
.hf-faq__panel{display:grid;gap:12px}
.hf-faq__panel[hidden]{display:none}
.hf-faq__panel+.hf-faq__panel{margin-top:36px}
.hf-faq__group{margin:0 0 4px;font:900 clamp(24px,3vw,28px)/1.15 var(--font-brand);letter-spacing:-.01em}
/* Avec les onglets (JavaScript actif), le titre du groupe reste lisible par les lecteurs d'écran. */
.hf-faq__groups.is-tabs .hf-faq__group{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
.hf-faq__groups.is-tabs .hf-faq__panel+.hf-faq__panel{margin-top:0}
.hf-faq__panel:focus-visible{outline-offset:6px;border-radius:24px}
.hf-faq__item{background:#fff;border-radius:24px;padding:0 24px;scroll-margin-top:120px}
.hf-faq__item summary{list-style:none;cursor:pointer;padding:20px 0;display:flex;justify-content:space-between;gap:16px;align-items:center;font:700 18px/1.3 var(--font-brand)}
.hf-faq__item summary::-webkit-details-marker{display:none}
.hf-faq__item summary::marker{content:""}
.hf-faq__item summary svg{transition:transform var(--dur-base) var(--ease-soft)}
.hf-faq__item[open] summary svg{transform:rotate(180deg)}
.hf-faq__a{padding:0 0 22px;display:grid;gap:10px;text-wrap:pretty}
.hf-faq__a>*{margin:0}
.hf-faq__a ul,.hf-faq__a ol{padding-inline-start:1.2em}
.hf-faq__note>*{margin:0 0 10px}

/* -------------------------------------------------------------------------
   Contact
   ---------------------------------------------------------------------- */
.hf-contact{max-width:1120px;margin:0 auto;padding:56px 20px 80px;box-sizing:border-box;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:40px;align-items:start}
.hf-contact__side{display:grid;gap:16px}
.hf-contact__side>p,.hf-contact__side>h1{margin:0}
.hf-contact h1{font:900 clamp(38px,6vw,56px)/1.05 var(--font-brand);letter-spacing:-.02em;text-wrap:balance}
.hf-contact__intro{display:grid;gap:10px;font-size:18px}
.hf-contact__intro>*{margin:0}
.hf-contact__card{background:#fff;border-radius:24px;padding:24px;display:grid;gap:8px}
.hf-contact__card strong{font:900 18px/1.2 var(--font-brand)}
.hf-contact__card address{font-style:normal;line-height:1.6}
.hf-contact__card a{overflow-wrap:anywhere}
.hf-contact__faq{font-size:15px}
.hf-contact__form{background:#fff;border-radius:24px;padding:clamp(22px,4vw,34px);scroll-margin-top:120px;min-width:0}

/* -------------------------------------------------------------------------
   Informations légales
   ---------------------------------------------------------------------- */
.hf-legal{max-width:1120px;margin:0 auto;padding:56px 20px 80px;box-sizing:border-box;display:grid;gap:36px;align-items:start}
.hf-legal-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.hf-legal-nav a{display:block;padding:12px 18px;border-radius:999px;border:2px solid transparent;color:#012C2D;font:700 15px/1.2 var(--font-brand);text-decoration:none;text-align:start;transition:background var(--dur-fast)}
.hf-legal-nav a:hover{color:#012C2D;background:rgba(255,255,255,.6)}
.hf-legal-nav a[aria-current="page"]{background:#fff;border-color:#012C2D}
@media (min-width:800px){
  .hf-legal{grid-template-columns:minmax(220px,1fr) 2fr}
  .hf-legal-nav{position:sticky;top:96px}
  .admin-bar .hf-legal-nav{top:128px}
  .hf-legal-nav ul{display:grid}
}
.hf-legal__doc{min-width:0;background:#fff;border-radius:24px;padding:clamp(24px,5vw,48px);display:grid;gap:18px}
.hf-legal__doc h1{margin:0;font:900 clamp(32px,5vw,44px)/1.1 var(--font-brand);letter-spacing:-.02em;text-wrap:balance}
.hf-legal__text h2{margin:26px 0 8px;font:900 22px/1.2 var(--font-brand);letter-spacing:-.01em}
.hf-legal__text h3{margin:20px 0 6px;font:700 18px/1.3 var(--font-brand)}
.hf-legal__text p{margin:0 0 12px;text-wrap:pretty}
.hf-legal__text>:last-child{margin-bottom:0}
.hf-legal__text ul,.hf-legal__text ol{margin:0 0 12px;padding-inline-start:1.3em}
.hf-legal__text a{overflow-wrap:anywhere}
.hf-legal-draft,.hf-prose .hf-legal-draft{margin:0 0 8px;padding:10px 16px;border-radius:16px;background:color-mix(in oklab,#F1C22A 30%,#F2F2F2);font-size:14px;line-height:1.45}
.hf-legal-form{padding:16px 20px;border-radius:16px;background:#F2F2F2}
.hf-legal__cookies{justify-self:start}
.hf-legal__date{margin:0;font-size:14px;color:color-mix(in oklab,#012C2D 64%,#F2F2F2)}

/* -------------------------------------------------------------------------
   Page standard et gabarit de repli
   ---------------------------------------------------------------------- */
.hf-page{max-width:820px;margin:0 auto;padding:56px 20px 80px;box-sizing:border-box}
.hf-page--shop{max-width:1120px}
.hf-index .hf-page{padding-bottom:40px}
.hf-page__title{margin:0 0 28px;font:900 clamp(38px,6vw,56px)/1.05 var(--font-brand);letter-spacing:-.02em;text-wrap:balance}
.hf-page__thumb{margin:0 0 32px;border-radius:24px;overflow:hidden}
.hf-page__thumb img{display:block;width:100%;height:auto}
.hf-page__pages{margin-top:32px;display:flex;gap:8px;flex-wrap:wrap;font:700 15px/1 var(--font-brand)}

.hf-index__in{max-width:1120px;margin:0 auto;padding:56px 20px 80px;box-sizing:border-box}
.hf-index__desc{margin:-12px 0 28px;font-size:18px;max-width:720px}
.hf-index__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px}
.hf-index__card{height:100%;box-sizing:border-box;background:#fff;border-radius:24px;padding:24px;display:grid;gap:8px;align-content:start}
.hf-index__card>*{margin:0}
.hf-index__card h2{font:900 22px/1.2 var(--font-brand);letter-spacing:-.02em}
.hf-index__card h2 a{text-decoration:none}
.hf-index__card h2 a:hover{text-decoration:underline}
.hf-index__meta{font-size:14px;color:color-mix(in oklab,#012C2D 64%,#F2F2F2)}
.hf-index__empty{display:grid;gap:16px;max-width:620px}
.hf-index__empty p{margin:0;font-size:18px}
.hf-index .nav-links{margin-top:36px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.hf-index .page-numbers{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 14px;box-sizing:border-box;border-radius:999px;border:2px solid #012C2D;background:#fff;color:#012C2D;font:700 15px/1 var(--font-brand);text-decoration:none}
.hf-index .page-numbers.current{background:#F1C22A;box-shadow:0 3px 0 #012C2D}
.hf-index .page-numbers.dots{border-color:transparent;background:none}
.hf-index a.page-numbers:hover{background:color-mix(in oklab,#F1C22A 25%,#fff);color:#012C2D}

/* -------------------------------------------------------------------------
   Formulaire de recherche (get_search_form)
   ---------------------------------------------------------------------- */
.hf-searchform{display:flex;gap:8px;flex-wrap:wrap}
.hf-searchform .hf-input{flex:1 1 220px;min-width:0}

/* -------------------------------------------------------------------------
   404
   ---------------------------------------------------------------------- */
.hf-404__hero{padding:20px}
.hf-404__box{position:relative;max-width:1240px;margin:0 auto;border-radius:36px;overflow:hidden;background:#C59CEC;padding:clamp(40px,7vw,88px) clamp(24px,6vw,72px)}
.hf-404__fond{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hf-404__in{position:relative;max-width:640px;display:grid;gap:18px}
.hf-404__in>*{margin:0}
.hf-404__code{font:900 clamp(88px,16vw,168px)/.85 var(--font-brand);letter-spacing:-.04em;color:#fff;text-shadow:0 6px 0 #012C2D}
.hf-404 h1{font:900 clamp(34px,5.5vw,56px)/1.05 var(--font-brand);letter-spacing:-.02em;text-wrap:balance}
.hf-404__text{font-size:19px;text-wrap:pretty}
.hf-404__actions{display:flex;gap:10px;flex-wrap:wrap}
.hf-404__links{max-width:1120px;margin:0 auto;padding:40px 20px 80px;box-sizing:border-box}
.hf-404__links h2{margin:0 0 18px;font:900 clamp(26px,3.5vw,32px)/1.1 var(--font-brand);letter-spacing:-.02em}
.hf-404__links ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.hf-404-link{height:100%;box-sizing:border-box;background:#fff;border-radius:24px;padding:18px 20px;display:flex;align-items:center;gap:14px;color:#012C2D;text-decoration:none;transition:box-shadow var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-bounce)}
.hf-404-link:hover{color:#012C2D;box-shadow:0 0 0 2px #012C2D;transform:translateY(-2px)}
.hf-404-link__icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;flex:none;box-shadow:inset 0 0 0 2px rgba(1,44,45,.12)}
.hf-404-link__txt{flex:1;display:grid;gap:2px;min-width:0}
.hf-404-link__txt strong{font:700 16px/1.2 var(--font-brand)}
.hf-404-link__txt span{font-size:14px;color:color-mix(in oklab,#012C2D 64%,#F2F2F2)}
[dir="rtl"] .hf-404-link>svg:last-child{transform:scaleX(-1)}

/* -------------------------------------------------------------------------
   Commentaires
   ---------------------------------------------------------------------- */
.hf-comments{max-width:820px;margin:0 auto;padding:0 20px 80px;box-sizing:border-box}
.hf-comments__title,.hf-comments .comment-reply-title{margin:0 0 18px;font:900 clamp(24px,3vw,28px)/1.15 var(--font-brand);letter-spacing:-.01em}
.hf-comments .comment-reply-title small{margin-inline-start:10px;font:700 14px/1 var(--font-brand)}
.hf-comments__list,.hf-comments .children{list-style:none;margin:0 0 32px;padding:0;display:grid;gap:14px}
.hf-comments .children{margin:14px 0 0;padding-inline-start:clamp(16px,4vw,40px)}
.hf-comments .comment-body{background:#fff;border-radius:24px;padding:20px 22px}
.hf-comments .comment-meta{display:flex;justify-content:space-between;gap:8px 12px;align-items:center;flex-wrap:wrap;font-size:14px}
.hf-comments .comment-author{display:flex;align-items:center;gap:10px;font:700 16px/1.2 var(--font-brand)}
.hf-comments .comment-author .avatar{border-radius:50%;flex:none}
.hf-comments .comment-author .says{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
.hf-comments .comment-metadata a{color:color-mix(in oklab,#012C2D 64%,#F2F2F2);text-decoration:none}
.hf-comments .comment-awaiting-moderation{display:block;margin-top:8px;font-size:14px;font-style:normal}
.hf-comments .comment-content{margin-top:10px}
.hf-comments .comment-content p{margin:0 0 10px}
.hf-comments .reply{margin-top:6px}
.hf-comments .reply a{font:700 14px/1 var(--font-brand)}
.hf-comments .bypostauthor>.comment-body{box-shadow:inset 0 0 0 2px #C59CEC}
.hf-comments .pingback .comment-body,.hf-comments .trackback .comment-body{padding:14px 22px}
.hf-comments .comment-navigation .nav-links{display:flex;justify-content:space-between;gap:12px;margin:-16px 0 32px;font:700 15px/1.3 var(--font-brand)}
.hf-comments__closed{margin:0 0 24px;font:700 16px/1.4 var(--font-brand)}
.hf-comments__form{background:#fff;border-radius:24px;padding:clamp(22px,4vw,32px)}
.hf-comments .comment-form{display:grid;gap:14px}
.hf-comments .comment-form>p{margin:0}
.hf-comments .comment-form label{display:block;margin-bottom:6px;font:700 14px/1.2 var(--font-brand)}
.hf-comments .comment-form input[type="text"],.hf-comments .comment-form input[type="email"],.hf-comments .comment-form input[type="url"],.hf-comments .comment-form textarea{width:100%;box-sizing:border-box;height:48px;padding:0 18px;border:2px solid #012C2D;border-radius:999px;background:#fff;color:#012C2D;font:400 16px/1 var(--font-brand)}
.hf-comments .comment-form textarea{height:auto;min-height:140px;padding:14px 18px;border-radius:24px;line-height:1.5;resize:vertical}
.hf-comments .comment-form-cookies-consent{display:flex;gap:10px;align-items:flex-start}
.hf-comments .comment-form-cookies-consent input{margin-top:4px;width:18px;height:18px;accent-color:#012C2D;flex:none}
.hf-comments .comment-form-cookies-consent label{margin:0;font:400 14px/1.45 var(--font-brand)}
.hf-comments .comment-notes,.hf-comments .logged-in-as,.hf-comments__notice{font-size:14px;line-height:1.45;color:color-mix(in oklab,#012C2D 80%,#F2F2F2)}
.hf-comments .required{color:#012C2D}
.hf-comments .form-submit{margin:0}
