/* ==========================================================================
   CENTEL MEDIA - UNIFIED DESIGN SYSTEM (STYLE.CSS)
   Consolidated Core Stylesheet: Bootstrap Grid, Tokens, Base, Layout,
   Components, Accessibility, Responsive, and Luxury Executive UI
   ========================================================================== */


/* ==========================================================================
   SECTION: vendor\bootstrap-grid.min.css
   ========================================================================== */

/*!
 * Bootstrap Grid v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.66666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.66666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.66666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.66666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.66666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.66666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}@media (min-width:576px){.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}}@media (min-width:768px){.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}}@media (min-width:992px){.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}}@media (min-width:1200px){.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}}@media (min-width:1400px){.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}
/*# sourceMappingURL=bootstrap-grid.min.css.map */

/* ==========================================================================
   SECTION: tokens.css
   ========================================================================== */

/* ==========================================================================
   CENTEL MEDIA  DESIGN TOKENS
   Brand colors sourced from approved document styles. Georgia headings.
   Premium B2B agency system  no glassmorphism, no gradients, editorial.
   ========================================================================== */

:root {
  /* ── Brand Identity ──────────────────────────────────────────────────── */
  --color-brand:         #14202E;   /* Deep Navy Slate  primary brand     */
  --color-brand-rgb:     20, 32, 46;
  --color-brand-mid:     #1E2D3D;   /* Mid slate for hover states          */
  --color-brand-dark:    #080E15;   /* Near-black for topbar/footer        */
  --color-brand-ink:     #0D1924;   /* Richest ink for hero text           */

  /* ── Centel Crimson Accent ───────────────────────────────────────────── */
  --color-accent:        #b10103;   /* Authoritative crimson CTA accent    */
  --color-accent-rgb:    163, 43, 35;
  --color-accent-hover:  #7E1F18;   /* Pressed / darker state              */
  --color-accent-light:  #C23B31;   /* Brighter variant for icons / lines  */
  --color-accent-subtle: #FBF0EF;   /* Tinted panel background             */
  --color-accent-border: #F0C4C1;   /* Tinted border                       */

  /* ── Executive Blue (secondary links / info) ─────────────────────────── */
  --color-blue:          #1A4570;
  --color-blue-light:    #2B6CB0;
  --color-blue-subtle:   #EBF3FC;

  /* ── Surfaces ────────────────────────────────────────────────────────── */
  --color-surface:       #FFFFFF;
  --color-surface-alt:   #F5F7FA;   /* Light structural background         */
  --color-surface-tint:  #EEF2F7;   /* Slightly deeper alt                 */
  --color-surface-rule:  #E4E9F0;   /* Rule / divider tone                 */
  --color-surface-dark:  #14202E;   /* Dark section, matches brand         */

  /* ── Text ────────────────────────────────────────────────────────────── */
  --color-text:          #14202E;   /* Primary  meets 7:1 on white        */
  --color-text-muted:    #445568;   /* Secondary  meets 5.5:1             */
  --color-text-light:    #67788C;   /* Tertiary / captions  4.5:1 min     */
  --color-text-inverse:  #FFFFFF;
  --color-text-inverse-muted: #A8BAC9;

  /* ── Borders ─────────────────────────────────────────────────────────── */
  --color-border:        #DCE3EC;
  --color-border-subtle: #EBF0F6;
  --color-border-dark:   #26394D;
  --color-border-accent: #e8383a;

  /* ── Interactive / Status ────────────────────────────────────────────── */
  --color-focus:         #1956A8;   /* 3:1+ focus indicator on all bg      */
  --color-success:       #1A6B3C;
  --color-success-bg:    #E5F7ED;
  --color-warning:       #94500A;
  --color-warning-bg:    #FFF6E5;
  --color-danger:        #e8383a;
  --color-danger-bg:     #FBF0EF;

  /* ── Typography ──────────────────────────────────────────────────────── */
  --font-display:  'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --font-heading:  'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --font-body:     'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --font-mono:     'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --font-label:    'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;

  /* ── Typographic Scale ───────────────────────────────────────────────── */
  --text-2xs:   0.6875rem;  /* 11px */
  --text-xs:    0.75rem;    /* 12px */
  --text-sm:    0.875rem;   /* 14px */
  --text-base:  1rem;       /* 16px */
  --text-md:    1.125rem;   /* 18px */
  --text-lg:    1.25rem;    /* 20px */
  --text-xl:    1.5rem;     /* 24px */
  --text-2xl:   1.875rem;   /* 30px */
  --text-3xl:   2.25rem;    /* 36px */
  --text-4xl:   2.875rem;   /* 46px */
  --text-5xl:   3.5rem;     /* 56px */
  --text-6xl:   4.25rem;    /* 68px */

  /* ── Line Heights ────────────────────────────────────────────────────── */
  --lh-none:     1;
  --lh-tight:    1.18;
  --lh-snug:     1.32;
  --lh-heading:  1.22;
  --lh-base:     1.65;
  --lh-relaxed:  1.78;

  /* ── Letter Spacing ──────────────────────────────────────────────────── */
  --ls-tight:    -0.02em;
  --ls-normal:   0;
  --ls-wide:     0.04em;
  --ls-wider:    0.08em;
  --ls-widest:   0.14em;

  /* ── Spacing Scale (4px base) ────────────────────────────────────────── */
  --space-px:   1px;
  --space-0-5:  0.125rem;  /*  2px */
  --space-1:    0.25rem;   /*  4px */
  --space-2:    0.5rem;    /*  8px */
  --space-3:    0.75rem;   /* 12px */
  --space-4:    1rem;      /* 16px */
  --space-5:    1.25rem;   /* 20px */
  --space-6:    1.5rem;    /* 24px */
  --space-8:    2rem;      /* 32px */
  --space-10:   2.5rem;    /* 40px */
  --space-12:   3rem;      /* 48px */
  --space-14:   3.5rem;    /* 56px */
  --space-16:   4rem;      /* 64px */
  --space-20:   5rem;      /* 80px */
  --space-24:   6rem;      /* 96px */
  --space-28:   7rem;      /* 112px */
  --space-32:   8rem;      /* 128px */

  /* ── Layout ──────────────────────────────────────────────────────────── */
  --container-max:      1240px;
  --container-narrow:   860px;
  --container-wide:     1440px;
  --header-height:      72px;
  --topbar-height:      36px;
  --content-max-prose:  72ch;

  /* ── Border Radii ────────────────────────────────────────────────────── */
  --radius-xs:   2px;
  --radius-sm:   3px;
  --radius-md:   5px;
  --radius-lg:   8px;
  --radius-xl:   12px;
  --radius-pill: 9999px;

  /* ── Shadows ─────────────────────────────────────────────────────────── */
  --shadow-xs:  0 1px 2px rgba(14, 22, 34, 0.04);
  --shadow-sm:  0 2px 6px rgba(14, 22, 34, 0.06), 0 1px 2px rgba(14, 22, 34, 0.04);
  --shadow-md:  0 4px 16px rgba(14, 22, 34, 0.08), 0 2px 6px rgba(14, 22, 34, 0.04);
  --shadow-lg:  0 12px 32px rgba(14, 22, 34, 0.10), 0 4px 12px rgba(14, 22, 34, 0.06);
  --shadow-xl:  0 24px 56px rgba(14, 22, 34, 0.13), 0 8px 20px rgba(14, 22, 34, 0.07);

  /* ── Transitions ─────────────────────────────────────────────────────── */
  --transition-fast:   120ms ease;
  --transition-normal: 220ms ease;
  --transition-slow:   360ms ease;

  /* ── Z-Index Hierarchy ───────────────────────────────────────────────── */
  --z-base:           1;
  --z-above:          10;
  --z-dropdown:       120;
  --z-sticky:         400;
  --z-header:         700;
  --z-drawer:         800;
  --z-modal-backdrop: 900;
  --z-modal:          1000;
  --z-cookie:         1100;
  --z-skip-link:      2000;
}

/* ==========================================================================
   SECTION: base.css
   ========================================================================== */

/* ==========================================================================
   CENTEL MEDIA  BASE
   HTML reset, typography foundations, link styles, selection, code
   ========================================================================== */

/* Box model reset */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* Root */
html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  hanging-punctuation: first last;
}

body {
  font-family: var(--font-body);
  font-size: var(--text-base);
  line-height: var(--lh-base);
  color: var(--color-text);
  background-color: var(--color-surface);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Images & media */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/* ── Headings ─────────────────────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  color: var(--color-brand);
  line-height: var(--lh-heading);
  letter-spacing: var(--ls-tight);
  font-weight: 700;
  text-wrap: balance;
}

h1 {
  font-size: clamp(var(--text-3xl), 4.5vw + 0.5rem, var(--text-5xl));
  letter-spacing: -0.025em;
}

h2 {
  font-size: clamp(var(--text-2xl), 2.8vw + 0.4rem, var(--text-4xl));
  margin-top: var(--space-10);
  margin-bottom: var(--space-5);
  letter-spacing: -0.02em;
}

/* First h2 after content open  reduce top margin */
.main-content h2:first-child {
  margin-top: 0;
}

h3 {
  font-size: clamp(var(--text-xl), 1.8vw + 0.4rem, var(--text-3xl));
  margin-top: var(--space-8);
  margin-bottom: var(--space-4);
}

h4 {
  font-size: clamp(var(--text-lg), 1.2vw + 0.4rem, var(--text-2xl));
  margin-top: var(--space-6);
  margin-bottom: var(--space-3);
}

h5 {
  font-size: var(--text-lg);
  margin-top: var(--space-6);
  margin-bottom: var(--space-2);
}

h6 {
  font-size: var(--text-md);
  margin-top: var(--space-4);
  margin-bottom: var(--space-2);
  font-weight: 600;
}

/* ── Body prose ──────────────────────────────────────────────────────────── */
p {
  margin-bottom: var(--space-5);
}

p:last-child {
  margin-bottom: 0;
}

/* ── Links ───────────────────────────────────────────────────────────────── */
a {
  color: var(--color-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  transition: color var(--transition-fast);
}

a:hover {
  color: var(--color-accent);
  text-decoration-thickness: 2px;
}

a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
  border-radius: var(--radius-xs);
}

/* Internal nav / styled links */
a.link-bold {
  font-weight: 600;
  color: var(--color-blue);
}

a.link-bold:hover {
  color: var(--color-accent);
}

/* ── Lists ───────────────────────────────────────────────────────────────── */
ul, ol {
  padding-left: var(--space-6);
  margin-bottom: var(--space-5);
}

ul li,
ol li {
  margin-bottom: var(--space-2);
  line-height: var(--lh-base);
}

/* Custom bullet list  used for content body lists */
ul.bullet-list-custom {
  list-style: none;
  padding-left: 0;
  margin-bottom: var(--space-6);
}

ul.bullet-list-custom li {
  position: relative;
  padding-left: var(--space-6);
  margin-bottom: var(--space-3);
  color: var(--color-text);
}

ul.bullet-list-custom li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--color-accent);
  flex-shrink: 0;
}

/* ── Inline code & code blocks ───────────────────────────────────────────── */
code {
  font-family: var(--font-mono);
  font-size: 0.88em;
  background-color: var(--color-surface-tint);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xs);
  padding: 0.1em 0.35em;
  color: var(--color-brand);
}

pre {
  background-color: var(--color-brand);
  color: #E0EAF5;
  border-radius: var(--radius-md);
  padding: var(--space-6);
  overflow-x: auto;
  margin-bottom: var(--space-6);
  font-size: var(--text-sm);
  line-height: 1.7;
}

pre code {
  background: none;
  border: none;
  padding: 0;
  color: inherit;
  font-size: inherit;
}

/* ── Blockquotes ──────────────────────────────────────────────────────────── */
blockquote {
  border-left: 3px solid var(--color-accent);
  margin: var(--space-8) 0;
  padding: var(--space-4) var(--space-6);
  background-color: var(--color-surface-alt);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
}

blockquote p {
  font-family: var(--font-heading);
  font-size: var(--text-lg);
  font-style: italic;
  color: var(--color-brand);
  line-height: var(--lh-snug);
  margin-bottom: 0;
  max-width: none;
}

/* ── Horizontal rules ────────────────────────────────────────────────────── */
hr {
  border: none;
  border-top: 1px solid var(--color-border);
  margin: var(--space-10) 0;
}

/* ── Tables ──────────────────────────────────────────────────────────────── */
.data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-sm);
  line-height: var(--lh-base);
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}

.data-table thead {
  background-color: var(--color-brand);
  color: #FFFFFF;
}

.data-table thead th {
  padding: var(--space-3) var(--space-4);
  text-align: left;
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: var(--ls-wider);
  text-transform: uppercase;
  white-space: nowrap;
}

.data-table tbody tr:nth-child(even) {
  background-color: var(--color-surface-alt);
}

.data-table tbody tr:hover {
  background-color: var(--color-surface-tint);
}

.data-table td,
.data-table tbody th {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border-subtle);
  vertical-align: top;
}

.data-table tbody th {
  font-weight: 600;
  color: var(--color-brand);
  font-size: var(--text-sm);
}

/* ── Text selection ──────────────────────────────────────────────────────── */
::selection {
  background-color: rgba(163, 43, 35, 1);
  color: #fff;
}

/* ── Utility classes ─────────────────────────────────────────────────────── */
.text-muted      { color: var(--color-text-muted); }
.text-light      { color: var(--color-text-light); }
.text-accent     { color: var(--color-accent); }
.text-brand      { color: var(--color-brand); }
.text-sm         { font-size: var(--text-sm); }
.text-xs         { font-size: var(--text-xs); }
.text-md         { font-size: var(--text-md); }
.font-bold       { font-weight: 700; }
.font-semibold   { font-weight: 600; }
.uppercase       { text-transform: uppercase; }
.tracking-wide   { letter-spacing: var(--ls-wide); }
.tracking-wider  { letter-spacing: var(--ls-wider); }
.tracking-widest { letter-spacing: var(--ls-widest); }

/* ── Strong & emphasis ───────────────────────────────────────────────────── */
strong, b { font-weight: 700; }
em, i     { font-style: italic; }

small {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}

/* ==========================================================================
   SECTION: layout.css
   ========================================================================== */

/* ==========================================================================
   CENTEL MEDIA  LAYOUT
   Topbar · Header · Navigation · Mega-menu · Mobile drawer
   Breadcrumbs · Hero · Main content · Footer
   Premium B2B editorial composition  no Bootstrap components
   ========================================================================== */

/* ── Primary Header ──────────────────────────────────────────────────────── */
.site-header {
  background-color: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: var(--z-header);
  transition: box-shadow var(--transition-normal);
}

.site-header.scrolled {
  box-shadow: var(--shadow-md);
}

.header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height);
  position: relative;
  gap: var(--space-4);
}

/* ── Brand Wordmark ──────────────────────────────────────────────────────── */
.site-brand {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  flex-shrink: 0;
  gap: 3px;
}

.site-brand:hover { text-decoration: none; }

.brand-lockup {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.brand-mark {
  display: flex;
  flex-direction: column;
  gap: 3px;
  flex-shrink: 0;
}

.brand-mark-bar {
  width: 22px;
  height: 2px;
  background-color: var(--color-accent);
  display: block;
  border-radius: 1px;
}

.brand-mark-bar:nth-child(2) {
  width: 14px;
}

.brand-mark-bar:nth-child(3) {
  width: 18px;
}

.brand-title {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--color-brand);
  line-height: 1;
}

.brand-dot {
  display: inline-block;
  width: 5px;
  height: 5px;
  background-color: var(--color-accent);
  border-radius: 50%;
  margin-left: 2px;
  vertical-align: middle;
  position: relative;
  top: -3px;
}

.brand-tagline {
  font-family: var(--font-label);
  font-size: var(--text-2xs);
  text-transform: uppercase;
  letter-spacing: var(--ls-widest);
  color: var(--color-text-light);
  font-weight: 600;
  display: block;
}

/* ── Desktop Primary Navigation ──────────────────────────────────────────── */
.primary-nav {
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: center;
}

.nav-list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--space-px);
  align-items: center;
}

.nav-item {
  position: relative;
}

