
:root{--red:#d8103f;--deep:#8c0b28;--ink:#111827;--muted:#667085;--soft:#fff2f5;--line:#ead3da;--blue:#0b5f91;--dark:#17030a;--white:#fff;--shadow:0 20px 70px rgba(17,24,39,.14);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(140,11,40,.08)}.nav-wrap{height:92px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;min-width:210px}.brand img{width:210px;height:74px;object-fit:contain;display:block}.main-nav{display:flex;gap:24px;margin-left:auto;font-weight:800;color:#3b2430}.main-nav a{position:relative}.main-nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:3px;background:var(--red);border-radius:9px;transition:.25s}.main-nav a:hover:after{width:100%}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;padding:14px 22px;font-weight:900;cursor:pointer}.nav-cta{background:var(--deep);color:#fff}.menu-toggle{display:none;background:none;border:0}.menu-toggle span{display:block;width:26px;height:3px;background:var(--deep);margin:5px;border-radius:5px}.hero{background:linear-gradient(135deg,rgba(27,4,11,.82),rgba(140,11,40,.83)),url('../images/water-treatment.jpg') center/cover;color:#fff}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center;min-height:720px;padding:74px 0}.eyebrow{display:inline-flex;color:var(--red);background:#fff0f4;border:1px solid rgba(216,16,63,.2);padding:7px 13px;border-radius:999px;font-size:.79rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.hero .eyebrow,.cta-band .eyebrow{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}h1,h2,h3{line-height:1.08;margin:0 0 18px}h1{font-size:clamp(2.55rem,6vw,5.8rem);letter-spacing:-.07em}h2{font-size:clamp(2rem,3.8vw,3.65rem);letter-spacing:-.05em}h3{font-size:1.25rem}.hero p,.page-hero p{font-size:1.18rem;max-width:700px;color:rgba(255,255,255,.82)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}.btn.primary{background:var(--red);color:#fff;box-shadow:0 14px 34px rgba(216,16,63,.28)}.btn.ghost{border:1px solid rgba(255,255,255,.3);color:#fff}.btn.light{background:#fff;color:var(--deep)}.trust-row{display:flex;gap:12px;flex-wrap:wrap}.trust-row strong{padding:10px 14px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:16px}.hero-card{background:#fff;color:var(--ink);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);transform:rotate(2deg)}.hero-card img{height:540px;width:100%;object-fit:cover;border-radius:22px}.hero-card div{padding:18px 8px 8px;display:grid}.hero-card b{font-size:1.25rem;color:var(--deep)}.hero-card span{color:var(--muted)}.stats-strip{background:#fff;margin-top:-1px;border-bottom:1px solid #f1d8de}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:28px 0}.stats-grid div{padding:22px;border-radius:22px;background:linear-gradient(180deg,#fff,#fff6f8);border:1px solid #f0d9df}.stats-grid span{font-size:2rem;font-weight:900;color:var(--red)}.stats-grid p{margin:4px 0 0;color:var(--muted);font-weight:700}.section{padding:96px 0}.soft-bg{background:linear-gradient(180deg,#fff7f9,#fff)}.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.split p,.section-head p{color:var(--muted);font-size:1.05rem}.text-link{font-weight:900;color:var(--red)}.center-action{text-align:center;margin-top:34px}.image-stack{display:grid;grid-template-columns:1fr 1fr;gap:18px}.image-stack img,.rounded-photo img{height:520px;width:100%;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.image-stack img:first-child{margin-top:60px}.section-head{text-align:center;max-width:820px;margin:0 auto 46px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.home-services article{min-height:100%}.service-grid article{background:#fff;border:1px solid #f0d9df;border-radius:26px;padding:16px;box-shadow:0 16px 46px rgba(17,24,39,.06);transition:.25s}.service-grid article:hover{transform:translateY(-7px)}.service-grid img{height:190px;width:100%;object-fit:cover;border-radius:18px}.service-grid h3{margin-top:18px;color:var(--deep)}.service-grid p{color:var(--muted);font-size:.96rem}.project-gallery{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:220px;gap:14px}.project-gallery a{display:block;position:relative;overflow:hidden;border-radius:22px}.project-gallery a:after{content:"View";position:absolute;right:12px;bottom:12px;background:rgba(255,255,255,.92);color:var(--deep);font-weight:900;border-radius:999px;padding:7px 12px;opacity:0;transform:translateY(8px);transition:.25s}.project-gallery a:hover:after{opacity:1;transform:none}.project-gallery img{height:100%;width:100%;object-fit:cover;border-radius:22px;transition:.35s}.project-gallery a:hover img{transform:scale(1.05)}.project-gallery a:nth-child(1){grid-column:span 2;grid-row:span 2}.project-gallery a:nth-child(2){grid-column:span 2}.project-gallery a:nth-child(3){grid-column:span 2;grid-row:span 2}.project-gallery a:nth-child(4),.project-gallery a:nth-child(5),.project-gallery a:nth-child(6){grid-column:span 2}.cta-band{background:linear-gradient(135deg,var(--deep),var(--red));color:#fff;padding:74px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-inner p{color:rgba(255,255,255,.82)}.page-hero{background:linear-gradient(135deg,#1f0610,#8c0b28),url('../images/field-team.jpg') center/cover;background-blend-mode:multiply;color:#fff;padding:92px 0 72px}.page-hero.services{background-image:linear-gradient(135deg,#1f0610,#8c0b28),url('../images/solar-panels.jpg')}.page-hero.contact{background-image:linear-gradient(135deg,#1f0610,#8c0b28),url('../images/crane-loading.jpg')}.page-hero h1{max-width:980px;font-size:clamp(2rem,4vw,3.35rem);letter-spacing:-.045em}.info-cards,.reference-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}.info-cards div,.reference-grid article{background:#fff;border:1px solid #f0d9df;border-radius:20px;padding:18px}.institution-cards div{display:grid;gap:10px;align-content:start}.institution-cards img{height:54px;width:100%;object-fit:contain;object-position:left center;margin-bottom:4px}.info-cards b{display:block;color:var(--deep)}.info-cards span{color:var(--muted)}.compliance-large{grid-template-columns:repeat(4,1fr)}.compliance-large div{min-height:168px}.compliance-large img{height:64px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.values-grid article{padding:30px;border-radius:28px;background:#fff;border:1px solid #f0d9df;box-shadow:0 14px 46px rgba(17,24,39,.05)}.values-grid span{font-weight:900;color:var(--red)}.check-list{list-style:none;padding:0;margin:22px 0}.check-list li{margin:10px 0;padding-left:30px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:900}.reverse{direction:rtl}.reverse>*{direction:ltr}.detailed-services{display:grid;gap:26px}.detailed-services article{display:grid;grid-template-columns:360px 1fr;gap:28px;align-items:center;padding:22px;border:1px solid #efd6dd;border-radius:28px;background:#fff;box-shadow:0 15px 40px rgba(17,24,39,.06);scroll-margin-top:120px}.detailed-services img{height:260px;width:100%;object-fit:cover;border-radius:20px}.detailed-services ul{columns:2;color:var(--muted);padding-left:20px}.application-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.application-grid span{background:#fff;border:1px solid #efd6dd;border-radius:999px;padding:11px 16px;font-weight:900;color:#3b2430}.contact-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:34px;align-items:stretch}.premium-card,.redesigned-form,.map-card{background:#fff;border:1px solid #efd6dd;border-radius:32px;padding:32px;box-shadow:var(--shadow)}.contact-panel a{color:var(--red);font-weight:900}.contact-method{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-bottom:1px solid #f1d8de}.contact-method i{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#fff0f4;color:var(--red);font-size:20px}.contact-method b,.contact-method span,.contact-method a{display:block}.contact-method span{color:var(--muted);font-weight:700}.contact-photo img{height:320px;width:100%;object-fit:cover;border-radius:22px;margin-top:22px}.quote-form{display:grid;gap:16px}.redesigned-form h2{margin-bottom:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote-form label{font-weight:900;color:#3b2430;display:block}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:8px;border:1px solid #e2ccd2;border-radius:18px;padding:15px 16px;font:inherit;outline:none;background:#fff;color:var(--ink);transition:.2s;appearance:none}.quote-form textarea{resize:vertical}.select-wrap{position:relative;display:block}.select-wrap:after{content:"⌄";position:absolute;right:18px;top:50%;transform:translateY(-35%);font-size:22px;color:var(--red);pointer-events:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--red);box-shadow:0 0 0 4px rgba(216,16,63,.1)}.form-submit{width:fit-content;font-size:1rem}.map-section{padding-top:0}.map-card{padding:10px;overflow:hidden}.map-card iframe{width:100%;height:420px;border:0;border-radius:24px;display:block}.site-footer{position:relative;background:radial-gradient(circle at top left,rgba(216,16,63,.24),transparent 34%),linear-gradient(135deg,#16050a,#280712 56%,#120307);color:#fff;padding:62px 0 0;overflow:hidden}.footer-top{display:grid;grid-template-columns:1.35fr .7fr .85fr 1fr;gap:36px;align-items:start}.footer-brand-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);border-radius:28px;padding:24px}.footer-logo{width:240px;max-height:110px;object-fit:contain}.site-footer p,.site-footer a{color:rgba(255,255,255,.75)}.footer-links a{display:block;margin:9px 0}.footer-links a:hover,.footer-contact a:hover{color:#fff}.footer-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.footer-badges span{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:900}.footer-quote{display:inline-flex!important;background:#fff;color:var(--deep)!important;border-radius:999px;padding:12px 16px;font-weight:900;margin-top:12px}.footer-compliance{margin-top:32px;padding:18px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-compliance span{font-weight:900;color:rgba(255,255,255,.72)}.footer-compliance div{display:flex;gap:12px;flex-wrap:wrap}.footer-compliance img{height:44px;max-width:120px;background:#fff;border-radius:12px;padding:7px;object-fit:contain}.footer-bottom{text-align:center;padding:18px;color:rgba(255,255,255,.62)}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.18s}.floating_btn{position:fixed;bottom:22px;right:18px;width:104px;min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;text-align:center}.floating_btn a{text-decoration:none}.contact_icon{background:linear-gradient(135deg,#25D366,#128C7E);color:#fff;width:62px;height:62px;font-size:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px rgba(18,140,126,.35);animation:pulsing 1.35s infinite cubic-bezier(.66,0,0,1);transition:transform .25s ease,box-shadow .25s ease}.contact_icon:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 18px 42px rgba(18,140,126,.45)}.text_icon{margin:9px 0 0;color:#3b2430;background:#fff;border:1px solid #e8d6dc;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;box-shadow:0 8px 22px rgba(17,24,39,.12)}@keyframes pulsing{to{box-shadow:0 0 0 28px rgba(37,211,102,0)}}.form-alert{border-radius:16px;padding:14px 16px;font-weight:800}.form-alert.success{background:#ecfdf3;color:#067647;border:1px solid #abefc6}.form-alert.error{background:#fff1f3;color:#a1102f;border:1px solid #fecdd6}.lightbox{position:fixed;inset:0;background:rgba(8,3,5,.88);z-index:2000;display:none;align-items:center;justify-content:center;padding:40px}.lightbox.open{display:flex}.lightbox-img{max-width:min(1100px,86vw);max-height:82vh;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.35);object-fit:contain}.lightbox button{position:absolute;border:0;background:#fff;color:var(--deep);width:48px;height:48px;border-radius:50%;font-size:34px;cursor:pointer;display:flex;align-items:center;justify-content:center}.lightbox-close{top:24px;right:24px}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-caption{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:#fff;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 14px;margin:0;text-align:center}@media(max-width:1000px){.main-nav,.nav-cta{display:none}.menu-toggle{display:block;margin-left:auto}.main-nav.open{display:flex;position:absolute;top:92px;left:0;right:0;background:#fff;padding:18px 4%;flex-direction:column;border-bottom:1px solid #f0d9df}.hero-grid,.split,.contact-layout{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.stats-grid,.values-grid,.compliance-large{grid-template-columns:repeat(2,1fr)}.detailed-services article{grid-template-columns:1fr}.hero-card{transform:none}.hero-card img{height:420px}.project-gallery{grid-template-columns:repeat(2,1fr)}.project-gallery a:nth-child(n){grid-column:span 1;grid-row:span 1}.footer-top{grid-template-columns:1fr 1fr}.footer-compliance{display:block}.footer-compliance div{margin-top:14px}.cta-inner{display:block}.reverse{direction:ltr}}@media(max-width:640px){.nav-wrap{height:76px}.main-nav.open{top:76px}.brand{min-width:168px}.brand img{width:168px;height:58px}.hero-grid{min-height:auto;padding:64px 0}.hero-card img{height:330px}h1{font-size:2.35rem}.page-hero h1{font-size:1.85rem}.page-hero{padding:72px 0 54px}.section{padding:64px 0}.service-grid,.stats-grid,.values-grid,.info-cards,.reference-grid,.footer-top,.form-row,.compliance-large{grid-template-columns:1fr}.detailed-services ul{columns:1}.project-gallery{grid-auto-rows:190px}.image-stack{grid-template-columns:1fr}.image-stack img:first-child{margin-top:0}.image-stack img,.rounded-photo img{height:390px}.footer-logo{width:210px}.floating_btn{bottom:24px;right:12px;width:74px;min-height:74px}.text_icon{display:none}.contact_icon{width:58px;height:58px;font-size:30px}.lightbox{padding:20px}.lightbox-prev,.lightbox-next{bottom:26px;top:auto}.lightbox-caption{display:none}}

/* Project references and registration logos */
.reference-compliance{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin:8px 0 28px;padding:18px;background:#fff;border:1px solid #f0d9df;border-radius:24px;box-shadow:0 14px 40px rgba(17,24,39,.05)}
.reference-compliance img{height:48px;max-width:150px;object-fit:contain;background:#fff;border-radius:12px;padding:6px}
.full-references article{position:relative;overflow:hidden}
.full-references article:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--red),#ff6b8d)}
.full-references article p{margin:9px 0;color:var(--muted)}
.full-references article strong{color:var(--deep)}
@media(max-width:640px){.reference-compliance img{height:42px;max-width:130px}.reference-compliance{gap:10px;padding:14px}}

/* Client / project reference logos */
.reference-logo-grid{align-items:stretch}
.reference-logo-grid article{padding:22px;display:flex;flex-direction:column;gap:4px}
.reference-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid #f1d8de}
.reference-top img{height:84px;max-width:240px;width:auto;object-fit:contain;background:#fff;border-radius:16px;box-shadow:0 10px 24px rgba(17,24,39,.06);padding:4px}
.reference-top span{white-space:nowrap;background:#fff0f4;color:var(--deep);border:1px solid rgba(216,16,63,.15);border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:900}
.reference-logo-grid article:nth-child(5){grid-column:1/-1}
@media(max-width:900px){.reference-top{align-items:flex-start;flex-direction:column}.reference-top span{white-space:normal}.reference-logo-grid article:nth-child(5){grid-column:auto}}
@media(max-width:640px){.reference-top img{height:76px;max-width:100%}}

/* Final polish: themed service cards and compact footer */
.service-kicker{display:inline-flex;align-items:center;gap:8px;background:#fff0f4;color:var(--red);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:7px 11px;margin-bottom:10px}.service-kicker:before{content:"";width:7px;height:7px;background:var(--red);border-radius:50%;display:inline-block}.detailed-services article{position:relative;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.detailed-services article:hover{transform:translateY(-5px);box-shadow:0 22px 56px rgba(140,11,40,.14);border-color:#f0a8b9}.detailed-services article h2{font-size:clamp(1.35rem,2vw,2rem);letter-spacing:-.035em}.detailed-services article p{font-size:1.02rem;color:#53424b}.detailed-services img{box-shadow:0 14px 34px rgba(31,6,16,.14);background:#1f0610}.site-footer{padding-top:46px}.footer-top{grid-template-columns:1.02fr .72fr 1fr 1fr;gap:28px}.footer-brand-card{padding:18px;border-radius:22px}.footer-logo{width:172px;max-height:78px;object-position:left center}.footer-brand-card p{font-size:.94rem;margin-top:8px}.footer-badges{margin-top:12px}.footer-badges span{font-size:.74rem;padding:6px 8px}.footer-compliance{margin-top:24px;padding:14px 0}.footer-compliance img{height:38px;max-width:112px;padding:6px;border-radius:10px}.footer-bottom{padding:14px;font-size:.9rem}@media(max-width:1000px){.footer-top{grid-template-columns:1fr 1fr}.footer-logo{width:160px}}@media(max-width:640px){.detailed-services img{height:230px}.footer-logo{width:150px;max-height:66px}.footer-brand-card{padding:16px}.footer-top{gap:22px}}

/* Projects gallery page updates */
.gallery-actions{margin-top:28px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.btn.secondary{background:#fff;color:var(--deep);border:1px solid #efd6dd}.btn.secondary:hover{border-color:var(--red);color:var(--red)}.extended-gallery{grid-template-columns:repeat(4,1fr);grid-auto-rows:230px}.extended-gallery a:nth-child(n){grid-column:span 1;grid-row:span 1}.extended-gallery a:nth-child(1),.extended-gallery a:nth-child(6),.extended-gallery a:nth-child(11){grid-column:span 2;grid-row:span 2}@media(max-width:1000px){.extended-gallery{grid-template-columns:repeat(2,1fr)}.extended-gallery a:nth-child(n){grid-column:span 1;grid-row:span 1}}@media(max-width:640px){.extended-gallery{grid-template-columns:1fr;grid-auto-rows:220px}}
