:root{
--cm-primary:#0756a3;
--cm-primary-dark:#063b73;
--cm-primary-light:#eaf4ff;
--cm-accent:#0b78d0;
--cm-accent-light:#dff1ff;
--cm-success:#0a9f68;
--cm-danger:#dc3545;
--cm-warning:#f59e0b;
--cm-dark:#102a43;
--cm-text:#334e68;
--cm-text-muted:#627d98;
--cm-white:#fff;
--cm-surface:#f4f8fc;
--cm-border:#d9e5f0;
--cm-shadow:0 8px 28px rgba(7,86,163,.10);
--cm-shadow-lg:0 18px 45px rgba(7,86,163,.16);
--cm-radius:14px;
--cm-container:1240px;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:Arial,Helvetica,sans-serif;
font-size:16px;
line-height:1.65;
color:var(--cm-text);
background:var(--cm-white);
overflow-x:hidden;
}

img{
max-width:100%;
height:auto;
display:block;
}

a{
color:inherit;
text-decoration:none;
}

button,
input,
select,
textarea{
font:inherit;
}

button,
a{
-webkit-tap-highlight-color:transparent;
}

ul{
margin:0;
padding-left:20px;
}

li{
margin-bottom:5px;
}

.cm-container{
width:min(100% - 32px,var(--cm-container));
margin:0 auto;
}

.cm-topbar{
background:var(--cm-primary-dark);
color:#fff;
font-size:13px;
border-bottom:1px solid rgba(255,255,255,.12);
}

.cm-topbar-inner{
min-height:42px;
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
}

.cm-top-links{
display:flex;
align-items:center;
justify-content:flex-end;
gap:18px;
white-space:nowrap;
}

.cm-top-links a{
color:#fff;
font-weight:700;
transition:.25s ease;
}

.cm-top-links a:hover{
color:#7dd3fc;
}

.cm-header{
position:sticky;
top:0;
z-index:1000;
background:rgba(255,255,255,.97);
border-bottom:1px solid var(--cm-border);
box-shadow:0 3px 18px rgba(15,45,75,.08);
backdrop-filter:blur(10px);
}

.cm-nav{
min-height:78px;
display:flex;
align-items:center;
justify-content:space-between;
gap:25px;
}

.cm-brand-title{
display:flex;
align-items:center;
flex-shrink:0;
}

.cm-brand-title img{
width:205px;
max-height:58px;
object-fit:contain;
}

.cm-nav-menu{
display:flex;
align-items:center;
justify-content:flex-end;
gap:4px;
}

.cm-nav-menu>a{
position:relative;
display:flex;
align-items:center;
min-height:42px;
padding:9px 11px;
border-radius:8px;
color:var(--cm-dark);
font-size:14px;
font-weight:700;
white-space:nowrap;
transition:color .2s ease,background .2s ease,transform .2s ease;
}

.cm-nav-menu>a:not(.cm-btn-call-nav):not(.cm-btn-wa-nav):hover{
color:var(--cm-primary);
background:var(--cm-primary-light);
}

.cm-nav-menu>a:not(.cm-btn-call-nav):not(.cm-btn-wa-nav)::after{
content:"";
position:absolute;
left:11px;
right:11px;
bottom:4px;
height:2px;
border-radius:2px;
background:var(--cm-accent);
transform:scaleX(0);
transform-origin:center;
transition:transform .2s ease;
}

.cm-nav-menu>a:not(.cm-btn-call-nav):not(.cm-btn-wa-nav):hover::after{
transform:scaleX(1);
}

.cm-btn-call-nav,
.cm-btn-wa-nav{
margin-left:5px;
padding:10px 15px!important;
border-radius:8px!important;
font-weight:800!important;
box-shadow:0 5px 14px rgba(7,86,163,.16);
}

.cm-btn-call-nav{
color:#fff!important;
background:var(--cm-primary);
}

.cm-btn-call-nav:hover{
background:var(--cm-primary-dark);
transform:translateY(-1px);
}

.cm-btn-wa-nav{
color:#fff!important;
background:var(--cm-success);
}

.cm-btn-wa-nav:hover{
background:#087c54;
transform:translateY(-1px);
}

.cm-nav-menu>a:focus-visible,
.cm-top-links a:focus-visible{
outline:3px solid rgba(11,120,208,.3);
outline-offset:2px;
}

@media (max-width:1100px){
.cm-nav{
min-height:72px;
}

.cm-brand-title img{
width:180px;
}

.cm-nav-menu{
gap:1px;
}

.cm-nav-menu>a{
padding:8px 7px;
font-size:13px;
}

.cm-btn-call-nav,
.cm-btn-wa-nav{
padding:9px 11px!important;
}
}

@media (max-width:900px){
.cm-topbar-inner{
padding:8px 0;
flex-direction:column;
justify-content:center;
gap:3px;
text-align:center;
}

.cm-top-links{
gap:12px;
flex-wrap:wrap;
justify-content:center;
}

.cm-header{
position:relative;
}

.cm-nav{
min-height:auto;
padding:12px 0;
flex-direction:column;
gap:12px;
}

.cm-brand-title img{
width:190px;
}

.cm-nav-menu{
width:100%;
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:5px;
}

.cm-nav-menu>a{
font-size:13px;
padding:8px 10px;
background:#f7faff;
border:1px solid #e3edf7;
}

.cm-nav-menu>a:not(.cm-btn-call-nav):not(.cm-btn-wa-nav)::after{
display:none;
}

.cm-btn-call-nav,
.cm-btn-wa-nav{
border:0!important;
}
}

@media (max-width:600px){
.cm-container{
width:min(100% - 22px,var(--cm-container));
}

body{
font-size:15px;
line-height:1.55;
}

.cm-topbar{
font-size:11px;
}

.cm-topbar-inner{
min-height:auto;
padding:7px 0;
}

.cm-topbar-inner>div:first-child span{
display:block;
line-height:1.4;
}

.cm-top-links{
width:100%;
gap:7px;
}

.cm-top-links a{
padding:3px 5px;
font-size:11px;
}

.cm-nav{
padding:10px 0;
gap:10px;
}

.cm-brand-title img{
width:165px;
max-height:50px;
}

.cm-nav-menu{
display:grid;
grid-template-columns:repeat(3,1fr);
width:100%;
gap:5px;
}

.cm-nav-menu>a{
justify-content:center;
min-height:38px;
padding:7px 4px;
font-size:11px;
border-radius:7px;
text-align:center;
}

.cm-nav-menu>a:nth-child(1),
.cm-nav-menu>a:nth-child(2),
.cm-nav-menu>a:nth-child(3),
.cm-nav-menu>a:nth-child(4),
.cm-nav-menu>a:nth-child(5),
.cm-nav-menu>a:nth-child(6),
.cm-nav-menu>a:nth-child(7){
grid-column:auto;
}

.cm-btn-call-nav,
.cm-btn-wa-nav{
margin-left:0;
padding:8px 4px!important;
}

.cm-btn-call-nav{
grid-column:span 1;
}

.cm-btn-wa-nav{
grid-column:span 2;
}
}

@media (max-width:380px){
.cm-container{
width:calc(100% - 18px);
}

.cm-nav-menu{
grid-template-columns:repeat(2,1fr);
}

.cm-nav-menu>a{
font-size:11px;
}

.cm-btn-wa-nav{
grid-column:span 1;
}

.cm-brand-title img{
width:150px;
}
}














.cm-hero{
position:relative;
padding:70px 0;
background:linear-gradient(135deg,#eef7ff 0%,#f8fbff 48%,#e7f3ff 100%);
overflow:hidden;
}

.cm-hero::before{
content:"";
position:absolute;
width:420px;
height:420px;
right:-160px;
top:-180px;
border-radius:50%;
background:rgba(11,120,208,.08);
}

.cm-hero::after{
content:"";
position:absolute;
width:280px;
height:280px;
left:-150px;
bottom:-130px;
border-radius:50%;
background:rgba(7,86,163,.06);
}

.cm-hero-grid{
position:relative;
z-index:1;
display:grid;
grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);
align-items:center;
gap:55px;
}

.cm-hero-content{
max-width:720px;
}

.cm-tag{
display:inline-flex;
align-items:center;
gap:6px;
padding:6px 13px;
border-radius:50px;
background:var(--cm-primary-light);
border:1px solid #cce5fa;
color:var(--cm-primary);
font-size:12px;
font-weight:800;
letter-spacing:.2px;
text-transform:uppercase;
margin-bottom:15px;
}

.cm-hero h1{
font-size:clamp(2.3rem,4.2vw,4.1rem);
line-height:1.08;
letter-spacing:-1.5px;
color:var(--cm-dark);
margin-bottom:20px;
font-weight:850;
}

