/*
Theme Name: Solo, l’esprit libre
Author: Kelly Adouritz
Description: Version SEO 18 avec corrections visuelles et responsive.
Version: 18.13
Text Domain: solo-esprit-libre
*/
/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ivory:#faf8ec;--paper:#faf8ec;--charcoal:#321e07;--sage:#56776e;--sage-soft:#d67662;--sage-pale:#faf8ec;--sand:#56776e;--saffron:#e0ae3d;--hero-cream:#faf8ec;--hero-brown:#321e07;--hero-terracotta:#d67662;--hero-terracotta-soft:#d67662;--terracotta-ink:#56776e;--ochre-ink:#56776e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--charcoal);font-family:var(--font-body), Arial, sans-serif;margin:0}a{color:inherit;text-decoration:none}.site-header{z-index:20;background:var(--hero-cream);align-items:center;gap:48px;max-width:1440px;height:104px;margin:0 auto;padding:18px 48px;display:flex;position:relative}.brand{flex-direction:column;margin-right:auto;line-height:1;display:flex}.brand strong{font:500 28px/.9 var(--font-display), Georgia, serif;letter-spacing:.12em;text-transform:uppercase}.brand span{color:var(--ochre-ink);letter-spacing:.32em;text-transform:uppercase;margin-top:9px;font-size:10px;font-weight:600}nav{align-items:center;gap:28px;display:flex}nav a{font-size:15px;font-weight:500;position:relative}nav a:after{content:"";background:var(--hero-terracotta);height:2px;transition:right .25s;position:absolute;bottom:-8px;left:0;right:100%}nav a:hover:after,nav a:focus-visible:after{right:0}.header-cta{border:1px solid var(--terracotta-ink);color:var(--terracotta-ink);padding:13px 18px;font-size:14px;transition:all .25s}.header-cta:hover{color:var(--ivory);background:var(--terracotta-ink)}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;border:1px solid var(--sage);color:var(--sage);padding:10px 14px;font-size:14px;font-weight:600;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu>div{z-index:30;background:var(--paper);border:1px solid #56776e;min-width:245px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px #56776e}.mobile-menu a{padding:12px 10px;font-size:14px}.mobile-menu a+a{border-top:1px solid var(--sand)}.hero{isolation:isolate;background:var(--hero-cream);justify-content:space-between;align-items:center;max-width:1500px;min-height:690px;margin:0 auto;padding:92px max(7vw,42px) 110px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:4;text-align:left;width:min(700px,56%);position:relative}.hero-badge{color:var(--hero-terracotta);letter-spacing:.15em;text-transform:uppercase;background:#faf8ec;border:1px solid #d67662;border-radius:999px;margin:0 0 28px;padding:9px 16px;font-size:12px;font-weight:600;animation:.65s ease-out 50ms both hero-rise;display:inline-flex}.eyebrow{color:var(--sage);letter-spacing:.17em;text-transform:uppercase;margin:0 0 22px;font-size:13px;font-weight:600}.eyebrow i{background:var(--sage);border-radius:50%;width:5px;height:5px;margin:0 13px 2px;display:inline-block}h1,h2{font-family:var(--font-display), Georgia, serif;letter-spacing:-.04em;margin:0;font-weight:500}h1{font-size:clamp(60px,6.7vw,100px);line-height:.96}.hero h1{max-width:760px;color:var(--sage);margin:0}.hero h1 em{color:var(--ochre-ink);margin-top:.08em;font-style:italic;line-height:.95;display:block}.hero-promise{max-width:650px;color:var(--charcoal);font-family:var(--font-display), Georgia, serif;letter-spacing:-.025em;margin:26px 0 0;font-size:clamp(25px,2.2vw,35px);line-height:1.12;animation:.7s ease-out .2s both hero-rise}.hero-title-line{margin-bottom:-.06em;padding-bottom:.06em;display:block;overflow:hidden}.hero-title-line>span{animation:.82s cubic-bezier(.2,.75,.2,1) both title-reveal;display:block}.hero-title-line-second>span{animation-delay:.13s}.rotating-words{height:1.08em;color:var(--saffron);margin-top:.08em;font-style:italic;animation:.7s ease-out .32s both hero-rise;display:block;position:relative;overflow:hidden}.rotating-word{opacity:0;justify-content:flex-start;align-items:center;animation:11s cubic-bezier(.45,0,.2,1) infinite word-cycle;display:flex;position:absolute;inset:0;transform:translateY(100%)}.rotating-word:nth-child(2){animation-delay:2.2s}.rotating-word:nth-child(3){animation-delay:4.4s}.rotating-word:nth-child(4){animation-delay:6.6s}.rotating-word:nth-child(5){animation-delay:8.8s}h1 em,h2 em{color:var(--charcoal);font-weight:500}.hero-text{max-width:650px;color:var(--sage);margin:34px 0 0;font-size:18px;line-height:1.72;animation:.72s ease-out .24s both hero-rise}.hero-reassurance{color:var(--sage);margin-top:18px;font-size:13px;animation:.72s ease-out .4s both hero-rise;display:block}.hero-actions{flex-wrap:wrap;justify-content:flex-start;gap:14px;margin-top:36px;animation:.72s ease-out .34s both hero-rise;display:flex}.hero-photo{z-index:3;border-radius:220px 220px 18px 18px;flex:none;width:min(420px,35vw);height:560px;animation:.85s ease-out .1s both reveal;position:relative;overflow:hidden;box-shadow:0 28px 70px #56776e}.hero-photo:after{content:"";background:linear-gradient(#0000 56%,#56776e);position:absolute;inset:0}.hero-photo>img:first-child{object-fit:cover;object-position:52% center;width:100%;height:100%}.hero-photo span{z-index:2;color:var(--saffron);text-shadow:0 2px 14px #56776e;letter-spacing:.16em;text-align:center;text-transform:uppercase;font-size:11px;font-weight:600;position:absolute;bottom:28px;left:30px;right:30px}.button{border:1px solid var(--sage);justify-content:center;align-items:center;gap:24px;min-height:54px;padding:0 25px;font-size:14px;font-weight:600;transition:transform .25s,background .25s;display:inline-flex}.button span{font-size:21px;transition:transform .25s}.button:hover{transform:translateY(-2px)}.button:hover span{transform:translate(4px)}.hero .button{border-color:var(--sage)}.hero .button-primary{background:var(--sage);color:var(--ivory)}.hero .button-primary:hover{background:#56776e}.hero .button-secondary{color:var(--sage);background:#faf8ec}.hero .button-secondary:hover{background:#56776e}.hero-visual{height:620px;animation:.8s ease-out .1s both reveal;position:relative}.workspace-board{background:var(--sage);border-radius:28px 0 0 28px;position:absolute;inset:14px -55px 10px 20px;overflow:hidden;box-shadow:0 30px 70px #56776e}.board-top{height:82px;color:var(--ivory);justify-content:space-between;align-items:center;padding:20px 60px 18px 28px;display:flex}.board-top span{font:600 24px var(--font-display), serif}.board-top small{opacity:.68;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.workspace-board>img{object-fit:cover;opacity:.9;filter:saturate(.75);width:100%;height:250px;position:absolute;inset:82px 0 auto}.mini-card,.progress-card{z-index:3;background:var(--paper);color:var(--charcoal);border:1px solid #56776e;position:absolute;box-shadow:0 14px 32px #56776e}.mini-card{grid-template-rows:auto auto;grid-template-columns:35px 1fr;align-content:center;width:175px;min-height:112px;padding:18px;display:grid}.mini-card>span{background:var(--sage-pale);width:27px;height:27px;color:var(--sage);font:600 12px var(--font-display), serif;border-radius:50%;grid-row:1/3;place-items:center;display:grid}.mini-card strong{font-size:13px}.mini-card small{color:#56776e;margin-top:6px;font-size:10px}.card-admin{top:295px;left:26px}.card-content{top:260px;left:220px}.card-orga{top:312px;left:414px}.progress-card{padding:20px 22px;bottom:28px;left:130px;right:80px}.progress-card>div{justify-content:space-between;font-size:13px;display:flex}.progress-card>div span{color:var(--sage);font-weight:600}.progress-card i{background:var(--sage-pale);border-radius:9px;height:7px;margin:13px 0 10px;display:block}.progress-card b{border-radius:inherit;background:var(--sage-soft);width:78%;height:100%;display:block}.progress-card small{color:#56776e;font-size:10px}.quick-services{z-index:5;background:#faf8ec;border:1px solid #d67662;border-radius:10px;grid-template-columns:repeat(3,1fr);max-width:1360px;margin:-24px auto 0;padding:26px 22px;display:grid;position:relative;box-shadow:0 18px 55px #56776e}.quick-services a{align-items:center;gap:20px;padding:10px 28px;display:flex}.quick-services a+a{border-left:1px solid var(--sand)}.quick-icon{width:58px;height:58px;color:var(--charcoal);font:600 18px var(--font-display), serif;background:#d67662;border:1px solid #d67662;border-radius:50%;flex:0 0 58px;place-items:center;display:grid}.quick-services strong{margin-bottom:7px;font-size:17px;display:block}.quick-services small{color:var(--sage);line-height:1.55}.section{padding:120px max(6vw,28px)}.section-heading{max-width:650px;margin-bottom:58px}.section-heading h2,.about h2,.contact h2{font-size:clamp(48px,5vw,72px);line-height:.98}.section-heading>p:last-child{max-width:590px;color:var(--sage);margin-top:26px;line-height:1.75}.pain{max-width:1500px;margin:0 auto}.pain .section-heading{max-width:820px}.pain-grid{border-top:1px solid var(--sand);grid-template-columns:repeat(4,1fr);display:grid}.pain-grid article{padding:30px 30px 10px}.pain-grid article+article{border-left:1px solid var(--sand)}.pain-grid span{color:var(--terracotta-ink);font:600 20px var(--font-display), serif}.pain-grid p{color:var(--sage);margin:20px 0 0;font-size:16px;line-height:1.7}.promise{background:var(--sage);color:var(--ivory);grid-template-columns:1fr 1fr;align-items:start;gap:90px;display:grid}.promise .eyebrow{color:var(--ivory);opacity:.82}.promise h2{color:var(--ivory);font-size:clamp(48px,5vw,72px);line-height:.98}.promise-copy{max-width:620px}.promise-copy p{margin:0 0 20px;font-size:16px;line-height:1.8}.promise-copy strong{color:var(--ivory);font:italic 500 29px/1.25 var(--font-display), serif;border-top:1px solid #faf8ec;margin-top:34px;padding-top:28px;display:block}.services{max-width:1500px;margin:0 auto}.service-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.service-card{background:var(--paper);border:1px solid #d67662;border-top:3px solid var(--hero-terracotta);padding:38px;transition:transform .25s,border-color .25s,box-shadow .25s}.service-card:hover{border-color:var(--hero-terracotta-soft);transform:translateY(-5px);box-shadow:0 16px 42px #56776e}.service-number{color:var(--terracotta-ink);font:500 42px var(--font-display), serif;display:block}.service-topline{justify-content:space-between;align-items:center;gap:15px;display:flex}.service-topline small{color:var(--terracotta-ink);letter-spacing:.06em;text-transform:uppercase;border:1px solid #d67662;border-radius:99px;padding:7px 11px;font-size:11px;font-weight:600}.service-card h3{font:600 29px var(--font-display), serif;margin:28px 0 16px}.service-card p{min-height:118px;color:var(--sage);font-size:16px;line-height:1.7}.service-card ul{border-top:1px solid var(--sand);margin:22px 0 0;padding:24px 0 0;list-style:none}.service-card li{padding:8px 0;font-size:15px;line-height:1.5}.service-card li:before{content:"✓";color:var(--terracotta-ink);margin-right:11px}.service-card .service-result{border-top:1px solid var(--sand);min-height:0;color:var(--charcoal);margin:26px 0 0;padding-top:22px;font-size:15px}.service-card-complementary{border-top-color:var(--saffron)}.services-cta{background:#d67662;border:1px solid #56776e;justify-content:space-between;align-items:center;gap:30px;margin-top:32px;padding:28px 32px;display:flex}.services-cta p{max-width:650px;color:var(--sage);margin:0;font-size:16px;line-height:1.7}.services-cta .button-primary{background:var(--sage);color:var(--ivory)}.services-cta .button-primary:hover{background:#56776e}.difference{background:var(--paper)}.difference .section-heading{max-width:830px}.commitment-grid{grid-template-columns:repeat(4,1fr);max-width:1360px;margin:0 auto;display:grid}.commitment-grid article{border-top:2px solid var(--hero-terracotta);padding:28px 30px}.commitment-grid article+article{border-left:1px solid var(--sand)}.commitment-grid h3{font:600 26px var(--font-display), serif;margin:0 0 14px}.commitment-grid p{color:var(--sage);margin:0;font-size:15px;line-height:1.7}.about{background:var(--ivory);grid-template-columns:42% 58%;padding-left:0;display:grid}.about-note{background:var(--hero-terracotta-soft);min-height:600px;color:var(--ivory);place-items:center;padding:60px;display:grid;position:relative;overflow:hidden}.about-note>img{object-fit:cover;object-position:center 38%;filter:none;width:100%;height:100%;position:absolute;inset:0}.about-note:before{z-index:1;background:linear-gradient(#0000 62%,#56776e);border:0!important;border-radius:0!important;width:auto!important;height:auto!important;inset:0!important}.about-note:before,.about-note:after{content:"";border:1px solid #faf8ec;border-radius:50%;position:absolute}.about-note:after{width:360px;height:360px;bottom:-150px;right:-200px}.about-note span{color:var(--ivory);text-shadow:0 2px 18px #56776e;text-align:center;font:italic 500 40px/1.12 var(--font-display), serif;z-index:2;position:absolute;bottom:45px;left:30px;right:30px}.about-copy{align-self:center;max-width:720px;padding:22px 8vw}.about-copy .lead{font:500 25px/1.45 var(--font-display), serif}.about-copy .eyebrow{color:var(--terracotta-ink)}.about-copy p:not(.eyebrow):not(.lead){color:var(--sage);line-height:1.75}.values{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.values span{border:1px solid var(--hero-terracotta-soft);color:var(--terracotta-ink);border-radius:99px;padding:9px 18px;font-size:13px}.process{background:var(--paper)}.centered{text-align:center;margin-left:auto;margin-right:auto}.step-grid{grid-template-columns:repeat(3,1fr);max-width:1160px;margin:0 auto;display:grid}.step-grid article{text-align:center;padding:20px 48px;position:relative}.step-grid article+article:before{content:"";background:var(--sand);width:1px;position:absolute;top:15%;bottom:15%;left:0}.step-grid span{color:var(--terracotta-ink);font:500 58px var(--font-display), serif}.step-grid h3{font:600 27px var(--font-display), serif;margin:16px 0}.step-grid p{color:var(--sage);font-size:16px;line-height:1.7}.faq{background:var(--ivory);grid-template-columns:.8fr 1.2fr;gap:90px;display:grid}.faq .section-heading{margin-bottom:0}.faq-list{border-top:1px solid var(--sand)}.faq-list details{border-bottom:1px solid var(--sand)}.faq-list summary{cursor:pointer;color:var(--charcoal);font:600 22px/1.35 var(--font-display), serif;justify-content:space-between;gap:25px;padding:25px 0;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--terracotta-ink);font:500 28px/1 var(--font-body), sans-serif;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{color:var(--sage);margin:-4px 45px 25px 0;font-size:16px;line-height:1.75}.portfolio{max-width:1500px;margin:0 auto}.project-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.project-card{background:var(--paper);border:1px solid #d67662}.project-image{height:360px;overflow:hidden}.project-image img{object-fit:cover;filter:saturate(.78);width:100%;height:100%;transition:transform .55s,filter .35s}.project-card:hover img{filter:saturate();transform:scale(1.035)}.project-copy{padding:30px 34px 34px}.project-copy>span,.post-card>span{color:var(--hero-terracotta);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:600}.project-copy h3,.post-card h3,.post-card h2{font:600 29px/1.15 var(--font-display), serif;margin:13px 0 12px}.project-copy p,.post-card p{color:var(--sage);font-size:14px;line-height:1.7}.blog{background:var(--ivory)}.blog-heading{grid-template-columns:1.4fr .6fr;align-items:end;gap:60px;max-width:1360px;margin:0 auto 58px;display:grid}.blog-heading h2{font-size:clamp(48px,5vw,72px);line-height:.98}.blog-heading>p{color:var(--sage);line-height:1.75}.post-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1360px;margin:0 auto;display:grid}.post-card{border-top:3px solid var(--hero-terracotta-soft);background:#faf8ec;flex-direction:column;min-height:390px;padding:34px;display:flex;position:relative}.post-number{color:#56776e;font:500 56px/1 var(--font-display), serif;margin-bottom:54px}.post-card p{margin-bottom:28px}.post-card a{border-top:1px solid var(--sand);justify-content:space-between;margin-top:auto;padding-top:20px;font-size:13px;font-weight:600;display:flex}.post-card a b{color:var(--hero-terracotta);font-size:18px}.blog-page-hero{background:var(--hero-cream);grid-template-columns:1.15fr .85fr;align-items:center;gap:72px;max-width:1500px;min-height:570px;margin:0 auto;padding:70px max(7vw,42px);display:grid}.blog-page-hero h1{color:var(--sage);font-size:clamp(58px,6vw,88px);line-height:.95}.blog-page-hero h1 em{color:var(--terracotta-ink)}.blog-page-hero>div>p:last-child{max-width:650px;color:var(--sage);margin:30px 0 0;font-size:17px;line-height:1.75}.blog-page-hero img{object-fit:cover;border-radius:220px 220px 18px 18px;width:100%;height:430px}.blog-coming>div>p:not(.eyebrow){max-width:650px;color:var(--sage);margin:24px 0 0;font-size:17px;line-height:1.75}.blog-coming .button{background:var(--sage);color:var(--ivory);margin-top:32px}.blog-page-list{background:var(--ivory)}.blog-page-list .post-grid{grid-template-columns:repeat(3,1fr)}.blog-page-list .post-card{min-height:410px}.blog-cta{text-align:center;background:var(--paper);padding:100px max(6vw,28px)}.blog-cta h2{color:var(--sage);margin-bottom:30px;font-size:clamp(44px,5vw,68px)}.blog-cta .button-primary{background:var(--sage);color:var(--ivory)}.blog-cta .button-primary:hover{background:#56776e}.contact{background:var(--sage);color:var(--hero-cream);grid-template-columns:58% 42%;align-items:center;gap:70px;display:grid;position:relative;overflow:hidden}.contact>*{z-index:1;position:relative}.contact .eyebrow{color:var(--sage-pale)}.contact h2,.contact h2 em{color:var(--hero-cream)}.contact-intro{max-width:610px;margin:28px 0 0;font-size:17px;line-height:1.7}.contact-panel{background:var(--hero-cream);color:var(--sage);border:1px solid #faf8ec;padding:38px;box-shadow:0 18px 55px #56776e}.contact-panel-title{color:var(--charcoal);font:600 27px var(--font-display), serif;margin:0}.contact-panel ul{margin:22px 0;padding:0;list-style:none}.contact-panel li{padding:7px 0;font-size:16px;line-height:1.55}.contact-panel li:before{content:"✓";color:var(--terracotta-ink);margin-right:11px}.contact-panel>p:not(.contact-panel-title){margin:0 0 26px;font-size:15px;line-height:1.7}.contact-panel .button{background:var(--sage);color:var(--ivory);border-color:var(--sage)}.contact-panel .button:hover{background:#56776e}.contact-panel small{margin-top:14px;font-size:13px;display:block}.contact-form{background:var(--hero-cream);color:var(--sage);border:1px solid #faf8ec;padding:34px;box-shadow:0 18px 55px #56776e}.contact-form label{gap:9px;display:grid}.contact-form label>span:first-child{letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.form-row{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.contact-form>label:not(.consent){margin-bottom:16px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{background:var(--paper);width:100%;color:var(--charcoal);font:inherit;border:1px solid #56776e;border-radius:0;outline:none}.contact-form input:not([type=checkbox]),.contact-form select{height:50px;padding:0 15px}.contact-form textarea{resize:vertical;padding:14px 15px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--hero-terracotta-soft);box-shadow:0 0 0 3px #d67662}.contact-form label>span small{letter-spacing:0;text-transform:none;font-size:11px;font-weight:400}.form-honey{width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}.consent{align-items:flex-start;margin:5px 0 20px;font-size:12px;line-height:1.5;gap:10px!important;display:flex!important}.contact-form .consent>span{letter-spacing:0;text-transform:none;font-size:12px;font-weight:400;line-height:1.55}.consent input{accent-color:var(--hero-terracotta);margin-top:2px}.contact-form .button{cursor:pointer;background:var(--sage);border-color:var(--sage);color:var(--ivory);font-family:inherit}.contact-form .button:hover{background:#56776e}.contact-form .form-reassurance{opacity:.78;margin-top:14px;font-size:12px;display:block}.contact-alternatives{border-top:1px solid #56776e;margin-top:25px;padding-top:21px}.contact-alternatives p{color:var(--charcoal);margin:0 0 10px;font-size:13px;font-weight:600}.contact-alternatives a{color:var(--terracotta-ink);text-underline-offset:4px;margin:4px 18px 4px 0;font-size:13px;font-weight:600;text-decoration:underline;display:inline-block}.button-light{background:var(--paper);color:var(--sage);border-color:var(--paper)}.thank-you{background:var(--sage);min-height:calc(100vh - 104px);color:var(--ivory);text-align:center;place-items:center;padding:90px max(6vw,28px);display:grid}.thank-you>div{max-width:760px}.thank-you .eyebrow{color:#56776e}.thank-you h1{color:var(--ivory);font-size:clamp(56px,7vw,92px)}.thank-you p{max-width:620px;margin:30px auto 0;font-size:17px;line-height:1.75}.thank-you .button{border-color:var(--ivory);background:var(--ivory);color:var(--sage);margin-top:34px}.thank-you .button:hover{background:#faf8ec}footer{background:var(--hero-cream);color:var(--sage);border-top:1px solid #56776e;grid-template-columns:1fr 1.5fr 1fr;align-items:center;gap:35px;padding:65px max(6vw,28px) 35px;display:grid}.footer-brand{margin:0}footer>p{text-align:center;opacity:.8;font-size:13px}footer>div{justify-content:flex-end;gap:22px;font-size:13px;display:flex}footer>small{text-align:center;opacity:.58;grid-column:1/-1;margin-top:35px}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid var(--saffron);outline-offset:4px}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@keyframes reveal{0%{opacity:0;transform:scale(.985)}}@keyframes hero-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes title-reveal{0%{opacity:0;transform:translateY(115%)rotate(1.5deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes word-cycle{0%{opacity:0;transform:translateY(100%)}3%,17%{opacity:1;transform:translateY(0)}20%,to{opacity:0;transform:translateY(-100%)}}@keyframes blob-drift-one{to{transform:translate(44px,28px)scale(1.08)}}@keyframes blob-drift-two{to{transform:translate(-38px,-24px)scale(.94)}}@media (width<=1050px){.site-header{padding:18px 28px}.header-cta{display:none}.hero{padding:76px 6vw 94px}.hero-copy{width:58%}.hero-photo{width:34vw;height:490px}.quick-services{margin:0 24px}.service-grid{grid-template-columns:1fr}.service-card p{min-height:auto}.pain-grid,.commitment-grid{grid-template-columns:repeat(2,1fr)}.pain-grid article:nth-child(3),.commitment-grid article:nth-child(3){border-left:0}.pain-grid article:nth-child(n+3),.commitment-grid article:nth-child(n+3){border-top:1px solid var(--sand)}.promise,.faq{gap:55px}}@media (width<=760px){.site-header{height:88px}.brand strong{font-size:23px}.brand span{letter-spacing:.22em;font-size:9px}nav{display:none}.mobile-menu{display:block}.hero{gap:44px;min-height:610px;padding:66px 24px 78px;display:grid}.hero-copy{width:100%}.hero-photo{border-radius:180px 180px 18px 18px;width:100%;height:470px}h1{font-size:clamp(46px,13vw,60px)}.hero-badge{margin-bottom:22px}.eyebrow i{margin-left:6px;margin-right:6px}.hero-text{font-size:16px}.hero-actions{flex-direction:column;align-items:stretch}.hero-reassurance{text-align:center}.quick-services{border-radius:18px;grid-template-columns:1fr}.quick-services a+a{border-left:0;border-top:1px solid var(--sand)}.section{padding-top:85px;padding-bottom:85px}.section-heading h2,.about h2,.contact h2,.promise h2{font-size:clamp(42px,12vw,58px)}.pain-grid,.commitment-grid{grid-template-columns:1fr}.pain-grid article,.commitment-grid article{padding-left:0;padding-right:0}.pain-grid article+article,.commitment-grid article+article{border-left:0;border-top:1px solid var(--sand)}.promise,.faq{grid-template-columns:1fr;gap:45px}.promise-copy strong{font-size:25px}.services-cta{flex-direction:column;align-items:stretch;padding:24px}.services-cta .button{width:100%}.about{grid-template-columns:1fr;padding-right:0}.about-note{min-height:360px}.about-copy{padding:80px 28px}.step-grid{grid-template-columns:1fr;gap:25px}.project-grid,.post-grid,.blog-heading{grid-template-columns:1fr}.blog-page-hero{grid-template-columns:1fr;gap:40px;padding:60px 24px 80px}.blog-page-hero h1{font-size:clamp(48px,14vw,64px)}.blog-page-hero img{height:340px}.blog-page-list .post-grid{grid-template-columns:1fr}.project-image{height:290px}.blog-heading{gap:20px}.step-grid article+article:before{width:auto;height:1px;inset:0 15% auto}.contact{grid-template-columns:1fr;gap:35px}.contact-panel{padding:25px}.contact-form{padding:24px}.form-row{grid-template-columns:1fr}footer{text-align:center;grid-template-columns:1fr}.footer-brand{align-items:center}footer>div{justify-content:center}footer>small{grid-column:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.rotating-word:first-child{opacity:1;transform:none}}body{font-size:16px}.site-header{gap:30px;height:140px}.header-logo{object-fit:contain;width:124px;height:124px;display:block}.site-header .brand{flex-shrink:0}.hero{gap:40px;padding-top:55px}.hero h1{color:var(--charcoal);letter-spacing:-.025em;font-size:clamp(38px,3.5vw,56px);line-height:1.12}.hero-audience{display:block}.hero h1 em{color:var(--sage);margin-top:.32em;line-height:1.12}.hero-badge{background:var(--ivory);color:var(--sage);font-size:14px}.hero-promise{font-family:var(--font-body), sans-serif;font-size:18px;line-height:1.6}.hero-photo{box-shadow:none}.hero-photo:after{display:none}.hero-photo span{background:var(--ivory);color:var(--charcoal);text-shadow:none;letter-spacing:.02em;text-transform:none;white-space:normal;padding:12px 8px;font-size:14px;line-height:1.6;bottom:20px;left:16px;right:16px}h2,.section-heading h2,.about h2,.contact h2,.promise h2{line-height:1.12}.button{text-align:center;padding:14px 22px;line-height:1.5}.button-primary,.hero .button-primary,.services-cta .button-primary{background:var(--hero-terracotta);color:var(--charcoal);border-color:var(--hero-terracotta)}.button-primary:hover,.hero .button-primary:hover,.services-cta .button-primary:hover{background:var(--saffron);color:var(--charcoal)}.contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px}.contact-form{min-width:0;box-shadow:none}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}.contact-form label>span:first-child,.contact-form .consent>span,.contact-form label>span small{letter-spacing:0;text-transform:none;font-size:14px}.contact-alternatives a{overflow-wrap:anywhere;font-size:14px}footer>div{flex-wrap:wrap}section[id]{scroll-margin-top:24px}.service-card p{min-height:0}.service-card li,.service-result,.commitment-grid p{font-size:16px}.service-topline small{font-size:12px}.testimonials{border-top:1px solid var(--sage);padding-top:70px;padding-bottom:70px}.testimonials .section-heading,.discovery .section-heading{margin-bottom:28px}.discovery{background:var(--ivory);border-top:1px solid var(--sage)}@media (width<=1050px){.site-header{gap:20px}.hero,.contact{gap:28px}}@media (width<=760px){.site-header{height:120px;padding:8px 24px}.header-logo{width:108px;height:108px}.hero{gap:36px;padding:36px 24px 64px}.hero h1{font-size:clamp(34px,9vw,48px)}.hero-photo{justify-self:center;max-width:420px;height:470px}.section{padding-left:24px;padding-right:24px}.about{padding-left:0;padding-right:0}.contact{grid-template-columns:minmax(0,1fr)}.contact-form{padding:20px}.service-card{padding:26px}.button{gap:12px}.hero-badge{letter-spacing:.08em}footer{padding-left:24px;padding-right:24px}}@font-face{font-family:Poppins;src:url(assets/fonts/poppins-400.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Poppins;src:url(assets/fonts/poppins-500.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Poppins;src:url(assets/fonts/poppins-600.woff2)format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(assets/fonts/cormorant-normal.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(assets/fonts/cormorant-italic.woff2)format("woff2");font-style:italic;font-weight:400 700;font-display:swap}:root{--font-body:"Poppins";--font-display:"Cormorant Garamond"}.promise h2 em{color:var(--saffron)}.hero-badge,.hero-promise,.hero-text,.hero-actions,.hero-reassurance,.hero-photo{animation:none}@media (width>=761px) and (width<=900px){.site-header{padding:12px 24px}nav{gap:16px}nav a{font-size:14px}.header-logo{width:108px;height:108px}}.mobile-menu>div,.service-card:hover{box-shadow:none}main,section,header,footer,.hero-copy,.about-copy,.section-heading,.form-row>label,.contact-form label,.blog-page-hero>div{min-width:0}img{max-width:100%}.hero-actions{grid-template-columns:minmax(0,1fr);max-width:410px;display:grid}.hero-actions .button{width:100%;min-width:0}.button{max-width:100%}.button span{flex-shrink:0}.hero .button-secondary:hover{color:var(--ivory)}.hero-photo span{color:#e0ae3d;text-shadow:0 1px 2px #321e07,0 0 5px #321e07;background:0 0;padding:0;font-weight:600;bottom:28px;left:24px;right:24px}.promise h2 em,.thank-you .eyebrow{color:var(--ivory)}.promise .eyebrow,.contact-form .form-reassurance,footer>p,footer>small{opacity:1}.services-cta{background:#d67662}.services-cta p{color:#321e07}.services-cta .button-primary{color:var(--ivory);background:var(--charcoal);border-color:var(--charcoal);flex-shrink:0}.project-copy>span,.post-card>span,.post-card a b{color:var(--sage)}.contact-form textarea::placeholder{color:var(--sage);opacity:1}.contact-form input,.contact-form select,.contact-form textarea{min-width:0;max-width:100%}.consent input{flex:none}footer>*{min-width:0}footer a{overflow-wrap:anywhere}@media (width>=761px) and (width<=1050px){.hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);display:grid}.hero-copy,.hero-photo{width:100%}.about{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.about-copy{padding:22px 28px}.contact{grid-template-columns:minmax(0,1fr)}.services-cta{flex-direction:column;align-items:stretch}.services-cta .button{align-self:flex-start}.step-grid article{padding:20px}footer{text-align:center;grid-template-columns:1fr}footer .brand{align-items:center}footer>div{justify-content:center}}@media (width<=760px){.site-header,.hero,.section,.blog-page-hero,.blog-cta,.thank-you,footer{padding-left:24px;padding-right:24px}.hero{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:clamp(32px,8.7vw,44px)}.section-heading h2,.about h2,.contact h2,.promise h2,.blog-heading h2,.blog-cta h2{font-size:clamp(36px,9.5vw,48px);line-height:1.15}.blog-page-hero h1,.thank-you h1{font-size:clamp(38px,10vw,50px);line-height:1.12}h1,h2,h3{text-wrap:balance;overflow-wrap:break-word}.hero-actions{gap:14px;width:100%;max-width:none}.hero-actions .button{min-height:64px;padding:14px 16px}.about-copy{padding:48px 0 0}.about-note{padding:24px}.about-note span{font-size:32px;left:20px;right:20px}.service-card,.services-cta,.contact-form,.post-card,.project-copy{padding:20px}.step-grid article{padding-left:0;padding-right:0}.hero-photo span{font-size:14px;left:20px;right:20px}.hero-photo{height:450px}.contact-form .button{width:100%;padding-left:12px;padding-right:12px}.mobile-menu>div{width:min(270px,100vw - 48px);min-width:0}.service-topline{flex-wrap:wrap}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}