.nav-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0.55rem 0.8rem;
  font-size: 0.9rem;
  font-weight: 600;
  font-family: var(--font-label);
  color: var(--color-brand);
  text-decoration: none;
  border-radius: var(--radius-sm);
  transition: background-color var(--transition-fast), color var(--transition-fast);
  white-space: nowrap;
  letter-spacing: 0.005em;
}

.nav-link:hover,
.nav-item.is-open > .nav-link,
.nav-link[aria-expanded="true"] {
  background-color: var(--color-surface-alt);
  color: var(--color-accent);
  text-decoration: none;
}

/* Chevron arrow */
.nav-arrow {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transition: transform var(--transition-fast);
  margin-left: 1px;
  flex-shrink: 0;
}

.nav-item.is-open .nav-arrow,
.nav-link[aria-expanded="true"] .nav-arrow {
  transform: rotate(-135deg) translateY(-1px);
}

/* ── Dropdown Menu ───────────────────────────────────────────────────────── */
.nav-dropdown {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  min-width: 248px;
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-lg);
  border-radius: var(--radius-md);
  padding: var(--space-2) 0;
  display: none;
  z-index: var(--z-dropdown);
}

.nav-dropdown.mega-menu {
  min-width: 840px;
  left: 50%;
  transform: translateX(-50%);
  padding: var(--space-5) var(--space-5) var(--space-4);
}

.nav-item.is-open > .nav-dropdown,
.nav-dropdown.is-open {
  display: block;
}

.dropdown-link {
  display: block;
  padding: 0.45rem 1.1rem;
  color: var(--color-text);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  font-family: var(--font-label);
  transition: background var(--transition-fast), color var(--transition-fast);
  border-left: 2px solid transparent;
}

.dropdown-link:hover,
.dropdown-link:focus {
  background-color: var(--color-surface-alt);
  color: var(--color-accent);
  text-decoration: none;
  border-left-color: var(--color-accent);
}

.dropdown-heading {
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: var(--ls-widest);
  padding: var(--space-1) var(--space-4) var(--space-2);
  border-bottom: 1px solid var(--color-border-subtle);
  margin-bottom: var(--space-1);
}

.mega-menu-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-5);
}

/* ── Header Actions ──────────────────────────────────────────────────────── */
.header-actions {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-shrink: 0;
}

/* ── Unified Mobile & Desktop Navigation Base ───────────────────────────── */
.mobile-nav-toggle {
  display: none;
  background-color: #FFFFFF;
  border: 1.5px solid rgba(20, 32, 46, 0.16);
  border-radius: var(--radius-sm);
  padding: 8px 12px;
  cursor: pointer;
  color: var(--color-brand);
  font-size: var(--text-sm);
  font-weight: 600;
  font-family: var(--font-label);
  align-items: center;
  gap: 8px;
  min-height: 40px;
  line-height: 1;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  -webkit-user-select: none;
  user-select: none;
}

.mobile-nav-toggle:hover {
  background-color: var(--color-surface-alt);
  border-color: var(--color-brand);
}

.mobile-nav-toggle[aria-expanded="true"] {
  background-color: #0C1B2E;
  color: #FFFFFF;
  border-color: #0C1B2E;
  box-shadow: 0 2px 8px rgba(12, 27, 46, 0.25);
}

/* Animated Hamburger-to-X Icon */
.hamburger-icon {
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  width: 17px;
  height: 13px;
  position: relative;
  flex-shrink: 0;
}

.hamburger-icon span {
  display: block;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  border-radius: 2px;
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.22s ease;
  transform-origin: center;
}

.mobile-nav-toggle[aria-expanded="true"] .hamburger-icon span:nth-child(1) {
  transform: translateY(5.5px) rotate(45deg);
}

.mobile-nav-toggle[aria-expanded="true"] .hamburger-icon span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}

.mobile-nav-toggle[aria-expanded="true"] .hamburger-icon span:nth-child(3) {
  transform: translateY(-5.5px) rotate(-45deg);
}

/* ── Breadcrumbs ─────────────────────────────────────────────────────────── */
.breadcrumb-bar {
  background-color: var(--color-surface-alt);
  border-bottom: 1px solid var(--color-border-subtle);
  padding: 0.55rem 0;
  font-size: var(--text-xs);
  font-family: var(--font-label);
}

.breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--space-1);
}

.breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  color: var(--color-text-light);
}

.breadcrumb-item a {
  color: var(--color-text-muted);
  text-decoration: none;
  font-weight: 500;
  transition: color var(--transition-fast);
}

.breadcrumb-item a:hover {
  color: var(--color-accent);
}

.breadcrumb-item[aria-current="page"] {
  color: var(--color-brand);
  font-weight: 600;
}

.breadcrumb-separator {
  color: var(--color-text-light);
  user-select: none;
  font-size: 10px;
}

/* ── Page Hero ───────────────────────────────────────────────────────────── */
.page-hero {
  background-color: var(--color-brand);
  color: var(--color-text-inverse);
  padding: var(--space-16) 0 var(--space-14) 0;
  position: relative;
  overflow: hidden;
}

/* Subtle textural rule  no raster images needed */


.hero-content {
  position: relative;
  z-index: var(--z-above);
}

.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--ls-widest);
  color: rgba(255, 255, 255, 0.55);
  margin-bottom: var(--space-4);
}

.hero-eyebrow-line {
  display: inline-block;
  width: 24px;
  height: 1px;
  background-color: var(--color-accent);
}

/* Category badge in hero  matches existing markup */
.hero-meta-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--ls-widest);
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: var(--space-5);
}

.hero-meta-badge::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 1px;
  background-color: var(--color-accent);
}

.hero-title {
  font-family: var(--font-display);
  font-size: clamp(var(--text-3xl), 4.5vw + 0.5rem, var(--text-5xl));
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -0.025em;
  color: #FFFFFF;
  margin-bottom: var(--space-6);
  text-wrap: balance;
}

.hero-intro {
  font-size: clamp(var(--text-md), 1.5vw + 0.6rem, var(--text-xl));
  line-height: var(--lh-relaxed);
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: var(--space-8);
}

.hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

/* ── Main Content Area ───────────────────────────────────────────────────── */
.main-content {
  padding: var(--space-12) 0 var(--space-20) 0;
}

/* Section rhythm  content blocks within main */
.content-section {
  margin-bottom: var(--space-12);
}

.content-section:last-child {
  margin-bottom: 0;
}

/* Ruled section divider */
.section-rule {
  border: none;
  border-top: 1px solid var(--color-border);
  margin: var(--space-12) 0;
}

/* ── Footer ──────────────────────────────────────────────────────────────── */
.site-footer {
  background-color: var(--color-brand-dark);
  color: var(--color-text-inverse-muted);
  padding: var(--space-20) 0 var(--space-10) 0;
  border-top: 3px solid var(--color-accent);
  font-size: 0.88rem;
  position: relative;
}

.footer-top {
  padding-bottom: var(--space-12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  margin-bottom: var(--space-8);
}

.footer-brand-col .brand-title {
  color: #FFFFFF;
  font-size: 1.35rem;
  margin-bottom: var(--space-4);
  display: block;
}

.footer-brand-col p {
  color: var(--color-text-inverse-muted);
  font-size: var(--text-sm);
  line-height: var(--lh-relaxed);
  margin-bottom: var(--space-4);
  max-width: 300px;
}

.footer-brand-col .footer-contact-block {
  font-size: var(--text-xs);
  color: rgba(168, 186, 201, 0.75);
  line-height: 1.7;
  margin-top: var(--space-4);
}

.footer-brand-col .footer-contact-block strong {
  color: rgba(168, 186, 201, 0.95);
}

.footer-heading {
  font-family: var(--font-label);
  font-size: var(--text-2xs);
  font-weight: 700;
  color: rgba(255, 255, 255, 0.45);
  text-transform: uppercase;
  letter-spacing: var(--ls-widest);
  margin-bottom: var(--space-4);
  padding-bottom: var(--space-2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.footer-nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-nav-list li {
  margin-bottom: var(--space-2);
}

.footer-nav-list a {
  color: var(--color-text-inverse-muted);
  text-decoration: none;
  font-size: var(--text-xs);
  font-family: var(--font-label);
  transition: color var(--transition-fast);
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.footer-nav-list a::before {
  content: '›';
  color: var(--color-accent);
  font-size: 0.9rem;
  line-height: 1;
  transition: transform var(--transition-fast);
}

.footer-nav-list a:hover {
  color: #FFFFFF;
  text-decoration: none;
}

.footer-nav-list a:hover::before {
  transform: translateX(2px);
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-4);
  font-size: var(--text-xs);
  font-family: var(--font-label);
  color: rgba(168, 186, 201, 0.5);
  padding-top: var(--space-4);
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.footer-legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-legal-links a {
  color: rgba(168, 186, 201, 0.5);
  text-decoration: none;
  font-size: var(--text-xs);
  transition: color var(--transition-fast);
}

.footer-legal-links a:hover {
  color: rgba(255, 255, 255, 0.75);
}

.footer-cookie-btn {
  background: none;
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(168, 186, 201, 0.5);
  font-family: var(--font-label);
  font-size: var(--text-xs);
  padding: 3px 8px;
  border-radius: var(--radius-xs);
  cursor: pointer;
  transition: all var(--transition-fast);
}

.footer-cookie-btn:hover {
  color: rgba(255, 255, 255, 0.75);
  border-color: rgba(255, 255, 255, 0.25);
}

/* ==========================================================================
   SECTION: components.css
   ========================================================================== */

/* ==========================================================================
   CENTEL MEDIA  COMPONENTS
   Buttons · CTA Band · Accordions · Forms · Placeholders · Cookie banner
   Editorial cards · Badges · Mobile nav · Misc UI
   Premium B2B agency aesthetic  custom HTML/CSS, no Bootstrap components
   ========================================================================== */

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  font-family: var(--font-label);
  font-size: 0.925rem;
  font-weight: 600;
  line-height: 1.25;
  padding: 0.72rem 1.5rem;
  border-radius: var(--radius-sm);
  text-decoration: none;
  cursor: pointer;
  transition: background-color var(--transition-fast),
              color var(--transition-fast),
              border-color var(--transition-fast),
              box-shadow var(--transition-fast);
  border: 1.5px solid transparent;
  white-space: nowrap;
  letter-spacing: 0.01em;
  position: relative;
}

.btn:hover { text-decoration: none; }

.btn:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}

/* Primary  deep navy */
.btn-primary {
  background-color: var(--color-brand);
  color: #FFFFFF;
  border-color: var(--color-brand);
}

.btn-primary:hover {
  background-color: var(--color-brand-mid);
  border-color: var(--color-brand-mid);
  box-shadow: var(--shadow-sm);
  color: #FFFFFF;
}

/* Accent  crimson CTA */
.btn-accent {
  background-color: var(--color-accent);
  color: #FFFFFF;
  border-color: var(--color-accent);
}

.btn-accent:hover {
  background-color: var(--color-accent-hover);
  border-color: var(--color-accent-hover);
  box-shadow: var(--shadow-md);
  color: #FFFFFF;
}

/* Outline  dark navy outline on white */
.btn-outline {
  background-color: transparent;
  color: var(--color-brand);
  border-color: var(--color-brand);
}

.btn-outline:hover {
  background-color: var(--color-brand);
  color: #FFFFFF;
}

/* Outline white  for dark hero / footer CTAs */
.btn-outline-white {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.88);
  border-color: rgba(255, 255, 255, 0.35);
}

.btn-outline-white:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
  border-color: rgba(255, 255, 255, 0.6);
}

/* Sizes */
.btn-sm {
  padding: 0.45rem 0.95rem;
  font-size: 0.825rem;
}

.btn-lg {
  padding: 0.88rem 2rem;
  font-size: 1rem;
  letter-spacing: 0.015em;
}

/* ── Closing CTA Band ────────────────────────────────────────────────────── */
/* Authoritative component  present on every source-doc page */
.closing-cta-band {
  position: relative;
  background-color: var(--color-brand);
  color: var(--color-text-inverse);
  border-radius: var(--radius-lg);
  padding: var(--space-10) var(--space-10) var(--space-10);
  margin-top: var(--space-14);
  margin-bottom: var(--space-8);
  overflow: hidden;
}

/* Crimson rule accent */
.closing-cta-band::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background-color: var(--color-accent);
  border-radius: var(--radius-lg) 0 0 var(--radius-lg);
}

/* Subtle tonal grid texture */
.closing-cta-band::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(
      90deg,
      transparent,
      transparent 79px,
      rgba(255,255,255,0.018) 79px,
      rgba(255,255,255,0.018) 80px
    );
  pointer-events: none;
}

.closing-cta-band > * { position: relative; z-index: var(--z-above); }

.cta-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--ls-widest);
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: var(--space-3);
}

.cta-eyebrow::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 1px;
  background-color: var(--color-accent);
}

.cta-heading {
  font-family: var(--font-heading);
  font-size: clamp(var(--text-xl), 2.2vw + 0.6rem, var(--text-3xl));
  font-weight: 700;
  line-height: var(--lh-snug);
  letter-spacing: -0.018em;
  color: #FFFFFF;
  margin: 0 0 var(--space-4) 0;
  text-wrap: balance;
}

.cta-body {
  font-size: var(--text-md);
  line-height: var(--lh-relaxed);
  color: rgba(255, 255, 255, 0.68);
  max-width: 60ch;
  margin-bottom: var(--space-7);
}

/* Note: margin-bottom not in tokens so using calc */
.cta-body { margin-bottom: calc(var(--space-6) + var(--space-1)); }

.cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  align-items: center;
}

/* ── Accordions (FAQ) ────────────────────────────────────────────────────── */
.accordion-group {
  margin-top: var(--space-6);
  margin-bottom: var(--space-8);
}

.accordion-item {
  border-bottom: 1px solid var(--color-border);
}

.accordion-item:first-child {
  border-top: 1px solid var(--color-border);
}

.accordion-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-5) 0;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  font-family: var(--font-heading);
  font-size: var(--text-lg);
  font-weight: 700;
  color: var(--color-brand);
  line-height: var(--lh-snug);
  transition: color var(--transition-fast);
}

.accordion-trigger:hover {
  color: var(--color-accent);
}

.accordion-trigger:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  border-radius: var(--radius-xs);
}

.accordion-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 50%;
  background-color: var(--color-surface-alt);
  border: 1px solid var(--color-border);
  font-size: 1.1rem;
  font-weight: 300;
  color: var(--color-text-muted);
  transition: background var(--transition-fast),
              color var(--transition-fast),
              transform var(--transition-normal);
  font-style: normal;
  line-height: 1;
}

.accordion-trigger[aria-expanded="true"] .accordion-icon {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
  color: #FFFFFF;
  transform: rotate(45deg);
}

.accordion-panel {
  padding: 0 0 var(--space-5);
  color: var(--color-text);
  line-height: var(--lh-relaxed);
  max-width: 78ch;
}

.accordion-panel p {
  margin-bottom: var(--space-4);
}

.accordion-panel p:last-child {
  margin-bottom: 0;
}

/* ── Forms ───────────────────────────────────────────────────────────────── */
.form-shell {
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-8) var(--space-8);
  box-shadow: var(--shadow-sm);
  margin-bottom: var(--space-8);
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.form-label {
  font-family: var(--font-label);
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-brand);
  letter-spacing: 0.005em;
}

.required-indicator {
  color: var(--color-accent);
  margin-left: 2px;
  font-weight: 700;
}

.form-input,
.form-select,
.form-textarea {
  width: 100%;
  font-family: var(--font-body);
  font-size: var(--text-base);
  color: var(--color-text);
  background-color: var(--color-surface);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-sm);
  padding: 0.65rem 0.9rem;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
  -webkit-appearance: none;
  appearance: none;
}

.form-input:hover,
.form-select:hover,
.form-textarea:hover {
  border-color: #B0BECC;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  outline: none;
  border-color: var(--color-focus);
  box-shadow: 0 0 0 3px rgba(25, 86, 168, 0.14);
}

.form-input[aria-invalid="true"],
.form-select[aria-invalid="true"],
.form-textarea[aria-invalid="true"] {
  border-color: var(--color-accent);
  box-shadow: 0 0 0 3px rgba(163, 43, 35, 0.1);
}

