:root{--navy:#0f172a;--deep:#09101f;--blue:#2563eb;--blue-dark:#1d4ed8;--off:#f8fafc;--white:#fff;--slate:#64748b;--dark:#334155;--line:#dce4ee;--font:"Manrope","Segoe UI",system-ui,sans-serif;--max:1180px;--radius:18px;--ease:cubic-bezier(.2,.8,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;color:var(--navy);background:var(--off);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}h1,h2,h3,p,blockquote{margin:0}.skip-link{position:fixed;z-index:100;top:0;left:-9999px;padding:.75rem 1rem;color:#fff;background:var(--blue)}.skip-link:focus{left:0}:focus-visible{outline:3px solid #2563eb61;outline-offset:3px}
.site-header{position:sticky;z-index:20;top:0;border-bottom:1px solid #dce4eee6;background:#f8fafceb;backdrop-filter:blur(14px)}.site-header__inner{display:flex;align-items:center;gap:2rem;width:min(calc(100% - 40px),var(--max));min-height:76px;margin:auto}.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;font-size:1.05rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.brand img{width:34px;height:34px;object-fit:contain}.site-nav{display:flex;align-items:center;gap:1.75rem;margin-left:auto}.site-nav a{color:var(--dark);font-size:.86rem;font-weight:600;text-decoration:none}.site-nav a:hover{color:var(--blue)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.85rem 1.35rem;border:1px solid var(--blue);border-radius:8px;color:#fff;background:var(--blue);font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease)}.button:hover{background:var(--blue-dark);border-color:var(--blue-dark);transform:translateY(-2px)}.button--small{min-height:40px;padding:.6rem 1rem;font-size:.8rem}.button--light{color:var(--navy);border-color:#fff;background:#fff}.button--light:hover{color:#fff;border-color:var(--blue);background:var(--blue)}.text-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--navy);font-size:.9rem;font-weight:700;text-decoration:none}.text-link span{color:var(--blue);transition:transform .2s var(--ease)}.text-link:hover span{transform:translateY(2px)}.eyebrow{color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.hero{overflow:hidden;padding:92px 20px 0;background:radial-gradient(circle at 85% 12%,#2563eb1f,transparent 28%),var(--off)}.hero__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:clamp(50px,8vw,110px);align-items:center;width:min(100%,var(--max));margin:auto}.hero__content h1{max-width:800px;margin-top:1.2rem;font-size:clamp(2.8rem,6vw,5.3rem);font-weight:700;letter-spacing:-.06em;line-height:.98}.hero__content h1 span{color:var(--blue)}.hero__lead{max-width:690px;margin-top:2rem;color:var(--dark);font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:1.75}.hero__actions{display:flex;align-items:center;gap:1.6rem;margin-top:2.2rem}.hero__signal{position:relative;padding:2rem;border:1px solid #93b4f847;border-radius:var(--radius);color:#fff;background:var(--navy);box-shadow:0 30px 70px #0f172a2e}.hero__signal::before{position:absolute;z-index:-1;right:-18px;bottom:-18px;width:75%;height:75%;border:1px solid var(--blue);border-radius:var(--radius);content:""}.signal__label{padding-bottom:1.25rem;border-bottom:1px solid #ffffff1f;color:#93b4f8;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.signal__steps{display:grid;margin:0;padding:0;list-style:none}.signal__steps li{display:grid;grid-template-columns:42px 1fr;gap:.8rem;padding:1.05rem 0;border-bottom:1px solid #ffffff1a}.signal__steps li:last-child{border-bottom:0;padding-bottom:0}.signal__steps li>span{color:#93b4f8;font-size:.68rem;font-weight:700}.signal__steps div{display:grid;gap:.15rem}.signal__steps strong{font-size:.95rem}.signal__steps small{color:#aebbd0;font-size:.76rem;line-height:1.5}.hero__proof{display:grid;grid-template-columns:repeat(3,1fr);width:min(100%,var(--max));margin:90px auto 0;border-top:1px solid var(--line)}.hero__proof p{display:grid;gap:.15rem;padding:1.5rem 1.8rem;border-right:1px solid var(--line)}.hero__proof p:first-child{padding-left:0}.hero__proof p:last-child{border-right:0}.hero__proof strong{font-size:.85rem}.hero__proof span{color:var(--slate);font-size:.74rem}
.section{width:min(calc(100% - 40px),var(--max));margin:auto;padding:120px 0}.section__intro{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem 7rem;align-items:end;margin-bottom:3.5rem}.section__intro .eyebrow{grid-column:1/-1}.section__intro h2,.approach h2,.founder h2,.cta h2{font-size:clamp(2rem,4vw,3.55rem);letter-spacing:-.045em;line-height:1.08}.section__intro>p:last-child{color:var(--slate);font-size:.98rem}.section--offers{width:100%;max-width:none;padding-right:max(20px,calc((100% - var(--max))/2));padding-left:max(20px,calc((100% - var(--max))/2));background:#fff}.offers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.offer-card{display:flex;flex-direction:column;min-height:410px;padding:2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--off);transition:transform .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease)}.offer-card:hover{transform:translateY(-4px);border-color:#b8cae7;box-shadow:0 18px 40px #0f172a14}.offer-card--featured{color:#fff;border-color:var(--navy);background:var(--navy)}.offer-card__top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.offer-card__number{color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.12em}.offer-card--featured .offer-card__number{color:#93b4f8}.offer-card__tag{padding:.35rem .55rem;border:1px solid #93b4f852;border-radius:999px;color:#b9cdfd;font-size:.62rem;font-weight:700}.offer-card h3{margin-top:2.5rem;font-size:1.65rem;letter-spacing:-.025em}.offer-card>p{max-width:520px;margin-top:.8rem;color:var(--slate);font-size:.92rem}.offer-card--featured>p{color:#b8c3d6}.offer-card ul{display:grid;gap:.55rem;margin:1.5rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--line);list-style:none}.offer-card--featured ul{border-color:#ffffff1f}.offer-card li{position:relative;padding-left:1.1rem;color:var(--dark);font-size:.82rem}.offer-card--featured li{color:#dbe4f2}.offer-card li::before{position:absolute;top:.67em;left:0;width:5px;height:5px;border-radius:50%;background:var(--blue);content:""}.offer-card>a{display:inline-flex;gap:.5rem;align-items:center;margin-top:auto;padding-top:1.5rem;color:#dbeafe;font-size:.82rem;font-weight:700;text-decoration:none}.offer-card>a span{color:#93b4f8}
.approach{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,10vw,140px)}.approach__statement{align-self:start;padding:2rem;border-left:3px solid var(--blue);background:#fff}.approach blockquote{margin-top:1.25rem;font-size:clamp(1.2rem,2vw,1.6rem);font-weight:600;line-height:1.55}.approach__content>p{max-width:670px;margin-top:1.5rem;color:var(--slate)}.principles{display:grid;gap:.8rem;margin-top:2.5rem}.principles div{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.principles span{color:var(--blue);font-size:.68rem;font-weight:800}.principles strong{font-size:.88rem}.founder{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(50px,10vw,140px);align-items:center;border-top:1px solid var(--line)}.founder__mark{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#17223d,var(--navy))}.founder__mark img{width:72%}.founder__content h2{margin-top:1rem}.founder__content>p:not(.eyebrow){max-width:680px;margin-top:1.2rem;color:var(--slate)}.founder__content strong{color:var(--navy)}.founder__content .text-link{margin-top:1.8rem}
.cta{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem 7rem;padding:90px max(20px,calc((100% - var(--max))/2));color:#fff;background:var(--navy)}.cta .eyebrow{color:#93b4f8}.cta h2{margin-top:1rem}.cta__action{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}.cta__action p{color:#b8c3d6}.cta__action .button{margin-top:1.8rem}.cta__action>a:last-child{margin-top:.9rem;color:#93b4f8;font-size:.76rem;text-underline-offset:3px}.footer{display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:end;padding:48px max(20px,calc((100% - var(--max))/2));background:var(--deep);color:#fff}.footer__brand{display:grid;gap:.25rem}.footer__brand strong{font-size:1.05rem;letter-spacing:.14em;text-transform:uppercase}.footer__brand span,.footer__copyright{color:#8290a8;font-size:.7rem}.footer__links{display:flex;gap:1.4rem}.footer__links a{color:#bac5d6;font-size:.75rem;text-decoration:none}.footer__links a:hover{color:#fff}
.booking{padding:88px 24px 72px;background:var(--off)}.booking__inner,.booking-back__inner{width:100%;max-width:760px;margin:0 auto;text-align:center}.booking__eyebrow{margin-bottom:16px;color:var(--blue);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.booking__heading{font-size:clamp(2rem,5vw,3rem);line-height:1.15;letter-spacing:-.03em}.booking__text{max-width:640px;margin:24px auto 0;color:var(--slate);font-size:1.05rem;line-height:1.75}.booking__button{display:inline-flex;margin-top:36px;padding:15px 28px;border-radius:8px;background:var(--blue);color:#fff;font-size:.95rem;font-weight:700;text-decoration:none}.booking__note{margin-top:18px;color:#94a3b8;font-size:.8rem}.booking-back{padding:0 24px 72px;background:var(--off)}.booking-back__link{color:var(--slate);font-size:.85rem;font-weight:600;text-decoration:none}
.legal-page{background:var(--off)}.legal-header{padding:1.25rem 20px;background:var(--navy)}.legal-header__brand{display:block;max-width:880px;margin:auto;color:#fff;font-weight:800;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}.legal{padding:3rem 20px 5rem}.legal__inner{max-width:880px;margin:auto}.legal__back{display:inline-block;margin-bottom:1.75rem;color:var(--slate);font-size:.9rem;text-decoration:none}.legal h1{font-size:clamp(2rem,5vw,3rem);line-height:1.15}.legal__updated{margin:.5rem 0 3rem;color:var(--slate);font-size:.85rem}.legal__section{padding:1.75rem 0;border-top:1px solid var(--line)}.legal__section h2{margin:0 0 1rem;font-size:1.2rem}.legal__section p,.legal__section address{margin:0 0 1rem;font-size:.98rem;font-style:normal;line-height:1.75}.legal__section a{color:var(--blue)}
@media(max-width:900px){.site-nav{display:none}.site-header__inner{gap:1rem}.site-header .button{margin-left:auto}.hero{padding-top:64px}.hero__grid,.approach,.founder,.cta{grid-template-columns:1fr}.hero__signal{max-width:620px}.section__intro{grid-template-columns:1fr;gap:1rem}.section__intro .eyebrow{grid-column:auto}.approach,.founder{gap:3.5rem}.founder__mark{max-width:380px}.footer{grid-template-columns:1fr auto}.footer__copyright{grid-column:1/-1}}
@media(max-width:640px){html{scroll-padding-top:68px}.site-header__inner{width:min(calc(100% - 28px),var(--max));min-height:66px}.brand img{width:30px;height:30px}.brand span{font-size:.86rem}.site-header .button{min-height:36px;padding:.5rem .72rem;font-size:.68rem}.hero{padding:48px 20px 0}.hero__content h1{font-size:clamp(2.55rem,13vw,4rem)}.hero__actions{align-items:stretch;flex-direction:column;gap:1.1rem}.hero__actions .text-link{justify-content:center}.hero__proof{grid-template-columns:1fr;margin-top:58px}.hero__proof p,.hero__proof p:first-child{padding:1rem 0;border-right:0;border-bottom:1px solid var(--line)}.section{width:min(calc(100% - 40px),var(--max));padding:82px 0}.section--offers{width:100%;padding:82px 20px}.offers-grid{grid-template-columns:1fr}.offer-card{min-height:0}.approach__statement{padding:1.5rem}.cta{padding:72px 20px}.footer{grid-template-columns:1fr;align-items:start;padding:42px 20px}.footer__links{flex-wrap:wrap}.footer__copyright{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}

/* Page de prise de rendez-vous */
.booking-page{min-height:calc(100vh - 76px);background:radial-gradient(circle at 50% 0,#2563eb1f,transparent 34%),var(--off)}
.booking-header__back{margin-left:auto}
.booking-page .booking{padding-top:110px;background:transparent}
.booking-reassurance{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;width:min(calc(100% - 40px),960px);margin:0 auto 100px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--line)}
.booking-reassurance div{display:grid;gap:.35rem;padding:1.5rem;background:#fff}
.booking-reassurance span{color:var(--blue);font-size:.65rem;font-weight:800}
.booking-reassurance strong{font-size:.9rem}
.booking-reassurance p{color:var(--slate);font-size:.76rem}
.footer__inner{display:contents}
@media(max-width:640px){.booking-header__back{font-size:.72rem}.booking-page .booking{padding-top:72px}.booking-reassurance{grid-template-columns:1fr;margin-bottom:72px}}

/* Variante sombre du logo sur l'en-tête clair. */
.booking-header__back{color:var(--navy)}

/* Le symbole seul reste lisible dans l'en-tête compact. */
.brand img{width:48px;height:48px;border-radius:8px}

/* Le logo complet porte l'identité dans le premier écran. */
.signal__brand{display:grid;place-items:center;padding:0 1rem 1.35rem;border-bottom:1px solid #ffffff1f}
.signal__brand img{width:min(240px,78%);height:auto;filter:drop-shadow(0 18px 28px #050a1770)}
.signal__label{padding-top:1.25rem}

/* Libellés du premier écran : contraste renforcé dans la palette Noetria. */
.hero__content .eyebrow{color:var(--blue);font-size:.82rem;font-weight:800;letter-spacing:.1em}
.hero__signal .signal__label{color:#93b4f8;font-size:.82rem;font-weight:800;letter-spacing:.1em}

@media(max-width:640px){
  .brand img{width:42px;height:42px;border-radius:7px}
  .signal__brand img{width:min(210px,72%)}
}
