/* Page SEO : styles isolés pour préserver les autres pages du portfolio. */
.seo-page{--ink:#193b4c;--muted:#506570;--rule:#d5dfe1;--paper:#f6f8f8;--seo-blue:#183e50;--seo-copper:#965637;background:var(--paper);color:var(--ink)}
.seo-page::before,.seo-page::after{display:none}
.seo-page .container{width:min(1200px,88%)}
.seo-page a:focus-visible,.seo-page summary:focus-visible{outline:3px solid #b46b44;outline-offset:5px}
.seo-page .eyebrow{font-size:.875rem;letter-spacing:.1em;color:var(--muted)}
.seo-page .eyebrow::before{background:var(--seo-copper)}
.seo-page h2{font-size:clamp(1.9rem,3.2vw,2.7rem);letter-spacing:-.045em;line-height:1.17}
.seo-page h3{font-size:1.35rem;letter-spacing:-.025em;line-height:1.35}
.seo-page p{max-width:70ch}
.seo-page .site-header{padding-block:22px}
.seo-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;padding-top:25px;font-size:.875rem;color:var(--muted)}
.seo-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.seo-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.85fr);gap:7%;align-items:center;padding-block:54px 44px}
.seo-hero h1{font-size:clamp(2.8rem,5.7vw,4.9rem);letter-spacing:-.065em;line-height:1.08;margin:23px 0 26px}
.seo-hero h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--seo-copper);letter-spacing:-.05em}
.seo-hero-copy>p:not(.eyebrow){color:var(--muted);margin-top:18px}
.seo-page .seo-lead{font-size:1.1875rem;line-height:1.6;color:var(--ink)}
.seo-page .hero-actions{gap:14px 24px}
.seo-button{background:var(--seo-blue);color:#fff;border-color:var(--seo-blue)}
.seo-button-light{background:#f4e7d9;color:#173c4c;margin-top:27px}
.seo-page .seo-note{font-size:.875rem;margin-top:19px}
.seo-intro-panel{background:var(--seo-blue);color:#fff;padding:34px;border-radius:4px 44px 4px 4px;border-top:3px solid #c68c65;box-shadow:0 18px 45px #183e5014}
.seo-panel-label{font-family:Georgia,'Times New Roman',serif;font-size:1.85rem;line-height:1.25;letter-spacing:-.02em}
.seo-panel-list{list-style:none;padding:0;margin:27px 0}
.seo-panel-list li{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:19px 0;border-top:1px solid #ffffff30}
.seo-panel-list li>span{color:#e2b492;font-size:.875rem;padding-top:3px}
.seo-panel-list strong{font-weight:500;font-size:1.125rem}
.seo-panel-list p{font-size:1rem;color:#d5e2e7;margin-top:3px}
.seo-panel-foot{font-size:.875rem;color:#d5e2e7;border-top:1px solid #ffffff30;padding-top:20px}
.seo-local{padding:0 0 30px;color:var(--muted);font-size:.9375rem}
.seo-local p{max-width:800px}
.seo-local strong{font-weight:500;color:var(--ink)}
.seo-sections{display:flex;flex-wrap:wrap;gap:6px 32px;padding-block:12px;border-block:1px solid var(--rule)}
.seo-sections a{display:flex;align-items:center;min-height:44px;font-size:.9375rem}
.seo-section{padding-block:80px}
.seo-heading .eyebrow{margin-bottom:19px}
.seo-heading>p:last-child:not(.eyebrow){margin-top:25px;color:var(--muted)}
.seo-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:36px}
.seo-card{padding:29px;display:flex;flex-direction:column;border:1px solid var(--rule);border-top:3px solid #597787;background:#fff;border-radius:5px}
.seo-card:nth-child(2){background:#edf3f5;border-top-color:#183e50}
.seo-card:nth-child(3){background:#f6efe9;border-top-color:#ad7451}
.seo-card-label{font-size:.875rem;color:#526975;margin-bottom:25px}
.seo-card h3{margin-bottom:19px}
.seo-card p{color:#475d68;margin-bottom:18px}
.seo-card .seo-card-result{margin-top:auto;margin-bottom:0;padding-top:21px;border-top:1px solid #cdd6d9;color:var(--ink);font-size:.9375rem}
.seo-method{padding-block:70px;background:#e7eff2;border-block:1px solid #d2e0e5}
.seo-method-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:9%}
.seo-steps{list-style:none;padding:0;margin:0}
.seo-steps li{display:grid;grid-template-columns:45px 1fr;gap:20px;padding:25px 0;border-top:1px solid #bbced7}
.seo-steps li:first-child{padding-top:0;border:0}
.seo-steps li:last-child{padding-bottom:0}
.seo-step-index{font-family:Georgia,'Times New Roman',serif;font-size:1.65rem;line-height:1.3;color:var(--seo-copper)}
.seo-steps p{color:#475d68;margin-top:10px}
.seo-choice{display:grid;grid-template-columns:1fr 1.15fr;gap:9%}
.seo-choice-copy>p{margin-bottom:18px;color:var(--muted)}
.seo-callout{border-left:3px solid #a96642;padding:6px 0 6px 23px;margin-top:26px;font-size:.9375rem}
.seo-price{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;padding:50px;background:var(--seo-blue);border-radius:6px;color:#fff}
.seo-price .eyebrow{color:#d3e0e5}
.seo-price .eyebrow::before{background:#dba17b}
.seo-price h2{margin-top:19px}
.seo-price-label{font-size:2rem;letter-spacing:-.04em;margin-top:26px;color:#f0c7a8}
.seo-price-label span{display:block;font-size:.9375rem;letter-spacing:0;color:#d5e2e7;margin-top:5px}
.seo-price-copy p{color:#e0e9ed;margin-bottom:17px}
.seo-price-copy p:last-of-type{margin-bottom:0}
.seo-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%}
.seo-faq details{border-bottom:1px solid var(--rule)}
.seo-faq details:first-child{border-top:1px solid var(--rule)}
.seo-faq summary{cursor:pointer;font-size:1.0625rem;padding:22px 28px 22px 0;list-style:none;position:relative;line-height:1.55}
.seo-faq summary::-webkit-details-marker{display:none}
.seo-faq summary::after{content:'+';position:absolute;right:0;top:22px;color:var(--seo-copper);font-size:1.3rem}
.seo-faq details[open] summary::after{content:'−'}
.seo-faq details p{padding-bottom:24px;color:var(--muted)}
.seo-contact{background:#e7eff2;padding-block:65px;border-top:1px solid #d2e0e5}
.seo-contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;align-items:center}
.seo-contact h2{margin-block:20px}
.seo-contact p:not(.eyebrow):not(.seo-signature){color:var(--muted)}
.seo-contact .button{margin-top:25px}
.seo-contact-person{border-left:1px solid #b8cdd7;padding-left:35px}
.seo-signature{font-size:1.6rem;font-family:Georgia,'Times New Roman',serif;margin-bottom:15px}
.seo-contact-person a{display:table;padding-block:9px;min-height:44px;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.seo-contact-person a:first-of-type{margin-top:18px}
@media(hover:hover){.seo-button:hover{background:#28566a}.seo-button-light:hover{background:#fff}.seo-sections a:hover,.seo-breadcrumb a:hover{color:var(--seo-copper)}}
@media(max-width:1000px){.seo-cards{gap:14px}.seo-card{padding:23px}.seo-hero{gap:5%}.seo-intro-panel{padding:26px}.seo-price{padding:35px}}
@media(max-width:800px){.seo-hero{grid-template-columns:1fr;padding-top:35px;gap:32px}.seo-hero h1{font-size:clamp(2.65rem,8vw,4rem)}.seo-intro-panel{border-radius:4px 28px 4px 4px}.seo-panel-list{margin:20px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.seo-panel-list li{display:block}.seo-panel-list li>span{display:block;margin-bottom:9px}.seo-panel-label br{display:none}.seo-cards{grid-template-columns:1fr;gap:18px}.seo-card h3 br{display:none}.seo-section{padding-block:52px}.seo-method{padding-block:48px}.seo-method-layout,.seo-choice,.seo-faq{grid-template-columns:1fr;gap:30px}.seo-method h2 br{display:none}.seo-price{grid-template-columns:1fr;gap:28px}.seo-price h2 br{display:none}.seo-contact-layout{grid-template-columns:1fr;gap:35px}.seo-contact-person{padding:25px 0 0;border-left:0;border-top:1px solid #b8cdd7}}
@media(max-width:480px){.seo-page .site-header{gap:16px;align-items:center}.seo-page .site-header>.text-link{max-width:100px;font-size:.875rem;line-height:1.4}.seo-page .brand-signature{gap:8px}.seo-page .brand-wordmark{font-size:.95rem}.seo-page .brand-mark{width:42px;height:42px;flex-shrink:0}.seo-page .brand-mark img{width:100%;height:100%;object-fit:contain}.seo-hero h1 br{display:none}.seo-hero h1 em{display:block}.seo-page .eyebrow{letter-spacing:.065em}.seo-panel-list{grid-template-columns:1fr;gap:0;margin-block:20px}.seo-panel-list li{display:grid;grid-template-columns:28px 1fr;gap:12px;padding-block:14px}.seo-panel-list li>span{margin:0}.seo-panel-label{font-size:1.6rem}.seo-sections{gap:4px 20px}.seo-sections a{font-size:.875rem}.seo-price{padding:28px 23px}.seo-steps li{grid-template-columns:30px 1fr;gap:12px}.seo-hero .hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.seo-contact{padding-block:45px}}