.cm-hero h1 span{
color:var(--cm-primary);
}

.cm-hero-content>p{
font-size:17px;
line-height:1.75;
color:var(--cm-text);
max-width:690px;
margin-bottom:24px;
}

.cm-rating-card{
display:inline-flex;
align-items:center;
gap:15px;
padding:12px 18px;
background:#fff;
border:1px solid var(--cm-border);
border-radius:12px;
box-shadow:0 7px 24px rgba(7,86,163,.08);
margin-bottom:24px;
}

.cm-rating-val{
font-size:25px;
font-weight:900;
color:#f59e0b;
line-height:1;
}

.cm-rating-text{
display:flex;
flex-direction:column;
line-height:1.35;
}

.cm-rating-text strong{
font-size:14px;
color:var(--cm-dark);
}

.cm-rating-text span{
font-size:12px;
color:var(--cm-text-muted);
}

.cm-hero-actions{
display:flex;
align-items:center;
flex-wrap:wrap;
gap:12px;
margin-bottom:23px;
}

.cm-btn{
display:inline-flex;
align-items:center;
justify-content:center;
gap:7px;
min-height:48px;
padding:12px 20px;
border:0;
border-radius:9px;
font-size:14px;
font-weight:800;
cursor:pointer;
transition:all .25s ease;
text-align:center;
}

.cm-btn-primary{
background:var(--cm-primary);
color:#fff;
box-shadow:0 8px 20px rgba(7,86,163,.2);
}

.cm-btn-primary:hover{
background:var(--cm-primary-dark);
transform:translateY(-2px);
box-shadow:0 12px 25px rgba(7,86,163,.25);
}

.cm-btn-wa{
background:var(--cm-success);
color:#fff;
box-shadow:0 8px 20px rgba(10,159,104,.18);
}

.cm-btn-wa:hover{
background:#087c54;
transform:translateY(-2px);
box-shadow:0 12px 25px rgba(10,159,104,.25);
}

.cm-hero-badges{
display:flex;
align-items:center;
flex-wrap:wrap;
gap:8px;
}

.cm-hero-badges span{
display:inline-flex;
align-items:center;
padding:7px 10px;
border-radius:7px;
background:#fff;
border:1px solid var(--cm-border);
color:var(--cm-dark);
font-size:12px;
font-weight:700;
box-shadow:0 3px 10px rgba(15,45,75,.04);
}

.cm-quote-card{
position:relative;
background:#fff;
border:1px solid var(--cm-border);
border-radius:18px;
padding:27px;
box-shadow:var(--cm-shadow-lg);
overflow:hidden;
}

.cm-quote-card::before{
content:"";
position:absolute;
top:0;
left:0;
right:0;
height:5px;
background:linear-gradient(90deg,var(--cm-primary),var(--cm-accent),#35a9e8);
}

.cm-quote-head{
text-align:center;
margin-bottom:22px;
}

.cm-quote-head img{
width:58px;
height:58px;
object-fit:contain;
margin:0 auto 9px;
}

.cm-quote-head h2{
font-size:1.45rem;
line-height:1.25;
color:var(--cm-dark);
margin-bottom:5px;
}

.cm-quote-head p{
font-size:12px;
color:var(--cm-text-muted);
}

.cm-form-group{
margin-bottom:14px;
}

.cm-form-group label{
display:block;
font-size:12px;
font-weight:800;
color:var(--cm-dark);
margin-bottom:6px;
}

.cm-form-group input,
.cm-form-group select,
.cm-form-group textarea{
width:100%;
height:46px;
padding:10px 13px;
border:1px solid #cbd9e6;
border-radius:8px;
background:#fbfdff;
color:var(--cm-dark);
outline:none;
transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}

.cm-form-group textarea{
height:auto;
min-height:100px;
resize:vertical;
}

.cm-form-group input::placeholder,
.cm-form-group textarea::placeholder{
color:#8aa0b5;
}

.cm-form-group input:focus,
.cm-form-group select:focus,
.cm-form-group textarea:focus{
border-color:var(--cm-accent);
background:#fff;
box-shadow:0 0 0 3px rgba(11,120,208,.1);
}

.cm-form-submit{
width:100%;
min-height:49px;
padding:12px 15px;
border:0;
border-radius:9px;
background:linear-gradient(135deg,var(--cm-primary),var(--cm-accent));
color:#fff;
font-size:14px;
font-weight:800;
cursor:pointer;
box-shadow:0 8px 18px rgba(7,86,163,.2);
transition:all .25s ease;
}

.cm-form-submit:hover{
transform:translateY(-2px);
box-shadow:0 12px 24px rgba(7,86,163,.26);
}

.cm-booking-note{
margin-top:12px;
padding:9px 10px;
border-radius:7px;
background:#f0fdf8;
color:#087c54;
text-align:center;
font-size:11px;
font-weight:700;
border:1px solid #ccefe0;
}

@media (max-width:1100px){
.cm-hero{
padding:55px 0;
}

.cm-hero-grid{
grid-template-columns:minmax(0,1fr) minmax(350px,.8fr);
gap:30px;
}

.cm-hero h1{
font-size:clamp(2.2rem,4.5vw,3.3rem);
}

.cm-hero-content>p{
font-size:15px;
}

.cm-quote-card{
padding:23px;
}
}

@media (max-width:900px){
.cm-hero{
padding:45px 0;
}

.cm-hero-grid{
grid-template-columns:1fr;
gap:32px;
}

.cm-hero-content{
max-width:850px;
margin:0 auto;
text-align:center;
}

.cm-hero-content .cm-tag{
margin-bottom:12px;
}

.cm-hero h1{
font-size:clamp(2.2rem,7vw,3.2rem);
}

.cm-hero-content>p{
max-width:760px;
margin-left:auto;
margin-right:auto;
}

.cm-rating-card{
text-align:left;
}

.cm-hero-actions{
justify-content:center;
}

.cm-hero-badges{
justify-content:center;
}

.cm-quote-card{
width:min(100%,560px);
margin:0 auto;
}
}

@media (max-width:600px){
.cm-hero{
padding:34px 0 40px;
}

.cm-hero::before{
width:250px;
height:250px;
right:-130px;
top:-100px;
}

.cm-hero::after{
width:180px;
height:180px;
left:-100px;
bottom:-80px;
}

.cm-hero h1{
font-size:2rem;
line-height:1.12;
letter-spacing:-.7px;
margin-bottom:14px;
}

.cm-hero-content>p{
font-size:14px;
line-height:1.6;
margin-bottom:18px;
}

.cm-rating-card{
width:100%;
justify-content:center;
gap:11px;
padding:11px 12px;
margin-bottom:18px;
}

.cm-rating-val{
font-size:22px;
}

.cm-rating-text strong{
font-size:12px;
}

.cm-rating-text span{
font-size:10px;
}

.cm-hero-actions{
display:grid;
grid-template-columns:1fr;
width:100%;
gap:9px;
margin-bottom:17px;
}

.cm-btn{
width:100%;
min-height:46px;
padding:11px 14px;
}

.cm-hero-badges{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:6px;
}

.cm-hero-badges span{
justify-content:center;
padding:7px 5px;
font-size:10px;
text-align:center;
}

.cm-quote-card{
padding:22px 16px 17px;
border-radius:14px;
}

.cm-quote-head{
margin-bottom:18px;
}

.cm-quote-head img{
width:48px;
height:48px;
}

.cm-quote-head h2{
font-size:1.25rem;
}

.cm-form-group{
margin-bottom:11px;
}

.cm-form-group label{
font-size:11px;
margin-bottom:5px;
}

.cm-form-group input,
.cm-form-group select,
.cm-form-group textarea{
height:44px;
padding:9px 11px;
font-size:13px;
}

.cm-form-submit{
min-height:46px;
font-size:13px;
}

.cm-booking-note{
font-size:10px;
}
}

@media (max-width:380px){
.cm-hero h1{
font-size:1.8rem;
}

.cm-hero-badges{
grid-template-columns:1fr 1fr;
}

.cm-hero-badges span{
font-size:9px;
}

.cm-quote-card{
padding:20px 13px 15px;
}
}















.cm-calc-box{
background:#fff;
border:1px solid var(--cm-border);
border-radius:18px;
padding:32px;
box-shadow:var(--cm-shadow);
}

.cm-section-head{
text-align:center;
max-width:850px;
margin:0 auto 32px;
}

.cm-section-head .cm-tag{
margin-bottom:12px;
}

.cm-section-head h2{
font-size:clamp(1.8rem,3vw,2.6rem);
line-height:1.2;
color:var(--cm-dark);
font-weight:850;
letter-spacing:-.5px;
margin-bottom:10px;
}

.cm-section-head p{
font-size:15px;
line-height:1.7;
color:var(--cm-text-muted);
}

.cm-calc-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:18px;
margin-bottom:22px;
}

