:root{--blue:#0054b8;--blue2:#074da6;--navy:#101d32;--gold:#f9b515;--ink:#141f33;--muted:#677386;--soft:#f7fbff;--line:#e4edf7;--shadow:0 12px 28px rgba(0,36,86,.10);--font:Inter,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:#fff;overflow-x:hidden}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{max-width:1200px;margin:auto;padding:0 28px}.topbar{height:36px;background:#0652ae;color:#fff;font-size:13px;font-weight:600}.topbar-row{height:36px;display:flex;align-items:center;justify-content:space-between;gap:18px}.top-social{display:flex;gap:14px;font-weight:600}.site-header{background:#fff;box-shadow:0 4px 18px rgba(10,30,70,.08);position:sticky;top:0;z-index:100}.header-row{height:94px;display:flex;align-items:center;justify-content:space-between}.brand img{width:148px;height:78px;object-fit:contain}.menu{display:flex;align-items:center;gap:31px;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.01em}.menu>a,.mega>a{padding:38px 0;position:relative}.menu .active{color:var(--blue)}.menu .active:after{content:'';position:absolute;left:0;right:0;bottom:26px;height:2px;background:var(--blue)}.nav-quote{background:var(--gold)!important;color:#111!important;padding:14px 21px!important}.mobile-toggle{display:none;border:0;background:var(--blue);color:#fff;padding:9px 12px;font-size:21px}.mega{position:relative}.mega-panel{position:absolute;top:82px;left:-365px;width:890px;padding:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:#fff;border-top:4px solid var(--gold);box-shadow:0 22px 44px rgba(4,39,84,.16);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}.mega:hover .mega-panel{opacity:1;visibility:visible;transform:none}.mega-card{background:#f8fbff;border:1px solid var(--line);padding:15px;min-height:118px}.mega-card img{height:36px}.mega-card b{display:block;margin:8px 0 5px}.mega-card small{color:var(--muted);line-height:1.35;display:block;text-transform:none;font-weight:600}.hero-match{position:relative;min-height:626px;overflow:hidden;background:#fff}.hero-house{position:absolute;top:0;right:0;width:56%;height:100%;background:linear-gradient(90deg,rgba(255,255,255,.02),rgba(255,255,255,.08)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 760 620'%3E%3Crect width='760' height='620' fill='%23f6f9fd'/%3E%3Crect x='160' y='90' width='520' height='370' fill='%23ffffff'/%3E%3Cpath d='M105 160 410 30l315 130' fill='none' stroke='%23aa7a39' stroke-width='34'/%3E%3Crect x='238' y='190' width='130' height='160' fill='%23dfeaf5'/%3E%3Crect x='445' y='185' width='145' height='220' fill='%23e8eef7'/%3E%3Crect x='465' y='205' width='92' height='114' fill='%23f9b515' opacity='.25'/%3E%3Crect x='145' y='450' width='555' height='72' fill='%23e1e9f2'/%3E%3Ccircle cx='105' cy='365' r='72' fill='%2321a56c' opacity='.23'/%3E%3Cpath d='M95 295c23 72 14 141-21 204M105 315c-35 28-57 63-66 104M119 318c38 16 67 51 77 97' stroke='%2321a56c' stroke-width='12' fill='none'/%3E%3C/svg%3E") center/cover no-repeat}.hero-match:before{content:'';position:absolute;inset:0 auto 0 0;width:58%;background:linear-gradient(90deg,#fff 0%,#fff 69%,rgba(255,255,255,0) 100%);z-index:1}.hero-road{position:absolute;left:-4%;right:-4%;bottom:-66px;height:170px;background:#004fae;transform:skewY(-5deg);transform-origin:left top;z-index:3}.hero-road:before{content:'';position:absolute;left:36%;top:27px;width:42%;height:5px;background:var(--gold);box-shadow:58px 18px 0 rgba(255,255,255,.88),146px 18px 0 rgba(255,255,255,.88)}.hero-grid{position:relative;z-index:6;min-height:626px;display:grid;grid-template-columns:38% 38% 300px;gap:20px;align-items:center}.hero-copy{padding-top:6px}.hero-copy span,.mini-title{display:inline-block;text-transform:uppercase;color:#14223b;font-size:14px;font-weight:700;letter-spacing:.035em}.hero-copy h1{margin:17px 0 15px;text-transform:uppercase;color:var(--blue);font-size:60px;line-height:.98;letter-spacing:-1.3px;font-weight:900}.hero-copy h1 em{font-style:normal;color:var(--gold)}.hero-copy p{max-width:430px;margin:0;color:#526176;font-size:15px;line-height:1.65}.hero-copy ul{list-style:none;margin:31px 0 25px;padding:0;display:grid;gap:17px;font-size:14px;font-weight:600}.hero-copy li{display:flex;align-items:center;gap:13px}.hero-copy li:before{content:'⚙';width:28px;height:28px;display:grid;place-items:center;color:var(--blue);background:#e9f2ff}.hero-copy li:nth-child(2):before{content:'📦'}.hero-copy li:nth-child(3):before{content:'⏱'}.hero-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:13px 22px;border:0;font-size:13px;font-weight:900;text-transform:uppercase;transition:.25s;cursor:pointer}.btn:hover{transform:translateY(-3px)}.btn-blue{background:var(--blue);color:#fff}.btn-primary{background:var(--gold);color:#111}.work-link{font-size:13px;font-weight:700;text-transform:uppercase;color:#0b4ba3}.hero-truck{align-self:end;height:468px;position:relative;z-index:7}.hero-truck img{position:absolute;left:-130px;bottom:30px;width:630px;max-width:none;filter:drop-shadow(0 22px 22px rgba(7,30,70,.17));animation:floatTruck 5s ease-in-out infinite}.quote-box{align-self:center;margin-top:24px;background:#0052b6;color:#fff;padding:25px 24px;box-shadow:0 20px 40px rgba(0,50,120,.10)}.quote-box h3{text-align:center;text-transform:uppercase;margin:0 0 18px;font-size:18px}.quote-box form{display:grid;gap:9px}.quote-box input,.quote-box select{height:42px;border:0;background:#fff;padding:0 12px;font:inherit;font-size:13px;color:#66768b}.quote-box button{height:44px;border:0;background:var(--gold);font-weight:900;text-transform:uppercase;color:#111}.success{background:#dcfce7;color:#14532d;padding:9px;font-size:13px;margin-bottom:8px}.section{padding:74px 0}.section-title{text-align:center;max-width:690px;margin:0 auto 40px}.section-title span{display:block;text-transform:uppercase;color:var(--blue);font-size:12px;font-weight:700}.section-title h2{font-size:38px;line-height:1.18;margin:9px 0 11px;color:#162235;font-weight:900}.section-title em{font-style:normal;color:var(--blue)}.section-title p{margin:0;color:#667386;line-height:1.65;font-size:14px}.service-row{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}.service-card{min-height:188px;background:#fff;border:1px solid var(--line);padding:24px 13px;text-align:center;box-shadow:0 12px 25px rgba(10,39,86,.075);transition:.25s}.service-card:hover{transform:translateY(-4px)}.service-card img{height:58px;margin:0 auto 16px}.service-card h3{font-size:15px;margin:0 0 9px}.service-card p{font-size:12px;line-height:1.55;color:var(--muted);margin:0}.center{text-align:center;margin-top:29px}.choose-block{padding-top:52px}.choose-grid{display:grid;grid-template-columns:1fr .84fr 150px;gap:49px;align-items:center}.photo-card img{height:340px;width:100%;object-fit:contain;background:#f8fbff}.choose-copy h2,.about-copy h2{font-size:39px;line-height:1.15;margin:10px 0 22px;font-weight:900}.choose-copy em{font-style:normal;color:var(--blue)}.check-list{list-style:none;margin:0;padding:0;display:grid;gap:13px;font-weight:600;font-size:14px}.check-list li{display:flex;align-items:center;gap:10px}.check-list li:before{content:'✓';width:23px;height:23px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:12px}.support-badge{background:var(--blue);color:#fff;text-align:center;padding:34px 12px;box-shadow:var(--shadow)}.support-badge b{display:block;font-size:46px;line-height:1;font-weight:900}.support-badge i{font-style:normal;color:var(--gold);text-transform:uppercase;font-weight:900}.process-block{padding-top:40px}.process-row{display:grid;grid-template-columns:repeat(4,1fr);gap:54px}.process-card{text-align:center;position:relative}.process-card:not(:last-child):after{content:'→';position:absolute;right:-39px;top:38px;font-size:28px;color:#213653}.process-icon{width:80px;height:80px;margin:0 auto 18px;border:3px solid var(--blue);display:grid;place-items:center;font-size:31px;color:var(--blue);background:#fff}.process-card h3{font-size:15px;color:#17345f;margin:0 0 8px}.process-card p{font-size:13px;color:var(--muted);line-height:1.55;margin:0}.about-block{padding-top:55px}.about-grid{display:grid;grid-template-columns:.77fr 1.23fr;gap:54px;align-items:center}.about-copy p{color:#5f6e80;line-height:1.75;font-size:14px}.about-image{position:relative}.about-image img{height:290px;width:100%;object-fit:contain;background:#fff}.about-image:after{content:'';position:absolute;right:0;bottom:-12px;width:58%;height:18px;background:var(--gold)}.about-image:before{content:'';position:absolute;right:-12px;bottom:-12px;width:14px;height:128px;background:var(--blue)}.stats-band{background:#0052b6;color:#fff;padding:39px 0}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stats-row i{display:block;font-style:normal;font-size:36px;opacity:.9}.stats-row b{display:block;color:var(--gold);font-size:37px;font-weight:900}.stats-row span{font-size:15px;font-weight:700}.testimonials-block{padding-top:64px}.testimonial-wrap{display:flex;align-items:center;gap:18px}.t-track{display:flex;gap:28px;overflow:hidden;scroll-behavior:smooth}.testimonial{min-width:calc(33.333% - 19px);padding:28px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(8,32,74,.08);min-height:172px}.quote-mark{font-size:48px;color:var(--gold);line-height:.65}.testimonial p{font-size:14px;color:#3d4b5d;line-height:1.55}.person{display:flex;align-items:center;gap:12px}.person img{width:42px;height:42px}.person b{display:block;font-size:13px}.person span{font-size:12px;color:var(--gold)}.slider-btn{width:42px;height:42px;border:0;background:var(--blue);color:#fff;font-size:30px;line-height:1;flex:none}.cta-band{background:linear-gradient(112deg,#0051b4 0 62%,var(--gold) 62% 100%);color:#fff;padding:48px 0;overflow:hidden}.cta-grid{display:grid;grid-template-columns:1fr .88fr;gap:24px;align-items:center}.cta-grid h2{font-size:26px;margin:0 0 4px;text-transform:uppercase}.cta-grid h3{font-size:42px;margin:0 0 9px}.cta-grid p{opacity:.9}.cta-grid img{max-height:228px;margin-left:auto;filter:drop-shadow(0 16px 24px rgba(0,0,0,.24))}.footer{background:#111820;color:#dce5ef;padding-top:52px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.25fr;gap:42px}.footer-logo{width:136px;background:rgba(255,255,255,.05);padding:6px;margin-bottom:11px}.footer p{line-height:1.7;font-size:14px;color:#c4ceda}.footer h4{margin:0 0 14px;color:#fff}.footer a{display:block;margin:8px 0;font-size:14px;color:#d9e1eb}.socials{display:flex;gap:9px}.socials span{width:32px;height:32px;display:grid;place-items:center;background:var(--blue);font-weight:900;color:#fff;font-size:12px}.copyright{text-align:center;padding:18px;border-top:1px solid rgba(255,255,255,.08);margin-top:36px;font-size:13px;color:#cbd5e1}.whatsapp{position:fixed;right:22px;bottom:24px;width:56px;height:56px;background:#21c35e;color:#fff;display:grid;place-items:center;z-index:90;border-radius:50%;font-size:28px;box-shadow:0 12px 30px rgba(0,0,0,.08)}.page-hero{background:linear-gradient(120deg,#0052b6,#073b84);color:#fff;padding:86px 0}.page-hero span{text-transform:uppercase;color:var(--gold);font-weight:900}.page-hero h1{font-size:52px;line-height:1.05;margin:10px 0}.page-hero p{max-width:680px;font-size:17px;line-height:1.65;opacity:.94}.page-content{font-size:16px;line-height:1.8}.page-content h2{font-size:34px;color:#14233a}.all-services{grid-template-columns:repeat(4,1fr)}.pricing-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.price-card{border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);padding:30px}.price-card>b{color:var(--gold);text-transform:uppercase}.price-card h3{font-size:25px}.price-card h2{font-size:31px;color:var(--blue)}.price-card pre{white-space:pre-wrap;font:inherit;color:#596779;line-height:1.9}.gallery-grid,.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-card,.blog-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:22px}.gallery-card img,.blog-card img{height:190px;width:100%;object-fit:contain;background:#f8fbff}.blog-card h3{font-size:23px}.blog-card p{color:var(--muted);line-height:1.65}.blog-card a{font-weight:900;color:var(--blue)}.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:45px}.story-img{width:100%;height:360px;object-fit:contain;background:#f8fbff;border:1px solid var(--line);box-shadow:var(--shadow);padding:22px}.story-panel{margin-top:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:24px}.story-copy h2{font-size:39px;margin:10px 0;color:#14233a}.story-copy h3{font-size:24px;color:var(--blue);margin-top:26px}.story-copy p{color:#5d6b7d;line-height:1.85}.quote-mini{margin-top:26px;background:#f4f8ff;border-left:5px solid var(--gold);padding:18px;display:flex;align-items:center;justify-content:space-between;gap:14px}.reveal{opacity:0;transform:translateY(22px);transition:.65s ease}.reveal.show{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}@keyframes floatTruck{50%{transform:translateY(-8px)}}.admin-body{background:#eef3f9}.admin-wrap{display:flex;min-height:100vh}.sidebar{width:270px;background:#111820;color:#fff;padding:24px}.sidebar a{display:block;padding:11px 13px;margin:5px 0;background:rgba(255,255,255,.06);font-weight:700}.admin-main{flex:1;padding:30px}.admin-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:24px;margin-bottom:22px}.input,textarea{width:100%;border:1px solid var(--line);padding:12px;font:inherit}textarea{min-height:100px}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.grid{display:grid;gap:22px}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1100px){.topbar{height:auto}.topbar-row{height:auto;min-height:36px;flex-wrap:wrap;justify-content:center;padding:8px 20px}.menu{display:none}.mobile-toggle{display:block}.header-row{height:78px}.brand img{width:120px}.hero-match{min-height:auto}.hero-match:before,.hero-house{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:40px;padding-bottom:80px}.hero-copy h1{font-size:50px}.hero-truck{height:auto;order:2}.hero-truck img{position:relative;left:0;bottom:0;width:100%;max-width:660px;margin:auto}.quote-box{max-width:560px;margin:0;order:3}.service-row{grid-template-columns:repeat(3,1fr)}.choose-grid,.about-grid,.cta-grid,.story-grid{grid-template-columns:1fr}.process-row{gap:25px}.testimonial{min-width:80%}.footer-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid,.blog-grid,.pricing-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.topbar{display:none}.container{padding:0 18px}.hero-copy h1{font-size:39px}.btn{width:100%}.work-link{width:100%;display:block}.service-row,.process-row,.stats-row,.all-services,.gallery-grid,.blog-grid,.pricing-row{grid-template-columns:1fr}.process-card:after{display:none!important}.section{padding:56px 0}.section-title h2,.choose-copy h2,.about-copy h2,.story-copy h2{font-size:30px}.photo-card img,.about-image img,.story-img{height:auto}.testimonial{min-width:100%}.cta-band{background:#0051b4}.cta-grid h3{font-size:31px}.footer-grid{grid-template-columns:1fr}.page-hero h1{font-size:38px}.whatsapp{width:50px;height:50px}}
/* Dynamic page/admin updates */
.alert-ok{background:#e8fff1;border-left:4px solid #10b25b;padding:12px 16px;margin-bottom:16px;color:#075b2c;font-weight:700}
.contact-grid{display:grid;grid-template-columns:1fr 430px;gap:44px;align-items:start}.contact-info{background:#fff;padding:38px;box-shadow:0 18px 50px rgba(8,54,120,.08)}.contact-info h2{font-size:32px;line-height:1.25;color:#061b3d;margin-bottom:22px}.contact-page .quote-form textarea{height:110px;resize:vertical}.alt{background:#f6f9ff}.two-col{display:grid;grid-template-columns:1fr 1.25fr;gap:54px;align-items:center}.two-col img{max-width:100%;display:block}.image-frame{position:relative}.image-frame:after{content:"";position:absolute;right:-16px;bottom:-16px;width:40%;height:18px;background:#f8ad08;z-index:-1}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.blog-card{background:white;box-shadow:0 15px 40px rgba(15,45,90,.08);padding:18px}.blog-card img{width:100%;height:180px;object-fit:contain;background:#f5f8ff}.cta-strip{background:linear-gradient(110deg,#004fb6,#003a88 65%,#f7ad08 65%);color:white;padding:50px 0}.cta-strip .container{display:flex;justify-content:space-between;align-items:center;gap:20px}.btn-yellow{background:#f8ad08;color:#061b3d}.sidebar a{display:block;color:#d9e8ff;text-decoration:none;padding:10px 12px;margin:3px 0}.sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}.admin-card small{color:#777}.admin-card textarea,.admin-card select,.admin-card .input{width:100%;max-width:900px}.gallery-card p{font-size:14px;color:#5c6b82}.page-hero{background:linear-gradient(105deg,#004fb6,#003a88);color:white;padding:86px 0}.page-hero h1{font-size:46px;margin:10px 0}.page-hero span{color:#ffba18;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.page-hero p{max-width:720px;font-size:18px;color:#e5efff}
@media(max-width:900px){.contact-grid,.two-col,.blog-grid{grid-template-columns:1fr}.cta-strip .container{display:block}.page-hero h1{font-size:34px}.contact-info h2{font-size:25px}}
/* Final dynamic/admin-ready patch */
.quote-form{background:#0052b6;color:#fff;padding:28px;box-shadow:0 22px 48px rgba(0,55,130,.10)}.quote-form h3{margin:0 0 18px;text-transform:uppercase;text-align:center}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-bottom:10px;border:0;padding:12px 13px;font:inherit;color:#53657a;background:#fff}.quote-form button{width:100%;height:46px;border:0;background:var(--gold);color:#071b3e;text-transform:uppercase;font-weight:900}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}.stats-grid b{display:block;color:var(--gold);font-size:36px}.stats-grid span{color:#fff}.eyebrow{color:var(--blue);font-weight:600;text-transform:uppercase;font-size:13px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card img[src=''],.gallery-card img[src='']{display:none}.page-section-copy{max-width:760px;margin:auto;text-align:center}.page-section-copy h2{font-size:38px;color:#0b1f3f;margin:0 0 12px}.page-section-copy p{color:#607084;line-height:1.8}.mega-panel a:hover,.service-card:hover,.price-card:hover,.gallery-card:hover,.blog-card:hover{transform:translateY(-5px)}.mega-panel a,.service-card,.price-card,.gallery-card,.blog-card{transition:.25s ease}.footer-logo{filter:none}@media(max-width:900px){.services-grid,.stats-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.services-grid,.stats-grid{grid-template-columns:1fr}.hero-grid{padding-bottom:110px}.quote-box{padding:20px}.contact-grid{gap:25px}.site-header{position:relative}.menu.open{display:flex;position:absolute;left:0;right:0;top:78px;background:#fff;flex-direction:column;align-items:flex-start;padding:16px 24px;box-shadow:0 18px 35px rgba(0,0,0,.12);z-index:999}.menu.open a,.menu.open .mega>a{padding:10px 0}.menu.open .mega-panel{display:none}}

/* Enhanced homepage additions - blue/gold commercial sections */
.trust-strip{background:#071b3e;color:#fff;padding:22px 0}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}.trust-grid b{display:block;color:var(--gold);font-size:30px;font-weight:900}.trust-grid span{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.brand-block{padding-bottom:52px}.brand-row{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.brand-card{background:#fff;border:0;min-height:112px;display:grid;place-items:center;text-align:center;padding:18px;box-shadow:0 14px 30px rgba(10,39,86,.06);transition:.25s}.brand-card:hover{transform:translateY(-5px)}.brand-card img{height:40px;margin-bottom:8px}.brand-card b{font-size:13px;color:#243852}.pricing-preview{background:linear-gradient(180deg,#fff 0,#f6f9ff 100%)}.badge-pop{display:inline-block;background:var(--gold);color:#071b3e;font-weight:700;padding:7px 13px;margin-bottom:14px;text-transform:uppercase;font-size:11px}.price-card.popular{border-top:5px solid var(--gold);transform:translateY(-8px)}.price-card strong{display:block;color:var(--blue);font-size:26px;font-weight:900;margin:9px 0 14px}.price-card ul{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:10px}.price-card li{color:#5e6c7c;font-weight:700;font-size:14px}.price-card li:before{content:'✓';color:var(--blue);font-weight:900;margin-right:9px}.gallery-preview .gallery-grid{margin-top:8px}.areas-block{background:#fff}.area-cloud{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.area-cloud a{background:#f7fbff;border:1px solid var(--line);padding:12px 18px;font-weight:700;color:#17345f;box-shadow:0 10px 22px rgba(8,37,82,.05);transition:.25s}.area-cloud a:hover{background:var(--blue);color:#fff;transform:translateY(-4px)}.materials-block{background:#f7fbff}.material-row{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.material-card{background:#fff;border:1px solid var(--line);padding:18px;text-align:center;box-shadow:0 12px 24px rgba(10,39,86,.06);transition:.25s}.material-card:hover{transform:translateY(-5px)}.material-card img{height:48px;margin:0 auto 12px}.material-card h3{font-size:14px;margin:0 0 8px}.material-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.faq-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:start}.faq-grid h2{font-size:38px;line-height:1.15;margin:10px 0;color:#15233a}.faq-grid p{color:#627184;line-height:1.75}.faq-list{display:grid;gap:12px}.faq-list details{background:#fff;border:1px solid var(--line);box-shadow:0 12px 26px rgba(10,39,86,.06)}.faq-list summary{cursor:pointer;padding:18px 20px;font-weight:700;color:#11233f;list-style:none}.faq-list summary:after{content:'+';float:right;color:var(--blue);font-size:20px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 20px 18px;margin:0;color:#637286;line-height:1.7}.seo-content{background:#071b3e;color:#fff;padding:48px 0}.seo-content h2{font-size:32px;margin:0 0 12px;color:var(--gold)}.seo-content p{max-width:980px;line-height:1.85;color:#e6efff;margin:0}.blog-card a{display:inline-block;margin-top:8px;color:var(--blue);font-weight:700}.gallery-card{background:#fff;box-shadow:0 15px 40px rgba(15,45,90,.08);padding:18px;transition:.25s}.gallery-card img{width:100%;height:190px;object-fit:contain;background:#f5f8ff}.gallery-card h3{margin:14px 0 8px;color:#17253d}.price-card{background:#fff;padding:30px;box-shadow:0 16px 40px rgba(8,37,82,.08);border:1px solid var(--line);transition:.25s}.price-card h3{margin:0;color:#15233a;font-size:22px}
@media(max-width:900px){.brand-row,.material-row{grid-template-columns:repeat(3,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.brand-row,.material-row,.trust-grid{grid-template-columns:1fr}.price-card.popular{transform:none}.hero-copy h1{font-size:34px}.topbar-row div:first-child{display:none}}

/* Reference-matched homepage + typography refresh */
:root{
  --font:'Mulish',system-ui,-apple-system,Segoe UI,sans-serif;
  --heading:'Montserrat',system-ui,-apple-system,Segoe UI,sans-serif;
  --bn-font:'Hind Siliguri',system-ui,-apple-system,Segoe UI,sans-serif;
  --ref-blue:#0050b5;
  --ref-blue-dark:#0a3f99;
  --ref-yellow:#f6b500;
  --ref-ink:#10233f;
  --ref-muted:#596a82;
}
body{font-family:var(--font)}
h1,h2,h3,h4,h5,h6,.menu,.btn,.ref-btn,.ref-small,.ref-eyebrow{font-family:var(--heading)}
.bn-text{font-family:var(--bn-font);font-weight:700;letter-spacing:0}

.topbar{height:42px;background:linear-gradient(90deg,#0b4fb5,#08449d)}
.topbar-row{height:42px;font-size:13px;font-weight:700;letter-spacing:.01em}
.topbar-left,.topbar-right{display:flex;align-items:center;gap:28px}
.topbar-left>span,.topbar-right>span{white-space:nowrap}
.top-icon{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:4px;border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:11px}
.top-social span{width:20px;height:20px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:10px}
.site-header{box-shadow:0 4px 22px rgba(7,45,102,.08)}
.header-row{height:96px}
.brand img{width:150px;height:80px}
.menu{gap:29px;font-size:12px;letter-spacing:.04em}
.nav-quote{background:var(--ref-yellow)!important;color:#18253f!important;border-radius:2px;padding:13px 24px!important}

.ref-home .success{background:#d8ffe8;color:#0a6a2e}
.ref-home .container{max-width:1220px}
.ref-home .ref-small{margin:0 0 7px;text-transform:uppercase;letter-spacing:.06em;color:#0c4fb1;font-size:14px;font-weight:700}
.ref-home .ref-section-title{text-align:center;max-width:760px;margin:0 auto 34px}
.ref-home .ref-section-title h2{margin:0 0 8px;color:var(--ref-ink);font-size:52px;line-height:1.07;font-weight:900}
.ref-home .ref-section-title h2 span{color:var(--ref-blue)}
.ref-home .ref-section-title p{margin:0;color:var(--ref-muted);line-height:1.7;font-size:15px}

.ref-hero{position:relative;min-height:740px;overflow:hidden;background:#fff}
.ref-hero-house{position:absolute;inset:0 0 0 40%;background:linear-gradient(132deg,rgba(255,255,255,.02),rgba(255,255,255,.01)),url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 720"%3E%3Crect width="1000" height="720" fill="%23f2f5f9"/%3E%3Crect x="180" y="150" width="690" height="430" fill="%23ffffff"/%3E%3Crect x="245" y="255" width="210" height="210" fill="%23dbe4ee"/%3E%3Crect x="520" y="245" width="250" height="260" fill="%23e8eef5"/%3E%3Crect x="555" y="280" width="165" height="150" fill="%23d79b48" opacity=".38"/%3E%3Cpath d="M120 205 535 40l390 165" fill="none" stroke="%23b98844" stroke-width="44"/%3E%3Crect x="140" y="575" width="760" height="80" fill="%23dde4ec"/%3E%3Ccircle cx="140" cy="420" r="84" fill="%231ca668" opacity=".24"/%3E%3C/svg%3E') center/cover no-repeat;z-index:0}
.ref-hero:before{content:'';position:absolute;left:0;top:0;bottom:0;width:58%;background:linear-gradient(90deg,#fff 0%,#fff 74%,rgba(255,255,255,0) 100%);z-index:1}
.ref-hero-road{position:absolute;left:-3%;right:-3%;bottom:-78px;height:198px;background:var(--ref-blue);transform:skewY(-5deg);z-index:2}
.ref-hero-road {
  background: linear-gradient(29deg, #0448a500 0%, #0b5ec48f 100%);
}
.ref-hero-road:before{content:'';position:absolute;left:40%;top:34px;width:360px;height:4px;background:var(--ref-yellow);box-shadow:70px 20px 0 rgba(255,255,255,.92),150px 20px 0 rgba(255,255,255,.92)}
.ref-hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:40% 36% 320px;gap:18px;align-items:center;min-height:740px}
.ref-eyebrow{margin:0;color:#1a2b45;text-transform:uppercase;font-size:30px;font-weight:900;letter-spacing:.03em}
.ref-hero-copy h1{margin:14px 0 14px;color:#083d94;font-size:74px;line-height:.95;letter-spacing:-1.8px;font-weight:900;text-transform:uppercase}
.ref-hero-copy h1 mark{background:none;color:var(--ref-yellow)}
.ref-hero-copy h1 .accent{color:var(--ref-yellow)}
.ref-subtitle{margin:0;max-width:430px;color:var(--ref-muted);font-size:18px;line-height:1.72}
.ref-feature-list{list-style:none;margin:30px 0 26px;padding:0;display:grid;gap:16px}
.ref-feature-list li{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:700;color:#173457}
.ref-feature-list li:before{content:'✪';width:27px;height:27px;display:grid;place-items:center;background:#e7f0ff;color:#0d4ca9;font-size:13px}
.ref-hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ref-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 24px;border:0;text-transform:uppercase;font-size:13px;font-weight:900;letter-spacing:.02em;transition:.25s}
.ref-btn:hover{transform:translateY(-3px)}
.ref-btn-blue{background:var(--ref-blue);color:#fff}
.ref-btn-yellow{background:var(--ref-yellow);color:#13253f}
.ref-work-link{font-size:13px;font-weight:700;color:#000;text-transform:uppercase}
.ref-work-link:before{content:'▶';display:inline-block;margin-right:6px}
.ref-hero-truck{align-self:end;position:relative;height:468px}
.ref-hero-truck img{position:absolute;left:-138px;bottom:10px;width:648px;max-width:none;filter:drop-shadow(0 22px 24px rgba(5,28,70,.24));animation:floatTruck 5.3s ease-in-out infinite}
.ref-quote-box{background:#0352b6;color:#fff;padding:23px 20px 20px;border:2px solid rgba(255,255,255,.14);box-shadow:0 16px 38px rgba(0,51,120,.10)}
.ref-quote-box h3{margin:0 0 13px;text-align:center;font-size:27px;line-height:1.1;font-weight:800;text-transform:uppercase}
.ref-quote-box form{display:grid;gap:8px}
.ref-quote-box input,.ref-quote-box select{height:40px;border:0;padding:0 11px;background:#fff;color:#46586f;font:700 13px var(--font)}
.ref-quote-box button{height:44px;border:0;background:var(--ref-yellow);color:#1a2c45;font-family:var(--heading);font-size:14px;font-weight:900;text-transform:uppercase;cursor:pointer}

.ref-services{padding:84px 0 64px;background:#fff}
.ref-service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.ref-service-card{min-height:212px;background:#fff;border:1px solid #e7edf6;box-shadow:0 12px 24px rgba(11,42,90,.08);padding:24px 13px;text-align:center;transition:.25s}
.ref-service-card:hover{transform:translateY(-4px)}
.ref-service-card img{height:58px;margin:0 auto 14px}
.ref-service-card h3{margin:0 0 8px;color:#152947;font-size:19px;font-weight:800}
.ref-service-card p{margin:0;color:#66788f;line-height:1.52;font-size:13px;font-weight:600}
.ref-center{text-align:center;margin-top:28px}

.ref-choose{padding:36px 0 28px;background:#f5f7fb}
.ref-why-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(300px,38%) 1fr;
  min-height:360px;
  border-radius:7px;
  overflow:hidden;
  border:1px solid #c9daf6;
  box-shadow:0 20px 46px rgba(7,45,104,.18);
  background:linear-gradient(104deg,#063987 0%,#032c75 63%,#022664 100%);
}
.ref-why-image{
  position:relative;
  background:#eef3fc;
}
.ref-why-image:after{
  content:'';
  position:absolute;
  top:0;
  right:-1px;
  width:112px;
  height:100%;
  background:linear-gradient(90deg,rgba(8,42,102,0) 0%,rgba(8,42,102,.72) 52%,rgba(8,42,102,.95) 100%);
}
.ref-why-image img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  object-position:center;
}
.ref-why-content{
  padding:42px 46px 36px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ref-why-eyebrow{
  margin:0 0 10px;
  color:#d1e2ff;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:12px;
  font-weight:700;
}
.ref-why-content h2{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(35px,3.15vw,52px);
  line-height:1.1;
  letter-spacing:-.01em;
  font-weight:900;
}
.ref-why-lead{
  margin:0;
  max-width:620px;
  color:#d8e7ff;
  font-size:16px;
  line-height:1.65;
  font-weight:600;
}
.ref-why-points{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(4,minmax(130px,1fr));
  gap:16px;
}
.ref-why-point{
  display:flex;
  align-items:flex-start;
  gap:12px;
}
.ref-why-point span{
  flex:none;
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid rgba(255,255,255,.65);
  color:#073a8f;
  font-size:15px;
}
.ref-why-point h3{
  margin:0 0 3px;
  color:#fff;
  font-size:15px;
  line-height:1.3;
  font-weight:800;
}
.ref-why-point p{
  margin:0;
  color:#d8e5fb;
  font-size:12px;
  line-height:1.52;
  font-weight:600;
}

.ref-process{padding:62px 0 56px;background:#fff}
.ref-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:42px}
.ref-process-card{text-align:center;position:relative}
.ref-process-card:not(:last-child):after{content:'→';position:absolute;right:-28px;top:31px;color:#2f4466;font-size:31px;font-weight:700}
.ref-process-icon{width:84px;height:84px;margin:0 auto 14px;border:3px solid #0b4eb0;color:#0b4eb0;display:grid;place-items:center;font-size:31px;background:#fff}
.ref-process-card h3{margin:0 0 9px;color:#17345a;font-size:20px;font-weight:800}
.ref-process-card p{margin:0;color:#66788f;line-height:1.58;font-size:14px;font-weight:600}

.ref-about{padding:28px 0 0;background:#fff}
.ref-about-grid{display:grid;grid-template-columns:.83fr 1.17fr;gap:50px;align-items:center}
.ref-about-copy h2{margin:0 0 14px;color:var(--ref-ink);font-size:54px;line-height:1.02;font-weight:900}
.ref-about-copy p{margin:0 0 14px;color:#5f7188;line-height:1.82;font-size:16px;font-weight:600}
.ref-about-image{position:relative}
.ref-about-image img{width:100%;height:328px;object-fit:contain;border:1px solid #e7edf7;background:#fff;box-shadow:0 14px 30px rgba(9,38,84,.08)}
.ref-about-image:after{content:'';position:absolute;right:10px;bottom:-14px;width:54%;height:18px;background:var(--ref-yellow)}
.ref-about-image:before{content:'';position:absolute;right:-8px;bottom:-14px;width:12px;height:114px;background:var(--ref-blue)}

.ref-stats{margin-top:40px;background:#0650af;color:#fff;padding:34px 0}
.ref-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.ref-stats-grid i{display:block;font-style:normal;font-size:35px;opacity:.95}
.ref-stats-grid b{display:block;color:var(--ref-yellow);font-size:47px;line-height:1;font-weight:900;margin:7px 0 2px}
.ref-stats-grid span{font-size:20px;font-weight:800}

.ref-testimonials{padding:58px 0 60px;background:#fff}
.ref-testimonial-wrap{display:flex;align-items:center;gap:16px}
.ref-testimonial-wrap .slider-btn{width:43px;height:43px;border-radius:50%;font-size:30px;background:#0b4fb1}
.ref-testimonial-card{min-width:calc(33.333% - 20px)}
.ref-quote{margin:0 0 6px;color:var(--ref-yellow);font-size:52px;line-height:.65;font-weight:900}
.ref-testimonial-card p{font-size:15px;line-height:1.65}

.ref-cta{background:linear-gradient(105deg,#0050b6 0%,#0a459e 66%,#f6b500 66%,#f6b500 100%);color:#fff;padding:44px 0;overflow:hidden}
.ref-cta-grid{display:grid;grid-template-columns:1fr .86fr;gap:24px;align-items:center}
.ref-cta h2{margin:0 0 7px;font-size:51px;line-height:1.06;font-weight:900}
.ref-cta p{max-width:580px;margin:0 0 20px;color:#dce8ff;font-size:16px;line-height:1.7;font-weight:600}
.ref-cta .ref-small{color:#dce8ff}
.ref-cta img{max-height:248px;margin-left:auto;filter:drop-shadow(0 16px 24px rgba(0,0,0,.24))}

.footer{background:radial-gradient(circle at 0 0,#1b2634 0,#111821 48%,#0c131c 100%)}
.footer h4{font-family:var(--heading);letter-spacing:.02em}
.footer a,.footer p{font-size:15px}
.footer-grid{padding-bottom:14px}

.topbar-contact{display:inline-flex;align-items:center;gap:6px}
.topbar-link{color:inherit;text-decoration:none;white-space:nowrap}
.topbar-link:hover{text-decoration:underline}
.topbar-sep{opacity:.85}

@media(max-width:1180px){
  .ref-home .ref-section-title h2,.ref-hero-copy h1,.ref-about-copy h2,.ref-cta h2{font-size:42px}
  .ref-hero-grid{grid-template-columns:1fr;padding:50px 0 102px;min-height:auto}
  .ref-hero:before,.ref-hero-house{display:none}
  .ref-hero-truck{height:auto;order:2}
  .ref-hero-truck img{position:relative;left:0;bottom:0;max-width:650px;width:100%;margin:auto}
  .ref-quote-box{max-width:560px;order:3}
  .ref-service-grid{grid-template-columns:repeat(3,1fr)}
  .ref-about-grid,.ref-cta-grid{grid-template-columns:1fr}
  .ref-why-content h2{font-size:40px}
  .ref-why-points{grid-template-columns:repeat(2,1fr)}
  .ref-process-grid{gap:24px}
  .ref-process-card:not(:last-child):after{display:none}
}

@media(max-width:760px){
  .topbar-row{justify-content:center}
  .topbar-left{gap:12px}
  .topbar-right{display:none}
  .topbar{display:none}
  .header-row{height:76px}
  .brand img{width:120px;height:64px}
  .menu.open{top:76px}
  .ref-eyebrow{font-size:21px}
  .ref-home .ref-section-title h2,.ref-hero-copy h1,.ref-about-copy h2,.ref-cta h2{font-size:34px}
  .ref-subtitle{font-size:16px}
  .ref-btn,.ref-quote-box button{width:100%}
  .ref-work-link{width:100%}
  .ref-service-grid,.ref-process-grid,.ref-stats-grid{grid-template-columns:1fr}
  .ref-service-card{min-height:auto}
  .ref-stats-grid b{font-size:39px}
  .ref-stats-grid span{font-size:17px}
  .ref-testimonial-card{min-width:100%}
  .ref-cta{background:#0550b4}
}

/* Polish pass: typography, wider container, nav submenu stability, premium landing */
.container{max-width:1340px}
.ref-home .container{max-width:1360px}
body.menu-open{overflow:hidden}

.site-header{
  border-bottom:1px solid #e8eef8;
  backdrop-filter:saturate(130%) blur(2px);
}
.menu{
  gap:30px;
  font-size:12.5px;
  font-weight:800;
  letter-spacing:.055em;
}
.menu>a,.mega>a{
  padding:37px 0;
}
.menu>a:hover,.mega>a:hover{
  color:#0a4fb1;
}
.menu .active,
.menu .mega.active>.mega-trigger{
  color:#0a4fb1;
}
.menu .active:after,
.menu .mega.active>.mega-trigger:after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:24px;
  height:2px;
  background:#0a4fb1;
}

.mega{position:relative;padding-bottom:16px;margin-bottom:-16px}
.mega-panel{
  top:calc(100% - 8px);
  left:50%;
  transform:translate(-50%,14px);
  width:min(1080px,calc(100vw - 68px));
  display:grid;
  padding:18px;
  border-radius:0 0 10px 10px;
  border-top:3px solid #f6b500;
  box-shadow:0 22px 60px rgba(7,43,99,.18);
  z-index:110;
  opacity:0;
  visibility:hidden;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
  pointer-events:none;
}
.mega:hover .mega-panel,
.mega:focus-within .mega-panel,
.mega.open .mega-panel{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
  pointer-events:auto;
}
.mega-trigger{position:relative}
.mega-trigger:before{
  content:'';
  position:absolute;
  left:-10px;
  right:-10px;
  bottom:-18px;
  height:20px;
}
.mega-card{
  border-radius:7px;
  min-height:128px;
}
.mega-card b{font-size:14px;line-height:1.35}
.mega-card small{font-size:12px;line-height:1.45}

.ref-home .ref-section-title h2{
  font-size:58px;
  letter-spacing:-.02em;
}
.ref-hero-copy h1{
  font-size:82px;
  line-height:.9;
  letter-spacing:-2.2px;
}
.ref-subtitle{
  font-size:18px;
  line-height:1.75;
  color:#4f617a;
}
.ref-hero{
  background:
    radial-gradient(circle at 12% 14%, rgba(10,80,177,.08), rgba(10,80,177,0) 34%),
    radial-gradient(circle at 74% 11%, rgba(246,181,0,.12), rgba(246,181,0,0) 28%),
    #fff;
}
.ref-hero-copy{padding-top:14px}
.ref-feature-list li{font-size:16px}
.ref-feature-list li:before{border-radius:50%}
.ref-hero-truck img{left:-118px;width:666px}
.ref-quote-box{
  border-radius:7px;
  box-shadow:0 24px 52px rgba(2,53,126,.08);
}
.ref-quote-box h3{font-size:30px}
.ref-quote-box input,.ref-quote-box select{
  border-radius:4px;
  border:1px solid #c9ddf8;
}
.ref-quote-box button{border-radius:4px}

.ref-service-card,
.ref-about-image img,
.ref-testimonial-card{
  border-radius:7px;
}
.ref-service-card h3{font-size:20px}
.ref-service-card p{font-size:13.5px}
.ref-why-content h2{font-size:45px}
.ref-about-copy h2{font-size:58px}
.ref-process-card h3{font-size:21px}
.ref-stats-grid span{font-size:19px}
.ref-testimonial-card p{font-size:14.5px}

.ref-cta{
  background:
    linear-gradient(110deg,#0050b6 0%,#0a459f 63%,#f6b500 63%,#f6b500 100%);
}
.ref-cta h2{font-size:56px;letter-spacing:-.02em}
.ref-cta p{font-size:16px}
.ref-btn{
  border-radius:5px;
  box-shadow:0 10px 24px rgba(5,35,84,.14);
}

.footer{
  background:linear-gradient(180deg,#151e2a 0%,#0d141d 100%);
}
.footer-grid{gap:48px}
.footer h4{font-size:22px}
.footer a{opacity:.92}
.footer a:hover{color:#fff;opacity:1}

@media (max-width:1180px){
  .container{max-width:1180px}
  .ref-home .container{max-width:1180px}
  .ref-home .ref-section-title h2,
  .ref-hero-copy h1,
  .ref-why-content h2,
  .ref-about-copy h2,
  .ref-cta h2{font-size:44px}
}

@media (max-width:980px){
  .header-row{height:82px}
  .mobile-toggle{display:block}
  .menu{
    display:none;
    position:absolute;
    top:82px;
    left:0;
    right:0;
    padding:18px 22px;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    background:#fff;
    box-shadow:0 20px 34px rgba(8,32,75,.16);
    z-index:120;
  }
  .menu.open{display:flex}
  .menu>a,.mega>a{
    width:100%;
    padding:12px 0;
  }
  .menu .active:after,
  .menu .mega.active>.mega-trigger:after{
    display:none;
  }
  .mega{width:100%}
  .mega-panel{
    position:static;
    width:100%;
    margin:8px 0 8px;
    transform:none;
    opacity:1;
    visibility:visible;
    display:none;
    grid-template-columns:1fr;
    pointer-events:auto;
    border:1px solid #e2ebf7;
    border-top:3px solid #f6b500;
    box-shadow:none;
  }
  .mega.open .mega-panel{
    display:grid;
    transform:none;
    margin-left:0;
  }
  .ref-why-card{grid-template-columns:1fr}
  .ref-why-image img{min-height:320px;max-height:360px}
  .ref-why-points{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:760px){
  .ref-home .ref-section-title h2,
  .ref-hero-copy h1,
  .ref-why-content h2,
  .ref-about-copy h2,
  .ref-cta h2{font-size:35px}
  .ref-hero-truck img{left:0;width:100%}
  .ref-why-content{padding:30px 22px 26px}
  .ref-why-image img{min-height:250px;max-height:300px}
  .ref-why-points{grid-template-columns:1fr}
}

/* Hotfix: services active underline should never overlap text */
.menu > a.active,
.menu .mega.active > .mega-trigger{
  color:#0a4fb1;
  text-decoration:none;
  box-shadow:inset 0 -2px 0 #0a4fb1;
}

.menu > a.active:after,
.menu .mega.active > .mega-trigger:after{
  content:none !important;
}

/* Prevent parent .mega active pseudo underline (caused double line) */
.menu .mega.active:after{
  content:none !important;
}

.mega-trigger{
  display:inline-flex;
  align-items:center;
  gap:4px;
  line-height:1;
}

/* Navbar alignment tweak: menu starts near logo, quote stays on far right */
.header-row{
  height:74px;
  justify-content:space-between;
  gap:22px;
}
.brand img{
  width:120px;
  height:58px;
}
.menu{
  flex:1;
  justify-content:flex-end;
  gap:30px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.01em;
}
.menu>a,.mega>a{
  padding:0;
  color:#2f3a4b;
}
.menu > a.active,
.menu .mega.active > .mega-trigger{
  color:#0a4fb1;
  box-shadow:none;
}
.nav-quote{
  margin-left:30px;
  padding:11px 16px !important;
  border-radius:2px;
  font-size:11px;
  font-weight:700;
  color:#fff !important;
  background:#f3b407 !important;
}

@media (max-width:980px){
  .header-row{
    justify-content:space-between;
    gap:0;
  }
  .menu > a.active,
  .menu .mega.active > .mega-trigger{
    box-shadow:none;
  }
  .nav-quote{
    margin-left:0;
    margin-top:8px;
    width:100%;
    text-align:center;
  }
}

/* Dynamic service detail page (admin-driven) */
.service-ref-hero{
  position:relative;
  padding:110px 0;
  color:#fff;
  background:linear-gradient(90deg,rgba(8,48,112,.92) 0%,rgba(8,48,112,.86) 42%,rgba(8,48,112,.55) 100%),var(--bg) center/cover no-repeat;
}
.service-ref-hero h1{margin:0 0 10px;font-size:64px;line-height:1.02;font-family:var(--heading);font-weight:900;letter-spacing:-.02em}
.service-ref-hero p{max-width:760px;margin:0 0 14px;color:#e4edff;font-size:18px;line-height:1.7}
.service-ref-hero .crumbs{display:flex;align-items:center;gap:10px;font-weight:700;color:#f2f6ff}
.service-ref-hero .crumbs a{color:#f2f6ff;opacity:.92}

.service-ref-detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}
.service-ref-media img{width:100%;height:420px;object-fit:cover;border-radius:7px;box-shadow:0 16px 34px rgba(8,35,80,.12)}
.service-ref-copy span{display:inline-block;font-family:var(--heading);font-weight:700;color:#ff8f00;text-transform:uppercase;letter-spacing:.05em;font-size:13px}
.service-ref-copy h2{margin:10px 0 14px;color:#0f2f62;font-size:52px;line-height:1.07;font-family:var(--heading);font-weight:900;letter-spacing:-.02em}
.service-ref-copy p{margin:0 0 14px;color:#4b5f7b;line-height:1.8;font-size:16px}
.service-ref-copy ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.service-ref-copy li{display:flex;align-items:flex-start;gap:10px;color:#14345f;font-size:18px;font-weight:700}
.service-ref-copy li:before{content:'✓';color:#0a4fb1;font-weight:600}

.service-ref-title{text-align:center;max-width:820px;margin:0 auto 28px}
.service-ref-title span{display:block;color:#f28600;text-transform:uppercase;font-family:var(--heading);font-weight:700;letter-spacing:.05em;font-size:13px}
.service-ref-title h2{margin:6px 0 0;color:#0e2f62;font-size:56px;line-height:1.06;font-family:var(--heading);font-weight:900;letter-spacing:-.02em}

.service-ref-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service-ref-feature{background:#fff;border:1px solid #e4ebf5;border-radius:7px;padding:24px 20px;box-shadow:0 10px 25px rgba(9,36,80,.06)}
.service-ref-feature .icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#f4f8ff;margin-bottom:12px}
.service-ref-feature .icon img{width:32px;height:32px;object-fit:contain}
.service-ref-feature h3{margin:0 0 8px;color:#14345f;font-size:28px;line-height:1.12;font-family:var(--heading);font-weight:700}
.service-ref-feature p{margin:0;color:#586b83;line-height:1.7;font-size:15px}

.service-ref-why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}
.service-ref-why-copy span{display:block;color:#f28600;text-transform:uppercase;font-family:var(--heading);font-weight:700;letter-spacing:.05em;font-size:13px}
.service-ref-why-copy h2{margin:8px 0 14px;color:#0f2f61;font-size:56px;line-height:1.07;font-family:var(--heading);font-weight:900;letter-spacing:-.02em}
.service-ref-why-copy p{margin:0 0 12px;color:#566a84;line-height:1.75;font-size:16px}
.service-ref-why-copy ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.service-ref-why-copy li{display:flex;gap:10px;color:#14345f;font-size:17px;font-weight:700}
.service-ref-why-copy li:before{content:'✓';color:#ff8f00;font-weight:600}
.service-ref-why-media img{width:100%;height:360px;object-fit:cover;border-radius:7px;box-shadow:0 16px 34px rgba(8,35,80,.12)}

.service-ref-cta-wrap{padding:0 0 40px}
.service-ref-cta{display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(105deg,#0a3f99,#0e58c2);padding:30px 34px;border-radius:7px;color:#fff}
.service-ref-cta h3{margin:0 0 7px;font-size:42px;line-height:1.1;font-family:var(--heading);font-weight:800}
.service-ref-cta p{margin:0;color:#d8e7ff;line-height:1.6;font-size:16px}

.service-ref-faq{padding-top:38px}
.service-ref-faq .faq-list{max-width:980px;margin:0 auto}

@media(max-width:1180px){
  .service-ref-hero h1,.service-ref-copy h2,.service-ref-title h2,.service-ref-why-copy h2{font-size:44px}
  .service-ref-feature h3{font-size:23px}
}
@media(max-width:900px){
  .service-ref-detail-grid,.service-ref-why-grid{grid-template-columns:1fr}
  .service-ref-feature-grid{grid-template-columns:1fr 1fr}
  .service-ref-cta{flex-direction:column;align-items:flex-start}
}
@media(max-width:680px){
  .service-ref-hero{padding:76px 0}
  .service-ref-hero h1,.service-ref-copy h2,.service-ref-title h2,.service-ref-why-copy h2{font-size:34px}
  .service-ref-hero p{font-size:16px}
  .service-ref-feature-grid{grid-template-columns:1fr}
  .service-ref-media img,.service-ref-why-media img{height:260px}
}

/* Contact page reference-style section */
.contact-ref{background:#f4f6fa}
.contact-ref .section{padding:56px 0 74px}
.contact-ref-hero{
  position:relative;
  overflow:hidden;
  min-height:420px;
  background:
    linear-gradient(90deg,rgba(4,45,106,.96) 0%,rgba(4,45,106,.92) 48%,rgba(4,45,106,.52) 100%),
    url('/assets/images/about/about-hero.jpg') center 28%/cover no-repeat;
  color:#fff;
}
.contact-ref-hero-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 24% 36%,rgba(255,255,255,.1),rgba(255,255,255,0) 34%),
    linear-gradient(180deg,rgba(2,23,59,0) 62%,rgba(2,23,59,.25) 100%);
}
.contact-ref-hero-grid{
  position:relative;
  z-index:1;
  min-height:420px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:26px;
  align-items:center;
}
.contact-ref-hero-copy h1{
  margin:0 0 14px;
  font-size:62px;
  line-height:1;
  font-family:var(--heading);
  font-weight:900;
}
.contact-ref-breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  color:#d6e4fb;
  font-weight:700;
  font-size:21px;
}
.contact-ref-breadcrumb a,.contact-ref-breadcrumb strong{color:#fff}
.contact-ref-hero-copy p{
  margin:18px 0 0;
  max-width:610px;
  color:#e1edff;
  font-size:18px;
  line-height:1.68;
}
.contact-ref-hero-art img{
  width:100%;
  max-width:510px;
  margin-left:auto;
  opacity:.9;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.3));
}

.contact-ref-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:26px;
  align-items:start;
}
.contact-ref-left h2,.contact-ref-form h2{
  margin:0;
  color:#102e5e;
  font-family:var(--heading);
  font-size:48px;
  line-height:1.05;
  font-weight:900;
}
.contact-ref-eyebrow{
  margin:0 0 8px;
  text-transform:uppercase;
  color:#f18700;
  font-size:13px;
  font-family:var(--heading);
  font-weight:700;
  letter-spacing:.02em;
  display:flex;
  align-items:center;
  gap:8px;
}
.contact-ref-eyebrow-icon{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
}
.contact-ref-eyebrow-icon svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.contact-ref-intro{
  margin:16px 0 24px;
  color:#5c6d84;
  font-size:17px;
  line-height:1.72;
}
.contact-ref-info-list{display:grid;gap:12px}
.contact-ref-info-item{
  display:grid;
  grid-template-columns:64px 1fr;
  gap:14px;
  align-items:start;
  padding:16px 18px;
  border:1px solid #e6edf8;
  border-radius:7px;
  background:#fff;
}
.contact-ref-icon{
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f0f5fd;
  color:#0a4ca9;
  font-size:22px;
  font-weight:700;
}
.contact-ref-icon svg{
  width:25px;
  height:25px;
  fill:currentColor;
}
.contact-ref-info-item h3{
  margin:0 0 5px;
  color:#102e5e;
  font-size:20px;
  font-family:var(--heading);
}
.contact-ref-info-item p{
  margin:0;
  color:#223d66;
  line-height:1.48;
  font-size:15px;
}
.contact-ref-payment{
  display:grid;
  grid-template-columns:64px 1fr;
  gap:14px;
  align-items:start;
  padding:18px 18px 20px;
  border:2px solid #d4e5ff;
  border-radius:7px;
  background:linear-gradient(135deg,#f0f8ff,#e8f4ff);
  margin-top:4px;
}
.contact-ref-payment-icon{
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#0a4ca9;
  color:#fff;
}
.contact-ref-payment-icon svg{
  width:25px;
  height:25px;
  fill:currentColor;
}
.contact-ref-payment-body h3{
  margin:0 0 4px;
  color:#102e5e;
  font-size:20px;
  font-family:var(--heading);
}
.contact-ref-payment-number{
  margin:0 0 10px;
}
.contact-ref-payment-number a{
  color:#0a4ca9;
  text-decoration:none;
  font-weight:700;
  font-size:20px;
  letter-spacing:.3px;
}
.contact-ref-payment-number a:hover{
  text-decoration:underline;
}
.contact-ref-payment-logos{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.contact-ref-payment-logos img{
  height:42px;
  border-radius:7px;
  border:1px solid #d4e5ff;
  background:#fff;
  padding:6px 12px;
  transition:transform .2s,box-shadow .2s;
}
.contact-ref-payment-logos img:hover{
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(10,76,169,.15);
}

.contact-ref-form{
  background:#fff;
  border:1px solid #e6edf8;
  border-radius:7px;
  padding:24px;
  box-shadow:0 16px 38px rgba(7,44,103,.08);
}
.contact-ref-form .success{
  margin:14px 0 0;
  border-radius:7px;
}
.contact-ref-form-grid{
  margin-top:16px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.contact-ref-form input,
.contact-ref-form select,
.contact-ref-form textarea{
  width:100%;
  border:1px solid #dce6f4;
  border-radius:7px;
  background:#fff;
  color:#345071;
  font:600 14px var(--font);
  padding:0 14px;
}
.contact-ref-form input,.contact-ref-form select{height:52px}
.contact-ref-form textarea{
  margin-top:12px;
  height:120px;
  resize:vertical;
  padding-top:12px;
}
.contact-ref-form > input{margin-top:12px}
.contact-ref-form-foot{
  margin-top:14px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}
.contact-ref-form-foot label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#43597a;
  font-size:14px;
}
.contact-ref-form-foot label input{
  width:16px;
  height:16px;
  margin:0;
}
.contact-ref-form-foot a{color:#f18700;font-weight:700}
.contact-ref-form button{
  border:0;
  height:50px;
  border-radius:7px;
  background:#ff8600;
  color:#fff;
  font-family:var(--heading);
  font-size:17px;
  font-weight:800;
  padding:0 24px;
  cursor:pointer;
}
.contact-ref-form button:hover{filter:brightness(.96)}

.contact-ref-map-wrap{
  margin-top:24px;
  display:grid;
  grid-template-columns:1.55fr .95fr;
  border-radius:7px;
  overflow:hidden;
  background:#fff;
  border:1px solid #e6edf8;
}
.contact-ref-map{
  min-height:330px;
  position:relative;
}
.contact-ref-map-card{
  position:absolute;
  left:16px;
  top:16px;
  z-index:2;
  width:min(280px,80%);
  background:#fff;
  border:1px solid #e4ecf8;
  border-radius:7px;
  padding:12px 14px;
  box-shadow:0 12px 22px rgba(7,44,103,.14);
}
.contact-ref-map-card h4{
  margin:0 0 6px;
  color:#132f5c;
  font-family:var(--heading);
  font-size:18px;
}
.contact-ref-map-card p{
  margin:0;
  color:#4f6380;
  font-size:13px;
  line-height:1.5;
}
.contact-ref-map-card a{
  display:inline-block;
  margin-top:8px;
  color:#0a4ca9;
  font-size:13px;
  font-weight:700;
}
.contact-ref-map iframe{
  border:0;
  width:100%;
  height:100%;
  min-height:330px;
}
.contact-ref-hours{
  padding:28px 28px 24px;
  color:#dce9ff;
  background:linear-gradient(145deg,#0b3f96,#042f76);
}
.contact-ref-hours h3,.contact-ref-hours h4{
  margin:0 0 11px;
  font-size:34px;
  color:#fff;
  font-family:var(--heading);
  display:flex;
  align-items:center;
  gap:8px;
}
.contact-ref-hours p{
  margin:0 0 14px;
  line-height:1.7;
  font-size:15px;
}
.contact-ref-hours ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:9px;
}
.contact-ref-hours li{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:#f2f7ff;
  font-size:15px;
}
.contact-ref-hours hr{
  margin:18px 0 14px;
  border:0;
  height:1px;
  background:rgba(255,255,255,.24);
}
.contact-ref-social{
  display:flex;
  gap:9px;
}
.contact-ref-social a{
  width:36px;
  height:36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.14);
  color:#fff;
  transition:.2s ease;
}
.contact-ref-social a:hover{
  background:#fff;
  color:#0a4ca9;
}
.contact-ref-social svg{
  width:18px;
  height:18px;
  fill:currentColor;
}

.contact-ref-trust{
  margin-top:24px;
  border:1px solid #e6edf8;
  border-radius:7px;
  background:#fff;
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.contact-ref-trust article{
  padding:20px 18px 18px;
  display:grid;
  grid-template-columns:52px 1fr;
  gap:12px;
}
.contact-ref-trust article:not(:last-child){border-right:1px solid #e7edf6}
.contact-ref-trust i{
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-style:normal;
  background:#f0f5fd;
  color:#0a4ca9;
  font-weight:700;
}
.contact-ref-trust i img{
  width:30px;
  height:30px;
  object-fit:contain;
}
.contact-ref-trust h4{
  margin:0 0 4px;
  font-size:20px;
  color:#12325f;
  font-family:var(--heading);
}
.contact-ref-trust p{
  margin:0;
  color:#5d6f85;
  font-size:14px;
  line-height:1.45;
}

.page-contact .footer{
  background:linear-gradient(90deg,#0b387f,#082f6b 54%,#072857 100%);
}
.page-contact .footer-grid{gap:40px}
.page-contact .footer h4{font-size:24px}
.page-contact .footer a,.page-contact .footer p{
  color:#d9e7ff;
  font-size:15px;
}
.page-contact .socials a{
  background:rgba(255,255,255,.14);
  border-radius:50%;
}
.page-contact .copyright{
  border-top:1px solid rgba(255,255,255,.15);
}
.contact-footer-meta{
  display:flex;
  justify-content:flex-end;
  gap:18px;
  margin-top:-8px;
  padding-bottom:18px;
  color:#d9e7ff;
  font-size:14px;
}
.contact-footer-meta a{
  color:#d9e7ff;
  opacity:.9;
}

@media(max-width:1100px){
  .contact-ref-hero-copy h1{font-size:48px}
  .contact-ref-left h2,.contact-ref-form h2{font-size:39px}
  .contact-ref-grid{grid-template-columns:1fr}
  .contact-ref-map-wrap{grid-template-columns:1fr}
  .contact-ref-info-item h3{font-size:24px}
  .contact-ref-info-item p{font-size:15px}
  .contact-ref-trust h4{font-size:20px}
  .contact-ref-trust p{font-size:14px}
}
@media(max-width:760px){
  .contact-ref .section{padding:48px 0 58px}
  .contact-ref-hero{min-height:330px}
  .contact-ref-hero-grid{
    min-height:330px;
    grid-template-columns:1fr;
    gap:10px;
    padding:38px 0;
  }
  .contact-ref-breadcrumb{font-size:16px}
  .contact-ref-hero-copy h1{font-size:37px}
  .contact-ref-hero-copy p{
    font-size:16px;
    margin-top:12px;
  }
  .contact-ref-hero-art{display:none}
  .contact-ref-left h2,.contact-ref-form h2{font-size:31px}
  .contact-ref-eyebrow{font-size:14px}
  .contact-ref-intro{font-size:16px}
  .contact-ref-form-grid{grid-template-columns:1fr}
  .contact-ref-form-foot{
    flex-direction:column;
    align-items:flex-start;
  }
  .contact-ref-form button{width:100%}
  .contact-ref-hours h3,.contact-ref-hours h4{font-size:28px}
  .contact-ref-hours p,.contact-ref-hours li{font-size:15px}
  .contact-ref-map-card{position:static;width:100%;border:0;border-bottom:1px solid #e6edf8;border-radius:0;box-shadow:none}
  .contact-ref-trust{grid-template-columns:1fr}
  .contact-ref-trust article:not(:last-child){border-right:0;border-bottom:1px solid #e7edf6}
  .contact-footer-meta{justify-content:center}
}

/* Social icon compatibility for inline SVG anchors */
.top-social{
  gap:10px;
}
.top-social a,
.top-social span{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.45);
  border-radius:50%;
  font-size:10px;
}
.top-social svg{
  width:12px;
  height:12px;
  fill:currentColor;
}
.socials a,
.socials span{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  background:var(--blue);
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.socials svg{
  width:16px;
  height:16px;
  fill:currentColor;
}

/* Homepage service areas section */
.ref-areas{
  position:relative;
  padding:76px 0 84px;
  background:
    radial-gradient(circle at 18% 10%, rgba(8,78,176,.11), rgba(8,78,176,0) 36%),
    radial-gradient(circle at 85% 13%, rgba(246,181,0,.16), rgba(246,181,0,0) 35%),
    linear-gradient(180deg, #f6f9ff 0%, #eef3fb 100%);
}
.ref-areas .ref-section-title{
  margin-bottom:32px;
}
.ref-areas .ref-section-title h2{
  font-size:clamp(34px, 4.5vw, 68px);
}
.ref-areas .ref-section-title h2 span{
  color:var(--ref-blue);
  border-bottom:4px solid var(--ref-yellow);
}
.ref-areas .ref-section-title p{
  max-width:800px;
  margin:0 auto;
}

.ref-areas-shell{
  display:grid;
  grid-template-columns:1.22fr 1fr;
  gap:18px;
  align-items:stretch;
}
.ref-areas-map{
  position:relative;
  min-height:560px;
  padding:30px 26px;
  border:1px solid #d9e5f7;
  border-radius:7px;
  overflow:hidden;
  background:
    radial-gradient(circle at 20% 72%, rgba(10,79,177,.09), rgba(10,79,177,0) 28%),
    radial-gradient(circle at 78% 28%, rgba(246,181,0,.1), rgba(246,181,0,0) 32%),
    linear-gradient(180deg, #f5f8fe 0%, #edf2fb 100%);
  box-shadow:0 16px 34px rgba(11,48,105,.12);
}
.ref-areas-map:before{
  content:'';
  position:absolute;
  left:9%;
  right:9%;
  top:21%;
  bottom:17%;
  border-radius:7px;
  border:1px dashed rgba(20,71,142,.18);
}
.ref-areas-map:after{
  content:'';
  position:absolute;
  left:14%;
  right:14%;
  top:32%;
  bottom:28%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(8,86,188,.08), rgba(8,86,188,.03));
}
.ref-areas-map-pattern{
  position:absolute;
  inset:0;
  background:
    linear-gradient(115deg, rgba(255,255,255,.5) 20%, rgba(255,255,255,.05) 85%),
    repeating-linear-gradient(45deg, rgba(255,255,255,.28) 0 2px, rgba(255,255,255,0) 2px 18px);
}
.ref-areas-city{
  position:absolute;
  left:50%;
  top:52%;
  transform:translate(-50%, -50%);
  z-index:3;
  padding:10px 20px;
  border-radius:999px;
  background:linear-gradient(90deg, #0854bb, #0a66dc);
  color:#fff;
  font-family:var(--heading);
  font-size:36px;
  letter-spacing:.04em;
  font-weight:900;
  box-shadow:0 14px 24px rgba(7,56,128,.10);
  z-index:4;
}
.ref-areas-pins{
  position:relative;
  z-index:3;
  width:100%;
  height:100%;
}
.ref-areas-pins span{
  position:absolute;
  padding:9px 13px;
  border-radius:999px;
  background:#fff;
  color:#143768;
  border:1px solid #dbe7f8;
  box-shadow:0 10px 18px rgba(8,49,111,.12);
  font-family:var(--heading);
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
}
.ref-areas-pins span:before{
  content:'';
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:7px;
  border-radius:50%;
  background:#0a4fb1;
}
.ref-areas-pins span:nth-child(1){top:7%;left:13%}
.ref-areas-pins span:nth-child(2){top:13%;right:12%}
.ref-areas-pins span:nth-child(3){top:30%;left:7%}
.ref-areas-pins span:nth-child(4){top:29%;right:7%}
.ref-areas-pins span:nth-child(5){top:46%;left:18%}
.ref-areas-pins span:nth-child(6){top:52%;right:18%}
.ref-areas-pins span:nth-child(7){top:69%;left:11%}
.ref-areas-pins span:nth-child(8){top:76%;right:10%}

.ref-areas-response{
  position:absolute;
  left:22px;
  bottom:20px;
  z-index:4;
  background:#fff;
  border:1px solid #deebfc;
  border-radius:7px;
  padding:14px 16px;
  box-shadow:0 12px 24px rgba(7,43,99,.14);
}
.ref-areas-response p{
  margin:0 0 3px;
  color:#2f4f76;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.ref-areas-response strong{
  color:#f18700;
  font-size:20px;
  font-family:var(--heading);
}

.ref-areas-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}
.ref-area-card{
  min-height:138px;
  padding:14px 10px 12px;
  background:#fff;
  border:1px solid #dbe8f9;
  border-radius:7px;
  text-align:center;
  box-shadow:0 10px 24px rgba(7,43,99,.08);
}
.ref-area-icon{
  width:52px;
  height:52px;
  margin:0 auto 12px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eaf2ff;
  color:#0a4fb1;
  font-size:20px;
}
.ref-area-icon img{
  width:24px;
  height:24px;
  object-fit:contain;
}
.ref-area-card h3{
  margin:0 0 5px;
  color:#102b52;
  font-size:16px;
  line-height:1.2;
  font-family:var(--heading);
  font-weight:800;
}
.ref-area-card p{
  margin:0;
  color:#5e6f86;
  font-size:13px;
  font-weight:600;
  line-height:1.45;
}
.ref-area-card.is-more .ref-area-icon{
  color:#0a56bf;
}

.ref-areas-help{
  margin-top:14px;
  padding:12px 14px 12px 18px;
  border-radius:7px;
  border:1px solid #d7e5fa;
  background:#f5f9ff;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.ref-areas-help h3{
  margin:0 0 2px;
  color:#123562;
  font-size:22px;
  line-height:1.2;
  font-family:var(--heading);
}
.ref-areas-help p{
  margin:0;
  color:#56708f;
  font-size:14px;
  font-weight:600;
}
.ref-areas-help a{
  flex:none;
  min-width:250px;
  height:48px;
  border-radius:7px;
  background:linear-gradient(90deg, #0a4fb1, #1563cf);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:18px;
  font-family:var(--heading);
  font-weight:800;
  box-shadow:0 12px 20px rgba(9,56,125,.10);
}

.ref-areas-stats{
  margin-top:18px;
  border-radius:7px;
  border:1px solid #d9e6f8;
  background:#fff;
  padding:12px 6px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
}
.ref-areas-stats article{
  display:grid;
  grid-template-columns:58px 1fr;
  align-items:center;
  gap:10px;
  padding:12px 16px;
}
.ref-areas-stats article:not(:last-child){
  border-right:1px solid #e4edf9;
}
.ref-areas-stats span{
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:21px;
  color:#0a4fb1;
  background:#ebf2ff;
}
.ref-areas-stats article:nth-child(even) span{
  color:#f18700;
  background:#fff4df;
}
.ref-areas-stats strong{
  display:block;
  color:#103258;
  font-size:39px;
  line-height:1;
  font-family:var(--heading);
  font-weight:900;
}
.ref-areas-stats p{
  margin:3px 0 0;
  color:#29466e;
  font-size:14px;
  font-weight:700;
}

@media(max-width:1240px){
  .ref-areas-shell{
    grid-template-columns:1fr;
  }
  .ref-areas-map{
    min-height:430px;
  }
  .ref-areas-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media(max-width:980px){
  .ref-areas{
    padding:62px 0 70px;
  }
  .ref-areas-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
  .ref-areas-city{
    font-size:28px;
  }
  .ref-areas-help{
    flex-direction:column;
    align-items:flex-start;
  }
  .ref-areas-help a{
    width:100%;
    min-width:0;
  }
  .ref-areas-stats{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .ref-areas-stats article:nth-child(2){
    border-right:0;
  }
  .ref-areas-stats article:nth-child(-n+2){
    border-bottom:1px solid #e4edf9;
  }
}

@media(max-width:760px){
  .ref-areas{
    padding:54px 0 60px;
  }
  .ref-areas .ref-section-title h2{
    font-size:34px;
  }
  .ref-areas-map{
    min-height:360px;
    padding:18px;
  }
  .ref-areas-city{
    font-size:22px;
    padding:8px 14px;
  }
  .ref-areas-pins span{
    padding:7px 11px;
    font-size:11px;
  }
  .ref-areas-response{
    left:12px;
    bottom:12px;
    padding:10px 12px;
  }
  .ref-areas-response strong{
    font-size:16px;
  }
  .ref-areas-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
  }
  .ref-area-card{
    min-height:138px;
    padding:14px 10px;
  }
  .ref-area-card h3{
    font-size:20px;
  }
  .ref-area-card p{
    font-size:12px;
  }
  .ref-areas-help h3{
    font-size:20px;
  }
  .ref-areas-help a{
    font-size:26px;
  }
  .ref-areas-stats{
    grid-template-columns:1fr;
    padding:4px;
  }
  .ref-areas-stats article{
    border-right:0 !important;
  }
  .ref-areas-stats article:not(:last-child){
    border-bottom:1px solid #e4edf9;
  }
}

/* Hero section refinement: clearer CTA button, themed background, improved readability */
.ref-hero{
  background:
    radial-gradient(circle at 14% 10%, rgba(10,79,177,.11) 0%, rgba(10,79,177,0) 36%),
    radial-gradient(circle at 79% 14%, rgba(246,181,0,.18) 0%, rgba(246,181,0,0) 30%),
    linear-gradient(180deg, #f8fbff 0%, #f2f7ff 56%, #ffffff 100%);
}
.ref-hero-house{
  filter:saturate(108%);
}
.ref-hero-road{
  background:linear-gradient(29deg, #0448a500 0%, #0b5ec48f 100%);
}
.ref-hero-actions .ref-btn-blue{
  background:linear-gradient(132deg, #0649aa 0%, #0b61ca 100%);
  color:#fff;
  border:2px solid var(--ref-yellow);
  box-shadow:0 16px 34px rgba(6,49,113,.10);
  padding:13px 28px;
  font-size:14px;
  letter-spacing:.03em;
}
.ref-hero-actions .ref-btn-blue:before{
  content:'\260E';
  margin-right:8px;
  font-size:14px;
}
.ref-hero-actions .ref-btn-blue:hover{
  transform:translateY(-3px) scale(1.015);
  box-shadow:0 20px 38px rgba(6,49,113,.08);
}
.ref-hero-actions .ref-work-link{
  display:inline-flex;
  align-items:center;
  padding:11px 14px;
  border-radius:6px;
  background:rgba(10,79,177,.08);
}
.ref-quote-box button{
  border-radius:5px;
  border:1px solid #d89f00;
  box-shadow:0 9px 20px rgba(0,0,0,.16);
}

/* Dynamic Gallery Page Refactor */
body.lightbox-open{overflow:hidden}
.gallery-hero{position:relative;min-height:410px;display:flex;align-items:center;overflow:hidden;background:#0b3f95}
.gallery-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.03)}
.gallery-hero-overlay{position:absolute;inset:0;background:linear-gradient(95deg,rgba(8,35,79,.88) 0%,rgba(8,35,79,.7) 43%,rgba(8,35,79,.2) 100%)}
.gallery-hero-content{position:relative;z-index:2;color:#fff;padding:84px 28px}
.gallery-kicker{display:inline-block;background:rgba(255,255,255,.12);padding:8px 12px;border:1px solid rgba(255,255,255,.35);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.gallery-hero-content h1{margin:14px 0 10px;font-size:56px;line-height:1.03;color:#fff}
.gallery-hero-content p{margin:0;max-width:700px;color:#dbebff;line-height:1.75;font-size:16px}

.gallery-shell{background:radial-gradient(circle at 12% 8%,#edf5ff 0,#f8fbff 44%,#fff 100%)}
.gallery-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.gallery-filter{border:1px solid #d2e1f4;background:#fff;color:#153259;padding:11px 16px;font-weight:700;cursor:pointer;transition:.2s}
.gallery-filter:hover{transform:translateY(-2px);border-color:#8cb2e6}
.gallery-filter.active{background:#084ead;color:#fff;border-color:#084ead}

.gallery-filter.active{background:#084ead;color:#fff;border-color:#084ead}

.gallery-album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery-album-card{display:block;text-align:left;border:0;padding:0;background:#fff;box-shadow:0 12px 30px rgba(8,46,101,.1);cursor:pointer;transition:.25s;overflow:hidden}
.gallery-album-card:hover{transform:translateY(-4px)}
.gallery-cover-wrap{position:relative;height:230px;background:#eff5ff;overflow:hidden}
.gallery-cover-wrap img{width:100%;height:100%;object-fit:cover;transition:.35s}
.gallery-album-card:hover .gallery-cover-wrap img{transform:scale(1.06)}
.gallery-open-label{position:absolute;left:14px;bottom:14px;background:rgba(8,35,79,.9);color:#fff;padding:7px 11px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.gallery-album-content{padding:17px 17px 18px}
.gallery-chip{display:inline-block;background:#e9f2ff;color:#0b4ca8;padding:5px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.gallery-album-content h3{margin:11px 0 8px;color:#102441;font-size:22px}
.gallery-album-content p{margin:0;color:#607289;line-height:1.66;font-size:14px;min-height:44px}
.gallery-album-meta{margin-top:14px;display:flex;align-items:baseline;gap:8px}
.gallery-album-meta strong{font-size:25px;color:#0b4ca8;line-height:1}
.gallery-album-meta small{font-size:12px;font-weight:600;color:#8ca0b9;text-transform:uppercase}
.gallery-empty{padding:28px;background:#fff;border:1px solid #d6e4f5;grid-column:1/-1}

.gallery-lightbox{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;padding:26px}
.gallery-lightbox[hidden]{display:none}
.gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(5,20,44,.82);backdrop-filter:blur(4px)}
.gallery-lightbox-dialog{position:relative;z-index:2;background:#fff;max-width:1040px;width:100%;max-height:calc(100vh - 52px);overflow:auto;padding:20px;box-shadow:0 22px 46px rgba(0,0,0,.12)}
.gallery-lightbox-close{position:absolute;right:10px;top:10px;border:0;background:#0d4ca8;color:#fff;width:38px;height:38px;font-size:24px;cursor:pointer;line-height:1}
.gallery-lightbox-main{position:relative;background:#f2f7ff;min-height:420px;display:flex;align-items:center;justify-content:center}
.gallery-lightbox-main img{max-width:100%;max-height:66vh;object-fit:contain}
.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;background:rgba(6,38,87,.92);color:#fff;font-size:32px;line-height:1;cursor:pointer}
.gallery-nav.prev{left:10px}
.gallery-nav.next{right:10px}
.gallery-lightbox-info{padding:16px 4px 11px}
.gallery-lightbox-info h3{margin:0 0 5px;font-size:27px;color:#112544}
.gallery-lightbox-info p{margin:0;color:#60738d;line-height:1.7}
.gallery-lightbox-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.gallery-lightbox-thumbs button{border:2px solid transparent;background:#e8f1ff;padding:0;height:72px;cursor:pointer;overflow:hidden}
.gallery-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}
.gallery-lightbox-thumbs button.active{border-color:#0b4ca8}

@media(max-width:1080px){
  .gallery-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-hero-content h1{font-size:46px}
  .gallery-lightbox-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
  .gallery-hero{min-height:330px}
  .gallery-hero-content{padding:64px 18px}
  .gallery-hero-content h1{font-size:35px}
  .gallery-hero-content p{font-size:15px}
  .gallery-album-grid{grid-template-columns:1fr}
  .gallery-cover-wrap{height:200px}
  .gallery-lightbox{padding:10px}
  .gallery-lightbox-dialog{padding:14px;max-height:calc(100vh - 20px)}
  .gallery-lightbox-main{min-height:280px}
  .gallery-lightbox-main img{max-height:52vh}
  .gallery-lightbox-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Homepage process section: reference-style redesign */
.ref-home .ref-process{
  position:relative;
  padding:90px 0 74px;
  background:linear-gradient(180deg,#f5f8fe 0%,#fff 40%);
  overflow:hidden;
}
.ref-home .ref-process .ref-section-title{
  position:relative;
  z-index:2;
  max-width:1020px;
  margin:0 auto 60px;
}
.ref-home .ref-process .ref-small{
  display:inline-flex;
  align-items:center;
  gap:16px;
  color:#f17300;
  font-size:14px;
  line-height:1;
  letter-spacing:.1em;
  font-weight:700;
  text-transform:uppercase;
}
.ref-home .ref-process .ref-small:before,
.ref-home .ref-process .ref-small:after{
  content:'';
  width:58px;
  height:4px;
  background:#f17300;
  border-radius:99px;
}
.ref-home .ref-process .ref-section-title h2{
  margin:18px 0 16px;
  color:#0a2454;
  font-size:84px;
  line-height:1.05;
  letter-spacing:-.02em;
}
.ref-home .ref-process .ref-section-title h2 span{
  color:#1b63e5;
}
.ref-home .ref-process .ref-section-title p{
  margin-top:0;
  color:#4d6380;
  font-size:15px;
  line-height:1.6;
  font-weight:600;
}
.ref-process-divider{
  margin:24px auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}
.ref-process-divider span{
  width:86px;
  height:4px;
  background:#1f5fcd;
  border-radius:999px;
  position:relative;
}
.ref-process-divider span:before{
  content:'';
  position:absolute;
  top:50%;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#1f5fcd;
  transform:translateY(-50%);
}
.ref-process-divider span:first-child:before{
  left:-12px;
}
.ref-process-divider span:last-child:before{
  right:-12px;
}
.ref-process-divider i{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  font-style:normal;
}
.ref-process-divider i img{
  width:30px;
  height:30px;
  object-fit:contain;
}

.ref-process-flow{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:48px;
}
.ref-process-stage{
  --tone:#0f59c8;
  --tone-soft:#e8f0ff;
  position:relative;
}
.ref-process-stage.tone-orange{
  --tone:#f67500;
  --tone-soft:#fff1df;
}
.ref-process-stage.tone-green{
  --tone:#28a84d;
  --tone-soft:#eaf7ee;
}
.ref-process-stage-top{
  position:relative;
  margin-bottom:-36px;
  z-index:2;
}
.ref-process-visual{
  width:194px;
  height:194px;
  margin:0 auto;
  border-radius:50%;
  border:10px solid #fff;
  background:var(--tone-soft);
  box-shadow:0 20px 34px rgba(8,44,101,.14);
  display:grid;
  place-items:center;
  overflow:hidden;
}
.ref-process-visual img{
  width:124px;
  height:124px;
  object-fit:contain;
  filter:drop-shadow(0 10px 16px rgba(5,44,99,.16));
}
.ref-process-phone{
  width:95px;
  height:95px;
  border-radius:7px;
  display:grid;
  place-items:center;
  color:#0b4fb5;
  background:#fff;
  font-size:48px;
  box-shadow:0 16px 24px rgba(8,44,101,.14);
}
.ref-process-badge{
  width:58px;
  height:58px;
  margin:0 auto;
  border-radius:50%;
  background:var(--tone);
  color:#fff;
  font-size:19px;
  font-weight:900;
  font-family:var(--heading);
  display:grid;
  place-items:center;
  letter-spacing:.03em;
  line-height:1;
}
.ref-process-trust-points span{
  display:block;
  color:#183660;
  font-size:13px;
  line-height:1.45;
  font-weight:800;
}
.ref-process-trust-cta{
  padding:24px;
  text-align:center;
  display:grid;
  gap:10px;
}
.ref-process-trust-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:#0b4fb5;
  color:#fff;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  padding:13px 16px;
  border-radius:7px;
}
.ref-process-trust-cta a b{
  font-size:16px;
}
.ref-process-trust-cta small{
  color:#4a6381;
  font-size:12px;
  font-weight:800;
}

/* About page (about-ref) */
.about-ref-hero{
  position:relative;
  padding:44px 0 34px;
  background:#fff;
}
.about-ref-hero-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:28px;
  align-items:center;
}
.about-ref-eyebrow{
  margin:0 0 11px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:13px;
  font-weight:700;
  color:#0d54bc;
}
.about-ref-copy h1{
  margin:0 0 14px;
  font-family:var(--heading);
  font-size:60px;
  line-height:1.02;
  letter-spacing:-.02em;
  color:#102a4d;
}
.about-ref-copy h1 span{
  color:#0d54bc;
}
.about-ref-lead{
  margin:0 0 24px;
  max-width:620px;
  color:#4f6580;
  line-height:1.72;
  font-size:15px;
  font-weight:600;
}
.about-ref-feature-list{
  display:grid;
  gap:12px;
  margin-bottom:24px;
}
.about-ref-feature-card{
  padding:14px;
  border:1px solid #e3ecf9;
  border-radius:7px;
  background:#fff;
  box-shadow:0 10px 22px rgba(8,43,96,.07);
  display:grid;
  grid-template-columns:48px 1fr;
  gap:12px;
  align-items:flex-start;
}
.about-ref-feature-icon{
  width:44px;
  height:44px;
  border-radius:7px;
  display:grid;
  place-items:center;
  background:#eaf2ff;
  color:#0d54bc;
  font-size:17px;
}
.about-ref-feature-card h3{
  margin:0 0 5px;
  color:#133257;
  font-size:19px;
}
.about-ref-feature-card p{
  margin:0;
  color:#61758f;
  font-size:14px;
  line-height:1.6;
}
.about-ref-actions{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.about-ref-video{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#102b50;
  font-weight:800;
}
.about-ref-video span{
  width:46px;
  height:46px;
  border-radius:50%;
  border:2px solid #d9e8ff;
  display:grid;
  place-items:center;
  color:#0b4fb5;
  background:#fff;
}
.about-ref-hero-image{
  position:relative;
}
.about-ref-hero-image img{
  width:100%;
  height:640px;
  object-fit:cover;
  border-radius:7px;
  box-shadow:0 24px 40px rgba(7,40,92,.14);
}

.about-ref-stats{
  position:relative;
  z-index:4;
  margin-top:-12px;
  padding:0 0 54px;
  background:#fff;
}
.about-ref-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  background:#fff;
  border:1px solid #e0eaf8;
  border-radius:7px;
  box-shadow:0 15px 30px rgba(8,41,92,.08);
  padding:14px;
}
.about-ref-stat-card{
  text-align:center;
  padding:14px 10px;
  border-right:1px solid #edf2fa;
}
.about-ref-stat-card:last-child{
  border-right:0;
}
.about-ref-stat-card span{
  display:inline-grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:7px;
  background:#e8f1ff;
  color:#0c54bc;
  font-size:24px;
}
.about-ref-stat-card h3{
  margin:10px 0 3px;
  font-size:42px;
  line-height:1;
  color:#102b4f;
}
.about-ref-stat-card p{
  margin:0;
  font-size:16px;
  color:#5a708b;
  font-weight:700;
}

.about-ref-story{
  background:#fff;
  padding-top:6px;
}
.about-ref-story-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  align-items:center;
}
.about-ref-story-gallery{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  grid-template-rows:1fr 1fr;
  gap:14px;
}
.about-ref-story-image{
  border:1px solid #dfebf8;
  border-radius:7px;
  overflow:hidden;
  box-shadow:0 12px 24px rgba(8,41,92,.08);
  background:#fff;
}
.about-ref-story-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.about-ref-story-image-1{
  grid-row:1/3;
}
.about-ref-story-image-1 img{
  min-height:430px;
}
.about-ref-story-image-2 img,
.about-ref-story-image-3 img{
  min-height:208px;
}
.about-ref-story-copy h2{
  margin:0 0 12px;
  font-size:52px;
  line-height:1.04;
  color:#122b4f;
}
.about-ref-story-copy p{
  margin:0 0 14px;
  color:#5a718b;
  font-size:15px;
  line-height:1.8;
}
.about-ref-signature{
  margin-top:18px;
}
.about-ref-signature strong{
  display:block;
  color:#0f2c50;
  font-size:22px;
}
.about-ref-signature span{
  color:#0c53ba;
  font-weight:700;
  font-size:14px;
}

.about-ref-values{
  background:linear-gradient(180deg,#f5f9ff 0%,#f9fbff 100%);
}
.about-ref-values-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.about-ref-value-card{
  background:#fff;
  border:1px solid #dbe8f8;
  border-radius:7px;
  box-shadow:0 12px 24px rgba(10,41,88,.08);
  padding:18px 14px;
  text-align:center;
}
.about-ref-value-card span{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 auto 10px;
  font-size:18px;
}
.about-ref-value-card span.is-blue{background:#e5efff;color:#0c53ba}
.about-ref-value-card span.is-orange{background:#fff1e1;color:#ef7a00}
.about-ref-value-card span.is-green{background:#e4f8eb;color:#179f46}
.about-ref-value-card span.is-sky{background:#e8f4ff;color:#0f6bd8}
.about-ref-value-card span.is-purple{background:#f2eaff;color:#7244d4}
.about-ref-value-card h3{
  margin:0 0 8px;
  color:#123159;
  font-size:22px;
}
.about-ref-value-card p{
  margin:0;
  color:#60758e;
  font-size:14px;
  line-height:1.6;
}

.about-ref-team{
  background:#fff;
  padding-top:28px;
}
.about-ref-team-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.about-ref-team-card{
  background:#fff;
  border:1px solid #dbe8f8;
  border-radius:7px;
  box-shadow:0 12px 24px rgba(10,41,88,.08);
  padding:10px;
  text-align:center;
}
.about-ref-team-card img{
  width:100%;
  height:220px;
  object-fit:cover;
  object-position:center top;
  border-radius:7px;
  margin-bottom:12px;
}
.about-ref-team-card h3{
  margin:0 0 5px;
  color:#122d53;
  font-size:20px;
  font-weight:600;
}
.about-ref-team-card p{
  margin:0;
  color:#0c53ba;
  font-size:13px;
  font-weight:600;
}

.about-ref-cta{
  margin:14px 0 6px;
  padding:26px 0;
  background:linear-gradient(108deg,#0a4fb5 0%,#0a438f 70%,#f6b500 70%,#f6b500 100%);
  color:#fff;
}
.about-ref-cta-grid{
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
}
.about-ref-cta h2{
  margin:0 0 8px;
  font-size:40px;
  line-height:1.05;
}
.about-ref-cta p{
  margin:0;
  max-width:660px;
  color:#deebff;
  font-size:16px;
  line-height:1.68;
}
.about-ref-cta .btn{
  min-width:210px;
}

@media(max-width:1180px){
  .ref-process-trust{
    grid-template-columns:1fr;
  }
  .ref-process-trust-points{
    border:0;
    border-top:1px solid #dce6f6;
    border-bottom:1px solid #dce6f6;
  }
  .about-ref-hero-grid,
  .about-ref-story-grid,
  .about-ref-cta-grid{
    grid-template-columns:1fr;
  }
  .about-ref-values-grid,
  .about-ref-team-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .about-ref-stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .about-ref-stat-card{
    border-right:0;
    border-bottom:1px solid #edf2fa;
  }
  .about-ref-stat-card:nth-last-child(-n+2){
    border-bottom:0;
  }
  .about-ref-hero-image img{
    height:440px;
  }
}

@media(max-width:760px){
  .about-ref-copy h1,
  .about-ref-story-copy h2,
  .about-ref-cta h2{
    font-size:34px;
  }
  .about-ref-values-grid,
  .about-ref-team-grid,
  .about-ref-stats-grid,
  .ref-process-trust-points{
    grid-template-columns:1fr;
  }
  .about-ref-story-gallery{
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }
  .about-ref-story-image-1{
    grid-row:auto;
  }
  .about-ref-story-image-1 img,
  .about-ref-story-image-2 img,
  .about-ref-story-image-3 img{
    min-height:220px;
  }
  .about-ref-stat-card,
  .about-ref-stat-card:nth-last-child(-n+2){
    border-bottom:1px solid #edf2fa;
  }
  .about-ref-stats-grid article:last-child{
    border-bottom:0;
  }
  .about-ref-team-card img{
    height:260px;
  }
  .about-ref-actions .btn{
    width:100%;
  }
}

/* Home process section (matched with provided reference) */
.ref-home .ref-process.ref-process-simple{
  padding:58px 0 52px;
  background:#fff;
}
.ref-workprocess-head{
  margin:0 auto 30px;
  text-align:center;
}
.ref-workprocess-head p{
  margin:0 0 10px;
  color:#1554bf;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:14px;
  font-weight:700;
}
.ref-workprocess-head h2{
  margin:0;
  color:#0d2450;
  font-size:46px;
  line-height:1.1;
}
.ref-workprocess-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
}
.ref-workprocess-card{
  position:relative;
  text-align:center;
}
.ref-workprocess-card:not(:last-child):after{
  content:'';
  position:absolute;
  top:18px;
  right:-54px;
  width:108px;
  border-top:3px dotted #2c62cd;
}
.ref-workprocess-card:not(:last-child):before{
  content:'›';
  position:absolute;
  top:8px;
  right:-61px;
  color:#2c62cd;
  font-size:24px;
  font-weight:900;
}
.ref-workprocess-number{
  width:42px;
  height:42px;
  margin:0 auto 18px;
  border-radius:50%;
  background:#0b4db3;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:17px;
  font-weight:900;
}
.ref-workprocess-icon{
  height:70px;
  display:grid;
  place-items:center;
  margin-bottom:14px;
}
.ref-workprocess-icon img{
  width:64px;
  height:64px;
  object-fit:contain;
}
.ref-workprocess-copy h3{
  margin:0 0 8px;
  color:#122751;
  font-size:16px;
  line-height:1.2;
}
.ref-workprocess-copy p{
  margin:0 auto;
  max-width:240px;
  color:#455a79;
  font-size:13px;
  line-height:1.45;
}

@media(max-width:1180px){
  .ref-workprocess-head h2{
    font-size:38px;
  }
  .ref-workprocess-copy h3{
    font-size:15px;
  }
  .ref-workprocess-copy p{
    font-size:13px;
  }
}

@media(max-width:920px){
  .ref-workprocess-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px 22px;
  }
  .ref-workprocess-card:after,
  .ref-workprocess-card:before{
    display:none;
  }
}

@media(max-width:620px){
  .ref-home .ref-process.ref-process-simple{
    padding:56px 0 52px;
  }
  .ref-workprocess-head{
    margin-bottom:30px;
  }
  .ref-workprocess-head p{
    font-size:12px;
  }
  .ref-workprocess-head h2{
    font-size:30px;
  }
  .ref-workprocess-grid{
    grid-template-columns:1fr;
  }
  .ref-workprocess-number{
    margin-bottom:14px;
  }
  .ref-workprocess-icon{
    height:62px;
    margin-bottom:8px;
  }
  .ref-workprocess-copy h3{
    font-size:15px;
  }
  .ref-workprocess-copy p{
    font-size:13px;
  }
}

/* Home services section (fully dynamic, card image layout) */
.ref-home .ref-services{
  padding:72px 0 56px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 22%, rgba(26,90,200,.11), rgba(26,90,200,0) 26%),
    radial-gradient(circle at 86% 15%, rgba(247,159,0,.16), rgba(247,159,0,0) 21%),
    linear-gradient(180deg,#f7fbff 0%,#f2f7ff 100%);
}
.ref-home .ref-services:before{
  content:'';
  position:absolute;
  left:-120px;
  top:118px;
  width:320px;
  height:320px;
  border:2px dashed rgba(31,109,224,.24);
  border-right:none;
  border-bottom:none;
  border-radius:50%;
  transform:rotate(-10deg);
  pointer-events:none;
}
.ref-home .ref-services:after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:130px;
  background:
    radial-gradient(circle, rgba(28,107,225,.12) 1.3px, transparent 1.3px) 0 0/16px 16px;
  opacity:.5;
  pointer-events:none;
}
.ref-home .ref-services > .container{
  position:relative;
  z-index:2;
}
.ref-home .ref-services-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:10px;
}
.ref-home .ref-services-title{
  max-width:760px;
}
.ref-home .ref-services-title .ref-small{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin:0 0 10px;
  color:#0c57c6;
  letter-spacing:.08em;
}
.ref-home .ref-services-title .ref-small:before,
.ref-home .ref-services-title .ref-small:after{
  content:'';
  width:38px;
  height:4px;
  border-radius:999px;
  background:#f09c13;
}
.ref-home .ref-services-title h2{
  margin:0;
  color:#051f4e;
  font-size:78px;
  line-height:.95;
  letter-spacing:-.02em;
  font-weight:900;
}
.ref-home .ref-services-title h2 span{
  color:#1b64de;
}
.ref-home .ref-services-intro{
  margin:0 0 22px;
  max-width:900px;
  color:#5f7187;
  font-size:18px;
  line-height:1.75;
  font-weight:600;
}
.ref-home .ref-services-all{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:50px;
  padding:0 20px;
  border:1px solid #d7e4f6;
  border-radius:7px;
  background:#fff;
  color:#0c3f8f;
  font-family:var(--heading);
  font-size:15px;
  font-weight:800;
  box-shadow:0 10px 20px rgba(9,41,92,.06);
  transition:.2s ease;
}
.ref-home .ref-services-all:hover{
  transform:translateY(-2px);
  border-color:#0d4ead;
  box-shadow:0 14px 24px rgba(9,41,92,.12);
}
.ref-home .ref-services-all span{
  font-size:18px;
  line-height:1;
}
.ref-home .ref-service-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}
.ref-home .ref-services .ref-service-card{
  min-height:100%;
  padding:0;
  border:1px solid #e3eaf5;
  border-radius:7px;
  background:#fff;
  box-shadow:0 12px 26px rgba(7,38,84,.08);
  overflow:hidden;
  text-align:left;
  transform:translate3d(0,0,0);
  will-change:transform,box-shadow;
  transition:transform .36s cubic-bezier(.22,.61,.36,1),box-shadow .36s cubic-bezier(.22,.61,.36,1),border-color .36s cubic-bezier(.22,.61,.36,1);
}
.ref-home .ref-services .ref-service-card:hover{
  transform:translate3d(0,-6px,0);
  border-color:#d6e4f8;
  box-shadow:0 22px 36px rgba(7,38,84,.15);
}
.ref-home .ref-service-media{
  display:block;
  aspect-ratio:16/11;
  background:#eef4fb;
}
.ref-home .ref-service-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  margin:0;
  transform:scale(1);
  transition:transform .5s cubic-bezier(.22,.61,.36,1);
}
.ref-home .ref-services .ref-service-card:hover .ref-service-media img{
  transform:scale(1.035);
}
.ref-home .ref-service-copy{
  padding:18px 18px 20px;
}
.ref-home .ref-service-copy h3{
  margin:0 0 8px;
  font-size:19px;
  line-height:1.14;
  color:#102e5f;
  font-weight:900;
}
.ref-home .ref-service-copy h3 a{
  color:inherit;
}
.ref-home .ref-service-copy p{
  margin:0;
  color:#5d6e84;
  font-size:15px;
  line-height:1.7;
  font-weight:600;
}
.ref-home .ref-service-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
  color:#0d4ead;
  font-family:var(--heading);
  font-size:14px;
  font-weight:800;
}
.ref-home .ref-service-link span{
  font-size:18px;
  line-height:1;
}

@media(max-width:1280px){
  .ref-home .ref-services-title h2{
    font-size:58px;
  }
  .ref-home .ref-service-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:920px){
  .ref-home .ref-services-head{
    flex-direction:column;
    align-items:flex-start;
    margin-bottom:14px;
  }
  .ref-home .ref-services-title h2{
    font-size:40px;
    line-height:1.04;
  }
  .ref-home .ref-services-intro{
    font-size:15px;
    margin-bottom:22px;
  }
  .ref-home .ref-service-copy h3{
    font-size:20px;
  }
}

@media(max-width:640px){
  .ref-home .ref-services{
    padding:64px 0 52px;
  }
  .ref-home .ref-services:before{
    display:none;
  }
  .ref-home .ref-services:after{
    height:80px;
    opacity:.4;
  }
  .ref-home .ref-services-title .ref-small{
    gap:10px;
  }
  .ref-home .ref-services-title .ref-small:before,
  .ref-home .ref-services-title .ref-small:after{
    width:26px;
    height:3px;
  }
  .ref-home .ref-services-title h2{
    font-size:32px;
    line-height:1.08;
  }
  .ref-home .ref-service-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .ref-home .ref-service-copy{
    padding:16px;
  }
  .ref-home .ref-service-copy h3{
    font-size:19px;
  }
}

/* Dynamic home materials section */
.ref-materials{
  padding:56px 0 60px;
  background:linear-gradient(180deg,#f5f8fd 0%,#f1f6ff 100%);
}
.ref-materials-title{
  max-width:860px;
  margin:0 auto 24px;
  text-align:center;
}
.ref-materials-title .ref-small{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin:0 0 10px;
  letter-spacing:.1em;
}
.ref-materials-title .ref-small:before,
.ref-materials-title .ref-small:after{
  content:'';
  width:58px;
  height:2px;
  background:#77a7e8;
}
.ref-materials-title h2{
  margin:0;
  color:#10233f;
  font-size:72px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.02em;
}
.ref-materials-title h2 span{
  color:#0a4fb5;
}
.ref-materials-title p{
  max-width:980px;
  margin:14px auto 0;
  color:#566a83;
  font-size:17px;
  line-height:1.72;
  font-weight:600;
}
.ref-material-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}
.ref-material-card{
  position:relative;
  border:1px solid #e4ebf6;
  border-radius:7px;
  background:var(--material-card-bg,#fff);
  padding:16px 16px 18px;
  box-shadow:0 14px 32px rgba(9,39,88,.08);
  transition:.25s ease;
}
.ref-material-card:hover{
  transform:translateY(-6px);
  box-shadow:0 22px 42px rgba(9,39,88,.16);
}
.ref-material-image{
  background:var(--material-image-bg,#e8f0ff);
  border-radius:7px;
  min-height:176px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
}
.ref-material-image img{
  width:100%;
  height:160px;
  object-fit:cover;
  border-radius:7px;
}
.ref-material-icon{
  width:50px;
  height:50px;
  border-radius:50%;
  position:relative;
  margin-top:-20px;
  background:var(--material-icon-bg,#2f63f7);
  border:4px solid #fff;
  box-shadow:0 7px 16px rgba(21,49,94,.08);
  display:grid;
  place-items:center;
  color:#fff;
  font-size:16px;
}
.ref-material-icon img{
  width:20px;
  height:20px;
  object-fit:contain;
  filter:brightness(0) invert(1);
}
.ref-material-card h3{
  margin:12px 0 8px;
  color:#132949;
  font-size:26px;
  line-height:1.2;
  font-weight:900;
}
.ref-material-card p{
  margin:0;
  color:#566a83;
  font-size:15px;
  line-height:1.62;
  font-weight:600;
}
.ref-materials-cta{
  margin-top:26px;
  text-align:center;
}
.ref-materials-cta .ref-btn{
  gap:10px;
  min-width:320px;
}
@media(max-width:1180px){
  .ref-materials-title h2{font-size:54px}
  .ref-materials-title p{font-size:16px}
  .ref-material-card h3{font-size:22px}
  .ref-material-card p{font-size:16px}
  .ref-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .ref-materials{padding:54px 0 56px}
  .ref-materials-title .ref-small:before,
  .ref-materials-title .ref-small:after{width:36px}
  .ref-materials-title h2{font-size:36px;line-height:1.08}
  .ref-materials-title p{font-size:16px}
  .ref-material-grid{grid-template-columns:1fr}
  .ref-material-card h3{font-size:21px}
  .ref-material-card p{font-size:15px}
  .ref-materials-cta .ref-btn{min-width:0;width:100%}
}

/* Homepage about section redesign */
.ref-home .ref-about{
  padding:64px 0 60px;
  background:
    radial-gradient(circle at 16% 18%, rgba(8,84,182,.08), rgba(8,84,182,0) 38%),
    radial-gradient(circle at 82% 88%, rgba(246,181,0,.12), rgba(246,181,0,0) 32%),
    #fff;
}
.ref-home .ref-about-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:46px;
  align-items:start;
}
.ref-home .ref-about-copy .ref-small{
  display:flex;
  align-items:center;
  gap:12px;
  color:#0a4fb3;
}
.ref-home .ref-about-copy .ref-small:after{
  content:'';
  width:54px;
  height:2px;
  background:#f6b500;
}
.ref-home .ref-about-copy h2{
  margin:0;
  color:#0f2748;
  font-size:clamp(42px,4vw,76px);
  line-height:.98;
  letter-spacing:-.03em;
  font-weight:900;
}
.ref-home .ref-about-copy h2 span{
  color:#0b56be;
}
.ref-home .ref-about-lead{
  margin:16px 0 0;
  max-width:620px;
  color:#5a6f89;
  font-size:17px;
  line-height:1.8;
  font-weight:600;
}
.ref-home .ref-about-stats-box{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid #dbe6f8;
  border-radius:7px;
  background:#fff;
  box-shadow:0 14px 32px rgba(12,43,92,.08);
  overflow:hidden;
}
.ref-home .ref-about-stat{
  padding:22px 14px 18px;
  text-align:center;
  border-right:1px solid #e8eef9;
  overflow:hidden;
}
.ref-home .ref-about-stat:last-child{
  border-right:0;
}
.ref-home .ref-about-stat-icon{
  width:68px;
  height:68px;
  border-radius:7px;
  margin:0 auto 14px;
  display:grid;
  place-items:center;
  background:#0e57bc;
  color:#fff;
}
.ref-home .ref-about-stat-icon i{
  font-size:32px;
  line-height:1;
}
.ref-home .ref-about-stat:nth-child(even) .ref-about-stat-icon{
  background:#f6b500;
  color:#11305a;
}
.ref-home .ref-about-stat strong{
  display:block;
  color:#132f52;
  font-family:var(--heading);
  font-size:clamp(32px,2.15vw,42px);
  line-height:1.02;
  letter-spacing:-.01em;
  font-weight:900;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.ref-home .ref-about-stat p{
  margin:12px 0 0;
  color:#60748f;
  font-family:var(--font);
  font-size:14px;
  line-height:1.35;
  font-weight:600;
}
.ref-home .ref-about-checklist{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.ref-home .ref-about-checklist li{
  display:flex;
  align-items:flex-start;
  gap:11px;
  color:#405976;
  font-size:15px;
  line-height:1.48;
  font-weight:700;
}
.ref-home .ref-about-checklist i{
  flex:none;
  color:#0e5abd;
  font-size:14px;
  margin-top:4px;
}
.ref-home .ref-about-copy .ref-btn{
  margin-top:20px;
  gap:11px;
  min-width:238px;
  min-height:56px;
}

.ref-home .ref-about-media{
  position:relative;
  padding-bottom:62px;
}
.ref-home .ref-about-main-image{
  position:relative;
  border-radius:7px;
  overflow:hidden;
  box-shadow:0 28px 58px rgba(10,43,93,.08);
  background:#f4f8ff;
}
.ref-home .ref-about-main-image:before{
  content:'';
  position:absolute;
  left:-100px;
  top:-76px;
  width:280px;
  height:280px;
  border-radius:50%;
  border:26px solid #f6b500;
  border-right-color:transparent;
  border-bottom-color:transparent;
  z-index:1;
}
.ref-home .ref-about-main-image:after{
  content:'';
  position:absolute;
  right:-96px;
  bottom:-110px;
  width:270px;
  height:270px;
  border-radius:50%;
  border:22px solid #0b56bf;
  border-left-color:transparent;
  border-top-color:transparent;
  z-index:1;
}
.ref-home .ref-about-main-image img{
  width:100%;
  height:590px;
  object-fit:cover;
  object-position:center;
}
.ref-home .ref-about-highlight{
  position:absolute;
  left:26px;
  right:26px;
  bottom:0;
  display:grid;
  grid-template-columns:72px 1fr;
  align-items:center;
  gap:16px;
  background:linear-gradient(105deg,#0b4fb1,#0a459e);
  color:#fff;
  border-radius:7px;
  padding:22px 24px;
  box-shadow:0 18px 36px rgba(10,54,122,.08);
  overflow:hidden;
}
.ref-home .ref-about-highlight-icon{
  width:72px;
  height:72px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f6b500;
  color:#133463;
  font-size:32px;
}
.ref-home .ref-about-highlight > div{
  position:relative;
  padding-left:22px;
}
.ref-home .ref-about-highlight > div:before{
  content:'';
  position:absolute;
  left:0;
  top:4px;
  bottom:4px;
  width:1px;
  background:rgba(255,255,255,.34);
}
.ref-home .ref-about-highlight:after{
  content:'';
  position:absolute;
  right:-20px;
  top:12px;
  width:260px;
  height:88px;
  border:2px solid rgba(255,255,255,.16);
  border-radius:7px;
  pointer-events:none;
}
.ref-home .ref-about-highlight h3{
  margin:0 0 4px;
  font-size:23px;
  line-height:1.2;
  font-weight:800;
  color:#fff;
}
.ref-home .ref-about-highlight p{
  margin:0;
  color:#d9e7ff;
  font-size:14px;
  line-height:1.55;
  font-weight:600;
}

@media(max-width:1180px){
  .ref-home .ref-about-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  .ref-home .ref-about-main-image img{
    height:470px;
  }
}

@media(max-width:900px){
  .ref-home .ref-about-stats-box{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ref-home .ref-about-stat strong{
    font-size:36px;
  }
  .ref-home .ref-about-stat p{
    font-size:13px;
  }
  .ref-home .ref-about-checklist li{
    font-size:15px;
  }
  .ref-home .ref-about-stat:nth-child(2n){
    border-right:0;
  }
  .ref-home .ref-about-stat{
    border-bottom:1px solid #e8eef9;
  }
  .ref-home .ref-about-stat:nth-last-child(-n+2){
    border-bottom:0;
  }
}

@media(max-width:760px){
  .ref-home .ref-about{
    padding:60px 0 56px;
  }
  .ref-home .ref-about-copy h2{
    font-size:clamp(33px,9vw,48px);
    line-height:1.02;
  }
  .ref-home .ref-about-lead{
    font-size:15px;
    line-height:1.72;
  }
  .ref-home .ref-about-stats-box{
    grid-template-columns:1fr;
  }
  .ref-home .ref-about-stat{
    border-right:0;
    border-bottom:1px solid #e8eef9;
  }
  .ref-home .ref-about-stat strong{
    font-size:32px;
  }
  .ref-home .ref-about-stat p{
    font-size:13px;
  }
  .ref-home .ref-about-stat:last-child{
    border-bottom:0;
  }
  .ref-home .ref-about-checklist li{
    font-size:14px;
    line-height:1.45;
  }
  .ref-home .ref-about-checklist i{
    margin-top:6px;
  }
  .ref-home .ref-about-copy .ref-btn{
    min-width:0;
  }
  .ref-home .ref-about-media{
    padding-bottom:0;
  }
  .ref-home .ref-about-main-image{
    border-radius:7px;
  }
  .ref-home .ref-about-main-image:before,
  .ref-home .ref-about-main-image:after{
    display:none;
  }
  .ref-home .ref-about-main-image img{
    height:320px;
  }
  .ref-home .ref-about-highlight{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    margin-top:14px;
    border-radius:7px;
    padding:18px;
    grid-template-columns:58px 1fr;
  }
  .ref-home .ref-about-highlight > div{
    padding-left:14px;
  }
  .ref-home .ref-about-highlight-icon{
    width:58px;
    height:58px;
    font-size:24px;
  }
  .ref-home .ref-about-highlight h3{
    font-size:19px;
  }
  .ref-home .ref-about-highlight p{
    font-size:13px;
  }
}

/* Dynamic clients carousel */
.ref-home .ref-clients{
  position:relative;
  padding:78px 0 86px;
  background:
    radial-gradient(circle at 10% 15%, rgba(246,181,0,.15) 0, rgba(246,181,0,0) 40%),
    radial-gradient(circle at 92% 28%, rgba(11,86,191,.16) 0, rgba(11,86,191,0) 42%),
    linear-gradient(180deg, #f5f9ff 0%, #eef4ff 100%);
}
.ref-home .ref-clients:before{
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:#dce6f6;
}
.ref-home .ref-clients-slider{
  margin-top:24px;
  overflow:hidden;
}
.ref-home .ref-clients-track{
  display:flex;
  gap:18px;
  will-change:transform;
  transition:transform .6s ease;
}
.ref-home .ref-client-item{
  flex:0 0 calc((100% - 90px) / 6);
  min-height:132px;
  border:1px solid #d8e3f4;
  border-radius:7px;
  background:#fff;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:10px;
  padding:18px 14px 16px;
  box-shadow:0 14px 30px rgba(10,48,103,.09);
}
.ref-home .ref-client-logo-wrap{
  width:100%;
  height:48px;
  display:grid;
  place-items:center;
}
.ref-home .ref-client-item img{
  max-width:120px;
  max-height:46px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:none;
  opacity:1;
  transition:transform .25s ease;
}
.ref-home .ref-client-item p{
  margin:0;
  color:#223a5e;
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.ref-home .ref-client-item:hover img{
  transform:translateY(-2px);
}
.ref-home .ref-clients-dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin-top:22px;
}
.ref-home .ref-client-dot{
  width:20px;
  height:4px;
  border:0;
  border-radius:999px;
  background:#8aa8d5;
  opacity:.55;
  cursor:pointer;
  padding:0;
  transition:all .25s ease;
}
.ref-home .ref-client-dot.active{
  width:34px;
  opacity:1;
  background:#0b55be;
}

@media(max-width:1400px){
  .ref-home .ref-client-item{
    flex-basis:calc((100% - 72px) / 5);
  }
}
@media(max-width:1180px){
  .ref-home .ref-client-item{
    flex-basis:calc((100% - 54px) / 4);
  }
}
@media(max-width:900px){
  .ref-home .ref-clients{
    padding:64px 0 70px;
  }
  .ref-home .ref-client-item{
    flex-basis:calc((100% - 36px) / 3);
    min-height:118px;
  }
}
@media(max-width:760px){
  .ref-home .ref-client-item{
    flex-basis:calc((100% - 18px) / 2);
  }
}
@media(max-width:520px){
  .ref-home .ref-client-item{
    flex-basis:100%;
  }
}

/* Quick Quote dedicated page */
.quick-quote-page{
  background:
    radial-gradient(900px 380px at 8% -10%, rgba(0, 82, 182, .12), transparent 65%),
    radial-gradient(680px 300px at 100% 0, rgba(248, 173, 8, .14), transparent 60%),
    #f5f8fd;
}
.quick-quote-hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#073d87 0%, #0052b6 52%, #0f62c8 100%);
  color:#fff;
  min-height:360px;
}
.quick-quote-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(to right, rgba(4, 23, 52, .16), rgba(4, 23, 52, .02)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.12)' stroke-width='1'%3E%3Cpath d='M0 40h160M0 80h160M0 120h160M40 0v160M80 0v160M120 0v160'/%3E%3C/g%3E%3C/svg%3E");
  opacity:.5;
}
.quick-quote-hero-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:38px;
  align-items:center;
  padding:68px 0 60px;
}
.quick-quote-kicker{
  margin:0 0 10px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:800;
  font-size:12px;
  color:#ffd676;
}
.quick-quote-copy h1{
  margin:0;
  font-size:48px;
  line-height:1.06;
}
.quick-quote-lead{
  margin:18px 0 0;
  color:#e4f0ff;
  max-width:680px;
  font-size:16px;
  line-height:1.75;
}
.quick-quote-points{
  margin:22px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:11px;
}
.quick-quote-points li{
  position:relative;
  padding-left:27px;
  color:#eff6ff;
  font-weight:700;
}
.quick-quote-points li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:19px;
  height:19px;
  border-radius:50%;
  background:rgba(255,255,255,.2);
  display:grid;
  place-items:center;
  font-size:12px;
}
.quick-quote-badges{
  display:grid;
  gap:12px;
}
.quick-quote-badges article{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(2px);
  border-radius:7px;
  padding:16px 18px;
}
.quick-quote-badges strong{
  display:block;
  color:#ffd264;
  font-size:30px;
  line-height:1;
  margin-bottom:6px;
  font-weight:900;
}
.quick-quote-badges span{
  color:#f2f8ff;
  font-size:14px;
  font-weight:700;
}
.quick-quote-main{
  padding-top:54px;
}
.quick-quote-main-grid{
  display:grid;
  grid-template-columns:1fr 480px;
  gap:28px;
  align-items:start;
}
.quick-quote-info{
  background:#fff;
  border:1px solid #dce8f8;
  border-radius:7px;
  padding:28px;
  box-shadow:0 14px 36px rgba(10,45,95,.08);
}
.quick-quote-info h2{
  margin:0;
  font-size:34px;
  line-height:1.15;
  color:#102949;
}
.quick-quote-info > p{
  margin:14px 0 0;
  color:#5f7088;
  line-height:1.78;
}
.quick-quote-contact{
  margin-top:20px;
  display:grid;
  gap:10px;
}
.quick-quote-contact a,
.quick-quote-contact p{
  margin:0;
  display:flex;
  align-items:flex-start;
  gap:11px;
  padding:12px 13px;
  background:#f6f9ff;
  border-radius:7px;
  border:1px solid #e5eefb;
  color:#1a3a64;
  font-weight:700;
}
.quick-quote-contact i{
  margin-top:3px;
  color:#0051b4;
}
.quick-quote-trust{
  margin-top:16px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.quick-quote-trust article{
  background:linear-gradient(145deg,#f8fbff,#eff4fc);
  border:1px solid #dce7f8;
  border-radius:7px;
  padding:15px 13px;
}
.quick-quote-trust i{
  color:#0051b4;
  font-size:18px;
}
.quick-quote-trust h3{
  margin:10px 0 6px;
  font-size:16px;
  color:#17335a;
}
.quick-quote-trust p{
  margin:0;
  color:#60738f;
  font-size:13px;
  line-height:1.55;
}
.quick-quote-form{
  background:#fff;
  border:1px solid #dce8f8;
  border-radius:7px;
  padding:27px 24px;
  box-shadow:0 18px 42px rgba(6,40,90,.11);
}
.quick-quote-form h2{
  margin:0;
  color:#12315a;
  font-size:33px;
  line-height:1.12;
}
.quick-quote-form > p{
  margin:10px 0 0;
  color:#5f718b;
}
.quick-quote-form-grid{
  margin-top:16px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.quick-quote-form input,
.quick-quote-form select,
.quick-quote-form textarea{
  width:100%;
  border:1px solid #d3deee;
  border-radius:7px;
  padding:12px 13px;
  background:#fdfefe;
  font:600 14px var(--font);
  color:#385171;
}
.quick-quote-form input:focus,
.quick-quote-form select:focus,
.quick-quote-form textarea:focus{
  outline:none;
  border-color:#4f87da;
  box-shadow:0 0 0 3px rgba(0,82,182,.12);
}
.quick-quote-form select{
  margin-top:10px;
  height:48px;
}
.quick-quote-form textarea{
  margin-top:10px;
  min-height:110px;
  resize:vertical;
}
.quick-quote-form button{
  margin-top:10px;
  width:100%;
  border:0;
  border-radius:7px;
  height:50px;
  background:linear-gradient(120deg,#f9b515,#f5aa06);
  color:#152845;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.02em;
  cursor:pointer;
}
.quick-quote-form button:hover{
  filter:brightness(.97);
}
.quick-quote-form .success{
  margin-top:12px;
}

@media (max-width: 1100px){
  .quick-quote-hero-grid{
    grid-template-columns:1fr;
    gap:20px;
    padding:58px 0 50px;
  }
  .quick-quote-main-grid{
    grid-template-columns:1fr;
  }
  .quick-quote-form{
    max-width:700px;
  }
}

@media (max-width: 700px){
  .quick-quote-copy h1{
    font-size:35px;
  }
  .quick-quote-lead{
    font-size:15px;
  }
  .quick-quote-info{
    padding:20px;
  }
  .quick-quote-info h2{
    font-size:27px;
  }
  .quick-quote-trust{
    grid-template-columns:1fr;
  }
  .quick-quote-form{
    padding:20px 16px;
  }
  .quick-quote-form h2{
    font-size:29px;
  }
  .quick-quote-form-grid{
    grid-template-columns:1fr;
  }
}

/* Home page responsive hardening */
.ref-home{
  overflow-x:hidden;
}
.ref-home .ref-hero-copy h1{
  overflow-wrap:anywhere;
}

@media (max-width: 1024px){
  .ref-home .ref-services-title h2{
    font-size:clamp(36px, 5.4vw, 52px);
    line-height:1.02;
  }
  .ref-home .ref-service-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:16px;
  }
  .ref-materials-title h2{
    font-size:clamp(36px, 5vw, 50px);
    line-height:1.06;
  }
  .ref-areas-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .ref-areas-help a{
    min-width:0;
  }
}

@media (max-width: 760px){
  .ref-home > section:not(.ref-hero){
    padding-top:44px !important;
    padding-bottom:44px !important;
  }
  .ref-home .container{
    padding:0 16px;
  }
  .ref-hero{
    min-height:auto;
  }
  .ref-hero-grid{
    gap:20px;
    padding:34px 0 64px;
  }
  .ref-hero-copy h1{
    font-size:clamp(30px, 10.5vw, 42px);
    line-height:1.02;
    letter-spacing:-.03em;
  }
  .ref-subtitle{
    max-width:100%;
    font-size:15px;
    line-height:1.65;
  }
  .ref-feature-list{
    margin:22px 0 20px;
    gap:12px;
  }
  .ref-feature-list li{
    font-size:14px;
  }
  .ref-hero-actions{
    width:100%;
    gap:10px;
  }
  .ref-hero-actions .ref-btn-blue,
  .ref-hero-actions .ref-work-link{
    width:100%;
    justify-content:center;
  }
  .ref-hero-actions .ref-work-link{
    padding:10px 12px;
  }
  .ref-quote-box{
    padding:16px;
    border-radius:7px;
  }
  .ref-quote-box h3{
    font-size:22px;
  }
  .ref-quote-box input,
  .ref-quote-box select,
  .ref-quote-box button{
    height:44px;
  }
  .ref-home .ref-services-intro{
    margin:0 0 14px;
    font-size:15px;
    line-height:1.65;
  }
  .ref-home .ref-section-title{
    margin:0 auto 20px;
  }
  .ref-home .ref-services-head{
    margin-bottom:8px;
  }
  .ref-home .ref-materials-title{
    margin:0 auto 16px;
  }
  .ref-materials-cta{
    margin-top:18px;
  }
  .ref-home .ref-service-copy p{
    font-size:14px;
    line-height:1.6;
  }
  .ref-material-image{
    min-height:154px;
  }
  .ref-material-image img{
    height:138px;
  }
  .ref-material-card h3{
    font-size:20px;
  }
  .ref-workprocess-head h2{
    font-size:clamp(28px, 8.5vw, 38px);
  }
  .ref-workprocess-head{
    margin:0 auto 20px;
  }
  .ref-workprocess-copy p{
    max-width:100%;
  }
  .ref-home .ref-about-copy .ref-btn{
    width:100%;
  }
  .ref-areas{
    padding:52px 0 58px;
  }
  .ref-areas-grid{
    gap:10px;
  }
  .ref-area-card h3{
    font-size:18px;
  }
  .ref-area-card p{
    font-size:12px;
  }
  .ref-areas-help a{
    font-size:20px;
  }
  .ref-areas-help{
    margin-top:14px;
  }
  .ref-areas-stats{
    margin-top:14px;
  }
}

@media (max-width: 560px){
  .ref-home > section:not(.ref-hero){
    padding-top:36px !important;
    padding-bottom:36px !important;
  }
  .ref-home .ref-section-title h2,
  .ref-home .ref-services-title h2,
  .ref-materials-title h2{
    font-size:clamp(28px, 9vw, 34px);
  }
  .ref-home .ref-section-title{
    margin:0 auto 16px;
  }
  .ref-home .ref-service-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .ref-areas-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ref-area-card{
    min-height:122px;
    padding:12px 8px 10px;
  }
  .ref-area-icon{
    width:42px;
    height:42px;
    margin:0 auto 8px;
    font-size:16px;
  }
  .ref-area-card h3{
    margin:0 0 4px;
    font-size:14px;
    line-height:1.2;
  }
  .ref-area-card p{
    font-size:11px;
    line-height:1.35;
  }
  .ref-home .ref-services-head{
    margin-bottom:6px;
  }
  .ref-home .ref-services-intro{
    margin:0 0 12px;
  }
  .ref-workprocess-head{
    margin:0 auto 16px;
  }
  .ref-home .ref-about-highlight{
    grid-template-columns:1fr;
    gap:12px;
  }
  .ref-home .ref-about-highlight > div{
    padding-left:0;
  }
  .ref-home .ref-about-highlight > div:before{
    display:none;
  }
  .ref-areas-map{
    min-height:320px;
  }
  .ref-areas-pins{
    position:absolute;
    left:8px;
    right:8px;
    top:10px;
    height:auto;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:6px;
    z-index:5;
    pointer-events:none;
  }
  .ref-areas-pins span{
    position:static;
    padding:5px 8px;
    font-size:10px;
    line-height:1.2;
    border-radius:999px;
    box-shadow:0 6px 12px rgba(8,49,111,.10);
  }
  .ref-areas-pins span:before{
    width:6px;
    height:6px;
    margin-right:5px;
  }
  .ref-areas-response{
    left:10px;
    right:10px;
    bottom:10px;
  }
  .ref-areas-help,
  .ref-areas-stats{
    margin-top:12px;
  }
  .ref-areas-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:4px;
  }
  .ref-areas-stats article{
    border-right:1px solid #e4edf9 !important;
    border-bottom:1px solid #e4edf9;
    padding:12px 8px;
  }
  .ref-areas-stats article:nth-child(2n){
    border-right:0 !important;
  }
  .ref-areas-stats article:nth-last-child(-n+2){
    border-bottom:0;
  }
  .ref-areas-stats span{
    width:40px;
    height:40px;
    font-size:16px;
  }
  .ref-areas-stats strong{
    font-size:clamp(20px,7vw,28px);
    line-height:1.05;
    font-weight:800;
  }
  .ref-areas-stats p{
    font-size:10px;
    line-height:1.25;
    font-weight:600;
  }
}

/* FAQ mobile responsive */
@media(max-width:760px){
  .faq-grid{
    grid-template-columns:1fr;
    gap:24px;
  }
  .faq-grid h2{
    font-size:28px;
    line-height:1.12;
  }
  .faq-grid p{
    font-size:14px;
  }
  .faq-list details{
    margin:0;
  }
  .faq-list summary{
    padding:14px 16px;
    font-size:13px;
  }
  .faq-list summary:after{
    font-size:18px;
  }
  .faq-list details p{
    padding:0 16px 14px;
    font-size:14px;
  }
}

/* Footer responsive overhaul */
.footer{
  padding-top:48px;
}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.1fr);
  gap:28px 24px;
  align-items:start;
  padding-bottom:18px;
}
.footer-grid > div{
  min-width:0;
}
.footer h4{
  margin:0 0 12px;
  font-size:20px;
  line-height:1.2;
}
.footer a,
.footer p{
  font-size:14px;
  line-height:1.55;
}
.footer a{
  margin:6px 0;
  word-break:break-word;
}
.footer .socials{
  margin-top:12px;
  flex-wrap:wrap;
}
.copyright{
  margin-top:22px;
  padding:15px 12px;
}

@media (max-width: 1024px){
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:20px 16px;
  }
  .footer-grid > div:first-child,
  .footer-grid > div:last-child{
    grid-column:1 / -1;
  }
  .footer h4{
    font-size:18px;
  }
}

@media (max-width: 760px){
  .footer{
    padding-top:40px;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr !important;
    gap:16px 12px;
    padding-bottom:14px;
  }
  .footer-grid > div:first-child,
  .footer-grid > div:last-child{
    grid-column:1 / -1;
  }
  .footer-grid > div:nth-child(2) h4,
  .footer-grid > div:nth-child(3) h4{
    margin-bottom:8px;
    font-size:15px;
  }
  .footer-grid > div:nth-child(2) a,
  .footer-grid > div:nth-child(3) a{
    margin:4px 0;
    font-size:12px;
    line-height:1.35;
  }
  .footer-grid > div:last-child p{
    margin:5px 0;
    font-size:13px;
  }
  .footer-logo{
    width:118px;
    margin-bottom:8px;
  }
  .copyright{
    margin-top:14px;
    font-size:12px;
  }
  .contact-footer-meta{
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    margin-top:0;
    padding-bottom:14px;
    font-size:12px;
  }
}

/* Contact page hero responsive hardening */
@media (max-width: 1200px){
  .contact-ref-hero{
    min-height:390px;
    background-position:center 24%;
  }
  .contact-ref-hero-grid{
    min-height:390px;
    grid-template-columns:1fr;
    gap:14px;
    padding:48px 0 40px;
    align-items:center;
  }
  .contact-ref-hero-copy h1{
    font-size:clamp(42px, 5.4vw, 56px);
    line-height:1.02;
    margin:0 0 10px;
  }
  .contact-ref-breadcrumb{
    font-size:18px;
    gap:8px;
    flex-wrap:wrap;
  }
  .contact-ref-hero-copy p{
    margin:12px 0 0;
    max-width:760px;
    font-size:17px;
    line-height:1.62;
  }
  .contact-ref-hero-art img{
    max-width:420px;
    margin:6px auto 0;
  }
}

@media (max-width: 760px){
  .contact-ref-hero{
    min-height:320px;
    background-position:center 18%;
  }
  .contact-ref-hero-grid{
    min-height:320px;
    gap:8px;
    padding:34px 16px 28px;
    align-items:start;
    box-sizing:border-box;
  }
  .contact-ref-hero-copy{
    padding-left:2px;
    overflow:visible;
  }
  .contact-ref-hero-copy h1{
    font-size:clamp(30px, 8.8vw, 38px);
    line-height:1.04;
    margin:0 0 8px;
    letter-spacing:0;
    text-wrap:balance;
    overflow-wrap:anywhere;
  }
  .contact-ref-breadcrumb{
    font-size:14px;
    gap:7px;
  }
  .contact-ref-hero-copy p{
    font-size:15px;
    line-height:1.58;
    margin-top:10px;
  }
}

@media (max-width: 560px){
  .contact-ref-hero{
    min-height:300px;
    background-position:center 14%;
  }
  .contact-ref-hero-grid{
    min-height:300px;
    padding:30px 14px 24px;
  }
  .contact-ref-hero-copy h1{
    font-size:clamp(26px, 8.3vw, 33px);
    line-height:1.05;
  }
  .contact-ref-breadcrumb{
    font-size:13px;
    gap:6px;
  }
  .contact-ref-hero-copy p{
    font-size:14px;
    line-height:1.52;
  }
}

/* Mobile services submenu compact view */
@media (max-width: 980px){
  .mega-panel{
    padding:10px;
    gap:8px;
  }
  .mega-card{
    min-height:auto;
    padding:8px 10px;
    border-radius:7px;
  }
  .mega-card img{
    display:none;
  }
  .mega-card b{
    margin:0;
    font-size:12px;
    line-height:1.35;
    letter-spacing:0;
    font-weight:500;
    text-transform:none;
  }
  .mega-card small{
    display:none;
  }
}

/* Home landing polish: softer surfaces, lighter backgrounds, tighter card radius */
.ref-home .ref-services,
.ref-home .ref-materials,
.ref-home .ref-choose,
.ref-home .ref-process,
.ref-home .ref-about,
.ref-home .ref-clients,
.ref-home .ref-areas,
.ref-home .ref-home-faq{
  background:#fff;
}

.ref-home .ref-hero{
  background:linear-gradient(180deg,#f9fbff 0%,#f3f7fd 100%);
}

.ref-home .ref-hero-house{
  opacity:.52;
  filter:saturate(102%) contrast(.98);
}

.ref-home .ref-quote-box,
.ref-home .ref-service-card,
.ref-home .ref-material-card,
.ref-home .ref-why-card,
.ref-home .ref-area-card,
.ref-home .ref-client-item,
.ref-home .ref-about-stats-box,
.ref-home .ref-about-main-image,
.ref-home .ref-about-highlight,
.ref-home .ref-areas-map,
.ref-home .ref-areas-response,
.ref-home .ref-areas-help,
.ref-home .ref-areas-stats,
.ref-home .ref-workprocess-card{
  border-radius:7px;
}

.ref-home .ref-service-card,
.ref-home .ref-material-card,
.ref-home .ref-area-card,
.ref-home .ref-client-item,
.ref-home .ref-quote-box,
.ref-home .ref-about-stats-box,
.ref-home .ref-areas-map,
.ref-home .ref-areas-response,
.ref-home .ref-areas-help,
.ref-home .ref-areas-stats,
.ref-home .ref-why-card{
  border:1px solid #e4ecf7;
  box-shadow:0 10px 24px rgba(10,40,88,.07);
}

.ref-home .ref-material-card,
.ref-home .ref-client-item,
.ref-home .ref-area-card,
.ref-home .ref-service-card{
  background:#fff;
}

.ref-home .ref-quote-box{
  border-width:1px;
  background:#0a53b7;
  box-shadow:0 16px 34px rgba(2,53,126,.08);
}

.ref-home .ref-about-stats-box{
  overflow:hidden;
}

.ref-home .ref-about-main-image{
  overflow:hidden;
  background:#f7fbff;
  box-shadow:0 18px 36px rgba(10,43,93,.12);
}

.ref-home .ref-about-main-image:before,
.ref-home .ref-about-main-image:after,
.ref-home .ref-areas-map:before,
.ref-home .ref-areas-map:after,
.ref-home .ref-about-highlight:after{
  display:none;
}

.ref-home .ref-about-highlight{
  background:linear-gradient(105deg,#0b4fb1,#0a459e);
  box-shadow:0 14px 30px rgba(10,54,122,.08);
}

.ref-home .ref-areas{
  background:linear-gradient(180deg,#f7faff 0%,#f2f6fb 100%);
}

.ref-home .ref-areas-map{
  background:linear-gradient(180deg,#f9fbff 0%,#eef3fa 100%);
}

.ref-home .ref-clients{
  background:linear-gradient(180deg,#f7faff 0%,#f2f6fd 100%);
}

.ref-home .ref-cta{
  background:linear-gradient(110deg,#0b4fb1 0%,#0a459f 70%,#f6b500 70%);
}

.ref-home .ref-btn{
  border-radius:7px;
}

.ref-home .ref-client-item{
  box-shadow:0 10px 24px rgba(10,48,103,.08);
}

@media (max-width: 760px){
  .ref-home .ref-about-main-image{
    box-shadow:0 12px 26px rgba(10,43,93,.1);
  }
}

/* Typography softening pass */
.ref-home .ref-small,
.ref-home .ref-services-title .ref-small,
.ref-home .ref-materials-title .ref-small,
.ref-home .ref-why-eyebrow,
.ref-home .ref-workprocess-head p,
.ref-home .ref-client-item p,
.ref-home .ref-area-card p,
.ref-home .ref-service-link,
.ref-home .ref-work-link{
  font-weight:500;
  letter-spacing:.03em;
}

.ref-home .ref-section-title h2,
.ref-home .ref-services-title h2,
.ref-materials-title h2,
.ref-home .ref-about-copy h2,
.ref-home .ref-cta h2,
.ref-home .ref-why-content h2,
.ref-workprocess-head h2,
.ref-areas .ref-section-title h2{
  font-weight:700;
  letter-spacing:-.02em;
}

.ref-home .ref-hero-copy h1{
  font-size:clamp(42px, 6.3vw, 66px);
  line-height:1;
  letter-spacing:-1.2px;
  font-weight:900;
}

.ref-home .ref-eyebrow{
  font-size:18px;
  font-weight:500;
  letter-spacing:.02em;
}

.ref-home .ref-subtitle,
.ref-home .ref-services-intro,
.ref-materials-title p,
.ref-home .ref-about-lead,
.ref-home .ref-cta p,
.ref-home .ref-why-lead,
.ref-areas .ref-section-title p,
.ref-home .ref-service-copy p,
.ref-home .ref-material-card p{
  font-size:15px;
  line-height:1.68;
  font-weight:400;
}

.ref-home .ref-feature-list li,
.ref-home .ref-about-checklist li,
.ref-home .ref-service-copy h3,
.ref-home .ref-material-card h3,
.ref-home .ref-area-card h3,
.ref-home .ref-areas-help h3{
  font-weight:600;
}

.ref-home .ref-quote-box h3{
  font-size:22px;
  font-weight:600;
}

.ref-home .ref-service-card h3{
  font-size:16px;
  font-weight:600;
}

.ref-home .ref-process-card h3{
  font-size:16px;
  font-weight:600;
}

.ref-home .ref-about-stat strong{
  font-size:clamp(24px, 1.9vw, 34px);
  font-weight:800;
}

.ref-home .ref-about-stat p,
.ref-home .ref-areas-stats p{
  font-weight:500;
}

.ref-home .ref-about-highlight h3{
  font-size:18px;
  font-weight:700;
}

.ref-home .ref-areas-city{
  font-size:28px;
  font-weight:800;
}

.ref-home .ref-areas-help a{
  font-size:16px;
  font-weight:700;
}

.ref-home .ref-areas-stats strong{
  font-size:clamp(24px, 2.4vw, 34px);
  font-weight:800;
}

.ref-home .ref-btn{
  font-size:12px;
  font-weight:700;
}

.ref-home .ref-materials-title h2{
  font-size:clamp(34px, 4.8vw, 58px);
  line-height:1.06;
  font-weight:700;
}

@media (max-width: 760px){
  .ref-home .ref-hero-copy h1{
    font-size:clamp(34px, 9.4vw, 44px);
    letter-spacing:-.02em;
  }
  .ref-home .ref-section-title h2,
  .ref-home .ref-services-title h2,
  .ref-materials-title h2,
  .ref-home .ref-about-copy h2,
  .ref-home .ref-cta h2,
  .ref-home .ref-why-content h2,
  .ref-workprocess-head h2,
  .ref-areas .ref-section-title h2{
    font-size:clamp(28px, 8vw, 36px);
  }
  .ref-home .ref-eyebrow{
    font-size:15px;
  }
  .ref-home .ref-materials-title h2{
    font-size:clamp(28px, 8vw, 34px);
    line-height:1.08;
  }
  .ref-home .ref-areas-city{
    font-size:20px;
  }
  .ref-home .ref-quote-box h3{
    font-size:20px;
  }
}

/* Clean hero pass: remove extra foreground layers and keep the truck as a soft background composition */
.ref-home .ref-hero{
  position:relative;
  min-height:820px;
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(180deg,#fafdff 0%,#edf5fd 100%);
}

.ref-home .ref-hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 14%, rgba(255,255,255,.95) 0 8%, rgba(255,255,255,.5) 16%, rgba(255,255,255,0) 28%),
    radial-gradient(circle at 74% 16%, rgba(255,194,51,.44) 0 7%, rgba(255,194,51,.18) 13%, rgba(255,194,51,0) 26%),
    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(245,249,255,.94) 54%, rgba(236,244,252,.98) 100%);
}

.ref-home .ref-hero-bg::before{
  content:'';
  position:absolute;
  left:8%;
  right:8%;
  top:72px;
  bottom:94px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1280 620'%3E%3Cg fill='%23dbe7f6'%3E%3Crect x='64' y='382' width='86' height='134'/%3E%3Crect x='160' y='318' width='118' height='198'/%3E%3Crect x='292' y='276' width='96' height='240'/%3E%3Crect x='402' y='346' width='124' height='170'/%3E%3Crect x='548' y='248' width='118' height='268'/%3E%3Crect x='682' y='220' width='142' height='296'/%3E%3Crect x='846' y='288' width='112' height='228'/%3E%3Crect x='978' y='252' width='96' height='264'/%3E%3Crect x='1090' y='332' width='98' height='184'/%3E%3C/g%3E%3Cg fill='%23edf3fb'%3E%3Crect x='110' y='412' width='24' height='108'/%3E%3Crect x='238' y='360' width='24' height='160'/%3E%3Crect x='338' y='320' width='22' height='200'/%3E%3Crect x='460' y='388' width='22' height='132'/%3E%3Crect x='618' y='286' width='24' height='234'/%3E%3Crect x='756' y='254' width='22' height='266'/%3E%3Crect x='898' y='340' width='22' height='180'/%3E%3Crect x='1020' y='300' width='22' height='220'/%3E%3Crect x='1138' y='370' width='20' height='150'/%3E%3C/g%3E%3Cpath d='M0 514h1280' stroke='%23d3deed' stroke-width='5' opacity='.66'/%3E%3C/svg%3E") center bottom / min(1180px, 90vw) auto no-repeat;
  opacity:.38;
}

.ref-home .ref-hero-bg::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:6px;
  width:clamp(560px, 60vw, 920px);
  height:clamp(250px, 39vw, 420px);
  transform:translateX(-52%);
  background-image:var(--hero-truck);
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:contain;
  opacity:.92;
  filter:drop-shadow(0 20px 22px rgba(8,28,70,.13));
}

.ref-home .ref-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,410px);
  gap:42px;
  align-items:start;
  min-height:820px;
  padding:56px 0 36px;
}

.ref-home .ref-hero-copy{
  padding-top:10px;
  max-width:620px;
}

.ref-home .ref-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:12px 18px;
  margin:0 0 18px;
  color:#143066;
  background:rgba(255,255,255,.84);
  border:1px solid #cfdcf0;
  border-radius:999px;
  box-shadow:0 12px 24px rgba(8,34,84,.05);
  font-size:14px;
  font-weight:800;
  letter-spacing:.12em;
}

.ref-home .ref-eyebrow-icon{
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  color:#0b59d7;
  font-size:15px;
}

.ref-home .ref-hero-copy h1{
  margin:0 0 18px;
  color:#071e4d;
  font-size:clamp(58px, 6.35vw, 78px);
  line-height:.96;
  letter-spacing:-1.9px;
  font-weight:900;
  text-transform:uppercase;
}

.ref-home .ref-hero-copy h1 .accent{
  color:#0b5fe0;
  background:linear-gradient(180deg,#0b66df 0%,#0049c8 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.ref-home .ref-subtitle{
  max-width:530px;
  margin:0;
  color:#51617a;
  font-size:16px;
  line-height:1.74;
  font-weight:500;
}

.ref-home .ref-feature-list{
  margin:30px 0 26px;
  padding:0;
  list-style:none;
  display:grid;
  gap:18px;
}

.ref-home .ref-feature-list li{
  position:relative;
  display:flex;
  align-items:center;
  gap:16px;
  min-height:48px;
  color:#18355f;
  font-size:17px;
  font-weight:800;
}

.ref-home .ref-feature-list li:not(:last-child)::after{
  content:'';
  position:absolute;
  left:24px;
  top:48px;
  bottom:-12px;
  width:1px;
  background:linear-gradient(180deg, rgba(9,87,195,.28) 0%, rgba(9,87,195,0) 100%);
}

.ref-home .ref-feature-icon{
  width:48px;
  height:48px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  border:1px solid #dbe6f4;
  color:#0c5bd5;
  font-size:18px;
  box-shadow:0 12px 20px rgba(8,34,84,.08);
}

.ref-home .ref-hero-actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}

.ref-home .ref-btn{
  min-height:58px;
  padding:0 22px;
  border-radius:7px;
  text-transform:none;
  font-size:16px;
  font-weight:800;
  letter-spacing:0;
}

.ref-home .ref-btn-blue{
  background:linear-gradient(180deg,#0758db 0%,#0048bf 100%);
  box-shadow:0 14px 24px rgba(3,49,131,.18);
}

.ref-home .ref-btn-call{
  border-bottom:4px solid #f7b515;
  gap:12px;
  min-width:260px;
  justify-content:flex-start;
}

.ref-home .ref-btn-work{
  gap:10px;
  background:#fff;
  color:#16325f;
  border:1px solid #bfd0ea;
}

.ref-home .ref-btn-work i{
  color:#0c59d5;
}

.ref-home .ref-quote-box{
  position:relative;
  z-index:2;
  align-self:start;
  justify-self:end;
  width:100%;
  max-width:418px;
  margin-top:16px;
}

.ref-home .ref-quote-card{
  overflow:hidden;
  background:#fff;
  border:1px solid #dce7f5;
  border-radius:7px;
  box-shadow:0 24px 52px rgba(8,34,84,.14);
}

.ref-home .ref-quote-head{
  display:flex;
  align-items:center;
  gap:14px;
  padding:26px 24px 22px;
  background:linear-gradient(180deg,#0d5fdf 0%,#0452cf 100%);
}

.ref-home .ref-quote-mark{
  width:56px;
  height:56px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  font-size:22px;
}

.ref-home .ref-quote-head h3{
  margin:0;
  color:#fff;
  font-size:22px;
  line-height:1.1;
  font-weight:900;
  letter-spacing:.01em;
}

.ref-home .ref-quote-box form{
  display:grid;
  gap:14px;
  padding:18px 20px 22px;
}

.ref-home .ref-field{
  position:relative;
  display:block;
}

.ref-home .ref-field-icon{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  color:#6d7c95;
  font-size:17px;
  pointer-events:none;
}

.ref-home .ref-field input,
.ref-home .ref-field select{
  width:100%;
  height:56px;
  border:1px solid #d8e3f5;
  border-radius:7px;
  background:#fff;
  color:#435168;
  font:600 15px var(--font);
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}

.ref-home .ref-field input{
  padding:0 18px 0 54px;
}

.ref-home .ref-field select{
  appearance:none;
  padding:0 54px 0 54px;
}

.ref-home .ref-field-date .ref-field-icon,
.ref-home .ref-field-select .ref-field-icon{
  left:auto;
  right:18px;
}

.ref-home .ref-field-date input,
.ref-home .ref-field-select select{
  padding-right:54px;
}

.ref-home .ref-field input::placeholder{
  color:#76849c;
  font-weight:500;
}

.ref-home .ref-field input:focus,
.ref-home .ref-field select:focus{
  border-color:#0d5fdf;
  box-shadow:0 0 0 4px rgba(13,95,223,.10);
}

.ref-home .ref-quote-box button{
  height:58px;
  border:0;
  border-radius:7px;
  background:linear-gradient(180deg,#ffbf10 0%,#f4af08 100%);
  color:#092346;
  font-size:17px;
  font-weight:900;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:0 14px 22px rgba(244,176,8,.18);
}

.ref-home .ref-hero-road,
.ref-home .ref-hero-wave,
.ref-home .ref-hero-city,
.ref-home .ref-hero-sun,
.ref-home .ref-hero-cloud,
.ref-home .ref-hero-birds,
.ref-home .ref-hero-boxes,
.ref-home .ref-hero-plant,
.ref-home .ref-hero-visual,
.ref-home .ref-hero-truck{
  display:none !important;
}

@media (max-width: 1199px){
  .ref-home .ref-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(340px,380px);
    gap:30px;
    min-height:760px;
  }
  .ref-home .ref-hero-copy h1{
    font-size:clamp(52px, 5.6vw, 66px);
  }
  .ref-home .ref-quote-box{
    max-width:380px;
  }
  .ref-home .ref-hero-bg::after{
    width:clamp(500px, 58vw, 820px);
    height:clamp(220px, 34vw, 380px);
    opacity:.86;
  }
}

@media (max-width: 991px){
  .ref-home .ref-hero{
    min-height:auto;
  }
  .ref-home .ref-hero-grid{
    grid-template-columns:1fr;
    gap:22px;
    min-height:auto;
    padding:40px 0 64px;
  }
  .ref-home .ref-quote-box{
    justify-self:start;
    max-width:560px;
  }
  .ref-home .ref-hero-bg::before{
    opacity:.24;
  }
  .ref-home .ref-hero-bg::after{
    left:50%;
    width:clamp(440px, 82vw, 680px);
    height:clamp(190px, 42vw, 320px);
    transform:translateX(-50%);
    bottom:-6px;
    opacity:.84;
  }
}

@media (max-width: 760px){
  .ref-home .container{
    padding:0 16px;
  }
  .ref-home .ref-hero-grid{
    padding:34px 0 48px;
  }
  .ref-home .ref-eyebrow{
    font-size:13px;
    padding:10px 14px;
    gap:8px;
  }
  .ref-home .ref-hero-copy h1{
    font-size:clamp(38px, 11vw, 44px);
    line-height:1.03;
    letter-spacing:-1.2px;
  }
  .ref-home .ref-subtitle{
    font-size:15px;
    line-height:1.68;
  }
  .ref-home .ref-feature-list{
    gap:14px;
  }
  .ref-home .ref-feature-list li{
    font-size:15px;
  }
  .ref-home .ref-btn{
    width:100%;
    justify-content:center;
    min-height:54px;
    font-size:15px;
  }
  .ref-home .ref-btn-call{
    min-width:0;
  }
  .ref-home .ref-quote-head{
    padding:22px 18px 18px;
  }
  .ref-home .ref-quote-mark{
    width:48px;
    height:48px;
    font-size:19px;
  }
  .ref-home .ref-quote-head h3{
    font-size:20px;
  }
  .ref-home .ref-quote-box form{
    padding:16px 16px 18px;
    gap:12px;
  }
  .ref-home .ref-field input,
  .ref-home .ref-field select{
    height:52px;
    font-size:14px;
  }
  .ref-home .ref-quote-box button{
    height:54px;
    font-size:16px;
  }
  .ref-home .ref-hero-bg::before{
    display:none;
  }
  .ref-home .ref-hero-bg::after{
    width:clamp(360px, 92vw, 520px);
    height:clamp(150px, 38vw, 230px);
    bottom:-2px;
    opacity:.72;
  }
}

/* Easy Shift BD hero replacement with unique hooks */
:root{
  --es-font:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --es-heading:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
  --es-ink:#071b45;
  --es-accent:#075dd8;
  --es-accent-2:#004fc4;
  --es-gold:#fdbb10;
  --es-muted:#41516d;
}

.es-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:820px;
  padding:0;
  background-color:#f6fbff;
  background-image:var(--es-hero-bg);
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  font-family:var(--es-font);
}

.es-hero::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(245, 250, 255, .96) 0%,
      rgba(245, 250, 255, .88) 23%,
      rgb(245 250 255 / 92%) 42%,
      rgb(245 250 255 / 0%) 62%,
      rgb(245 250 255 / 5%) 100%);
  z-index:1;
  pointer-events:none;
}

.es-hero::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:42%;
  background:
    linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(7,93,216,.04) 42%,
      rgba(7,93,216,.10) 100%);
  z-index:1;
  pointer-events:none;
}

.es-hero__shell{
  position:relative;
  z-index:2;
  max-width:1400px;
}

.es-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 420px;
  gap:56px;
  align-items:center;
  min-height:820px;
  padding:80px 0;
}

.es-hero__copy{
  max-width:600px;
  padding-top:0;
  padding-bottom:0;
}

.es-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  height:42px;
  padding:0 18px;
  margin:0 0 24px;
  border-radius:999px;
  border:1px solid rgba(7,93,216,.18);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(10px);
  color:var(--es-ink);
  font-size:13px;
  letter-spacing:1.8px;
  font-weight:700;
  box-shadow:0 14px 26px rgba(6,34,85,.05);
}

.es-badge__icon{
  color:var(--es-accent);
  font-size:15px;
}

.es-hero__copy h1{
  margin:0;
  color:var(--es-ink);
  font-family:var(--es-heading);
  font-size:clamp(48px,5.2vw,78px);
  line-height:.98;
  letter-spacing:-2px;
  font-weight:900;
  text-transform:uppercase;
}

.es-hero__accent{
  display:block;
  margin-top:8px;
  color:var(--es-accent);
  background:linear-gradient(135deg, var(--es-accent), #003fad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.es-hero__lead{
  max-width:520px;
  margin:22px 0 0;
  color:var(--es-muted);
  font-size:16px;
  line-height:1.7;
}

.es-feature-list{
  margin:28px 0 30px;
  padding:0;
  list-style:none;
  display:grid;
  gap:14px;
}

.es-feature-list li{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:15.5px;
  font-weight:600;
  color:#10284f;
}

.es-feature-list li::before{
  content:'';
  width:8px;
  height:8px;
  margin-left:1px;
  border-radius:50%;
  flex:none;
  background:var(--es-accent);
  box-shadow:0 0 0 5px rgba(7,93,216,.08);
}

.es-feature-list__icon{
  width:38px;
  height:38px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  border:1px solid rgba(7,93,216,.12);
  box-shadow:0 10px 24px rgba(7,93,216,.10);
  color:var(--es-accent);
}

.es-hero__actions{
  margin-top:30px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.es-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 24px;
  border-radius:12px;
  font-family:var(--es-heading);
  font-size:15px;
  font-weight:800;
  letter-spacing:.01em;
  text-transform:none;
  transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

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

.es-btn--primary{
  gap:10px;
  color:#fff;
  background:linear-gradient(135deg, var(--es-accent), var(--es-accent-2));
  box-shadow:0 14px 30px rgba(7,93,216,.24);
  border:1px solid rgba(255,184,0,.65);
  border-bottom:3px solid var(--es-gold);
}

.es-btn--secondary{
  gap:10px;
  color:#16325f;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(7,93,216,.12);
  backdrop-filter:blur(8px);
}

.es-btn--secondary i{
  color:var(--es-accent);
}

.es-btn--call{
  min-width:238px;
}

.es-quote{
  position:relative;
  width:100%;
  max-width:420px;
  justify-self:end;
  align-self:center;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.es-quote::before{
  content:'';
  position:absolute;
  right:-26px;
  top:9%;
  width:420px;
  height:420px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(7,93,216,.10), rgba(7,93,216,0) 66%);
  opacity:.45;
  z-index:0;
  pointer-events:none;
}

.es-quote__shell{
  position:relative;
  z-index:1;
  overflow:hidden;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(255,255,255,.36);
  border-radius:24px;
  box-shadow:0 18px 40px rgba(8,34,84,.10);
}

.es-quote__head{
  display:flex;
  align-items:center;
  gap:14px;
  padding:22px 24px 20px;
  background:linear-gradient(180deg,#0d5fdf 0%,#0452cf 100%);
}

.es-quote__icon{
  width:48px;
  height:48px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.26);
  color:#fff;
  font-size:22px;
}

.es-quote__head h3{
  margin:0;
  color:#fff;
  font-family:var(--es-heading);
  font-size:20px;
  line-height:1.1;
  font-weight:900;
}

.es-quote__form{
  display:grid;
  gap:12px;
  padding:18px 20px 22px;
}

.es-field{
  position:relative;
  display:block;
}

.es-field__icon{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  color:#6d7c95;
  font-size:16px;
  pointer-events:none;
}

.es-field input,
.es-field select{
  width:100%;
  height:52px;
  border:1px solid #d6e1f4;
  border-radius:13px;
  background:#fff;
  color:#435168;
  font:600 15px var(--es-heading);
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}

.es-field input{
  padding:0 18px 0 54px;
}

.es-field select{
  appearance:none;
  padding:0 54px 0 54px;
}

.es-field--date .es-field__icon,
.es-field--select .es-field__icon{
  left:auto;
  right:18px;
}

.es-field--date input{
  text-align:center;
  padding-left:18px;
  padding-right:54px;
}

.es-field input::placeholder{
  color:#76849c;
  font-weight:600;
}

.es-field input:focus,
.es-field select:focus{
  border-color:#0d5fdf;
  box-shadow:0 0 0 4px rgba(13,95,223,.10);
}

.es-quote button{
  height:52px;
  border:0;
  border-radius:14px;
  background:linear-gradient(180deg,#ffbf10 0%,#f4af08 100%);
  color:#092346;
  font-size:16px;
  font-weight:900;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:0 12px 20px rgba(244,176,8,.20);
}

@media (max-width:1199px){
  .es-hero{
    min-height:auto;
  }

  .es-hero__grid{
    grid-template-columns:minmax(0,1fr) 388px;
    gap:34px;
    min-height:auto;
    padding:54px 0 56px;
  }

  .es-hero__copy h1{
    font-size:clamp(44px,4.8vw,66px);
  }

  .es-quote{
    max-width:388px;
  }
}

@media (max-width:991px){
  .es-hero{
    background-position:72% center;
  }

  .es-hero__grid{
    grid-template-columns:1fr;
    gap:28px;
    padding:42px 0 54px;
  }

  .es-quote{
    justify-self:start;
    max-width:560px;
  }
}

@media (max-width:760px){
  .es-hero{
    background-position:74% center;
    background-size:cover;
  }

  .es-hero__shell{
    padding:0 16px;
  }

  .es-hero__grid{
    padding:32px 0 40px;
  }

  .es-badge{
    min-height:38px;
    padding:0 14px;
    font-size:12px;
    letter-spacing:.14em;
  }

  .es-hero__copy h1{
    font-size:clamp(38px,10.5vw,48px);
    letter-spacing:-1.35px;
  }

  .es-hero__lead{
    margin-top:18px;
    font-size:15px;
    line-height:1.68;
  }

  .es-feature-list{
    gap:14px;
    margin:24px 0 26px;
  }

  .es-feature-list li{
    align-items:flex-start;
    font-size:15px;
  }

  .es-btn{
    width:100%;
    min-height:50px;
    justify-content:center;
    font-size:14px;
  }

  .es-btn--call{
    min-width:0;
  }

  .es-quote__head{
    padding:20px 18px 18px;
  }

  .es-quote__icon{
    width:46px;
    height:46px;
    font-size:18px;
  }

  .es-quote__head h3{
    font-size:19px;
  }

  .es-quote__form{
    padding:16px 16px 18px;
    gap:12px;
  }

  .es-field input,
  .es-field select{
    height:50px;
    font-size:14px;
  }

  .es-quote button{
    height:50px;
    font-size:15px;
  }
}
