
:root{--navy:#061a34;--navy-2:#0a2d52;--blue:#0f6ea8;--sky:#20a8dc;--ice:#eef8ff;--white:#fff;--text:#09213b;--muted:#617389;--line:rgba(9,33,59,.12);--shadow:0 24px 70px rgba(6,26,52,.16);--radius:24px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(6,26,52,.08);box-shadow:0 8px 24px rgba(6,26,52,.06)}.nav{height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;min-width:0}.brand-logo{height:58px;width:auto;object-fit:contain;background:transparent!important;border:0!important;box-shadow:none!important}.nav-links{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}.nav-links a{display:block;padding:13px 14px;border-radius:999px;font-weight:800;color:var(--navy);transition:.25s var(--ease)}.nav-links a:hover,.nav-links a.active{background:var(--ice);color:var(--blue)}.nav-actions{display:flex;align-items:center;gap:12px}.phone-pill{font-weight:900;color:var(--navy);padding:12px 15px;border:1px solid var(--line);border-radius:999px;background:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:14px 22px;font-weight:900;cursor:pointer;transition:.25s var(--ease);font-family:inherit}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;box-shadow:0 16px 35px rgba(15,110,168,.28)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 42px rgba(15,110,168,.34)}.btn-secondary{background:#fff;color:var(--navy);border:1px solid rgba(255,255,255,.45);box-shadow:0 12px 28px rgba(6,26,52,.12)}.btn-dark{background:var(--navy);color:#fff}.menu-toggle{display:none;border:0;background:var(--navy);color:#fff;border-radius:12px;padding:10px 13px;font-size:22px}.floating-actions{position:fixed;right:22px;bottom:22px;z-index:1100;display:flex;flex-direction:column;gap:12px}.floating-actions a{width:52px;height:52px;border-radius:999px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:22px;box-shadow:var(--shadow)}.floating-actions a:nth-child(2){background:#0c9b5a}.hero{position:relative;overflow:hidden;padding:100px 0;background:radial-gradient(circle at 85% 20%,rgba(32,168,220,.24),transparent 30%),linear-gradient(135deg,#f7fcff 0%,#eaf6ff 48%,#fff 100%)}.hero:before{content:"";position:absolute;inset:auto -10% -35% -10%;height:55%;background:linear-gradient(135deg,rgba(6,26,52,.1),rgba(15,110,168,.25));border-radius:50% 50% 0 0/100% 100% 0 0}.hero-grid{position:relative;display:grid;grid-template-columns:1fr .95fr;gap:55px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.11em;font-weight:900;font-size:12px;color:var(--blue);margin-bottom:12px}.eyebrow:before{content:"";width:32px;height:3px;background:var(--sky);border-radius:999px}.hero h1,.page-hero h1,.section-title{font-family:Poppins,Inter,sans-serif;line-height:1.04;margin:0;color:var(--navy)}.hero h1{font-size:clamp(42px,6vw,76px);letter-spacing:-.045em}.hero p,.lead{font-size:18px;color:var(--muted);margin:22px 0 0}.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.hero-card{position:relative;border-radius:34px;overflow:hidden;min-height:545px;box-shadow:var(--shadow);background:var(--navy)}.hero-card img{width:100%;height:545px;object-fit:cover}.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 28%,rgba(6,26,52,.82))}.hero-card-content{position:absolute;left:30px;right:30px;bottom:30px;color:#fff;z-index:2}.hero-card-content span{font-weight:900;color:#9fe4ff}.hero-card-content h3{font-size:29px;line-height:1.15;margin:7px 0}.hero-card-content p{margin:0;color:rgba(255,255,255,.86)}.slider-dots{position:absolute;right:25px;top:25px;display:flex;gap:8px;z-index:3}.slide-dot{width:12px;height:12px;border-radius:999px;border:0;background:rgba(255,255,255,.55);cursor:pointer}.slide-dot.is-active{width:30px;background:#fff}.stats-strip{position:relative;margin-top:-38px;z-index:5;background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:26px;border:1px solid var(--line)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:18px;border-radius:18px;background:linear-gradient(180deg,#f7fcff,#fff);border:1px solid var(--line)}.stat strong{display:block;font-size:33px;font-family:Poppins;color:var(--navy);line-height:1}.stat span{display:block;color:var(--muted);font-weight:800;margin-top:7px}.section{padding:94px 0}.section.compact{padding:50px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split.reverse{grid-template-columns:.9fr 1.1fr}.section-title{font-size:clamp(32px,4.5vw,52px);letter-spacing:-.035em}.section-title.light,.lead.light{color:#fff}.lead.light{color:rgba(255,255,255,.78)}.image-stack{position:relative;min-height:540px}.main-img,.rounded-img{width:100%;height:520px;object-fit:cover;border-radius:32px;box-shadow:var(--shadow)}.mini-img{position:absolute;right:-10px;bottom:12px;width:48%;height:260px;object-fit:cover;border-radius:24px;border:8px solid #fff;box-shadow:0 18px 48px rgba(6,26,52,.18)}.badge-card{position:absolute;left:24px;bottom:28px;width:min(330px,80%);background:rgba(255,255,255,.94);padding:22px;border-radius:22px;box-shadow:0 18px 48px rgba(6,26,52,.16)}.badge-card strong{display:block;color:var(--navy);font-size:24px;font-family:Poppins}.badge-card span{color:var(--muted);font-weight:700}.check-list{display:grid;gap:12px;list-style:none;padding:0;margin:24px 0}.check-list li{position:relative;padding-left:32px;font-weight:800;color:var(--navy)}.check-list li:before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;display:grid;place-items:center;border-radius:99px;background:var(--ice);color:var(--blue);font-weight:900}.section-head{display:grid;grid-template-columns:1fr .85fr;gap:40px;align-items:end;margin-bottom:38px}.services{background:#f7fcff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;overflow:hidden;background:#fff;border-radius:28px;padding:0 0 28px;border:1px solid var(--line);box-shadow:0 16px 40px rgba(6,26,52,.07);transition:.3s var(--ease);cursor:pointer}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-card img{height:205px;width:100%;object-fit:cover}.service-card .icon{position:absolute;top:166px;left:28px;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--blue),var(--sky));display:grid;place-items:center;color:#fff;font-size:26px;box-shadow:0 14px 30px rgba(15,110,168,.25)}.service-card h3{margin:44px 28px 10px;font-size:22px;color:var(--navy)}.service-card p{margin:0 28px 18px;color:var(--muted)}.service-card a{margin-left:28px;font-weight:900;color:var(--blue)}.dark-section{background:linear-gradient(135deg,var(--navy),#092944 70%,#0d5d8a);color:#fff;position:relative;overflow:hidden}.dark-section:before{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;background:rgba(32,168,220,.2);border-radius:50%}.why-grid{display:grid;grid-template-columns:1fr .9fr;gap:54px;align-items:center;position:relative}.feature-list{display:grid;gap:16px;margin-top:28px}.feature{display:grid;grid-template-columns:46px 1fr;gap:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:18px}.feature b{width:46px;height:46px;display:grid;place-items:center;background:rgba(255,255,255,.15);border-radius:16px}.feature h3{margin:0;color:#fff}.feature p{margin:4px 0 0;color:rgba(255,255,255,.76)}.profile-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.profile-gallery img{width:100%;height:255px;object-fit:cover;border-radius:22px;box-shadow:0 12px 30px rgba(6,26,52,.11);border:1px solid var(--line)}.process{background:#fff}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.process-card{background:linear-gradient(180deg,#f7fcff,#fff);border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 12px 34px rgba(6,26,52,.06)}.process-card span{display:inline-grid;place-items:center;width:46px;height:46px;background:var(--navy);color:#fff;border-radius:16px;font-weight:900;margin-bottom:18px}.process-card h3{margin:0 0 10px;color:var(--navy)}.process-card p{margin:0;color:var(--muted)}.brands-section{background:#f7fcff}.brands-img,.full-profile-img{width:100%;border-radius:28px;box-shadow:var(--shadow);border:1px solid var(--line)}.cta-band{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:36px;border-radius:28px;background:linear-gradient(135deg,#eaf6ff,#fff);border:1px solid var(--line);box-shadow:0 14px 36px rgba(6,26,52,.08)}.cta-band h2{font-family:Poppins;margin:0;color:var(--navy);font-size:34px;line-height:1.12}.cta-band p{margin:8px 0 0;color:var(--muted);font-weight:700}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}.faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px}.accordion{display:grid;gap:14px}.faq-item{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 12px 28px rgba(6,26,52,.05)}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;border:0;background:transparent;color:var(--navy);font:900 16px Inter;padding:20px 22px;text-align:left;cursor:pointer}.faq-question span{width:30px;height:30px;display:grid;place-items:center;background:var(--ice);border-radius:50%;color:var(--blue)}.faq-answer{display:none;padding:0 22px 20px}.faq-answer p{margin:0;color:var(--muted)}.faq-item.open .faq-answer{display:block}.contact-section{background:linear-gradient(135deg,var(--navy),#0c3d67)}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:32px;align-items:start}.contact-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:30px;padding:30px;color:#fff}.contact-row{display:grid;grid-template-columns:46px 1fr;gap:14px;margin-top:18px}.contact-row b{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.13)}.contact-row span{display:block;color:#9fe4ff;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.09em}.contact-row a,.contact-row p{margin:4px 0 0;color:#fff;font-weight:800}.contact-img{margin-top:24px;border-radius:22px;height:250px;width:100%;object-fit:cover;border:1px solid rgba(255,255,255,.18)}.form{background:#fff;border-radius:30px;padding:30px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field.full{grid-column:1/-1}.field label{display:block;font-weight:900;color:var(--navy);margin-bottom:8px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:14px 15px;font:inherit;color:var(--text);background:#f9fcff;outline:none}.field textarea{height:140px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(32,168,220,.13)}.form-message{font-weight:800;color:var(--blue);margin:14px 0 0}.form-message a{color:var(--navy);text-decoration:underline}.page-hero{padding:100px 0 82px;background:radial-gradient(circle at 85% 15%,rgba(32,168,220,.22),transparent 32%),linear-gradient(135deg,#f7fcff,#eaf6ff)}.page-hero h1{font-size:clamp(38px,5vw,68px);letter-spacing:-.04em;max-width:920px}.page-hero p{font-size:19px;color:var(--muted);max-width:800px}.services-hero{background-image:linear-gradient(90deg,rgba(247,252,255,.96),rgba(234,246,255,.9)),url('./assets/profile/pdf-equipment.jpg');background-size:cover;background-position:center}.projects-hero{background-image:linear-gradient(90deg,rgba(247,252,255,.97),rgba(234,246,255,.86)),url('./assets/profile/pdf-buildings.jpg');background-size:cover;background-position:center}.contact-hero{background-image:linear-gradient(90deg,rgba(247,252,255,.97),rgba(234,246,255,.88)),url('./assets/profile/pdf-office.jpg');background-size:cover;background-position:center}.light-blue{background:#f7fcff}.value-grid,.feature-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}.value-grid div,.feature-box{padding:22px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(6,26,52,.05)}.value-grid h3,.feature-box h3{margin:0 0 8px;color:var(--navy)}.value-grid p,.feature-box p{margin:0;color:var(--muted)}.service-detail-list{display:grid;gap:28px}.service-detail{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:30px;padding:24px;box-shadow:0 16px 44px rgba(6,26,52,.08)}.service-detail:nth-child(even){grid-template-columns:1.1fr .9fr}.service-detail:nth-child(even) img{order:2}.service-detail img{width:100%;height:390px;object-fit:cover;border-radius:24px}.service-detail h2{font-family:Poppins;margin:0 0 14px;color:var(--navy);font-size:34px;line-height:1.1}.service-detail p{color:var(--muted);margin:0 0 18px}.service-detail ul{columns:2;list-style:none;margin:0;padding:0}.service-detail li{position:relative;padding-left:24px;margin:8px 0;font-weight:800;color:var(--text)}.service-detail li:before{content:"•";position:absolute;left:0;color:var(--blue);font-weight:900}.project-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.filter-btn{border:1px solid var(--line);background:#fff;color:var(--navy);padding:11px 17px;border-radius:999px;font-weight:900;cursor:pointer}.filter-btn.is-active,.filter-btn:hover{background:var(--navy);color:#fff}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project-card{position:relative;overflow:hidden;border-radius:28px;height:380px;box-shadow:var(--shadow);background:var(--navy)}.project-card.is-hidden{display:none}.project-card img{width:100%;height:100%;object-fit:cover;transition:.35s var(--ease)}.project-card:hover img{transform:scale(1.05)}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(6,26,52,.88))}.project-info{position:absolute;left:24px;right:24px;bottom:24px;z-index:2;color:#fff}.project-info span{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 11px;font-weight:900;font-size:12px;color:#9fe4ff}.project-info h3{margin:10px 0 6px;font-size:24px}.project-info p{margin:0;color:rgba(255,255,255,.82)}.modal{position:fixed;inset:0;z-index:2000;display:none}.modal.is-open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(6,26,52,.64);backdrop-filter:blur(4px)}.modal-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100% - 34px));background:#fff;border-radius:28px;padding:32px;box-shadow:var(--shadow)}.modal-close{position:absolute;right:18px;top:18px;width:38px;height:38px;border-radius:999px;border:0;background:var(--ice);color:var(--navy);font-size:24px;cursor:pointer}.modal-card h2{font-family:Poppins;margin:0;color:var(--navy)}.modal-card p{color:var(--muted)}.reveal{opacity:0;transform:translateY(18px);transition:.7s var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}
@media (max-width:1000px){.nav{height:82px}.brand-logo{height:50px}.phone-pill{display:none}.menu-toggle{display:inline-flex}.nav-menu{position:fixed;left:20px;right:20px;top:92px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:15px;display:none}.nav-menu.is-open{display:block}.nav-links{display:grid;gap:4px}.nav-links a{padding:14px 16px}.hero-grid,.split,.split.reverse,.why-grid,.faq-grid,.contact-grid,.service-detail,.service-detail:nth-child(even){grid-template-columns:1fr}.service-detail:nth-child(even) img{order:0}.service-grid,.project-grid,.profile-gallery{grid-template-columns:repeat(2,1fr)}.process-grid,.stats{grid-template-columns:repeat(2,1fr)}.section-head{grid-template-columns:1fr}.hero{padding:70px 0}.hero-card{min-height:420px}.hero-card img{height:420px}.image-stack{min-height:auto}.mini-img,.badge-card{position:relative;right:auto;bottom:auto;left:auto;width:100%;margin-top:16px}.main-img,.rounded-img{height:430px}.cta-band{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr!important}}
@media (max-width:640px){.container{width:min(100% - 24px,1180px)}.nav-actions .btn-primary{display:none}.brand-logo{height:44px;max-width:230px}.hero h1{font-size:38px}.hero p,.lead{font-size:16px}.section{padding:68px 0}.service-grid,.project-grid,.profile-gallery,.process-grid,.stats,.value-grid,.feature-cards,.form-grid,.footer-grid{grid-template-columns:1fr!important}.hero-card{min-height:360px;border-radius:24px}.hero-card img{height:360px}.hero-card-content{left:22px;right:22px;bottom:22px}.hero-card-content h3{font-size:24px}.service-detail{padding:16px}.service-detail img{height:280px}.service-detail ul{columns:1}.project-card{height:330px}.floating-actions{right:14px;bottom:14px}.footer-bottom .container{flex-direction:column;gap:6px}.page-hero{padding:70px 0}.contact-card,.form{padding:22px}.main-img,.rounded-img{height:320px}}

/* Final update: WhatsApp header button + migrated WordPress content */
.wa-icon,.call-icon{width:20px;height:20px;display:block;flex:0 0 20px}.whatsapp-pill{background:#0c9b5a!important;color:#fff!important;border-color:rgba(12,155,90,.25)!important;box-shadow:0 14px 32px rgba(12,155,90,.24);display:inline-flex;gap:9px}.whatsapp-pill:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(12,155,90,.32)}.floating-actions a svg{width:24px;height:24px}.floating-actions .floating-whatsapp{background:#0c9b5a!important}.migrated-services{background:linear-gradient(180deg,#f7fcff,#fff)}.mini-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.mini-service-grid.four-grid{grid-template-columns:repeat(4,1fr)}.mini-service-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 14px 36px rgba(6,26,52,.07);transition:.28s var(--ease);position:relative;overflow:hidden}.mini-service-card:before{content:"";position:absolute;right:-35px;top:-35px;width:100px;height:100px;border-radius:50%;background:rgba(32,168,220,.12)}.mini-service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.mini-service-card span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;font-weight:900;margin-bottom:18px}.mini-service-card h3{font-family:Poppins,Inter,sans-serif;color:var(--navy);font-size:21px;margin:0 0 10px;line-height:1.16}.mini-service-card p{margin:0;color:var(--muted);font-weight:650}.testimonials-section{background:#f7fcff}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.testimonial-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 14px 34px rgba(6,26,52,.06)}.testimonial-card .stars{color:#0f6ea8;letter-spacing:.12em;font-weight:900;margin-bottom:14px}.testimonial-card p{font-size:18px;color:var(--text);margin:0 0 18px;font-weight:700}.testimonial-card strong{color:var(--blue)}.whatsapp-row b{background:#0c9b5a!important;color:#fff!important}.contact-row b svg{width:22px;height:22px}.stat strong{white-space:nowrap}.nav-actions .btn-primary{white-space:nowrap}@media (max-width:1000px){.mini-service-grid,.mini-service-grid.four-grid,.testimonial-grid{grid-template-columns:repeat(2,1fr)}.whatsapp-pill span{display:none}}@media (max-width:640px){.mini-service-grid,.mini-service-grid.four-grid,.testimonial-grid{grid-template-columns:1fr}.whatsapp-pill{padding:11px 12px}.phone-pill.whatsapp-pill{display:inline-flex!important}.nav-actions{gap:8px}.contact-row b svg{width:20px;height:20px}}

/* Header WhatsApp icon-only update */
.whatsapp-pill{width:52px;height:52px;padding:0!important;justify-content:center;align-items:center;gap:0;border-radius:999px}.whatsapp-pill span{display:none!important}.phone-pill.whatsapp-pill{display:inline-flex}.whatsapp-pill .wa-icon{width:22px;height:22px;flex:0 0 22px}@media (max-width:640px){.whatsapp-pill{width:48px;height:48px}}

/* Final navy website theme override */
:root{
  --navy:#071b35;
  --navy-2:#0b2547;
  --blue:#123f72;
  --sky:#1b5f9c;
  --ice:#0d2342;
  --white:#ffffff;
  --text:#e8f1fb;
  --muted:#b6c8db;
  --line:rgba(184,208,232,.14);
  --shadow:0 24px 70px rgba(0,0,0,.28);
}
body{background:linear-gradient(180deg,#06172e 0%,#081b35 35%,#0b2242 100%);color:var(--text)}
.header{background:rgba(6,23,46,.95);border-bottom:1px solid rgba(184,208,232,.12);box-shadow:0 8px 24px rgba(0,0,0,.26)}
.nav-links a{color:#eaf4ff}
.nav-links a:hover,.nav-links a.active{background:rgba(255,255,255,.08);color:#7fd0ff}
.phone-pill{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08);color:#fff}
.btn-primary{background:linear-gradient(135deg,#0f4d86,#1c73b9);box-shadow:0 16px 35px rgba(0,0,0,.28)}
.btn-secondary{background:rgba(255,255,255,.07);color:#fff;border:1px solid rgba(255,255,255,.15);box-shadow:none}
.btn-dark{background:#fff;color:#081b35}
.hero,.page-hero,.services,.light-blue,.brands-section,.testimonials-section,.migrated-services{background:transparent!important}
.hero:before{background:linear-gradient(135deg,rgba(18,63,114,.38),rgba(27,95,156,.22))}
.stats-strip,.service-card,.stat,.process-card,.value-grid div,.feature-box,.service-detail,.form,.testimonial-card,.mini-service-card,.cta-band,.faq-item,.modal-card{background:rgba(255,255,255,.05)!important;border:1px solid rgba(184,208,232,.12)!important;box-shadow:0 16px 40px rgba(0,0,0,.22)!important}
.section-title,.hero h1,.page-hero h1,.service-card h3,.process-card h3,.value-grid h3,.feature-box h3,.service-detail h2,.cta-band h2,.modal-card h2,.project-info h3,.brand,.footer-logo-wrap p{color:#fff}
.hero p,.lead,.page-hero p,.service-card p,.stat span,.value-grid p,.feature-box p,.service-detail p,.cta-band p,.project-info p,.contact-row span,.footer p,.footer-links a,.footer-contact a,.form-message,.mini-service-card p,.testimonial-card p{color:var(--muted)!important}
.eyebrow,.service-card a,.testimonial-card strong,.form-message a{color:#7fd0ff}
.check-list li,.field label,.filter-btn,.modal-card p,.footer-logo-wrap h3,.footer-col h4,.contact-row a,.contact-row p{color:#fff}
.check-list li:before,.faq-question span,.process-card span,.mini-service-card span{background:rgba(127,208,255,.12);color:#8bd8ff}
.dark-section{background:linear-gradient(135deg,#081b35,#0b2443 60%,#123f72)!important}
.footer{background:#06172e;border-top:1px solid rgba(184,208,232,.12)}
.footer-bottom{border-top:1px solid rgba(184,208,232,.1)}
.filter-btn{background:rgba(255,255,255,.05);border-color:rgba(184,208,232,.16)}
.filter-btn.is-active,.filter-btn:hover{background:#123f72;color:#fff}
.field input,.field select,.field textarea{background:rgba(255,255,255,.06);border-color:rgba(184,208,232,.15);color:#fff}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#68beff;box-shadow:0 0 0 4px rgba(104,190,255,.12)}
.field input::placeholder,.field textarea::placeholder{color:#a8bbcf}
.contact-card{background:linear-gradient(135deg,#081b35,#0d2d57)!important;border:1px solid rgba(184,208,232,.12)}
.whatsapp-pill{background:#0a9d58!important;border-color:rgba(10,157,88,.28)!important}
.project-card{background:#081b35}
.project-card:after{background:linear-gradient(180deg,transparent 40%,rgba(4,14,27,.9))}
.page-hero.services-hero,.page-hero.projects-hero,.page-hero.contact-hero{position:relative;overflow:hidden}
.page-hero.services-hero::before,.page-hero.projects-hero::before,.page-hero.contact-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,23,46,.93),rgba(6,23,46,.78));}
.page-hero.services-hero .container,.page-hero.projects-hero .container,.page-hero.contact-hero .container{position:relative;z-index:1}
@media (max-width:640px){
  .nav-menu{background:#081b35;border-color:rgba(184,208,232,.12)}
}

/* User update: use provided WhatsApp PNG icon and make stats text fully white */
.wa-icon-img{width:34px;height:34px;object-fit:contain;display:block;filter:none!important}
.whatsapp-pill{background:transparent!important;border:0!important;box-shadow:none!important;width:54px;height:54px;padding:0!important}
.whatsapp-pill:hover{background:rgba(255,255,255,.08)!important;box-shadow:none!important;transform:translateY(-1px)}
.floating-whatsapp .wa-icon-img{width:42px;height:42px}
.floating-actions .floating-whatsapp{background:transparent!important;box-shadow:none!important}
.stats-strip{background:linear-gradient(135deg,#071b35,#0d2d57)!important;border-color:rgba(255,255,255,.16)!important}
.stat{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.14)!important}
.stat strong,.stat span{color:#fff!important}.stat span{opacity:.92}.stats *{color:#fff!important}
/* Make all major visible website text white on navy theme */
body,.section-title,.hero h1,.page-hero h1,h1,h2,h3,h4,h5,h6,p,li,span,strong,label,a,button{color:#fff}
.lead,.hero p,.page-hero p,.service-card p,.mini-service-card p,.testimonial-card p,.process-card p,.feature p,.faq-answer p,.footer p{color:rgba(255,255,255,.82)!important}
.nav-links a{color:#fff!important}.nav-links a:hover,.nav-links a.active{color:#fff!important;background:rgba(255,255,255,.12)!important}
@media (max-width:640px){.whatsapp-pill{width:48px;height:48px}.wa-icon-img{width:32px;height:32px}}

/* Fix: workflow/process section text must be visible on white cards */
.process{
  background:#ffffff!important;
}
.process .eyebrow{
  color:#20a8dc!important;
}
.process .eyebrow:before{
  background:#0f6ea8!important;
}
.process .section-title,
.process h2{
  color:#071b35!important;
}
.process .lead{
  color:#31506d!important;
}
.process-card{
  background:#ffffff!important;
  border:1px solid rgba(9,33,59,.10)!important;
  box-shadow:0 18px 48px rgba(6,26,52,.12)!important;
}
.process-card span{
  background:#eaf7ff!important;
  color:#20a8dc!important;
}
.process-card h3{
  color:#071b35!important;
}
.process-card p{
  color:#31506d!important;
}

/* Fix: native service dropdown list must stay readable on white menu */
.field select option,
.field select optgroup{
  color:#071b35!important;
  background:#ffffff!important;
}
.field select option:checked,
.field select option:hover{
  color:#071b35!important;
  background:#dff3ff!important;
}


/* Final WhatsApp animation polish: use uploaded PNG everywhere */
:root{--wa-green:#22d21f;--wa-green-dark:#05a915;}
.wa-icon-img{width:36px;height:36px;object-fit:contain;display:block;filter:drop-shadow(0 7px 13px rgba(34,210,31,.32));transform-origin:center;}
.whatsapp-pill,.floating-whatsapp,.whatsapp-row b.contact-wa-icon-wrap{position:relative;isolation:isolate;overflow:visible;}
.whatsapp-pill{width:56px!important;height:56px!important;background:transparent!important;border:0!important;box-shadow:none!important;display:inline-grid!important;place-items:center!important;animation:waHeaderFloat 3.2s ease-in-out infinite;}
.whatsapp-pill::before,.floating-whatsapp::before,.whatsapp-row b.contact-wa-icon-wrap::before{content:"";position:absolute;inset:6px;border-radius:999px;background:radial-gradient(circle,rgba(34,210,31,.36),rgba(34,210,31,.06) 58%,transparent 70%);z-index:-1;animation:waPulseRing 2.2s ease-out infinite;}
.whatsapp-pill::after,.floating-whatsapp::after{content:"";position:absolute;inset:9px;border-radius:999px;border:1px solid rgba(95,255,95,.45);z-index:-1;animation:waRipple 2.2s ease-out infinite;}
.whatsapp-pill:hover,.floating-whatsapp:hover{transform:translateY(-4px) scale(1.08)!important;}
.whatsapp-pill:hover .wa-icon-img,.floating-whatsapp:hover .wa-icon-img,.whatsapp-row:hover .wa-icon-img{animation:waWiggle .65s ease-in-out both;filter:drop-shadow(0 10px 18px rgba(34,210,31,.55));}
.floating-actions .floating-whatsapp{width:62px!important;height:62px!important;background:transparent!important;box-shadow:none!important;animation:waFloat 3s ease-in-out infinite;}
.floating-whatsapp .wa-icon-img{width:52px!important;height:52px!important;}
.whatsapp-row b.contact-wa-icon-wrap{background:transparent!important;width:54px!important;height:54px!important;display:grid!important;place-items:center!important;border-radius:999px!important;color:transparent!important;}
.whatsapp-row b.contact-wa-icon-wrap .contact-wa-icon{width:46px!important;height:46px!important;}
.whatsapp-row a{transition:.25s var(--ease);}
.whatsapp-row:hover a{color:#7eff78!important;text-shadow:0 0 16px rgba(34,210,31,.32);}
@keyframes waPulseRing{0%{transform:scale(.76);opacity:.62}70%{transform:scale(1.35);opacity:0}100%{transform:scale(1.35);opacity:0}}
@keyframes waRipple{0%{transform:scale(.85);opacity:.75}100%{transform:scale(1.65);opacity:0}}
@keyframes waWiggle{0%,100%{transform:rotate(0) scale(1)}20%{transform:rotate(-9deg) scale(1.06)}45%{transform:rotate(8deg) scale(1.08)}70%{transform:rotate(-4deg) scale(1.04)}}
@keyframes waFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes waHeaderFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){.whatsapp-pill,.floating-actions .floating-whatsapp,.whatsapp-pill::before,.floating-whatsapp::before,.whatsapp-row b.contact-wa-icon-wrap::before,.whatsapp-pill::after,.floating-whatsapp::after{animation:none!important}}
@media (max-width:640px){.whatsapp-pill{width:50px!important;height:50px!important}.wa-icon-img{width:34px!important;height:34px!important}.floating-actions .floating-whatsapp{width:58px!important;height:58px!important}.floating-whatsapp .wa-icon-img{width:50px!important;height:50px!important}}

/* --- Premium picture hover animations: glow, rays and soft zoom --- */
.hero-card,
.service-card,
.project-card,
.service-detail,
.image-stack,
.contact-card,
.brands-section .container,
.why-grid,
.split{
  position:relative;
}
.hero-card,
.service-card,
.project-card,
.service-detail,
.image-stack{
  overflow:hidden;
}
.hero-card img,
.service-card img,
.project-card img,
.service-detail img,
.main-img,
.mini-img,
.contact-img,
.rounded-img,
.full-profile-img{
  transition:transform .55s cubic-bezier(.2,.8,.2,1), filter .55s cubic-bezier(.2,.8,.2,1), box-shadow .55s cubic-bezier(.2,.8,.2,1);
  will-change:transform,filter;
}
.hero-card::before,
.service-card::before,
.project-card::before,
.service-detail::before,
.image-stack::before{
  content:"";
  position:absolute;
  inset:-35%;
  background:conic-gradient(from 0deg, transparent 0 18deg, rgba(127,208,255,.35) 20deg 24deg, transparent 27deg 55deg, rgba(255,255,255,.22) 58deg 62deg, transparent 64deg 100deg);
  opacity:0;
  transform:scale(.72) rotate(0deg);
  transition:opacity .35s ease, transform .6s ease;
  pointer-events:none;
  z-index:1;
  mix-blend-mode:screen;
}
.hero-card::after,
.service-card::after,
.service-detail::after,
.image-stack::after{
  content:"";
  position:absolute;
  top:-120%;
  left:-90%;
  width:58%;
  height:260%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.30), rgba(127,208,255,.32), transparent);
  transform:rotate(22deg) translateX(-20%);
  opacity:0;
  pointer-events:none;
  z-index:2;
}
.hero-card:hover::before,
.service-card:hover::before,
.project-card:hover::before,
.service-detail:hover::before,
.image-stack:hover::before{
  opacity:.85;
  transform:scale(1) rotate(12deg);
  animation:pictureRaysSpin 7s linear infinite;
}
.hero-card:hover::after,
.service-card:hover::after,
.service-detail:hover::after,
.image-stack:hover::after{
  opacity:1;
  animation:pictureShine 1.05s ease forwards;
}
.hero-card:hover img,
.service-card:hover img,
.project-card:hover img,
.service-detail:hover img,
.image-stack:hover .main-img,
.image-stack:hover .mini-img,
.contact-img:hover,
.rounded-img:hover,
.full-profile-img:hover{
  transform:scale(1.045);
  filter:saturate(1.12) contrast(1.05) drop-shadow(0 0 18px rgba(127,208,255,.28));
}
.full-profile-img:hover,
.rounded-img:hover,
.contact-img:hover{
  box-shadow:0 0 0 1px rgba(127,208,255,.35), 0 24px 70px rgba(32,168,220,.24), 0 0 35px rgba(127,208,255,.18);
}
@keyframes pictureRaysSpin{
  from{transform:scale(1) rotate(0deg)}
  to{transform:scale(1) rotate(360deg)}
}
@keyframes pictureShine{
  0%{transform:rotate(22deg) translateX(-45%);opacity:0}
  20%{opacity:1}
  100%{transform:rotate(22deg) translateX(360%);opacity:0}
}
@media (prefers-reduced-motion:reduce){
  .hero-card::before,.service-card::before,.project-card::before,.service-detail::before,.image-stack::before,
  .hero-card::after,.service-card::after,.service-detail::after,.image-stack::after{animation:none!important;transition:none!important;opacity:0!important}
  .hero-card img,.service-card img,.project-card img,.service-detail img,.main-img,.mini-img,.contact-img,.rounded-img,.full-profile-img{transition:none!important}
}

/* --- User fix: image rays/glow must stay on image area only, not text fields --- */
.hero-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  left:0!important;
  top:0!important;
  transform:none!important;
  opacity:1!important;
  background:linear-gradient(180deg,transparent 28%,rgba(6,26,52,.82))!important;
  pointer-events:none!important;
  z-index:2!important;
  animation:none!important;
  border-radius:inherit!important;
}
.hero-card:hover::after{
  opacity:1!important;
  animation:none!important;
  transform:none!important;
}
.hero-card::before{
  z-index:1!important;
}
.hero-card-content,
.slider-dots{
  position:absolute;
  z-index:3!important;
}
.service-card::before{
  inset:0 0 auto 0!important;
  width:100%!important;
  height:205px!important;
  border-radius:28px 28px 0 0!important;
  z-index:1!important;
}
.service-card::after{
  top:-20px!important;
  left:-90%!important;
  width:58%!important;
  height:245px!important;
  z-index:2!important;
  border-radius:28px 28px 0 0!important;
}
.service-card .icon,
.service-card h3,
.service-card p,
.service-card a{
  position:relative!important;
  z-index:4!important;
}
.service-detail::before,
.service-detail::after,
.image-stack::before,
.image-stack::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  animation:none!important;
}
.service-detail img,
.image-stack .main-img,
.image-stack .mini-img,
.rounded-img,
.contact-img,
.full-profile-img,
.brands-img,
.profile-gallery img{
  position:relative;
  z-index:1;
}
.service-detail:hover img,
.image-stack:hover .main-img,
.image-stack:hover .mini-img,
.rounded-img:hover,
.contact-img:hover,
.full-profile-img:hover,
.brands-img:hover,
.profile-gallery img:hover{
  transform:scale(1.035)!important;
  filter:saturate(1.1) contrast(1.04) drop-shadow(0 0 18px rgba(127,208,255,.30))!important;
}
.badge-card,
.service-detail > div,
.contact-card .contact-row,
.contact-card .eyebrow,
.contact-card .section-title{
  position:relative!important;
  z-index:5!important;
}


/* --- FINAL: logo animation only on globe icon, not on Blue Earth text --- */
.brand,
.footer-brand{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  --logo-globe-size:72px;
  --logo-globe-left:35px;
}
.brand-logo{
  position:relative!important;
  z-index:2!important;
  filter:none!important;
  box-shadow:none!important;
  transform:none!important;
  transition:none!important;
}
.brand:hover .brand-logo,
.brand:focus-visible .brand-logo,
.footer-brand:hover .brand-logo,
.footer-brand:focus-visible .brand-logo{
  filter:none!important;
  box-shadow:none!important;
  transform:none!important;
}
.brand::before,
.footer-brand::before{
  content:""!important;
  position:absolute!important;
  left:var(--logo-globe-left)!important;
  top:50%!important;
  width:var(--logo-globe-size)!important;
  height:var(--logo-globe-size)!important;
  transform:translate(-50%,-50%) scale(.82)!important;
  border-radius:999px!important;
  background:radial-gradient(circle, rgba(110,214,255,.82) 0%, rgba(43,160,222,.36) 34%, rgba(43,160,222,.13) 58%, transparent 75%)!important;
  filter:blur(10px)!important;
  opacity:0!important;
  transition:opacity .32s ease, transform .32s ease!important;
  pointer-events:none!important;
  z-index:1!important;
}
.brand::after,
.footer-brand::after{
  content:""!important;
  position:absolute!important;
  left:var(--logo-globe-left)!important;
  top:50%!important;
  width:calc(var(--logo-globe-size) + 22px)!important;
  height:calc(var(--logo-globe-size) + 22px)!important;
  transform:translate(-50%,-50%) scale(.78) rotate(0deg)!important;
  border-radius:999px!important;
  background:conic-gradient(from 0deg, transparent 0 18deg, rgba(125,214,255,.65) 20deg 24deg, transparent 26deg 60deg, rgba(255,255,255,.45) 62deg 65deg, transparent 67deg 100deg, rgba(125,214,255,.45) 102deg 106deg, transparent 108deg 360deg)!important;
  filter:blur(2.5px)!important;
  opacity:0!important;
  transition:opacity .32s ease!important;
  pointer-events:none!important;
  mix-blend-mode:screen!important;
  z-index:1!important;
}
.brand:hover::before,
.brand:focus-visible::before,
.footer-brand:hover::before,
.footer-brand:focus-visible::before{
  opacity:1!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
.brand:hover::after,
.brand:focus-visible::after,
.footer-brand:hover::after,
.footer-brand:focus-visible::after{
  opacity:.9!important;
  animation:globeOnlySpin 5.8s linear infinite!important;
}
@keyframes globeOnlySpin{
  from{transform:translate(-50%,-50%) scale(1) rotate(0deg)}
  to{transform:translate(-50%,-50%) scale(1) rotate(360deg)}
}
@media (max-width:1000px){
  .brand,.footer-brand{--logo-globe-size:62px;--logo-globe-left:30px;}
}
@media (max-width:640px){
  .brand,.footer-brand{--logo-globe-size:54px;--logo-globe-left:26px;}
}
@media (prefers-reduced-motion:reduce){
  .brand::after,.footer-brand::after{animation:none!important}
}


/* --- User requested fixes: bigger logo, restored stats animation, longer image glow sweep --- */
.header .nav{height:112px!important;}
.header .brand{min-width:300px!important;}
.header .brand-logo{height:86px!important;max-width:360px!important;width:auto!important;object-fit:contain!important;}
.footer .footer-logo{height:96px!important;max-width:380px!important;width:auto!important;object-fit:contain!important;}

.stats-strip{position:relative!important;overflow:hidden!important;background:linear-gradient(135deg,rgba(7,31,61,.92),rgba(10,57,98,.86)),url('/assets/profile/pdf-buildings.jpg') center/cover no-repeat!important;border:1px solid rgba(125,214,255,.22)!important;box-shadow:0 24px 75px rgba(0,0,0,.28)!important;}
.stats-strip::before{content:""!important;position:absolute!important;inset:-2px!important;background:radial-gradient(circle at 18% 15%,rgba(125,214,255,.26),transparent 36%),linear-gradient(115deg,transparent 0 38%,rgba(255,255,255,.15) 47%,rgba(125,214,255,.18) 50%,transparent 62%)!important;opacity:.85!important;pointer-events:none!important;}
.stats-strip::after{content:""!important;position:absolute!important;top:-70%!important;left:-105%!important;width:80%!important;height:245%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),rgba(125,214,255,.34),rgba(255,255,255,.18),transparent)!important;transform:rotate(19deg)!important;animation:statsBigGlowLine 4.8s ease-in-out infinite!important;pointer-events:none!important;}
.stats{position:relative!important;z-index:2!important;}
.stat.stat-animate{position:relative!important;overflow:hidden!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.18)!important;backdrop-filter:blur(10px)!important;transform:translateY(0);animation:statCardFloat 5.8s ease-in-out infinite;}
.stat.stat-animate:nth-child(2){animation-delay:.25s}.stat.stat-animate:nth-child(3){animation-delay:.5s}.stat.stat-animate:nth-child(4){animation-delay:.75s}
.stat.stat-animate::before{content:"";position:absolute;inset:-70% -80%;background:conic-gradient(from 0deg,transparent,rgba(125,214,255,.20),transparent 32%,rgba(255,255,255,.12),transparent 65%);opacity:.55;animation:statRaysSpin 9s linear infinite;pointer-events:none;}
.stat.stat-animate::after{content:"";position:absolute;top:-130%;left:-100%;width:95%;height:340%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.24),rgba(125,214,255,.32),transparent);transform:rotate(20deg);opacity:0;pointer-events:none;}
.stat.stat-animate:hover::after{animation:longGlowSweep 1.55s ease forwards;opacity:1;}
.stat-prefix,.stat-count{display:inline-block!important;color:#fff!important;}
.stat-count{min-width:.8ch;}

.hero-card::before{content:""!important;position:absolute!important;inset:-70%!important;width:auto!important;height:auto!important;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.18) 43%,rgba(125,214,255,.48) 50%,rgba(255,255,255,.18) 57%,transparent 68%)!important;opacity:0!important;transform:translateX(-72%) rotate(8deg)!important;z-index:3!important;mix-blend-mode:screen!important;pointer-events:none!important;}
.hero-card:hover::before{opacity:1!important;animation:longGlowSweepHero 1.55s ease forwards!important;}
.hero-card-content,.slider-dots{z-index:5!important;}
.service-card::after,.service-detail::after,.image-stack::after{content:""!important;display:block!important;position:absolute!important;top:-90%!important;left:-115%!important;width:92%!important;height:300%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),rgba(125,214,255,.36),rgba(255,255,255,.18),transparent)!important;transform:rotate(20deg)!important;opacity:0!important;z-index:3!important;pointer-events:none!important;border-radius:inherit!important;}
.service-card:hover::after,.service-detail:hover::after,.image-stack:hover::after{opacity:1!important;animation:longGlowSweep 1.55s ease forwards!important;}
.image-stack::before,.service-detail::before{content:""!important;display:block!important;position:absolute!important;inset:-18%!important;background:radial-gradient(circle at 35% 35%,rgba(125,214,255,.18),transparent 40%)!important;opacity:0!important;transition:opacity .35s ease!important;z-index:0!important;pointer-events:none!important;}
.image-stack:hover::before,.service-detail:hover::before{opacity:1!important;}
@keyframes statCardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes statRaysSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes statsBigGlowLine{0%{transform:rotate(19deg) translateX(-25%);opacity:0}18%{opacity:.95}55%{opacity:.95}100%{transform:rotate(19deg) translateX(275%);opacity:0}}
@keyframes longGlowSweep{0%{transform:rotate(20deg) translateX(-45%);opacity:0}20%{opacity:1}100%{transform:rotate(20deg) translateX(330%);opacity:0}}
@keyframes longGlowSweepHero{0%{transform:translateX(-72%) rotate(8deg);opacity:0}18%{opacity:1}100%{transform:translateX(72%) rotate(8deg);opacity:0}}

@media (max-width:1000px){.header .nav{height:96px!important}.header .brand{min-width:250px!important}.header .brand-logo{height:70px!important;max-width:300px!important}.footer .footer-logo{height:78px!important;max-width:320px!important}}
@media (max-width:640px){.header .nav{height:84px!important}.header .brand{min-width:0!important}.header .brand-logo{height:58px!important;max-width:230px!important}.footer .footer-logo{height:66px!important;max-width:260px!important}.stats-strip::after{animation-duration:5.8s!important}}

/* --- FINAL FIX: full banner glow sweep on hero + about images, restored bigger cropped logo --- */
.header .nav{height:118px!important;}
.header .brand{min-width:420px!important;}
.header .brand-logo{height:92px!important;max-width:430px!important;width:auto!important;object-fit:contain!important;opacity:1!important;filter:drop-shadow(0 8px 18px rgba(0,0,0,.18))!important;}
.footer .footer-logo,.footer .brand-logo{height:98px!important;max-width:430px!important;width:auto!important;object-fit:contain!important;opacity:1!important;}

.hero-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
.hero-card::after{
  z-index:2!important;
}
.hero-card::before{
  content:""!important;
  position:absolute!important;
  top:-135%!important;
  left:-120%!important;
  width:75%!important;
  height:380%!important;
  border-radius:0!important;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(255,255,255,.00) 18%,
    rgba(255,255,255,.20) 38%,
    rgba(130,220,255,.72) 48%,
    rgba(255,255,255,.72) 52%,
    rgba(130,220,255,.48) 58%,
    rgba(255,255,255,.12) 72%,
    transparent 100%)!important;
  filter:blur(.3px)!important;
  transform:rotate(21deg) translateX(-18%)!important;
  opacity:.95!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
  z-index:4!important;
  animation:blueEarthFullBannerSweep 4.25s cubic-bezier(.2,.8,.2,1) infinite!important;
}
.hero-card:hover::before{animation-duration:1.65s!important;}
.hero-card img{position:relative!important;z-index:1!important;transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .75s cubic-bezier(.2,.8,.2,1)!important;}
.hero-card:hover img{transform:scale(1.045)!important;filter:saturate(1.15) contrast(1.05) brightness(1.04)!important;}
.hero-card-content,.slider-dots{z-index:5!important;}

.image-stack{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
}
.image-stack::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-24px!important;
  border-radius:38px!important;
  background:radial-gradient(circle at 24% 22%,rgba(130,220,255,.30),transparent 34%),radial-gradient(circle at 82% 70%,rgba(255,255,255,.18),transparent 30%)!important;
  opacity:.72!important;
  filter:blur(8px)!important;
  pointer-events:none!important;
  z-index:0!important;
  animation:blueEarthSoftGlowPulse 4.6s ease-in-out infinite!important;
}
.image-stack::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:-118%!important;
  left:-112%!important;
  width:70%!important;
  height:360%!important;
  border-radius:0!important;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(255,255,255,.00) 18%,
    rgba(255,255,255,.22) 38%,
    rgba(130,220,255,.70) 48%,
    rgba(255,255,255,.72) 52%,
    rgba(130,220,255,.46) 60%,
    rgba(255,255,255,.12) 74%,
    transparent 100%)!important;
  filter:blur(.35px)!important;
  transform:rotate(20deg) translateX(-18%)!important;
  opacity:.95!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
  z-index:4!important;
  animation:blueEarthFullImageSweep 4.45s cubic-bezier(.2,.8,.2,1) infinite!important;
}
.image-stack:hover::after{animation-duration:1.7s!important;}
.image-stack .main-img,.image-stack .mini-img{position:relative!important;z-index:2!important;transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .75s cubic-bezier(.2,.8,.2,1)!important;}
.image-stack:hover .main-img,.image-stack:hover .mini-img{transform:scale(1.04)!important;filter:saturate(1.12) contrast(1.05) brightness(1.04) drop-shadow(0 0 24px rgba(130,220,255,.22))!important;}
.image-stack .badge-card{position:absolute!important;z-index:6!important;}

.stats-strip::after{
  width:92%!important;
  height:280%!important;
  left:-125%!important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 34%,rgba(130,220,255,.52) 49%,rgba(255,255,255,.42) 54%,rgba(130,220,255,.28) 62%,transparent 100%)!important;
  animation:blueEarthStatsWideSweep 4.6s cubic-bezier(.2,.8,.2,1) infinite!important;
  opacity:.92!important;
}
.stat.stat-animate{animation:statCardFloat 5.8s ease-in-out infinite!important;}

@keyframes blueEarthFullBannerSweep{
  0%{transform:rotate(21deg) translateX(-35%);opacity:0;}
  14%{opacity:.95;}
  52%{opacity:.95;}
  100%{transform:rotate(21deg) translateX(350%);opacity:0;}
}
@keyframes blueEarthFullImageSweep{
  0%{transform:rotate(20deg) translateX(-35%);opacity:0;}
  14%{opacity:.95;}
  52%{opacity:.95;}
  100%{transform:rotate(20deg) translateX(345%);opacity:0;}
}
@keyframes blueEarthStatsWideSweep{
  0%{transform:rotate(19deg) translateX(-35%);opacity:0;}
  14%{opacity:.95;}
  56%{opacity:.95;}
  100%{transform:rotate(19deg) translateX(330%);opacity:0;}
}
@keyframes blueEarthSoftGlowPulse{
  0%,100%{opacity:.50;transform:scale(.985);}
  50%{opacity:.82;transform:scale(1.015);}
}

@media (max-width:1100px){
  .header .brand{min-width:330px!important;}
  .header .brand-logo{height:78px!important;max-width:350px!important;}
  .header .nav{height:104px!important;}
}
@media (max-width:760px){
  .header .brand{min-width:0!important;}
  .header .brand-logo{height:62px!important;max-width:245px!important;}
  .header .nav{height:86px!important;}
  .hero-card::before,.image-stack::after,.stats-strip::after{animation-duration:5.4s!important;}
}

/* --- FINAL USER FIX: clean service icons, readable why cards, full-width hero banner with controlled glow --- */
/* 1) Remove the small floating service icons that were appearing in the middle of cards */
.service-card .icon{
  display:none!important;
}
.service-card h3{
  margin:26px 28px 10px!important;
}
.service-card p{
  min-height:auto!important;
}
.service-card img{
  height:210px!important;
}

/* 2) Why choose cards restored to normal text flow */
.why .why-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:28px!important;
  align-items:stretch!important;
}
.why .feature{
  display:grid!important;
  grid-template-columns:52px 1fr!important;
  gap:14px 18px!important;
  padding:24px!important;
  min-height:210px!important;
}
.why .feature b{
  grid-column:1!important;
  grid-row:1!important;
}
.why .feature h3{
  grid-column:2!important;
  grid-row:1!important;
  align-self:center!important;
  line-height:1.2!important;
}
.why .feature p{
  grid-column:1 / -1!important;
  grid-row:2!important;
  width:auto!important;
  max-width:none!important;
  line-height:1.75!important;
  font-size:16px!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* 3) Hero image is now a proper full banner again, with text over it */
.hero{
  padding:92px 0 86px!important;
  background:radial-gradient(circle at 78% 22%,rgba(32,168,220,.20),transparent 32%),linear-gradient(135deg,#06172e 0%,#071f3b 58%,#092d52 100%)!important;
}
.hero .container.hero-grid{
  width:min(1320px,calc(100% - 44px))!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:stretch!important;
  gap:0!important;
  position:relative!important;
}
.hero-copy{
  grid-area:1 / 1!important;
  position:relative!important;
  z-index:8!important;
  max-width:690px!important;
  padding:86px 0 86px 54px!important;
  align-self:center!important;
}
.hero-copy h1,
.hero-copy p,
.hero-copy .eyebrow{
  color:#fff!important;
  text-shadow:0 12px 34px rgba(0,0,0,.26)!important;
}
.hero-copy p{color:rgba(255,255,255,.88)!important;}
.hero-card{
  grid-area:1 / 1!important;
  width:100%!important;
  min-height:620px!important;
  height:620px!important;
  border-radius:34px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  box-shadow:0 30px 90px rgba(0,0,0,.34)!important;
  background:#06172e!important;
}
.hero-card img{
  width:100%!important;
  height:620px!important;
  object-fit:cover!important;
  object-position:center!important;
  position:relative!important;
  z-index:1!important;
}
.hero-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  background:linear-gradient(90deg,rgba(6,23,46,.95) 0%,rgba(6,23,46,.84) 36%,rgba(6,23,46,.45) 57%,rgba(6,23,46,.13) 100%)!important;
  opacity:1!important;
  transform:none!important;
  animation:none!important;
  pointer-events:none!important;
}
.hero-card-content{
  left:auto!important;
  right:34px!important;
  bottom:34px!important;
  max-width:410px!important;
  z-index:6!important;
}
.slider-dots{z-index:7!important;}

/* Controlled glow line: inside banners only, not huge across page */
.hero-card::before{
  content:""!important;
  position:absolute!important;
  top:-34%!important;
  left:-42%!important;
  width:24%!important;
  height:170%!important;
  border-radius:0!important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.10) 26%,rgba(130,220,255,.52) 47%,rgba(255,255,255,.62) 52%,rgba(130,220,255,.38) 59%,transparent 100%)!important;
  filter:blur(.45px)!important;
  transform:rotate(18deg) translateX(0)!important;
  opacity:0!important;
  z-index:5!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
  animation:blueEarthControlledHeroSweep 4.6s cubic-bezier(.2,.8,.2,1) infinite!important;
}
.hero-card:hover::before{
  animation-duration:1.65s!important;
}
@keyframes blueEarthControlledHeroSweep{
  0%{transform:rotate(18deg) translateX(-40%);opacity:0;}
  18%{opacity:.88;}
  48%{opacity:.88;}
  100%{transform:rotate(18deg) translateX(610%);opacity:0;}
}

/* Stats glow restored but kept inside stats panel */
.stats-strip{
  position:relative!important;
  overflow:hidden!important;
  margin-top:-76px!important;
}
.stats-strip::after{
  content:""!important;
  position:absolute!important;
  top:-26%!important;
  left:-48%!important;
  width:34%!important;
  height:155%!important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.10) 25%,rgba(130,220,255,.45) 47%,rgba(255,255,255,.52) 52%,rgba(130,220,255,.28) 62%,transparent 100%)!important;
  transform:rotate(18deg)!important;
  opacity:0!important;
  animation:blueEarthControlledStatsSweep 4.8s cubic-bezier(.2,.8,.2,1) infinite!important;
  pointer-events:none!important;
  z-index:1!important;
}
.stats{position:relative!important;z-index:2!important;}
@keyframes blueEarthControlledStatsSweep{
  0%{transform:rotate(18deg) translateX(-30%);opacity:0;}
  18%{opacity:.82;}
  52%{opacity:.82;}
  100%{transform:rotate(18deg) translateX(515%);opacity:0;}
}

/* About image glow: visible, pretty, but not oversized */
.image-stack{
  overflow:visible!important;
}
.image-stack::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:-24%!important;
  left:-42%!important;
  width:30%!important;
  height:165%!important;
  border-radius:0!important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.12) 25%,rgba(130,220,255,.50) 48%,rgba(255,255,255,.58) 53%,rgba(130,220,255,.32) 61%,transparent 100%)!important;
  filter:blur(.45px)!important;
  transform:rotate(18deg)!important;
  opacity:0!important;
  z-index:5!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
  animation:blueEarthControlledImageSweep 4.8s cubic-bezier(.2,.8,.2,1) infinite!important;
}
.image-stack:hover::after{animation-duration:1.7s!important;}
@keyframes blueEarthControlledImageSweep{
  0%{transform:rotate(18deg) translateX(-30%);opacity:0;}
  18%{opacity:.86;}
  50%{opacity:.86;}
  100%{transform:rotate(18deg) translateX(620%);opacity:0;}
}

@media (max-width:1000px){
  .hero-copy{padding:72px 32px!important;}
  .hero-card,.hero-card img{height:590px!important;min-height:590px!important;}
  .why .why-grid{grid-template-columns:1fr!important;}
}
@media (max-width:640px){
  .hero .container.hero-grid{width:min(100% - 28px,1320px)!important;}
  .hero-copy{padding:58px 22px!important;}
  .hero-card,.hero-card img{height:650px!important;min-height:650px!important;}
  .hero-card-content{display:none!important;}
  .stats-strip{margin-top:-48px!important;}
}


/* --- FINAL PATCH: about image glow must stay only inside image + remove small Industrial/Civil overlay --- */
.image-stack.image-glow-only{
  position:relative!important;
  width:100%!important;
  height:520px!important;
  min-height:520px!important;
  border-radius:32px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  box-shadow:0 30px 90px rgba(0,0,0,.28)!important;
  background:#06172e!important;
}
.image-stack.image-glow-only .main-img{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:32px!important;
  box-shadow:none!important;
  transition:transform .7s cubic-bezier(.2,.8,.2,1), filter .7s cubic-bezier(.2,.8,.2,1)!important;
}
.image-stack.image-glow-only:hover .main-img{
  transform:scale(1.035)!important;
  filter:saturate(1.12) contrast(1.05) brightness(1.04)!important;
}
.image-stack.image-glow-only .mini-img,
.image-stack.image-glow-only .badge-card,
.image-stack .mini-img,
.image-stack .badge-card{
  display:none!important;
}
.image-stack.image-glow-only::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  background:radial-gradient(circle at 38% 42%,rgba(130,220,255,.17),transparent 38%)!important;
  opacity:0!important;
  transition:opacity .35s ease!important;
  pointer-events:none!important;
  border-radius:inherit!important;
}
.image-stack.image-glow-only:hover::before{opacity:1!important;}
.image-stack.image-glow-only::after{
  content:""!important;
  position:absolute!important;
  top:-32%!important;
  left:-48%!important;
  width:30%!important;
  height:168%!important;
  z-index:3!important;
  border-radius:0!important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.10) 25%,rgba(130,220,255,.48) 47%,rgba(255,255,255,.64) 52%,rgba(130,220,255,.33) 60%,transparent 100%)!important;
  filter:blur(.4px)!important;
  transform:rotate(18deg) translateX(-25%)!important;
  opacity:0!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
  animation:aboutImageOnlySweep 4.7s cubic-bezier(.2,.8,.2,1) infinite!important;
}
.image-stack.image-glow-only:hover::after{animation-duration:1.55s!important;}
@keyframes aboutImageOnlySweep{
  0%{transform:rotate(18deg) translateX(-25%);opacity:0;}
  16%{opacity:.86;}
  50%{opacity:.86;}
  100%{transform:rotate(18deg) translateX(560%);opacity:0;}
}
@media (max-width:1000px){
  .image-stack.image-glow-only{height:430px!important;min-height:430px!important;}
}
@media (max-width:640px){
  .image-stack.image-glow-only{height:360px!important;min-height:360px!important;}
}

