/* Cormorant Garamond et DM Sans auto-hébergées ; SIL OFL 1.1. */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/cormorantgaramond-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/cormorantgaramond-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorantgaramond-400i-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorantgaramond-400i-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/dmsans-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/dmsans-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{--navy:#002366;--ink:#152343;--rose:#e8a09a;--pale:#f9e9e6;--paper:#faf9f6;--white:#fff;--muted:#5d6575;--line:#dcdfe5;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:var(--sans);font-weight:400;font-size:16px;line-height:1.7;color:var(--ink);background:var(--paper)}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--navy)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a85e58;outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--navy);line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(46px,5.9vw,82px);margin-bottom:28px}h2{font-size:clamp(38px,4vw,58px);margin-bottom:24px}h3{font-size:32px;margin-bottom:15px}em{font-weight:400}p{margin-bottom:20px}.wrap{max-width:1240px;margin:auto;padding:0 40px}.section{padding:100px 0}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);display:block;margin-bottom:22px}.eyebrow:before{content:'';width:28px;height:2px;background:var(--rose);display:inline-block;vertical-align:middle;margin-right:12px}.lead{font-size:18px;line-height:1.8;color:var(--muted);max-width:630px}.small{font-size:13px;color:var(--muted)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:36px}.section-head h2{max-width:650px;margin-bottom:0}.section-head p{max-width:360px;margin:0;color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:26px;min-height:52px;padding:14px 23px;font-size:14px;font-weight:500;text-decoration:none;border:1px solid var(--navy);background:var(--navy);color:#fff;transition:background .2s,transform .2s}.btn:hover{color:#fff;background:#163c82;transform:translateY(-2px)}.btn:after{content:'↗';font-size:19px}.btn-rose{background:var(--rose);border-color:var(--rose);color:var(--navy)}.btn-rose:hover{background:#f0b7b2;color:var(--navy)}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:14px;font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link:after{content:'↗';font-size:18px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--navy);color:#fff;padding:12px 20px;z-index:100}.skip-link:focus{top:10px}.site-header{background:rgba(250,249,246,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{height:98px;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--navy)}.brand svg{width:47px;height:49px}.brand-name{font-family:var(--serif);font-weight:600;letter-spacing:.12em;font-size:29px}.nav{display:flex;gap:27px;align-items:center;font-size:13px}.nav>a{text-decoration:none;white-space:nowrap}.nav>a[aria-current=page]{border-bottom:1px solid var(--navy)}.nav .btn{font-size:12px;padding:12px 17px;min-height:45px;gap:18px}.nav-services{position:relative}.nav-services summary{cursor:pointer;list-style:none}.nav-services summary:after{content:'⌄';margin-left:8px}.nav-services summary::-webkit-details-marker{display:none}.dropdown{position:absolute;top:36px;left:-22px;width:280px;border:1px solid var(--line);background:white;padding:12px;box-shadow:0 15px 30px #0023660d}.dropdown a{display:block;padding:10px;text-decoration:none;font-size:13px}.dropdown a:hover{background:var(--pale)}.menu-toggle{display:none}.hero{padding:65px 0 72px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:74px}.hero-copy{padding:22px 0}.hero-copy h1{max-width:710px}.hero-copy .lead{max-width:590px;margin-bottom:29px}.hero-note{font-size:12px;margin:26px 0 0;color:var(--muted);max-width:460px}.portrait-composition{position:relative;padding:24px 23px 52px 0}.portrait-back{position:absolute;inset:0 0 24px 39px;border:1px solid #d7b7b2;border-radius:180px 180px 2px 2px;z-index:0}.hero-portrait{position:relative;width:100%;height:475px;object-fit:cover;object-position:50% 26%;border-radius:160px 160px 3px 3px;background:var(--pale)}.portrait-note{position:absolute;bottom:0;right:-16px;background:var(--navy);color:white;padding:23px 30px;width:290px;box-shadow:0 12px 28px #00236613}.portrait-note span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#efb7b2}.portrait-note strong{font-family:var(--serif);font-weight:400;font-size:30px;display:block;line-height:1.4}.portrait-note p{font-size:12px;margin:4px 0 0;color:#e3e8f2}.intro-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;background:#fff}.intro-line .wrap{display:flex;justify-content:space-between;gap:22px}.intro-line span{font-size:12px;display:flex;align-items:center;gap:13px}.intro-line span:before{content:'✳';color:#9e544e;font-size:19px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service-card{padding:35px 0 26px;border-top:2px solid var(--navy);display:flex;flex-direction:column;align-items:start}.service-number{font-size:12px;color:#7b6865;display:block;margin-bottom:28px}.service-card h3{font-size:34px;max-width:250px}.service-card p{color:var(--muted);font-size:14px}.service-card ul{padding-left:17px;font-size:13px;margin:0 0 30px}.service-card .text-link{margin-top:auto}.distance-band{background:var(--pale);padding:38px 42px;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin-top:45px}.distance-band h3{font-size:36px;margin-bottom:0}.distance-band p{font-size:14px}.dark-section{background:var(--navy);color:#e5eaf4}.dark-section h2,.dark-section h3,.dark-section .eyebrow{color:#fff}.dark-section .lead{color:#d0daec}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.step{border-top:1px solid #6d85b0;padding-top:28px}.step-number{font-family:var(--serif);color:var(--rose);font-size:40px;display:block;line-height:1;margin-bottom:28px}.step h3{font-size:31px}.step p{font-size:14px;color:#d0daec;margin-bottom:0}.team-strip{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.team-duo{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.team-duo figure{margin:0}.team-duo figure:nth-child(2){margin-top:65px}.team-duo img{height:280px;width:100%;object-fit:cover;object-position:center 25%}.team-duo figcaption{font-size:12px;padding-top:12px;color:var(--muted)}.team-duo figcaption strong{font-size:15px;display:block;font-weight:500;color:var(--navy)}.team-copy p{color:var(--muted)}.faq-section{background:#fff;border-top:1px solid var(--line)}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-layout h2{max-width:320px}.faq-list details{border-top:1px solid var(--line);padding:21px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;font-size:16px;font-weight:500;line-height:1.5}.faq-list summary:after{content:'+';font-weight:400;color:var(--navy);font-size:22px;line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{font-size:14px;color:var(--muted);margin:17px 30px 0 0}.contact-band{padding:65px 0;background:var(--pale)}.contact-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.contact-band h2{font-size:49px;max-width:660px;margin-bottom:12px}.contact-band p{margin:0;color:var(--muted)}.site-footer{padding:65px 0 22px;background:var(--navy);color:white}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:60px}.site-footer .brand{color:#fff;margin-bottom:19px}.site-footer .brand svg rect{fill:white}.footer-about{font-size:13px;color:#d0daec;max-width:280px}.footer-title{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#efb7b2;margin:9px 0 20px}.footer-list{list-style:none;padding:0;margin:0}.footer-list li{margin:8px 0;font-size:13px}.site-footer a:hover{color:var(--rose)}.footer-list a{text-decoration:none}.site-footer address{font-size:13px;font-style:normal;line-height:1.9;color:#d0daec}.footer-bottom{margin-top:45px;border-top:1px solid #405d92;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:11px;color:#d0daec}.footer-bottom div{display:flex;gap:22px;flex-wrap:wrap}.preview-note{font-size:10px;margin:22px 0 0;color:#c0cde4;letter-spacing:.04em}.breadcrumb{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-bottom:35px}.breadcrumb a{color:var(--muted)}.inner-hero{padding:42px 0 75px}.inner-hero .hero-grid{gap:80px;align-items:start}.inner-hero h1{font-size:clamp(45px,5.1vw,68px)}.hero-aside{margin-top:15px;background:var(--pale);padding:37px;position:relative}.hero-aside:before{content:'';position:absolute;left:0;top:0;width:45px;height:3px;background:var(--navy)}.hero-aside h2{font-size:35px}.hero-aside p,.hero-aside li{font-size:14px}.hero-aside ul{padding-left:17px;margin-bottom:0}.service-detail{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:33px}.detail-item{border-top:1px solid var(--line);padding-top:24px}.detail-item h3{font-size:30px;letter-spacing:-.02em}.detail-item p{font-size:14px;color:var(--muted);margin-bottom:0}.soft-section{background:#fff;border-block:1px solid var(--line)}.deliverables{padding-left:0;list-style:none;margin:0}.deliverables li{padding:17px 0;border-top:1px solid var(--line);display:flex;gap:15px;font-size:15px}.deliverables li:before{content:'✓';color:var(--navy)}.role-note{border-left:3px solid var(--rose);padding:8px 0 8px 25px;margin-top:30px;font-size:14px;color:var(--muted)}.related{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.related a{border-top:1px solid var(--line);padding:22px 0;text-decoration:none;font-family:var(--serif);font-size:27px;line-height:1.2;display:flex;justify-content:space-between;gap:10px}.related a:after{content:'↗';font-family:var(--sans);font-size:20px}.team-full{display:grid;grid-template-columns:340px 1fr;gap:80px;align-items:center;padding:50px 0;border-top:1px solid var(--line)}.team-full img{width:100%;height:420px;object-fit:cover;object-position:center 25%}.team-full h2{margin-bottom:10px}.team-full p{max-width:690px;color:var(--muted)}.team-full .role{font-size:12px;color:var(--navy);text-transform:uppercase;letter-spacing:.08em;margin-bottom:25px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-layout h1{font-size:65px}.contact-info{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.contact-info a{display:inline-block;font-size:20px;margin-bottom:8px}.contact-info address{font-style:normal;font-size:14px;color:var(--muted);margin:15px 0 25px}.contact-form{background:white;padding:35px;border:1px solid var(--line)}.contact-form h2{font-size:34px;margin-bottom:12px}.demo-notice{padding:12px 14px;background:var(--pale);font-size:12px;line-height:1.6;margin-bottom:24px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:19px}.field label{display:block;font-size:12px;font-weight:500;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #b9c0cb;color:var(--ink);background:#fff;border-radius:0;padding:12px 13px;font-size:14px;line-height:1.5}textarea{resize:vertical;min-height:140px}.checkbox-label{display:flex;align-items:start;gap:10px;font-size:12px;color:var(--muted);margin-bottom:23px}.checkbox-label input{width:17px;height:17px;flex:none;margin-top:2px;accent-color:var(--navy)}.form-status{font-size:13px;margin:20px 0 0;color:var(--navy);padding:15px;border:1px solid var(--navy)}.form-status:empty{display:none}.form-warning{font-size:12px;color:var(--muted)}.legal{max-width:820px;padding-top:44px;padding-bottom:90px}.legal h1{font-size:60px}.legal h2{font-size:33px;margin:36px 0 16px}.legal p,.legal li{font-size:14px;color:var(--muted)}.legal .demo-notice{color:var(--ink)}.legal a{color:var(--navy)}[hidden]{display:none!important}@media(min-width:901px){.hero-copy{animation:arrive .65s ease both}.portrait-composition{animation:arrive .7s .12s ease both}}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.cookie-preferences{padding:0;border:0;background:none;color:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:5px}.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;z-index:80;background:var(--white);color:var(--ink);border:1px solid var(--navy);box-shadow:0 8px 35px #00236620;max-width:760px;padding:24px}.cookie-banner h2{font-size:28px;margin-bottom:10px}.cookie-copy{font-size:13px}.cookie-copy p{margin-bottom:10px}.cookie-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.cookie-choice{min-height:44px;padding:10px 20px;background:var(--navy);color:#fff;border:1px solid var(--navy);font-size:13px}.cookie-choice:hover{background:#163c82}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none}
html:not(.js) .menu-toggle{display:none}html:not(.js) .site-header{position:relative}@media(max-width:900px){html:not(.js) .header-inner{height:auto;padding-block:20px;flex-wrap:wrap}html:not(.js) .nav{position:static;width:100%;max-height:none;padding:10px 0;border:0}}
@media(max-width:1100px){.wrap{padding-inline:30px}.nav{gap:18px}.hero-grid{gap:45px}.hero-portrait{height:440px}.portrait-note{right:0}.hero h1{font-size:65px}.team-strip,.faq-layout,.service-detail,.contact-layout{gap:50px}.team-full{gap:50px}.header-inner{height:90px}.nav .nav-home{display:none}}
@media(max-width:900px){.wrap{padding-inline:25px}.header-inner{height:82px}.brand-name{font-size:25px}.brand svg{width:40px;height:44px}.menu-toggle{display:inline-flex;align-items:center;gap:12px;padding:10px 13px;border:1px solid var(--line);background:transparent;color:var(--navy);font-size:13px}.menu-toggle:after{content:'☰';font-size:18px}.nav{position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:22px 25px;display:flex;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);max-height:calc(100dvh - 82px);overflow:auto}.js .nav:not(.is-open){display:none}.nav .nav-home{display:block}.nav>a{padding:6px 0}.nav .btn{padding:12px}.nav-services summary{padding:6px 0}.dropdown{position:static;width:auto;box-shadow:none;border:0;border-left:2px solid var(--rose);background:transparent;margin-top:10px}.hero{padding:45px 0 60px}.hero-grid{gap:35px;grid-template-columns:1.15fr .85fr}.hero h1{font-size:52px}.lead{font-size:16px}.hero-portrait{height:370px;border-radius:120px 120px 3px 3px}.portrait-composition{padding-right:12px}.portrait-note{width:235px;padding:20px}.portrait-note strong{font-size:27px}.hero .actions{gap:20px}.hero .btn{font-size:13px;padding:12px 16px;gap:16px}.section{padding:72px 0}.section-head{align-items:start}.services-grid{gap:22px}.service-card h3{font-size:30px}.distance-band{gap:35px;padding:30px}.team-strip{gap:40px}.team-duo img{height:230px}.faq-layout{gap:50px}.footer-grid{gap:30px}.inner-hero .hero-grid{gap:35px;grid-template-columns:1.1fr .9fr}.inner-hero h1{font-size:52px}.hero-aside{padding:26px}.service-detail{grid-template-columns:.7fr 1.3fr;gap:35px}.team-full{grid-template-columns:270px 1fr;gap:40px}.team-full img{height:370px}.contact-layout{grid-template-columns:.8fr 1.2fr;gap:35px}.contact-layout h1{font-size:54px}.contact-form{padding:25px}.field-row{grid-template-columns:1fr;gap:0}.contact-info a{font-size:18px}}
@media(max-width:640px){.wrap{padding-inline:22px}.hero-grid,.inner-hero .hero-grid,.section-head,.distance-band,.team-strip,.faq-layout,.service-detail,.contact-layout{display:block}.hero-copy{padding:0}.hero h1{font-size:56px;line-height:.99;max-width:420px}.hero{padding:37px 0 45px}.hero .eyebrow{font-size:10px;letter-spacing:.12em;line-height:1.8}.hero .lead{font-size:16px}.hero .actions{gap:18px}.hero-note{font-size:11px}.portrait-composition{max-width:390px;margin:37px auto 0;padding:16px 17px 45px 0}.hero-portrait{height:385px;border-radius:145px 145px 3px 3px}.portrait-back{left:30px;border-radius:150px 150px 2px 2px}.portrait-note{width:260px;right:0;padding:19px 23px}.intro-line .wrap{display:grid;gap:12px;grid-template-columns:1fr}.intro-line span{font-size:12px}.section{padding:60px 0}.section-head{margin-bottom:30px}.section-head h2{margin-bottom:18px}.section-head p{max-width:100%;font-size:14px}.services-grid{display:block}.service-card{padding:25px 0 35px}.service-number{margin-bottom:18px}.service-card h3{max-width:none;font-size:37px}.service-card ul{margin-bottom:20px}.distance-band{padding:28px 24px;margin-top:12px}.distance-band h3{font-size:36px;margin-bottom:20px}.process{display:block;margin-top:35px}.step{padding:25px 0}.step:last-child{padding-bottom:0}.step-number{float:left;min-width:60px;margin-bottom:0;font-size:35px}.step h3,.step p{margin-left:60px}.team-duo{gap:18px;margin-bottom:38px}.team-duo img{height:255px}.team-duo figure:nth-child(2){margin-top:40px}.team-copy .eyebrow{margin-top:12px}.faq-layout h2{max-width:100%;margin-bottom:30px}.faq-list summary{font-size:15px}.contact-band{padding:45px 0}.contact-band .wrap{display:block}.contact-band h2{font-size:42px}.contact-band .btn{margin-top:25px}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-about{max-width:340px}.footer-title{margin:8px 0 14px}.footer-bottom{margin-top:30px}.site-footer{padding:45px 0 22px}.inner-hero{padding:28px 0 45px}.breadcrumb{font-size:10px;gap:8px;line-height:1.6;margin-bottom:28px}.inner-hero h1{font-size:53px}.hero-aside{margin-top:35px}.detail-list{display:block}.detail-item{padding:23px 0}.service-detail h2{margin-bottom:30px}.detail-item h3{font-size:31px}.related{display:block}.related a{font-size:29px}.team-full{display:block;padding:35px 0}.team-full img{height:410px;margin-bottom:30px}.team-full h2{font-size:44px}.contact-layout h1{font-size:56px}.contact-form{margin-top:35px;padding:25px 20px}.contact-info{margin-top:25px}.field-row{grid-template-columns:1fr}.legal h1{font-size:49px}.legal h2{font-size:30px}.legal{padding-top:28px}.legal .breadcrumb{margin-bottom:30px}.contact-form .btn{width:100%}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* ─── Harmonisation avec le site d'origine (01/10/2026, demande de Fred) ─────────────
   Boutons arrondis, titres en gras, fond, étiquettes, cartes et bandeau final repris
   du site actuel (libelia-site/index.html). Bloc autonome : le retirer suffit à revenir. */
:root{--paper:#F8F9FC;--ink:#1A1A2E;--muted:#6B7280;--line:#E5E7EB;--navy-dark:#001844;--navy-light:#003399;--rose-dark:#A9483F;--rose-light:#F4C8C4;--shadow-sm:0 2px 8px rgba(0,35,102,.06);--shadow-md:0 8px 32px rgba(0,35,102,.1)}
h1,h2,h3{font-weight:700;letter-spacing:-.02em;line-height:1.1}
h1{font-size:clamp(42px,5.2vw,68px);line-height:1.08}
h2{font-size:clamp(34px,4vw,52px)}
h1 em{font-style:normal;font-weight:700;color:var(--rose);-webkit-text-stroke:.6px var(--rose)}
h2 em,h3 em{font-style:normal;font-weight:700}
.eyebrow{font-size:12px;letter-spacing:2px;color:var(--rose-dark)}
.eyebrow:before{width:24px;background:var(--rose)}
.dark-section .eyebrow{color:var(--rose-light)}
.btn{border-radius:10px;padding:16px 32px;min-height:0;gap:10px;font-size:16px;font-weight:600;transition:all .25s}
.btn:after{content:'→';font-size:18px;transition:transform .25s}
.btn:hover{background:var(--navy-dark);border-color:var(--navy-dark);transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,35,102,.3)}
.btn:hover:after{transform:translateX(4px)}
.site-header .btn{padding:10px 22px;border-radius:8px;font-size:15px}
.site-header .btn:after{content:none}
.actions .text-link{border:2px solid var(--line);border-radius:10px;padding:14px 28px;background:rgba(255,255,255,.6);color:var(--navy);font-size:16px;font-weight:600;gap:10px;transition:all .25s}
.actions .text-link:after{content:none}
.actions .text-link:hover{border-color:var(--navy);background:#fff;transform:translateY(-2px)}
.service-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px 28px 28px;box-shadow:var(--shadow-sm);transition:all .35s cubic-bezier(.22,1,.36,1)}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.service-card h3{font-size:30px}
.hero-portrait{border-radius:24px}
.portrait-back{border-radius:28px}
.portrait-note{border-radius:14px}
.team-duo img,.team-full img{border-radius:18px}
.contact-form{border-radius:18px;box-shadow:var(--shadow-sm)}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{border-radius:10px}
.contact-band{background:transparent;padding:70px 0}
.contact-band .wrap{width:calc(100% - 80px);max-width:1160px;padding:56px 48px;border-radius:28px;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);box-shadow:var(--shadow-md)}
.contact-band h2{color:#fff}
.contact-band p{color:rgba(255,255,255,.75)}
.contact-band .btn{background:var(--rose);border-color:var(--rose);color:var(--navy)}
.contact-band .btn:hover{background:var(--rose-light);border-color:var(--rose-light);color:var(--navy);box-shadow:0 12px 28px rgba(232,160,154,.4)}
@media(max-width:1100px){.contact-band .wrap{width:calc(100% - 60px)}}
@media(max-width:640px){
  h1{font-size:42px}
  .service-card{padding:24px 22px 26px}
  .service-card h3{font-size:28px}
  .contact-band{padding:45px 0}
  .contact-band .wrap{width:calc(100% - 32px);padding:36px 24px}
  .contact-band h2{font-size:34px}
  .actions .text-link{width:100%;justify-content:center;margin-top:12px}
  .actions .btn{width:100%;justify-content:center}
}
.distance-band{border-radius:18px}

/* 4e carte « Automatisation » (02/10/2026, demande de Fred) */
@media(min-width:1101px){.services-grid{grid-template-columns:repeat(4,1fr);gap:22px}.services-grid .service-card{padding:28px 22px 26px}.services-grid .service-card h3{font-size:27px}}
@media(min-width:641px) and (max-width:1100px){.services-grid{grid-template-columns:repeat(2,1fr)}}

/* ─── V3 (02/10/2026) : moins de tics « site généré », plus de faits ─────────────────
   Étiquettes en casse normale, plus de numéros décoratifs, bandeau de faits vérifiables,
   prix visible, guides, tableaux. Bloc autonome. */
.eyebrow{text-transform:none;letter-spacing:0;font-size:15px;font-weight:600;color:var(--navy-light);margin-bottom:14px}
.eyebrow:before{content:none}
.dark-section .eyebrow{color:var(--rose-light)}
.hero h1{font-size:clamp(38px,4.1vw,56px);max-width:none}
.hero h1 em{white-space:nowrap}
.step-number{font-family:var(--sans);font-weight:600;font-size:28px}

/* faits vérifiables */
.proof-strip{background:#fff;border-block:1px solid var(--line)}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.proof-item{padding:22px 20px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.proof-item:first-child{border-left:0;padding-left:0}
.proof-item span{font-size:13px;color:var(--muted)}
.proof-item strong,.proof-item a{font-size:16px;font-weight:600;color:var(--navy)}
.proof-item a{text-underline-offset:4px}

/* prix */
.price-section{padding-top:10px}
.price-band{display:grid;grid-template-columns:.7fr 1.3fr;gap:56px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:48px;box-shadow:var(--shadow-sm)}
.price-figure{display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line);padding-right:40px}
.price-figure strong{font-family:var(--serif);font-size:88px;line-height:1;color:var(--navy);font-weight:700}
.price-figure span{color:var(--muted);font-size:14px}
.price-figure .price-label,.price-aside .price-label{font-size:14px;font-weight:600;color:var(--rose-dark)}
.price-band h2{font-size:clamp(32px,3.4vw,44px)}
.price-band p{color:var(--muted)}
.price-aside .price-big{display:block;font-family:var(--serif);font-size:64px;line-height:1;color:var(--navy);margin:6px 0 4px}
.price-aside>span{display:block;font-size:14px;color:var(--muted)}

/* encadré « En bref » */
.en-bref h2{font-size:28px;margin-bottom:6px}
.facts{list-style:none;padding:0!important;margin:16px 0 0}
.facts li{display:flex;flex-direction:column;padding:12px 0;border-top:1px solid #ecd3cf;font-size:15px}
.facts li strong{font-size:12px;color:var(--rose-dark);font-weight:600;margin-bottom:2px}

/* guides */
.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.guide-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s}
.guide-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.guide-card h2,.guide-card h3{font-size:28px;margin:8px 0 12px}
.guide-card p{color:var(--muted);font-size:15px}
.guide-date{font-size:13px;color:var(--muted)}
.guide-more{margin-top:auto;font-weight:600;color:var(--navy)}
.guide-more:after{content:' →'}

/* article */
.article-wrap{max-width:820px}
.meta-line{font-size:14px;color:var(--muted);margin:-8px 0 26px}
.answer-box{background:#fff;border-left:4px solid var(--rose);border-radius:14px;padding:24px 28px;box-shadow:var(--shadow-sm)}
.answer-box h2{font-size:24px;margin-bottom:8px}
.answer-box p{margin:0;font-size:17px;line-height:1.7}
.article-body{padding-top:20px}
.article-body h2{font-size:clamp(28px,3vw,36px);margin:46px 0 16px}
.article-body p,.article-body li{font-size:16px}
.steps-list{padding-left:22px}
.steps-list li{margin-bottom:12px;padding-left:6px}
.sources{margin-top:40px;border-top:1px solid var(--line);padding-top:10px}
.sources h2{font-size:24px;margin:20px 0 10px}
.sources li{font-size:14px;color:var(--muted);margin-bottom:6px}
.sources a{color:var(--navy)}
.guide-faq{margin-top:46px}

/* tableaux */
.table-wrap{overflow-x:auto;margin:18px 0 8px}
table.data{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm);font-size:15px}
table.data th{background:var(--navy);color:#fff;text-align:left;font-weight:600;padding:14px 18px}
table.data td{padding:13px 18px;border-top:1px solid var(--line);vertical-align:top}
table.data tr:nth-child(even) td{background:#fafbfd}

/* divers */
.process-4{grid-template-columns:repeat(4,1fr);gap:32px}
.proof-copy p{font-size:17px;color:var(--ink)}
.related-section{padding-top:30px}
.related-title{font-size:32px;margin-bottom:20px}
.next-steps{padding-left:22px;margin:0 0 10px;color:var(--muted)}
.next-steps li{margin-bottom:6px}
.next-steps strong{color:var(--navy)}
.footer-grid-4{grid-template-columns:1.2fr 1fr 1.1fr 1fr}
.footer-bottom a{color:inherit}

/* maquette : décisions en attente, en jaune */
mark.todo{display:inline-block;background:#FFF1A8;color:#4d3d00;border:1px dashed #C9A400;border-radius:6px;padding:4px 10px;font-size:13px;font-weight:600;line-height:1.5;margin:6px 0}
.todo-line{margin-top:24px}

@media(max-width:1100px){.process-4{grid-template-columns:repeat(2,1fr)}.footer-grid-4{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .price-band{grid-template-columns:1fr;gap:28px;padding:34px}
  .price-figure{border-right:0;border-bottom:1px solid var(--line);padding:0 0 24px}
  .proof-grid{grid-template-columns:repeat(2,1fr)}
  .proof-item{border-top:1px solid var(--line)}
  .proof-item:nth-child(-n+2){border-top:0}
  .proof-item:nth-child(3){border-left:0;padding-left:0}
}
@media(max-width:640px){
  .guide-grid{grid-template-columns:1fr}
  .process-4{grid-template-columns:1fr}
  .footer-grid-4{grid-template-columns:1fr}
  .price-figure strong{font-size:68px}
  .price-band{padding:26px 22px}
  .answer-box{padding:20px}
  table.data{font-size:14px}
  table.data th,table.data td{padding:11px 12px}
  .proof-item{padding:16px 12px}
}

.portrait-note span{text-transform:none;letter-spacing:0;font-size:13px}
.guide .inner-hero{padding-bottom:20px}
.article-body{padding-top:10px}
.article-body .article-wrap>h2:first-child{margin-top:20px}
sup{font-size:.65em;line-height:0}
.eyebrow,.hero .eyebrow,.hero-copy .eyebrow{text-transform:none!important;letter-spacing:0!important}

/* ─── Corrections du 02/10/2026, après le roast de la V3 ───────────────────────────────
   Contraste, tailles minimales, téléphone visible, garanties, portraits ronds. */

/* le mot en couleur des grands titres : rose foncé, lisible (5,4:1 sur le fond clair) */
h1 em,.hero h1 em{color:var(--rose-dark);-webkit-text-stroke:0;white-space:normal}

/* tailles minimales : plus rien sous 14 px */
.eyebrow,.hero .eyebrow,.hero-copy .eyebrow,.inner-hero .eyebrow{font-size:15px!important;line-height:1.5!important;letter-spacing:0!important}
.lead{font-size:18px}
.hero-note{font-size:14px;color:var(--muted);max-width:520px}
.hero-call{margin:18px 0 0;font-size:16px;color:var(--ink)}
.hero-call a{font-weight:600;color:var(--navy);white-space:nowrap;text-underline-offset:4px}
.btn{font-size:16px}
.nav{font-size:15px}
.text-link{font-size:15px}
.service-card p,.service-card ul,.distance-band p,.step p{font-size:15px}
.small,.form-warning,.checkbox-label,.field label,.proof-item span,.team-duo figcaption,.portrait-note p,.guide-date{font-size:14px}
.optional{font-weight:400;color:var(--muted)}
.contact-band .btn{white-space:nowrap;flex-shrink:0}
.contact-band p a{color:inherit;font-weight:600;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}

/* téléphone : dans le menu sur grand écran, en bouton à côté du menu sur téléphone */
.nav-phone{font-weight:600;color:var(--navy);text-decoration:none;white-space:nowrap}
.nav-phone:hover{text-decoration:underline;text-underline-offset:4px}
.header-call{display:none}
@media(max-width:1180px){.nav-phone{display:none}}
@media(max-width:900px){
  .header-inner{gap:12px}
  .header-call{display:inline-flex;align-items:center;gap:8px;margin-left:auto;min-height:44px;padding:0 14px;border:1px solid var(--navy);border-radius:8px;font-size:15px;font-weight:600;color:var(--navy);text-decoration:none;background:#fff}
}
@media(max-width:480px){
  .header-call{width:44px;padding:0;justify-content:center}
  .header-call span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* garanties */
.guarantees{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.guarantee{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px;box-shadow:var(--shadow-sm)}
.guarantee h3{font-size:26px;line-height:1.15;margin:0 0 10px}
.guarantee p{margin:0;color:var(--muted);font-size:15px}
@media(max-width:1100px){.guarantees{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.guarantees{grid-template-columns:1fr}.guarantee{padding:22px 20px}}

/* bloc équipe de l'accueil : deux portraits ronds de même cadrage */
.team-ronds{display:flex;gap:40px;justify-content:center;align-items:flex-start}
.team-ronds figure{margin:0!important;text-align:center}
.team-ronds img{width:160px;height:160px;border-radius:50%;object-fit:cover;display:block;margin:0 auto;box-shadow:0 0 0 6px #fff,0 0 0 7px var(--line)}
.team-ronds figcaption{font-size:14px;color:var(--muted);padding-top:16px}
.team-ronds figcaption strong{display:block;color:var(--navy);font-size:17px;font-weight:600}
@media(max-width:900px){.team-ronds{justify-content:flex-start;margin-bottom:28px}}

/* formulaire */
.contact-form textarea::placeholder{color:#8a91a0}

@media(max-width:640px){
  .eyebrow,.hero .eyebrow,.hero-copy .eyebrow,.inner-hero .eyebrow{font-size:14px!important}
  .lead{font-size:17px}
  .hero h1{font-size:40px;line-height:1.05}
  .contact-band .btn{white-space:normal}
  .team-ronds{gap:24px}
  .team-ronds img{width:128px;height:128px}
}

/* tailles minimales, suite : bouton d'accueil, menu, pied de page ; cibles tactiles d'au moins 24 px */
.hero .btn{font-size:16px}
.portrait-note span{font-size:14px}
.footer-about,.footer-list a,.site-footer address{font-size:15px}
.footer-title{font-size:14px}
.footer-bottom,.footer-bottom a,.footer-bottom span{font-size:14px}
.footer-list a{display:inline-block;padding:5px 0}
.footer-bottom a{display:inline-block;padding:5px 0}
.hero-call a,.contact-band p a{display:inline-block;padding:4px 0}
.faq-list summary{min-height:44px;display:flex;align-items:center;padding-top:10px;padding-bottom:10px}
@media(max-width:900px){.menu-toggle{font-size:15px}.hero .btn{font-size:16px}}
@media(max-width:640px){
  .guarantee{padding:18px 18px}
  .guarantee h3{font-size:23px;margin-bottom:6px}
  .guarantees{gap:14px}
}

/* ─── Second passage du 02/10/2026 (roast indépendant) ───────────────────────────────── */
.header-inner{height:80px}
@media(min-width:901px){.hero{padding:40px 0 52px}}
.hero-proof{margin:22px 0 0;font-size:14px;color:var(--muted)}
.hero-proof a{color:var(--navy);font-weight:600;text-underline-offset:3px;display:inline-block;padding:4px 0}

/* pour qui */
.profiles{list-style:none;padding:0!important;margin:0 0 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.profiles li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;font-size:15px;color:var(--muted);line-height:1.5}
.profiles strong{display:block;color:var(--navy);font-size:16px;font-weight:600;margin-bottom:2px}

/* ce que couvre le forfait de départ */
.socle{margin:0 0 14px;padding-left:20px;color:var(--ink)}
.socle li{margin-bottom:6px;font-size:15px}
.price-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:22px}
.price-band{align-items:start}

/* bouton après les étapes, sur fond bleu nuit */
.dark-section .btn{background:var(--rose);border-color:var(--rose);color:var(--navy)}
.dark-section .btn:hover{background:var(--rose-light);border-color:var(--rose-light);color:var(--navy)}
.process-cta{margin-top:44px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.process-cta p{margin:0;color:#d0daec;font-size:15px}

/* lisibilité */
.faq-list details p{font-size:16px}
.actions .text-link{border-color:#8a93a6}
.btn,.actions .text-link,.service-card{transition-property:background-color,border-color,color,box-shadow,transform}
.contact-form textarea::placeholder{color:#6b7280}

@media(max-width:900px){.profiles{grid-template-columns:1fr}}
@media(max-width:640px){
  .service-card p,.service-card ul,.guarantee p,.distance-band p,.step p,.team-copy p,.price-band p,.socle li,
  .profiles li,.section-head p,.footer-list a,.footer-about,.proof-copy p,.detail-item p,.deliverables li{font-size:16px}
  .eyebrow,.hero .eyebrow,.hero-copy .eyebrow,.inner-hero .eyebrow{font-size:15px!important}
  .text-link{min-height:44px}
  .footer-list a,.footer-bottom a{padding:10px 0}
  .hero-call a,.hero-proof a{padding:10px 0}
  .price-actions .btn{width:100%}
}

/* ligne de preuves sous le bouton : une liste sur téléphone ; menu déroulant lisible */
.dropdown a{font-size:15px}
@media(max-width:640px){.hero-proof .sep{display:none}.hero-proof .hp{display:block}}

/* Couleur d'accent des grands titres (remarque de Fred, 02/10/2026) : le rouge brique (--rose-dark) jurait
   avec le rose saumon du thème. Rose poudré de la même teinte que les boutons (#E8A09A), assombri juste
   assez pour les grands titres : 3,2:1 sur le fond, au-dessus du seuil WCAG de 3:1 pour le texte de grande
   taille. Les petites étiquettes, qui demandent 4,5:1, passent au bleu des autres étiquettes de section. */
:root{--rose-title:#c8766f}
h1 em,.hero h1 em{color:var(--rose-title)}
.price-figure .price-label,.price-aside .price-label,.facts li strong{color:var(--navy-light)}
.facts li strong{font-size:14px}
.price-aside>span{color:#4b5563}

/* menu plus lisible (demande de Fred, 02/10/2026) */
.nav>a:not(.btn),.nav-services>summary{font-weight:600}
/* cas client réel (affiché seulement avec l'accord écrit du client) */
.cas-citation{margin:18px 0 0;padding:18px 22px;border-left:4px solid var(--rose);background:#fff;border-radius:12px;box-shadow:var(--shadow-sm)}
.cas-citation p{margin:0 0 8px;font-size:17px;color:var(--ink)}
.cas-citation footer{font-size:14px;color:var(--muted)}
.cas-a-venir{background:transparent;border:2px dashed var(--line);border-left:4px dashed var(--rose);box-shadow:none}
.cas-a-venir p{color:var(--muted);font-style:italic}

/* Propositions en attente d'accord (demande de Fred, 02/10/2026) : italique et couleur d'accent, pour qu'on voie
   d'un coup d'œil ce qu'on souhaite publier avec l'accord de la personne concernée. Rose foncé de la même famille
   que les titres, lisible en petit texte (4,6:1). Retirer « proposition » une fois l'accord reçu. */
:root{--rose-texte:#ac5a53}
.proposition h2 em{color:var(--rose-title)}
.proposition .lead,.proposition .cas-citation p,.proposition .cas-citation footer{font-style:italic;color:var(--rose-texte)}
.proposition .cas-citation{border-color:#e9c9c5;border-left-color:var(--rose)}
details.proposition summary,details.proposition p{font-style:italic;color:var(--rose-texte)}

/* Accueil (14/10/2026) : la grille des services ne porte plus que les trois services d'Audrey ;
   les prestations de Fred passent dans le bandeau « En complément, avec Frédéric ». */
@media(min-width:1101px){.services-grid{grid-template-columns:repeat(3,1fr);gap:28px}}
.complement-section{padding-top:64px;padding-bottom:64px}.complement-section .distance-band{margin-top:0;background:none;padding:0;border-radius:0}
.complement-section .price-actions{display:flex;flex-wrap:wrap;gap:28px;margin-top:10px}

/* 14/10/2026 : premier écran raccourci (texte foncé, prix sur sa ligne) et formulaire en bas de l'accueil */
.hero .lead{color:var(--ink);margin-bottom:10px}
.hero-price{margin:0 0 26px;font-size:17px;color:var(--ink)}
.home-form{background:var(--pale)}
.home-form .contact-info h2{font-size:44px;margin-bottom:16px}
.home-form .contact-info p{color:var(--ink)}
.home-form .contact-info p a{font-weight:600;color:var(--navy);white-space:nowrap}
.home-form .contact-form textarea{min-height:120px}
@media(max-width:640px){.home-form .contact-info h2{font-size:32px}.home-form .contact-info{margin-bottom:24px}}

/* ─── Section services de l'accueil (15/10/2026) : la question, son paragraphe dessous, puis « Pour qui » à part ─── */
.section-head-stack{display:block;max-width:780px}
.section-head-stack h2{margin-bottom:20px}
.section-head-stack p{max-width:none}
.for-whom{margin-top:56px}
.for-whom h3{margin-bottom:8px}
.for-whom>p{color:var(--muted);margin-bottom:20px}
.for-whom .profiles{margin-bottom:0}

.header-call{flex:none}.header-call+.header-call{margin-left:8px}
@media(max-width:480px){.header-inner{gap:10px}}
@media(max-width:400px){.brand svg{width:34px;height:37px}.brand-name{font-size:21px}.header-call{width:40px;min-height:40px}.menu-toggle{font-size:0;gap:0;padding:9px 11px}.menu-toggle:after{font-size:18px}}
.team-full p{color:#464e5d}
.hero-avatar{display:none}
@media(max-width:640px){.hero-avatar{display:flex;align-items:center;gap:14px;margin:0 0 22px}.hero-avatar picture{flex:none;display:block;width:56px;height:56px}.hero-avatar img{display:block;width:56px;height:56px;border-radius:50%;object-fit:cover}.hero-avatar p{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.hero-avatar strong{color:var(--navy);font-weight:600}.portrait-composition{display:none}}

/* ─── Contrôle en largeur téléphone (16/10/2026) ─── */
.menu-toggle[aria-expanded="true"]:after{content:'✕'}
.breadcrumb{font-size:13px}
.breadcrumb a{padding:4px 0}
@media(min-width:641px) and (max-width:1100px){.services-grid>.service-card:last-child:nth-child(odd){grid-column:1/-1}}