/* Sparse ochre keyword accents with a high-contrast official brown backing. */
.keyword-ochre {
  color: #e0ae3d;
  background: #321e07;
  padding: 0 .12em .04em;
  border-radius: .06em;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

/* Authentic client review, transcribed verbatim from the supplied capture. */
.client-review { margin: 32px 0 0; max-width: 960px; padding: clamp(24px, 4vw, 48px); background: var(--ivory); color: var(--charcoal); border: 1px solid var(--sage); border-top: 4px solid var(--saffron); }
.review-rating { display: inline-block; padding: 5px 12px; color: var(--saffron); background: var(--charcoal); font-size: 20px; letter-spacing: .12em; line-height: 1.4; }
.client-review blockquote { margin: 24px 0; font-size: 16px; line-height: 1.8; }
.client-review blockquote p { margin: 0 0 12px; }
.client-review figcaption { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: baseline; padding-top: 20px; border-top: 1px solid var(--sage); }
.client-review figcaption strong { font-weight: 600; }
.client-review figcaption span { color: var(--sage); font-size: 14px; }
@media (max-width: 760px) { .client-review { padding: 24px 20px; } }

/* Customizer text accent: visual only; preserves underlying wording and SEO semantics. */
.solo-custom-accent{color:var(--saffron);}

/* v18.4 — Témoignage présenté comme une vraie carte client. */
.client-review {
  position: relative;
  margin: 36px auto 0;
  max-width: 880px;
  padding: clamp(30px, 5vw, 52px);
  background: #faf8ec;
  color: #321e07;
  border: 1px solid rgba(86,119,110,.32);
  border-top: 1px solid rgba(86,119,110,.32);
  border-radius: 24px;
  box-shadow: 0 16px 42px rgba(50,30,7,.08);
  overflow: hidden;
}
.client-review::before {
  content: "“";
  position: absolute;
  top: 4px;
  right: 28px;
  color: rgba(214,118,98,.22);
  font-family: var(--font-display), Georgia, serif;
  font-size: 120px;
  line-height: 1;
  pointer-events: none;
}
.client-review .review-rating {
  position: relative;
  z-index: 1;
  padding: 0;
  color: #e0ae3d;
  background: transparent;
  font-size: 22px;
  letter-spacing: .16em;
}
.client-review blockquote {
  position: relative;
  z-index: 1;
  margin: 24px 0 28px;
  font-size: 16px;
  line-height: 1.85;
}
.client-review figcaption {
  position: relative;
  z-index: 1;
  padding-top: 20px;
  border-top: 1px solid rgba(86,119,110,.28);
}
@media (max-width:760px) {
  .client-review { margin-top: 28px; padding: 28px 22px; border-radius: 18px; }
  .client-review::before { right: 14px; font-size: 88px; }
}

/* v18.5 — cache-busted testimonial card, intentionally distinct from page background. */
.testimonials .client-review {
  background: #fffdf6;
  border: 2px solid #d67662;
  border-top: 6px solid #e0ae3d;
  border-radius: 24px;
  box-shadow: 0 14px 34px rgba(50,30,7,.10);
}
@media (max-width:760px){.testimonials .client-review{border-radius:18px;}}


/* v18.6 — harmonisation visuelle stricte avec l'identité Solo, l'esprit libre. */
/* Palette officielle : eucalyptus #56776e, terracotta #d67662, safran #e0ae3d, ivoire #faf8ec, espresso #321e07. */

/* Plus aucun surlignage/encadré brun derrière les mots accentués. */
.keyword-ochre,
.solo-custom-accent {
  color: #e0ae3d !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
/* Pas de trait décoratif sous « tes projets ». */
.promise-copy strong::after,
.promise-copy .keyword-ochre::after,
.keyword-ochre::after { content: none !important; display: none !important; }

/* Cartes services : sans contour, légèrement surélevées par une ombre douce. */
.service-card,
.service-card-complementary {
  background: #faf8ec !important;
  border: 0 !important;
  border-top: 0 !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 32px rgba(50,30,7,.09) !important;
}
.service-card:hover {
  border: 0 !important;
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(50,30,7,.12) !important;
}

/* Badges : aplats issus uniquement de la charte, sans contour violet/rosé. */
.values span,
.hero-badge,
.service-topline small {
  border: 0 !important;
  box-shadow: 0 7px 18px rgba(50,30,7,.08);
}
.values span:nth-child(1) { background:#56776e !important; color:#faf8ec !important; }
.values span:nth-child(2) { background:#d67662 !important; color:#321e07 !important; }
.values span:nth-child(3) { background:#e0ae3d !important; color:#321e07 !important; }
.values span:nth-child(4) { background:#faf8ec !important; color:#56776e !important; }
.hero-badge { background:#faf8ec !important; color:#56776e !important; }
.service-topline small { background:#d67662 !important; color:#faf8ec !important; }

/* Témoignage : même langage de carte, sans bordure. */
.testimonials .client-review {
  background:#fffdf6 !important;
  border:0 !important;
  border-top:0 !important;
  border-radius:24px;
  box-shadow:0 14px 34px rgba(50,30,7,.10) !important;
}
.client-review figcaption { border-top-color: rgba(86,119,110,.22) !important; }

@media (max-width:760px) {
  .service-card,.service-card-complementary { border-radius:16px !important; }
  .values span { padding:9px 16px; }
}
\n\n/* v18.7 — ajouts ciblés uniquement : offres + corrections demandées, sans refonte. */\n.button-primary,.hero .button-primary,.services-cta .button-primary,.offers .button-primary{background:#56776e !important;color:#faf8ec !important;border-color:#56776e !important;}\n.button-primary:hover,.hero .button-primary:hover,.services-cta .button-primary:hover,.offers .button-primary:hover{background:#321e07 !important;color:#faf8ec !important;border-color:#321e07 !important;}\n.header-logo{width:138px;height:138px;}\n.section-heading{margin-bottom:44px;}\n.section-heading>p:last-child{margin-top:22px;}\n.offers{background:#faf8ec;}\n.offers-grid{align-items:stretch;}\n.offer-card{display:flex;flex-direction:column;height:100%;}\n.offer-card .service-result{margin-top:auto;}\n.offer-bottom{border-top:1px solid rgba(86,119,110,.18);margin-top:24px;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}\n.offer-price{font-family:var(--font-display),Georgia,serif;color:#56776e;font-size:clamp(30px,3vw,42px);font-weight:600;line-height:1;}\n.offer-bottom .button{flex:1;min-width:190px;}\n.hero-photo{width:min(38vw,520px);}\n.hero-photo span{z-index:2;}\n@media (max-width:1050px){.header-logo{width:124px;height:124px}.hero-photo{width:100%;}}\n@media (max-width:760px){.header-logo{width:112px;height:112px}.section-heading{margin-bottom:34px}.section-heading>p:last-child{margin-top:18px}.offer-bottom{align-items:stretch}.offer-bottom .button{width:100%}.hero-photo{width:100%;max-width:440px;height:470px}.hero-photo span{bottom:26px;left:22px;right:22px;}}\n
/* v18.12 — offres : uniquement centrage tarif + bouton, sans autre modification visuelle */
#offres .offer-bottom { text-align: center; align-items: center; }
#offres .offer-bottom .offer-price { display: block; width: 100%; text-align: center; }
#offres .offer-bottom .button { align-self: center; margin-left: auto; margin-right: auto; }

/* v18.13: scoped offer alignment; other sections keep their existing design. */
#offres .offers-grid { align-items: stretch; }
#offres .offer-card { display: flex; flex-direction: column; min-width: 0; }
#offres .offer-card .service-result { margin-top: auto; }
#offres .offer-bottom { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; width: 100%; margin-top: 24px; text-align: center; }
#offres .offer-bottom .offer-price { display: block; width: 100%; font-family: var(--font-display), Georgia, serif; font-size: clamp(30px,3vw,42px); line-height: 1.2; color: var(--sage); text-align: center; }
#offres .offer-bottom .button { flex: none; align-self: center; margin: 0 auto; max-width: 100%; text-align: center; }


/* v18-15 — corrections responsive mobile uniquement */
@media (max-width: 767px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
  main, main > section, .section { max-width: 100%; box-sizing: border-box; }

  /* CTA / bloc découverte : marge régulière et contenu sans débordement */
  .discovery {
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }
  .discovery .section-heading,
  .discovery .button { width: 100%; max-width: 100%; box-sizing: border-box; }
  .discovery .button { white-space: normal; }

  /* Contact : empêcher le fond et le formulaire de dépasser de l'écran */
  .contact {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    overflow: hidden;
  }
  .contact > div,
  .contact-form,
  .contact-form label,
  .contact-form .form-row,
  .contact-form .form-row > label {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  .contact-form .form-row { grid-template-columns: 1fr !important; }
  .contact-form input:not([type="checkbox"]),
  .contact-form select,
  .contact-form textarea {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  .contact-form select {
    padding-right: 42px !important;
    text-overflow: ellipsis;
  }
  .contact-form .consent { align-items: flex-start; }
  .contact-form .consent input[type="checkbox"] { flex: 0 0 auto; }
}

@media (max-width: 380px) {
  .discovery { width: calc(100% - 32px) !important; max-width: calc(100% - 32px) !important; margin-left: 16px !important; margin-right: 16px !important; padding-left: 20px !important; padding-right: 20px !important; }
  .contact { padding-left: 16px !important; padding-right: 16px !important; }
}

/* v18-16 — micro-corrections mobile CTA + liste déroulante */
@media (max-width: 767px) {
  /* Le ? reste avec la phrase précédente grâce à une taille légèrement adaptée. */
  .services-cta p {
    font-size: clamp(20px, 5.7vw, 25px) !important;
    line-height: 1.55 !important;
  }

  /* Le libellé du select reste entièrement lisible sur mobile. */
  .contact-form select {
    font-size: 16px !important;
    line-height: 1.3 !important;
    padding-left: 16px !important;
    padding-right: 38px !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 380px) {
  .contact-form select { font-size: 15px !important; }
}
