/*
Theme Name: SELIPA HGDIY
Theme URI: https://selipahgdiy.com
Author: SELIPA HGDIY
Description: Thème sur mesure SELIPA HGDIY — communication, contenu, digital. Compatible WooCommerce et Contact Form 7.
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: selipa
*/
:root{color-scheme:light}
html,body{background:#FBF6F0}

body{margin:0;background:#FBF6F0;color:#2B1E18;font-family:'DM Mono',ui-monospace,Menlo,monospace}
a{color:inherit;text-decoration:none}
a:hover{color:inherit}
h1,h2,h3{margin:0;font-family:'Instrument Serif',Georgia,serif;font-weight:400;text-transform:uppercase;letter-spacing:-0.005em;text-wrap:balance}
h1 b,h2 b,h3 b{font-weight:400;font-style:italic;text-transform:none}
.serif{font-family:'Instrument Serif',Georgia,serif;font-weight:400}
p{margin:0;text-wrap:pretty}
.mono{font-family:'DM Mono',ui-monospace,Menlo,monospace;text-transform:uppercase;letter-spacing:0.16em}
.btn-peach{background:#F4C7AB;color:#2B1E18;transition:background .2s ease,color .2s ease}
.btn-peach:hover{background:#2B1E18;color:#FBF6F0}
.btn-ink{background:#2B1E18;color:#FBF6F0;transition:background .2s ease,color .2s ease}
.btn-ink:hover{background:#F4C7AB;color:#2B1E18}
.btn-line{border:1px solid #2B1E18;color:#2B1E18;transition:background .2s ease,color .2s ease}
.btn-line:hover{background:#2B1E18;color:#FBF6F0}
.btn-ghost{border:1px solid #FBF6F0;color:#FBF6F0;transition:background .2s ease,color .2s ease}
.btn-ghost:hover{background:#FBF6F0;color:#2B1E18}
.navlink{position:relative;padding:6px 0;white-space:nowrap}
.navlink::after{content:'';position:absolute;left:0;bottom:0;height:1px;width:0;background:#F4C7AB;transition:width .25s ease}
.navlink:hover::after{width:100%}
.link-u{border-bottom:1px solid #2B1E18;padding-bottom:3px;transition:border-color .2s ease}
.link-u:hover{border-bottom-color:#F4C7AB}
.card-up{transition:transform .25s ease,box-shadow .25s ease}
.card-up:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(43,30,24,.12)}
.marquee{display:flex;width:max-content;animation:slide 40s linear infinite}
.marquee-big{display:flex;width:max-content;animation:slide 70s linear infinite}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.spin{animation:spin 18s linear infinite;transform-origin:50% 50%}
@keyframes spin{to{transform:rotate(360deg)}}
.rise{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.rise-2{animation:rise .9s .15s cubic-bezier(.2,.7,.2,1) both}
.rise-3{animation:rise .9s .3s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.polaroid{transition:transform .35s ease}
.polaroid:hover{transform:rotate(0deg) scale(1.03)}
.post{transition:transform .25s ease}
.post:hover{transform:scale(1.02)}
@media (prefers-reduced-motion: reduce){.marquee,.marquee-big,.spin,.rise,.rise-2,.rise-3{animation:none}}
.flammes{transform-box:fill-box;transform-origin:50% 100%;animation:vacille 1.7s ease-in-out infinite alternate}
@keyframes vacille{0%{transform:scaleY(1) skewX(0deg)}35%{transform:scaleY(1.07) skewX(-2.5deg)}70%{transform:scaleY(.96) skewX(2deg)}100%{transform:scaleY(1.04) skewX(-1deg)}}
.coeur{transform-box:fill-box;transform-origin:50% 60%;animation:bat 2.6s ease-in-out infinite}
@keyframes bat{0%,60%,100%{transform:scale(1)}68%{transform:scale(1.06)}76%{transform:scale(.99)}84%{transform:scale(1.04)}}
@media (prefers-reduced-motion: reduce){.flammes,.coeur{animation:none}}
.nav-desk{display:flex}
.burger{display:none}
@media (max-width: 960px){.nav-desk{display:none}.burger{display:flex}}
.field{font-family:'DM Mono',monospace;font-size:15px;padding:14px 0;border:none;border-bottom:1px solid #2B1E18;background:transparent;color:#2B1E18;width:100%;box-sizing:border-box;border-radius:0}
.field:focus{outline:none;border-bottom-color:#E0A988}
.field::placeholder{color:#8A766A}



.navlink.actif::after{width:100%}
.menu-mobile{margin:0 clamp(16px,4vw,56px);background:#FBF6F0;color:#2B1E18;padding:24px;display:flex;flex-direction:column;gap:4px;box-shadow:0 18px 40px rgba(43,30,24,.25)}
.menu-mobile a{font-family:'Instrument Serif',Georgia,serif;font-size:30px;text-transform:uppercase;padding:6px 0}
.menu-mobile[hidden]{display:none!important}
.menu-mobile a.btn{padding:17px 30px}
.filtre{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:12px 18px;border-radius:999px;border:1px solid #2B1E18;background:transparent;color:#2B1E18;cursor:pointer}
.filtre[aria-pressed="true"]{background:#2B1E18;color:#FBF6F0}
.filtre:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid #E0A988;outline-offset:3px}
.ligne-service{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:10px 28px;align-items:baseline;padding:24px 4px;border-bottom:1px solid #E9D5C4}
.grille-services{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr));gap:12px;padding-top:18px}
.carte-service{background:#FFFFFF;border:1px solid #E9D5C4;border-radius:6px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s ease}
.carte-service:hover{border-color:#2B1E18}
.carte-titre{font-family:'Instrument Serif',Georgia,serif;font-size:19px;line-height:1.1}
.carte-desc{font-size:11px;line-height:1.6;color:#5A4A40}
.carte-pied{margin-top:auto;padding-top:8px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;border-top:1px solid #E9D5C4}
.carte-prix{font-family:'Instrument Serif',Georgia,serif;font-size:20px;line-height:1}
.carte-lien{font-size:10px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.prix{font-family:'Instrument Serif',Georgia,serif;font-size:30px;line-height:1}
.titre-service{font-family:'Instrument Serif',Georgia,serif;font-size:28px;line-height:1.05}
.desc{font-size:13px;line-height:1.85;color:#5A4A40}
.etiquette{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#7A675B}
.wrap{max-width:1280px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
.section{padding-block:clamp(72px,9vw,120px)}
.eyebrow{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:'';width:28px;height:1px;background:#E0A988}
.h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;text-transform:uppercase;font-size:clamp(38px,5vw,72px);line-height:.95;margin:0;text-wrap:balance}
.h2 i{text-transform:none}
.cta-row{display:flex;flex-wrap:wrap;gap:14px}
.btn{padding:17px 30px;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center}
.note-modele{background:#2B1E18;color:#F4C7AB;font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:10px 16px}


.prose{max-width:680px;font-size:15px;line-height:1.9;color:#2B1E18}
.prose p{margin:0 0 20px}
.prose h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:clamp(28px,3vw,38px);line-height:1.05;text-transform:uppercase;margin:44px 0 16px;scroll-margin-top:24px}
.prose ul{margin:0 0 22px;padding-left:20px}
.prose li{margin-bottom:8px}
.prose strong{font-weight:500;background:linear-gradient(transparent 62%,rgba(244,199,171,.7) 62%)}
.carte-article{display:flex;flex-direction:column;gap:12px}
.carte-article h3{font-size:26px;line-height:1.05;text-transform:none}
.sommaire a{display:block;padding:8px 0;border-bottom:1px solid #E9D5C4;font-size:12px;line-height:1.5}
.sommaire a:hover{color:#2B1E18;border-bottom-color:#2B1E18}
.check{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid #E9D5C4;font-size:14px;line-height:1.6;cursor:pointer}
.check input{width:20px;height:20px;margin:2px 0 0;accent-color:#2B1E18;flex:none}
.jauge{height:8px;background:#E9D5C4;border-radius:999px;overflow:hidden}
.jauge span{display:block;height:100%;background:#2B1E18;transition:width .3s ease}

/* ---------- WordPress ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.alignwide{max-width:1100px}.alignfull{max-width:none}
.prose img{max-width:100%;height:auto;border-radius:6px}
.prose a{border-bottom:1px solid #E0A988}
.page-contenu{max-width:900px;margin:0 auto;padding-inline:clamp(16px,4vw,48px);padding-block:clamp(48px,7vw,96px);font-size:15px;line-height:1.9}
.page-contenu h2,.page-contenu h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;text-transform:uppercase;line-height:1.05}
.pagination{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding-top:24px}
.pagination .page-numbers{font-family:'DM Mono',monospace;font-size:12px;padding:10px 16px;border:1px solid #2B1E18;border-radius:999px}
.pagination .current{background:#2B1E18;color:#FBF6F0}
/* ---------- Contact Form 7 ---------- */
.wpcf7 form{display:flex;flex-direction:column;gap:18px}
.wpcf7 label{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;display:flex;flex-direction:column;gap:4px}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 input[type=date],.wpcf7 input[type=number],.wpcf7 select,.wpcf7 textarea{font-family:'DM Mono',monospace;font-size:15px;padding:14px 0;border:none;border-bottom:1px solid #2B1E18;background:transparent;color:#2B1E18;width:100%;box-sizing:border-box;border-radius:0;text-transform:none;letter-spacing:0}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{outline:none;border-bottom-color:#E0A988}
.wpcf7 .wpcf7-acceptance label,.wpcf7 .wpcf7-list-item-label{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:0;text-transform:none;line-height:1.6;color:#5A4A40}
.wpcf7 .wpcf7-list-item{margin:0}
.wpcf7 .wpcf7-acceptance label{flex-direction:row;align-items:flex-start;gap:12px}
.wpcf7 input[type=checkbox]{width:18px;height:18px;accent-color:#2B1E18;margin:2px 0 0}
.wpcf7 input[type=submit]{font-family:'DM Mono',monospace;background:#2B1E18;color:#FBF6F0;border:none;border-radius:999px;padding:18px 30px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;align-self:flex-start}
.wpcf7 input[type=submit]:hover{background:#F4C7AB;color:#2B1E18}
.wpcf7 .wpcf7-checkbox{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:6px}
.wpcf7 .wpcf7-checkbox .wpcf7-list-item label{flex-direction:row;align-items:center;gap:8px}
.wpcf7 input[type=file]{font-family:'DM Mono',monospace;font-size:12px;text-transform:none;letter-spacing:0;padding:10px 0}
.wpcf7 .grille-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:18px}
.wpcf7-not-valid-tip{font-size:11px;color:#8A3B22;text-transform:none;letter-spacing:0}
.wpcf7 form .wpcf7-response-output{margin:0;padding:14px 16px;border-radius:6px;font-size:13px}
/* ---------- WooCommerce ---------- */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce button.button.alt,.woocommerce a.button.alt{font-family:'DM Mono',monospace!important;background:#2B1E18!important;color:#FBF6F0!important;border-radius:999px!important;padding:16px 28px!important;font-size:11px!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-weight:500!important}
.woocommerce .button:hover,.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover{background:#F4C7AB!important;color:#2B1E18!important}
.single_add_to_cart_button{background:#F4C7AB!important;color:#2B1E18!important}
.single_add_to_cart_button:hover{background:#2B1E18!important;color:#FBF6F0!important}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:#2B1E18!important;font-family:'Instrument Serif',Georgia,serif;font-size:44px!important;line-height:1}
.woocommerce .quantity .qty{font-family:'DM Mono',monospace;padding:12px;border:1px solid #2B1E18;border-radius:999px;width:72px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:#2B1E18!important;background:#F3E6DA!important;font-size:13px}
.woocommerce-message::before,.woocommerce-info::before{color:#2B1E18!important}
.woocommerce table.shop_table{border-radius:6px;border-color:#E9D5C4;font-size:13px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{font-family:'DM Mono',monospace;border:1px solid #E9D5C4;border-radius:6px;padding:12px;background:#FFFFFF}
.woocommerce .up-sells h2,.woocommerce .related h2,.cross-sells h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;text-transform:uppercase;font-size:clamp(28px,3vw,40px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:'Instrument Serif',Georgia,serif;font-size:22px!important}
.woocommerce ul.products li.product .price{color:#2B1E18!important;font-family:'Instrument Serif',Georgia,serif;font-size:20px!important}
.woocommerce span.onsale{background:#F4C7AB;color:#2B1E18}
.wc-block-components-button:not(.is-link){background:#2B1E18!important;color:#FBF6F0!important;border-radius:999px!important}
.produit-desc h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;text-transform:uppercase;font-size:24px;margin:28px 0 8px}
.produit-desc ul{padding-left:18px;line-height:2}

/* =========================================================
   ESPACE CLIENT / PORTAIL
   ========================================================= */
.woocommerce-account .page-contenu{max-width:1240px!important}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.woocommerce-account .woocommerce::before,.woocommerce-account .woocommerce::after{display:none}
.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content{float:none!important;width:auto!important}
.woocommerce-MyAccount-navigation{position:sticky;top:24px}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid #2B1E18}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid #E9D5C4}
.woocommerce-MyAccount-navigation a{display:block;padding:14px 0;font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#2B1E18;transition:padding .2s ease,color .2s ease}
.woocommerce-MyAccount-navigation a:hover{padding-left:8px;color:#E0A988}
.woocommerce-MyAccount-navigation li.is-active a{font-weight:600}
.woocommerce-MyAccount-navigation li.is-active a::before{content:'→ '}
.woocommerce-MyAccount-navigation-link--customer-logout a{color:#8C6A55}
@media (max-width:820px){.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-MyAccount-navigation{position:static}.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:6px 14px;border:none}.woocommerce-MyAccount-navigation li{border:none}.woocommerce-MyAccount-navigation a{padding:8px 0}}
.portail{display:flex;flex-direction:column;gap:clamp(24px,3vw,36px)}
.portail h3{font-family:'Instrument Serif',Georgia,serif;font-size:28px;line-height:1.05;text-transform:uppercase;margin:0 0 16px}
.portail-entete{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.portail-entete .h2{font-size:clamp(36px,5vw,64px);margin:0}
.portail-bloc{background:#FFFFFF;border:1px solid #E9D5C4;border-radius:6px;padding:clamp(20px,3vw,32px)}
.portail-bloc--sombre{background:#2B1E18;border-color:#2B1E18;color:#FBF6F0}
.portail-bloc--sombre .desc,.portail-bloc--sombre .portail-aide{color:#E8DCD2}
.portail-surtitre{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#F4C7AB;margin-bottom:10px}
.portail-statut-texte{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(24px,3vw,32px);line-height:1.15;margin:0 0 18px}
.portail-titre-ligne{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.portail-titre-ligne .link-u{font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.portail-badge{display:inline-flex;align-items:center;gap:8px;font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#F3E6DA;color:#2B1E18;align-self:flex-start}
.portail-badge::before{content:'';width:7px;height:7px;border-radius:50%;background:#8C6A55}
.portail-badge--action{background:#F4C7AB}.portail-badge--action::before{background:#2B1E18;animation:portail-pulse 1.6s ease-in-out infinite}
.portail-badge--livre,.portail-badge--termine{background:#E9D5C4}.portail-badge--livre::before,.portail-badge--termine::before{background:#2B1E18}
@keyframes portail-pulse{50%{opacity:.25}}
.portail-frise{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;counter-reset:etape}
.portail-frise li{display:flex;flex-direction:column;gap:8px;font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#8C6A55;position:relative}
.portail-frise-point{height:4px;border-radius:999px;background:#E9D5C4}
.portail-frise li.fait{color:#2B1E18}.portail-frise li.fait .portail-frise-point{background:#2B1E18}
.portail-frise li.en-cours{color:#2B1E18;font-weight:600}.portail-frise li.en-cours .portail-frise-point{background:linear-gradient(90deg,#E0A988 50%,#E9D5C4 50%)}
.portail-cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:16px}
.portail-carte{display:flex;flex-direction:column;gap:14px;background:#FBF6F0;border:1px solid #E9D5C4;border-radius:6px;padding:20px;color:#2B1E18}
.portail-carte-titre{font-family:'Instrument Serif',Georgia,serif;font-size:24px;line-height:1.1;text-transform:uppercase}
.portail-carte-pied{font-size:12px;line-height:1.6}
.portail-carte--offre .desc{font-size:12px}
.portail-prix{font-family:'Instrument Serif',Georgia,serif;font-size:22px;margin-top:auto}
.portail-actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.portail-actions a{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid rgba(251,246,240,.2);color:#FBF6F0;font-size:14px}
.portail-actions a:hover{color:#F4C7AB}
.portail-actions-projet{font-size:11px;color:#E8DCD2}
.portail-raccourcis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;background:transparent;border:none;padding:0}
.portail-raccourcis a{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid #E9D5C4;border-radius:6px;font-size:13px;color:#2B1E18;transition:border-color .2s ease}
.portail-raccourcis a:hover{border-color:#2B1E18}
.portail-raccourcis .mono{font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.portail-retour{font-size:11px;letter-spacing:.14em;text-transform:uppercase;align-self:flex-start}
.portail-briefs{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.portail-briefs li.recu{font-size:13px;color:#E8DCD2}
.portail-version,.portail-choix{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;margin-bottom:12px}
.portail-note{width:100%;font-size:13px;color:#E8DCD2;margin:4px 0 0}
.portail-details{width:100%}
.portail-details summary{list-style:none;cursor:pointer;display:inline-flex}
.portail-details summary::-webkit-details-marker{display:none}
.portail-details[open] summary{margin-bottom:16px}
.portail-form{display:flex;flex-direction:column;gap:14px}
.portail-label{display:flex;flex-direction:column;gap:6px;font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.portail-label textarea,.portail-label input{font-family:'DM Mono',monospace;font-size:14px;letter-spacing:0;text-transform:none;padding:12px 14px;border:1px solid #E9D5C4;border-radius:6px;background:#FBF6F0;color:#2B1E18;width:100%;box-sizing:border-box}
.portail-bloc--sombre .portail-label textarea{background:#FBF6F0}
.portail-aide{font-size:12px;line-height:1.6;color:#8C6A55;margin:0}
.portail-depot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:32px 20px;border:1.5px dashed #E0A988;border-radius:6px;background:#FBF6F0;cursor:pointer;transition:background .2s ease,border-color .2s ease}
.portail-depot.survol,.portail-depot:hover{background:#F3E6DA;border-color:#2B1E18}
.portail-depot input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.portail-depot-texte{font-size:14px}
.portail-depot-liste{font-size:12px;font-weight:600}
.portail-fichiers{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}
.portail-fichiers li{border:1px solid #E9D5C4;border-radius:6px;padding:10px 14px;background:#FBF6F0}
.portail-bloc--sombre .portail-fichiers li{background:rgba(251,246,240,.06);border-color:rgba(251,246,240,.2)}
.portail-fichiers a{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:inherit}
.portail-fichier-nom{font-size:13px;font-weight:600;word-break:break-all}
.portail-fichier-nom::before{content:'↓ '}
.portail-fichier-meta,.portail-fichier-note{font-size:11px;color:#8C6A55}
.portail-bloc--sombre .portail-fichier-meta{color:#E8DCD2}
.portail-fichier-note{display:block;margin-top:4px}
.portail-zip{font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.portail-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:24px}
.portail-messages{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:10px}
.portail-messages li{max-width:85%;padding:12px 16px;border-radius:6px;font-size:14px;line-height:1.6}
.portail-messages li p{margin:4px 0 0}
.portail-messages li.selipa{background:#F3E6DA;align-self:flex-start}
.portail-messages li.moi{background:#2B1E18;color:#FBF6F0;align-self:flex-end}
.portail-messages li.moi a{color:#F4C7AB}
.portail-message-auteur{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.portail-historique summary{cursor:pointer;list-style:none}.portail-historique summary h3{display:inline;margin:0}
.portail-histo{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:13px}
.portail-histo span{display:block;font-family:'DM Mono',monospace;font-size:10px;color:#8C6A55}
.portail-notice{padding:14px 18px;border-radius:6px;background:#E9D5C4;font-size:14px}
.portail-notice--alerte{background:#F4C7AB}
.portail-notice ul{margin:8px 0 0 18px}
.woocommerce-account .woocommerce-orders-table,.woocommerce-account table.shop_table{border-collapse:collapse;width:100%;font-size:13px}
.woocommerce-account .woocommerce-orders-table th,.woocommerce-account .woocommerce-orders-table td{padding:12px 8px;border-bottom:1px solid #E9D5C4;text-align:left}
.woocommerce-account .woocommerce-button,.woocommerce-account .button{font-family:'DM Mono',monospace;background:#2B1E18;color:#FBF6F0;border:none;border-radius:999px;padding:10px 18px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}

/* ===== Mode d'emploi + FAQ de l'espace client ===== */
.portail-tuto{border-color:#F4C7AB;background:#FBF6F0}
.portail-tuto .portail-surtitre{color:#8C6A55}
.portail-tuto h3{margin:0 0 20px}
.portail-tuto-etapes{list-style:none;counter-reset:tuto;margin:0 0 8px;padding:0;display:flex;flex-direction:column}
.portail-tuto-etapes li{counter-increment:tuto;display:grid;grid-template-columns:44px minmax(150px,220px) minmax(0,1fr);gap:4px 16px;align-items:baseline;padding:14px 0;border-top:1px solid #E9D5C4;font-size:13px;line-height:1.6}
.portail-tuto-etapes li::before{content:counter(tuto,decimal-leading-zero);font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.12em;color:#8C6A55}
.portail-tuto-etapes strong{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:21px;line-height:1.15;background:none;padding:0}
@media (max-width:640px){.portail-tuto-etapes li{grid-template-columns:36px minmax(0,1fr)}.portail-tuto-etapes li span{grid-column:2}}
.portail-tuto-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:16px}
.portail-tuto-actions form{margin:0}
.portail-faq h3{margin:0 0 8px}
.portail-faq details{border-top:1px solid #E9D5C4}
.portail-faq details:last-child{border-bottom:1px solid #E9D5C4}
.portail-faq summary{cursor:pointer;list-style:none;padding:16px 32px 16px 0;position:relative;font-size:15px;line-height:1.5}
.portail-faq summary::-webkit-details-marker{display:none}
.portail-faq summary::after{content:"+";position:absolute;right:4px;top:13px;font-family:'DM Mono',monospace;font-size:18px;color:#8C6A55}
.portail-faq details[open] summary::after{content:"–"}
.portail-faq summary:focus-visible{outline:2px solid #F4C7AB;outline-offset:2px}
.portail-faq details .desc{padding:0 0 18px;max-width:68ch}
.portail-faq details .desc a{text-decoration:underline;text-underline-offset:3px}

/* ===== Outils & technos ===== */
.outils{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.outil{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 10px;border:1px solid #E9D5C4;border-radius:999px;background:#FFFFFF;font-family:'DM Mono',monospace;font-size:12px;letter-spacing:.04em;color:#2B1E18;line-height:1}
.outil-ico{width:16px;height:16px;flex:0 0 16px;color:#2B1E18}
.outil-ico--txt{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#2B1E18;color:#FBF6F0;font-size:7px;font-weight:500;letter-spacing:0}
.outil--ico{padding:7px;border-radius:50%}
.outils--mini{gap:6px}
.outils--mini .outil{padding:6px;background:transparent}
.outils--mini .outil-ico{width:14px;height:14px;flex-basis:14px}
.outils-section{display:flex;flex-direction:column;gap:36px}
.outils-groupes{display:flex;flex-direction:column;border-top:1px solid #2B1E18}
.outils-groupe{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:12px 32px;align-items:center;padding:20px 0;border-bottom:1px solid #E9D5C4}
.outils-groupe-titre{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8C6A55}
.outils-real{display:flex;flex-direction:column;gap:12px}
@media (max-width:640px){.outils-groupe{grid-template-columns:minmax(0,1fr)}}
