/* A quiet picture-book opening, followed by a clearly readable consultation path. */
.consult-page .consult-opening{position:relative;isolation:isolate;grid-template-columns:1.12fr 1fr;align-items:center;gap:5%;padding:65px 0 58px}
.consult-opening::before{content:"";position:absolute;z-index:-1;inset:0 -9% -20px;background:#eee9dc;border-radius:0 0 22% 0 / 0 0 14% 0}
.consult-opening::after{content:"";position:absolute;z-index:-1;width:47%;height:82%;right:-6%;top:8%;background:#e0e5d3;border-radius:47% 54% 40% 53% / 43% 45% 51% 52%;transform:rotate(-5deg)}
.consult-page .consult-opening h1{font-size:clamp(28px,3.1vw,45px);line-height:1.8;letter-spacing:.035em;text-wrap:balance}
.consult-page .case-lead{font-size:16px;line-height:2.2}
.consult-illustration{margin:0;align-self:center}
.consult-illustration img{width:100%;height:auto}
.consult-summary{position:relative;margin-top:50px;margin-bottom:15px}
.consult-page .consult-facts{display:grid;grid-template-columns:.7fr .9fr 1.5fr;gap:36px;padding:22px 0 30px;background:none;box-shadow:none;border-radius:0;border-bottom:1px solid #d2ceb9}
.consult-page .consult-facts::before{display:none}
.consult-page .consult-facts div{display:block;border:0;padding:0}
.consult-page .consult-facts dt{margin-bottom:10px;letter-spacing:.08em;font-size:12px}
.consult-page .consult-facts dd{font-size:23px;line-height:1.65}
.consult-page .consult-facts dd small{font-size:12px;margin-top:5px}
.consult-page .case-chapter{grid-template-columns:23% minmax(0,1fr);gap:7%;padding-top:85px;padding-bottom:80px;border:0}
.consult-page .case-margin>span{font-style:italic;font-size:43px;color:#a9743b}
.consult-page .case-margin p{font-size:13px;letter-spacing:.07em}
.consult-page .case-text h2{font-size:clamp(25px,2.6vw,36px);line-height:1.85;margin-bottom:24px;text-wrap:balance}
.consult-page .case-text>p{font-family:var(--body);font-size:14px;line-height:2.2;max-width:650px}
.consultation-route{position:relative;margin:34px 0 30px;padding:0;counter-reset:route}
.consult-page .consultation-route li{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:5px 22px;margin:0;padding:0 0 32px}
.consult-page .consultation-route li::before{position:relative;z-index:1;grid-row:1 / 3;width:46px;height:46px;display:grid;place-items:center;padding:0;background:#ececdd;border-radius:50%;color:#737e58;font-size:14px;align-self:start}
.consultation-route li:not(:last-child)::after{content:"";position:absolute;left:23px;top:50px;bottom:5px;width:1px;background:#c8ccb9}
.consult-page .consultation-route strong{font-size:20px;line-height:1.7;font-weight:500}
.consult-page .consultation-route span{grid-column:2;font-family:var(--body);font-size:14px;line-height:2;color:#626655;max-width:580px}
.consult-page .consult-reassurance{padding-left:22px;border-left:2px solid #b1b99a}
.consult-prepare{position:relative;isolation:isolate}
.consult-prepare::before{content:"";position:absolute;z-index:-1;inset:0 -9%;background:#e6e9db;border-radius:9% 0 0 0 / 12% 0 0 0}
.consult-page .consult-list{margin-top:28px}
.consult-page .consult-prepare .consult-list{display:grid;grid-template-columns:1fr 1fr;gap:28px 38px}
.consult-page .consult-prepare .consult-list li{padding:18px 0 0;border:0;border-top:1px solid #c7cdb8}
.consult-page .consult-prepare .consult-list li::before{display:none}
.consult-page .consult-list strong{font-size:17px;margin-bottom:9px;line-height:1.7}
.consult-page .consult-list span{font-size:13px;line-height:2}
.consult-page .consult-offer{padding-top:95px;padding-bottom:70px}
.consult-offer .case-text{position:relative;background:#fffdf7;padding:40px 44px 36px;border:1px solid #e0d9c7;box-shadow:7px 8px 0 #eee8d9;max-width:740px}
.consult-offer .case-text::before{content:"";position:absolute;top:-10px;left:38px;width:72px;height:20px;background:#d6bc8580;transform:rotate(-3deg)}
.consult-benefit{font-weight:500;background:linear-gradient(transparent 68%,#ecdfbf 68%)}
.consult-page .consult-offer .consult-list li{border:0;padding-top:9px;padding-bottom:9px}
.consult-page .consult-offer .consult-list li::before{top:20px}
.consult-page .consult-cta{position:relative;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:10px;margin-bottom:75px;padding:55px 7%;background:#e4e7d8;border-radius:0 80px 0 0}
.consult-page .consult-cta h2{font-size:clamp(25px,2.7vw,35px);margin-bottom:18px}
.consult-page .consult-cta-actions{flex-direction:row;flex-wrap:wrap;gap:20px 30px;align-items:center}
@media(max-width:760px){
 .consult-page .consult-opening{grid-template-columns:1fr;gap:16px;padding:35px 0 30px}
 .consult-page .consult-opening h1{font-size:clamp(24px,6vw,32px);letter-spacing:0;margin:18px 0}
 .consult-opening::after{top:auto;bottom:15px;right:-5%;width:90%;height:44%}
 .consult-opening::before{bottom:0;border-radius:0 0 15% 0 / 0 0 5% 0}
 .consult-illustration{width:min(100%,420px);justify-self:center}
 .consult-summary{margin-top:25px}
 .consult-page .consult-facts{grid-template-columns:1fr 1fr;gap:22px;padding:20px 0 24px}
 .consult-page .consult-facts div:last-child{grid-column:1 / -1}
 .consult-page .consult-facts dt{margin-bottom:3px}
 .consult-page .consult-facts dd{font-size:20px}
 .consult-page .case-chapter{grid-template-columns:1fr;gap:22px;padding-top:50px;padding-bottom:50px}
 .consult-page .case-margin{display:flex;align-items:center;gap:15px}
 .consult-page .case-margin>span{font-size:29px}
 .consult-page .case-margin p{margin:0;font-size:12px}
 .consult-page .case-text h2{font-size:25px;line-height:1.75}
 .consult-page .consultation-route li{grid-template-columns:40px minmax(0,1fr);gap:5px 15px;padding-bottom:27px}
 .consult-page .consultation-route li::before{width:36px;height:36px;font-size:12px}
 .consultation-route li:not(:last-child)::after{left:18px;top:41px}
 .consult-page .consultation-route strong{font-size:18px}
 .consult-page .consultation-route span{font-size:13px}
 .consult-page .consult-prepare .consult-list{grid-template-columns:1fr;gap:20px}
 .consult-prepare::before{border-radius:40px 0 0 0}
 .consult-offer .case-text{padding:30px 22px;box-shadow:4px 5px 0 #eee8d9}
 .consult-page .consult-cta{padding:35px 24px;border-radius:0 48px 0 0;margin-bottom:50px}
 .consult-page .consult-cta-actions{align-items:stretch}
 .consult-page .consult-cta-actions .button{width:100%}
 .consult-page .consult-cta p:last-child{font-size:13px}
}

/* Full-width bands centered on the viewport, independent of .wrap width. */
.consult-page .consult-opening::before,.consult-page .consult-prepare::before{left:50%;right:auto;width:100vw;transform:translateX(-50%)}
.consult-offer-line{white-space:nowrap}
@media(max-width:760px){.consult-page .consult-offer .case-text h2{font-size:clamp(18px,5vw,23px);letter-spacing:0;line-height:1.8}}