/* --- LATEST FIX: service icon restored in correct position, not inside text --- */
.service-card{
  position:relative!important;
  overflow:hidden!important;
}
.service-card .icon{
  display:flex!important;
  position:absolute!important;
  top:172px!important;
  left:24px!important;
  width:54px!important;
  height:54px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#1376b8,#25b4e8)!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:1!important;
  z-index:8!important;
  box-shadow:0 16px 34px rgba(0,0,0,.22),0 0 0 6px rgba(255,255,255,.08)!important;
  pointer-events:none!important;
}
.service-card h3{
  margin:42px 28px 10px!important;
}
.service-card:hover .icon{
  animation:serviceIconPop .75s var(--ease) both!important;
}
@keyframes serviceIconPop{
  0%{transform:scale(1) rotate(0deg)}
  38%{transform:scale(1.12) rotate(-5deg)}
  100%{transform:scale(1) rotate(0deg)}
}

/* Admin helper for inline form buttons in tables */
.actions form{margin:0;display:inline-flex}
code{background:#eef7ff;color:#0b2b52;border-radius:8px;padding:4px 7px;font-weight:800}

/* --- FINAL ADMIN CONTROL + PREMIUM HOME ANIMATION UPDATE --- */
body[data-page="home"]{
  --mouse-x:50%;
  --mouse-y:12%;
}
body[data-page="home"]::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(circle at var(--mouse-x) var(--mouse-y), rgba(37,180,232,.13), transparent 23%),
    radial-gradient(circle at 14% 18%, rgba(18,118,184,.14), transparent 26%),
    radial-gradient(circle at 86% 10%, rgba(90,206,255,.08), transparent 26%);
  transition:background-position .25s linear;
}
.premium-home-hero{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
.premium-home-hero .container{position:relative;z-index:3;}
.home-aurora{
  position:absolute;
  inset:-16% -8% -20%;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 35%, rgba(37,180,232,.20), transparent 28%),
    radial-gradient(circle at 80% 22%, rgba(130,220,255,.14), transparent 24%),
    linear-gradient(120deg, transparent 0 28%, rgba(25,149,218,.08) 38%, transparent 58%);
  filter:blur(12px);
  animation:blueEarthAuroraMove 10s ease-in-out infinite alternate;
}
@keyframes blueEarthAuroraMove{
  0%{transform:translate3d(-2%,0,0) scale(1);opacity:.72;}
  50%{transform:translate3d(2%,-2%,0) scale(1.035);opacity:.95;}
  100%{transform:translate3d(-1%,2%,0) scale(1.02);opacity:.78;}
}
.home-sparks{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}
.home-sparks span{
  position:absolute;
  width:6px;
  height:6px;
  border-radius:999px;
  background:rgba(130,220,255,.85);
  box-shadow:0 0 18px rgba(130,220,255,.75);
  animation:blueEarthSparkFloat 7s ease-in-out infinite;
}
.home-sparks span:nth-child(1){left:10%;top:28%;animation-delay:0s;}
.home-sparks span:nth-child(2){left:22%;top:74%;animation-delay:1.2s;}
.home-sparks span:nth-child(3){left:52%;top:18%;animation-delay:2.1s;}
.home-sparks span:nth-child(4){left:78%;top:68%;animation-delay:3s;}
.home-sparks span:nth-child(5){left:90%;top:34%;animation-delay:4s;}
@keyframes blueEarthSparkFloat{
  0%,100%{transform:translateY(0) scale(.7);opacity:.22;}
  35%{transform:translateY(-18px) scale(1);opacity:.95;}
  70%{transform:translateY(14px) scale(.85);opacity:.46;}
}
.hero-copy.reveal.is-visible h1{
  animation:blueEarthTitleLift .8s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes blueEarthTitleLift{
  from{letter-spacing:-.07em;filter:blur(6px);transform:translateY(18px);opacity:.35;}
  to{letter-spacing:-.045em;filter:blur(0);transform:translateY(0);opacity:1;}
}
.service-card,.project-card,.feature,.process-card,.testimonial-card{
  transform-style:preserve-3d;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease), background .35s var(--ease)!important;
}
.service-card:hover,.project-card:hover,.feature:hover,.process-card:hover,.testimonial-card:hover{
  transform:translateY(-9px) scale(1.012)!important;
  border-color:rgba(130,220,255,.38)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.28),0 0 42px rgba(37,180,232,.12)!important;
}
.image-glow-frame{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.image-glow-frame::after{
  content:"";
  position:absolute;
  top:-35%;
  left:-55%;
  width:28%;
  height:175%;
  z-index:4;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 22%,rgba(130,220,255,.42) 45%,rgba(255,255,255,.62) 52%,rgba(130,220,255,.30) 60%,transparent 100%);
  transform:rotate(18deg) translateX(-40%);
  opacity:0;
  mix-blend-mode:screen;
  animation:blueEarthFrameSweep 4.4s cubic-bezier(.2,.8,.2,1) infinite;
}
.image-glow-frame:hover::after{animation-duration:1.55s;}
@keyframes blueEarthFrameSweep{
  0%{transform:rotate(18deg) translateX(-35%);opacity:0;}
  18%{opacity:.78;}
  48%{opacity:.78;}
  100%{transform:rotate(18deg) translateX(540%);opacity:0;}
}
.light-lead{color:rgba(255,255,255,.76)!important;max-width:720px;}
.empty-state{
  border:1px solid rgba(130,220,255,.18);
  background:rgba(255,255,255,.07);
  border-radius:28px;
  padding:36px;
  box-shadow:var(--shadow);
}
.empty-state h2{font-family:var(--font-heading);color:#fff;font-size:clamp(28px,4vw,46px);margin-bottom:10px;}
.empty-state p{color:rgba(255,255,255,.75);}
.admin-page-note{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
  margin:16px 0;
}
.admin-page-note div{
  padding:14px;
  background:#f5fbff;
  border:1px solid #dbeefe;
  border-radius:16px;
  color:#173b61;
  font-weight:700;
}
@media (prefers-reduced-motion: reduce){
  .home-aurora,.home-sparks span,.image-glow-frame::after,.hero-card::before,.stats-strip::after,.image-stack.image-glow-only::after{animation:none!important;}
}

/* --- PAGE WISE ADMIN IMAGE + SERVICE CARD LOCATION FIX --- */
.page-hero.has-bg{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    linear-gradient(90deg,rgba(5,22,43,.92),rgba(5,22,43,.72)),
    var(--page-hero-bg) center/cover no-repeat!important;
}
.page-hero.has-bg::after{
  content:"";
  position:absolute;
  top:-55%;
  left:-45%;
  width:28%;
  height:210%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),rgba(130,220,255,.40),rgba(255,255,255,.18),transparent);
  transform:rotate(18deg);
  animation:pageHeroSweep 5.5s cubic-bezier(.2,.8,.2,1) infinite;
  pointer-events:none;
  z-index:0;
  mix-blend-mode:screen;
}
.page-hero.has-bg .container{position:relative;z-index:2}.page-managed-image{border-radius:28px;overflow:hidden;margin:0 0 34px;border:1px solid rgba(130,220,255,.16);box-shadow:0 22px 60px rgba(0,0,0,.25)}.page-managed-image img{width:100%;height:330px;object-fit:cover}
@keyframes pageHeroSweep{0%{transform:rotate(18deg) translateX(-20%);opacity:0}18%,48%{opacity:.82}100%{transform:rotate(18deg) translateX(520%);opacity:0}}