.form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2367788C' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 2.5rem;
  cursor: pointer;
}

.form-textarea {
  resize: vertical;
  min-height: 110px;
  line-height: var(--lh-base);
}

.field-error-msg {
  font-size: var(--text-xs);
  color: var(--color-accent);
  font-weight: 600;
  min-height: 1.2em;
  font-family: var(--font-label);
}

.form-help-text {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  font-family: var(--font-label);
  margin-top: var(--space-2);
  margin-bottom: 0;
  max-width: none;
}

.form-status-region {
  margin-bottom: var(--space-4);
  font-size: var(--text-sm);
  font-weight: 600;
  min-height: 1.5em;
  font-family: var(--font-label);
}

/* ── Content Placeholder Box ─────────────────────────────────────────────── */
/* Used for pending business inputs from source doc */
.content-placeholder-box {
  border: 1.5px dashed var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-surface-alt);
  padding: var(--space-6);
  margin: var(--space-6) 0;
}

.placeholder-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--ls-wider);
  color: var(--color-text-muted);
  background-color: var(--color-surface-tint);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xs);
  padding: 2px 8px;
  margin-bottom: var(--space-3);
}

.content-placeholder-box p {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  margin-bottom: 0;
  max-width: none;
}

/* ── Cookie Consent Banner ───────────────────────────────────────────────── */
.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-brand);
  color: rgba(255, 255, 255, 0.82);
  padding: var(--space-4) 0;
  z-index: var(--z-cookie);
  border-top: 2px solid var(--color-accent);
  box-shadow: 0 -4px 20px rgba(8, 14, 21, 0.3);
  transform: translateY(0);
  transition: transform var(--transition-slow);
}

.cookie-banner[hidden] {
  display: none;
}

.cookie-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-6);
  flex-wrap: wrap;
}

.cookie-text {
  font-size: var(--text-sm);
  font-family: var(--font-label);
  line-height: var(--lh-base);
  flex: 1;
  min-width: 200px;
}

.cookie-text a {
  color: rgba(255,255,255,0.7);
  text-decoration: underline;
}

.cookie-text a:hover {
  color: #FFFFFF;
}

.cookie-actions {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  flex-shrink: 0;
}

/* ── Editorial Cards ─────────────────────────────────────────────────────── */
/* Used selectively  only where content genuinely represents discrete items */
.card-editorial {
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-6) var(--space-6);
  transition: box-shadow var(--transition-normal);
}

.card-editorial:hover {
  box-shadow: var(--shadow-md);
}

/* Accent-ruled editorial card variant */
.card-editorial--ruled {
  border-top: 3px solid var(--color-accent);
}

/* Surface-alt card variant */
.card-editorial--tinted {
  background-color: var(--color-surface-alt);
}

/* ── Inline Category / Eyebrow Badges ───────────────────────────────────── */
.eyebrow-label {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-label);
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--ls-wider);
  color: var(--color-accent);
  margin-bottom: var(--space-4);
}

.eyebrow-label::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 2px;
  background-color: var(--color-accent);
  border-radius: 1px;
}

/* ── Section Header Ruleset ──────────────────────────────────────────────── */
/* Used above content sections to add visual separation */
.section-header {
  margin-bottom: var(--space-8);
  padding-bottom: var(--space-5);
  border-bottom: 1px solid var(--color-border);
}

.section-header h2 {
  margin-top: 0;
  margin-bottom: var(--space-2);
}

.section-header .section-lead {
  font-size: var(--text-md);
  color: var(--color-text-muted);
  max-width: 68ch;
  line-height: var(--lh-relaxed);
  margin-bottom: 0;
}

/* ── Stat / Key-figure display ───────────────────────────────────────────── */
.stat-item {
  padding: var(--space-5) 0;
  border-top: 1px solid var(--color-border);
}

.stat-value {
  font-family: var(--font-display);
  font-size: clamp(var(--text-3xl), 3vw, var(--text-5xl));
  font-weight: 700;
  color: var(--color-brand);
  line-height: 1;
  letter-spacing: -0.03em;
}

.stat-label {
  font-family: var(--font-label);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  margin-top: var(--space-1);
}

/* ── Inline Rule / Divider variants ─────────────────────────────────────── */
.rule-accent {
  border: none;
  border-top: 2px solid var(--color-accent);
  width: 40px;
  margin: var(--space-4) 0;
}

/* ==========================================================================
   SECTION: accessibility.css
   ========================================================================== */

/* ==========================================================================
   CENTEL MEDIA  ACCESSIBILITY
   WCAG 2.2 AA target: skip links, focus states, screen-reader utilities,
   minimum touch targets, print styles
   ========================================================================== */

/* ── Skip Link ───────────────────────────────────────────────────────────── */
.skip-link {
  position: absolute;
  top: -200%;
  left: var(--space-4);
  z-index: var(--z-skip-link);
  background-color: var(--color-brand);
  color: #FFFFFF;
  font-family: var(--font-label);
  font-weight: 700;
  font-size: var(--text-sm);
  padding: var(--space-3) var(--space-5);
  border-radius: 0 0 var(--radius-md) var(--radius-md);
  text-decoration: none;
  transition: top var(--transition-fast);
  border: 2px solid var(--color-accent);
}

.skip-link:focus,
.skip-link:focus-visible {
  top: 0;
  outline: none;
}

/* ── Screen-reader only ──────────────────────────────────────────────────── */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

/* ── Global focus visible styles ─────────────────────────────────────────── */
/* Only show outlines for keyboard users (class set by main.js) */
:focus { outline: none; }

:focus-visible,
body.keyboard-nav :focus {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
  border-radius: var(--radius-xs);
}

/* Ensure interactive elements always have some focus indication */
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}

/* ── Minimum touch targets ───────────────────────────────────────────────── */
/* WCAG 2.5.5  44×44px minimum (AAA target, approaching AA in 2.2) */
.btn,
.nav-link,
.accordion-trigger,
.mobile-nav-toggle,
.mobile-drawer-close {
  min-height: 44px;
}

.topbar-links a {
  min-height: 28px; /* Topbar is visually constrained  best effort */
}

/* ── Landmark regions ────────────────────────────────────────────────────── */
/* Ensure visible landmark boundaries for AT users */
main:focus {
  outline: none;
}

/* ── Color-contrast helpers ──────────────────────────────────────────────── */
/* These are documentation tokens  do not override individual component colors */

/*
  Text on white:        --color-text       #14202E  → ~13:1 ✅
  Muted on white:       --color-text-muted #445568  → ~6.5:1 ✅
  Light on white:       --color-text-light #67788C  → ~4.6:1 ✅ (AA)
  Accent on white:      --color-accent     #e8383a  → ~5.5:1 ✅ (AA)
  Focus on white:       --color-focus      #1956A8  → ~6.8:1 ✅
  Inverse on brand:     #FFFFFF on #14202E → ~13:1  ✅
*/

/* ── Visible focus for interactive components ─────────────────────────────── */
.form-input:focus-visible,
.form-select:focus-visible,
.form-textarea:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 0;
  box-shadow: 0 0 0 4px rgba(25, 86, 168, 0.14);
}

/* ── Aria live regions ───────────────────────────────────────────────────── */
[aria-live] {
  /* Ensure live regions are never display:none unless truly hidden */
}

/* ── Print styles ────────────────────────────────────────────────────────── */
@media print {

  .site-topbar,
  .site-header,
  /* mobile drawer replaced */
  .breadcrumb-bar,
  .hero-ctas,
  .closing-cta-band .cta-actions,
  .cookie-banner,
  .site-footer {
    display: none !important;
  }

  body {
    font-size: 11pt;
    color: #000;
    background: #FFF;
  }

  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 0.8em;
    color: #555;
  }

  a[href^="tel"]::after,
  a[href^="mailto"]::after {
    content: none;
  }

  .page-hero {
    background-color: #F0F0F0 !important;
    color: #000 !important;
    padding: 20pt 0;
  }

  .hero-title {
    color: #000 !important;
  }

  h1, h2, h3, h4 {
    page-break-after: avoid;
  }

  p, li {
    orphans: 3;
    widows: 3;
  }
}

/* ==========================================================================
   SECTION: responsive.css
   ========================================================================== */

/* ==========================================================================
   CENTEL MEDIA  RESPONSIVE
   Mobile-first breakpoint overrides for layout, navigation and typography
   Breakpoints: 375 · 640 · 768 · 992 · 1200 · 1440
   ========================================================================== */

