body.page-reinnoire-website .main-content { display:block; width:100%; max-width:none; margin:0; padding:0; }
.renewal-page { color:#172c31; background:#f9fbfa; line-height:1.55; }
.renewal-page * { box-sizing:border-box; letter-spacing:0; }
.renewal-bound { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.renewal-hero { background:#102b2c url(../images/website-renewal.webp) center center / cover no-repeat; color:#fff; }
.renewal-hero .renewal-bound { padding-block:4.6rem 4.8rem; }
.renewal-hero-content { max-width:30.5rem; position:relative; }
.renewal-kicker { color:#bde5d3; font-size:.8rem; text-transform:uppercase; font-weight:600; margin:0 0 1rem; }
.renewal-page h1,.renewal-page h2,.renewal-page h3 { color:inherit; font-weight:600; line-height:1.13; margin:0; overflow-wrap:anywhere; }
.renewal-page h1 { font-size:4.15rem; }
.renewal-page h2 { font-size:1.95rem; }
.renewal-page h3 { font-size:1.13rem; }
.renewal-lead { color:#d0e3dd; font-size:1.07rem; max-width:26rem; margin:1.1rem 0 1.5rem; }
.renewal-price { display:flex; align-items:center; flex-wrap:wrap; gap:.9rem; margin:0 0 1.5rem; }
.renewal-price strong { font-size:2.45rem; font-weight:600; line-height:1; white-space:nowrap; }
.renewal-price span { color:#c4dbd1; font-size:.82rem; line-height:1.45; border-left:1px solid #71948b; padding-left:.9rem; }
.renewal-cta { display:inline-flex; align-items:center; gap:1rem; justify-content:space-between; color:#102b2c; background:#d4f49d; border:1px solid #d4f49d; font-weight:650; text-decoration:none; border-radius:7px; padding:.72rem .95rem; min-height:46px; }
.renewal-cta:hover { color:#102b2c; background:#bce77d; }
.renewal-hero-actions { display:flex; align-items:center; gap:.55rem 1.1rem; flex-wrap:wrap; }
.renewal-scope-link { color:#daede4; font-size:.86rem; text-underline-offset:4px; }
.renewal-scope-link:hover { color:#fff; }
.renewal-scope { scroll-margin-top:5rem; }
.renewal-page :is(a,summary):focus-visible { outline:3px solid #41a5a0; outline-offset:4px; }
.renewal-scope,.renewal-stages .renewal-bound,.renewal-faq,.renewal-close .renewal-bound { padding-block:3rem; }
.renewal-scope-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.2rem; padding:0; margin:1.65rem 0 0; }
.renewal-scope-list>div { border-top:1px solid #b6cdca; padding:.9rem .25rem 0 0; }
.renewal-scope-list dt { color:#19343a; font-size:1.08rem; font-weight:600; margin:.3rem 0; }
.renewal-scope-list dd,.renewal-stages li p,.renewal-faq details p { margin:0; color:#42595e; font-size:.94rem; overflow-wrap:anywhere; }
.renewal-number { font-size:.75rem; font-variant-numeric:tabular-nums; color:#426e65; }
.renewal-stages { background:#e9f2ee; border-block:1px solid #d5e5df; }
.renewal-stages ol { margin:1.5rem 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.15rem; list-style:none; counter-reset:renewal-stage; }
.renewal-stages li { counter-increment:renewal-stage; padding-left:2.2rem; position:relative; }
.renewal-stages li::before { content:counter(renewal-stage,decimal-leading-zero); position:absolute; inset:.04rem auto auto 0; color:#326258; font-size:.8rem; }
.renewal-stages li p { margin-top:.45rem; }
.renewal-faq { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:1.5rem; }
.renewal-faq details { border-bottom:1px solid #d1e0dc; }
.renewal-faq details:first-child { border-top:1px solid #d1e0dc; }
.renewal-faq summary { color:#1c373d; cursor:pointer; padding:.8rem 0; font-weight:600; }
.renewal-faq details p { padding:0 0 .9rem; }
.renewal-close { background:#102b2c; color:#f5fbf8; }
.renewal-close .renewal-bound { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; }
.renewal-close p { margin:.6rem 0 0; color:#c4dbd1; max-width:37rem; }
@media(max-width:1050px) {
    .renewal-hero { background-position:48% center; }
    .renewal-hero-content { max-width:25rem; }
    .renewal-page h1 { font-size:3.35rem; }
    .renewal-scope-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:820px) {
    .renewal-bound { width:calc(100% - 36px); }
    .renewal-hero { background-size:auto 315px; background-position:right -18px bottom -23px; }
    .renewal-hero .renewal-bound { padding-block:2.2rem 17rem; }
    .renewal-page h1 { font-size:2.75rem; }
    .renewal-page h2 { font-size:1.55rem; }
    .renewal-lead { margin:.85rem 0 1.05rem; }
    .renewal-price { margin-bottom:1.05rem; }
    .renewal-scope,.renewal-stages .renewal-bound,.renewal-faq,.renewal-close .renewal-bound { padding-block:1.65rem; }
    .renewal-stages ol,.renewal-faq { grid-template-columns:1fr; }
}
@media(max-width:385px) {
    .renewal-page h1 { font-size:2.3rem; }
    .renewal-scope-list { grid-template-columns:1fr; }
}
