/* LANCO PREMIUM V7 — PRESENTATION ONLY
 * Loaded AFTER the original styles. No database, admin, routes or forms altered.
 * Layout targets: 320px phones to ultrawide monitors.
 */
:root{--l7-navy:#0a223a;--l7-navy2:#102e48;--l7-blue:#1768e5;--l7-sky:#71bcff;--l7-ink:#142f49;--l7-muted:#617991;--l7-line:#dee8f2;--l7-light:#f5f8fc}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{background:#fff;color:var(--l7-ink);overflow-x:clip}
body,body *{box-sizing:border-box}
body button,body a{-webkit-tap-highlight-color:transparent}
body :focus-visible{outline:3px solid #51a4ff;outline-offset:4px}
body img{max-width:100%}
body p{line-height:1.7}
.container{max-width:1290px;width:calc(100% - 88px)}
/* One compact sticky header, with a true viewport-height mobile navigation. */
.utility-bar{display:none!important}
.site-header{position:sticky;top:0;z-index:1050;background:rgba(8,29,49,.98);border-bottom:1px solid rgba(255,255,255,.09);box-shadow:0 8px 32px #05162519;isolation:isolate;transition:box-shadow .2s,background .2s}
.site-header.is-scrolled{background:rgba(8,29,49,.985);box-shadow:0 10px 32px #05162540}
.header-inner{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,2.2vw,36px)}
.brand{flex:0 0 auto;display:flex;align-items:center;min-width:0}.brand img{width:clamp(170px,15.3vw,210px);max-height:65px;object-fit:contain}
.site-header nav{gap:clamp(14px,1.65vw,28px);align-items:center;flex:0 1 auto}
.site-header nav a{font-size:13px;white-space:nowrap;font-weight:500;letter-spacing:.005em;color:#c4d5e6;text-decoration:none;transition:color .2s}
.site-header nav a:hover,.site-header nav a[aria-current]{color:#fff}
.site-header nav a[aria-current]:after{bottom:9px;background:var(--l7-sky);height:2px}
.header-call{white-space:nowrap;color:#e4f1ff;border-color:#ffffff26;padding-left:clamp(10px,2vw,28px);font-size:12px}
.header-call:hover{color:var(--l7-sky)}
.nav-quote{white-space:nowrap;background:var(--l7-blue);border:1px solid #4187f3;border-radius:9px;min-height:48px;padding:13px 19px;font-size:12px;box-shadow:0 5px 18px #0857d328;transition:background .2s,transform .2s}
.nav-quote:hover{background:#277cf7;transform:translateY(-1px)}
.menu-toggle{border:1px solid #ffffff35;border-radius:9px;padding:10px 13px!important;min-height:43px;gap:10px;color:#fff}
.menu-toggle[aria-expanded=true]{background:#164875;border-color:#6aa7ef}
.breadcrumbs{padding-top:14px;padding-bottom:14px}
/* Typography and spacing shared by the full public website. */
.reference-design .lanco-section-block{padding:clamp(60px,6.2vw,94px) 0}
.reference-design .lanco-section-title{margin:0 0 32px!important;text-align:left!important;max-width:810px}
.reference-design .lanco-section-title h2{font-size:clamp(31px,3.45vw,49px)!important;line-height:1.19!important;font-weight:700!important;letter-spacing:-.048em;max-width:810px;margin:0;color:var(--l7-ink)}
.reference-design .lanco-section-title .sub-text{margin-bottom:18px;color:var(--l7-blue);font-size:11px;letter-spacing:.13em}
.reference-design .lanco-section-title>p,.reference-design .lanco-section-title.text-center>p{font-size:14px;line-height:1.75;color:var(--l7-muted);margin:16px 0 0;max-width:680px}
.reference-design :is(.lanco-service-card,.lanco-project-card,.lanco-testi-card,.lanco-gallery-card){-webkit-backface-visibility:hidden;backface-visibility:hidden}
.reference-design :is(.lanco-service-card,.lanco-project-card,.lanco-testi-card,.lanco-gallery-card):hover{box-shadow:0 20px 42px #09264213;border-color:#afcbea}
/* Hero: keep original background video and CTA behavior. */
.reference-design .v6-hero{background:var(--l7-navy)}
.reference-design .v6-hero-shade{background:linear-gradient(90deg,#071e34fa 0%,#071e34e9 37%,#071e3485 73%,#071e3455),linear-gradient(0deg,#071e34d5,transparent 68%)}
.reference-design .v6-hero-layout{min-height:clamp(550px,46vw,670px);gap:clamp(24px,5vw,85px)}
.reference-design .v6-hero h1{font-size:clamp(46px,5.35vw,78px);letter-spacing:-.065em;line-height:1.12;max-width:850px}
.reference-design .v6-hero-legacyline{font-size:clamp(15px,1.3vw,19px);font-weight:700;max-width:590px;line-height:1.5}
.reference-design .v6-hero-intro{font-size:13px;line-height:1.85;max-width:570px}
.reference-design .v6-hero .lanco-hero-badge{font-size:10px;letter-spacing:.095em;color:#d0e8ff}
.reference-design .v6-hero .lanco-hero-actions a{border-radius:9px;min-height:50px;padding:14px 19px;font-size:12px}
.reference-design .v6-hero-detail{border-radius:16px;background:#133a5890}
.reference-design .v6-proof{padding:30px 0;background:#fff}
.reference-design .v6-proof .lanco-stat-card h3,.reference-design .v6-support-card strong{font-size:37px;font-weight:700;letter-spacing:-.05em}
.reference-design .v6-proof .lanco-stat-card p,.reference-design .v6-support-card span{font-size:12px;line-height:1.65}
.reference-design .v6-quote{padding:30px 0;background:var(--l7-light)}
.reference-design .v6-quote-panel{border-radius:17px;padding:29px 33px;box-shadow:0 12px 30px #07254406}
.reference-design .v6-quote-copy h3{font-size:26px}
.reference-design .v6-quote-form input,.reference-design .v6-quote-form select,.reference-design .v6-quote-form textarea{font-size:13px;border-radius:8px;background:#fff}
.reference-design .lanco-trust-strip{background:var(--l7-light)}
.reference-design .lanco-trust-intro h4{font-size:clamp(19px,2vw,26px);line-height:1.25;letter-spacing:-.04em}
/* Slider scaffolding: children stay content-sized, and every slide is a complete card. */
.reference-design .reference-carousel{display:block!important;overflow:hidden;padding:3px 2px 8px;margin-inline:-2px}
.reference-design .reference-carousel>.swiper-wrapper{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:0!important;min-height:0!important;height:auto!important;margin:0!important}
.reference-design .reference-carousel .swiper-slide{display:flex;flex-direction:column;flex-shrink:0;min-width:0;min-height:0!important;box-sizing:border-box;align-self:stretch;margin-top:0!important;transform:none}
.reference-design .reference-carousel .swiper-slide img{display:block}
.reference-design .reference-carousel>.swiper-pagination{position:relative;bottom:auto;left:auto;z-index:1;margin:22px auto 0;display:flex;align-items:center;justify-content:center;gap:5px;min-height:13px}
.reference-design .reference-carousel .swiper-pagination-bullet{opacity:.24;background:var(--l7-blue);width:6px;height:6px;margin:0 2px!important;transition:width .2s,opacity .2s}
.reference-design .reference-carousel .swiper-pagination-bullet-active{opacity:1;width:26px;border-radius:5px}
.reference-design .reference-carousel-tools{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}
.reference-design .reference-carousel-count{font-size:11px;color:#7891a7;font-weight:700;letter-spacing:.17em}
.reference-design .reference-carousel-buttons button{width:43px;height:43px;border-radius:11px;font-size:17px;transition:all .2s}
.reference-design .reference-carousel-buttons button:disabled{opacity:.32}
.reference-design .reference-carousel-buttons button:not(:disabled):hover{background:var(--l7-blue);color:#fff;border-color:var(--l7-blue)}
/* Services — image + content + clear call to action, no tall blank cards. */
.reference-design .lanco-services{background:var(--l7-light)}
.reference-design .lanco-services-grid{margin-top:31px;gap:21px}
.reference-design .lanco-service-card{background:#fff;border:1px solid #dce7f0;border-radius:17px;padding:0 22px 22px!important;min-height:0;height:auto!important;position:relative;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 7px 25px #0a284708}
.reference-design .reference-service-photo{height:205px!important;min-height:205px;margin:0 -22px 23px!important;overflow:hidden;background:#ebf1f7}
.reference-design .reference-service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.reference-design .lanco-service-card:hover .reference-service-photo img{transform:scale(1.055)}
.reference-design .lanco-service-icon{width:47px;height:47px;top:181px;left:20px;border-radius:11px;background:var(--l7-blue);box-shadow:0 9px 25px #0b55c93d;display:flex;align-items:center;justify-content:center}
.reference-design .lanco-service-icon i{font-size:19px;color:#fff}
.reference-design .lanco-service-card .v6-card-number{opacity:.62;font-size:12px;right:19px;top:220px}
.reference-design .lanco-service-card h4{font-size:22px!important;line-height:1.25!important;margin:16px 0 10px;letter-spacing:-.045em;color:var(--l7-ink)}
.reference-design .lanco-service-card p{font-size:13px!important;line-height:1.7!important;min-height:0!important;margin:0!important;color:var(--l7-muted);flex:1 0 auto}
.reference-design .lanco-service-card .lanco-service-link{margin:18px 0 0!important;padding-top:15px;border-top:1px solid var(--l7-line);display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;flex:0 0 auto}
/* Projects — generous photographs but an intentionally compact card body. */
.reference-design .lanco-projects{background:#fff}
.reference-design .lanco-projects-grid{gap:22px;margin-top:32px}
.reference-design .lanco-project-card{padding:0!important;border-radius:17px;background:#fff;min-height:0;height:auto!important;display:flex;flex-direction:column;border:1px solid var(--l7-line);box-shadow:0 7px 28px #0a284708}
.reference-design .lanco-project-thumb{height:265px;flex-shrink:0;background:#e8eff6}
.reference-design .lanco-project-thumb img{width:100%;height:100%;object-fit:cover;object-position:center}
.reference-design .lanco-project-content{padding:24px 26px 25px;display:flex;flex-direction:column;flex:1}
.reference-design .lanco-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}
.reference-design .lanco-chip{font-size:10px;letter-spacing:.04em;border-radius:5px;padding:6px 10px}
.reference-design .lanco-project-content h4{font-size:22px!important;line-height:1.32;letter-spacing:-.045em;margin:0 0 10px}
.reference-design .lanco-project-content p{font-size:13px;line-height:1.7;margin:0!important;color:var(--l7-muted)}
.reference-design .lanco-project-link{margin-top:auto;padding-top:20px;font-size:12px}
/* Gallery: repaired markup is ONE anchor per slide. Each photo fills its slide. */
.reference-design .lanco-gallery{background:var(--l7-navy);color:#fff}
.reference-design .lanco-gallery .lanco-section-title h2{color:#fff!important}
.reference-design .lanco-gallery .lanco-section-title>p{color:#a5bed5}
.reference-design .lanco-gallery .sub-text{color:var(--l7-sky)}
.reference-design .lanco-gallery-grid{gap:18px;margin-top:28px}
.reference-design .lanco-gallery-card,.reference-design .reference-carousel .lanco-gallery-card{position:relative;display:block!important;height:325px!important;min-height:0!important;background:#173550;border:1px solid #ffffff21;border-radius:15px;padding:0!important;overflow:hidden}
.reference-design .lanco-gallery-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s ease}
.reference-design .lanco-gallery-card:hover img{transform:scale(1.07)}
.reference-design .lanco-gallery-card::after{display:none}
.reference-design .lanco-gallery-overlay{position:absolute;inset:auto 0 0;background:linear-gradient(0deg,#071d34f5,#071d34a6 45%,transparent);padding:48px 19px 20px;pointer-events:none}
.reference-design .lanco-gallery-overlay h5{font-size:16px;font-weight:700;line-height:1.3;margin:0 0 4px;color:#fff}
.reference-design .lanco-gallery-overlay span{font-size:11px;color:#d3e0ec}
.reference-design .lanco-gallery .reference-carousel .swiper-pagination-bullet{background:#9fcdf8}
.reference-design .lanco-gallery .reference-carousel-count{color:#c4d9eb}
.reference-design .lanco-gallery .reference-carousel-buttons button{border-color:#8bb2d555;color:#d9eaff}
/* Testimonials — quote and name stay together; no giant hollow space. */
.reference-design .lanco-testimonials{background:#f6f9fc}
.reference-design .lanco-testi-grid{gap:20px;margin-top:30px}
.reference-design .lanco-testi-card{padding:28px!important;min-height:0!important;height:auto!important;display:flex;flex-direction:column;border-radius:17px;background:#fff;border:1px solid var(--l7-line);box-shadow:0 7px 23px #102c4707}
.reference-design .lanco-testi-stars{margin-bottom:18px;color:var(--l7-blue)}
.reference-design .lanco-testi-stars i{font-size:12px;margin-right:4px}
.reference-design .lanco-testi-card>p{font-size:15px;line-height:1.75;min-height:0!important;margin:0 0 23px!important;color:#375570;flex:1}
.reference-design .lanco-testi-user{margin-top:auto;padding-top:18px;border-color:var(--l7-line);gap:12px}
.reference-design .lanco-user-avatar{width:44px;height:44px;min-width:44px;font-size:12px;border-radius:50%;display:grid;place-items:center}
.reference-design .lanco-testi-user h5{font-size:13px;margin-bottom:3px}
.reference-design .lanco-testi-user span{font-size:11px}
/* Video: fixed media ratio, no multi-hundred pixel blank cards. */
.reference-design .lanco-video-showcase{background:#fff}
.reference-design .lanco-video-showcase-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:start;margin-top:28px}
.reference-design .lanco-video-showcase-card{border-radius:16px;overflow:hidden;background:var(--l7-navy);border:0}
.reference-design .lanco-video-showcase-main{min-height:0;display:flex;flex-direction:column;background:var(--l7-navy)}
.reference-design .lanco-video-showcase-main video{height:auto!important;max-height:440px;aspect-ratio:16/10;width:100%;object-fit:contain;background:#061829;display:block}
.reference-design .lanco-video-showcase-content{padding:25px 27px 30px}
.reference-design .lanco-video-showcase-content h3{font-size:23px!important;line-height:1.32;margin:11px 0}
.reference-design .lanco-video-showcase-content p{font-size:12px;line-height:1.75;margin:0 0 18px}
.reference-design .lanco-video-mini-stack{display:flex;flex-direction:column;gap:15px}
.reference-design .lanco-video-mini{display:grid;grid-template-columns:46% 1fr;align-items:stretch;min-height:0!important;overflow:hidden;background:var(--l7-light);border:1px solid var(--l7-line);border-radius:14px}
.reference-design .lanco-video-mini-thumb{height:auto!important;aspect-ratio:1.22;min-width:0;background:#081e34}
.reference-design .lanco-video-mini-thumb video{width:100%;height:100%;aspect-ratio:1.22;object-fit:contain;background:#081e34}
.reference-design .lanco-video-mini-content{padding:18px!important;min-width:0}
.reference-design .lanco-video-mini-content h4{font-size:16px!important;line-height:1.35;margin:0 0 8px;color:var(--l7-ink)}
.reference-design .lanco-video-mini-content p{font-size:11px!important;line-height:1.6;margin:0;color:var(--l7-muted)}
.reference-extra-videos{background:var(--l7-light);padding:65px 0}
.reference-extra-videos h2{font-size:clamp(27px,2.6vw,38px);letter-spacing:-.04em}
.reference-extra-videos .reference-video-grid{margin-top:28px;gap:18px}
.reference-extra-videos .reference-video-card{border:1px solid var(--l7-line);border-radius:15px;display:flex;flex-direction:column;overflow:hidden;height:auto!important;min-height:0!important;box-shadow:0 8px 24px #09264208}
.reference-extra-videos .reference-video-card video{aspect-ratio:16/10;height:auto!important;max-height:260px;object-fit:contain;background:#071d33}
.reference-extra-videos .reference-video-card h3{margin:0;padding:15px 19px!important;font-size:14px}
/* About, process, why choose, contact cards */
.reference-design .lanco-about{background:#fff}
.reference-design .lanco-about-image-main,.reference-design .lanco-about-image-float{border-radius:17px;overflow:hidden}
.reference-design .lanco-about-image-main img{object-fit:cover}
.reference-design .lanco-why{background:var(--l7-navy)}
.reference-design .lanco-why .lanco-section-title h2{color:#fff!important}
.reference-design .lanco-why .lanco-section-title>p{color:#afc5db}
.reference-design .lanco-why .sub-text{color:#96cfff}
.reference-design .lanco-why-grid,.reference-design .lanco-process-grid{gap:19px;margin-top:31px}
.reference-design .lanco-why-card,.reference-design .lanco-process-card{border-radius:16px;padding:27px!important;min-height:0!important;height:auto!important}
.reference-design .lanco-why-card{background:#ffffff0c;border-color:#ffffff23;color:#fff;box-shadow:none}
.reference-design .lanco-why-card h4{color:#fff;font-size:21px}
.reference-design .lanco-why-card p{color:#b0c9de;line-height:1.7;font-size:13px}
.reference-design .lanco-process{background:#fff}
.reference-design .lanco-process-card h4{font-size:21px}
.reference-design .lanco-process-card p{font-size:13px;line-height:1.7}
.reference-design .lanco-contact{background:var(--l7-light)}
.reference-design .lanco-contact-grid{gap:20px}
.reference-design .lanco-contact-card{min-height:0;border-radius:16px;padding:30px!important}
.reference-design .lanco-contact-form input,.reference-design .lanco-contact-form select,.reference-design .lanco-contact-form textarea{border-radius:8px;min-width:0}
/* Sitewide media cards on services, blog, project detail pages. */
.reference-design :is(.lpp-project-card,.lsvx-service-card,.lab-story-card,.lct-info-card){border-radius:16px;overflow:hidden}
.reference-design :is(.lpp-project-image img,.lsvx-service-image img){object-fit:cover}
.reference-added-content{padding:70px 0;background:#fff}
.reference-added-content h2{font-size:clamp(28px,3vw,42px);letter-spacing:-.045em}
.blog-card,.service-card,.gallery-grid figure,.review-grid figure{border-radius:16px;overflow:hidden}
.blog-info h3{line-height:1.35}
.floating-contact{right:24px;bottom:24px;background:#138c59;color:#fff;border-radius:99px;padding:14px 18px;gap:10px;font-weight:700;font-size:12px;z-index:1005;box-shadow:0 12px 35px #06472736}
.floating-contact:hover{background:#0b7649;color:#fff}
.lanco-footer-pro{background:#071f35}
.footer-policy{background:#071f35}
/* Tablet navigation + two-column content */
@media(max-width:1199px){
 .container{width:calc(100% - 56px)}
 .site-header nav{gap:15px}.site-header nav a{font-size:11px}
 .header-call{padding-left:12px;font-size:11px}
 .nav-quote{padding:11px 14px;font-size:11px}
 .reference-design .lanco-video-showcase-wrap{grid-template-columns:1fr}
 .reference-design .lanco-video-mini-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
 .reference-design .lanco-video-mini{display:flex;flex-direction:column}
 .reference-design .lanco-video-mini-thumb,.reference-design .lanco-video-mini-thumb video{aspect-ratio:16/10}
 .reference-design .lanco-video-mini-content{padding:16px!important}
 .reference-design .lanco-video-mini-content h4{font-size:15px!important}
 .reference-design .reference-service-photo{height:195px!important;min-height:195px}
 .reference-design .lanco-service-icon{top:171px}
}
@media(max-width:991px){
 .container{width:calc(100% - 48px)}
 .site-header{position:sticky;top:0}
 .header-inner{min-height:75px;gap:15px}
 .site-header nav{display:none!important;position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100dvh - 75px);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;align-items:stretch;background:#0a223a;gap:0;padding:13px 25px 25px;border-top:1px solid #ffffff22;box-shadow:0 24px 45px #05192a55}
 .site-header nav.open{display:flex!important}
 .site-header nav a{display:block;width:100%;padding:14px 3px;font-size:14px;line-height:1.4;border-bottom:1px solid #ffffff15}
 .menu-toggle{display:inline-flex!important;margin-left:auto;order:3;align-items:center;justify-content:center}
 .header-call{margin-left:auto;padding:0;border:0}
 .nav-quote{display:none!important}
 .reference-design .v6-hero-layout{min-height:520px;grid-template-columns:minmax(0,1fr) 190px;gap:18px}
 .reference-design .v6-hero h1{font-size:clamp(44px,5.6vw,60px)}
 .reference-design .lanco-section-block{padding:65px 0}
 .reference-design .lanco-section-title h2{font-size:38px!important}
 .reference-design .v6-quote-panel{grid-template-columns:1fr}
 .reference-design .v6-quote-copy{display:block}
 .reference-design .v6-quote-form{grid-template-columns:repeat(3,minmax(0,1fr))}
 .reference-design .lanco-project-thumb{height:235px}
 .reference-design .lanco-gallery-card,.reference-design .reference-carousel .lanco-gallery-card{height:290px!important}
 .reference-design .lanco-testi-card{padding:23px!important}
 .reference-extra-videos .reference-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 html{scroll-padding-top:82px}
 .container{width:calc(100% - 38px)}
 .header-inner{min-height:70px}
 .site-header nav{max-height:calc(100dvh - 70px)}
 .header-call{display:none!important}
 .brand img{width:180px}
 .reference-design .lanco-section-block{padding:55px 0}
 .reference-design .lanco-section-title{margin-bottom:25px!important}
 .reference-design .lanco-section-title h2{font-size:clamp(28px,7.25vw,39px)!important;line-height:1.23!important}
 .reference-design .lanco-section-title>p,.reference-design .lanco-section-title.text-center>p{font-size:13px}
 .reference-design .v6-hero-layout{grid-template-columns:1fr;min-height:0;padding:59px 0 52px}
 .reference-design .v6-hero-detail{display:none}
 .reference-design .v6-hero h1{font-size:clamp(43px,9vw,64px);margin:22px 0 20px}
 .reference-design .v6-hero-legacyline{font-size:16px}
 .reference-design .v6-hero-intro{font-size:12px}
 .reference-design .v6-hero .lanco-hero-actions a{flex:1 1 175px;justify-content:center}
 .reference-design .v6-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 15px}
 .reference-design .v6-proof-grid>*{border:0;padding:0}
 .reference-design .v6-proof .lanco-stat-card h3,.reference-design .v6-support-card strong{font-size:30px}
 .reference-design .v6-proof .lanco-stat-card p,.reference-design .v6-support-card span{font-size:11px}
 .reference-design .v6-quote-panel{padding:24px}
 .reference-design .v6-quote-form{grid-template-columns:repeat(2,minmax(0,1fr))}
 .reference-design .v6-quote-form .form-group:last-of-type,.reference-design .v6-quote-form button{grid-column:1/-1}
 .reference-design .lanco-services-grid,.reference-design .lanco-projects-grid,.reference-design .lanco-gallery-grid,.reference-design .lanco-testi-grid{margin-top:24px}
 .reference-design .reference-service-photo{height:225px!important;min-height:225px}
 .reference-design .lanco-service-icon{top:201px}
 .reference-design .lanco-service-card h4{font-size:22px!important}
 .reference-design .lanco-project-thumb{height:255px}
 .reference-design .lanco-project-content{padding:22px}
 .reference-design .lanco-gallery-card,.reference-design .reference-carousel .lanco-gallery-card{height:340px!important}
 .reference-design .lanco-video-mini-stack{grid-template-columns:1fr}
 .reference-design .lanco-video-mini{display:grid;grid-template-columns:43% 1fr}
 .reference-design .lanco-video-mini-thumb,.reference-design .lanco-video-mini-thumb video{aspect-ratio:1.2}
 .reference-design .lanco-testi-card{padding:25px!important}
 .reference-design .lanco-testi-card>p{font-size:14px}
 .reference-design .lanco-why-grid,.reference-design .lanco-process-grid,.reference-design .lanco-contact-grid{grid-template-columns:1fr}
 .reference-design .lanco-why-card,.reference-design .lanco-process-card,.reference-design .lanco-contact-card{padding:25px!important}
 .reference-extra-videos{padding:52px 0}
 .reference-extra-videos .reference-video-grid{grid-template-columns:1fr}
 .reference-extra-videos .reference-video-card video{max-height:none}
 .floating-contact{bottom:18px;right:16px;padding:13px 16px}
}
@media(max-width:479px){
 .container{width:calc(100% - 32px)}
 .header-inner{min-height:66px}
 .site-header nav{max-height:calc(100dvh - 66px)}
 .brand img{width:165px}
 .menu-toggle{font-size:11px;padding:9px 11px!important}
 .reference-design .v6-hero-layout{padding-block:42px 40px}
 .reference-design .v6-hero h1{font-size:clamp(39px,10.5vw,48px);line-height:1.15}
 .reference-design .v6-hero-legacyline{font-size:14px}
 .reference-design .v6-hero .lanco-hero-badge{font-size:9px}
 .reference-design .v6-hero .lanco-hero-actions a{flex-basis:100%;min-height:47px;font-size:11px}
 .reference-design .v6-proof{padding:25px 0}
 .reference-design .v6-quote-form{grid-template-columns:1fr}
 .reference-design .v6-quote-form .form-group:last-of-type,.reference-design .v6-quote-form button{grid-column:auto}
 .reference-design .v6-quote-copy h3{font-size:25px}
 .reference-design .lanco-section-title h2{font-size:31px!important}
 .reference-design .reference-service-photo{height:206px!important;min-height:206px}
 .reference-design .lanco-service-icon{top:181px}
 .reference-design .lanco-project-thumb{height:230px}
 .reference-design .lanco-gallery-card,.reference-design .reference-carousel .lanco-gallery-card{height:330px!important}
 .reference-design .lanco-video-mini{display:flex;flex-direction:column}
 .reference-design .lanco-video-mini-thumb,.reference-design .lanco-video-mini-thumb video{aspect-ratio:16/10}
 .reference-design .lanco-video-mini-content{padding:17px!important}
 .reference-design .lanco-video-showcase-content{padding:23px}
 .reference-design .lanco-video-showcase-content h3{font-size:22px!important}
 .reference-design .lanco-about-image-main{height:320px}
 .reference-design .reference-carousel-buttons button{width:39px;height:39px}
 .reference-design .lanco-testi-card{padding:24px!important}
 .page-intro h1{font-size:clamp(32px,10vw,41px)}
 .floating-contact{font-size:11px;padding:12px 14px}
}
@media(max-width:359px){.brand img{width:145px}.container{width:calc(100% - 28px)}.reference-design .lanco-section-title h2{font-size:28px!important}.reference-design .v6-hero h1{font-size:37px}.reference-design .lanco-gallery-card,.reference-design .reference-carousel .lanco-gallery-card{height:285px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.site-header,.nav-quote,.reference-design .lanco-gallery-card img,.reference-design .reference-service-photo img{transition:none!important}}
/* Final card integrity: the media number stays a small badge, never a full-width bar. */
.reference-design .lanco-service-card .v6-card-number{left:auto!important;right:13px!important;top:14px!important;width:auto!important;bottom:auto!important;padding:6px 9px!important;background:#0a223bc9;color:#fff;font-size:11px;opacity:1;border-radius:6px}
/* Native video thumbnails should never inherit viewport-sized slide heights. */
.reference-extra-videos .reference-video-grid .reference-video-card,
.reference-extra-videos .reference-video-grid .reference-video-card.swiper-slide{height:fit-content!important;max-height:365px!important;min-height:0!important;align-self:flex-start!important;justify-content:flex-start!important}

/* Keep carousel arrows accessible without colliding with the fixed WhatsApp control. */
@media(min-width:768px){.reference-design .reference-carousel-buttons{margin-right:135px}}
@media(max-width:767px){.reference-design .reference-carousel-tools{justify-content:flex-start;gap:18px}.reference-design .reference-carousel-buttons{margin-left:0;margin-right:0}.reference-design .reference-carousel-buttons button{width:39px;height:39px}}


/* LANCO V9 — "More site videos" swiper height / blank-gap repair.
   These cards are rendered outside .reference-design, so the generic carousel
   layout rules scoped to .reference-design did not match this section. */
.reference-extra-videos{
  padding-block:clamp(48px,5vw,72px);
  overflow:hidden;
}
.reference-extra-videos .container{min-width:0}
.reference-extra-videos h2{margin:0 0 24px;line-height:1.2}
/* Fallback when JavaScript is unavailable: clean native responsive grid. */
.reference-extra-videos .reference-video-grid:not(.swiper){
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:0;
  align-items:start;
}
/* Swiper turns the original grid into a track; never keep CSS Grid here. */
.reference-extra-videos .reference-video-grid.swiper{
  display:block!important;
  grid-template-columns:none!important;
  width:100%;min-width:0;
  height:auto!important;min-height:0!important;
  margin-top:0;
  padding:3px 2px 8px;
  overflow:hidden;
}
.reference-extra-videos .reference-video-grid.swiper>.swiper-wrapper{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  gap:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
}
.reference-extra-videos .reference-video-grid .reference-video-card,
.reference-extra-videos .reference-video-grid .reference-video-card.swiper-slide{
  display:flex!important;
  flex-direction:column;
  flex-shrink:0;
  justify-content:flex-start!important;
  align-self:stretch!important;
  box-sizing:border-box;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin-top:0!important;
  background:#fff;
  overflow:hidden;
}
.reference-extra-videos .reference-video-card video{
  display:block;
  width:100%;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:16/10;
  object-fit:contain;
  background:#081e34;
  flex:0 0 auto;
}
.reference-extra-videos .reference-video-card h3{
  flex:0 0 auto;
  min-height:0!important;
  margin:0!important;
  padding:14px 17px!important;
  font-size:14px;
  line-height:1.4;
}
.reference-extra-videos .reference-video-grid.swiper>.swiper-pagination{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:100%;height:auto;min-height:12px;
  display:flex!important;
  justify-content:center;
  align-items:center;
  gap:6px;
  margin:20px 0 0!important;
  padding:0;
  z-index:1;
}
.reference-extra-videos .reference-video-grid .swiper-pagination-bullet{
  width:7px;height:7px;
  margin:0!important;
  flex:0 0 auto;
  background:#2168dc;
  opacity:.25;
}
.reference-extra-videos .reference-video-grid .swiper-pagination-bullet-active{
  width:26px;
  border-radius:10px;
  opacity:1;
}
.reference-extra-videos .reference-carousel-tools{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  min-height:44px;
  margin-top:14px!important;
}
.reference-extra-videos .reference-carousel-count{
  color:#7e93ab;
  font-size:11px;
  letter-spacing:.15em;
  font-weight:600;
}
.reference-extra-videos .reference-carousel-buttons{display:flex;gap:9px}
.reference-extra-videos .reference-carousel-buttons button{
  display:grid;place-items:center;
  background:#fff;color:#1768e5;
  width:44px;height:44px;
  border:1px solid #cfdfed;
  border-radius:10px;
  font-size:19px;
  line-height:1;
}
.reference-extra-videos .reference-carousel-buttons button:disabled{opacity:.35;cursor:not-allowed}
.reference-extra-videos .reference-carousel-buttons button:not(:disabled):hover{background:#1768e5;color:#fff}
@media(min-width:768px){
  .reference-extra-videos .reference-carousel-buttons{margin-right:125px}
}
@media(max-width:999px){
  .reference-extra-videos .reference-video-grid:not(.swiper){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:599px){
  .reference-extra-videos .reference-video-grid:not(.swiper){grid-template-columns:1fr}
  .reference-extra-videos .reference-video-card video{aspect-ratio:16/9}
  .reference-extra-videos .reference-video-card h3{padding:13px 15px!important}
  .reference-extra-videos .reference-carousel-tools{margin-top:12px!important}
  .reference-extra-videos .reference-carousel-buttons{margin-right:0}
}