/* ── 640px  Small tablets, large phones landscape ───────────────────────── */
@media (max-width: 640px) {

  /* Topbar: hide focus text, show links only */
  .topbar-focus {
    display: none;
  }

  .topbar-links {
    width: 100%;
    justify-content: center;
  }

  /* Hero: compact padding */
  .page-hero {
    padding: var(--space-10) 0 var(--space-10) 0;
  }

  .hero-title {
    font-size: clamp(var(--text-2xl), 7vw, var(--text-3xl));
  }

  .hero-ctas {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-ctas .btn {
    text-align: center;
    justify-content: center;
  }

  /* Closing CTA band */
  .closing-cta-band {
    padding: var(--space-8) var(--space-6);
  }

  .cta-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .cta-actions .btn {
    text-align: center;
    justify-content: center;
  }

  /* Form shell compact */
  .form-shell {
    padding: var(--space-6) var(--space-5);
  }

  /* Footer stacking */
  .footer-grid-row > [class*="col-"] {
    margin-bottom: var(--space-6);
  }

  /* Accordion trigger smaller */
  .accordion-trigger {
    font-size: var(--text-base);
    padding: var(--space-4) 0;
  }
}

/* ── Unified Responsive Navigation & Tablet Breakpoints (< 992px) ────── */
@media (max-width: 991.98px) {

  /* Mobile Toggle displayed */
  .mobile-nav-toggle {
    display: inline-flex;
  }

  /* Header action button optimization for mobile/tablet */
  .header-actions .btn-outline {
    display: none;
  }

  .header-actions .header-search-btn {
    display: none;
  }

  .header-actions .btn-coral {
    padding: 0.42rem 0.75rem;
    font-size: 0.8125rem;
  }

  /* Unified Primary Nav: Slide-Down Panel */
  .primary-nav {
    display: none;
    position: fixed;
    top: 68px; /* Dynamic in JS, robust fallback */
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: calc(100dvh - 68px);
    max-height: calc(100dvh - 68px);
    background-color: #FFFFFF;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 9999;
    padding: 1.25rem 1.5rem 4rem 1.5rem;
    border-top: 1px solid rgba(20, 32, 46, 0.08);
    box-shadow: 0 24px 48px rgba(10, 20, 35, 0.16);
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
  }

  .primary-nav.is-open {
    display: flex !important;
    animation: unifiedNavSlideDown 0.22s cubic-bezier(0.16, 1, 0.3, 1);
  }

  @keyframes unifiedNavSlideDown {
    from {
      opacity: 0;
      transform: translateY(-8px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* Nav list stacked vertically */
  .primary-nav .nav-list {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .primary-nav .nav-item {
    width: 100%;
    border-bottom: 1px solid rgba(20, 32, 46, 0.07);
    position: static;
  }

  .primary-nav .nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0.95rem 0.5rem;
    font-size: 1.05rem;
    font-weight: 600;
    color: #0C1B2E;
    font-family: var(--font-label);
    border-radius: 6px;
    text-decoration: none;
    transition: background-color 0.15s ease, color 0.15s ease;
  }

  .primary-nav .nav-link:hover,
  .primary-nav .nav-link:focus,
  .primary-nav .nav-link[aria-expanded="true"] {
    background-color: rgba(199, 22, 24, 0.05);
    color: #e8383a;
  }

  /* Mobile arrow chevron */
  .primary-nav .nav-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background-color: rgba(20, 32, 46, 0.04);
    margin-left: auto;
    border: none;
    position: relative;
    transition: transform 0.22s ease, background-color 0.22s ease, color 0.22s ease;
    transform: none;
  }

  .primary-nav .nav-arrow::after {
    content: '';
    width: 6px;
    height: 6px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translateY(-1px);
    display: inline-block;
    transition: transform 0.22s ease;
  }

  .primary-nav .nav-link[aria-expanded="true"] .nav-arrow {
    background-color: rgba(199, 22, 24, 0.12);
    color: #e8383a;
  }

  .primary-nav .nav-link[aria-expanded="true"] .nav-arrow::after {
    transform: rotate(-135deg) translateY(-1px);
  }

  /* Mobile In-Flow Accordion Submenus */
  .primary-nav .nav-dropdown {
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    transform: none !important;
    box-shadow: none !important;
    border: none !important;
    border-left: 3px solid #e8383a !important;
    background-color: #F8FAFD !important;
    border-radius: 0 8px 8px 0 !important;
    padding: 0.5rem 0.5rem 0.75rem 0.75rem !important;
    margin: 0.25rem 0 0.85rem 0.5rem !important;
    animation: none !important;
  }

  .primary-nav .nav-dropdown.is-open {
    display: block !important;
    animation: unifiedNavSubmenuSlide 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  }

  @keyframes unifiedNavSubmenuSlide {
    from {
      opacity: 0;
      transform: translateY(-4px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .primary-nav .mega-menu-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.75rem !important;
  }

  .primary-nav .dropdown-heading {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: #e8383a !important;
    padding: 0.4rem 0.5rem 0.2rem !important;
    border-bottom: 1px solid rgba(199, 22, 24, 0.15) !important;
    margin-bottom: 0.25rem !important;
  }

  .primary-nav .dropdown-link {
    display: block !important;
    padding: 0.55rem 0.75rem !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    color: #334155 !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    border-left: none !important;
    transition: background-color 0.15s ease, color 0.15s ease !important;
  }

  .primary-nav .dropdown-link:hover,
  .primary-nav .dropdown-link:focus {
    background-color: rgba(199, 22, 24, 0.1) !important;
    color: #e8383a !important;
    padding-left: 0.95rem !important;
  }

  /* Body scroll lock */
  body.nav-open {
    overflow: hidden !important;
  }

  /* Content padding */
  .main-content {
    padding: var(--space-8) 0 var(--space-14) 0;
  }
}

/* ── Phones (<= 576px) ───────────────────────────────────────────────────── */
@media (max-width: 576px) {
  .header-actions .btn-coral {
    padding: 0.36rem 0.65rem;
    font-size: 0.75rem;
  }
}

/* ── 1200px  Wide desktops ──────────────────────────────────────────────── */
@media (min-width: 1200px) {

  /* Slightly wider nav links */
  .nav-link {
    padding: 0.6rem 1rem;
  }
}

/* ── Narrow phones (375px and below) ────────────────────────────────────── */
@media (max-width: 375px) {

  body {
    font-size: 15px;
  }

  .page-hero {
    padding: var(--space-8) 0;
  }

  .hero-title {
    letter-spacing: -0.015em;
  }

  .closing-cta-band {
    padding: var(--space-6) var(--space-5);
    border-radius: var(--radius-md);
  }

  /* Prevent table horizontal scroll from overflowing body */
  .table-responsive {
    margin-left: calc(-1 * var(--space-4));
    margin-right: calc(-1 * var(--space-4));
    border-radius: 0;
    border-left: none;
    border-right: none;
  }
}

/* ── Reduced motion ──────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  .primary-nav {
    transition: none !important;
    animation: none !important;
  }
}

/* ── Forced colors (high-contrast mode) ─────────────────────────────────── */
@media (forced-colors: active) {

  .btn {
    border: 2px solid ButtonText;
  }

  .nav-dropdown,
  .primary-nav {
    border: 2px solid ButtonText;
  }

  .accordion-icon {
    border: 1px solid ButtonText;
  }

  .closing-cta-band::before {
    background-color: Highlight;
  }
}

/* ==========================================================================
   CENTEL MEDIA - LUXURY B2B EXECUTIVE ENHANCEMENTS
   Elevating the layout with Fortune 500 depth, typography, and polish
   ========================================================================== */

/* ── Typography & Smooth Rendering ───────────────────────────────────────── */
html {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  background-color: #F8FAFD;
  color: #1A2838;
}

/* ── Sticky Header Glassmorphic Refinement ───────────────────────────────── */
.site-header {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(20, 32, 46, 0.08);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  padding: 10px 0px;
}

.site-header.scrolled {
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 4px 24px -2px rgba(10, 20, 35, 0.08), 0 1px 2px rgba(10, 20, 35, 0.03);
  border-bottom-color: rgba(20, 32, 46, 0.12);
}

.brand-title {
  letter-spacing: 0.05em;
  font-weight: 700;
  text-transform: uppercase;
}

.brand-dot {
  background: radial-gradient(circle at 35% 35%, #e8383a 0%, #e8383a 100%);
  box-shadow: 0 0 8px rgba(163, 43, 35, 0.45);
}

.brand-tagline {
  color: #556B82;
  letter-spacing: 0.14em;
}

/* ── Desktop Nav Links Hover Treatment ───────────────────────────────────── */
.nav-link {
  transition: color 0.18s ease, background-color 0.18s ease, transform 0.18s ease;
  border-radius: 4px;
}

.nav-link:hover,
.nav-item.is-open > .nav-link,
.nav-link[aria-expanded="true"] {
  background-color: rgba(20, 32, 46, 0.05);
  color: var(--color-accent);
}

/* ── Dropdown & Mega Menu Luxury Elevation ────────────────────────────────── */
.nav-dropdown {
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(20, 32, 46, 0.09);
  border-radius: 8px;
  box-shadow: 0 20px 48px -8px rgba(10, 20, 35, 0.15), 0 2px 8px rgba(10, 20, 35, 0.05);
  animation: navMenuFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes navMenuFadeIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.nav-dropdown.mega-menu {
  animation: megaMenuFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes megaMenuFadeIn {
  from {
    opacity: 0;
    transform: translate(-50%, 6px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}

.dropdown-link {
  border-left: 2.5px solid transparent;
  padding: 0.25rem 1.15rem!important;
  transition: all 0.18s ease;
  border-radius: 0 4px 4px 0;
}

.dropdown-link:hover,
.dropdown-link:focus {
  background-color: #F4F7FB;
  color: var(--color-accent);
  border-left-color: var(--color-accent);
  padding-left: 1.35rem;
}

.dropdown-heading {
  color: #14202E;
  border-bottom: 2px solid rgba(163, 43, 35, 0.25);
  margin-bottom: var(--space-2);
  padding-bottom: 6px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

/* ── Executive Hero Section ──────────────────────────────────────────────── */

.page-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  color: var(--color-text-inverse);

  background:
  linear-gradient(
    to bottom,
    rgba(20, 34, 50, 0.06) 0%,
    rgba(14, 24, 37, 0.88) 50%,
    rgba(9, 17, 26, 0.96) 100%
  ),
  radial-gradient(
    ellipse 90% 70% at 50% -15%,
    rgba(32, 80, 135, 0.35) 0%,
    transparent 70%
  ),
  url("../../images/inner-cta.jpg") center 45% / cover no-repeat;
  padding: clamp(4rem, 6.5vw + 1rem, 6rem) 0
           clamp(3.5rem, 5.5vw + 1rem, 5rem);

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* Optional subtle texture */
.page-hero::after {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(
    0deg,
    rgba(9, 17, 26, 0.25),
    transparent 60%
  );
}

@media (max-width: 767.98px) {
  .page-hero {
    background-position: center, center, 60% center;
  }
}



.hero-meta-badge,
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-label);
  font-size: var(--text-2xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #F8B4B0;
  background: rgba(163, 43, 35, 0.18);
  border: 1px solid rgba(163, 43, 35, 0.36);
  padding: 4px 13px;
  border-radius: 9999px;
  margin-bottom: var(--space-5);
  backdrop-filter: blur(8px);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  display: none;
}

.hero-meta-badge::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: #e8383a;
  border-radius: 50%;
  box-shadow: 0 0 6px #e8383a;
}

.hero-title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 3.8vw + 0.5rem, 3.75rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.025em;
  color: #FFFFFF;
  margin-bottom: var(--space-6);
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.25);
}

.hero-intro {
  font-size: clamp(1.05rem, 1.25vw + 0.4rem, 1.25rem);
  line-height: 1.72;
  color: rgba(225, 235, 248, 0.85);
  max-width: 100%!important;
  margin-bottom: var(--space-8);
}

/* ── Luxury Button Styling ────────────────────────────────────────────────── */
.btn {
  font-weight: 600;
  border-radius: 5px;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 1px 3px rgba(10, 20, 35, 0.05);
}

.btn:hover {
  transform: translateY(-1.5px);
}

.btn:active {
  transform: translateY(0);
}

.btn-accent {
  background: linear-gradient(180deg, #b10103 0%, #c71618 100%);
  border: 1px solid #c71618;
  color: #FFFFFF;
  box-shadow: 0 4px 14px rgba(163, 43, 35, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.btn-accent:hover {
  background: linear-gradient(180deg, #c71618 0%, #b10103 100%);
  box-shadow: 0 6px 22px rgba(163, 43, 35, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.25);
  color: #FFFFFF;
}

.btn-primary {
  background: linear-gradient(180deg, #1C2D40 0%, #101B27 100%);
  border: 1px solid #283F59;
  color: #FFFFFF;
  box-shadow: 0 3px 10px rgba(10, 20, 35, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.btn-primary:hover {
  background: linear-gradient(180deg, #243952 0%, #142232 100%);
  box-shadow: 0 6px 18px rgba(10, 20, 35, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.18);
  color: #FFFFFF;
}

.btn-outline {
  background-color: transparent;
  color: var(--color-brand);
  border: 1.5px solid var(--color-brand);
}

.btn-outline:hover {
  background-color: var(--color-brand);
  color: #FFFFFF;
  box-shadow: 0 4px 14px rgba(20, 32, 46, 0.18);
}

.btn-outline-white {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.32);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #FFFFFF;
}

.btn-outline-white:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.7);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  color: #FFFFFF;
}

/* ── Bespoke Custom Bullet List (Elevated Interactive Cards) ─────────────── */
ul.bullet-list-custom {
  list-style: none;
  padding-left: 0;
  margin-top: 1.25rem;
  margin-bottom: 2.5rem;
  display: grid;
  gap: 12px;
}

ul.bullet-list-custom li {
  position: relative;
  list-style: none;
  padding: 0rem 1.4rem 0rem 3.5rem;
  color: #2D3E50;
  line-height: 1.68;
  font-size: 1rem;
}

ul.bullet-list-custom li::before {
  content: '\f26a';
  font-family: bootstrap-icons !important;
  position: absolute;
  left: 1.1rem;
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(163, 43, 35, 0.08);
  color: var(--color-accent);
  border-radius: 50%;
  font-size: 0.85rem;
  transition: all 0.2s ease;
}

ul.bullet-list-custom li:hover::before {
  background: var(--color-accent);
  color: #FFFFFF;
  transform: scale(1.08);
}

ul.bullet-list-custom li a.link-bold {
  color: var(--color-accent);
  font-weight: 700;
  text-decoration: none;
  transition: color 0.18s ease;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  text-decoration: underline;
}

ul.bullet-list-custom li a.link-bold:hover {
  color: var(--color-accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ── Content Section Layout Rhythm (Executive Canvas) ─────────────────────── */
.main-content {
  position: relative;
  background-color: #FAFCFE;
  border-top: 1px solid #E2EAF2;
  padding: clamp(3rem, 5vw, 4.75rem) 0 clamp(4.5rem, 6vw, 6.5rem) 0;
}

.main-content > .container {
  max-width: 1140px;
}

.main-content > .container > h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.65rem, 2.2vw + 0.35rem, 2.25rem);
  font-weight: 700;
  color: #0A1624;
  letter-spacing: -0.025em;
  line-height: 1.25;
  margin-top: 3.5rem;
  margin-bottom: 1.4rem;
  position: relative;
  padding-bottom: 0.85rem;
}

.main-content > .container > h2:first-of-type,
.main-content > .container > h2:first-child {
  margin-top: 0;
}

.main-content > .container > h2::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: 320px;
  height: 1px;
  background: linear-gradient(90deg, #D4DFEC 0%, rgba(212, 223, 236, 0) 100%);
}

.main-content > .container > h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 56px;
  height: 3px;
  background: var(--color-accent);
  border-radius: 2px;
  box-shadow: 0 1px 4px rgba(163, 43, 35, 0.3);
}

.main-content > .container > h3 {
  font-family: var(--font-heading);
  font-size: clamp(1.2rem, 1.4vw + 0.25rem, 1.45rem);
  font-weight: 600;
  color: #122234;
  letter-spacing: -0.015em;
  margin-top: 2.75rem;
  margin-bottom: 1.15rem;
  display: flex;
  align-items: center;
  gap: 10px;
}

.main-content > .container > h3::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 1.15em;
  background: var(--color-accent);
  border-radius: 2px;
  flex-shrink: 0;
}

.main-content p {
  color: #334454;
  font-size: 1.0625rem;
  line-height: 1.8;
  margin-bottom: 1.35rem;
  max-width: 82ch;
}

.main-content > .container > p:first-of-type,
.main-content > .container > h2:first-of-type + p {
  font-size: 1.15rem;
  line-height: 1.75;
  color: #152536;
  font-weight: 450;
}

/* ── Premium Clickable Contact Links & Action Badges ─────────────────────── */
.contact-link,
.phone-link,
.email-link,
.main-content a[href^="tel:"],
.main-content a[href^="mailto:"] {
  color: var(--color-accent);
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  border-bottom: 1.5px solid rgba(163, 43, 35, 0.3);
  padding-bottom: 1px;
}
.main-content a[href^="tel:"]
{border: none!important; box-shadow: none;}
.contact-link:hover,
.phone-link:hover,
.email-link:hover,
.main-content a[href^="tel:"]:hover,
.main-content a[href^="mailto:"]:hover {
  color: #821D16;
  border-bottom-color: #821D16;
  text-decoration: none;
}

.contact-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0.55rem 1.15rem;
  background: #FFFFFF;
  border: 1px solid #D1DFED;
  border-radius: 8px;
  color: #0F1C2B !important;
  font-weight: 600;
  font-size: 0.95rem;
  text-decoration: none !important;
  box-shadow: 0 2px 6px rgba(10, 20, 35, 0.04);
  transition: all 0.2s ease;
}

.contact-pill:hover {
  background: #F8FAFD;
  border-color: var(--color-accent);
  color: var(--color-accent) !important;
  transform: translateY(-1.5px);
  box-shadow: 0 6px 16px -2px rgba(10, 20, 35, 0.08);
  text-decoration: none !important;
}

.contact-pill i {
  color: var(--color-accent);
  font-size: 1.05rem;
}

/* Footer address override - ensure white/light footer styling remains intact */
.cm-footer-contact a {
  color: #DDE7F3 !important;
  border-bottom: none !important;
  display: inline !important;
  font-weight: 500;
}
.cm-footer-contact a:hover {
  color: #FFFFFF !important;
  text-decoration: underline !important;
}

/* ── Premium Contact Hub Cards & Grids ───────────────────────────────────── */
.contact-cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 2rem 0 3rem 0;
}

.premium-contact-card {
  background: #FFFFFF;
  border: 1px solid #E1EAF2;
  border-radius: 12px;
  padding: 1.75rem;
  box-shadow: 0 4px 16px -4px rgba(10, 25, 45, 0.05);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.premium-contact-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--color-accent) 0%, rgba(163, 43, 35, 0.2) 100%);
  opacity: 0.9;
}

.premium-contact-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px -6px rgba(10, 25, 45, 0.1);
  border-color: #CBDCEB;
}

.premium-contact-card__icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(163, 43, 35, 0.08);
  color: var(--color-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  margin-bottom: 1.2rem;
}

.premium-contact-card__title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #0A1624;
  margin-bottom: 0.5rem;
}

.premium-contact-card__desc {
  font-size: 0.925rem;
  color: #4A5B6D;
  line-height: 1.6;
  margin-bottom: 1.25rem;
  flex-grow: 1;
}

.premium-contact-card__links {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.premium-contact-card__action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0C1A29;
  font-weight: 600;
  font-size: 0.925rem;
  text-decoration: none;
  padding: 0.55rem 0.9rem;
  background: #F5F8FC;
  border-radius: 6px;
  border: 1px solid #E1EAF2;
  transition: all 0.2s ease;
}

.premium-contact-card__action:hover {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #FFFFFF !important;
  text-decoration: none;
}

.premium-contact-card__action i {
  color: var(--color-accent);
  transition: color 0.2s ease;
}

.premium-contact-card__action:hover i {
  color: #FFFFFF;
}

/* ── Support Emergency Banner ────────────────────────────────────────────── */
.support-emergency-banner {
  background: linear-gradient(135deg, #09131F 0%, #162436 100%);
  border-left: 4px solid var(--color-accent);
  border-radius: 10px;
  padding: 1.5rem 2rem;
  margin: 1.5rem 0 2.5rem 0;
  color: #FFFFFF;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  box-shadow: 0 8px 24px -4px rgba(10, 20, 35, 0.15);
}

.support-emergency-banner__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: rgba(220, 38, 38, 0.2);
  border: 1px solid rgba(220, 38, 38, 0.4);
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #FCA5A5;
  margin-bottom: 6px;
}

.support-emergency-banner__pulse {
  width: 8px;
  height: 8px;
  background: #EF4444;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7);
  animation: pulse-emergency 1.8s infinite;
}

@keyframes pulse-emergency {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 8px rgba(239, 68, 68, 0);
  }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0);
  }
}

.support-emergency-banner__title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0.25rem 0;
}

.support-emergency-banner__sub {
  color: rgba(226, 238, 252, 0.82);
  font-size: 0.925rem;
  margin: 0;
}

.support-emergency-banner__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--color-accent);
  color: #FFFFFF !important;
  font-weight: 700;
  padding: 0.85rem 1.6rem;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 4px 14px rgba(163, 43, 35, 0.35);
  white-space: nowrap;
}

.support-emergency-banner__btn:hover {
  background: #84201A;
  transform: translateY(-1.5px);
  box-shadow: 0 6px 20px rgba(163, 43, 35, 0.5);
  color: #FFFFFF !important;
  text-decoration: none;
}

/* ── Headquarters Banner ─────────────────────────────────────────────────── */
.hq-office-banner {
  background: #FFFFFF;
  border: 1px solid #D5E2EE;
  border-radius: 12px;
  padding: 1.75rem 2rem;
  margin: 2.5rem 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  box-shadow: 0 4px 16px -4px rgba(10, 20, 35, 0.05);
}

.hq-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-accent);
  background: rgba(163, 43, 35, 0.08);
  padding: 3px 8px;
  border-radius: 4px;
  margin-bottom: 0.5rem;
}

.hq-office-content h3 {
  margin: 0.25rem 0 0.5rem 0;
  font-size: 1.3rem;
  font-weight: 700;
  color: #0A1624;
}

.hq-address {
  font-weight: 600;
  color: #1A2838;
  margin-bottom: 0.35rem;
}

.hq-hours, .hq-coverage {
  font-size: 0.925rem;
  color: #556779;
  margin-bottom: 0.25rem;
}

.hq-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ── Quick Navigation Grid ───────────────────────────────────────────────── */
.quick-nav-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
  margin: 1.5rem 0 2.5rem 0;
}

.quick-nav-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 1.35rem 1.25rem;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
  box-shadow: 0 2px 6px rgba(10, 20, 35, 0.03);
  transition: all 0.22s ease;
}

.quick-nav-card:hover {
  border-color: var(--color-accent);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px -4px rgba(10, 20, 35, 0.08);
  text-decoration: none;
}

.quick-nav-card__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: #0E1A29;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.quick-nav-card__title i {
  color: var(--color-accent);
  transition: transform 0.2s ease;
}

.quick-nav-card:hover .quick-nav-card__title i {
  transform: translate(2px, -2px);
}

.quick-nav-card__desc {
  font-size: 0.875rem;
  color: #64748B;
  line-height: 1.5;
  margin: 0;
}

