/* XCM 4.3 — Homepage overrides. */
.xcm-home-page .xcm-home-hero{padding-top:clamp(68px,9vw,128px);padding-bottom:clamp(56px,8vw,110px)}
.xcm-home-page .xcm-home-hero .xcm-hero-media{min-height:500px;border:1px solid rgba(255,255,255,.14)}
.xcm-home-page .xcm-home-hero .xcm-hero-media img{min-height:500px}
.xcm-home-page .xcm-home-hero-note{position:absolute;left:18px;right:18px;bottom:18px;z-index:3;padding:16px 18px;border-radius:var(--xcm-radius);background:rgba(7,17,31,.84);color:var(--xcm-white)}
.xcm-home-page .xcm-home-hero-note strong{display:block;margin-bottom:4px;color:var(--xcm-white);font-size:1rem;line-height:1.3}
.xcm-home-page .xcm-home-hero-note span{display:block;color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.45}
.xcm-home-page .xcm-home-contact-strip{margin-top:-36px;position:relative;z-index:5}
.xcm-home-page .xcm-home-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius-lg);background:var(--xcm-white);box-shadow:var(--xcm-shadow)}
.xcm-home-page .xcm-home-contact-item{padding:20px;border-right:1px solid var(--xcm-line)}
.xcm-home-page .xcm-home-contact-item:last-child{border-right:0}
.xcm-home-page .xcm-home-contact-item strong{display:block;color:var(--xcm-navy);font-size:.95rem;line-height:1.25}
.xcm-home-page .xcm-home-contact-item span,.xcm-home-page .xcm-home-contact-item a{display:block;margin-top:6px;color:var(--xcm-muted);font-size:.95rem;line-height:1.45}
.xcm-home-page .xcm-home-contact-item a{color:var(--xcm-red);font-weight:750}
.xcm-home-page .xcm-home-service-card{min-height:100%}
.xcm-home-page .xcm-home-service-card .xcm-service-body{min-height:250px}
.xcm-home-page .xcm-home-fleet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--xcm-space-5)}
.xcm-home-page .xcm-home-fleet-card{padding:22px;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius-lg);background:var(--xcm-white);box-shadow:var(--xcm-shadow-sm)}
.xcm-home-page .xcm-home-fleet-card strong{display:block;color:var(--xcm-navy);font-size:1.08rem;line-height:1.25}
.xcm-home-page .xcm-home-fleet-card span{display:block;margin-top:8px;color:var(--xcm-muted);font-size:.94rem;line-height:1.5}
.xcm-home-page .xcm-home-fleet-badge{display:inline-flex;align-items:center;justify-content:center;min-width:54px;min-height:40px;margin-bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(177,18,38,.1);color:var(--xcm-red);font-weight:750}
.xcm-home-page .xcm-home-rating-list{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.xcm-home-page .xcm-home-rating-item{margin:0;padding:16px;border:1px solid rgba(255,255,255,.13);border-radius:var(--xcm-radius);background:rgba(255,255,255,.07)}
.xcm-home-page .xcm-home-rating-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;color:var(--xcm-white);font-weight:750}
.xcm-home-page .xcm-home-rating-bar{overflow:hidden;height:10px;border-radius:999px;background:rgba(255,255,255,.14)}
.xcm-home-page .xcm-home-rating-fill{display:block;height:100%;border-radius:inherit;background:var(--xcm-red)}
.xcm-home-page .xcm-home-testimonial{display:grid;gap:16px;min-height:100%}
.xcm-home-page .xcm-home-testimonial p{font-size:1.02rem;line-height:1.7}
.xcm-home-page .xcm-home-author{display:flex;align-items:center;gap:12px;margin-top:auto}
.xcm-home-page .xcm-home-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;background:var(--xcm-soft)}
.xcm-home-page .xcm-home-author strong{display:block;color:var(--xcm-navy);line-height:1.25}
.xcm-home-page .xcm-home-author span{display:block;margin-top:2px;color:var(--xcm-muted);font-size:.9rem}
.xcm-home-page .xcm-home-post-card{min-height:100%}
.xcm-home-page .xcm-home-post-card .xcm-project-body{display:flex;flex-direction:column;min-height:0}
.xcm-home-page .xcm-home-post-card .xcm-btn{margin-top:auto;align-self:flex-start}
.xcm-home-page .xcm-home-map{overflow:hidden;border:1px solid var(--xcm-line);border-radius:var(--xcm-radius-xl);background:var(--xcm-white);box-shadow:var(--xcm-shadow)}
.xcm-home-page .xcm-home-map iframe{display:block;width:100%;min-height:430px;border:0}
@media (max-width:1024px){.xcm-home-page .xcm-home-contact-grid,.xcm-home-page .xcm-home-fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xcm-home-page .xcm-home-contact-item:nth-child(2){border-right:0}.xcm-home-page .xcm-home-contact-item:nth-child(1),.xcm-home-page .xcm-home-contact-item:nth-child(2){border-bottom:1px solid var(--xcm-line)}}
@media (max-width:768px){.xcm-home-page .xcm-home-hero .xcm-hero-media,.xcm-home-page .xcm-home-hero .xcm-hero-media img{min-height:320px}.xcm-home-page .xcm-home-contact-strip{margin-top:0}.xcm-home-page .xcm-home-contact-grid,.xcm-home-page .xcm-home-fleet-grid{grid-template-columns:1fr}.xcm-home-page .xcm-home-contact-grid{border-radius:0;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-left:0;border-right:0}.xcm-home-page .xcm-home-contact-item{border-right:0;border-bottom:1px solid var(--xcm-line)}.xcm-home-page .xcm-home-contact-item:last-child{border-bottom:0}.xcm-home-page .xcm-home-map iframe{min-height:340px}}
.xcm-home-page .xcm-home-rating-98{width:98%}
.xcm-home-page .xcm-home-rating-95{width:95%}
.xcm-home-page .xcm-hero-copy,.xcm-home-page .xcm-hero-panel,.xcm-home-page .xcm-hero-media,.xcm-home-page .xcm-card,.xcm-home-page .xcm-service-card,.xcm-home-page .xcm-project-card,.xcm-home-page .xcm-contact-panel{min-width:0}
.xcm-home-page .xcm-home-contact-item{display:flex;flex-direction:column;justify-content:center;min-height:124px}
.xcm-home-page .xcm-home-contact-item strong{min-height:22px}
.xcm-home-page .xcm-home-contact-item span,.xcm-home-page .xcm-home-contact-item a{overflow-wrap:anywhere}
.xcm-home-page .xcm-service-card{height:100%}
.xcm-home-page .xcm-service-body{justify-content:flex-start}
.xcm-home-page .xcm-service-body p{margin-bottom:20px}
.xcm-home-page .xcm-home-fleet-card{display:flex;flex-direction:column;min-height:100%}
.xcm-home-page .xcm-home-fleet-badge{align-self:flex-start}
.xcm-home-page .xcm-split .xcm-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.xcm-home-page .xcm-btn-row.xcm-center{justify-content:center}
.xcm-home-page .xcm-section-dark .xcm-card-dark{border-color:rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));box-shadow:0 18px 48px rgba(0,0,0,.22)}
.xcm-home-page .xcm-section-dark .xcm-card-dark .xcm-title-md,.xcm-home-page .xcm-section-dark .xcm-card-dark h3,.xcm-home-page .xcm-section-dark .xcm-card-dark strong{color:var(--xcm-white)}
.xcm-home-page .xcm-section-dark .xcm-card-dark p,.xcm-home-page .xcm-section-dark .xcm-card-dark span{color:rgba(255,255,255,.82)}
.xcm-home-page .xcm-section-dark .xcm-icon-box{background:var(--xcm-red);color:var(--xcm-white)}
.xcm-home-page .xcm-home-rating-top span{color:rgba(255,255,255,.9)}
.xcm-home-page .xcm-home-rating-top strong{color:var(--xcm-white);flex:0 0 auto}
.xcm-home-page .xcm-home-area-card{min-height:100%}
.xcm-home-page .xcm-home-area-card .xcm-icon-box{margin-bottom:14px}
.xcm-home-page .xcm-home-map iframe{vertical-align:middle}
@media (max-width:1024px){.xcm-home-page .xcm-split .xcm-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xcm-home-page .xcm-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){.xcm-home-page .xcm-grid-2,.xcm-home-page .xcm-grid-3,.xcm-home-page .xcm-grid-4,.xcm-home-page .xcm-split .xcm-metric-grid{grid-template-columns:1fr}.xcm-home-page .xcm-home-contact-item{min-height:auto;padding:18px 16px}.xcm-home-page .xcm-home-contact-item strong{min-height:0}.xcm-home-page .xcm-home-fleet-card,.xcm-home-page .xcm-card,.xcm-home-page .xcm-contact-card{min-height:auto}.xcm-home-page .xcm-home-rating-top{align-items:flex-start}.xcm-home-page .xcm-home-rating-top span{line-height:1.35}}
.xcm-home-page .xcm-section-dark .xcm-step{background:var(--xcm-white);color:var(--xcm-ink);border-color:rgba(255,255,255,.18)}
.xcm-home-page .xcm-section-dark .xcm-step .xcm-title-md,.xcm-home-page .xcm-section-dark .xcm-step h3{color:var(--xcm-navy)}
.xcm-home-page .xcm-section-dark .xcm-step p{color:var(--xcm-muted)}
.xcm-home-page .xcm-section-dark .xcm-step strong{color:var(--xcm-navy)}
.xcm-home-page .xcm-section-dark .xcm-step::before{background:var(--xcm-navy);color:var(--xcm-white)}
.xcm-home-page .xcm-section-dark .xcm-step::after{background:linear-gradient(90deg,rgba(177,18,38,.34),transparent)}
.xcm-home-page .xcm-steps{align-items:stretch}
.xcm-home-page .xcm-step{min-height:260px}
.xcm-home-page .xcm-step .xcm-title-md{margin-top:0}
@media (max-width:768px){.xcm-home-page .xcm-step{min-height:auto}}
.xcm-home-page .xcm-home-title-link{color:inherit;text-decoration:none}
.xcm-home-page .xcm-home-title-link:hover{color:var(--xcm-red);text-decoration:none}
.xcm-home-page .xcm-card-dark .xcm-home-title-link:hover,.xcm-home-page .xcm-section-dark .xcm-home-title-link:hover{color:#FFDCE2}
.xcm-home-page .xcm-home-post-card .xcm-title-md{margin-bottom:10px}
.xcm-home-page .xcm-home-post-card .xcm-project-body p{margin-bottom:18px}