.cm-calc-grid .cm-form-group{
margin-bottom:0;
}

.cm-calc-grid .cm-form-group label{
font-size:13px;
margin-bottom:7px;
}

.cm-calc-grid select{
height:50px;
background:#f8fbff;
border-color:#c8d9e8;
font-weight:600;
color:var(--cm-dark);
}

.cm-calc-result{
margin:20px 0;
padding:17px 20px;
border-radius:11px;
background:linear-gradient(135deg,#edf7ff,#f5fbff);
border:1px solid #c9e5fa;
color:var(--cm-dark);
font-size:15px;
line-height:1.6;
text-align:center;
}

.cm-calc-result strong{
color:var(--cm-primary);
font-size:18px;
font-weight:850;
}

.cm-calc-box>.cm-section-head{
margin-bottom:25px;
}

.cm-table-wrap{
width:100%;
overflow-x:auto;
overflow-y:hidden;
margin:0 0 38px;
border:1px solid var(--cm-border);
border-radius:13px;
background:#fff;
box-shadow:0 5px 18px rgba(7,86,163,.06);
-webkit-overflow-scrolling:touch;
}

.cm-table{
width:100%;
min-width:780px;
border-collapse:collapse;
border-spacing:0;
font-size:13px;
line-height:1.5;
}

.cm-table th{
padding:14px 15px;
background:linear-gradient(135deg,var(--cm-primary-dark),var(--cm-primary));
color:#fff;
font-size:12px;
font-weight:800;
text-align:left;
vertical-align:middle;
border-right:1px solid rgba(255,255,255,.15);
white-space:nowrap;
}

.cm-table th:last-child{
border-right:0;
}

.cm-table td{
padding:13px 15px;
border-bottom:1px solid #e3edf5;
border-right:1px solid #edf2f7;
color:var(--cm-text);
background:#fff;
vertical-align:top;
}

.cm-table td:last-child{
border-right:0;
}

.cm-table tbody tr:nth-child(even) td{
background:#f8fbfe;
}

.cm-table tbody tr:hover td{
background:#eef7ff;
}

.cm-table tbody tr:last-child td{
border-bottom:0;
}

.cm-table td strong{
color:var(--cm-dark);
}

.cm-table a{
color:var(--cm-primary);
font-weight:800;
transition:.2s ease;
}

.cm-table a:hover{
color:var(--cm-accent);
text-decoration:underline;
}

.cm-table-wrap::-webkit-scrollbar{
height:7px;
}

.cm-table-wrap::-webkit-scrollbar-track{
background:#edf3f8;
border-radius:20px;
}

.cm-table-wrap::-webkit-scrollbar-thumb{
background:#8bb9dc;
border-radius:20px;
}

.cm-table-wrap::-webkit-scrollbar-thumb:hover{
background:var(--cm-primary);
}

.cm-calc-box .cm-btn{
margin-top:4px;
}

@media (max-width:1000px){
.cm-calc-grid{
grid-template-columns:1fr 1fr;
}

.cm-calc-grid .cm-form-group:last-child{
grid-column:1/-1;
}

.cm-calc-box{
padding:26px;
}

.cm-table{
min-width:760px;
}
}

@media (max-width:700px){
.cm-section-head{
margin-bottom:25px;
}

.cm-section-head h2{
font-size:1.75rem;
}

.cm-section-head p{
font-size:14px;
}

.cm-calc-box{
padding:20px 15px;
border-radius:14px;
}

.cm-calc-grid{
grid-template-columns:1fr;
gap:12px;
}

.cm-calc-grid .cm-form-group:last-child{
grid-column:auto;
}

.cm-calc-grid select{
height:47px;
font-size:13px;
}

.cm-calc-result{
padding:13px 11px;
font-size:13px;
}

.cm-calc-result strong{
font-size:15px;
}

.cm-table-wrap{
margin-bottom:27px;
border-radius:10px;
}

.cm-table{
min-width:720px;
font-size:12px;
}

.cm-table th{
padding:11px 10px;
font-size:11px;
}

.cm-table td{
padding:11px 10px;
}

.cm-table-wrap::after{
content:"Swipe left/right to view full table";
display:block;
padding:7px 10px;
background:#f1f7fc;
color:var(--cm-text-muted);
font-size:10px;
font-weight:700;
text-align:center;
border-top:1px solid var(--cm-border);
}
}

@media (max-width:450px){
.cm-calc-box{
padding:18px 12px;
}

.cm-section-head h2{
font-size:1.55rem;
}

.cm-section-head .cm-tag{
font-size:10px;
padding:5px 10px;
}

.cm-table{
min-width:680px;
}

.cm-table th,
.cm-table td{
padding:10px 9px;
}
}

















.cm-grid-4{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
}

.cm-grid-3{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:22px;
}

.cm-card{
position:relative;
background:#fff;
border:1px solid var(--cm-border);
border-radius:14px;
padding:24px;
box-shadow:0 5px 20px rgba(7,86,163,.07);
transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}

.cm-card:hover{
transform:translateY(-4px);
border-color:#b9d8ef;
box-shadow:0 13px 32px rgba(7,86,163,.13);
}

.cm-card h3{
font-size:1.08rem;
line-height:1.35;
color:var(--cm-dark);
margin-bottom:9px;
font-weight:800;
}

.cm-card p{
font-size:14px;
line-height:1.65;
color:var(--cm-text-muted);
}

.cm-card ul{
margin-top:10px;
font-size:13px;
color:var(--cm-text);
}

.cm-card li{
margin-bottom:6px;
}

.cm-card-icon{
width:52px;
height:52px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:15px;
border-radius:13px;
background:var(--cm-primary-light);
color:var(--cm-primary);
font-size:25px;
font-weight:800;
}

.cm-grid-4 .cm-card{
height:100%;
}

.cm-grid-3 .cm-card{
height:100%;
}

.cm-table-wrap+.cm-section-head{
margin-top:45px;
}

.cm-table td[style*="background:#e8f5e9"]{
color:#166534!important;
font-weight:800;
}

.cm-table td[style*="background:#e8f5e9"]::first-letter{
font-weight:900;
}

.cm-card[style*="border-left"]{
border-left-width:4px!important;
}

.cm-card[style*="border-top"]{
border-top-width:4px!important;
}

.cm-card[style*="text-align:center"]{
display:flex;
flex-direction:column;
align-items:center;
justify-content:flex-start;
text-align:center;
}

.cm-card[style*="text-align:center"] p{
max-width:320px;
}

.cm-card[style*="text-align:center"] .cm-card-icon{
margin-left:auto!important;
margin-right:auto!important;
}

.cm-grid-4 .cm-card strong{
color:var(--cm-dark);
}

.cm-grid-4 .cm-card>div[style*="font-size:2.3rem"]{
font-family:Arial,Helvetica,sans-serif!important;
color:var(--cm-primary)!important;
line-height:1;
margin-bottom:8px;
}

.cm-grid-4 .cm-card small{
font-size:12px;
color:var(--cm-text-muted);
}

.cm-grid-4 .cm-card h3,
.cm-grid-3 .cm-card h3{
letter-spacing:-.1px;
}

.cm-card a{
color:var(--cm-primary);
}

.cm-card a:hover{
color:var(--cm-accent);
}

.cm-card[style*="border-top:5px"]{
padding-top:22px;
}

.cm-card[style*="border-left:4px"]{
padding-left:21px;
}

.cm-grid-4 .cm-card[style*="border-top:4px"],
.cm-grid-4 .cm-card[style*="border-left:4px"]{
overflow:hidden;
}

@media (max-width:1050px){
.cm-grid-4{
grid-template-columns:repeat(2,1fr);
}

.cm-grid-3{
grid-template-columns:repeat(2,1fr);
gap:18px;
}

.cm-card{
padding:21px;
}
}

@media (max-width:700px){
.cm-grid-4,
.cm-grid-3{
grid-template-columns:1fr;
gap:14px;
}

.cm-card{
padding:19px 17px;
border-radius:12px;
}

.cm-card:hover{
transform:none;
box-shadow:0 7px 22px rgba(7,86,163,.08);
}

.cm-card-icon{
width:46px;
height:46px;
font-size:22px;
border-radius:11px;
margin-bottom:12px;
}

.cm-card h3{
font-size:1rem;
}

.cm-card p{
font-size:13px;
}

.cm-card ul{
font-size:12px;
padding-left:18px;
}

.cm-grid-4 .cm-card>div[style*="font-size:2.3rem"]{
font-size:2rem!important;
}

.cm-grid-4 .cm-card strong{
font-size:.98rem!important;
}

.cm-card[style*="border-left:4px"]{
padding-left:16px;
}

.cm-card[style*="border-top:4px"],
.cm-card[style*="border-top:5px"]{
padding-top:18px;
}
}

@media (max-width:420px){
.cm-grid-4,
.cm-grid-3{
gap:12px;
}

.cm-card{
padding:17px 14px;
}

.cm-card-icon{
width:43px;
height:43px;
font-size:20px;
}

.cm-card h3{
font-size:.96rem;
}

.cm-card p{
font-size:12.5px;
line-height:1.6;
}
}














.cm-calc-box>h3{
color:var(--cm-dark);
line-height:1.35;
}

.cm-calc-box>p{
color:var(--cm-text-muted);
font-size:14px;
line-height:1.7;
}

.cm-calc-box .cm-grid-4{
margin-top:18px;
}

.cm-calc-box .cm-grid-4>div{
padding:16px;
background:#f7fbff;
border:1px solid #dcecf8;
border-radius:10px;
color:var(--cm-text);
font-size:13px;
line-height:1.6;
}

.cm-calc-box .cm-grid-4>div strong{
display:block;
color:var(--cm-primary);
margin-bottom:4px;
font-size:13px;
}

.cm-grid-3 .cm-card ul{
padding-left:19px;
margin-top:12px;
}

.cm-grid-3 .cm-card ul li{
color:var(--cm-text);
font-size:13px;
line-height:1.6;
}

.cm-grid-3 .cm-card ul li strong{
color:var(--cm-dark);
}

.cm-card[style*="border-top:4px solid #0284C7"] .cm-card-icon,
.cm-card[style*="border-top:4px solid #F59E0B"] .cm-card-icon,
.cm-card[style*="border-top:4px solid #10B981"] .cm-card-icon,
.cm-card[style*="border-top:4px solid #EF4444"] .cm-card-icon{
border-radius:12px;
font-size:23px;
}

.cm-card[style*="border-top:4px solid #0284C7"] h3{
color:#075985;
}

.cm-card[style*="border-top:4px solid #F59E0B"] h3{
color:#92400e;
}

.cm-card[style*="border-top:4px solid #10B981"] h3{
color:#047857;
}

.cm-card[style*="border-top:4px solid #EF4444"] h3{
color:#b91c1c;
}

.cm-card .cm-card-icon[style*="background:#E0F2FE"]{
background:#e8f5ff!important;
color:var(--cm-primary)!important;
}

.cm-card .cm-card-icon[style*="background:#FEF3C7"]{
background:#fff6dc!important;
color:#d97706!important;
}

.cm-card .cm-card-icon[style*="background:#D1FAE5"]{
background:#e3f8ef!important;
color:#087c54!important;
}

.cm-card .cm-card-icon[style*="background:#FEE2E2"]{
background:#fff0f1!important;
color:#c62838!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"]{
position:relative;
overflow:hidden;
border:0;
box-shadow:var(--cm-shadow-lg);
}

.cm-calc-box[style*="background:linear-gradient(110deg"]::after{
content:"";
position:absolute;
width:300px;
height:300px;
right:-150px;
top:-150px;
border-radius:50%;
background:rgba(255,255,255,.07);
pointer-events:none;
}

.cm-calc-box[style*="background:linear-gradient(110deg"]>div{
position:relative;
z-index:1;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] h3{
color:#fff!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] p{
color:#dbeafe!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] .cm-btn{
border:0;
font-weight:800;
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"]{
grid-template-columns:repeat(5,1fr)!important;
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"] .cm-card{
min-height:205px;
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"] .cm-card-icon{
font-size:15px;
font-weight:900;
background:linear-gradient(135deg,var(--cm-primary),var(--cm-accent));
color:#fff;
box-shadow:0 6px 14px rgba(7,86,163,.18);
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"] .cm-card h3{
font-size:1rem;
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"] .cm-card p{
font-size:13px;
}

.cm-card[style*="border-top:4px solid var(--cm-accent)"]{
border-top-color:var(--cm-accent)!important;
}

.cm-card[style*="border-top:4px solid var(--cm-accent)"] .cm-card-icon{
background:var(--cm-primary-light);
color:var(--cm-primary);
}

.cm-card[style*="border-top:4px solid var(--cm-accent)"] h3{
color:var(--cm-dark);
}

.cm-calc-box .cm-grid-4[style*="grid-template-columns:repeat(auto-fit"]{
margin-top:22px;
}

@media (max-width:1100px){
.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"]{
grid-template-columns:repeat(3,1fr)!important;
}

.cm-calc-box .cm-grid-4{
grid-template-columns:repeat(2,1fr);
}
}

