/* Shared editorial service layouts; no external assets or scripts. */
.mss-service-page { padding-bottom: 1rem; }
.service-breadcrumb { margin: 0 0 2.5rem; font-size: .74rem; color: var(--mss-stone); }
.service-breadcrumb ol { display:flex; flex-wrap:wrap; gap:.4rem .8rem; padding:0; margin:0; list-style:none; }
.service-breadcrumb li { display:flex; gap:.8rem; align-items:baseline; }
.service-breadcrumb li + li::before { content:'/'; color:var(--mss-gold-ink); }
.service-breadcrumb a { color:inherit; text-decoration:none; }
.service-breadcrumb a:hover { text-decoration:underline; }
.service-hero { display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(2rem,5vw,5rem); align-items:center; padding-bottom:5rem; border-bottom:1px solid var(--mss-border); }
.service-hero h1 { max-width:15ch; font-size:clamp(2.7rem,4.8vw,4.65rem); margin-bottom:1.6rem; }
.service-intro { max-width:58ch; color:var(--mss-stone); font-size:1.02rem; line-height:1.85; margin-bottom:2rem; }
.service-visual { position:relative; min-width:0; min-height:25rem; height:100%; max-height:35rem; background:linear-gradient(140deg,#eee8dc,#f9f6f0 60%,#e6ddcd); border:1px solid var(--mss-border); border-radius:48% 48% .2rem .2rem; overflow:hidden; display:grid; align-content:center; }
.service-featured { width:100%; height:100%; min-height:25rem; object-fit:cover; }
.service-line-art { height:19rem; width:80%; margin:auto; display:flex; gap:6%; align-items:end; transform:skewY(-12deg); }
.service-line-art span { width:22%; height:70%; border:1px solid #b2a58b; background:repeating-linear-gradient(90deg,transparent 0,transparent 16px,#c8bdab 17px,transparent 18px); }
.service-line-art span:nth-child(2) { height:100%; background-color:#e0ded5; }
.service-line-art span:nth-child(3) { height:85%; }
.service-line-art span:nth-child(4) { height:55%; }
.visual-caption { margin:2rem 1rem 0; text-align:center; font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; color:var(--mss-gold-ink); }
.service-editorial { padding-top:4rem; }
.service-editorial > p { max-width:75ch; color:var(--mss-stone); font-size:1rem; }
.service-editorial > h2 { margin-top:3.5rem; max-width:25ch; font-size:clamp(2rem,3vw,3rem); }
.service-editorial > h2:first-child { margin-top:0; }
.service-editorial .wp-block-list { padding-left:1.2rem; max-width:78ch; }
.service-editorial .wp-block-list li { margin:.7rem 0; padding-left:.35rem; color:var(--mss-stone); }
.service-editorial .service-coverage { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); list-style:none; padding:0; max-width:none; gap:1px; border:1px solid var(--mss-border); background:var(--mss-border); margin-block:1.8rem 3rem; }
.service-editorial .service-coverage li { margin:0; padding:1.6rem; background:var(--mss-warm-white); }
.service-editorial .service-coverage strong { display:block; color:var(--mss-navy); margin-bottom:.6rem; font-weight:600; }
.service-editorial .service-process { counter-reset:step; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; max-width:none; list-style:none; padding:0; margin-block:2rem 3rem; }
.service-editorial .service-process li { border-top:1px solid var(--mss-soft-gold); padding:1.2rem 0 0; margin:0; font-size:.87rem; }
.service-process li::before { counter-increment:step; content:counter(step,decimal-leading-zero); display:block; font:2rem var(--mss-font-heading); color:var(--mss-gold-ink); margin-bottom:.9rem; }
.service-process strong { display:block; color:var(--mss-navy); margin-bottom:.5rem; }
.service-help { display:flex; justify-content:space-between; align-items:center; gap:2rem; border-block:1px solid var(--mss-border); padding:2rem 0; margin-block:3rem; }
.service-help h2 { font-size:clamp(1.8rem,2.5vw,2.5rem); margin:0; }
.service-help .eyebrow { margin-bottom:.5rem; }
.service-help .button { flex-shrink:0; }
.service-children, .service-related { padding-block:3.5rem; }
.service-link-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; margin-top:2rem; }
.service-detail-card { position:relative; padding:2rem; border:1px solid var(--mss-border); background:var(--mss-warm-white); color:var(--mss-navy); text-decoration:none; display:flex; flex-direction:column; align-items:start; transition:border-color .2s,background .2s; }
.service-detail-card:hover { background:#f4efe5; border-color:var(--mss-gold); }
.service-detail-card > .mss-icon { width:2rem; height:2rem; color:var(--mss-gold-ink); margin-bottom:1.5rem; }
.service-detail-card h3 { font:1.6rem/1.25 var(--mss-font-heading); letter-spacing:-.02em; }
.service-detail-card p { color:var(--mss-stone); font-size:.88rem; max-width:55ch; }
.service-detail-card .text-link { width:100%; border-top:1px solid var(--mss-border); padding-top:1rem; margin-top:auto; justify-content:space-between; }
.service-faq { display:grid; grid-template-columns:.7fr 1.3fr; gap:3rem; padding-block:4rem; border-top:1px solid var(--mss-border); }
.service-faq details { border-bottom:1px solid var(--mss-border); }
.service-faq summary { cursor:pointer; padding:1.3rem 1.5rem 1.3rem 0; font-size:.95rem; font-weight:600; }
.service-faq details > div { color:var(--mss-stone); font-size:.93rem; padding:0 1rem .5rem 0; }
.service-final { padding:clamp(2rem,5vw,4rem); margin-block:2rem; text-align:center; border:1px solid var(--mss-border); background:linear-gradient(125deg,var(--mss-champagne),var(--mss-warm-white)); }
.service-final p:not(.eyebrow) { max-width:50ch; margin:0 auto 1.5rem; color:var(--mss-stone); }
@media(max-width:1100px) { .service-hero { gap:2rem; } .service-process { grid-template-columns:repeat(2,minmax(0,1fr))!important; } }
@media(max-width:780px) { .service-hero { grid-template-columns:1fr; } .service-hero h1 { max-width:19ch; } .service-visual { min-height:18rem; max-height:23rem; width:100%; border-radius:9rem 9rem .2rem .2rem; } .service-line-art { height:14rem; width:65%; } .service-faq { grid-template-columns:1fr; gap:1rem; } .service-help { align-items:start; flex-direction:column; } }
@media(max-width:600px) { .service-breadcrumb { font-size:.69rem; margin-bottom:2rem; } .service-hero { padding-bottom:3rem; } .service-hero h1 { font-size:2.5rem; } .service-intro { font-size:.95rem; } .service-link-grid, .service-editorial .service-coverage, .service-editorial .service-process { grid-template-columns:1fr!important; } .service-detail-card { padding:1.5rem; } .service-children, .service-related { padding-block:2rem; } .service-editorial { padding-top:3rem; } .service-hero .button { padding-inline:1rem; } .service-faq { padding-block:2rem; } }
@media(prefers-reduced-motion:reduce) { .service-detail-card { transition:none; } }

/* Service refinement: native content receives reusable editorial section wrappers. */
.mss-service-page { --service-inset: clamp(1.4rem, 3vw, 2.8rem); padding-top: 1rem; }
.service-breadcrumb { margin-bottom: 1.7rem; line-height: 1.7; }
.service-breadcrumb li { min-width: 0; }
.service-hero { grid-template-columns: 1.2fr .8fr; padding-bottom: 3.5rem; gap: 3rem; }
.service-hero .eyebrow { margin-bottom: 1rem; }
.service-hero h1 { font-size: clamp(2.6rem, 4.1vw, 4rem); max-width: 19ch; }
.service-hero-contact { display:flex; flex-wrap:wrap; gap:.7rem 1.5rem; align-items:center; margin-top:1rem; font-size:.77rem; }
.service-hero-contact > a { min-height:44px; display:inline-flex; align-items:center; }
.service-hero-contact > a:not(.contact-action) { color:var(--mss-stone); }
.service-visual { isolation:isolate; height:29rem; min-height:23rem; max-height:none; border-radius:46% 46% .3rem .3rem; }
.service-visual-orbit { position:absolute; width:80%; height:80%; border:1px solid #c4b184; border-radius:50%; transform:rotate(-28deg); top:4%; right:-9%; z-index:-1; }
.service-visual-orbit::before { content:""; position:absolute; inset:1.4rem; border:1px solid rgb(185 154 91 / 24%); border-radius:50%; }
.service-visual-mark { position:absolute; z-index:2; left:9%; top:22%; display:grid; place-items:center; width:5rem; height:5rem; background:var(--mss-warm-white); border:1px solid #cfc3aa; border-radius:.3rem; box-shadow:var(--mss-shadow); color:var(--mss-gold-ink); }
.service-visual-mark .mss-icon { width:2.5rem; height:2.5rem; }
.service-visual .visual-caption { position:absolute; bottom:1.2rem; width:100%; margin:0; }
.service-visual .service-line-art { width:75%; height:17rem; margin-top:5rem; opacity:.75; }
.service-theme-accounting-tax .service-line-art { transform:none; gap:9%; align-items:end; }
.service-theme-accounting-tax .service-line-art span { background:repeating-linear-gradient(0deg,transparent 0 24px,#c8bdab 25px,transparent 26px); height:35%; }
.service-theme-accounting-tax .service-line-art span:nth-child(2) { height:53%; }
.service-theme-accounting-tax .service-line-art span:nth-child(3) { height:75%; }
.service-theme-accounting-tax .service-line-art span:nth-child(4) { height:100%; }
.service-theme-essential-business-services .service-line-art { transform:rotate(-8deg); align-items:center; justify-content:center; }
.service-theme-essential-business-services .service-line-art span { height:70%; border-radius:1rem 1rem 50% 50%; }
.service-theme-operational-business-services .service-line-art { transform:skewY(-18deg); gap:3%; }
.service-theme-operational-business-services .service-line-art span { width:24%; height:75%; background-color:#e4dfd3; }
.service-theme-visa-support-services .service-line-art { transform:rotate(-15deg); align-items:center; }
.service-theme-visa-support-services .service-line-art span { height:70%; border-radius:50%; background:none; width:24%; }
.service-featured { display:block; position:absolute; inset:0; width:100%; height:100%; min-height:0; }
.service-editorial { padding-top:2rem; max-width:none; }
.service-content-section { padding:var(--service-inset); margin-block:1.4rem; background:var(--mss-warm-white); border:1px solid var(--mss-border); }
.service-content-section h2 { font-size:clamp(1.85rem,2.8vw,2.7rem); max-width:28ch; margin:0 0 1.2rem; }
.service-content-section p { max-width:85ch; color:var(--mss-stone); margin-bottom:1rem; }
.service-content-section p:last-child { margin-bottom:0; }
.service-content-section-1 { display:grid; grid-template-columns:.65fr 1.35fr; gap:2rem; align-items:start; }
.service-content-section-1 h2 { margin:0; }
.service-content-section-1 p { margin:0; }
.service-content-section-3 { background:#eee9df; }
.service-section-coverage { background:#eee9df; }
.service-editorial .service-coverage { gap:1rem; border:0; background:transparent; margin-bottom:0; }
.service-editorial .service-coverage li { border:1px solid #d5cbbb; background:var(--mss-warm-white); padding:1.5rem; }
.service-editorial .service-coverage strong { display:flex; align-items:center; gap:.65rem; }
.service-editorial .service-coverage strong::before { content:""; width:.35rem; height:.35rem; border:1px solid var(--mss-gold-ink); transform:rotate(45deg); flex:0 0 auto; }
.service-section-framework .wp-block-list { counter-reset:framework; display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:1.5rem; max-width:none; list-style:none; padding:0; margin:1.5rem 0 0; }
.service-section-framework .wp-block-list li { border-top:1px solid #c7b997; padding:1.1rem 0 0; margin:0; font-size:.9rem; }
.service-section-framework .wp-block-list li::before { counter-increment:framework; content:counter(framework,decimal-leading-zero); display:block; font-size:.75rem; letter-spacing:.1em; margin-bottom:.8rem; color:var(--mss-gold-ink); }
.service-section-process { background:var(--mss-navy); color:var(--mss-ivory); border-color:var(--mss-navy); }
.service-section-process p, .service-section-process .service-process li { color:#cbd0d9; }
.service-section-process .service-process strong { color:var(--mss-ivory); }
.service-section-process .service-process li::before { color:var(--mss-soft-gold); }
.service-editorial .service-section-process .service-process { margin-bottom:0; }
.service-help { margin-block:1rem; padding:1.7rem var(--service-inset); border:0; }
.service-help h2 { font-size:1.65rem; }
.service-children { padding-block:2.2rem 2.5rem; }
.service-children .eyebrow, .service-related .eyebrow { margin-bottom:.7rem; }
.service-children h2, .service-related h2 { font-size:clamp(2rem,3vw,2.8rem); }
.service-detail-card { overflow:hidden; isolation:isolate; border-radius:.25rem; box-shadow:0 8px 24px rgb(20 34 56 / 3%); transition:transform 180ms,border-color 180ms,box-shadow 180ms; }
.service-detail-card:hover { transform:translateY(-3px); box-shadow:0 12px 26px rgb(20 34 56 / 7%); }
.service-detail-card > .mss-icon { width:3rem; height:3rem; padding:.6rem; border:1px solid #d9ccb2; background:#eee7d9; border-radius:.25rem; margin-bottom:1.5rem; }
.service-card-watermark { position:absolute; z-index:-1; top:-1.8rem; right:-.5rem; color:var(--mss-gold-ink); opacity:.065; }
.service-card-watermark .mss-icon { width:9rem; height:9rem; }
.service-children .service-detail-card:nth-child(3n) { background:#efebe2; }
.service-children .service-detail-card:last-child:nth-child(odd) { grid-column:1 / -1; display:grid; grid-template-columns:3rem minmax(0,1fr) auto; column-gap:1.5rem; align-items:center; }
.service-children .service-detail-card:last-child:nth-child(odd) > .mss-icon { grid-row:1 / 3; margin:0; }
.service-children .service-detail-card:last-child:nth-child(odd) h3 { grid-column:2; margin-bottom:.6rem; }
.service-children .service-detail-card:last-child:nth-child(odd) p { grid-column:2; margin:0; }
.service-children .service-detail-card:last-child:nth-child(odd) .text-link { grid-column:3; grid-row:1 / 3; border:0; gap:1rem; margin:0; }
.service-related { background:var(--mss-warm-white); padding:var(--service-inset); margin-top:2rem; border:1px solid var(--mss-border); }
.service-related .service-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.service-related .service-detail-card { padding:1.5rem; box-shadow:none; background:var(--mss-ivory); }
.service-related .service-detail-card > .mss-icon { width:2.5rem; height:2.5rem; padding:.45rem; margin-bottom:1rem; }
.service-related .service-detail-card h3 { font-size:1.4rem; }
.service-faq { padding-block:3rem; margin-top:2rem; }
.service-faq h2 { font-size:clamp(2rem,3vw,2.8rem); }
.service-faq summary { display:list-item; padding-block:1.25rem; line-height:1.5; }
.service-faq summary::marker { color:var(--mss-gold-ink); }
.service-faq details[open] { background:var(--mss-warm-white); }
.service-faq details > div { padding-bottom:1rem; }
.service-final { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:2rem; text-align:left; padding:var(--service-inset); background:var(--mss-navy); border:1px solid #344154; border-left:3px solid var(--mss-soft-gold); color:var(--mss-ivory); margin-block:0 2rem; }
.service-final .eyebrow { color:var(--mss-soft-gold); margin-bottom:.7rem; }
.service-final h2 { font-size:clamp(2rem,3vw,2.8rem); max-width:18ch; }
.service-final p:not(.eyebrow) { color:#cbd0d9; margin:0; }
.service-final-actions { justify-self:end; }
.service-final-actions > .contact-action { color:var(--mss-ivory); margin-top:1rem; }
.service-final .button-outline { color:var(--mss-ivory); border-color:#7a8392; }
.service-final .button-outline:hover { background:#2a3b52; }
.service-final [data-cta="whatsapp"] > .mss-icon { color:var(--mss-soft-gold); }
.service-final a:focus-visible { outline-color:var(--mss-soft-gold); }
@media(max-width:1100px) {
 .service-hero { gap:2rem; grid-template-columns:1.15fr .85fr; }
 .service-hero .button { padding-inline:1rem; gap:.65rem; }
 .service-visual { height:26rem; }
 .service-final { grid-template-columns:1fr; }
 .service-final-actions { justify-self:start; }
}
@media(max-width:780px) {
 .service-hero { grid-template-columns:1fr; }
 .service-hero h1 { max-width:22ch; }
 .service-visual { height:20rem; min-height:20rem; max-height:none; border-radius:8rem 8rem .3rem .3rem; }
 .service-visual .service-line-art { height:13rem; width:62%; margin-top:3rem; }
 .service-visual-mark { top:18%; left:15%; width:4rem; height:4rem; }
 .service-visual-mark .mss-icon { width:2rem; height:2rem; }
 .service-content-section-1 { display:block; }
 .service-content-section-1 h2 { margin-bottom:1.2rem; }
}
@media(max-width:600px) {
 .mss-service-page { padding-top:.25rem; }
 .service-hero h1 { font-size:2.4rem; }
 .service-breadcrumb { font-size:.69rem; }
 .service-breadcrumb ol { gap:.3rem .55rem; }
 .service-breadcrumb li { gap:.55rem; }
 .service-hero-contact { gap:.3rem 1rem; }
 .service-visual { height:17rem; min-height:17rem; }
 .service-visual .service-line-art { height:10rem; }
 .service-children .service-detail-card:last-child:nth-child(odd) { display:flex; gap:0; }
 .service-children .service-detail-card:last-child:nth-child(odd) > .mss-icon { margin-bottom:1.5rem; }
 .service-children .service-detail-card:last-child:nth-child(odd) p { margin-bottom:1.25rem; }
 .service-children .service-detail-card:last-child:nth-child(odd) .text-link { border-top:1px solid var(--mss-border); margin-top:auto; }
 .service-related .service-link-grid { grid-template-columns:1fr; }
 .service-section-framework .wp-block-list { grid-template-columns:1fr; }
 .service-editorial .service-coverage li { padding:1.1rem; }
 .service-final .button-group { flex-direction:column; }
 .service-final-actions { width:100%; }
 .service-final .button { width:100%; }
 .service-faq { padding-block:2rem; }
}
@media(prefers-reduced-motion:reduce) { .service-detail-card { transition:none; } .service-detail-card:hover { transform:none; } }


.service-content-section > .wp-block-group__inner-container { display:contents; }
