/* Soft transitions between sections; internal components retain their structure. */
body.v2:is(.service-page,.bank-page,.services-page,.method-page){--service-canvas:#0f1a30;background:var(--service-canvas)}
body.v2:is(.service-page,.bank-page,.services-page,.method-page) main{background:var(--service-canvas)}
body.v2:is(.service-page,.bank-page,.services-page,.method-page) main>section{border:0;background:transparent}
body.v2:is(.service-page,.bank-page,.services-page,.method-page) :is(.service-hero,.bank-hero,.services-hero,.method-hero){background:var(--service-canvas)}
body.v2:is(.service-page,.bank-page) :is(.service-hero,.bank-hero)::after{display:none}
body.v2:is(.service-page,.bank-page,.services-page,.method-page) :is(.service-hero__visual,.bank-hero__visual,.services-hero__visual,.method-hero__visual)::before{
 content:"";position:absolute;z-index:2;inset:auto 0 0;height:clamp(120px,14vw,210px);
 background:linear-gradient(180deg,rgba(15,26,48,0),rgba(15,26,48,.5) 48%,#0f1a30 100%);pointer-events:none;
}
body.v2:is(.service-page,.bank-page) :is(.service-method-strip,.bank-method-strip){padding-block:clamp(28px,3.5vw,44px);background:transparent;border:0}
body.v2.service-page--residency .service-editorial::before{display:none}
body.v2.services-page .services-catalogue{padding-top:clamp(40px,5vw,68px)}
body.v2.services-page .services-flagship-rail{border:0;background:transparent;padding-block:clamp(20px,3vw,40px)}
body.v2.services-page .services-flagship-rail__numbers,
body.v2.services-page .services-flagship-rail__numbers>div{border:0}
/* This note belongs to both columns, not a separate oversized row under the right column. */
body.v2.services-page .services-fit__grid{column-gap:clamp(36px,6vw,84px);row-gap:30px}
body.v2.services-page .services-fit__quote{
 grid-column:1/-1;display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:24px;
 margin:0;padding:24px 28px;border:1px solid rgba(201,170,102,.075);border-radius:20px;
 background:radial-gradient(ellipse at 15% 50%,rgba(201,170,102,.04),transparent 75%);
 font-style:normal;
}
body.v2.services-page .services-fit__quote span{font-style:normal;font-family:var(--font-label);font-size:.72rem}
body.v2.services-page .services-fit__quote p{
 max-width:900px;margin:0;font-family:var(--font-body);font-size:clamp(1.05rem,1.35vw,1.2rem);
 font-weight:500;font-style:normal;line-height:1.6;letter-spacing:0;color:var(--color-text-primary);
}
body.v2.services-page .services-fit{padding-bottom:clamp(44px,5vw,68px)}
body.v2.services-page .services-commit__panel{
 gap:clamp(32px,5vw,70px);padding:clamp(28px,4vw,48px);border:1px solid rgba(255,255,255,.065);
 border-radius:24px;background:linear-gradient(130deg,rgba(255,255,255,.028),rgba(255,255,255,.008) 70%);
 box-shadow:0 18px 48px rgba(3,9,20,.08);
}
body.v2.services-page .services-commit__facts{display:grid;align-content:center;gap:10px;border:0}
body.v2.services-page .services-commit__facts>div{
 padding:14px 18px;gap:16px;grid-template-columns:28px 1fr;border:0;border-radius:12px;
 background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.008));
 border-bottom:1px solid var(--border-subtle);
}
body.v2:is(.service-page,.bank-page,.services-page,.method-page) :is(.service-card,.bank-card,.bank-audience-card,.gb-audience-card,.services-service,.services-outcome-card,.method-part,.method-example__result,.method-final__card,.tax-fit__not,.tax-proof__rail article){
 border-color:rgba(255,255,255,.085);box-shadow:0 12px 36px rgba(2,8,20,.08);
}
body.v2:is(.service-page,.bank-page) :is(.service-clarity__card,.bank-clarity__card,.bank-fact-panel__card){border-color:rgba(201,170,102,.12);box-shadow:0 12px 36px rgba(2,8,20,.08)}
body.v2:is(.service-page,.bank-page,.services-page) :is(.service-end-note,.bank-end-note,.services-end-note){border:0}
@media(max-width:760px){
 body.v2:is(.service-page,.bank-page,.services-page,.method-page) :is(.service-hero__visual,.bank-hero__visual,.services-hero__visual,.method-hero__visual)::before{height:110px}
 body.v2.services-page .services-fit__grid{row-gap:24px}
 body.v2.services-page .services-fit__quote{grid-template-columns:1fr;gap:10px;padding:22px}
 body.v2.services-page .services-commit__panel{grid-template-columns:1fr;padding:24px 22px;gap:24px}
 body.v2.services-page .services-flagship-rail__numbers{padding-top:8px;gap:8px}
}

/* One section-heading scale across the service family, using Tax Strategy as reference. */
body.v2:is(.service-page,.bank-page,.services-page,.method-page) main h2{
 font-size:clamp(1.9rem,2.55vw,2.6rem);
 line-height:1.04;
 letter-spacing:-.018em;
}
/* Keep separators inside grouped panels; only section boundaries are softened. */
body.v2.services-page .services-commit__facts{border-top:1px solid var(--border-gold)}
body.v2.services-page .services-commit__facts>div{border-bottom:1px solid var(--border-subtle)}