@media (max-width:700px){
.cm-calc-box[style*="background:linear-gradient(110deg"]{
padding:22px 17px!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"]>div{
flex-direction:column;
align-items:flex-start!important;
gap:15px!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] h3{
font-size:1.3rem!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] .cm-btn{
width:100%;
}

.cm-calc-box .cm-grid-4{
grid-template-columns:1fr;
gap:10px;
}

.cm-calc-box .cm-grid-4>div{
padding:13px;
font-size:12px;
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"]{
grid-template-columns:1fr!important;
}

.cm-grid-4[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"] .cm-card{
min-height:auto;
}

.cm-card[style*="border-top:4px solid #0284C7"] .cm-card-icon,
.cm-card[style*="border-top:4px solid #F59E0B"] .cm-card-icon,
.cm-card[style*="border-top:4px solid #10B981"] .cm-card-icon,
.cm-card[style*="border-top:4px solid #EF4444"] .cm-card-icon{
margin-bottom:10px;
}

.cm-grid-3 .cm-card ul li{
font-size:12px;
}
}

@media (max-width:450px){
.cm-calc-box[style*="background:linear-gradient(110deg"]{
padding:19px 13px!important;
border-radius:13px;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] h3{
font-size:1.15rem!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] p{
font-size:12px;
}

.cm-calc-box .cm-grid-4>div{
padding:11px;
font-size:11.5px;
}

.cm-calc-box .cm-grid-4>div strong{
font-size:12px;
}
}












.cm-card img{
border-radius:10px;
}

.cm-card[style*="padding:10px"]{
padding:10px!important;
overflow:hidden;
}

.cm-card[style*="padding:10px"] img{
width:100%;
height:260px;
object-fit:cover;
border-radius:9px;
transition:transform .35s ease;
}

.cm-card[style*="padding:10px"]:hover img{
transform:scale(1.035);
}

.cm-card[style*="padding:10px"]>div{
color:var(--cm-dark)!important;
font-size:13px;
}

.cm-card[style*="padding:15px"][style*="max-width:900px"]{
padding:12px!important;
background:#fff;
border:1px solid var(--cm-border);
box-shadow:var(--cm-shadow-lg);
}

