/* Shared closing sections on interior pages. Homepage has its own scoped rules. */
body:not(.sp-home) .shared-cta-centered{background:#f1f3f5;padding:32px 24px 0}
body:not(.sp-home) .shared-cta-centered .shared-cta-grid{background:#071936;border-radius:16px;padding:64px 40px;max-width:1160px;gap:26px;text-align:center;grid-template-columns:1fr}
body:not(.sp-home) .shared-cta-centered h2{color:#fff;max-width:none;margin:0 auto}
body:not(.sp-home) .shared-cta-centered p{color:#c5d1e0;max-width:780px;margin:18px auto 0}
body:not(.sp-home) .shared-cta-centered .btn-primary{background:#fff;border-color:#fff;color:#071936}
body:not(.sp-home) .shared-cta-centered .btn-primary:hover{background:#eaf1f8}
body:not(.sp-home) .shared-cta-centered .btn{margin-top:0}
body:not(.sp-home) .shared-cta-centered .shared-cta-action{margin-top:28px}
body:not(.sp-home) .home-video-reviews-footer{background:#f1f3f5;border:0;padding:72px 0 24px;isolation:isolate}
body:not(.sp-home) .home-video-reviews-footer h2{text-align:center;margin:0 auto 52px;max-width:1100px}
body:not(.sp-home) .home-video-reviews-footer::after{display:none}
@media(max-width:640px){body:not(.sp-home) .shared-cta-centered{padding:24px 16px 0}body:not(.sp-home) .shared-cta-centered .shared-cta-grid{padding:40px 24px}body:not(.sp-home) .home-video-reviews-footer{padding:52px 0 20px}body:not(.sp-home) .home-video-reviews-footer h2{margin-bottom:32px}}

/* Shared interior-page palette and section edges. */
body:not(.sp-home) .block.tint{position:relative;isolation:isolate;background:#f1f3f5;border:0;padding-top:96px;padding-bottom:96px}
body:not(.sp-home) .block.tint::before,body:not(.sp-home) .shared-process::before{content:"";position:absolute;inset:-1px 0 auto;height:40px;background:#fff;clip-path:polygon(0 0,100% 0,38% 100%);pointer-events:none;z-index:-1}
body:not(.sp-home) .block.tint::after{content:"";position:absolute;inset:auto 0 -1px;height:40px;background:#fff;clip-path:polygon(0 0,38% 100%,100% 0,100% 100%,0 100%);pointer-events:none;z-index:-1}
body:not(.sp-home) .shared-process{--step-surface:#f1f3f5;position:relative;isolation:isolate;background:#f1f3f5;border:0;padding-top:100px}
@media(max-width:640px){body:not(.sp-home) .block.tint{padding-block:72px}body:not(.sp-home) .shared-process{padding-top:76px}body:not(.sp-home) .block.tint::before,body:not(.sp-home) .block.tint::after,body:not(.sp-home) .shared-process::before{height:24px}}

body:not(.sp-home) .shared-process{padding-bottom:108px}
body:not(.sp-home) .shared-process::after{content:"";position:absolute;inset:auto 0 -1px;height:40px;background:#f1f3f5;clip-path:polygon(0 0,38% 100%,100% 0,100% 100%,0 100%);pointer-events:none;z-index:-1}
@media(max-width:640px){body:not(.sp-home) .shared-process{padding-bottom:76px}body:not(.sp-home) .shared-process::after{height:24px}}

body:not(.sp-home) .shared-process{--step-surface:#fff;background:var(--step-surface)}

body.sp-blog .shared-cta-centered{background:transparent}

/* Main blog page: separate the call-to-action and launch steps. */
body.blog-index-page .shared-cta-centered{padding-bottom:24px}
body.blog-index-page .shared-process{--step-surface:#fff;background:var(--step-surface);padding-top:100px}
body.blog-index-page .shared-process::before{display:block;content:"";position:absolute;inset:-1px 0 auto;height:40px;background:#fff;clip-path:polygon(0 0,100% 0,38% 100%);pointer-events:none;z-index:-1}
body.blog-index-page .shared-process::after{display:block}
@media(max-width:640px){body.blog-index-page .shared-cta-centered{padding-bottom:24px}body.blog-index-page .shared-process{padding-top:76px}body.blog-index-page .shared-process::before{height:24px}}

body.blog-index-page .shared-process::before{background:#f4f7fa}

/* Article closing flow after restoring CTA below the launch steps. */
body.sp-blog:not(.blog-index-page) .shared-process{--step-surface:#f1f3f5;background:var(--step-surface)}
body.sp-blog:not(.blog-index-page) .shared-process::before{display:block;background:#fff}
body.sp-blog:not(.blog-index-page) .shared-process::after{display:block;background:#fff}
body.sp-blog:not(.blog-index-page) .shared-cta-centered{position:relative;isolation:isolate;background:#fff;padding-top:48px;padding-bottom:24px}
body.sp-blog:not(.blog-index-page) .shared-cta-centered::after{content:"";position:absolute;inset:auto 0 -1px;height:40px;background:#f1f3f5;clip-path:polygon(0 0,38% 100%,100% 0,100% 100%,0 100%);pointer-events:none;z-index:-1}
@media(max-width:640px){body.sp-blog:not(.blog-index-page) .shared-cta-centered{padding-top:36px;padding-bottom:24px}body.sp-blog:not(.blog-index-page) .shared-cta-centered::after{height:24px}}

/* Main blog closing CTA now follows the white launch steps. */
body.blog-index-page .shared-cta-centered{background:#f1f3f5}

/* Article flow: white hero, gray article body, white steps, gray booking and reviews. */
body.sp-blog:not(.blog-index-page) .blog-article-layout{position:relative;isolation:isolate}
body.sp-blog:not(.blog-index-page) .blog-article-layout::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:#f1f3f5;z-index:-1;pointer-events:none}
body.sp-blog:not(.blog-index-page) .blog-article-layout::after{content:"";position:absolute;bottom:-1px;left:50%;width:100vw;height:40px;transform:translateX(-50%);background:#fff;clip-path:polygon(0 0,38% 100%,100% 0,100% 100%,0 100%);z-index:-1;pointer-events:none}
body.sp-blog:not(.blog-index-page) .shared-process{--step-surface:#fff;background:#fff}
body.sp-blog:not(.blog-index-page) .shared-process::before{display:none}
body.sp-blog:not(.blog-index-page) .shared-process::after{background:#f1f3f5}
body.sp-blog:not(.blog-index-page) .shared-cta-centered{background:#f1f3f5}
body.sp-blog:not(.blog-index-page) .shared-cta-centered::after{display:none}
@media(max-width:640px){body.sp-blog:not(.blog-index-page) .blog-article-layout::after{height:24px}}

body.sp-blog:not(.blog-index-page) main{overflow-x:clip}

/* Long articles use a white reading surface; booking and reviews remain gray. */
body.sp-blog:not(.blog-index-page) .blog-article-layout::before{background:#fff}
body.sp-blog:not(.blog-index-page) .blog-article-layout::after{display:none}

body.sp-blog:not(.blog-index-page) .shared-cta-centered{padding-bottom:24px}
