.simple-link{display:block;text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s}
.simple-link:hover{border-color:var(--accent);transform:translateY(-2px)}
.simple-link p{color:var(--muted);margin-top:10px}
.nav nav li:first-child a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:700}
.nav nav li:first-child a[aria-current=page],.nav nav li:first-child a:hover{background:var(--accent);color:white}
footer .back-home{display:inline-flex;align-items:center;min-height:44px;margin:10px 0 0 16px;padding:8px 14px;border:1px solid #c5d5e5;border-radius:8px;color:white;text-decoration:none;font-weight:600}
@media(max-width:560px){footer .back-home{margin-left:0;display:flex;justify-content:center;width:100%}.nav nav li:first-child a{padding:8px 12px;font-size:13px}}
.home-choices{padding:36px 0 54px}.home-choices h2{font-size:25px;margin-bottom:24px}
nav a[aria-current=page]{color:var(--accent);font-weight:600}
@media(max-width:560px){.nav li:nth-child(4){display:list-item}.nav ul{gap:10px}.hero h1{font-size:40px}.hero-aside{padding:24px}.hero{padding:32px 0}.home-choices .grid{grid-template-columns:1fr;gap:14px}.home-choices{padding:28px 0}.home-choices .card{padding:22px}.nav .cta{font-size:12px}#contact .grid{grid-template-columns:1fr}.brand-wordmark{max-width:100%}}
@media(max-width:560px){.hero-aside h3,.hero-aside>.note{display:none}.hero-aside .exp{border:0;margin-top:8px;padding:0}.hero-aside .exp ul{margin:0}.hero-aside .exp li{padding:5px 0;font-size:13px}.hero-aside .eyebrow{margin:0}.hero-aside{padding:20px}.home-choices .card{padding:18px}.home-choices .card h3{font-size:18px}.home-choices .card p{font-size:14px;margin:6px 0 0}.home-choices .grid{gap:10px}}

.home-mission{max-width:850px;margin-bottom:36px;border-left:3px solid var(--accent);padding-left:20px}.home-mission h2{margin-bottom:12px}.home-mission p{margin-bottom:12px}.home-mission .eyebrow{margin-bottom:10px}
.nav a.client-nav{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid var(--accent);border-radius:8px;color:var(--accent);font-weight:700;background:var(--accent-soft)}
.nav a.client-nav:hover,.nav a.client-nav[aria-current=page]{background:var(--accent);color:white}
@media(max-width:560px){.nav nav li a,.nav nav li:first-child a,.nav nav a.client-nav,.nav nav a.cta{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 10px;font-size:14px}.nav nav ul{gap:6px 8px}}
.home-price{border-left:3px solid var(--accent);padding-left:14px;margin:18px 0;color:var(--ink)}
.client-access{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:36px;background:var(--accent-soft)}
.client-access h2{margin:8px 0;font-size:24px}.client-access p{margin:0}.client-access .btn{flex-shrink:0}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:20px}.footer-links a{color:#d7e5ef;min-height:44px;display:inline-flex;align-items:center}
.legal-page .wrap{max-width:920px}.legal-page h1{font-size:clamp(30px,5vw,44px);line-height:1.2}.legal-page h2{font-size:23px;letter-spacing:-.3px;margin:32px 0 12px}.legal-page p,.legal-page li{line-height:1.75;overflow-wrap:anywhere}.legal-page .legal-summary h2{margin-top:0}.legal-page .actions{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:560px){.nav a.client-nav{padding:8px 10px;font-size:13px}.nav nav{width:100%}.nav ul{gap:8px 12px}.client-access{flex-direction:column;align-items:stretch;padding:20px;gap:16px}.client-access .btn{width:100%}.footer-links{gap:4px 20px}.legal-page .card{padding:20px}}
/* Téléphone : menu en grille régulière, titres centrés, pied de page centré, textes lisibles */
@media(max-width:560px){
.nav{flex-direction:column;align-items:center;gap:10px;padding:12px 16px 10px;min-height:0}
.nav nav ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%}
.nav nav li{display:flex!important;min-width:0}
.nav nav li a,.nav nav li:first-child a,.nav nav a.client-nav,.nav nav a.cta{width:100%;min-width:0;padding:8px 4px;font-size:14px;text-align:center;white-space:nowrap}
.nav nav li:nth-child(2),.nav nav li:nth-child(6){grid-column:span 2;order:2}
.nav nav li:first-child a:not([aria-current]){background:transparent;border-color:transparent;color:var(--muted);font-weight:400}
.nav nav li a[aria-current=page]:not(.cta):not(.client-nav){border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);color:var(--accent);font-weight:700}
html{scroll-padding-top:170px}.service-detail,#espace-client,#rendez-vous,#appointment-help{scroll-margin-top:170px}
.eyebrow,.service-no{font-size:12px}.other-services .learn-more{font-size:12px}
.hero-copy,.client-access>div,.home-mission,.home-choices>.wrap>h2,.privacy,.help-card{text-align:center}
.hero-copy .lead,.hero-copy p{margin-left:auto;margin-right:auto}
.hero h1{font-size:38px;letter-spacing:-1.4px}
.home-price{border-left:0;border-top:3px solid var(--accent);padding:12px 0 0;margin:18px auto}
.home-mission{border-left:0;border-top:3px solid var(--accent);padding:20px 0 0}
.home-choices .card h3,.home-choices .card p{text-align:center}
.help-card h3{max-width:none}.help-card .btn{align-self:stretch}
section>.wrap>.eyebrow,section>.wrap>h1,section>.wrap>h2,section>.wrap>.lead,.legal-page h1{text-align:center;margin-left:auto;margin-right:auto}
.other-head,section>.wrap>.message{text-align:center}
.contact-grid .btn,.card>.btn,.legal-page .actions .btn{width:100%}
footer{text-align:center;padding:30px 0}
footer .back-home{margin-top:16px}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;margin-top:14px}
.footer-links a{justify-content:center}
}
@media(max-width:374px){.nav{padding-left:10px;padding-right:10px}.nav nav ul{gap:4px}.nav nav li a,.nav nav li:first-child a,.nav nav a.client-nav,.nav nav a.cta{padding:8px 2px;font-size:13px}.hero h1{font-size:33px}}

