/* MRL Premium Interaction Layer | additive, content-safe, 2026-10-16 */
:root{--mrlp-blue:#087dbd;--mrlp-red:#e31e2d;--mrlp-navy:#072b45;--mrlp-ink:#17394d;--mrlp-line:#cddfe8;--mrlp-ease:cubic-bezier(.2,.72,.2,1)}
html{scroll-behavior:smooth}body{font-kerning:normal;text-rendering:optimizeLegibility}
/* Consistent section rhythm without overriding approved imagery. */
.boxed_wrapper>section,.boxed_wrapper main>section,main>section{position:relative;isolation:isolate}
.boxed_wrapper>section:nth-of-type(even):not([class*=slider]):not([class*=breadcrumb]):not([class*=footer]),main>section:nth-of-type(even):not([class*=hero]){background-color:#f5f9fb}
.sec-title h2,.sec-title.style1 h2,.sec-title.style2 h2,.mrl-section h2{letter-spacing:0;text-wrap:balance}
.sec-title:after{content:"";display:block;width:54px;height:3px;margin:15px auto 0;background:linear-gradient(90deg,var(--mrlp-red) 0 42%,var(--mrlp-blue) 42%);transform-origin:left;transition:transform .55s var(--mrlp-ease)}
.sec-title:hover:after{transform:scaleX(1.45)}
/* Precision edge, elevation and depth for established card patterns. */
.mrl-premium-card{--rx:0deg;--ry:0deg;--lift:0px;position:relative;transform:perspective(900px) translateY(var(--lift)) rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;backface-visibility:hidden;transition:transform .42s var(--mrlp-ease),box-shadow .42s ease,border-color .3s ease;will-change:transform}
.mrl-premium-card:before{content:"";position:absolute;z-index:4;inset:0;pointer-events:none;border-radius:inherit;border:1px solid transparent;background:linear-gradient(115deg,rgba(255,255,255,.7),transparent 28%,transparent 70%,rgba(8,125,189,.16)) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease}
.mrl-premium-card:hover,.mrl-premium-card:focus-within{--lift:-7px;box-shadow:0 22px 42px rgba(7,43,69,.15)!important;border-color:rgba(8,125,189,.42)!important}
.mrl-premium-card:hover:before,.mrl-premium-card:focus-within:before{opacity:1}
.mrl-premium-card img,.mrl-premium-card .icon,.mrl-premium-card [class*=logo]{transition:transform .42s var(--mrlp-ease),filter .35s ease}
.mrl-premium-card:hover img,.mrl-premium-card:focus-within img{transform:translateZ(12px) scale(1.025)}
.mrl-premium-card:hover .icon,.mrl-premium-card:focus-within .icon{transform:translateZ(18px)}
/* Progressive scroll reveal; baseline remains visible before JS initializes. */
.mrl-premium-ready .mrl-reveal{opacity:0;transform:translateY(24px);transition:opacity .62s ease,transform .68s var(--mrlp-ease);transition-delay:var(--reveal-delay,0ms)}
.mrl-premium-ready .mrl-reveal.is-visible{opacity:1;transform:none}
.mrl-premium-ready .mrl-reveal-image{clip-path:inset(0 10% 0 0);transition:clip-path .8s var(--mrlp-ease),opacity .6s ease,transform .7s var(--mrlp-ease)}
.mrl-premium-ready .mrl-reveal-image.is-visible{clip-path:inset(0)}
/* Hero and banner depth, preserving slider/video behavior. */
.slider-home-page,.main-slider,.breadcrumb-area,.breadcrumb-style2-area,.profile-hero,[class*=hero]{overflow:hidden}
.slider-home-page video,.slider-home-page img,.main-slider img,[class*=hero] img{transform:scale(1.006);transition:transform 1.2s var(--mrlp-ease),filter .8s ease}
.slider-home-page:hover video,.main-slider:hover img,[class*=hero]:hover img{transform:scale(1.025)}
.slider-home-page h1,.main-slider h1,[class*=hero] h1{filter:drop-shadow(0 6px 20px rgba(0,0,0,.2))}
/* Unified buttons and accessible focus. */
a.btn-one,.theme-btn,.mrl-btn,.profile-btn,.readmore-button a,button[type=submit],input[type=submit]{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .3s ease,background-color .3s ease,border-color .3s ease!important}
a.btn-one:hover,.theme-btn:hover,.mrl-btn:hover,.profile-btn:hover,.readmore-button a:hover,button[type=submit]:hover,input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(7,43,69,.18)}
a.btn-one i,.theme-btn i,.mrl-btn i,.profile-btn i,.readmore-button a i{transition:transform .25s ease}a.btn-one:hover i,.theme-btn:hover i,.mrl-btn:hover i,.profile-btn:hover i,.readmore-button a:hover i{transform:translateX(3px)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid rgba(8,125,189,.42)!important;outline-offset:3px!important}
/* Forms remain functionally untouched. */
form input:not([type=checkbox]):not([type=radio]),form select,form textarea{transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease}
form input:focus,form select:focus,form textarea:focus{border-color:var(--mrlp-blue)!important;box-shadow:0 0 0 4px rgba(8,125,189,.1)!important;background-color:#fff!important}
/* Images, galleries, clients and product presentation. */
.gallery-item,.single-project-style1,.project-style1_single,[class*=gallery] figure,.client-logo,.single-client-box{overflow:hidden}
.gallery-item img,.single-project-style1 img,.project-style1_single img,[class*=gallery] figure img,.client-logo img,.single-client-box img{transition:transform .55s var(--mrlp-ease),filter .4s ease}
.gallery-item:hover img,.single-project-style1:hover img,.project-style1_single:hover img,[class*=gallery] figure:hover img{transform:scale(1.055);filter:saturate(1.05) contrast(1.03)}
.client-logo:hover img,.single-client-box:hover img{transform:scale(1.05);filter:none}
/* Timeline/milestone precision treatment. */
.timeline-area,.container-mile,[class*=milestone]{position:relative}
.timeline-area:before,.container-mile:before{box-shadow:0 0 18px rgba(8,125,189,.18)}
.timeline-area [class*=year],.container-mile [class*=year]{font-variant-numeric:tabular-nums;text-shadow:0 5px 18px rgba(7,43,69,.12)}
/* Video framing without touching playback. */
.video-container,.video-box,[class*=video-holder]{position:relative;box-shadow:0 24px 52px rgba(7,43,69,.18);border:1px solid rgba(8,125,189,.18);overflow:hidden}
.video-container:after,.video-box:after,[class*=video-holder]:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
/* Footer lighter and more dimensional without content changes. */
.mrl-site-footer{box-shadow:inset 0 6px 0 rgba(8,125,189,.85),0 -18px 46px rgba(7,43,69,.1)}
.mrl-site-footer a{transition:color .25s ease,transform .25s ease,background-color .25s ease}.mrl-site-footer li>a:hover{transform:translateX(3px)}
.mrl-footer-social a:hover{transform:translateY(-3px) scale(1.04)}
/* Stable responsive behavior. */
img,video,iframe{max-width:100%}body{overflow-x:clip}.mrl-premium-card{min-width:0}
@media(max-width:991px){.mrl-premium-card{transform:none!important;will-change:auto}.mrl-premium-card:hover,.mrl-premium-card:focus-within{transform:translateY(-4px)!important}.mrl-premium-ready .mrl-reveal{transform:translateY(16px)}}
@media(max-width:575px){.mrl-premium-card:hover,.mrl-premium-card:focus-within{transform:none!important}.mrl-premium-ready .mrl-reveal{transform:translateY(12px)}.sec-title:after{margin-top:11px}}
@media(hover:none),(pointer:coarse){.mrl-premium-card{transform:none!important;will-change:auto}.mrl-premium-card:hover{--lift:0px}.mrl-premium-card:hover img{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mrl-premium-card,.mrl-premium-card *,a,button,input,select,textarea,.mrl-reveal,.mrl-reveal-image{animation:none!important;transition-duration:.01ms!important;transition-delay:0ms!important}.mrl-premium-ready .mrl-reveal{opacity:1!important;transform:none!important}.mrl-premium-ready .mrl-reveal-image{clip-path:none!important}.slider-home-page video,.slider-home-page img,.main-slider img,[class*=hero] img{transform:none!important}}
/* Client review v2: high-contrast unit labels, calm motion and uncropped hero video. */
.mrl-home .locations-content-box .mrl-unit-identity small,
.mrl-home .locations-content-box .mrl-unit-identity strong,
.mrl-home .container-mile .content.bg-mile-blue .mrl-unit-identity small,
.mrl-home .container-mile .content.bg-mile-blue .mrl-unit-identity strong,
.mrl-home .service-style2-area .single-service-style2.active .mrl-unit-identity small,
.mrl-home .service-style2-area .single-service-style2.active .mrl-unit-identity strong,
.mrl-home .service-style2-area .single-service-style2:hover .mrl-unit-identity small,
.mrl-home .service-style2-area .single-service-style2:hover .mrl-unit-identity strong{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.2)!important}
.mrl-home .locations-content-box .mrl-unit-identity small,
.mrl-home .container-mile .content.bg-mile-blue .mrl-unit-identity small{color:#d8ebf5!important;opacity:1!important}
.mrl-home .locations-content-box .mrl-unit-identity em,
.mrl-home .container-mile .content.bg-mile-blue .mrl-unit-identity em{color:#fff!important;background:#087dbd!important;border-left-color:#e31e2d!important}
.mrl-premium-card{--rx:0deg!important;--ry:0deg!important;transform:translate3d(0,var(--lift),0)!important;transition:transform .58s cubic-bezier(.22,.61,.36,1),box-shadow .58s ease,border-color .42s ease!important;will-change:auto!important}
.mrl-premium-card:hover,.mrl-premium-card:focus-within{--lift:-4px!important}
.mrl-premium-card:hover img,.mrl-premium-card:focus-within img{transform:scale(1.012)!important}
.mrl-premium-card:hover .icon,.mrl-premium-card:focus-within .icon{transform:translateY(-2px)!important}
.mrl-premium-ready .mrl-reveal{transform:translateY(10px)!important;transition:opacity .78s ease,transform .82s cubic-bezier(.22,.61,.36,1)!important;transition-delay:var(--reveal-delay,0ms)!important}
.mrl-premium-ready .mrl-reveal.is-visible{transform:none!important}
.wow{animation-timing-function:cubic-bezier(.22,.61,.36,1)!important}
.mrl-home .slider-home-page,
.mrl-home .slider-home-page .video-container{width:100vw!important;max-width:none!important;height:clamp(360px,56.25vw,810px)!important;min-height:0!important;max-height:810px!important;margin-left:calc(50% - 50vw)!important;background:#061e2c!important;overflow:hidden!important}
.mrl-home .slider-home-page .video-container{position:relative!important;margin-left:0!important}
.mrl-home .slider-home-page video,
.mrl-home .slider-home-page .mrl-hero-video-file{
 position:absolute!important;top:50%!important;left:50%!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;object-fit:contain!important;object-position:center center!important;transform:translate(-50%,-50%)!important;filter:none!important;background:#061e2c!important
}
.mrl-home .slider-home-page:hover video,
.mrl-home .slider-home-page:focus-within video{transform:translate(-50%,-50%)!important}
@media(max-width:767px){.mrl-home .slider-home-page,.mrl-home .slider-home-page .video-container{height:clamp(260px,56.25vw,430px)!important}}