.home-service-grid.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;align-items:stretch!important}.service-card{cursor:default!important;min-height:390px!important}.service-card img{height:185px!important}.service-card .icon{top:14px!important;right:14px!important;left:auto!important;width:46px!important;height:46px!important;border-radius:15px!important;font-size:22px!important;box-shadow:0 10px 24px rgba(0,0,0,.25),0 0 0 5px rgba(255,255,255,.12)!important}.service-card h3{margin:24px 22px 10px!important;font-size:20px!important;line-height:1.18!important}.service-card p{margin:0 22px 18px!important;line-height:1.55!important}.service-card a{margin-left:22px!important}.service-card::after{z-index:2!important}.service-card .icon,.service-card h3,.service-card p,.service-card a{position:relative;z-index:5!important}
@media (max-width:1200px){.home-service-grid.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (max-width:850px){.home-service-grid.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:560px){.home-service-grid.service-grid{grid-template-columns:1fr!important}.page-managed-image img{height:240px}}

/* --- EXTRA PREMIUM SECTION ANIMATIONS (keeps existing animations) --- */
body[data-page="home"] .section,
body[data-page="home"] .stats-strip,
body[data-page="home"] .cta-section{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
body[data-page="home"] .section > .container,
body[data-page="home"] .stats-strip > *,
body[data-page="home"] .cta-section > .container{
  position:relative!important;
  z-index:2!important;
}
body[data-page="home"] .section::before{
  content:"";
  position:absolute;
  inset:-22% -12%;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 22%, rgba(71,184,255,.12), transparent 26%),
    radial-gradient(circle at 88% 74%, rgba(45,154,225,.10), transparent 30%),
    linear-gradient(135deg, transparent 0 45%, rgba(130,220,255,.045) 50%, transparent 58%);
  opacity:.62;
  transform:translate3d(0,0,0);
  animation:beSectionAurora 12s ease-in-out infinite alternate;
}
body[data-page="home"] .section:nth-of-type(even)::before{animation-delay:-3s;opacity:.48;}
@keyframes beSectionAurora{
  0%{transform:translate3d(-2%,1%,0) scale(1);filter:blur(0)}
  50%{transform:translate3d(2%,-2%,0) scale(1.03);filter:blur(3px)}
  100%{transform:translate3d(-1%,2%,0) scale(1.015);filter:blur(0)}
}

/* Animated blueprint/grid feel in service area */
body[data-page="home"] .services::after,
.services .service-grid::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.20;
  background-image:
    linear-gradient(rgba(130,220,255,.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(130,220,255,.16) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(180deg,transparent,black 16%,black 84%,transparent);
  animation:beBlueprintDrift 18s linear infinite;
}
.services .service-grid{position:relative!important;z-index:2!important;}
.services .service-grid::before{inset:-22px;opacity:.12;border-radius:32px;}
@keyframes beBlueprintDrift{from{background-position:0 0,0 0}to{background-position:84px 42px,84px 42px}}

/* Section heading underline glow */
.section-head .eyebrow,
.section .eyebrow{
  position:relative!important;
}
.section-head .eyebrow::after,
.section .eyebrow::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-7px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,transparent,#79d6ff,transparent);
  transform:scaleX(0);
  transform-origin:left;
  opacity:.9;
}
.section.is-inview .section-head .eyebrow::after,
.section.is-inview .eyebrow::after{
  animation:beUnderlineSweep 1.15s cubic-bezier(.2,.8,.2,1) .12s both;
}
@keyframes beUnderlineSweep{0%{transform:scaleX(0);opacity:0}45%{opacity:1}100%{transform:scaleX(1);opacity:.72}}

/* Attractive card edge light and icon float */
.service-card,
.project-card,
.process-card,
.feature,
.faq-item,
.testimonial-card,
.cta-band{
  position:relative!important;
  overflow:hidden!important;
}
.service-card::before,
.process-card::before,
.feature::before,
.faq-item::before,
.testimonial-card::before,
.cta-band::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(120deg, transparent 0 28%, rgba(130,220,255,.18) 42%, rgba(255,255,255,.18) 50%, rgba(130,220,255,.10) 58%, transparent 72%);
  transform:translateX(-125%);
  opacity:0;
}
.service-card:hover::before,
.process-card:hover::before,
.feature:hover::before,
.faq-item:hover::before,
.testimonial-card:hover::before,
.cta-band:hover::before{
  animation:beCardLightPass 1.15s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes beCardLightPass{0%{transform:translateX(-125%);opacity:0}18%,65%{opacity:.95}100%{transform:translateX(125%);opacity:0}}
.service-card > *,
.process-card > *,
.feature > *,
.faq-item > *,
.testimonial-card > *,
.cta-band > *{position:relative;z-index:2;}
.service-card .icon,
.check-list li::before,
.process-card span,
.feature b,
.faq-question span{
  animation:beIconBreath 3.4s ease-in-out infinite;
}
@keyframes beIconBreath{0%,100%{filter:drop-shadow(0 0 0 rgba(130,220,255,0));transform:translateY(0) scale(1)}50%{filter:drop-shadow(0 0 12px rgba(130,220,255,.42));transform:translateY(-2px) scale(1.04)}}

/* Projects premium zoom + glow label */
.project-card::before{
  content:"";
  position:absolute;
  top:-36%;
  left:-58%;
  width:34%;
  height:176%;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),rgba(130,220,255,.48),rgba(255,255,255,.20),transparent);
  transform:rotate(17deg) translateX(-60%);
  opacity:0;
}
.project-card:hover::before{animation:beProjectSweep 1.35s cubic-bezier(.2,.8,.2,1) both;}
@keyframes beProjectSweep{0%{transform:rotate(17deg) translateX(-60%);opacity:0}25%,62%{opacity:.9}100%{transform:rotate(17deg) translateX(520%);opacity:0}}
.project-card:hover span,
.project-info span{
  box-shadow:0 0 0 1px rgba(130,220,255,.22),0 0 24px rgba(130,220,255,.18);
}

