/* Shared V9 service rhythm. This file owns service typography, sections and forms. */
.sp-design .sp-service-page{--sp-service-space:clamp(48px,5vw,72px);--sp-service-pad:clamp(24px,3vw,36px);color:#394D42;font-family:'Arial Nova',Arial,sans-serif}
/* The approved forest introduction and central transition remain unchanged. */
.sp-design .sp-service-intro-band{background:#394D42;color:#E7E9DF;margin:0;padding:0}
.sp-design .sp-service-intro-band .sp-service-intro{padding:88px 0 52px;max-width:none}
.sp-design .sp-service-intro .sp-advice-stephead{justify-content:flex-start;gap:28px;margin:0 0 26px}
.sp-design .sp-service-intro h1{max-width:1050px;font-size:clamp(38px,4.3vw,62px);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 24px;overflow-wrap:break-word;hyphens:none}
.sp-design .sp-service-intro>p:last-child{font-size:18px;line-height:1.8;max-width:850px;margin:0}
.sp-design .sp-service-intro-band :is(h1,p,a){color:#E7E9DF}
.sp-design .sp-service-intro-band .sp-action{--sp-action-ink:#E7E9DF;--sp-action-hover-ink:#E7E9DF}
.sp-design .sp-service-intro-band .sp-action:focus-visible{outline-color:#E7E9DF}
.sp-design .sp-service-page>.sp-service-content{max-width:none;padding-top:var(--sp-service-space);padding-bottom:var(--sp-service-space)}
/* One heading scale and reading measure across standard and selling sections. */
.sp-design .sp-service-page :is(.sp-service-prose h2,.sp-selling-section h2,.sp-selling-indication h2){font-size:clamp(28px,2.7vw,38px);font-weight:400;line-height:1.22;letter-spacing:-.03em;margin:0 0 24px;max-width:900px}
.sp-design .sp-service-page :is(.sp-service-prose p,.sp-selling-section>p,.sp-selling-columns>div>p){font-size:16px;line-height:1.85;margin:0 0 18px;max-width:76ch}
.sp-design .sp-service-page :is(.sp-service-prose,.sp-selling-opening--photographed>div)>:last-child{margin-bottom:0}
.sp-design .sp-service-story{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:start;margin:0 0 var(--sp-service-space)}
.sp-design .sp-service-story--photographed>.sp-editorial-image{margin:0;align-self:start}
.sp-design .sp-service-story--photographed>.sp-editorial-image img{aspect-ratio:4/3}
/* The illustration follows the same text/image order, retaining the house and trimming pavement. */
.sp-design .sp-service-story--illustrated .sp-service-prose{grid-column:1;grid-row:1}
.sp-design .sp-service-illustration{grid-column:2;grid-row:1;justify-self:center;margin:0;max-width:360px;width:100%}
.sp-design .sp-service-illustration img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:14px}
.sp-design .sp-service-illustration figcaption{font-size:11px;line-height:1.6;color:#4C6758;margin-top:10px}
/* Every method panel has the same three-column structure and spacing. */
.sp-design .sp-service-page .sp-service-process{background:#C3CBB7;border:0;border-radius:14px;padding:var(--sp-service-pad);margin:0 0 var(--sp-service-space)}
.sp-design .sp-service-page .sp-service-process h3{font-size:24px;line-height:1.3;font-weight:400;letter-spacing:-.02em;margin:0 0 26px}
.sp-design .sp-service-page .sp-service-process ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.sp-design .sp-service-page .sp-service-process li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;margin:0;padding:0;border:0;min-width:0}
.sp-design .sp-service-page .sp-service-process li>span{font-size:12px;line-height:1.8;color:#EC671A;padding-top:2px}
.sp-design .sp-service-page .sp-service-process h4{font-size:16px;line-height:1.55;font-weight:600;margin:0 0 6px}
.sp-design .sp-service-page .sp-service-process p{font-size:14px;line-height:1.75;margin:0}
/* Tariffs sit on the light page; the form alone supplies the sage surface. */
.sp-design .sp-services-preview{padding:0;margin:0}
.sp-design .sp-service-concept{font-size:11px;line-height:1.6;color:#4C6758;margin:0 0 20px}
.sp-design .sp-service-offer{background:transparent;border:0;border-radius:0;padding:0;margin:0 0 var(--sp-service-space);scroll-margin-top:24px}
.sp-design .sp-service-offer:last-child{margin-bottom:0}
.sp-design .sp-service-price{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);column-gap:clamp(32px,5vw,72px);align-items:start;margin-bottom:24px}
.sp-design .sp-service-price .sp-advice-kicker{grid-column:1;font-size:10px!important;line-height:1.6;margin:0 0 14px!important}
.sp-design .sp-service-price .sp-advice-kicker:before{content:none}
.sp-design .sp-service-price h2{grid-column:1;font-size:clamp(26px,2.4vw,32px);font-weight:400;line-height:1.25;letter-spacing:-.025em;margin:0 0 18px}
.sp-design .sp-service-amount{grid-column:2;grid-row:1/span 3;align-self:center;font-size:clamp(25px,2.4vw,32px);font-weight:400;line-height:1.4;letter-spacing:-.02em;margin:0;max-width:22ch}
.sp-design .sp-service-price>p:last-child{grid-column:1;font-size:15px;line-height:1.85;max-width:76ch;margin:0}
.sp-design .sp-service-benefit{background:transparent;border:0;border-radius:0;padding:0;margin:28px 0;max-width:900px}
.sp-design .sp-service-benefit>.sp-advice-kicker{display:none}
.sp-design .sp-service-benefit h3{font-size:23px;font-weight:400;line-height:1.35;letter-spacing:-.02em;margin:0 0 14px}
.sp-design .sp-service-benefit p{font-size:14px;line-height:1.85;margin:0 0 14px}
.sp-design .sp-service-benefit summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:13px;line-height:1.6;font-weight:600}
.sp-design .sp-service-benefit dl{margin:12px 0;max-width:730px}
.sp-design .sp-service-benefit dl>div{display:flex;justify-content:space-between;gap:24px;padding:8px 0;font-size:14px;line-height:1.6}
.sp-design .sp-service-benefit dd{margin:0;white-space:nowrap}
.sp-design .sp-service-request{scroll-margin-top:24px;margin:0}
.sp-design .sp-service-request>summary{display:inline-flex;align-items:center;box-sizing:border-box;min-height:54px;max-width:100%;padding:14px 24px;background:#EC671A;color:#E7E9DF;border:0;border-radius:14px;cursor:pointer;font-size:13px;font-weight:600;line-height:1.5;list-style:none;text-align:center}
.sp-design .sp-service-request>summary::-webkit-details-marker{display:none}
.sp-design .sp-service-request>summary:hover{background:#394D42}
.sp-design .sp-service-request>summary:focus-visible{outline:2px solid #394D42;outline-offset:4px}
/* A single shared form card, including selling, valuation, search and membership. */
.sp-design .sp-service-page .sp-advice-form:not(.sp-presentation-form){background:#C3CBB7;border:0;border-radius:14px;max-width:none;padding:var(--sp-service-pad);margin:24px 0 0}
.sp-design .sp-service-page .sp-advice-form:not(.sp-presentation-form) .sp-advice-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;align-items:start}
.sp-design .sp-service-page .sp-advice-fields label{display:grid;grid-template-rows:minmax(min-content,1fr) 50px;gap:8px;min-width:0;align-content:stretch;align-self:stretch;height:100%;font-size:12px;font-weight:600;line-height:1.6}
.sp-design .sp-service-page .sp-advice-fields label:has(textarea){grid-template-rows:auto auto;height:auto}
.sp-design .sp-service-page .sp-field-label{display:block;align-self:end}
.sp-design .sp-service-page .sp-field-label small{display:inline;font-size:11px;font-weight:400;margin-left:5px;white-space:nowrap}
.sp-design .sp-service-page :is(input,select,textarea){display:block;box-sizing:border-box;width:100%;min-width:0;min-height:50px;padding:11px 14px;border:1px solid #4C6758;border-radius:14px;background:#E7E9DF;color:#394D42;font:400 14px/1.6 'Arial Nova',Arial,sans-serif}
.sp-design .sp-service-page textarea{min-height:100px;resize:vertical}
.sp-design .sp-service-page .sp-advice-wide{grid-column:1/-1}
.sp-design .sp-service-page input:invalid{border-color:#4C6758}
.sp-design .sp-service-page :is(input,select,textarea):user-invalid{border-color:#EC671A}
.sp-design .sp-service-page :is(input,select,textarea):focus-visible{outline:2px solid #394D42;outline-offset:3px}
.sp-design .sp-service-page .sp-advice-form>.sp-advice-note{font-size:12px!important;line-height:1.75;max-width:100ch;margin:16px 0}
.sp-design .sp-service-page .sp-advice-form>.sp-advice-note:first-of-type{margin:0 0 20px}
.sp-design .sp-service-page .sp-advice-form>.sp-action{margin-top:4px}
.sp-design .sp-service-page [role=status]{font-size:14px;line-height:1.7;margin:20px 0 0}
.sp-design .sp-service-page [role=status]:empty{display:none}
/* Selling keeps its content and pricing rules while using the same visual vocabulary. */
.sp-design .sp-service-page .sp-selling-section{margin-bottom:var(--sp-service-space)}
.sp-design .sp-service-page .sp-selling-opening--photographed{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:start;max-width:none}
.sp-design .sp-service-page .sp-selling-opening--photographed>.sp-editorial-image{align-self:start}
.sp-design .sp-service-page .sp-selling-opening .sp-selling-lead{font-size:16px;line-height:1.85}
.sp-design .sp-service-page .sp-selling-columns{display:block}
.sp-design .sp-service-page .sp-selling-columns>div{max-width:850px}
.sp-design .sp-service-page .sp-selling-columns>.sp-service-process{margin-top:32px;margin-bottom:0}
.sp-design .sp-service-page .sp-selling-fees{gap:32px}
.sp-design .sp-service-page .sp-selling-fees h3{font-size:24px;line-height:1.35;font-weight:400;margin:0 0 16px}
.sp-design .sp-service-page .sp-selling-indication{padding:var(--sp-service-pad);margin-bottom:var(--sp-service-space)}
.sp-design .sp-service-page .sp-selling-request .sp-service-request{margin-top:24px}
/* Compact related links use the same baseline on every page. */
.sp-design .sp-service-related{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:var(--sp-service-space)}
.sp-design .sp-service-related h3{font-size:14px;font-weight:600;line-height:1.6;white-space:nowrap;margin:0}
.sp-design .sp-service-related .sp-action{white-space:normal}
.sp-design .sp-service-back-bottom{display:inline-flex;align-items:center;min-height:44px;margin:0;flex:0 0 auto}
@media(max-width:1100px){.sp-design .sp-service-page .sp-advice-form:not(.sp-presentation-form) .sp-advice-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.sp-design .sp-service-intro-band .sp-service-intro{padding-top:76px}.sp-design .sp-service-story,.sp-design .sp-service-page .sp-selling-opening--photographed{grid-template-columns:1fr;gap:28px}.sp-design .sp-service-illustration{grid-column:1;grid-row:2;max-width:320px}.sp-design .sp-service-story--illustrated .sp-service-prose{grid-column:1;grid-row:1}.sp-design .sp-service-page .sp-service-process ol{grid-template-columns:1fr;gap:22px}.sp-design .sp-service-price{grid-template-columns:1fr;gap:0}.sp-design .sp-service-amount{grid-column:1;grid-row:auto;max-width:none;margin:0 0 18px}.sp-design .sp-service-price>p:last-child{grid-row:4}.sp-design .sp-service-page .sp-selling-opening--photographed>.sp-editorial-image{grid-column:1;grid-row:2}}
@media(max-width:600px){.sp-design .sp-service-page{--sp-service-space:44px;--sp-service-pad:22px}.sp-design .sp-service-intro-band .sp-service-intro{padding-top:66px;padding-bottom:36px}.sp-design .sp-service-intro .sp-advice-stephead{gap:20px;margin-bottom:26px}.sp-design .sp-service-intro>p:last-child{font-size:16px}.sp-design .sp-service-page .sp-advice-form:not(.sp-presentation-form) .sp-advice-fields{grid-template-columns:1fr;gap:16px}.sp-design .sp-service-page .sp-advice-fields label{grid-template-rows:auto auto}.sp-design .sp-service-process h3{font-size:22px}.sp-design .sp-service-benefit dl>div{gap:12px}.sp-design .sp-service-related{gap:4px 18px}.sp-design .sp-service-related h3{font-size:13px}.sp-design .sp-service-request>summary{justify-content:center}.sp-design .sp-service-page .sp-selling-fees{grid-template-columns:1fr;gap:22px}}
/* The existing method component becomes a full-width forest band between light sections. */
.sp-design .sp-service-page>.sp-service-content--intro>:last-child{margin-bottom:0}
.sp-design .sp-service-method-band{background:#394D42;color:#E7E9DF;padding:48px 0}
.sp-design .sp-service-method-band .sp-service-process{background:transparent;border-radius:0;padding:0;margin:0}
.sp-design .sp-service-page .sp-service-method-band .sp-service-process :is(h3,h4,p){color:#E7E9DF}
@media(max-width:600px){.sp-design .sp-service-method-band{padding:36px 0}}
