/* Palette et composition communes, conservées hors du CSS généré. */
:root{--ink:#203b33;--muted:#58675f;--line:#dce2d8;--paper:#faf8f3;--soft:#f0f3eb;--blue:#235d4e;--blue-dark:#174637;--mint:#235d4e;--teal:#235d4e;--gold:#927445;--dark:#17382e;--shadow:0 8px 24px rgba(32,59,51,.06);--radius:12px}
body{background:var(--paper);color:var(--ink);font-size:17px;line-height:1.65}
h1,h2,.brand strong{font-family:Georgia,"Times New Roman",serif;font-weight:400;text-transform:none;letter-spacing:-.025em;line-height:1.12}
h3{line-height:1.25}
h1{font-size:clamp(38px,5.2vw,66px)}
h2,.section-title h2{font-size:clamp(30px,3.5vw,46px)}
p{color:var(--muted)}
.motion-canvas{display:none}
.topbar{background:var(--paper);border-bottom:1px solid var(--line);color:var(--ink);box-shadow:none;padding:14px clamp(16px,3vw,48px)}
.topbar .brand{color:var(--ink);font-size:22px}
.topbar .brand strong{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em}
.topbar .brand img.brand-logo-full{border:0;background:transparent;padding:0;border-radius:0}
.topbar nav a{color:var(--ink);font-weight:550}
.topbar nav a:hover{background:#e9eee5;color:#17382e;border-color:transparent}
.topbar nav a:last-child,.topbar nav a:last-child:hover{background:#235d4e;color:#fff;border-color:#235d4e}
.topbar nav a:before,.primary-action:before,.button:before,.service-body a:before,.dossier-form button:before{display:none}
.topbar nav a:focus-visible,.topbar .brand:focus-visible,.menu-toggle:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #927445;outline-offset:4px}
.home-immersive{margin-top:0;min-height:620px;padding:72px clamp(24px,6.5vw,94px) 64px;background:#17382e;align-items:center}
.home-hero-media:after{background:linear-gradient(90deg,rgba(18,42,33,.93),rgba(18,42,33,.76) 44%,rgba(18,42,33,.25)),linear-gradient(0deg,rgba(18,42,33,.25),transparent 55%)}
.home-hero-content{width:min(650px,58%);padding:0}
.home-hero-content h1{font-size:clamp(44px,4.8vw,68px);line-height:1.08;max-width:650px;text-shadow:none}
.home-hero-content p:not(.eyebrow){font-size:19px;line-height:1.7;max-width:610px;color:#f1f2e9}
.home-hero-content .eyebrow{color:#d5e3c7!important;font-size:12px;letter-spacing:.12em}
.home-hero-panel{right:clamp(24px,6.5vw,94px);bottom:auto;top:50%;transform:translateY(-50%);width:min(320px,28%);padding:26px;background:rgba(250,248,243,.96);color:#203b33;border:1px solid #dce2d8;border-radius:12px;box-shadow:none;backdrop-filter:none}
.home-hero-panel span{color:#235d4e;font-size:11px}
.home-hero-panel strong{font-size:22px;font-weight:600;line-height:1.3}
.hero-route-list a{background:transparent;color:#203b33!important;border:0;border-bottom:1px solid #dce2d8;border-radius:0;padding:11px 0;font-weight:550;min-height:44px}
.hero-route-list a:hover{background:transparent;color:#235d4e!important;transform:none;border-color:#235d4e}
.home-hero-panel .hero-panel-main{background:#235d4e;font-weight:600;min-height:46px;width:100%;border-radius:6px}
.primary-action,.button,.dossier-form button,.service-body a:not(.text-link){background:#235d4e;border-color:#235d4e;color:#fff;box-shadow:none;font-weight:600;border-radius:6px}
.primary-action:hover,.button:hover,.dossier-form button:hover{background:#174637;box-shadow:none;transform:none}
.quiet-action,.button.secondary{background:#fffdf8;border-color:#dce2d8;color:#203b33;box-shadow:none;backdrop-filter:none;border-radius:6px}
.home-hero-content .quiet-action{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);backdrop-filter:none}
.home-decision-strip{margin:28px auto 0;box-shadow:none;border-radius:10px;background:var(--line)}
.home-decision-strip a{padding:26px;min-height:142px;background:#fffdf8}
.home-decision-strip a:after{display:none}
.home-decision-strip span{color:#927445}
.home-decision-strip strong{font-size:21px;font-weight:600;line-height:1.3}
.home-decision-strip em{font-size:15px;line-height:1.55}
.home-utility-section,.home-transform-section{margin-top:56px;padding:32px;background:#fffdf8;border:1px solid var(--line);border-radius:12px;box-shadow:none;gap:32px}
.utility-copy h2,.transform-copy h2{font-size:clamp(30px,3vw,42px);font-family:Georgia,"Times New Roman",serif}
.utility-copy p,.transform-copy p,.section-title p{font-size:18px;line-height:1.7;color:#58675f}
.utility-options button,.search-chips button{background:#f0f3eb;border-color:#dce2d8;border-radius:6px;font-weight:550;color:#203b33}
.utility-options button[aria-pressed="true"],.search-chips button[aria-pressed="true"]{background:#235d4e;border-color:#235d4e;box-shadow:none}
.utility-result,.after-card,.panel:first-child{background:#17382e;border-radius:8px;box-shadow:none;color:#fff}
.utility-result span,.after-card span{color:#d5e3c7}
.utility-result strong{font-size:26px;line-height:1.3;font-weight:550}
.utility-result p,.after-card p,.after-card li{color:#e0e7dc}
.utility-result .button{background:#f0f3eb;color:#203b33;border-color:#f0f3eb}
.utility-result .button.secondary{background:transparent;color:#fff;border-color:#8fa899}
.before-card{background:#f0f3eb;border-color:#dce2d8;border-radius:8px;box-shadow:none}
.transform-board strong{font-size:23px;line-height:1.3;font-weight:550}
.article-teaser-section,.service-section,.steps-section{padding-top:60px;padding-bottom:20px}
.section-title{margin-bottom:28px;max-width:820px}
.section-title span,.eyebrow,.article-card span,.service-body small,.step-grid span,.coverage-link small{color:#235d4e;font-size:11px;letter-spacing:.1em}
.article-card,.article-card.pillar-card,.canton-card,.service-card,.step-grid article,.coverage-link,.note,.contact-card,.contact-side{background:#fffdf8;color:#203b33;border:1px solid #dce2d8;border-radius:10px;box-shadow:none}
.article-card:before,.canton-card:before,.service-card:before,.coverage-link:before{display:none}
.article-card,.article-card.pillar-card{min-height:210px;padding:24px}
.article-card strong,.canton-card strong,.service-body h3{font-size:21px;line-height:1.3;font-weight:600;color:#203b33}
.article-card em,.canton-card em{font-size:15px;line-height:1.6;color:#58675f}
.article-card:hover,.canton-card:hover,.coverage-link:hover,.service-card:hover{background:#f0f3eb;border-color:#a7b6a5;box-shadow:none;transform:none}
.article-card:nth-child(3n),.article-card:nth-child(4n){background:#fffdf8;color:#203b33}
.article-card:nth-child(3n) strong,.article-card:nth-child(4n) strong{color:#203b33}
.article-card:nth-child(3n) em,.article-card:nth-child(4n) em{color:#58675f}
.article-card:nth-child(3n) span,.article-card:nth-child(4n) span{color:#235d4e}
.article-card.pillar-card:nth-child(n){background:#fffdf8;color:#203b33;border-color:#dce2d8}
.article-card.pillar-card:nth-child(n):hover{background:#f0f3eb;border-color:#a7b6a5}
.article-card.pillar-card:nth-child(n) strong{color:#203b33}
.article-card.pillar-card:nth-child(n) em{color:#58675f}
.article-card.pillar-card:nth-child(n) span{color:#235d4e}
.service-card>img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}
.service-body{padding:24px}
.service-search{background:#fffdf8;border:1px solid #dce2d8;box-shadow:none;border-radius:10px}
.step-grid article{padding:24px}
.step-grid h3{font-size:21px;font-weight:600}
.page-hero:not(.service-detail-hero){background:linear-gradient(90deg,rgba(18,42,33,.96),rgba(18,42,33,.72)),url('/assets/estimation-succession-real-estate-poster.webp') center/cover;box-shadow:none;border:0;border-radius:12px;padding:56px clamp(24px,5vw,72px)}
.page-hero:not(.service-detail-hero) h1{font-size:clamp(36px,5vw,62px);text-shadow:none;line-height:1.14}
.guide-hero,.final-cta{background:#17382e!important;box-shadow:none;border-radius:12px}
.guide-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,4.8vw,60px)!important}
.article{font-size:18px;line-height:1.85}
.article h2{font-size:34px;line-height:1.25}
.article h3{font-size:24px}
.article a:not(.button){text-decoration:underline;text-underline-offset:4px;color:#235d4e}
.footer{background:#f0f3eb;border-color:#dce2d8}
.coverage-grid-wide .coverage-link{background:transparent;border-radius:0;border:0;border-bottom:1px solid var(--line)}
@media(max-width:1100px){.home-hero-content{width:min(720px,100%)}.home-immersive{min-height:610px}.home-hero-panel{display:none}.hero-inline-tool{margin-top:22px}.hero-inline-tool a{min-height:44px;font-size:14px;font-weight:550}.home-utility-section,.home-transform-section{grid-template-columns:1fr}.utility-panel{grid-template-columns:minmax(180px,.65fr) minmax(0,1fr)}}
@media(max-width:700px){.topbar{padding:10px 16px}.topbar .brand{font-size:19px}.menu-toggle{color:#203b33;border-color:#bdcbbb;background:#f0f3eb}.menu-toggle:hover{background:#e1e9dc}.topbar.menu-open nav a{background:#f0f3eb;border-color:#dce2d8;color:#203b33}.topbar.menu-open nav a:last-child{background:#235d4e;color:#fff}.home-immersive{padding:44px 22px 38px;min-height:0}.home-hero-content{width:100%}.home-hero-content h1{font-size:42px;line-height:1.12}.home-hero-content p:not(.eyebrow){font-size:17px;line-height:1.7;margin-top:20px}.home-hero-media:after{background:rgba(18,42,33,.82)}.home-hero-content .hero-actions{margin-top:24px}.home-decision-strip{margin-top:20px}.home-decision-strip a{padding:22px;min-height:0}.home-utility-section,.home-transform-section{padding:22px;margin-top:32px;gap:24px}.utility-panel{grid-template-columns:1fr}.utility-options{grid-template-columns:repeat(2,minmax(0,1fr))}.utility-result{padding:24px}.utility-result strong{font-size:24px}.article-teaser-section,.service-section,.steps-section{padding-top:42px}.article-card,.article-card.pillar-card{min-height:0;padding:22px}.article-card strong,.canton-card strong{font-size:21px}.section-title h2{font-size:32px}.page-hero:not(.service-detail-hero){padding:36px 22px}.page-hero:not(.service-detail-hero) h1{font-size:36px}.page-hero p,.section-title p{font-size:17px}.article{font-size:17px}.article h2{font-size:29px}.service-media{aspect-ratio:16/10}.coverage-grid-wide .coverage-link strong{font-size:16px}}
@media(max-width:360px){.topbar .brand{font-size:16px}.home-hero-content h1{font-size:37px}.utility-options{grid-template-columns:1fr}}