/* ── Media Contact Card ──────────────────────────────────────────────────── */
.media-contact-card {
  background: #FFFFFF;
  border: 1px solid #D5E2EE;
  border-radius: 12px;
  padding: 1.75rem 2rem;
  margin: 1.5rem 0 2.5rem 0;
  box-shadow: 0 4px 16px -4px rgba(10, 20, 35, 0.05);
}

.media-contact-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 0.75rem;
}

.media-badge {
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-accent);
}

.sla-badge {
  font-size: 0.8rem;
  font-weight: 600;
  color: #0F5132;
  background: #D1E7DD;
  padding: 3px 8px;
  border-radius: 4px;
}

.media-contact-text {
  font-size: 1rem;
  color: #334454;
  margin-bottom: 1.25rem;
}

.media-contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ── Legal & Policy Support Card ─────────────────────────────────────────── */
.legal-doc-footer-card {
  background: #F8FAFD;
  border: 1px solid #D5E2EE;
  border-radius: 8px;
  padding: 1.25rem 1.5rem;
  margin: 1.75rem 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  font-size: 0.95rem;
  color: #2D3E50;
}

/* ── Editorial Cards & Panels ─────────────────────────────────────────────── */
.card-editorial {
  background-color: #FFFFFF;
  border: 1px solid rgba(20, 32, 46, 0.08);
  border-radius: 10px;
  padding: var(--space-8);
  box-shadow: 0 4px 18px -4px rgba(10, 20, 35, 0.06);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.card-editorial:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 32px -6px rgba(10, 20, 35, 0.12);
  border-color: rgba(20, 32, 46, 0.14);
}

/* ── Tables Refined Executive Financial Style ─────────────────────────────── */
.table-responsive {
  border-radius: 10px;
  border: 1px solid #D5E0EB;
  box-shadow: 0 4px 18px -4px rgba(10, 20, 35, 0.06);
  overflow: hidden;
  margin-bottom: var(--space-8);
  background: #FFFFFF;
}

.data-table {
  margin-bottom: 0;
}

.data-table thead {
  background: linear-gradient(180deg, #162434 0%, #0F1A26 100%);
  color: #FFFFFF;
}

.data-table thead th {
  padding: 1rem 1.25rem;
  font-size: var(--text-xs);
  letter-spacing: 0.12em;
  font-weight: 700;
  border: none;
}

.data-table td,
.data-table tbody th {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid #E8EFF6;
  font-size: 0.95rem;
}

.data-table tbody tr {
  transition: background-color 0.15s ease;
}

.data-table tbody tr:nth-child(even) {
  background-color: #F8FAFD;
}

.data-table tbody tr:hover {
  background-color: #EDF3FA;
}

/* ── Accordion Luxury Panels ──────────────────────────────────────────────── */
.accordion-group {
  margin-top: var(--space-8);
  margin-bottom: var(--space-10);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.accordion-item {
  border: 1px solid rgba(20, 32, 46, 0.09);
  border-radius: 8px;
  background-color: #FFFFFF;
  box-shadow: 0 2px 8px rgba(10, 20, 35, 0.03);
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
}

.accordion-item:hover {
  border-color: rgba(20, 32, 46, 0.18);
  box-shadow: 0 6px 20px -4px rgba(10, 20, 35, 0.07);
}

.accordion-trigger {
  padding: 1.25rem 1.5rem;
  font-size: 1.15rem;
  color: var(--color-brand);
  background: none;
  transition: color 0.18s ease;
}

.accordion-trigger:hover {
  color: var(--color-accent);
}

.accordion-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 50%;
  background-color: #F3F6FA;
  border: 1px solid #D5E0EB;
  color: var(--color-brand);
  font-size: 1.2rem;
  font-weight: 400;
  transition: all 0.22s ease;
}

.accordion-trigger[aria-expanded="true"] .accordion-icon {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
  color: #FFFFFF;
  transform: rotate(45deg);
  box-shadow: 0 0 10px rgba(163, 43, 35, 0.35);
}

.accordion-panel {
  padding: 0 1.5rem 1.4rem 1.5rem;
  color: #384A5C;
  font-size: 1rem;
  line-height: 1.72;
}

/* ── Content Callout / Placeholder Box ────────────────────────────────────── */
.content-placeholder-box {
  border: 1px solid #CCD8E6;
  border-left: 4px solid var(--color-blue-light);
  border-radius: 6px;
  background-color: #F4F8FC;
  padding: var(--space-6) var(--space-8);
  margin: var(--space-8) 0;
  display: none;
}

.placeholder-badge {
  background-color: #E2ECF7;
  color: #1A4570;
  border: 1px solid #BED2E7;
  font-weight: 700;
  letter-spacing: 0.1em;
}

/* ── Forms Executive Luxury Shell ─────────────────────────────────────────── */
.form-shell {
  background-color: #FFFFFF;
  border: 1px solid #D4DFEC;
  border-radius: 12px;
  padding: clamp(2rem, 4vw, 3rem);
  box-shadow: 0 10px 36px -6px rgba(10, 20, 35, 0.08), 0 2px 6px rgba(10, 20, 35, 0.03);
  margin-bottom: var(--space-10);
}

.form-label {
  font-size: 0.9rem;
  font-weight: 600;
  color: #121F2E;
  margin-bottom: 4px;
}

.form-input,
.form-select,
.form-textarea {
  border: 1.5px solid #CFDAE6;
  border-radius: 6px;
  padding: 0.75rem 1rem;
  font-size: 0.975rem;
  background-color: #FBFDFE;
  transition: all 0.2s ease;
}

.form-input:hover,
.form-select:hover,
.form-textarea:hover {
  border-color: #9DB4CA;
  background-color: #FFFFFF;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  background-color: #FFFFFF;
  border-color: #1A4570;
  box-shadow: 0 0 0 4px rgba(26, 69, 112, 0.15);
}

.status-success {
  padding: 1rem 1.25rem;
  border-radius: 6px;
  background-color: #E8F7EE;
  border: 1px solid #A8E2BC;
  color: #125E33;
}

.status-error {
  padding: 1rem 1.25rem;
  border-radius: 6px;
  background-color: #FDF0EF;
  border: 1px solid #F5B8B4;
  color: #9E241C;
}

/* ── Closing CTA Band Flagship Showcase ──────────────────────────────────── */
.closing-cta-band {
  position: relative;
  background:
    radial-gradient(ellipse 90% 80% at 90% 0%, rgba(35, 80, 135, 0.3) 0%, transparent 60%),
    linear-gradient(135deg, #08111A 0%, #101B27 50%, #142332 100%);
  color: var(--color-text-inverse);
  border-radius: 12px;
  padding: clamp(2.5rem, 5vw, 4rem);
  margin-top: var(--space-16);
  margin-bottom: var(--space-10);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 24px 56px -12px rgba(8, 14, 21, 0.28), 0 4px 12px rgba(8, 14, 21, 0.1);
}

.closing-cta-band::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 3.5px;
  background: linear-gradient(90deg, #A82B23 0%, #e8383a 40%, rgba(168, 43, 35, 0.25) 100%);
  border-radius: 12px 12px 0 0;
}

.closing-cta-band::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(
      90deg,
      transparent,
      transparent 79px,
      rgba(255, 255, 255, 0.018) 79px,
      rgba(255, 255, 255, 0.018) 80px
    );
  pointer-events: none;
}

.cta-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-label);
  font-size: var(--text-2xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #F8B4B0;
  margin-bottom: var(--space-4);
}

.cta-heading {
  font-family: var(--font-heading);
  font-size: clamp(1.85rem, 2.5vw + 0.6rem, 2.75rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin-bottom: var(--space-4);
}

.cta-body {
  font-size: 1.15rem;
  line-height: 1.72;
  color: rgba(220, 232, 245, 0.82);
  max-width: 64ch;
  margin-bottom: var(--space-8);
}

/* ── Executive Footer ─────────────────────────────────────────────────────── */
.site-footer {
  background-color: #070D14;
  color: #9EB1C4;
  padding: var(--space-20) 0 var(--space-10) 0;
  border-top: 3.5px solid var(--color-accent);
}

.footer-top {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-brand-col .brand-title {
  color: #FFFFFF;
  letter-spacing: 0.06em;
}

.footer-heading {
  color: rgba(255, 255, 255, 0.6);
  font-weight: 700;
  letter-spacing: 0.14em;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding-bottom: 8px;
  margin-bottom: 14px;
}

.footer-nav-list a {
  color: #A3B5C7;
  transition: all 0.18s ease;
}

.footer-nav-list a:hover {
  color: #FFFFFF;
  transform: translateX(4px);
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  color: rgba(163, 181, 199, 0.65);
}

.footer-legal-links a {
  color: rgba(163, 181, 199, 0.65);
  transition: color 0.15s ease;
}

.footer-legal-links a:hover {
  color: #FFFFFF;
}

/* ── Back to Top Floating Button ──────────────────────────────────────────── */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: #14202E;
  color: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 6px 20px rgba(8, 14, 21, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 850;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.back-to-top:hover {
  background-color: var(--color-accent);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(163, 43, 35, 0.4);
}

/* ==========================================================================
   HOMEPAGE SPECIFIC SECTION ENHANCEMENTS (MATCHING ATTACHED SPECIFICATION)
   ========================================================================== */

/* ── Brand Logo with Icon ────────────────────────────────────────────────── */
.brand-lockup-with-icon {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}
.brand-lockup-with-icon:hover {
  text-decoration: none;
}
.brand-emblem-svg {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
}
.brand-wordmark-text {
  display: flex;
  flex-direction: column;
}
.brand-wordmark-title {
  font-family: var(--font-heading);
  font-size: 1.45rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: #102136;
  line-height: 1.05;
}
.brand-wordmark-title span {
  color: #e8383a;
}
.brand-wordmark-subtitle {
  font-family: var(--font-label);
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748B;
  font-weight: 600;
  margin-top: 2px;
}

/* ── Coral Accent Buttons (Matching Screenshot) ──────────────────────────── */
.btn-coral {
  background: linear-gradient(135deg, var(--color-accent) 0%, #cd1719 100%);
  color: #FFFFFF !important;
  border: 1px solid var(--color-accent);
  font-weight: 600;
  border-radius: 6px;
  box-shadow: 0 4px 14px rgba(234, 88, 12, 0.32);
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
}
.btn-coral:hover {
  background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent) 100%);
  box-shadow: 0 6px 20px rgba(234, 88, 12, 0.45);
  transform: translateY(-1.5px);
  color: #FFFFFF !important;
  text-decoration: none;
}
.btn-glass-hero {
  background: rgba(14, 27, 46, 0.65);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.35);
  color: #FFFFFF !important;
  font-weight: 600;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s ease;
  text-decoration: none;
  padding: 0.72rem 1.4rem;
}
.btn-glass-hero:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.7);
  transform: translateY(-1.5px);
  color: #FFFFFF !important;
  text-decoration: none;
}

/* ── Header Search Button ─────────────────────────────────────────────────── */
.header-search-btn {
  background: none;
  border: none;
  color: #475569;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.18s ease;
}
.header-search-btn:hover {
  background-color: #F1F5F9;
  color: #e8383a;
}

/* ── Hero Split Section ───────────────────────────────────────────────────── */
.hero-attached-spec {
  position: relative;
  /*background: 
    linear-gradient(90deg, rgba(6, 13, 23, 0.94) 0%, rgba(9, 19, 34, 0.88) 55%, rgba(10, 24, 42, 0.62) 100%),
    url('https://images.unsplash.com/photo-1534430480872-3498386e7856?auto=format&fit=crop&w=1920&q=80') center right/cover no-repeat;*/
    background: 
    linear-gradient(90deg, rgba(6, 13, 23, 0.94) 0%, rgba(9, 19, 34, 0.58) 55%, rgba(10, 24, 42, 0.62) 100%),
    url('../../images/photo-1534430480872-3498386e7856.jpg') center right/cover no-repeat;
  color: #FFFFFF;
  padding: clamp(4.5rem, 7vw, 6.5rem) 0 clamp(4rem, 6vw, 5.5rem) 0;
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.hero-attached-eyebrow {
  font-family: var(--font-label);
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--color-accent);
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: 8px;
}
.hero-attached-eyebrow::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: #F97316;
  border-radius: 50%;
  box-shadow: 0 0 8px #F97316;
}
.hero-attached-title {
  font-family: var(--font-display);
  font-size: clamp(2.35rem, 3.2vw + 0.5rem, 3.85rem);
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin-bottom: 1.5rem;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.35);
}
.hero-attached-intro {
  font-size: clamp(1.05rem, 1.2vw + 0.35rem, 1.25rem);
  line-height: 1.7;
  color: rgba(226, 238, 252, 0.88);
  max-width: 62ch;
  margin-bottom: 2.25rem;
}
.hero-attached-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

/* Floating Feature Box on Right */
.hero-floating-card {
  background: rgba(11, 21, 36, 0.76);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;
  padding: 30px 28px;
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.hero-card-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.hero-card-icon-wrap {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 10px;
  background: rgba(199, 22, 24, 0.18);
  border: 1px solid rgba(199, 22, 24, 0.35);
  color: #e8383a;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.hero-card-item-title {
  font-family: var(--font-label);
  font-size: 1.05rem;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 3px;
  letter-spacing: 0.01em;
}
.hero-card-item-sub {
  font-size: 0.875rem;
  color: rgba(203, 219, 238, 0.75);
  line-height: 1.45;
  margin: 0;
}

/* ── Section 1: 3 Industry Cards ─────────────────────────────────────────── */
.section-industries {
  padding: clamp(3.5rem, 5vw, 5rem) 0;
  background-color: #F8FAFD;
}
.industry-card-wrap {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.06);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  height: 100%;
}
.industry-card-wrap:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 36px -4px rgba(15, 23, 42, 0.12);
  border-color: #CBD5E1;
}
.industry-card-media {
  position: relative;
  height: 200px;
  overflow: hidden;
  background-color: #1E293B;
}
.industry-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.industry-card-wrap:hover .industry-card-media img {
  transform: scale(1.05);
}
.industry-card-badge-icon {
  position: absolute;
  bottom: 22px;
  left: 24px;
  width: 48px;
  height: 48px;
  background: #FFFFFF;
  border-radius: 10px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e8383a;
  z-index: 2;
  border: 1px solid rgba(199, 22, 24, 0.15);
}
.industry-card-body {
  padding: 24px 24px 24px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.industry-card-title {
  font-family: var(--font-heading);
  font-size: 1.4rem;
  font-weight: 700;
  color: #102136;
  margin-bottom: 10px;
  margin-top: 0px;
}
.industry-card-desc {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.62;
  margin-bottom: 18px;
  flex: 1;
}
.industry-card-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-label);
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--color-accent);
  text-decoration: none;
  transition: gap 0.2s ease, color 0.2s ease;
}
.industry-card-link:hover {
  color: #EA580C;
  gap: 10px;
  text-decoration: none;
}

/* ── Section 2: Our Core Services ─────────────────────────────────────────── */
.section-core-services {
  padding: clamp(3.5rem, 5vw, 4.5rem) 0;
  background-color: #FFFFFF;
  border-top: 1px solid #EEF2F6;
  border-bottom: 1px solid #EEF2F6;
}
.section-top-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 2rem;
}
.section-top-header h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.85rem, 2.5vw + 0.4rem, 2.45rem);
  font-weight: 700;
  color: #102136;
  margin: 0;
}
.section-top-header-link {
  font-family: var(--font-label);
  font-size: 0.95rem;
  font-weight: 700;
  color: #e8383a;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: gap 0.15s ease;
}
.section-top-header-link:hover {
  gap: 10px;
  color: var(--color-accent);
  text-decoration: none;
}
.core-services-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
@media (max-width: 1100px) {
  .core-services-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 640px) {
  .core-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.core-service-card {
  background: #FFFFFF;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 24px 14px;
  text-align: center;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);
}
.core-service-card:hover {
  transform: translateY(-4px);
  border-color: #e8383a;
  box-shadow: 0 10px 24px -2px rgba(199, 22, 24, 0.15);
  text-decoration: none;
}
.core-service-icon-wrap {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: #F0F9FF;
  color: #e8383a;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease, color 0.2s ease;
}
.core-service-card:hover .core-service-icon-wrap {
  background: #e8383a;
  color: #FFFFFF;
}
.core-service-title {
  font-family: var(--font-label);
  font-size: 0.95rem;
  font-weight: 700;
  color: #1E293B;
  line-height: 1.35;
  margin: 0;
}
.core-service-card:hover .core-service-title {
  color: #e8383a;
}

