/* Width/spacing repair also benefits old generated drafts without altering their content. */
main:has(.sepco-content-page), main .wp-block-group:has(.sepco-content-page), main .entry-content:has(.sepco-content-page) { max-width:none!important; width:100%; margin:0!important; padding:0!important; }
main:has(.sepco-content-page) .wp-block-post-title { max-width:1240px; margin:40px auto 0; padding-inline:28px; }
main .entry-content > .sepco-content-page { max-width:1240px!important; }
.sepco-content-page .sepco-content-grid > * { margin-block:0!important; }
.sepco-content-page .sepco-content-card { display:flex; flex-direction:column; }
.sepco-content-page .sepco-content-card .wp-block-buttons { margin-top:auto; padding-top:16px; }
.sepco-content-page .wp-block-button__link { display:inline-block; overflow-wrap:anywhere; }
/* Purpose-built designs provide their own H1, unlike the old text drafts. */
main:has(.sepco-inner) .wp-block-post-title,main:has(.sepco-home) .wp-block-post-title { display:none; }
main .entry-content > .sepco-inner,main .entry-content > .sepco-home { max-width:none!important; margin:0!important; padding:0!important; width:100%!important; }
.sepco-inner { --inner-gutter:max(28px,calc((100% - 1240px)/2)); background:#fff; }
.sepco-inner * { box-sizing:border-box; }
.sepco-inner .wp-block-group > * { margin-block-start:0; }
.sepco-inner .wp-block-heading { font-family:"Bebas Neue","din-2014-narrow",Arial,sans-serif; font-weight:400; text-transform:uppercase; overflow-wrap:normal; }
.sepco-inner p { margin:0 0 24px; line-height:1.65; }
.sepco-inner .sepco-eyebrow { color:#087b91; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin:0 0 16px; }
.sepco-inner-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:center; gap:56px; padding:56px var(--inner-gutter); background:#0b2238; color:#fff; margin:0; }
.sepco-inner-hero h1 { font-size:clamp(38px,4vw,62px); line-height:1.08; margin-bottom:24px; text-wrap:balance; }
.sepco-inner-hero p { font-size:21px; color:#e0e9ef; }
.sepco-inner-hero .sepco-eyebrow { color:#38c9df; font-size:12px; }
.sepco-inner-hero .wp-block-button__link:hover { color:#38c9df; }
.sepco-inner-hero .sepco-content-button-orange .wp-block-button__link:hover { color:#ffab70; }
.sepco-inner-hero-panel { padding:32px; border:1px solid #405971; border-top:3px solid #00b3d6; background:#142e47; }
.sepco-inner-hero-panel p { font-size:18px; }
.sepco-service-page .sepco-inner-hero-panel { border-top-color:#ff7d20; }
.sepco-service-page .sepco-inner-hero .sepco-eyebrow { color:#ffb277; }
.sepco-inner-visual { min-width:0; }
.sepco-inner-visual figure { margin:0; background:#fff; padding:20px; }
.sepco-inner-visual img { width:100%; height:270px; object-fit:contain; display:block; }
.sepco-kind-about .sepco-inner-visual figure { padding:0; }
.sepco-kind-about .sepco-inner-visual img { height:auto; }
.sepco-inner-visual .sepco-eyebrow { margin-top:12px; margin-bottom:0; font-size:10px; color:#bacbd6; }
.sepco-inner-body { padding:64px var(--inner-gutter); margin:0; }
.sepco-inner-lead { margin-bottom:40px; }
.sepco-inner-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; margin:32px 0 48px; }
.sepco-inner-panel { margin:0!important; padding:32px; background:#f1f5f7; border-top:3px solid #00b3d6; min-width:0; }
.sepco-service-page .sepco-inner-panel { border-top-color:#ff7d20; }
.sepco-inner-panel h3 { font-size:28px; }
.sepco-inner-panel p { font-size:19px; }
.sepco-inner-panel p:last-child { margin-bottom:0; }
.sepco-inner-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:28px 0 56px; }
.sepco-inner-grid > * { margin:0!important; }
.sepco-inner-card { border:1px solid #d8e2e8; display:flex; flex-direction:column; min-width:0; }
.sepco-inner-card-image { background:#fff; padding:20px; display:grid; grid-template-rows:180px minmax(30px,auto); gap:12px; }
.sepco-inner-card-image figure { margin:0; }
.sepco-inner-card-image img { width:100%; height:180px; object-fit:contain; display:block; }
.sepco-inner-card-image .sepco-eyebrow { font-size:9px; margin:0; }
.sepco-inner-card-copy { padding:26px; border-top:3px solid #00b3d6; background:#f6f8fa; display:flex; flex:1; flex-direction:column; }
.sepco-service-page .sepco-inner-card-copy { border-top-color:#ff7d20; }
.sepco-inner-card-copy h3 { font-size:27px; }
.sepco-inner-card-copy p { font-size:18px; }
.sepco-inner-card-copy .wp-block-buttons { margin-top:auto; margin-bottom:0; padding-top:12px; }
.sepco-inner-cta { margin:0; padding:48px var(--inner-gutter); background:#eaf2f5; border-top:3px solid #00b3d6; }
.sepco-service-page .sepco-inner-cta { border-top-color:#ff7d20; }
.sepco-inner .sepco-content-coverage { margin:48px 0 0; text-align:center; padding:40px; }
.sepco-inner .sepco-content-coverage p { margin:0 auto 28px; }
.sepco-inner .sepco-content-coverage figure { max-width:800px; margin:0 auto; }
.sepco-inner .sepco-home-news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.sepco-inner .sepco-home-news-grid article { padding:28px; background:#f1f5f7; }
.sepco-contact-details p { overflow-wrap:anywhere; }
.sepco-inquiry-panel { background:#e9f3f7; }
@media(max-width:1100px) { .sepco-inner-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .sepco-inner-hero { gap:32px; } }
@media(max-width:781px) {
 .sepco-inner { --inner-gutter:24px; }
 .sepco-inner-hero { grid-template-columns:1fr; padding-block:36px; gap:24px; }
 .sepco-inner-hero h1 { font-size:40px; }
 .sepco-inner-hero p { font-size:19px; }
 .sepco-inner-hero-panel { padding:24px; }
 .sepco-inner-body { padding-block:40px; }
 .sepco-inner-pair,.sepco-inner-grid,.sepco-inner .sepco-home-news-grid { grid-template-columns:1fr; gap:20px; }
 .sepco-inner-panel,.sepco-inner-card-copy { padding:24px; }
 .sepco-inner .sepco-content-coverage { padding:24px; }
 .sepco-inner .sepco-content-coverage .wp-block-heading { font-size:27px; }
}