.cm-card[style*="padding:15px"][style*="max-width:900px"] iframe{
display:block;
width:100%;
max-width:100%;
height:480px;
border-radius:10px;
background:#0b1f33;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"]{
background:linear-gradient(135deg,#fff,#fff8f8);
border-left-color:var(--cm-danger)!important;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"] h3{
color:#b42332;
font-size:1.02rem;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"] p{
color:#526779;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"]::before{
content:"";
position:absolute;
top:18px;
right:18px;
width:8px;
height:8px;
border-radius:50%;
background:#ef4444;
box-shadow:0 0 0 5px rgba(239,68,68,.1);
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"]:hover{
border-color:#f3c4c8;
box-shadow:0 12px 28px rgba(220,53,69,.1);
}

.cm-card h3 a{
color:var(--cm-primary);
}

.cm-card h3 a:hover{
color:var(--cm-primary-dark);
}

.cm-grid-3>.cm-card[style*="border-left:4px solid var(--cm-danger)"]{
height:100%;
}

.cm-card[style*="background:linear-gradient(110deg"]{
color:#fff;
}

.cm-card[style*="background:linear-gradient(110deg"] .cm-btn-primary{
background:#ffb703!important;
color:#102a43!important;
}

.cm-card[style*="background:linear-gradient(110deg"] .cm-btn-primary:hover{
background:#ffc533!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"]{
background:linear-gradient(110deg,#063b73,#0756a3,#087c68)!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] span{
background:#fff!important;
color:var(--cm-primary-dark)!important;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] .cm-btn{
position:relative;
z-index:2;
}

.cm-grid-4 .cm-card[style*="padding:10px"]{
height:100%;
}

.cm-grid-4 .cm-card[style*="padding:10px"]>div{
padding:12px 6px 4px!important;
}

@media (max-width:1050px){
.cm-card[style*="padding:10px"] img{
height:230px;
}

.cm-card[style*="padding:15px"][style*="max-width:900px"] iframe{
height:400px;
}
}

@media (max-width:700px){
.cm-card[style*="padding:10px"]{
padding:8px!important;
}

.cm-card[style*="padding:10px"] img{
height:220px;
}

.cm-card[style*="padding:10px"]>div{
padding:10px 4px 3px!important;
font-size:12px;
}

.cm-card[style*="padding:15px"][style*="max-width:900px"]{
padding:7px!important;
border-radius:11px;
}

.cm-card[style*="padding:15px"][style*="max-width:900px"] iframe{
height:245px;
border-radius:8px;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"]::before{
top:14px;
right:14px;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"] h3{
font-size:.96rem;
padding-right:12px;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"] p{
font-size:12.5px;
}

.cm-calc-box[style*="background:linear-gradient(110deg"] span{
font-size:10px!important;
}
}

@media (max-width:450px){
.cm-card[style*="padding:10px"] img{
height:190px;
}

.cm-card[style*="padding:15px"][style*="max-width:900px"] iframe{
height:210px;
}

.cm-card[style*="border-left:4px solid var(--cm-danger)"]{
padding-left:15px;
}
}














.cm-faq-list{
max-width:980px;
margin:0 auto;
}

.cm-faq-item{
background:#fff;
border:1px solid var(--cm-border);
border-radius:11px;
margin-bottom:11px;
overflow:hidden;
box-shadow:0 4px 15px rgba(7,86,163,.05);
transition:border-color .2s ease,box-shadow .2s ease;
}

.cm-faq-item:hover{
border-color:#b9d8ef;
box-shadow:0 7px 22px rgba(7,86,163,.08);
}

.cm-faq-item[open]{
border-color:#a9cfe9;
box-shadow:0 8px 25px rgba(7,86,163,.1);
}

.cm-faq-item summary{
position:relative;
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
padding:17px 48px 17px 19px;
color:var(--cm-dark);
font-size:14px;
font-weight:800;
line-height:1.45;
cursor:pointer;
list-style:none;
background:#fff;
transition:background .2s ease,color .2s ease;
}

.cm-faq-item summary::-webkit-details-marker{
display:none;
}

.cm-faq-item summary::after{
content:"+";
position:absolute;
right:18px;
top:50%;
transform:translateY(-50%);
width:25px;
height:25px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:var(--cm-primary-light);
color:var(--cm-primary);
font-size:19px;
font-weight:700;
line-height:1;
}

.cm-faq-item[open] summary{
color:var(--cm-primary);
background:#f7fbff;
}

.cm-faq-item[open] summary::after{
content:"−";
background:var(--cm-primary);
color:#fff;
}

.cm-faq-answer{
padding:0 20px 18px;
border-top:1px solid #edf3f8;
background:#fdfefe;
}

.cm-faq-answer p{
margin-top:14px;
font-size:13.5px;
line-height:1.75;
color:var(--cm-text-muted);
}

.cm-faq-answer strong{
color:var(--cm-dark);
}

.cm-grid-4 .cm-card[style*="border-top:5px"]{
position:relative;
overflow:hidden;
}

.cm-grid-4 .cm-card[style*="border-top:5px"]::after{
content:"";
position:absolute;
right:-25px;
bottom:-35px;
width:100px;
height:100px;
border-radius:50%;
background:rgba(7,86,163,.035);
pointer-events:none;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] h3{
font-size:1.02rem;
margin-bottom:9px;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] p{
font-size:12.5px;
line-height:1.6;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] small{
font-size:10.5px!important;
line-height:1.5;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] a{
color:var(--cm-primary);
font-weight:800;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] a:hover{
color:var(--cm-primary-dark);
text-decoration:underline;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] p[style*="color:var(--cm-success)"]{
color:var(--cm-success)!important;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"]{
display:grid!important;
grid-template-columns:minmax(0,2fr) minmax(280px,1fr)!important;
padding:0!important;
overflow:hidden;
border-radius:16px;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] iframe{
display:block;
width:100%;
height:400px;
border:0;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"]>div{
min-width:0;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] h3{
font-size:1.25rem!important;
line-height:1.35;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] p{
font-size:13px;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] .cm-btn{
width:100%;
min-height:44px;
}

.cm-grid-4>a.cm-card{
display:block;
height:100%;
color:inherit;
}

.cm-grid-4>a.cm-card:hover{
color:inherit;
}

.cm-grid-4>a.cm-card h3{
color:var(--cm-primary);
font-size:1.05rem;
transition:color .2s ease;
}

.cm-grid-4>a.cm-card:hover h3{
color:var(--cm-primary-dark);
}

.cm-grid-4>a.cm-card p{
font-size:12.5px;
line-height:1.6;
}

.cm-grid-4>a.cm-card::after{
content:"→";
position:absolute;
right:18px;
bottom:16px;
font-size:18px;
font-weight:800;
color:#9ab6cc;
transition:transform .2s ease,color .2s ease;
}

.cm-grid-4>a.cm-card:hover::after{
color:var(--cm-primary);
transform:translateX(4px);
}

@media (max-width:1050px){
.cm-calc-box[style*="grid-template-columns:2fr 1fr"]{
grid-template-columns:1.5fr 1fr!important;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] iframe{
height:380px;
}
}

@media (max-width:700px){
.cm-faq-list{
width:100%;
}

.cm-faq-item{
margin-bottom:8px;
border-radius:9px;
}

.cm-faq-item summary{
padding:14px 43px 14px 14px;
font-size:12.5px;
gap:10px;
}

.cm-faq-item summary::after{
right:12px;
width:23px;
height:23px;
font-size:17px;
}

.cm-faq-answer{
padding:0 14px 14px;
}

.cm-faq-answer p{
font-size:12px;
line-height:1.65;
margin-top:11px;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] p{
font-size:12px;
}

.cm-grid-4 .cm-card[style*="border-top:5px"] small{
font-size:10px!important;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"]{
display:flex!important;
flex-direction:column;
width:100%;
border-radius:12px;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] iframe{
height:280px;
order:1;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"]>div{
order:2;
padding:20px!important;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] h3{
font-size:1.1rem!important;
}

.cm-grid-4>a.cm-card::after{
right:15px;
bottom:14px;
}
}

@media (max-width:450px){
.cm-faq-item summary{
padding:13px 40px 13px 12px;
font-size:12px;
}

.cm-faq-item summary::after{
right:10px;
width:22px;
height:22px;
}

.cm-faq-answer{
padding:0 12px 12px;
}

.cm-faq-answer p{
font-size:11.5px;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] iframe{
height:235px;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"]>div{
padding:17px!important;
}

.cm-calc-box[style*="grid-template-columns:2fr 1fr"] h3{
font-size:1rem!important;
}
}














.cm-hub-section{
position:relative;
padding:70px 0;
background:linear-gradient(180deg,#f4f9fe 0%,#fff 100%);
overflow:hidden;
}

.cm-hub-section::before{
content:"";
position:absolute;
width:430px;
height:430px;
right:-220px;
top:-190px;
border-radius:50%;
background:rgba(7,86,163,.045);
pointer-events:none;
}

.cm-hub-section::after{
content:"";
position:absolute;
width:300px;
height:300px;
left:-180px;
bottom:-160px;
border-radius:50%;
background:rgba(11,120,208,.04);
pointer-events:none;
}

.cm-hub-header{
position:relative;
z-index:1;
max-width:850px;
margin:0 auto 30px;
text-align:center;
}

.cm-hub-header h2{
font-size:clamp(1.9rem,3vw,2.7rem);
line-height:1.2;
color:var(--cm-dark);
font-weight:850;
letter-spacing:-.6px;
margin-bottom:10px;
}

.cm-hub-header p{
font-size:15px;
line-height:1.7;
color:var(--cm-text-muted);
}

.cm-hub-controls{
position:relative;
z-index:2;
max-width:1050px;
margin:0 auto 28px;
padding:20px;
background:#fff;
border:1px solid var(--cm-border);
border-radius:15px;
box-shadow:var(--cm-shadow);
}

.cm-hub-search-box{
position:relative;
width:100%;
margin-bottom:15px;
}

.cm-search-icon{
position:absolute;
left:16px;
top:50%;
width:20px;
height:20px;
fill:var(--cm-primary);
transform:translateY(-50%);
pointer-events:none;
}

.cm-hub-search-box input{
width:100%;
height:52px;
padding:12px 17px 12px 48px;
border:1px solid #c8d9e8;
border-radius:9px;
background:#f9fcff;
outline:none;
color:var(--cm-dark);
font-size:14px;
font-weight:600;
transition:.2s ease;
}

.cm-hub-search-box input::placeholder{
color:#8299ad;
font-weight:500;
}

.cm-hub-search-box input:focus{
background:#fff;
border-color:var(--cm-accent);
box-shadow:0 0 0 4px rgba(11,120,208,.09);
}

.cm-zone-tabs{
display:flex;
align-items:center;
justify-content:center;
flex-wrap:wrap;
gap:7px;
}

.cm-zone-btn{
min-height:40px;
padding:8px 14px;
border:1px solid #cbddea;
border-radius:8px;
background:#f7fbff;
color:var(--cm-dark);
font-size:12px;
font-weight:800;
cursor:pointer;
transition:all .2s ease;
}

.cm-zone-btn:hover{
border-color:#9ec9e8;
background:var(--cm-primary-light);
color:var(--cm-primary);
}

.cm-zone-btn.active{
border-color:var(--cm-primary);
background:var(--cm-primary);
color:#fff;
box-shadow:0 5px 14px rgba(7,86,163,.18);
}

.cm-route-matrix{
position:relative;
z-index:1;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:14px;
}

.cm-route-card-v2{
position:relative;
display:flex;
flex-direction:column;
justify-content:center;
min-height:118px;
padding:17px;
background:#fff;
border:1px solid var(--cm-border);
border-radius:12px;
box-shadow:0 4px 16px rgba(7,86,163,.055);
overflow:hidden;
transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.cm-route-card-v2::before{
content:"";
position:absolute;
left:0;
top:0;
bottom:0;
width:3px;
background:linear-gradient(180deg,var(--cm-primary),var(--cm-accent));
opacity:.8;
}

.cm-route-card-v2:hover{
transform:translateY(-4px);
border-color:#afd3ed;
box-shadow:0 12px 28px rgba(7,86,163,.12);
}

.cm-route-top{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:9px;
margin-bottom:12px;
}

.cm-dest-title{
color:var(--cm-dark);
font-size:15px;
font-weight:850;
line-height:1.3;
}

.cm-dest-title span{
display:block;
margin-top:3px;
font-size:10px;
font-weight:600;
color:var(--cm-text-muted);
}

.cm-badge-time{
display:inline-flex;
align-items:center;
justify-content:center;
flex-shrink:0;
padding:4px 7px;
border-radius:50px;
background:#eaf6ff;
color:var(--cm-primary);
font-size:9px;
font-weight:800;
line-height:1.2;
white-space:nowrap;
}

.cm-route-meta{
display:flex;
align-items:center;
justify-content:space-between;
gap:10px;
margin-top:auto;
padding-top:9px;
border-top:1px solid #edf3f8;
}

.cm-route-hw{
font-size:10px;
line-height:1.4;
color:var(--cm-text-muted);
}

.cm-route-arrow{
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
width:25px;
height:25px;
border-radius:50%;
background:var(--cm-primary-light);
color:var(--cm-primary);
font-size:15px;
font-weight:900;
transition:.2s ease;
}

.cm-route-card-v2:hover .cm-route-arrow{
background:var(--cm-primary);
color:#fff;
transform:translateX(3px);
}

.cm-route-card-v2[style*="display: none"]{
display:none!important;
}

@media (max-width:1100px){
.cm-route-matrix{
grid-template-columns:repeat(3,1fr);
}

.cm-route-card-v2{
min-height:115px;
padding:15px;
}
}

@media (max-width:800px){
.cm-hub-section{
padding:52px 0;
}

.cm-route-matrix{
grid-template-columns:repeat(2,1fr);
gap:12px;
}

.cm-hub-controls{
padding:16px;
}

.cm-zone-tabs{
justify-content:flex-start;
}

.cm-zone-btn{
font-size:11px;
padding:8px 11px;
}
}

@media (max-width:600px){
.cm-hub-section{
padding:42px 0;
}

.cm-hub-header{
margin-bottom:22px;
}

.cm-hub-header h2{
font-size:1.75rem;
}

.cm-hub-header p{
font-size:13px;
}

.cm-hub-controls{
padding:12px;
margin-bottom:20px;
border-radius:11px;
}

.cm-hub-search-box{
margin-bottom:11px;
}

.cm-hub-search-box input{
height:46px;
font-size:12px;
padding-left:43px;
}

.cm-search-icon{
left:13px;
width:18px;
height:18px;
}

.cm-zone-tabs{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:5px;
}

.cm-zone-btn{
width:100%;
min-height:38px;
padding:7px 5px;
font-size:10px;
}

.cm-zone-btn:first-child{
grid-column:1/-1;
}

.cm-route-matrix{
grid-template-columns:1fr;
gap:9px;
}

.cm-route-card-v2{
min-height:105px;
padding:14px 14px 13px 17px;
border-radius:10px;
}

.cm-route-card-v2:hover{
transform:none;
}

.cm-dest-title{
font-size:14px;
}

.cm-dest-title span{
font-size:9px;
}

.cm-badge-time{
font-size:8px;
padding:4px 6px;
}

.cm-route-hw{
font-size:9px;
}

.cm-route-arrow{
width:23px;
height:23px;
font-size:13px;
}
}

@media (max-width:400px){
.cm-hub-header h2{
font-size:1.55rem;
}

.cm-hub-header p{
font-size:12px;
}

.cm-hub-controls{
padding:10px;
}

.cm-zone-btn{
font-size:9px;
}

.cm-route-card-v2{
min-height:100px;
padding:13px 12px 12px 15px;
}

.cm-dest-title{
font-size:13px;
}

.cm-badge-time{
max-width:92px;
white-space:normal;
text-align:center;
}

.cm-route-hw{
font-size:8.5px;
}
}














.cm-footer{
position:relative;
background:linear-gradient(135deg,#061f3d 0%,#073b70 55%,#0756a3 100%);
color:#dbeafe;
padding:58px 0 0;
overflow:hidden;
}

.cm-footer::before{
content:"";
position:absolute;
width:420px;
height:420px;
right:-210px;
top:-210px;
border-radius:50%;
background:rgba(255,255,255,.045);
}

.cm-footer::after{
content:"";
position:absolute;
width:300px;
height:300px;
left:-170px;
bottom:-170px;
border-radius:50%;
background:rgba(11,120,208,.08);
}

.cm-footer-grid{
position:relative;
z-index:1;
display:grid;
grid-template-columns:1.45fr 1fr 1fr 1.2fr;
gap:38px;
padding-bottom:45px;
}

.cm-footer-grid>div{
min-width:0;
}

.cm-footer-grid h3{
color:#fff!important;
font-size:1.05rem;
line-height:1.35;
margin-bottom:16px;
font-weight:800;
}

.cm-footer-grid>div:first-child h3{
color:#7dd3fc!important;
font-size:1.4rem;
}

.cm-footer-grid p{
color:#c5d7e8;
font-size:13px;
line-height:1.7;
}

.cm-footer-grid p strong{
color:#fff;
}

.cm-footer-grid ul{
list-style:none;
padding:0;
margin:0;
}

.cm-footer-grid li{
margin-bottom:8px;
}

.cm-footer-grid li a{
display:inline-block;
color:#c5d7e8;
font-size:13px;
transition:color .2s ease,transform .2s ease;
}

.cm-footer-grid li a:hover{
color:#7dd3fc;
transform:translateX(3px);
}

.cm-footer-grid a{
color:inherit;
}

.cm-footer-grid>div:first-child>div{
display:flex;
flex-wrap:wrap;
gap:7px!important;
}

.cm-footer-grid>div:first-child>div a{
display:inline-flex;
align-items:center;
justify-content:center;
padding:7px 10px!important;
border:1px solid rgba(255,255,255,.12);
border-radius:7px!important;
background:rgba(255,255,255,.07)!important;
color:#dbeafe;
font-size:11px;
font-weight:700;
transition:.2s ease;
}

.cm-footer-grid>div:first-child>div a:hover{
background:rgba(255,255,255,.15)!important;
color:#fff;
transform:translateY(-2px);
}

.cm-footer-grid a[href^="tel:"]{
color:#7dd3fc!important;
}

.cm-footer-grid a[href^="mailto:"]{
color:#fff!important;
word-break:break-word;
}

.cm-footer-grid a[href*="wa.me"]{
color:#6ee7b7!important;
}

.cm-footer-bottom{
position:relative;
z-index:1;
border-top:1px solid rgba(255,255,255,.12);
background:rgba(2,18,38,.28);
}

.cm-footer-bottom .cm-container{
min-height:58px;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
}

.cm-footer-bottom p{
color:#9fb6ca;
font-size:11px;
line-height:1.5;
}

.cm-mobile-bar{
display:none;
}

.cm-mobile-bar a{
transition:background .2s ease,transform .2s ease;
}

.cm-mobile-bar a:active{
transform:scale(.97);
}

section{
scroll-margin-top:90px;
}

@media (max-width:1100px){
.cm-footer-grid{
grid-template-columns:1.4fr 1fr 1fr;
gap:30px;
}

.cm-footer-grid>div:last-child{
grid-column:1/-1;
padding-top:8px;
border-top:1px solid rgba(255,255,255,.1);
}

.cm-footer{
padding-top:48px;
}
}

@media (max-width:700px){
body{
padding-bottom:62px;
}

.cm-footer{
padding:42px 0 0;
}

.cm-footer-grid{
grid-template-columns:1fr 1fr;
gap:25px 18px;
padding-bottom:30px;
}

.cm-footer-grid>div:first-child{
grid-column:1/-1;
}

.cm-footer-grid>div:last-child{
grid-column:1/-1;
padding-top:20px;
}

.cm-footer-grid>div:first-child h3{
font-size:1.25rem;
}

.cm-footer-grid h3{
font-size:.95rem;
margin-bottom:11px;
}

.cm-footer-grid p{
font-size:12px;
}

.cm-footer-grid li{
margin-bottom:6px;
}

.cm-footer-grid li a{
font-size:11.5px;
}

.cm-footer-grid>div:first-child>div{
gap:5px!important;
}

.cm-footer-grid>div:first-child>div a{
padding:6px 8px!important;
font-size:10px;
}

.cm-footer-bottom .cm-container{
min-height:52px;
padding:8px 0;
}

.cm-footer-bottom p{
font-size:9px;
}

.cm-mobile-bar{
position:fixed;
left:0;
right:0;
bottom:0;
z-index:2000;
display:grid;
grid-template-columns:repeat(3,1fr);
height:60px;
background:#fff;
border-top:1px solid #cbddea;
box-shadow:0 -5px 20px rgba(7,86,163,.15);
}

.cm-mobile-bar a{
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:1px;
font-size:10px;
font-weight:800;
background:#fff;
border-right:1px solid #e5edf4;
}

.cm-mobile-bar a:last-child{
border-right:0;
}

.cm-mobile-bar a span{
font-size:19px;
line-height:1.2;
}

.cm-mobile-bar a:first-child{
color:var(--cm-primary)!important;
}

.cm-mobile-bar a:nth-child(2){
color:var(--cm-success)!important;
}

.cm-mobile-bar a:nth-child(3){
color:var(--cm-dark)!important;
}
}

@media (max-width:450px){
.cm-footer-grid{
grid-template-columns:1fr;
gap:22px;
}

.cm-footer-grid>div:first-child,
.cm-footer-grid>div:last-child{
grid-column:auto;
}

.cm-footer-grid>div:last-child{
padding-top:18px;
}

.cm-footer{
padding-top:36px;
}

.cm-footer-grid>div:first-child>div a{
font-size:9px;
}

.cm-footer-bottom p{
font-size:8.5px;
padding:0 8px;
}

.cm-mobile-bar{
height:58px;
}

.cm-mobile-bar a{
font-size:9px;
}

.cm-mobile-bar a span{
font-size:18px;
}
}

@media (min-width:701px){
.cm-mobile-bar{
display:none!important;
}
}

@media (prefers-reduced-motion:reduce){
*{
scroll-behavior:auto!important;
transition:none!important;
animation:none!important;
}

.cm-card:hover,
.cm-btn:hover,
.cm-route-card-v2:hover{
transform:none!important;
}
}






















/* Mobile Header Upgrade */
@media (max-width:700px){
.cm-topbar{
background:linear-gradient(90deg,#052e63,#0756a3,#087cba);
}

.cm-topbar-inner{
padding:9px 0;
}

.cm-topbar-inner>div:first-child span{
font-size:12px;
font-weight:700;
}

.cm-top-links{
gap:6px;
margin-top:3px;
}

.cm-top-links a{
padding:5px 9px;
font-size:12px;
border-radius:6px;
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.18);
}

.cm-header{
background:#fff;
box-shadow:0 4px 18px rgba(7,86,163,.15);
}

.cm-nav{
padding:13px 0 15px;
gap:14px;
}

.cm-brand-title{
width:100%;
justify-content:center;
}

.cm-brand-title img{
width:190px;
max-height:58px;
}

.cm-nav-menu{
grid-template-columns:repeat(2,1fr);
gap:7px;
}

.cm-nav-menu>a{
min-height:45px;
padding:9px 7px;
font-size:13px;
font-weight:800;
color:#0756a3;
background:linear-gradient(135deg,#f1f8ff,#e5f3ff);
border:1px solid #b9d9f2;
border-radius:9px;
box-shadow:0 3px 8px rgba(7,86,163,.07);
}

.cm-nav-menu>a:hover{
background:#dcefff;
color:#063b73;
}

.cm-btn-call-nav{
background:linear-gradient(135deg,#0756a3,#087dcc)!important;
color:#fff!important;
border-color:#0756a3!important;
box-shadow:0 5px 13px rgba(7,86,163,.2)!important;
}

.cm-btn-wa-nav{
background:linear-gradient(135deg,#07965f,#0bb978)!important;
color:#fff!important;
border-color:#07965f!important;
box-shadow:0 5px 13px rgba(10,159,104,.2)!important;
}

.cm-nav-menu>a:nth-child(1),
.cm-nav-menu>a:nth-child(2){
background:linear-gradient(135deg,#e8f4ff,#d7edff);
}

.cm-nav-menu>a:nth-child(3),
.cm-nav-menu>a:nth-child(4){
background:linear-gradient(135deg,#eefcf7,#ddf8ed);
}

.cm-nav-menu>a:nth-child(5),
.cm-nav-menu>a:nth-child(6){
background:linear-gradient(135deg,#fff8e8,#fff0c9);
}

.cm-nav-menu>a:nth-child(7){
background:linear-gradient(135deg,#f3edff,#e9ddff);
}
}

/* Mobile Content Typography Upgrade */
@media (max-width:700px){
.cm-section-head h2{
font-size:1.9rem;
line-height:1.22;
}

.cm-section-head p{
font-size:14px;
line-height:1.7;
}

.cm-card h3{
font-size:1.08rem;
line-height:1.4;
}

.cm-card p{
font-size:14px;
line-height:1.7;
}

.cm-card ul{
font-size:13px;
line-height:1.65;
}

.cm-card ul li{
font-size:13px;
}

.cm-tag{
font-size:11px;
padding:6px 11px;
}

.cm-btn{
font-size:14px;
font-weight:800;
}

.cm-table{
font-size:13px;
}

.cm-table th{
font-size:12px;
}

.cm-table td{
font-size:13px;
}

.cm-faq-item summary{
font-size:14px;
line-height:1.5;
}

.cm-faq-answer p{
font-size:13.5px;
line-height:1.7;
}

.cm-route-card-v2{
min-height:112px;
}

.cm-dest-title{
font-size:15px;
}

.cm-dest-title span{
font-size:10px;
}

.cm-route-hw{
font-size:10px;
}

.cm-badge-time{
font-size:9px;
}

.cm-footer-grid p,
.cm-footer-grid li a{
font-size:13px;
}
}

/* Extra Small Phones */
@media (max-width:450px){
.cm-brand-title img{
width:180px;
}

.cm-nav-menu{
gap:6px;
}

.cm-nav-menu>a{
min-height:44px;
font-size:12.5px;
padding:9px 5px;
}

.cm-section-head h2{
font-size:1.7rem;
}

.cm-section-head p{
font-size:13.5px;
}

.cm-card h3{
font-size:1.05rem;
}

.cm-card p{
font-size:13.5px;
}

.cm-faq-item summary{
font-size:13.5px;
}

.cm-faq-answer p{
font-size:13px;
}

.cm-route-card-v2{
min-height:108px;
}

.cm-dest-title{
font-size:14px;
}

.cm-route-hw{
font-size:9.5px;
}
}















@media (max-width:700px){
body{
font-size:17px;
}

p,
.cm-card p,
.cm-section-head p,
.cm-calc-box p{
font-size:16px!important;
line-height:1.75!important;
}

.cm-card h3{
font-size:19px!important;
line-height:1.4!important;
}

.cm-section-head h2{
font-size:30px!important;
line-height:1.25!important;
}

.cm-card ul,
.cm-card li,
.cm-calc-box li{
font-size:15px!important;
line-height:1.75!important;
}

.cm-table{
font-size:15px!important;
}

.cm-table th{
font-size:14px!important;
}

.cm-table td{
font-size:15px!important;
line-height:1.65!important;
}

.cm-faq-item summary{
font-size:16px!important;
line-height:1.55!important;
}

.cm-faq-answer p{
font-size:15px!important;
line-height:1.75!important;
}

.cm-dest-title{
font-size:17px!important;
}

.cm-dest-title span{
font-size:12px!important;
}

.cm-route-hw{
font-size:12px!important;
line-height:1.5!important;
}

.cm-badge-time{
font-size:11px!important;
}

.cm-form-group label{
font-size:14px!important;
}

.cm-form-group input,
.cm-form-group select,
.cm-form-group textarea{
font-size:15px!important;
}

.cm-footer-grid p,
.cm-footer-grid li a{
font-size:15px!important;
line-height:1.7!important;
}

.cm-footer-grid h3{
font-size:18px!important;
}
}

@media (max-width:450px){
body{
font-size:16px;
}

p,
.cm-card p,
.cm-section-head p,
.cm-calc-box p{
font-size:15.5px!important;
line-height:1.75!important;
}

.cm-card h3{
font-size:18px!important;
}

.cm-section-head h2{
font-size:27px!important;
}

.cm-card ul,
.cm-card li,
.cm-calc-box li{
font-size:15px!important;
}

.cm-table{
font-size:14.5px!important;
}

.cm-table th{
font-size:13.5px!important;
}

.cm-table td{
font-size:14.5px!important;
}

.cm-faq-item summary{
font-size:15.5px!important;
}

.cm-faq-answer p{
font-size:14.5px!important;
}

.cm-dest-title{
font-size:16px!important;
}

.cm-route-hw{
font-size:11.5px!important;
}
}





















.cm-hero{
background:
radial-gradient(circle at 10% 15%,rgba(124,58,237,.18),transparent 30%),
radial-gradient(circle at 90% 75%,rgba(13,148,136,.16),transparent 32%),
linear-gradient(135deg,#f5f3ff 0%,#f8fafc 45%,#ecfeff 100%)!important;
}

.cm-hero::before{
background:rgba(124,58,237,.09)!important;
box-shadow:0 0 100px rgba(124,58,237,.10)!important;
}

.cm-hero::after{
background:rgba(13,148,136,.08)!important;
}

.cm-hero-content .cm-tag{
background:linear-gradient(135deg,#ede9fe,#ddd6fe)!important;
border-color:#c4b5fd!important;
color:#5b21b6!important;
}

.cm-hero h1{
color:#172033!important;
}

.cm-hero h1 span{
color:#6d28d9!important;
}

.cm-hero-content>p{
color:#465569!important;
}

.cm-rating-card{
background:rgba(255,255,255,.92)!important;
border-color:#ddd6fe!important;
box-shadow:0 12px 30px rgba(76,29,149,.10)!important;
}

.cm-rating-val{
color:#f59e0b!important;
}

.cm-hero-badges span{
background:rgba(255,255,255,.9)!important;
border-color:#dbe3eb!important;
color:#26364a!important;
}

.cm-hero-badges span:nth-child(1),
.cm-hero-badges span:nth-child(3),
.cm-hero-badges span:nth-child(5){
background:#f0ecff!important;
border-color:#d8ccff!important;
color:#5b21b6!important;
}

.cm-hero-badges span:nth-child(2),
.cm-hero-badges span:nth-child(4),
.cm-hero-badges span:nth-child(6){
background:#e8faf7!important;
border-color:#b9eee5!important;
color:#087f73!important;
}

.cm-btn-primary{
background:linear-gradient(135deg,#5b21b6,#7c3aed)!important;
box-shadow:0 10px 24px rgba(109,40,217,.25)!important;
}

.cm-btn-primary:hover{
background:linear-gradient(135deg,#4c1d95,#6d28d9)!important;
}

.cm-btn-wa{
background:linear-gradient(135deg,#087f73,#0d9488)!important;
box-shadow:0 10px 24px rgba(13,148,136,.20)!important;
}

.cm-btn-wa:hover{
background:linear-gradient(135deg,#06665d,#087f73)!important;
}

.cm-quote-card{
background:rgba(255,255,255,.97)!important;
border-color:#d8d0f4!important;
box-shadow:
0 22px 55px rgba(76,29,149,.13),
0 5px 15px rgba(15,23,42,.06)!important;
}

.cm-quote-card::before{
background:linear-gradient(90deg,#5b21b6,#7c3aed,#0d9488)!important;
}

.cm-quote-head h2{
color:#172033!important;
}

.cm-form-group label{
color:#28384d!important;
}

.cm-form-group input,
.cm-form-group select,
.cm-form-group textarea{
background:#fafaff!important;
border-color:#d7dce5!important;
}

.cm-form-group input:focus,
.cm-form-group select:focus,
.cm-form-group textarea:focus{
border-color:#7c3aed!important;
box-shadow:0 0 0 3px rgba(124,58,237,.11)!important;
}

.cm-form-submit{
background:linear-gradient(135deg,#5b21b6,#7c3aed,#0d9488)!important;
box-shadow:0 10px 24px rgba(91,33,182,.20)!important;
}

.cm-booking-note{
background:#e9faf6!important;
border-color:#b9eee5!important;
color:#087f73!important;
}

@media(max-width:700px){
.cm-hero{
background:
radial-gradient(circle at 0% 5%,rgba(124,58,237,.16),transparent 34%),
radial-gradient(circle at 100% 92%,rgba(13,148,136,.15),transparent 34%),
linear-gradient(160deg,#f5f3ff 0%,#fafbfc 55%,#ecfeff 100%)!important;
}

.cm-quote-card{
border-color:#d8d0f4!important;
}
}



















@media(max-width:700px){
.cm-mobile-bar{
position:fixed;
left:50%;
bottom:18px;
z-index:9999;
width:calc(100% - 24px);
max-width:430px;
height:72px;
padding:7px;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:8px;
background:rgba(255,255,255,.96);
border:1px solid #e7e2d8;
border-radius:24px;
box-shadow:
0 14px 40px rgba(31,41,55,.13),
0 3px 10px rgba(31,41,55,.06);
transform:translateX(-50%);
backdrop-filter:blur(16px);
-webkit-backdrop-filter:blur(16px);
}

.cm-mobile-bar a{
position:relative;
height:58px;
display:flex;
align-items:center;
justify-content:center;
gap:7px;
border:1px solid transparent!important;
border-radius:17px;
font-size:11px!important;
font-weight:800!important;
letter-spacing:.15px;
color:#25354a!important;
text-decoration:none;
transition:transform .25s ease,box-shadow .25s ease;
}

.cm-mobile-bar a span{
width:34px;
height:34px;
display:flex;
align-items:center;
justify-content:center;
border-radius:11px;
font-size:20px!important;
line-height:1;
}

/* Call - Soft Royal Blue */
.cm-mobile-bar a:first-child{
background:linear-gradient(135deg,#f2f7ff,#e5efff)!important;
border-color:#d5e3f7!important;
color:#245a9c!important;
box-shadow:inset 0 1px 0 #fff;
}

.cm-mobile-bar a:first-child span{
background:#dceaff;
color:#2864a8;
box-shadow:0 4px 10px rgba(54,105,168,.12);
}

/* WhatsApp - Soft Sage Green */
.cm-mobile-bar a:nth-child(2){
background:linear-gradient(135deg,#f1fbf7,#e4f7ef)!important;
border-color:#cfeadd!important;
color:#23765d!important;
box-shadow:inset 0 1px 0 #fff;
}

.cm-mobile-bar a:nth-child(2) span{
background:#d8f2e6;
color:#21845f;
box-shadow:0 4px 10px rgba(35,132,95,.11);
}

/* Location - Soft Champagne */
.cm-mobile-bar a:nth-child(3){
background:linear-gradient(135deg,#fffaf0,#fff4dc)!important;
border-color:#eee0bf!important;
color:#87652a!important;
box-shadow:inset 0 1px 0 #fff;
}

.cm-mobile-bar a:nth-child(3) span{
background:#f8eac8;
color:#a27a32;
box-shadow:0 4px 10px rgba(162,122,50,.11);
}

.cm-mobile-bar a:hover{
transform:translateY(-3px);
}

.cm-mobile-bar a:active{
transform:scale(.96);
}

body{
padding-bottom:105px;
}
}

@media(max-width:500px){
.cm-mobile-bar{
bottom:12px;
width:calc(100% - 18px);
height:68px;
padding:6px;
gap:6px;
border-radius:21px;
}

.cm-mobile-bar a{
height:56px;
border-radius:15px;
font-size:10px!important;
gap:5px;
}

.cm-mobile-bar a span{
width:31px;
height:31px;
font-size:18px!important;
border-radius:10px;
}

body{
padding-bottom:96px;
}
}

@media(max-width:380px){
.cm-mobile-bar{
width:calc(100% - 12px);
gap:5px;
}

.cm-mobile-bar a{
font-size:9px!important;
}

.cm-mobile-bar a span{
width:29px;
height:29px;
font-size:17px!important;
}
}