/* Workflow/process connection animation */
.process-grid{
  position:relative!important;
}
.process-grid::before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:52px;
  height:2px;
  z-index:0;
  background:linear-gradient(90deg,transparent,rgba(130,220,255,.20),rgba(255,255,255,.28),rgba(130,220,255,.20),transparent);
  transform-origin:left;
  transform:scaleX(0);
}
.section.is-inview .process-grid::before{animation:beProcessLine 1.55s cubic-bezier(.2,.8,.2,1) .2s forwards;}
@keyframes beProcessLine{to{transform:scaleX(1)}}
.process-card{z-index:2;}
.process-card:hover span{animation:beStepPulse .8s cubic-bezier(.2,.8,.2,1) both!important;}
@keyframes beStepPulse{0%{transform:scale(1)}45%{transform:scale(1.16) rotate(-3deg)}100%{transform:scale(1)}}

/* FAQ smooth open animation */
.faq-answer{overflow:hidden!important;}
.faq-item.open{
  border-color:rgba(130,220,255,.34)!important;
  box-shadow:0 22px 62px rgba(0,0,0,.18),0 0 34px rgba(37,180,232,.10)!important;
}
.faq-item.open .faq-answer{
  animation:beFaqDrop .35s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes beFaqDrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.faq-question span{transition:transform .3s var(--ease),background .3s var(--ease)!important;}
.faq-item.open .faq-question span{transform:rotate(180deg);background:rgba(130,220,255,.20)!important;}

/* CTA button heartbeat + soft background shine */
.cta-band::after{
  content:"";
  position:absolute;
  inset:auto -10% -65% -10%;
  height:120%;
  pointer-events:none;
  z-index:0;
  background:radial-gradient(circle at 50% 50%,rgba(37,180,232,.18),transparent 55%);
  animation:beCtaGlow 5.8s ease-in-out infinite;
}
@keyframes beCtaGlow{0%,100%{transform:scale(.96);opacity:.45}50%{transform:scale(1.08);opacity:.82}}
.cta-band .btn-primary,
.hero-cta .btn-primary,
.nav-actions .btn-primary{
  animation:beButtonHeartbeat 4s ease-in-out infinite;
}
@keyframes beButtonHeartbeat{0%,100%{box-shadow:0 16px 35px rgba(15,110,168,.28)}50%{box-shadow:0 18px 45px rgba(37,180,232,.42),0 0 0 8px rgba(37,180,232,.08)}}

/* Staggered entrance timing for grids */
.reveal[data-stagger]{transition-delay:calc(var(--stagger-index,0) * 90ms)!important;}
.section.is-inview .service-card,
.section.is-inview .project-card,
.section.is-inview .process-card,
.section.is-inview .feature,
.section.is-inview .faq-item,
.section.is-inview .testimonial-card{
  animation:beSoftSettle .85s cubic-bezier(.2,.8,.2,1) both;
  animation-delay:calc(var(--stagger-index,0) * 70ms);
}
@keyframes beSoftSettle{0%{opacity:.2;transform:translateY(24px) scale(.985)}100%{opacity:1;transform:translateY(0) scale(1)}}

/* Decorative floating dots on dark sections */
.why::after,
.testimonials::after,
.contact-section::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:6%;
  top:12%;
  pointer-events:none;
  z-index:0;
  opacity:.18;
  background:
    radial-gradient(circle,#8bd8ff 0 3px,transparent 4px) 0 0/36px 36px;
  animation:beDotsFloat 9s ease-in-out infinite alternate;
}
@keyframes beDotsFloat{from{transform:translateY(0) rotate(0deg)}to{transform:translateY(18px) rotate(6deg)}}

@media (max-width:850px){
  .process-grid::before{display:none!important;}
  body[data-page="home"] .section::before{opacity:.35;}
}
@media (prefers-reduced-motion:reduce){
  body[data-page="home"] .section::before,
  .services .service-grid::before,
  body[data-page="home"] .services::after,
  .service-card::before,.project-card::before,.process-card::before,.feature::before,.faq-item::before,.testimonial-card::before,.cta-band::before,.cta-band::after,
  .service-card .icon,.check-list li::before,.process-card span,.feature b,.faq-question span,
  .why::after,.testimonials::after,.contact-section::after,
  .cta-band .btn-primary,.hero-cta .btn-primary,.nav-actions .btn-primary{animation:none!important;}
}

/* --- Added WordPress-style portions: numbers, featured projects and standout section --- */
.home-numbers-showcase{
  background:#132128!important;
  color:#fff!important;
  position:relative;
  overflow:hidden;
  padding:96px 0!important;
}
.home-numbers-showcase::before{
  content:"";
  position:absolute;
  inset:-20% -10%;
  background:radial-gradient(circle at 75% 35%,rgba(34,139,211,.16),transparent 35%),linear-gradient(120deg,transparent,rgba(255,255,255,.03),transparent);
  animation:beNumbersBg 12s ease-in-out infinite alternate;
  pointer-events:none;
}
@keyframes beNumbersBg{from{transform:translateX(-2%) scale(1)}to{transform:translateX(2%) scale(1.03)}}
.numbers-showcase-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  align-items:center;
  gap:70px;
}
.numbers-showcase-copy .eyebrow{color:#8bd8ff!important;}
.numbers-showcase-copy .section-title{color:#fff!important;max-width:640px;}
.numbers-showcase-copy .lead{color:rgba(255,255,255,.88)!important;max-width:610px;}
.numbers-small-img{
  width:175px;
  height:175px;
  object-fit:cover;
  border-radius:15px;
  margin:0 0 72px 6px;
  box-shadow:0 22px 55px rgba(0,0,0,.24),0 0 0 1px rgba(255,255,255,.08);
  animation:beSmallFloat 5s ease-in-out infinite;
}
@keyframes beSmallFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.numbers-showcase-visual{
  position:relative;
  min-height:440px;
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.numbers-showcase-visual > img{
  width:100%;
  height:520px;
  object-fit:cover;
  opacity:.72;
  filter:saturate(.95) contrast(1.03);
}
.numbers-showcase-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(4,18,35,.08),rgba(4,18,35,.74));
  pointer-events:none;
}
.numbers-card-row{
  position:absolute;
  left:38px;
  right:38px;
  bottom:36px;
  z-index:4;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.numbers-card{
  min-height:235px;
  border-radius:18px;
  padding:34px 32px;
  color:#fff!important;
  box-shadow:0 16px 40px rgba(0,0,0,.2);
  position:relative;
  overflow:hidden;
}
.numbers-card::before{
  content:"";
  position:absolute;
  inset:-40%;
  background:linear-gradient(120deg,transparent 25%,rgba(255,255,255,.28) 48%,transparent 70%);
  transform:translateX(-70%) rotate(20deg);
  opacity:0;
}
.numbers-card:hover::before{animation:beCardLightPass 1.15s cubic-bezier(.2,.8,.2,1) both;opacity:1;}
.numbers-card.green{background:#2d801c;}
.numbers-card.blue{background:#123d63;}
.numbers-card-icon{display:block;font-size:38px;line-height:1;margin-bottom:36px;color:#fff!important;}
.numbers-card h3{font-size:26px!important;margin:0 0 16px;color:#fff!important;}
.numbers-card p{margin:0!important;color:#fff!important;line-height:1.7;}
.featured-achievements{
  background:#fff!important;
  color:#071b35!important;
  border-radius:0 0 24px 24px;
}
.featured-achievements *{color:#071b35!important;}
.featured-head{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:70px;
  align-items:start;
  margin-bottom:70px;
}
.featured-head .eyebrow{color:#2d801c!important;}
.featured-head .eyebrow::before{background:#2d801c!important;}
.featured-head .section-title{font-size:clamp(36px,4.7vw,58px);color:#071b35!important;}
.featured-head p{font-size:18px;line-height:1.8;margin:0;color:#334d64!important;}
.featured-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.featured-project-card{
  position:relative;
  min-height:410px;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 22px 62px rgba(6,26,52,.12);
  background:#071b35;
}
.featured-project-card img{width:100%;height:100%;min-height:410px;object-fit:cover;transition:.55s cubic-bezier(.2,.8,.2,1);}
.featured-project-card:hover img{transform:scale(1.06);filter:saturate(1.08) contrast(1.05);}
.featured-project-card::before{
  content:"";
  position:absolute;
  top:-38%;left:-58%;width:42%;height:180%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),rgba(126,218,255,.45),transparent);
  transform:rotate(18deg) translateX(-80%);
  z-index:3;opacity:0;pointer-events:none;
}
.featured-project-card:hover::before{animation:beProjectSweep 1.25s cubic-bezier(.2,.8,.2,1) both;}
.featured-project-info{
  position:absolute;
  left:26px;right:26px;bottom:24px;
  border-radius:8px;
  background:#143f64;
  padding:24px 110px 24px 24px;
  z-index:4;
  box-shadow:0 18px 42px rgba(0,0,0,.22);
}
.featured-project-card:not(.is-featured) .featured-project-info{display:none;}
.featured-project-info h3{color:#fff!important;margin:0 0 10px!important;font-size:27px!important;}
.featured-project-info p{color:#fff!important;margin:0!important;line-height:1.75;}
.featured-project-info a{
  position:absolute;right:28px;top:50%;transform:translateY(-50%);
  width:54px;height:54px;border-radius:10px;background:#2f851f;color:#fff!important;
  display:grid;place-items:center;font-size:30px;font-weight:700;
  transition:.25s ease;
}
.featured-project-info a:hover{transform:translateY(-50%) translateX(4px);box-shadow:0 0 24px rgba(61,194,53,.35);}
.standout-construction{
  background:#eef4f6!important;
  padding:18px 0 74px!important;
}
.standout-panel{
  position:relative;
  overflow:hidden;
  border-radius:16px;
  background:#14252d!important;
  min-height:640px;
  padding:98px 86px 120px;
  box-shadow:0 22px 70px rgba(6,26,52,.12);
}
.standout-panel::before,
.standout-panel::after{
  content:"";position:absolute;right:-8%;top:-16%;width:180px;height:116%;
  background:rgba(255,255,255,.10);transform:skewX(-13deg);pointer-events:none;
}
.standout-panel::after{right:4%;top:38%;height:82%;opacity:.55;}
.standout-head{text-align:center;position:relative;z-index:2;max-width:720px;margin:0 auto 84px;}
.standout-head .eyebrow{color:#3e9e29!important;justify-content:center;}
.standout-head .eyebrow::before{background:#3e9e29!important;}
.standout-head h2{font-family:Poppins,Inter,sans-serif;color:#fff!important;font-size:clamp(34px,4.4vw,52px);line-height:1.15;margin:0 0 24px;}
.standout-head p{color:#fff!important;max-width:570px;margin:auto;line-height:1.75;}
.standout-feature-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:52px;margin-bottom:88px;}
.standout-feature span{display:block;font-size:42px;line-height:1;margin-bottom:30px;color:#36972b!important;filter:drop-shadow(0 0 12px rgba(51,145,42,.22));}
.standout-feature h3{color:#fff!important;margin:0 0 12px!important;font-size:20px!important;}
.standout-feature p{color:#fff!important;margin:0!important;line-height:1.65;}
.skill-card{
  position:absolute;
  z-index:3;
  left:86px;
  bottom:-58px;
  width:305px;
  background:#19456d;
  border-radius:10px;
  padding:24px 22px 20px;
  box-shadow:0 20px 48px rgba(0,0,0,.25);
  overflow:hidden;
}
.skill-card::before{content:"";position:absolute;inset:-20% 18% -20% 42%;background:rgba(255,255,255,.10);transform:skewX(-14deg);}
.skill-card h3{position:relative;color:#fff!important;margin:0 0 24px!important;font-size:24px!important;}
.skill-row{position:relative;margin-top:18px;}
.skill-row b{display:block;color:#fff!important;margin-bottom:10px;}
.skill-dots{height:14px;border-radius:99px;background:repeating-linear-gradient(90deg,#2f851f 0 14px,transparent 14px 20px);position:relative;overflow:hidden;}
.skill-dots::after{content:"";position:absolute;left:var(--skill);top:0;bottom:0;right:0;background:repeating-linear-gradient(90deg,#f1f6fa 0 14px,transparent 14px 20px);}
.skill-dots i{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:beSkillSweep 2.8s ease-in-out infinite;z-index:2;}
@keyframes beSkillSweep{0%{transform:translateX(-120%)}55%,100%{transform:translateX(120%)}}
@media(max-width:980px){.numbers-showcase-grid,.featured-head,.featured-project-grid{grid-template-columns:1fr}.numbers-card-row{position:relative;left:auto;right:auto;bottom:auto;margin-top:-120px;padding:0 22px}.numbers-showcase-visual{min-height:auto}.standout-feature-grid{grid-template-columns:repeat(2,1fr)}.skill-card{position:relative;left:auto;bottom:auto;margin-top:35px}.standout-panel{padding:70px 30px}}
@media(max-width:640px){.numbers-card-row{grid-template-columns:1fr}.standout-feature-grid{grid-template-columns:1fr}.featured-project-info{padding:20px}.featured-project-info a{position:static;transform:none;margin-top:18px}.numbers-small-img{margin-bottom:35px}.numbers-showcase-visual > img{height:360px}.featured-project-card,.featured-project-card img{min-height:320px}}

/* --- FINAL UPDATE: premium animations for added portions + animated phone icon --- */
.floating-actions .floating-call{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  width:58px!important;
  height:58px!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#071b35,#123d63)!important;
  color:#fff!important;
  box-shadow:0 18px 42px rgba(0,0,0,.32),0 0 0 1px rgba(139,216,255,.14)!important;
  animation:phoneFloatSoft 3.15s ease-in-out infinite!important;
}
.floating-actions .floating-call::before{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(139,216,255,.36),rgba(32,168,220,.09) 58%,transparent 72%);
  z-index:-1;
  animation:phonePulseRing 2.35s ease-out infinite;
}
.floating-actions .floating-call::after{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:999px;
  border:1px solid rgba(139,216,255,.48);
  z-index:-1;
  animation:phoneRippleRing 2.35s ease-out infinite;
}
.floating-actions .floating-call .call-icon{
  width:24px!important;
  height:24px!important;
  filter:drop-shadow(0 8px 16px rgba(139,216,255,.35));
  transform-origin:center;
}
.floating-actions .floating-call:hover{
  transform:translateY(-5px) scale(1.08)!important;
  box-shadow:0 22px 52px rgba(0,0,0,.38),0 0 34px rgba(139,216,255,.24)!important;
}
.floating-actions .floating-call:hover .call-icon{animation:phoneWiggle .62s ease-in-out both;}
@keyframes phonePulseRing{0%{transform:scale(.74);opacity:.66}72%{transform:scale(1.42);opacity:0}100%{transform:scale(1.42);opacity:0}}
@keyframes phoneRippleRing{0%{transform:scale(.85);opacity:.75}100%{transform:scale(1.7);opacity:0}}
@keyframes phoneFloatSoft{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes phoneWiggle{0%,100%{transform:rotate(0) scale(1)}20%{transform:rotate(-12deg) scale(1.08)}45%{transform:rotate(10deg) scale(1.1)}70%{transform:rotate(-5deg) scale(1.04)}}

/* Numbers portion: premium floating, glow border and image sweep */
.home-numbers-showcase{isolation:isolate;}
.home-numbers-showcase::after{
  content:"";
  position:absolute;
  width:430px;
  height:430px;
  left:5%;
  bottom:-170px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(139,216,255,.20),transparent 68%);
  filter:blur(18px);
  opacity:.75;
  pointer-events:none;
  animation:bePortionOrb 9s ease-in-out infinite alternate;
}
.numbers-showcase-copy{position:relative;}
.numbers-showcase-copy::after{
  content:"";
  position:absolute;
  left:-26px;
  top:34%;
  width:3px;
  height:132px;
  border-radius:999px;
  background:linear-gradient(180deg,transparent,#8bd8ff,transparent);
  box-shadow:0 0 22px rgba(139,216,255,.48);
  animation:beVerticalGlow 3.8s ease-in-out infinite;
}
.numbers-small-img{
  position:relative;
  transform-origin:center;
  animation:beSmallFloat 5s ease-in-out infinite, beSmallGlow 3.6s ease-in-out infinite!important;
}
.numbers-showcase-visual{
  transform-style:preserve-3d;
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s cubic-bezier(.2,.8,.2,1);
}
.numbers-showcase-visual:hover{transform:translateY(-7px);box-shadow:0 34px 85px rgba(0,0,0,.34),0 0 34px rgba(139,216,255,.18)!important;}
.numbers-showcase-visual::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 0%,transparent 36%,rgba(255,255,255,.12) 45%,rgba(139,216,255,.52) 50%,rgba(255,255,255,.15) 56%,transparent 68%,transparent 100%);
  transform:translateX(-135%) skewX(-16deg);
  opacity:.85;
  animation:beImageContainedSweep 5.2s cubic-bezier(.2,.8,.2,1) infinite;
}
.numbers-card{transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s cubic-bezier(.2,.8,.2,1),filter .38s;}
.numbers-card:hover{transform:translateY(-9px) scale(1.02);box-shadow:0 25px 55px rgba(0,0,0,.28)!important;filter:saturate(1.08);}
.numbers-card-icon{display:inline-block!important;animation:beBadgeBreath 3.2s ease-in-out infinite;}
@keyframes bePortionOrb{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(60px,-38px,0) scale(1.12)}}
@keyframes beVerticalGlow{0%,100%{opacity:.26;transform:translateY(0)}50%{opacity:1;transform:translateY(16px)}}
@keyframes beSmallGlow{0%,100%{box-shadow:0 22px 55px rgba(0,0,0,.24),0 0 0 1px rgba(255,255,255,.08)}50%{box-shadow:0 30px 65px rgba(0,0,0,.30),0 0 35px rgba(139,216,255,.22),0 0 0 1px rgba(139,216,255,.24)}}
@keyframes beImageContainedSweep{0%,62%{transform:translateX(-135%) skewX(-16deg);opacity:0}68%{opacity:.9}88%,100%{transform:translateX(135%) skewX(-16deg);opacity:0}}
@keyframes beBadgeBreath{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.08)}}

/* Featured projects portion: soft reveal, glow arrows and card sweep */
.featured-achievements{position:relative;overflow:hidden;}
.featured-achievements::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 18% 10%,rgba(32,168,220,.08),transparent 28%),radial-gradient(circle at 85% 80%,rgba(45,128,28,.08),transparent 28%);
  pointer-events:none;
  animation:beFeaturedAura 11s ease-in-out infinite alternate;
}
.featured-achievements .container{position:relative;z-index:2;}
.featured-head .eyebrow::after{
  content:"";
  display:inline-block;
  width:0;
  height:2px;
  margin-left:10px;
  vertical-align:middle;
  background:linear-gradient(90deg,#2d801c,#20a8dc);
  box-shadow:0 0 16px rgba(32,168,220,.32);
}
.featured-achievements.is-inview .featured-head .eyebrow::after{animation:beLineGrow 1.25s cubic-bezier(.2,.8,.2,1) forwards;}
.featured-project-card{transition:transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s cubic-bezier(.2,.8,.2,1);}
.featured-project-card:hover{transform:translateY(-10px);box-shadow:0 32px 75px rgba(6,26,52,.20)!important;}
.featured-project-info a{animation:beArrowPulse 3s ease-in-out infinite;}
@keyframes beFeaturedAura{from{transform:translateX(-1.5%) scale(1)}to{transform:translateX(1.5%) scale(1.02)}}
@keyframes beLineGrow{from{width:0}to{width:70px}}
@keyframes beArrowPulse{0%,100%{box-shadow:0 0 0 rgba(61,194,53,0);transform:translateY(-50%) scale(1)}50%{box-shadow:0 0 26px rgba(61,194,53,.35);transform:translateY(-50%) scale(1.06)}}

/* Standout / Why Choose Us portion: animated icons and premium skill card */
.standout-construction{position:relative;overflow:hidden;}
.standout-construction::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,transparent 0%,transparent 42%,rgba(139,216,255,.08) 47%,transparent 54%,transparent 100%);
  transform:translateX(-105%);
  animation:beStandoutSweep 7.5s cubic-bezier(.2,.8,.2,1) infinite;
  pointer-events:none;
}
.standout-feature{position:relative;transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .35s;}
.standout-feature:hover{transform:translateY(-8px);filter:drop-shadow(0 18px 24px rgba(0,0,0,.18));}
.standout-feature span{display:inline-grid;place-items:center;min-width:54px;min-height:54px;border-radius:18px;animation:beGreenIconBreath 3.25s ease-in-out infinite;}
.standout-feature:nth-child(2) span{animation-delay:.25s}.standout-feature:nth-child(3) span{animation-delay:.5s}.standout-feature:nth-child(4) span{animation-delay:.75s}
.skill-card{animation:beSkillCardFloat 5.6s ease-in-out infinite!important;box-shadow:0 20px 55px rgba(0,0,0,.28),0 0 0 1px rgba(139,216,255,.12)!important;}
.skill-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg,rgba(139,216,255,.72),transparent 34%,rgba(45,128,28,.7));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.55;
  pointer-events:none;
}
@keyframes beStandoutSweep{0%,58%{transform:translateX(-105%);opacity:0}68%{opacity:.85}100%{transform:translateX(105%);opacity:0}}
@keyframes beGreenIconBreath{0%,100%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 rgba(45,128,28,0))}50%{transform:translateY(-5px) scale(1.08);filter:drop-shadow(0 0 14px rgba(45,128,28,.42))}}
@keyframes beSkillCardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}

@media (prefers-reduced-motion:reduce){
  .floating-actions .floating-call,.floating-actions .floating-call::before,.floating-actions .floating-call::after,
  .home-numbers-showcase::after,.numbers-small-img,.numbers-showcase-visual::before,.numbers-card-icon,
  .featured-achievements::before,.featured-project-info a,.standout-construction::before,.standout-feature span,.skill-card{animation:none!important;}
}


/* --- FIX: Why Choose Us skill card fully visible --- */
.standout-panel{
  min-height:760px!important;
  padding-bottom:220px!important;
  overflow:hidden!important;
}
.skill-card{
  bottom:34px!important;
  width:320px!important;
  padding:28px 24px 26px!important;
  max-height:none!important;
}
.skill-row{margin-top:20px!important;}
.skill-row b{font-size:15px!important;line-height:1.35!important;}
.skill-dots{height:15px!important;}
@media(max-width:980px){
  .standout-panel{min-height:auto!important;padding-bottom:70px!important;overflow:hidden!important;}
  .skill-card{bottom:auto!important;width:min(100%,340px)!important;margin-top:34px!important;}
}

/* Update: featured project overlay appears only on mouse hover, for both cards.
   The title, description and image remain fully editable from Admin > Projects. */
.featured-project-card{
  isolation:isolate;
  cursor:pointer;
}
.featured-project-card .featured-project-info,
.featured-project-card:not(.is-featured) .featured-project-info{
  display:block!important;
  opacity:0!important;
  transform:translateY(26px) scale(.96)!important;
  pointer-events:none;
  transition:opacity .42s cubic-bezier(.2,.8,.2,1),transform .42s cubic-bezier(.2,.8,.2,1),filter .42s ease;
  filter:blur(4px);
}
.featured-project-card:hover .featured-project-info,
.featured-project-card:focus-within .featured-project-info{
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
  pointer-events:auto;
  filter:blur(0);
}
.featured-project-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg,rgba(4,18,35,.03) 0%,rgba(4,18,35,.12) 42%,rgba(4,18,35,.72) 100%);
  opacity:0;
  transition:opacity .42s cubic-bezier(.2,.8,.2,1);
  pointer-events:none;
}
.featured-project-card:hover::after,
.featured-project-card:focus-within::after{
  opacity:1;
}
.featured-project-info{
  backdrop-filter:blur(10px);
  background:linear-gradient(135deg,rgba(20,63,100,.96),rgba(10,33,58,.94))!important;
  border:1px solid rgba(139,216,255,.25);
}
.featured-project-card:hover .featured-project-info a,
.featured-project-card:focus-within .featured-project-info a{
  animation:beArrowPulse 2.6s ease-in-out infinite;
}
@media (hover:none){
  .featured-project-card .featured-project-info,
  .featured-project-card:not(.is-featured) .featured-project-info{
    opacity:1!important;
    transform:translateY(0) scale(1)!important;
    pointer-events:auto;
    filter:blur(0);
  }
  .featured-project-card::after{opacity:1;}
}

/* ===== Admin controlled multiple image sliders ===== */
.media-slider{position:relative;overflow:hidden;border-radius:inherit;background:linear-gradient(135deg,#071c34,#0b3d62);isolation:isolate}
.media-slider .media-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:0;transform:scale(1.045) translateX(3%);transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform 1.15s cubic-bezier(.2,.8,.2,1),filter .85s ease;z-index:1;pointer-events:none}
.media-slider .media-slide.is-active{opacity:1;transform:scale(1) translateX(0);z-index:2}
.media-slider.has-multiple .media-slide.is-active{animation:beSoftKenBurns 6.2s ease-in-out both}
@keyframes beSoftKenBurns{0%{transform:scale(1.015) translateX(0)}50%{transform:scale(1.055) translateX(-1.4%)}100%{transform:scale(1.02) translateX(0)}}
.media-slider.single-media .media-slide{position:relative!important;opacity:1!important;transform:none!important;display:block!important}
.media-dots{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);z-index:6;display:flex;gap:8px;padding:7px 10px;border-radius:999px;background:rgba(4,18,35,.36);backdrop-filter:blur(10px)}
.media-dot{width:8px;height:8px;border-radius:999px;border:0;background:rgba(255,255,255,.52);cursor:pointer;transition:.25s ease;padding:0}.media-dot.is-active{width:26px;background:#fff;box-shadow:0 0 18px rgba(125,214,255,.5)}
.media-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:7;width:38px;height:38px;border:0;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.16);color:#fff;font-size:30px;line-height:1;cursor:pointer;backdrop-filter:blur(10px);opacity:0;transition:.25s ease;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.media-prev{left:14px}.media-next{right:14px}.media-slider.has-multiple:hover .media-arrow,.media-slider.has-multiple:focus-within .media-arrow{opacity:1}.media-arrow:hover{background:#fff;color:#062341;transform:translateY(-50%) scale(1.08)}
.hero-media-slider{position:absolute!important;inset:0!important;border-radius:34px!important;height:100%!important;min-height:545px!important}.hero-card>.media-slider{z-index:1}.hero-card .hero-media-slider .media-slide{height:100%!important}.hero-card img.media-slide{height:100%!important}
.image-stack .media-slider.main-img,.about-profile-slider,.about-media-slider{width:100%!important;height:520px!important;border-radius:32px!important;box-shadow:var(--shadow)}
.numbers-small-img.media-slider{width:190px!important;height:126px!important;border-radius:18px!important;margin-bottom:30px;box-shadow:0 18px 48px rgba(0,0,0,.2)}
.numbers-main-slider{width:100%!important;height:540px!important;border-radius:30px!important}.numbers-showcase-visual>.media-slider{min-height:540px}.numbers-showcase-visual>.media-slider .media-slide{height:100%!important}
.service-card .service-card-slider{height:185px!important;width:100%!important;border-radius:28px 28px 0 0!important}.service-card .media-dots{bottom:10px;transform:translateX(-50%) scale(.82)}.service-card .media-arrow{display:none!important}
.service-detail .service-detail-slider{width:100%!important;min-height:330px!important;height:100%!important;border-radius:24px!important}.service-detail .service-detail-slider .media-slide{min-height:330px!important}
.project-card .project-card-slider{width:100%!important;height:240px!important;border-radius:24px 24px 0 0!important}.project-card.image-glow-frame .project-card-slider{border-radius:24px 24px 0 0!important}.project-card .media-arrow{display:none!important}.project-card .media-dots{bottom:10px;transform:translateX(-50%) scale(.82)}
.featured-project-card .featured-project-slider{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:410px!important;border-radius:inherit!important}.featured-project-card .featured-project-slider .media-slide{height:100%!important;min-height:410px!important}.featured-project-card>.media-slider{z-index:1}.featured-project-card .featured-project-info{z-index:5!important}.featured-project-card::before,.featured-project-card::after{z-index:4!important}
.full-profile-img.media-slider,.brands-slider{width:100%!important;height:420px!important;border-radius:28px!important;box-shadow:var(--shadow)}.page-managed-slider{width:100%!important;height:330px!important;border-radius:28px!important}.contact-img.media-slider,.contact-slider{width:100%!important;height:230px!important;border-radius:22px!important;margin-top:22px}
.page-hero{position:relative;overflow:hidden}.page-hero-bg-slider{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border-radius:0!important;z-index:0!important}.page-hero-bg-slider .media-slide{height:100%!important}.page-hero.has-bg{background:#061a34!important}.page-hero.has-bg::after{z-index:1!important}.page-hero.has-bg .container{position:relative!important;z-index:3!important}
.media-slider::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.12) 44%,rgba(127,218,255,.28) 50%,rgba(255,255,255,.1) 56%,transparent 70%);opacity:0;transform:translateX(-105%) skewX(-10deg);z-index:5;pointer-events:none}.media-slider:hover::after{opacity:1;animation:beMediaShine 1.25s cubic-bezier(.2,.8,.2,1) both}@keyframes beMediaShine{to{transform:translateX(105%) skewX(-10deg)}}
@media(max-width:900px){.hero-media-slider{min-height:430px!important}.image-stack .media-slider.main-img,.about-profile-slider,.about-media-slider{height:380px!important}.numbers-main-slider,.numbers-showcase-visual>.media-slider{height:360px!important;min-height:360px!important}.full-profile-img.media-slider,.brands-slider{height:300px!important}.service-detail .service-detail-slider{min-height:260px!important}.page-managed-slider{height:260px!important}}
@media(max-width:600px){.media-arrow{display:none!important}.media-dots{bottom:10px;transform:translateX(-50%) scale(.84)}.hero-media-slider{min-height:360px!important}.project-card .project-card-slider{height:220px!important}.numbers-small-img.media-slider{width:150px!important;height:100px!important}}
@media(prefers-reduced-motion:reduce){.media-slider .media-slide,.media-slider.has-multiple .media-slide.is-active{animation:none!important;transition:none!important}.media-slider::after{display:none!important}}

/* ===== Proper premium footer ===== */
.site-footer-pro{position:relative;overflow:hidden;background:linear-gradient(135deg,#04172f 0%,#06264a 48%,#083c66 100%)!important;color:#fff!important;padding:82px 0 0!important;margin-top:0!important;border-top:1px solid rgba(125,214,255,.20)!important}
.footer-glow{position:absolute;inset:-25% -10% auto auto;width:520px;height:520px;background:radial-gradient(circle,rgba(37,175,235,.22),transparent 62%);filter:blur(2px);pointer-events:none}.footer-pro-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.35fr .75fr 1fr 1.25fr;gap:42px;align-items:start}.footer-logo-link{display:inline-flex}.footer-brand-col p{color:rgba(255,255,255,.78)!important;margin:18px 0 22px!important;max-width:420px}.site-footer-pro h3{margin:0 0 18px!important;color:#fff!important;font-size:19px!important;font-family:Poppins,Inter,sans-serif}.site-footer-pro ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}.site-footer-pro li a,.footer-info a{color:rgba(255,255,255,.82)!important;font-weight:800;transition:.25s ease}.site-footer-pro li a:hover,.footer-info a:hover{color:#7ddcff!important;transform:translateX(4px);display:inline-block}.footer-info{display:grid;gap:4px;margin-bottom:16px}.footer-info span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#7ddcff;font-weight:900}.footer-info p{margin:0;color:rgba(255,255,255,.78)}.footer-action-row{display:flex;gap:13px;align-items:center}.footer-round-action{position:relative;width:52px;height:52px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);box-shadow:0 16px 35px rgba(0,0,0,.18);font-size:22px}.footer-round-action img{width:31px;height:31px;object-fit:contain}.footer-round-action::before{content:"";position:absolute;inset:-7px;border-radius:inherit;border:2px solid rgba(125,214,255,.45);animation:footerPulse 2.2s ease-out infinite}.footer-round-action.wa-anim::before{border-color:rgba(37,211,102,.55)}@keyframes footerPulse{0%{transform:scale(.84);opacity:.8}100%{transform:scale(1.4);opacity:0}}.footer-consult{margin-top:10px}.footer-bottom-pro{position:relative;z-index:2;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:52px;padding:22px 0;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.72);font-weight:700}.site-footer-pro .footer-logo{height:100px!important;max-width:420px!important;object-fit:contain!important}
@media(max-width:980px){.footer-pro-grid{grid-template-columns:1fr 1fr}.footer-brand-col{grid-column:1/-1}.site-footer-pro{padding-top:60px!important}}
@media(max-width:620px){.footer-pro-grid{grid-template-columns:1fr;gap:28px}.footer-bottom-pro{display:grid}.site-footer-pro .footer-logo{height:78px!important;max-width:300px!important}}

/* ===== Client update: white header, clean white footer, white FAQ text ===== */
.header{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid rgba(6,26,52,.09)!important;
  box-shadow:0 12px 34px rgba(6,26,52,.10)!important;
  backdrop-filter:blur(18px)!important;
}
.header .nav{height:98px!important;}
.header .nav-links a{color:#06172e!important;}
.header .nav-links a:hover,
.header .nav-links a.active{background:#e9f6ff!important;color:#0b6fae!important;}
.header .btn-primary{background:linear-gradient(135deg,#0e5f95,#1787c7)!important;color:#fff!important;box-shadow:0 16px 34px rgba(15,110,168,.25)!important;}
.header .whatsapp-pill{background:rgba(14,157,84,.10)!important;border:1px solid rgba(14,157,84,.20)!important;box-shadow:0 10px 24px rgba(14,157,84,.12)!important;}
.header .brand-logo{filter:none!important;opacity:1!important;}

.site-footer-clean{
  background:#fff!important;
  color:#06172e!important;
  padding:84px 0 0!important;
  margin-top:0!important;
  border-top:1px solid #e7edf3!important;
  box-shadow:0 -18px 45px rgba(6,26,52,.05)!important;
}
.footer-clean-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(160px,1fr))!important;
  gap:70px!important;
  align-items:start!important;
}
.footer-clean-col h3{
  margin:0 0 18px!important;
  color:#17344f!important;
  font-size:22px!important;
  line-height:1.2!important;
  font-family:Poppins,Inter,sans-serif!important;
  font-weight:900!important;
}
.footer-clean-col ul{list-style:none!important;margin:0!important;padding:0!important;display:grid!important;gap:8px!important;}
.footer-clean-col li{margin:0!important;padding:0!important;}
.footer-clean-col a,
.footer-clean-col p{
  color:#17344f!important;
  font-weight:500!important;
  font-size:15px!important;
  line-height:1.7!important;
  margin:0 0 8px!important;
}
.footer-clean-col a{display:inline-flex!important;align-items:center!important;gap:8px!important;transition:.24s ease!important;}
.footer-clean-col a:hover{color:#0f77b8!important;transform:translateX(4px)!important;}
.footer-clean-contact{display:grid!important;gap:8px!important;}
.footer-socials{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;}
.footer-socials a{
  width:33px!important;height:33px!important;border-radius:999px!important;
  display:grid!important;place-items:center!important;
  background:#6d737a!important;color:#fff!important;
  font-weight:900!important;font-size:14px!important;
  line-height:1!important;margin:0!important;
}
.footer-socials a:hover{background:#0f77b8!important;color:#fff!important;transform:translateY(-3px)!important;}
.footer-clean-wa{
  margin-top:18px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:#eaf9f0!important;
  color:#0a7d43!important;
  font-weight:800!important;
}
.footer-clean-wa img{width:22px!important;height:22px!important;object-fit:contain!important;}
.footer-clean-bottom{margin-top:58px!important;background:#f2f2f2!important;border-top:1px solid #e1e1e1!important;padding:18px 0!important;text-align:center!important;}
.footer-clean-bottom p{margin:4px 0!important;color:#526272!important;font-size:13px!important;font-weight:500!important;}
.footer-clean-bottom a{color:#17344f!important;font-weight:600!important;}
.footer-clean-bottom a:hover{color:#0f77b8!important;}

/* FAQ white readable styling */
.faq-section{
  background:linear-gradient(135deg,#06172e,#0b2e4d 70%,#0a4469)!important;
  color:#fff!important;
}
.faq-section .section-title,
.faq-section .lead,
.faq-section .eyebrow,
.faq-question,
.faq-answer,
.faq-answer p{
  color:#fff!important;
}
.faq-item{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(139,216,255,.18)!important;
}
.faq-question{background:transparent!important;font-weight:900!important;}
.faq-question span{background:rgba(139,216,255,.16)!important;color:#fff!important;}
.faq-answer p{opacity:.86!important;}

@media(max-width:980px){
  .footer-clean-grid{grid-template-columns:repeat(2,1fr)!important;gap:36px!important;}
  .header .nav{height:90px!important;}
}
@media(max-width:640px){
  .footer-clean-grid{grid-template-columns:1fr!important;gap:26px!important;}
  .site-footer-clean{padding-top:54px!important;}
  .footer-clean-bottom{margin-top:36px!important;}
  .header .nav{height:78px!important;}
}


/* ===== Footer final clean: no Follow Us/social icons ===== */
.footer-clean-grid-three{grid-template-columns:repeat(3,minmax(180px,1fr))!important;max-width:980px!important;margin:0 auto!important;}
.footer-socials{display:none!important;}
.site-footer-clean .footer-clean-contact{align-content:start!important;}
@media(max-width:980px){.footer-clean-grid-three{grid-template-columns:repeat(2,1fr)!important;max-width:100%!important;}}
@media(max-width:640px){.footer-clean-grid-three{grid-template-columns:1fr!important;}}

/* Hide old placeholder FAQ intro text even if it is still present in the database */
.faq-section .lead:empty{display:none!important;}

/* ===== Client update: footer no social, aligned contact, Google map pin/link, banner-only sliders ===== */
.site-footer-clean{
  background:#fff!important;color:#17344f!important;padding:76px 0 0!important;border-top:1px solid #e7eef5!important;box-shadow:0 -18px 45px rgba(6,26,52,.08)!important;
}
.footer-clean-grid-three{
  max-width:1120px!important;margin:0 auto!important;display:grid!important;grid-template-columns:1fr 1fr 1.45fr!important;gap:84px!important;align-items:start!important;justify-content:center!important;
}
.footer-clean-col,.footer-clean-contact{text-align:left!important;justify-self:stretch!important;min-width:0!important;}
.footer-clean-col h3{color:#17344f!important;font-size:20px!important;margin:0 0 18px!important;font-weight:900!important;}
.footer-clean-col ul,.footer-contact-list{list-style:none!important;margin:0!important;padding:0!important;display:grid!important;gap:10px!important;}
.footer-clean-col li{list-style:none!important;margin:0!important;padding:0!important;}
.footer-clean-col a,.footer-clean-col p{color:#17344f!important;font-size:15px!important;line-height:1.7!important;font-weight:600!important;margin:0!important;}
.footer-clean-contact a,.footer-clean-contact p{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;align-items:start!important;gap:10px!important;word-break:break-word!important;}
.footer-clean-contact p span:last-child,.footer-clean-contact a span:last-child{min-width:0!important;}
.footer-clean-contact .footer-clean-wa{display:inline-grid!important;grid-template-columns:22px auto!important;justify-self:start!important;width:auto!important;max-width:max-content!important;padding:8px 14px!important;background:#e9faee!important;border-radius:999px!important;color:#17344f!important;font-weight:800!important;}
.footer-clean-wa img{width:22px!important;height:22px!important;object-fit:contain!important;}
.footer-map-link{color:#0f77b8!important;font-weight:900!important;}
.footer-socials,.footer-clean-col h3:has(+ .footer-socials),.footer-follow,.social-links{display:none!important;}
.footer-clean-bottom{margin-top:58px!important;background:#f4f4f4!important;border-top:1px solid #e1e1e1!important;padding:18px 0!important;text-align:center!important;}
.footer-clean-bottom p,.footer-clean-bottom a{color:#17344f!important;}
.pin-location-link{display:inline-flex!important;align-items:center!important;gap:7px!important;margin-top:8px!important;color:#7ddcff!important;font-weight:900!important;text-decoration:none!important;}
.pin-location-link:hover{color:#fff!important;transform:translateX(3px)!important;}
.contact-map-wrap{margin:16px 0 22px;border-radius:22px;overflow:hidden;border:1px solid rgba(125,214,255,.22);box-shadow:0 16px 38px rgba(0,0,0,.18)}
.contact-map-wrap iframe{width:100%;height:250px;border:0;display:block;filter:saturate(.95) contrast(.95)}
.contact-card .contact-row{align-items:flex-start!important;}
.contact-card .contact-row p{margin:0!important;}
.faq,.faq-section,.faq-list,.faq-item,.faq-question,.faq-answer,.faq-answer p{color:#fff!important;}
.faq-question button,.faq-question{color:#fff!important;}
@media(max-width:900px){.footer-clean-grid-three{grid-template-columns:1fr!important;gap:32px!important;}.footer-clean-col,.footer-clean-contact{text-align:left!important}.footer-clean-contact a,.footer-clean-contact p{grid-template-columns:22px minmax(0,1fr)!important}.contact-map-wrap iframe{height:220px}}


/* ===== Footer contact visibility + map fallback fix ===== */
.footer-fixed-clean .footer-clean-contact,
.footer-fixed-clean .footer-clean-col{ text-align:left!important; }
.footer-fixed-clean .footer-contact-fixed{display:grid!important;gap:10px!important;align-items:start!important;justify-items:start!important;}
.footer-fixed-clean .footer-contact-item{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;color:#17344f!important;font-size:15px!important;line-height:1.65!important;font-weight:650!important;margin:0!important;max-width:100%!important;word-break:normal!important;overflow-wrap:anywhere!important;}
.footer-fixed-clean .footer-contact-icon{width:24px!important;text-align:center!important;color:#0f77b8!important;line-height:1.65!important;}
.footer-fixed-clean .footer-clean-wa{margin-top:4px!important;opacity:1!important;color:#17344f!important;background:#e8faee!important;}
.footer-fixed-clean .footer-clean-wa span{color:#17344f!important;}
.footer-fixed-clean .footer-map-link{color:#0f77b8!important;font-weight:900!important;}
.footer-fixed-clean .footer-socials,
.footer-fixed-clean .footer-follow,
.footer-fixed-clean [class*="social"]{display:none!important;}
.map-link-fallback{background:linear-gradient(135deg,rgba(15,119,184,.18),rgba(125,220,255,.12))!important;min-height:180px!important;display:grid!important;place-items:center!important;}
.map-link-fallback a{width:100%;min-height:180px;display:grid!important;place-items:center!important;text-align:center!important;color:#fff!important;padding:22px!important;}
.map-link-fallback span{font-size:32px}.map-link-fallback strong{font-size:18px}.map-link-fallback small{display:block;max-width:360px;color:rgba(255,255,255,.72);font-weight:700;line-height:1.5}
@media(max-width:900px){.footer-fixed-clean .footer-clean-grid-three{grid-template-columns:1fr!important}.footer-fixed-clean .footer-contact-item{grid-template-columns:22px minmax(0,1fr)!important}}

/* ===== Client fix: footer Contact Us text visible on white footer ===== */
.site-footer-clean .footer-clean-contact .footer-contact-item,
.site-footer-clean .footer-clean-contact .footer-contact-item span,
.site-footer-clean .footer-clean-contact .footer-contact-item span:last-child,
.site-footer-clean .footer-clean-contact .footer-contact-item[href],
.site-footer-clean .footer-clean-contact .footer-contact-item[href] span{
  color:#17344f!important;
  opacity:1!important;
  visibility:visible!important;
}
.site-footer-clean .footer-clean-contact .footer-contact-icon{
  color:#0f77b8!important;
  font-weight:900!important;
}
.site-footer-clean .footer-clean-contact .footer-map-link,
.site-footer-clean .footer-clean-contact .footer-map-link span{
  color:#0f77b8!important;
}
.site-footer-clean .footer-clean-contact .footer-clean-wa,
.site-footer-clean .footer-clean-contact .footer-clean-wa span{
  color:#17344f!important;
}

/* ===== User update: make Home Hero banner wider/full length ===== */
.hero.premium-home-hero{
  padding-top:78px!important;
  padding-bottom:88px!important;
}
.hero.premium-home-hero .container.hero-grid{
  width:min(1760px,calc(100% - 80px))!important;
  max-width:none!important;
}
.hero.premium-home-hero .hero-card{
  width:100%!important;
  min-height:650px!important;
  height:650px!important;
}
.hero.premium-home-hero .hero-card img,
.hero.premium-home-hero .hero-media-slider{
  min-height:650px!important;
  height:650px!important;
}
.hero.premium-home-hero .hero-copy{
  max-width:760px!important;
  padding-left:70px!important;
}
@media(max-width:1100px){
  .hero.premium-home-hero .container.hero-grid{width:calc(100% - 34px)!important;}
  .hero.premium-home-hero .hero-card,
  .hero.premium-home-hero .hero-card img,
  .hero.premium-home-hero .hero-media-slider{min-height:560px!important;height:560px!important;}
  .hero.premium-home-hero .hero-copy{padding-left:34px!important;max-width:680px!important;}
}
@media(max-width:700px){
  .hero.premium-home-hero{padding-top:36px!important;padding-bottom:54px!important;}
  .hero.premium-home-hero .container.hero-grid{width:calc(100% - 22px)!important;}
  .hero.premium-home-hero .hero-card{border-radius:24px!important;}
  .hero.premium-home-hero .hero-card,
  .hero.premium-home-hero .hero-card img,
  .hero.premium-home-hero .hero-media-slider{min-height:520px!important;height:520px!important;}
  .hero.premium-home-hero .hero-copy{padding:44px 20px!important;}
}


/* ===== FINAL USER UPDATE: wider full-length Home Hero + bigger Home About image ===== */
.hero.premium-home-hero{
  padding-top:54px!important;
  padding-bottom:74px!important;
}
.hero.premium-home-hero .container.hero-grid{
  width:calc(100vw - 56px)!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw + 28px)!important;
  margin-right:0!important;
}
.hero.premium-home-hero .hero-card{
  width:100%!important;
  min-height:660px!important;
  height:660px!important;
  border-radius:34px!important;
}
.hero.premium-home-hero .hero-card img,
.hero.premium-home-hero .hero-media-slider,
.hero.premium-home-hero .hero-card .hero-media-slider .media-slide{
  min-height:660px!important;
  height:660px!important;
}
.hero.premium-home-hero .hero-copy{
  padding-left:min(7vw,120px)!important;
  max-width:760px!important;
}
#about.section .container.split{
  width:min(1460px,calc(100% - 54px))!important;
  max-width:none!important;
  grid-template-columns:1.08fr .92fr!important;
  gap:70px!important;
}
#about .image-stack{
  min-height:650px!important;
}
#about .image-stack .media-slider.main-img,
#about .about-media-slider{
  height:650px!important;
  min-height:650px!important;
  width:100%!important;
  border-radius:34px!important;
}
#about .image-stack .media-slide{
  object-fit:cover!important;
  object-position:center!important;
}
#about .reveal .section-title{
  font-size:clamp(38px,4.8vw,64px)!important;
}
#about .reveal .lead{
  font-size:18px!important;
  line-height:1.75!important;
}
@media(max-width:1100px){
  .hero.premium-home-hero .container.hero-grid{width:calc(100vw - 28px)!important;margin-left:calc(50% - 50vw + 14px)!important;}
  .hero.premium-home-hero .hero-card,
  .hero.premium-home-hero .hero-card img,
  .hero.premium-home-hero .hero-media-slider,
  .hero.premium-home-hero .hero-card .hero-media-slider .media-slide{min-height:590px!important;height:590px!important;}
  #about.section .container.split{grid-template-columns:1fr!important;width:calc(100% - 34px)!important;gap:34px!important;}
  #about .image-stack,#about .image-stack .media-slider.main-img,#about .about-media-slider{min-height:460px!important;height:460px!important;}
}
@media(max-width:700px){
  .hero.premium-home-hero{padding-top:28px!important;padding-bottom:46px!important;}
  .hero.premium-home-hero .container.hero-grid{width:calc(100vw - 18px)!important;margin-left:calc(50% - 50vw + 9px)!important;}
  .hero.premium-home-hero .hero-card{border-radius:22px!important;}
  .hero.premium-home-hero .hero-card,
  .hero.premium-home-hero .hero-card img,
  .hero.premium-home-hero .hero-media-slider,
  .hero.premium-home-hero .hero-card .hero-media-slider .media-slide{min-height:560px!important;height:560px!important;}
  .hero.premium-home-hero .hero-copy{padding:42px 20px!important;max-width:100%!important;}
  #about .image-stack,#about .image-stack .media-slider.main-img,#about .about-media-slider{min-height:380px!important;height:380px!important;}
}

/* Admin password screens */
.admin-card.password-card{max-width:760px}
.login-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:14px;font-weight:800}
.login-links a{color:var(--blue)}
.login-links a:hover{text-decoration:underline}


/* ===== FINAL SIZE FIX: Home About image full-left + page banners wide ===== */
/* Home page About image now fills the full left visual area. */
#about.section{
  padding-top:74px!important;
  padding-bottom:74px!important;
}
#about.section .container.split{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,52vw) minmax(0,48vw)!important;
  gap:0!important;
  align-items:stretch!important;
}
#about .image-stack{
  width:100%!important;
  height:720px!important;
  min-height:720px!important;
  overflow:hidden!important;
  border-radius:0 36px 36px 0!important;
  box-shadow:0 26px 80px rgba(0,0,0,.28)!important;
}
#about .image-stack .media-slider.main-img,
#about .about-media-slider{
  width:100%!important;
  height:720px!important;
  min-height:720px!important;
  border-radius:0 36px 36px 0!important;
  box-shadow:none!important;
}
#about .image-stack .media-slide{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
#about.section .container.split > .reveal:last-child{
  align-self:center!important;
  max-width:760px!important;
  padding:70px min(6vw,110px) 70px 58px!important;
}

/* About page banner same visual length/height as Home Hero. */
.page-hero.has-bg.page-hero-wide{
  width:calc(100vw - 56px)!important;
  max-width:none!important;
  min-height:660px!important;
  margin:54px auto!important;
  padding:0!important;
  border-radius:34px!important;
  display:flex!important;
  align-items:center!important;
  box-shadow:0 30px 90px rgba(0,0,0,.24)!important;
}
.page-hero.has-bg.page-hero-wide .page-hero-bg-slider,
.page-hero.has-bg.page-hero-wide .page-hero-bg-slider .media-slide{
  min-height:660px!important;
  height:660px!important;
}
.page-hero.has-bg.page-hero-wide .container{
  width:min(1640px,calc(100% - 120px))!important;
  max-width:none!important;
  margin:auto!important;
}

/* Services and Projects page banners are intentionally wider than the Home Hero. */
.page-hero.has-bg.page-hero-extra-wide{
  width:100vw!important;
  max-width:none!important;
  min-height:720px!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:0!important;
  margin-top:0!important;
  margin-bottom:70px!important;
  padding:0!important;
  border-radius:0!important;
  display:flex!important;
  align-items:center!important;
  box-shadow:0 32px 95px rgba(0,0,0,.24)!important;
}
.page-hero.has-bg.page-hero-extra-wide .page-hero-bg-slider,
.page-hero.has-bg.page-hero-extra-wide .page-hero-bg-slider .media-slide{
  min-height:720px!important;
  height:720px!important;
}
.page-hero.has-bg.page-hero-extra-wide .container{
  width:min(1760px,calc(100% - 90px))!important;
  max-width:none!important;
  margin:auto!important;
}
.page-hero.has-bg.page-hero-wide h1,
.page-hero.has-bg.page-hero-extra-wide h1{
  font-size:clamp(52px,6.2vw,92px)!important;
  max-width:980px!important;
}
.page-hero.has-bg.page-hero-wide p,
.page-hero.has-bg.page-hero-extra-wide p{
  max-width:850px!important;
  font-size:20px!important;
  line-height:1.75!important;
}

@media(max-width:1100px){
  #about.section .container.split{grid-template-columns:1fr!important;width:calc(100% - 28px)!important;margin-left:auto!important;margin-right:auto!important;gap:34px!important;}
  #about .image-stack,
  #about .image-stack .media-slider.main-img,
  #about .about-media-slider{height:520px!important;min-height:520px!important;border-radius:30px!important;}
  #about.section .container.split > .reveal:last-child{padding:0!important;max-width:100%!important;}
  .page-hero.has-bg.page-hero-wide{width:calc(100vw - 28px)!important;min-height:580px!important;margin:34px auto!important;}
  .page-hero.has-bg.page-hero-wide .page-hero-bg-slider,
  .page-hero.has-bg.page-hero-wide .page-hero-bg-slider .media-slide{height:580px!important;min-height:580px!important;}
  .page-hero.has-bg.page-hero-extra-wide{min-height:620px!important;margin-bottom:52px!important;}
  .page-hero.has-bg.page-hero-extra-wide .page-hero-bg-slider,
  .page-hero.has-bg.page-hero-extra-wide .page-hero-bg-slider .media-slide{height:620px!important;min-height:620px!important;}
  .page-hero.has-bg.page-hero-wide .container,
  .page-hero.has-bg.page-hero-extra-wide .container{width:calc(100% - 42px)!important;}
}
@media(max-width:700px){
  #about.section{padding-top:46px!important;padding-bottom:58px!important;}
  #about .image-stack,
  #about .image-stack .media-slider.main-img,
  #about .about-media-slider{height:390px!important;min-height:390px!important;border-radius:24px!important;}
  .page-hero.has-bg.page-hero-wide,
  .page-hero.has-bg.page-hero-extra-wide{width:calc(100vw - 18px)!important;margin-left:calc(50% - 50vw + 9px)!important;border-radius:24px!important;min-height:520px!important;margin-bottom:42px!important;}
  .page-hero.has-bg.page-hero-wide .page-hero-bg-slider,
  .page-hero.has-bg.page-hero-wide .page-hero-bg-slider .media-slide,
  .page-hero.has-bg.page-hero-extra-wide .page-hero-bg-slider,
  .page-hero.has-bg.page-hero-extra-wide .page-hero-bg-slider .media-slide{height:520px!important;min-height:520px!important;}
  .page-hero.has-bg.page-hero-wide h1,
  .page-hero.has-bg.page-hero-extra-wide h1{font-size:clamp(38px,12vw,56px)!important;}
}


/* Blue Earth update: favicon, stats-strip rename, brands marquee before FAQs */
.stats-strip{position:relative;margin-top:-38px;z-index:5;background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:26px;border:1px solid var(--line);overflow:hidden;}
body[data-page="home"] .stats-strip{width:min(1180px,calc(100% - 40px));margin-left:auto;margin-right:auto;}
.home-brands-marquee{position:relative;overflow:hidden;background:linear-gradient(135deg,#f8fcff 0%,#eef7ff 100%);padding:70px 0 78px;border-top:1px solid rgba(6,26,52,.06);border-bottom:1px solid rgba(6,26,52,.06);}
.home-brands-marquee:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 20%,rgba(32,168,220,.16),transparent 28%),radial-gradient(circle at 85% 80%,rgba(6,26,52,.10),transparent 35%);pointer-events:none;}
.brands-marquee-head{position:relative;z-index:2;display:flex;justify-content:center;margin-bottom:34px;}
.brands-heading-img{height:78px;width:auto;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(6,26,52,.12));}
.brands-marquee-wrap{position:relative;z-index:2;overflow:hidden;width:100%;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);}
.brands-marquee-track{display:flex;gap:22px;width:max-content;animation:brandsMoveLeft 34s linear infinite;will-change:transform;}
.brands-marquee-wrap:hover .brands-marquee-track{animation-play-state:paused;}
.brand-logo-card{flex:0 0 190px;height:120px;border-radius:22px;background:#fff;border:1px solid rgba(6,26,52,.08);box-shadow:0 16px 36px rgba(6,26,52,.09);display:grid;place-items:center;padding:18px;transition:transform .25s ease,box-shadow .25s ease;}
.brand-logo-card:hover{transform:translateY(-6px) scale(1.03);box-shadow:0 22px 46px rgba(6,26,52,.14);}
.brand-logo-card img{max-width:100%;max-height:82px;object-fit:contain;}
@keyframes brandsMoveLeft{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:768px){.home-brands-marquee{padding:50px 0 58px}.brands-heading-img{height:54px}.brand-logo-card{flex-basis:145px;height:92px;padding:13px}.brands-marquee-track{gap:14px;animation-duration:26s}.brand-logo-card img{max-height:62px}}
@media (prefers-reduced-motion:reduce){.brands-marquee-track{animation:none;transform:none}}