/* Polissage unslop (méthode de Damir Sokolovsky, CC BY 4.0) : l’identité marine et sarcelle reste ; on retire ce qui fait gabarit. */
:root{--ease:cubic-bezier(.22,1,.36,1);--trait:#c3ced8}
/* Couleur : plus de lavis de couleur derrière le contenu, ombres neutres et discrètes. */
.hero{background:none;border-bottom:0}
#rendez-vous{background:#fff}
.hero-aside{border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.service-detail[open]{border-color:var(--trait);box-shadow:none}
.price,.price:hover{box-shadow:none}
/* Contrastes : ces libellés et liens étaient difficiles à lire sur le marine. */
.hero-aside .eyebrow,.exp .eyebrow{color:#7fdccf}
footer a{color:#d7e5ef}
/* Type : phrases normales plutôt que majuscules espacées, deux graisses, chasse serrée seulement sur les grands titres. */
.eyebrow,.service-no{text-transform:none;letter-spacing:0;font-size:13px;line-height:20px;font-weight:600}
.service-no{font-weight:400;color:var(--muted)}
h1,.hero h1,.legal-page h1{font-weight:600;letter-spacing:-.02em}
h2{font-weight:600;letter-spacing:-.01em}
h3,.price h3,.legal-page h2{font-weight:600;letter-spacing:0}
.btn,.nav .cta{font-weight:600}
.price .amount,.detail-price{font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
/* Détails : les barres de couleur à gauche disparaissent, la hiérarchie vient du texte. */
.home-price{border-left:0;padding-left:0;margin:16px 0}
.home-mission{border-left:0;padding-left:0;margin-top:32px;margin-bottom:40px}
.badge{border-left:0;padding-left:0}
.document-note{border-left:0;border-radius:12px;padding:16px 20px}
.home-choices .grid{gap:20px}
/* Espacement : la carte d’expérience suit une grille régulière. */
.hero-aside{padding:28px}
.exp{margin-top:16px;padding-top:8px}
.exp li:last-child{border-bottom:0}
.hero-aside .note{margin-top:8px}
/* Mouvement : couleur au survol, rien ne saute ; une seule entrée, courte. */
.btn,.price,.simple-link,.nav a{transition:color .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease)}
.btn:hover,.price:hover,.simple-link:hover{transform:none}
.btn:active{transform:scale(.98)}
.price:hover,.simple-link:hover{border-color:var(--accent)}
.reveal{animation-duration:.32s;animation-timing-function:var(--ease);animation-name:apparition}
@keyframes apparition{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #0e8c82;outline-offset:2px}
/* Détail signature : les graduations de l’équerre du logo marquent la fin de la première section. */
.hero{padding-bottom:88px}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:9px;pointer-events:none;border-bottom:1px solid var(--trait);background:repeating-linear-gradient(90deg,var(--trait) 0 1px,transparent 1px 80px) left bottom/100% 8px no-repeat,repeating-linear-gradient(90deg,var(--trait) 0 1px,transparent 1px 16px) left bottom/100% 4px no-repeat}
/* Ordinateur : menu calme, une seule action mise en avant. Le menu du téléphone garde sa grille. */
@media(min-width:561px){
.nav nav li:first-child a,.nav a.client-nav{min-height:44px;padding:0;border:0;border-radius:0;background:none;color:var(--muted);font-size:.95rem;font-weight:400}
.nav nav li:first-child a:hover,.nav a.client-nav:hover{background:none;color:var(--accent)}
.nav nav li:first-child a[aria-current=page],.nav a.client-nav[aria-current=page],.nav nav a[aria-current=page]:not(.cta){background:none;color:var(--accent);font-weight:600}
}
@media(max-width:560px){.home-price,.home-mission{border-top:0;padding-top:0}.home-mission{margin-top:32px}.hero{padding-bottom:48px}.hero-aside{padding:24px}.hero h1{letter-spacing:-.02em}}
@media print{.hero::after{display:none}}