/* ── Section 3: High Contrast Audit Banner ────────────────────────────────── */
.section-audit-banner {
  padding: clamp(2.5rem, 4vw, 3.5rem) 0;
  background-color: #F8FAFD;
}
.audit-banner-box {
  background: linear-gradient(105deg, #071220 0%, #0E2038 65%, #0B1728 100%);
  border-radius: 12px;
  padding: clamp(2rem, 4vw, 3rem) clamp(2rem, 4.5vw, 3.5rem);
  color: #FFFFFF;
  position: relative;
  overflow: hidden;
  box-shadow: 0 16px 40px -8px rgba(7, 18, 32, 0.35);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 24px;
}
.audit-banner-box::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 35%;
  height: 100%;
  background: linear-gradient(135deg, transparent 40%, rgba(199, 22, 24, 0.12) 100%);
  pointer-events: none;
}
.audit-banner-left {
  max-width: 680px;
}
.audit-banner-title {
  font-family: var(--font-heading);
  font-size: clamp(1.85rem, 2.5vw, 2.5rem);
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 8px;
}
.audit-banner-desc {
  font-size: 1.05rem;
  color: rgba(226, 238, 252, 0.85);
  line-height: 1.6;
  margin: 0;
}

/* ── Section 4: Split Section (New York Roots) ────────────────────────────── */
.section-ny-roots {
  padding: clamp(4rem, 6vw, 5.5rem) 0;
  background-color: #FFFFFF;
}
.ny-roots-title {
  font-family: var(--font-heading);
  font-size: clamp(2rem, 3.2vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
  color: #102136;
  margin-bottom: 1.25rem;
}
.ny-roots-intro {
  font-size: 1.05rem;
  line-height: 1.7;
  color: #475569;
  margin-bottom: 1.75rem;
}
.ny-roots-features {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.ny-roots-feature-row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.ny-roots-icon-pill {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 10px;
  background: #E0F2FE;
  color: #e8383a;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.ny-roots-feature-title {
  font-family: var(--font-label);
  font-size: 1.05rem;
  font-weight: 700;
  color: #102136;
  margin-bottom: 2px;
}
.ny-roots-feature-desc {
  font-size: 0.9rem;
  color: #64748B;
  margin: 0;
  line-height: 1.45;
}
.ny-roots-image-frame {
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 20px 48px -6px rgba(15, 23, 42, 0.16);
  height: 380px;
  background-color: #1E293B;
  border: 1px solid #E2E8F0;
}
.ny-roots-image-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ── Section 5: Two-Column FAQ + Sticky Promo Box ─────────────────────────── */
.section-faq-split {
  padding: clamp(4rem, 6vw, 5.5rem) 0;
  background-color: #F8FAFD;
  border-top: 1px solid #EBF2F7;
}
.faq-promo-card {
  background: #F0F7FF;
  border: 1px solid #D0E4FA;
  border-radius: 12px;
  padding: 36px 28px;
  text-align: center;
  box-shadow: 0 4px 18px rgba(199, 22, 24, 0.05);
}
.faq-promo-title {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
  color: #102136;
  margin-bottom: 10px;
}
.faq-promo-desc {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 24px;
}

/* =========================================
   CENTEL MEDIA — INDUSTRY MODEL SECTION
   ========================================= */

.industry-model {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(76px, 9vw, 124px) 0;
  background: var(--color-surface-alt, #F5F7FA);
  color: var(--color-text, #14202E);
  font-family: var(--font-body, Inter, sans-serif);
}

.industry-model *,
.industry-model *::before,
.industry-model *::after {
  box-sizing: border-box;
}

.industry-model .container {
  width: min(calc(100% - 48px), 1240px);
  margin-inline: auto;
}

.industry-model__intro {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(36px, 6vw, 88px);
  padding-bottom: 44px;
  border-bottom: 1px solid var(--color-border, #DCE3EC);
}

.industry-model__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  color: var(--color-accent, #e8383a);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.14em;
}

.industry-model__eyebrow::before {
  content: "";
  width: 26px;
  height: 2px;
  background: currentColor;
}

.industry-model__main h2 {
  max-width: 580px;
  margin: 0;
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -0.055em;
}

.industry-model__description p,
.industry-model__paragraph,
.industry-model__audit p {
  margin: 0;
  color: var(--color-text-muted, #445568);
  font-size: 16px;
  line-height: 1.8;
}

.industry-model__description {
  max-width: 610px;
  padding-bottom: 3px;
}

.industry-model__body {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  align-items: stretch;
  gap: clamp(36px, 6vw, 88px);
  padding-top: 48px;
}

/* Visual system diagram */

.industry-model__visual {
  position: relative;
  display: flex;
  flex-direction: column;
  align-self: start;
  min-height: 470px;
  padding: 24px;
  overflow: hidden;
  color: var(--color-text-inverse, #fff);
  background: var(--color-brand, #14202E);
}

.industry-model__visual::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 32px 32px;
  content: "";
  pointer-events: none;
}

.industry-model__visual-top,
.industry-model__diagram,
.industry-model__visual-footer {
  position: relative;
  z-index: 1;
}

.industry-model__visual-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--color-border-dark, #26394D);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
}

.industry-model__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-text-inverse-muted, #A8BAC9);
  white-space: nowrap;
}

.industry-model__status span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #8BC9A5;
  box-shadow: 0 0 0 4px rgba(139, 201, 165, .12);
}

.industry-model__diagram {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: 190px 90px;
  align-items: end;
  gap: 18px 10px;
  flex: 1;
  padding-top: 28px;
  padding-bottom: 24px;
}

.industry-model__node {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-width: 0;
  padding: 13px 11px;
  border: 1px solid var(--color-border-dark, #26394D);
  background: #1A2A3B;
}

.industry-model__node--main {
  grid-column: 1 / -1;
  justify-self: center;
  width: min(100%, 250px);
  min-height: 170px;
  padding: 20px;
  border-color: rgba(194, 59, 49, .8);
  background: linear-gradient(140deg, #243548, #14202E 80%);
  box-shadow: 0 0 0 5px rgba(163, 43, 35, .08);
}

.industry-model__node-index {
  color: var(--color-accent-light, #C23B31);
  font-family: var(--font-mono, monospace);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .08em;
}

.industry-model__node-label {
  color: var(--color-text-inverse-muted, #A8BAC9);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
}

.industry-model__node-title {
  font-size: 14px;
  font-weight: 650;
  line-height: 1.4;
}

.industry-model__node--main .industry-model__node-title {
  font-size: clamp(24px, 2.5vw, 30px);
  line-height: 1.15;
  letter-spacing: -.04em;
}

.industry-model__node--insurance,
.industry-model__node--construction,
.industry-model__node--law {
  min-height: 90px;
}

.industry-model__node--insurance {
  grid-column: 1;
}

.industry-model__node--construction {
  grid-column: 2;
}

.industry-model__node--law {
  grid-column: 3;
}

.industry-model__connector {
  position: absolute;
  z-index: 1;
  top: 194px;
  height: 35px;
  width: 1px;
  background: var(--color-accent-light, #C23B31);
  opacity: .9;
}

.industry-model__connector::after {
  position: absolute;
  bottom: 0;
  left: -3px;
  width: 7px;
  height: 7px;
  border-right: 1px solid var(--color-accent-light, #C23B31);
  border-bottom: 1px solid var(--color-accent-light, #C23B31);
  content: "";
  transform: rotate(45deg);
}

.industry-model__connector--one {
  left: 16.66%;
}

.industry-model__connector--two {
  left: 50%;
}

.industry-model__connector--three {
  left: 83.33%;
}

.industry-model__visual-footer {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-top: 17px;
  border-top: 1px solid var(--color-border-dark, #26394D);
  color: var(--color-text-inverse-muted, #A8BAC9);
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .12em;
}

.industry-model__footer-line {
  height: 1px;
  min-width: 8px;
  flex: 1;
  background: var(--color-border-dark, #26394D);
}

/* Editorial content */

.industry-model__content {
  min-width: 0;
}

.industry-model__paragraph {
  margin-bottom: 24px;
}

.industry-model__paragraph--last {
  margin-bottom: 34px;
  color: var(--color-text, #14202E);
  font-weight: 550;
}

.industry-model__rule {
  width: 100%;
  height: 1px;
  margin-bottom: 30px;
  background: var(--color-border, #DCE3EC);
}

.industry-model__audit {
  position: relative;
  padding: 0 0 0 22px;
  border-left: 3px solid var(--color-accent, #e8383a);
}

.industry-model__audit-number {
  display: block;
  margin-bottom: 16px;
  color: var(--color-accent, #e8383a);
  font-family: var(--font-mono, monospace);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .1em;
}

.industry-model__audit h3 {
  margin: 0 0 16px;
  font-size: clamp(24px, 2.5vw, 32px);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.035em;
}

.industry-model__audit p {
  max-width: 570px;
}

.industry-model__audit-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 25px;
  padding-top: 19px;
  border-top: 1px solid var(--color-border, #DCE3EC);
}

.industry-model__audit-note {
  color: var(--color-text, #14202E);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
}

.industry-model__audit-mark {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  place-items: center;
  border: 1px solid var(--color-accent-border, #F0C4C1);
  color: var(--color-accent, #e8383a);
  font-size: 20px;
  transition:
    color var(--transition-normal, 220ms ease),
    background var(--transition-normal, 220ms ease),
    border-color var(--transition-normal, 220ms ease);
}

@media (hover: hover) {
  .industry-model__audit:hover .industry-model__audit-mark {
    color: #fff;
    border-color: var(--color-accent, #e8383a);
    background: var(--color-accent, #e8383a);
  }
}

/* Tablet */

@media (max-width: 991px) {
  .industry-model__intro,
  .industry-model__body {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .industry-model__intro {
    padding-bottom: 32px;
  }

  .industry-model__main h2 {
    max-width: 650px;
  }

  .industry-model__description {
    max-width: 760px;
  }

  .industry-model__body {
    padding-top: 34px;
  }

  .industry-model__visual {
    min-height: 440px;
  }

  .industry-model__diagram {
    grid-template-rows: 180px 90px;
  }

  .industry-model__connector {
    top: 184px;
  }
}

/* Mobile */

@media (max-width: 575px) {
  .industry-model {
    padding: 68px 0;
  }

  .industry-model .container {
    width: min(calc(100% - 36px), 1240px);
  }

  .industry-model__eyebrow {
    margin-bottom: 18px;
    font-size: 10px;
  }

  .industry-model__main h2 {
    font-size: clamp(36px, 10vw, 46px);
    line-height: 1.08;
  }

  .industry-model__description p,
  .industry-model__paragraph,
  .industry-model__audit p {
    font-size: 15px;
    line-height: 1.78;
  }

  .industry-model__body {
    gap: 34px;
    padding-top: 28px;
  }

  .industry-model__visual {
    min-height: 390px;
    padding: 17px;
  }

  .industry-model__visual-top {
    font-size: 9px;
  }

  .industry-model__diagram {
    grid-template-rows: 160px 82px;
    gap: 14px 7px;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .industry-model__node--main {
    min-height: 145px;
    padding: 16px;
  }

  .industry-model__node--main .industry-model__node-title {
    font-size: 26px;
  }

  .industry-model__node {
    padding: 10px 7px;
  }

  .industry-model__node--insurance,
  .industry-model__node--construction,
  .industry-model__node--law {
    min-height: 82px;
  }

  .industry-model__node-title {
    font-size: 12px;
    overflow-wrap: anywhere;
  }

  .industry-model__connector {
    top: 164px;
    height: 23px;
  }

  .industry-model__visual-footer {
    gap: 7px;
    font-size: 8px;
    letter-spacing: .08em;
  }

  .industry-model__paragraph--last {
    margin-bottom: 28px;
  }

  .industry-model__audit {
    padding-left: 16px;
  }

  .industry-model__audit h3 {
    font-size: 27px;
  }
}

/* Accessibility: reduced motion and keyboard visibility */

@media (prefers-reduced-motion: reduce) {
  .industry-model *,
  .industry-model *::before,
  .industry-model *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

.industry-model :focus-visible {
  outline: 3px solid var(--color-focus, #1956A8);
  outline-offset: 4px;
}

/* =====================================
   CENTEL MEDIA — PROFESSIONAL SERVICE GRID
   ===================================== */

.services-grid {
  padding: clamp(72px, 8vw, 108px) 0;
  background: var(--color-surface-alt, #F5F7FA);
  color: var(--color-text, #14202E);
  font-family: var(--font-body, Inter, sans-serif);
}

.services-grid *,
.services-grid *::before,
.services-grid *::after {
  box-sizing: border-box;
}

.services-grid .container {
  width: min(calc(100% - 40px), 1240px);
  margin-inline: auto;
}

.services-grid__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 38px;
}

.services-grid__eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--color-accent, #e8383a);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .13em;
}

.services-grid__header h2 {
  margin: 0;
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: -.045em;
}

.services-grid__header > p {
  max-width: 480px;
  margin: 0 0 3px;
  color: var(--color-text-muted, #445568);
  font-size: 15px;
  line-height: 1.8;
}

/* Cards */

.service-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 270px;
  padding: clamp(24px, 3vw, 34px);
  overflow: hidden;
  border: 1px solid var(--color-border, #DCE3EC);
  border-radius: var(--radius-lg, 8px);
  background: var(--color-surface, #fff);
  box-shadow: var(--shadow-sm, 0 2px 6px rgba(14, 22, 34, .06));
  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

.service-card::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 3px;
  background: var(--color-accent, #e8383a);
  content: "";
  transition: width 240ms ease;
}

.service-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 27px;
}

.service-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border: 1px solid var(--color-accent-border, #F0C4C1);
  border-radius: var(--radius-md, 5px);
  background: var(--color-accent-subtle, #FBF0EF);
  color: var(--color-accent, #e8383a);
  font-size: 24px;
  transition:
    background-color 220ms ease,
    color 220ms ease;
}

.service-card__number {
  color: #8593A3;
  font-family: var(--font-mono, monospace);
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .08em;
}

.service-card h3 {
  max-width: 390px;
  margin: 0 0 14px;
  color: var(--color-text, #14202E);
  font-size: clamp(21px, 2vw, 25px);
  font-weight: 650;
  line-height: 1.3;
  letter-spacing: -.035em;
}

.service-card > p {
  margin: 0 0 27px;
  color: var(--color-text-muted, #445568);
  font-size: 14px;
  line-height: 1.85;
}

.service-card__bottom {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid var(--color-border-subtle, #EBF0F6);
}

.service-card__indicator {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--color-accent, #e8383a);
}

.service-card__category {
  color: var(--color-text-light, #67788C);
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .1em;
  line-height: 1.5;
}

/* Subtle, professional hover */

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .service-card:hover {
    transform: translateY(-4px);
    border-color: #C7A5A2;
    box-shadow: var(--shadow-lg, 0 12px 32px rgba(14, 22, 34, .1));
  }

  .service-card:hover::before {
    width: 100%;
  }

  .service-card:hover .service-card__icon {
    color: #fff;
    background: var(--color-accent, #e8383a);
  }
}

/* Tablet */

@media (max-width: 767px) {
  .services-grid__header {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 28px;
  }

  .services-grid__header > p {
    max-width: 560px;
  }

  .service-card {
    min-height: 255px;
  }
}

/* Mobile */

@media (max-width: 575px) {
  .services-grid {
    padding: 64px 0;
  }

  .services-grid .container {
    width: calc(100% - 32px);
  }

  .services-grid__header h2 {
    font-size: 38px;
  }

  .service-card {
    min-height: 0;
    padding: 25px;
  }

  .service-card__top {
    margin-bottom: 23px;
  }

  .service-card h3 {
    font-size: 23px;
  }

  .service-card > p {
    font-size: 14px;
  }
}

/* Accessibility */

@media (prefers-reduced-motion: reduce) {
  .service-card,
  .service-card::before,
  .service-card__icon {
    transition: none;
  }
}

/* =====================================
   CENTEL SEO BUNDLE
   ===================================== */

.centel-bundle {
  padding: clamp(72px, 8vw, 108px) 0;
  background: var(--color-surface, #fff);
  color: var(--color-text, #14202E);
  font-family: var(--font-body, Inter, sans-serif);
}

.centel-bundle *,
.centel-bundle *::before,
.centel-bundle *::after {
  box-sizing: border-box;
}

.centel-bundle .container {
  width: min(calc(100% - 40px), 1240px);
  margin-inline: auto;
}

.centel-bundle__header {
  max-width: 740px;
  margin-bottom: 38px;
}

.centel-bundle__eyebrow {
  display: inline-block;
  margin-bottom: 16px;
  color: var(--color-accent, #e8383a);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .13em;
}

.centel-bundle__header h2 {
  margin: 0 0 18px;
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: -.045em;
}

.centel-bundle__header > p,
.centel-bundle__separate-heading > p {
  margin: 0;
  color: var(--color-text-muted, #445568);
  font-size: 15px;
  line-height: 1.8;
}

/* Featured bundle panel */

.centel-bundle__feature {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  overflow: hidden;
  border: 1px solid var(--color-border, #DCE3EC);
  border-radius: var(--radius-lg, 8px);
  background: var(--color-surface, #fff);
  box-shadow: var(--shadow-md, 0 4px 16px rgba(14, 22, 34, .08));
}

.centel-bundle__main {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(28px, 4vw, 48px);
  overflow: hidden;
  background: var(--color-brand, #14202E);
  color: var(--color-text-inverse, #fff);
}

.centel-bundle__main::after {
  position: absolute;
  right: -80px;
  bottom: -100px;
  width: 270px;
  height: 270px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 50%;
  box-shadow:
    0 0 0 30px rgba(255,255,255,.025),
    0 0 0 60px rgba(255,255,255,.02);
  content: "";
  pointer-events: none;
}

.centel-bundle__product-head {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 34px;
}

.centel-bundle__product-icon {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: var(--radius-md, 5px);
  background: rgba(255,255,255,.07);
  color: #e8383a;
  font-size: 23px;
}

.centel-bundle__product-label {
  color: #D0D9E3;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .12em;
  line-height: 1.7;
}

.centel-bundle__main h3 {
  position: relative;
  z-index: 1;
  margin: 0 0 18px;
  font-size: clamp(27px, 3vw, 36px);
  font-weight: 650;
  line-height: 1.18;
  letter-spacing: -.04em;
}

.centel-bundle__main > p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #D3DDE7;
  font-size: 14px;
  line-height: 1.9;
}

.centel-bundle__proof {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  padding-top: 30px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
}

.centel-bundle__proof i {
  color: #e8383a;
  font-size: 18px;
}

/* Checklist */

.centel-bundle__deliverables {
  padding: clamp(28px, 4vw, 45px);
  background: var(--color-surface-alt, #F5F7FA);
}

.centel-bundle__deliverables h4 {
  margin: 0 0 20px;
  font-size: 16px;
  font-weight: 700;
}

.centel-bundle__checklist {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.centel-bundle__checklist li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 15px 0;
  border-bottom: 1px solid var(--color-border, #DCE3EC);
  color: var(--color-text-muted, #445568);
  font-size: 14px;
  line-height: 1.65;
}

.centel-bundle__checklist li:first-child {
  padding-top: 0;
}

.centel-bundle__checklist li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.centel-bundle__checklist i {
  flex: 0 0 auto;
  margin-top: 2px;
  color: var(--color-accent, #e8383a);
  font-size: 18px;
}

/* Separate services */

.centel-bundle__separate {
  margin-top: 66px;
}

.centel-bundle__separate-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 27px;
}

.centel-bundle__separate-heading .centel-bundle__eyebrow {
  margin-bottom: 11px;
}

.centel-bundle__separate-heading h3 {
  margin: 0;
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.035em;
}

.centel-bundle__separate-heading > p {
  max-width: 470px;
}

.centel-bundle__service {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  height: 100%;
  min-height: 155px;
  padding: 24px;
  border: 1px solid var(--color-border, #DCE3EC);
  border-radius: var(--radius-lg, 8px);
  background: var(--color-surface, #fff);
  transition:
    border-color 220ms ease,
    background-color 220ms ease,
    transform 220ms ease,
    box-shadow 220ms ease;
}

.centel-bundle__service > i {
  color: var(--color-accent, #e8383a);
  font-size: 27px;
}

.centel-bundle__service > span:nth-child(2) {
  max-width: 190px;
  padding-right: 14px;
  color: var(--color-text, #14202E);
  font-size: 15px;
  font-weight: 650;
  line-height: 1.5;
}

.centel-bundle__service-number {
  position: absolute;
  top: 25px;
  right: 23px;
  color: #8A98A8;
  font-family: var(--font-mono, monospace);
  font-size: 10px;
  letter-spacing: .08em;
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .centel-bundle__service:hover {
    transform: translateY(-3px);
    border-color: var(--color-accent-border, #F0C4C1);
    background: var(--color-accent-subtle, #FBF0EF);
    box-shadow: var(--shadow-sm);
  }
}

/* Responsive */

@media (max-width: 767px) {
  .centel-bundle__feature {
    grid-template-columns: 1fr;
  }

  .centel-bundle__main {
    min-height: 330px;
  }

  .centel-bundle__proof {
    margin-top: 26px;
  }

  .centel-bundle__separate-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }

  .centel-bundle__separate {
    margin-top: 50px;
  }
}

@media (max-width: 575px) {
  .centel-bundle {
    padding: 64px 0;
  }

  .centel-bundle .container {
    width: calc(100% - 32px);
  }

  .centel-bundle__header h2 {
    font-size: 37px;
  }

  .centel-bundle__main,
  .centel-bundle__deliverables {
    padding: 26px 22px;
  }

  .centel-bundle__main {
    min-height: 0;
  }

  .centel-bundle__product-head {
    margin-bottom: 27px;
  }

  .centel-bundle__main h3 {
    font-size: 29px;
  }

  .centel-bundle__service {
    min-height: 135px;
    padding: 21px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .centel-bundle__service {
    transition: none;
  }
}

/* =====================================
   CENTEL MEDIA — NATIONAL FOOTPRINT
   ===================================== */

.centel-footprint {
  padding: clamp(72px, 8vw, 108px) 0;
  background: var(--color-brand, #14202E);
  color: var(--color-text-inverse, #fff);
  font-family: var(--font-body, Inter, sans-serif);
}

.centel-footprint *,
.centel-footprint *::before,
.centel-footprint *::after {
  box-sizing: border-box;
}

.centel-footprint .container {
  width: min(calc(100% - 40px), 1240px);
  margin-inline: auto;
}

.centel-footprint__intro {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(36px, 6vw, 82px);
  padding-bottom: 44px;
}

.centel-footprint__eyebrow {
  display: inline-block;
  margin-bottom: 18px;
  color: #e8383a;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .14em;
}

.centel-footprint__heading h2 {
  max-width: 480px;
  margin: 0;
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: -.045em;
}

.centel-footprint__description {
  max-width: 660px;
}

.centel-footprint__description p {
  margin: 0 0 17px;
  color: #D1DCE6;
  font-size: 14px;
  line-height: 1.9;
}

.centel-footprint__description p:last-child {
  margin-bottom: 0;
}

/* Location grid */

.centel-footprint__locations {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  padding-top: 32px;
  border-top: 1px solid var(--color-border-dark, #26394D);
}

.footprint-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 240px;
  padding: 25px;
  border: 1px solid #304154;
  border-radius: var(--radius-lg, 8px);
  background: #1A2A3B;
  transition:
    border-color 220ms ease,
    background-color 220ms ease,
    transform 220ms ease;
}

.footprint-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 25px;
}

.footprint-card__icon {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid #e8383a;
  border-radius: var(--radius-md, 5px);
  background: rgba(232, 56, 58, .16);
  color: #fff;
  font-size: 22px;
}

.footprint-card__number {
  color: #A8BAC9;
  font-family: var(--font-mono, monospace);
  font-size: 11px;
  letter-spacing: .08em;
}

.footprint-card h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.35;
  letter-spacing: -.025em;
}

.footprint-card > p {
  margin: 0 0 25px;
  color: #C2CFDC;
  font-size: 13px;
  line-height: 1.8;
}

.footprint-card__bottom {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid #304154;
  width: 100%;
  color: #A8BAC9;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .1em;
  line-height: 1.5;
}

.footprint-card__marker {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: #e8383a;
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .footprint-card:hover {
    transform: translateY(-3px);
    border-color: #e8383a;
    background: #213347;
  }
}

/* Tablet */

@media (max-width: 991px) {
  .centel-footprint__intro {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .centel-footprint__heading h2 {
    max-width: 650px;
  }

  .centel-footprint__locations {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Mobile */

@media (max-width: 575px) {
  .centel-footprint {
    padding: 64px 0;
  }

  .centel-footprint .container {
    width: calc(100% - 32px);
  }

  .centel-footprint__heading h2 {
    font-size: 38px;
  }

  .centel-footprint__intro {
    padding-bottom: 30px;
  }

  .centel-footprint__description p {
    font-size: 14px;
  }

  .centel-footprint__locations {
    grid-template-columns: 1fr;
    gap: 12px;
    padding-top: 24px;
  }

  .footprint-card {
    min-height: 210px;
    padding: 23px;
  }

  .footprint-card__top {
    margin-bottom: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .footprint-card {
    transition: none;
  }
}
.accordion-item h3
{margin: 0px}


/* CENTEL MEDIA — IMAGE CTA WITH SVG SHAPE DIVIDER */

.cm-final-cta {
  --cm-navy: #14202e;
  --cm-crimson: #e8383a;

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 110px 0 145px;
  color: #fff;
  background: var(--cm-navy);
}

/* Replace with your own high-resolution image */
.cm-final-cta__background {
  position: absolute;
  z-index: -3;
  inset: 0;
  background-image: url("../../images/cta-main.png");
  background-position: center 48%;
  background-size: cover;
  background-repeat: no-repeat;
  transform: scale(1.02);
}

.cm-final-cta__container {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr);
  align-items: center;
  gap: 60px;
}

.cm-final-cta__content {
  max-width: 730px;
}

.cm-final-cta__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 25px;
  color: #e7aaa5;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
}

.cm-final-cta__eyebrow span {
  width: 30px;
  height: 2px;
  background: var(--cm-crimson);
}

.cm-final-cta h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(46px, 5.5vw, 72px);
  font-weight: 650;
  letter-spacing: -2.8px;
  line-height: 1.08;
}

.cm-final-cta h2 span {
  color: #e7aaa5;
}

.cm-final-cta__description {
  max-width: 650px;
  margin: 24px 0 0;
  color: #d0d8e1;
  font-size: 17px;
  line-height: 1.85;
}

.cm-final-cta__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 28px;
  margin-top: 32px;
}

.cm-final-cta__button,
.cm-final-cta__secondary {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-size: 14px;
  font-weight: 650;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease;
}

.cm-final-cta__button {
  padding: 0 22px;
  color: #fff;
  background: var(--cm-crimson);
  border: 1px solid var(--cm-crimson);
  border-radius: 3px;
}

.cm-final-cta__button:hover {
  color: #fff;
  background: #85221c;
  border-color: #85221c;
}

.cm-final-cta__secondary {
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.5);
}

.cm-final-cta__secondary:hover {
  color: #e7aaa5;
  border-color: #e7aaa5;
}

.cm-final-cta__button svg,
.cm-final-cta__secondary svg {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cm-final-cta__visual {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 20px;
}

.cm-final-cta__visual svg {
  display: block;
  width: min(100%, 310px);
  filter: drop-shadow(0 10px 35px rgba(0,0,0,.18));
}

.cm-final-cta__visual span {
  color: #d3dce5;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-align: center;
}

.cm-final-cta__shape-divider {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  z-index: 2;
  height: 90px;
  pointer-events: none;
}

.cm-final-cta__shape-divider svg {
  display: block;
  width: 100%;
  height: 100%;
}

/* Tablet */
@media (max-width: 991.98px) {
  .cm-final-cta {
    padding: 85px 0 125px;
  }

  .cm-final-cta__container {
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 28px;
  }

  .cm-final-cta h2 {
    font-size: clamp(42px, 6vw, 58px);
    letter-spacing: -2px;
  }

  .cm-final-cta__description {
    font-size: 16px;
  }

  .cm-final-cta__visual svg {
    width: 220px;
  }

  .cm-final-cta__shape-divider {
    height: 65px;
  }
}

/* Mobile */
@media (max-width: 767.98px) {
  .cm-final-cta {
    padding: 68px 0 115px;
  }

  .cm-final-cta__container {
    width: calc(100% - 40px);
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .cm-final-cta__eyebrow {
    margin-bottom: 21px;
    font-size: 10px;
  }

  .cm-final-cta h2 {
    font-size: clamp(39px, 9vw, 52px);
    line-height: 1.1;
    letter-spacing: -1.8px;
  }

  .cm-final-cta__break {
    display: none;
  }

  .cm-final-cta__description {
    margin-top: 19px;
    font-size: 15px;
    line-height: 1.8;
  }

  .cm-final-cta__actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 17px;
    margin-top: 27px;
  }

  .cm-final-cta__button {
    width: 100%;
  }

  .cm-final-cta__visual {
    display: none;
  }

  .cm-final-cta__background {
    background-position: 60% center;
  }

  .cm-final-cta__overlay {
    background: rgba(8, 14, 21, .88);
  }

  .cm-final-cta__shape-divider {
    height: 48px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cm-final-cta__button,
  .cm-final-cta__secondary {
    transition: none;
  }
}

@media (forced-colors: active) {
  .cm-final-cta__button,
  .cm-final-cta__secondary {
    border: 1px solid ButtonText;
  }
}

/* ==========================================
   CENTEL MEDIA — REFINED TOPBAR ALIGNMENT
========================================== */

.site-topbar {
  --topbar-bg: #080e15;
  --topbar-text: #b8c3d0;
  --topbar-white: #f5f7fa;
  --topbar-red: #b10103;

  position: relative;
  z-index: 1001;
  width: 100%;
  color: var(--topbar-text);
  background: var(--topbar-bg);
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}

.site-topbar::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 2px;
  content: "";
  background: linear-gradient(
    90deg,
    #b10103,
    rgba(163, 43, 35, 0.2) 35%,
    transparent 75%
  );
}



.site-topbar__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 36px;
  min-height: 48px;
}

/* Left tagline */
.topbar-focus {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  margin: 0;
  color: var(--topbar-white);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.2px;
  white-space: nowrap;
}

.topbar-focus__indicator {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--topbar-red);
  box-shadow: 0 0 0 4px rgba(163, 43, 35, 0.14);
}

.topbar-focus__amp {
  color: #d88c85;
}

/* Right navigation */
.topbar-nav {
  min-width: 0;
}

.topbar-nav__list {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.topbar-nav__list li {
  display: block;
  margin: 0;
  padding: 0;
}

.topbar-nav__link {
  position: relative;
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  color: #aeb9c6;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1px;
  text-decoration: none;
  white-space: nowrap;
  transition: color 180ms ease;
}

.topbar-nav__link::after {
  position: absolute;
  right: 15px;
  bottom: 0;
  left: 15px;
  height: 2px;
  content: "";
  background: var(--topbar-red);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 180ms ease;
}

.topbar-nav__link:hover,
.topbar-nav__link:focus-visible {
  color: #fff;
}

.topbar-nav__link:hover::after,
.topbar-nav__link:focus-visible::after {
  transform: scaleX(1);
}

/* Support */
.topbar-nav__link--support {
  gap: 9px;
  margin-left: 4px;
  padding-right: 0;
  color: #fff;
  font-weight: 650;
}

.topbar-nav__link--support::after {
  right: 0;
  left: 0;
}

.topbar-nav__link--support svg {
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  transition: transform 180ms ease;
}

.topbar-nav__link--support:hover svg {
  transform: translateX(3px);
}

.topbar-nav__link:focus-visible {
  outline: 2px solid #e6a39d;
  outline-offset: -4px;
}

/* Laptop and tablet */
@media (max-width: 1199.98px) {
  .site-topbar__inner {
    column-gap: 20px;
  }

  .topbar-focus {
    font-size: 10px;
  }

  .topbar-nav__link {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 10px;
  }

  .topbar-nav__link::after {
    right: 10px;
    left: 10px;
  }

  .topbar-nav__link--support {
    margin-left: 2px;
    padding-right: 0;
  }
}

/* Mobile */
@media (max-width: 767.98px) {
  .site-topbar__inner {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
    padding-top: 12px;
  }

  .topbar-focus {
    min-height: 30px;
    padding-bottom: 10px;
    white-space: normal;
    font-size: 10px;
  }

  .topbar-nav {
    width: 100%;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
  }

  .topbar-nav__list {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
  }

  .topbar-nav__list::-webkit-scrollbar {
    display: none;
  }

  .topbar-nav__link {
    min-height: 42px;
    padding: 0 12px;
    font-size: 10px;
  }

  .topbar-nav__link::after {
    right: 12px;
    left: 12px;
  }

  .topbar-nav__link--support {
    margin-left: 0;
    padding-right: 2px;
  }

  .topbar-nav__link--support::after {
    right: 2px;
    left: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .topbar-nav__link,
  .topbar-nav__link::after,
  .topbar-nav__link--support svg {
    transition: none;
  }
}

/* =========================================
   CENTEL MEDIA — CENTERED CTA + FOOTER
========================================= */

.cm-footer {
  --cm-navy: #0B131E;
  --cm-deep: #070B11;
  --cm-red: #e8383a;
  --cm-red-light: #E65348;
  --cm-red-glow: rgba(163, 43, 35, 0.28);
  --cm-text-primary: #F8FAFC;
  --cm-text-secondary: #94A3B8;
  --cm-text-muted: #64748B;
  --cm-border: rgba(255, 255, 255, 0.08);

  color: var(--cm-text-primary);
  background: var(--cm-deep);
  font-family: inherit;
  position: relative;
  overflow: hidden;
}

.cm-footer *,
.cm-footer *::before,
.cm-footer *::after {
  box-sizing: border-box;
}

/* ── PRE-FOOTER CTA SECTION ─────────────────────────────────────────────── */
.cm-footer-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 85px 0 95px;
  background: #080D14;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.cm-footer-cta__background {
  position: absolute;
  z-index: -3;
  inset: 0;
  background-image: url("../../images/cta-main.jpg");
  background-size: cover;
  background-position: center 35%;
  background-repeat: no-repeat;
  opacity: 0.56;
  filter: grayscale(30%) contrast(1.15);
  transform: scale(1.02);
}



.cm-footer-cta__inner {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  text-align: center;
}

.cm-footer-cta__content {
  width: 100%;
  max-width: 800px;
  margin-inline: auto;
}

.cm-footer__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 20px;
  padding: 6px 16px;
  background: rgba(232, 56, 58, 0.16);
  border: 1px solid #e8383a;
  border-radius: 9999px;
  color: #e8383a;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  line-height: 1;
}

.cm-footer__eyebrow > span {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #e8383a;
  box-shadow: 0 0 8px #e8383a;
}

.cm-footer-cta h2 {
  margin: 0;
  color: #FFFFFF;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.15;
}

.cm-footer-cta h2 span {
  color: #E6A19B;
  background: linear-gradient(135deg, #e8383a 0%, #FFFFFF 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.cm-footer-cta__content > p {
  max-width: 640px;
  margin: 18px auto 0;
  color: #CBD5E1;
  font-size: 16px;
  line-height: 1.75;
}

.cm-footer-cta__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 32px;
}

.cm-footer__button,
.cm-footer__text-link {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  border-radius: 6px;
  padding: 0 26px;
  transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

.cm-footer__button {
  color: #FFFFFF;
  background: linear-gradient(135deg, #e8383a 0%, #b10103 100%);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 8px 24px -4px rgba(163, 43, 35, 0.45);
}

.cm-footer__button:hover {
  transform: translateY(-2px);
  color: #FFFFFF;
}

.cm-footer__text-link {
  color: #F8FAFC;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(8px);
}

.cm-footer__text-link:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.28);
  color: #FFFFFF;
  transform: translateY(-2px);
}

.cm-footer__button i,
.cm-footer__text-link i {
  font-size: 15px;
  transition: transform 0.2s ease;
}

.cm-footer__button:hover i,
.cm-footer__text-link:hover i {
  transform: translateX(3px);
}

/* Remove odd angled polygon divider */
.cm-footer-cta__divider {
  display: none !important;
}

/* ── MAIN FOOTER BODY ────────────────────────────────────────────────────── */
.cm-footer-main {
  padding: 68px 0 0;
  background: linear-gradient(180deg, #0A111A 0%, #060A10 100%);
  position: relative;
}

.cm-footer-main::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(163, 43, 35, 0.45) 25%, rgba(255, 255, 255, 0.22) 50%, rgba(163, 43, 35, 0.45) 75%, transparent 100%);
}

.cm-footer-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.8fr) repeat(5, minmax(130px, 1fr));
  gap: 36px 26px;
  padding-bottom: 38px;
}

/* ── BRAND COLUMN ────────────────────────────────────────────────────────── */
.cm-footer-brand {
  min-width: 0;
  padding-right: 16px;
}

.cm-footer-brand__logo {
  display: inline-block;
  margin-bottom: 16px;
  text-decoration: none;
}

.cm-footer-brand__logo img {
  height: 64px;
  width: auto;
  max-width: 210px;
  object-fit: contain;
  display: block;
}

.cm-footer-brand__description {
  margin: 0 0 22px;
  color: #94A3B8;
  font-size: 13.5px;
  line-height: 1.7;
  max-width: 320px;
}

.cm-footer-contact {
  display: flex;
  flex-direction: column;
  gap: 13px;
  margin: 0;
  font-style: normal;
}

.cm-footer-contact__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.cm-footer-contact__item > i {
  display: flex;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  align-items: center;
  justify-content: center;
  color: #e8383a;
  background: rgba(2, 127, 231, 0.12);
  border: 1px solid #e8383a;
  border-radius: 6px;
  font-size: 13.5px;
  transition: all 0.2s ease;
}

.cm-footer-contact__item:hover > i {
  background: rgba(163, 43, 35, 0.24);
  border-color: rgba(227, 161, 155, 0.45);
  color: #FFFFFF;
}

.cm-footer-contact__item p {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
}

.cm-footer-contact__item strong {
  color: #F8FAFC;
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.cm-footer-contact__item span,
.cm-footer-contact__item a {
  color: #94A3B8;
  font-size: 13px;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: color 0.18s ease;
}

.cm-footer-contact__item a:hover {
  color: #e8383a;
}

/* ── NAVIGATION COLUMNS ──────────────────────────────────────────────────── */
.cm-footer-nav {
  min-width: 0;
}

.cm-footer-nav h3 {
  position: relative;
  margin: 0 0 18px;
  padding-bottom: 10px;
  color: #FFFFFF;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.cm-footer-nav h3::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 22px;
  height: 2px;
  content: "";
  background: linear-gradient(90deg, #e8383a, #E65348);
  border-radius: 2px;
}

.cm-footer-nav ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cm-footer-nav li {
  margin: 0;
  padding: 0;
}

.cm-footer-nav a {
  display: inline-flex;
  align-items: center;
  color: #94A3B8;
  font-size: 13.5px;
  line-height: 1.5;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: color 0.18s ease, transform 0.18s ease;
}

.cm-footer-nav a:hover {
  color: #FFFFFF;
  transform: translateX(3px);
}

/* ── LEGAL & TRUST FULL-WIDTH BAR ────────────────────────────────────────── */
.cm-footer-legal-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px 28px;
  padding: 18px 24px;
  margin-bottom: 28px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
}

.cm-footer-legal-bar__title {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  flex-shrink: 0;
}

.cm-footer-legal-bar__title i {
  color: #e8383a;
  font-size: 15px;
}

.cm-footer-legal-bar__nav {
  min-width: 0;
}

.cm-footer-legal-bar__links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 22px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cm-footer-legal-bar__links li {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
}

.cm-footer-legal-bar__links a {
  display: inline-flex;
  align-items: center;
  color: #94A3B8;
  font-size: 12.5px;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.18s ease;
}

.cm-footer-legal-bar__links a:hover {
  color: #e8383a;
}

/* ── BOTTOM BAR ──────────────────────────────────────────────────────────── */
.cm-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 18px;
  padding: 24px 0 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.cm-footer-copyright {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  color: #64748B;
  font-size: 12.5px;
  line-height: 1.6;
}

.cm-footer-copyright > span:first-child {
  color: #CBD5E1;
  font-weight: 500;
}

.cm-footer-copyright__separator {
  width: 4px;
  height: 4px;
  margin: 0 3px;
  border-radius: 50%;
  background: #e8383a;
  display: inline-block;
}

.cm-footer-bottom__right {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.cm-footer-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 12px;
  background: rgba(16, 185, 129, 0.08);
  border: 1px solid rgba(16, 185, 129, 0.2);
  border-radius: 9999px;
  color: #34D399;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.03em;
}

.cm-footer-status__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #10B981;
  box-shadow: 0 0 8px #10B981;
  animation: pulseStatus 2s infinite ease-in-out;
}

@keyframes pulseStatus {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.85); }
}

.cm-footer-back-to-top {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  color: #94A3B8;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
}

.cm-footer-back-to-top:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  color: #FFFFFF;
  transform: translateY(-2px);
}

.cm-footer-legal-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 16px;
}

.cm-footer-legal-links a {
  color: #94A3B8;
  font-size: 12px;
  line-height: 1.6;
  text-decoration: none;
  transition: color 0.18s ease;
}

.cm-footer-legal-links a:hover {
  color: #FFFFFF;
}

/* ── RESPONSIVE DESIGN ───────────────────────────────────────────────────── */
@media (max-width: 1199.98px) {
  .cm-footer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 38px 28px;
  }

  .cm-footer-brand {
    grid-column: 1 / -1;
    max-width: 520px;
    padding-right: 0;
  }
}

@media (max-width: 991.98px) {
  .cm-footer-legal-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 20px;
  }

  .cm-footer-legal-bar__links {
    gap: 8px 18px;
  }
}

@media (max-width: 767.98px) {
  .cm-footer-cta {
    padding: 60px 0 70px;
  }

  .cm-footer-cta h2 {
    font-size: clamp(28px, 7vw, 38px);
  }

  .cm-footer-cta h2 br {
    display: none;
  }

  .cm-footer-cta__content > p {
    font-size: 15px;
  }

  .cm-footer-cta__actions {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin-top: 24px;
  }

  .cm-footer__button,
  .cm-footer__text-link {
    width: 100%;
    min-height: 48px;
    padding: 0 20px;
  }

  .cm-footer-main {
    padding-top: 48px;
  }

  .cm-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 20px;
    padding-bottom: 36px;
  }

  .cm-footer-brand {
    grid-column: 1 / -1;
  }

  .cm-footer-legal-bar {
    padding: 16px;
    margin-bottom: 24px;
  }

  .cm-footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 0 28px;
  }

  .cm-footer-bottom__right {
    width: 100%;
    justify-content: space-between;
  }
}

@media (max-width: 480px) {
  .cm-footer-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .cm-footer-legal-bar__links {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    width: 100%;
  }

  .cm-footer-legal-bar__links a {
    white-space: normal;
  }
}

/* ── ACCESSIBILITY ───────────────────────────────────────────────────────── */
.cm-footer a:focus-visible {
  outline: 2px solid #E3A19B;
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  .cm-footer a,
  .cm-footer button,
  .cm-footer-status__dot {
    transition: none !important;
    animation: none !important;
  }
}

@media (forced-colors: active) {
  .cm-footer a:focus-visible {
    outline: 2px solid LinkText;
  }
}
.closing-cta-band
{display: none;}
.brand-lockup-with-icon img
{height: 50px;}


.request-section {
  --request-navy: #14202e;
  --request-red: #e8383a;
  --request-text: #263548;
  --request-muted: #667589;
  --request-border: #dce3ec;

  padding: clamp(3.5rem, 7vw, 6.5rem) 0;
  background: #f5f7fa;
}

.request-card {
  padding: clamp(1.5rem, 4vw, 3.25rem);
  background: #fff;
  border: 1px solid var(--request-border);
  border-radius: 10px;
  box-shadow: 0 20px 60px rgba(20, 32, 46, 0.07);
}

.request-header {
  max-width: 620px;
  margin-bottom: 2.5rem;
}

.request-eyebrow {
  display: inline-block;
  margin-bottom: 0.9rem;
  color: var(--request-red);
  font-size: 0.75rem;
  font-weight: 750;
  letter-spacing: 0.14em;
}

.request-header h2 {
  margin: 0 0 0.85rem;
  color: var(--request-navy);
  font-size: clamp(2rem, 4vw, 2.8rem);
  font-weight: 750;
  letter-spacing: -0.045em;
  line-height: 1.15;
}

.request-header p {
  margin: 0;
  color: var(--request-muted);
  font-size: 1rem;
  line-height: 1.75;
}

.request-label {
  display: block;
  margin-bottom: 0.6rem;
  color: var(--request-text);
  font-size: 0.9rem;
  font-weight: 650;
}

.request-label span {
  color: var(--request-red);
}

.request-input {
  display: block;
  width: 100%;
  min-height: 54px;
  padding: 0.9rem 1rem;
  border: 1px solid var(--request-border);
  border-radius: 5px;
  background-color: #fff;
  color: var(--request-navy);
  font: inherit;
  font-size: 0.95rem;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

.request-input::placeholder {
  color: #8995a5;
  opacity: 1;
}

.request-input:focus {
  border-color: var(--request-red);
  outline: 3px solid rgba(163, 43, 35, 0.13);
  outline-offset: 1px;
}

.request-select {
  cursor: pointer;
}

.request-textarea {
  min-height: 160px;
  resize: vertical;
  line-height: 1.65;
}

.request-hint {
  margin: 0.6rem 0 0;
  color: var(--request-muted);
  font-size: 0.8rem;
  line-height: 1.6;
}

.request-submit {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0.95rem 1.5rem;
  border: 1px solid var(--request-red);
  border-radius: 4px;
  background: var(--request-red);
  color: #fff;
  font: inherit;
  font-size: 0.95rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 180ms ease, border-color 180ms ease,
    transform 180ms ease;
}

.request-submit:hover {
  background: #81221c;
  border-color: #81221c;
  transform: translateY(-1px);
}

.request-submit:focus-visible {
  outline: 3px solid rgba(163, 43, 35, 0.35);
  outline-offset: 4px;
}

.request-privacy {
  margin: 1rem 0 0;
  color: var(--request-muted);
  font-size: 0.82rem;
  line-height: 1.7;
}

.request-privacy a {
  color: var(--request-navy);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.request-privacy a:hover {
  color: var(--request-red);
}
.premium-contact-card__action
{
   background: none;
   border: none!important;
   box-shadow: none!important;
   padding: 0.55rem 0.9rem!important;
   font-size: 14px!important;
}

@media (max-width: 575.98px) {
  .request-section {
    padding: 2.5rem 0;
  }

  .request-card {
    padding: 1.35rem;
    border-radius: 7px;
  }

  .request-submit {
    width: 100%;
  }
}

@media (max-width: 1199.98px) {
   .nav-link
   {font-size: 12px}
}
@media (max-width: 767.98px) {
   
.site-topbar
{display: none;}
.brand-lockup-with-icon img {
  height: 54px;
}
}
@media (max-width: 422.98px) {
   .hero-attached-actions .btn
   {width: 100%;
   }
   .hero-attached-spec
   {
      background: linear-gradient(90deg, rgba(6, 13, 23, 0.94) 0%, rgba(9, 19, 34, 0.58) 55%, rgba(10, 24, 42, 0.62) 100%), url('../../images/photo-1534430480872-3498386e7856.jpg') top right/cover no-repeat;
   }
}