:root{
  --ink:#0c1722;
  --muted:#5d6874;
  --line:#dde4ea;
  --surface:#ffffff;
  --tint:#f4f7fa;
  --navy:#052a55;
  --navy-2:#06396f;
  --blue:#0476c9;
  --blue-bright:#149be8;
  --graphite:#2f3439;
  --dark:#07121d;
  --radius:22px;
  --radius-sm:14px;
  --shadow:0 20px 55px rgba(8,30,52,.12);
  --container:1180px;
  --ubuild-h:34px;
  --nav-h:78px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--ubuild-h) + var(--nav-h) + 18px)}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
.section-pad{padding:104px 0}
.section-tint{background:var(--tint)}
.skip-link{position:fixed;left:14px;top:-80px;background:#fff;color:#000;padding:10px 14px;border-radius:8px;z-index:9999;box-shadow:var(--shadow)}
.skip-link:focus{top:14px}
.mobile-only{display:none}

.ubuild-bar{height:var(--ubuild-h);background:#0c0f13;color:#cfd5db;position:sticky;top:0;z-index:120;border-bottom:1px solid rgba(255,255,255,.06)}
.ubuild-bar__inner{height:100%;display:flex;align-items:center;justify-content:center;gap:10px;font-size:11.5px;letter-spacing:.01em}
.ubuild-bar a{color:#fff;font-weight:650;white-space:nowrap}

.site-header{position:sticky;top:var(--ubuild-h);z-index:110;background:rgba(255,255,255,.84);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(14,38,58,.08)}
.nav-wrap{height:var(--nav-h);display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:24px}
.brand{display:flex;align-items:center;width:150px;height:62px;overflow:hidden}
.brand img{width:145px;height:auto;transform:translateY(3px)}
.main-nav{display:flex;align-items:center;justify-content:center;gap:28px;font-size:14px;color:#394653}
.main-nav a{position:relative;padding:10px 0}
.main-nav a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1.5px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:.25s}
.main-nav a:hover:after,.main-nav a:focus-visible:after{transform:scaleX(1)}
.menu-toggle{display:none;border:0;background:none;width:44px;height:44px;padding:10px;cursor:pointer}
.menu-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0;border-radius:1px;transition:.25s}

.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 20px;border-radius:999px;background:var(--navy);color:#fff;font-weight:700;font-size:14px;border:1px solid var(--navy);transition:transform .2s,box-shadow .2s,background .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(5,42,85,.22);background:var(--navy-2)}
.button--small{min-height:43px;padding:0 17px;font-size:13px}
.button--ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.button--ghost:hover{background:#fff;box-shadow:none}
.button--light{background:#fff;color:var(--navy);border-color:#fff}
.button--light:hover{background:#f5f8fb}

.hero{padding-top:86px;padding-bottom:80px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:72px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:var(--blue);margin:0 0 18px}
.eyebrow span{color:#9aa9b6;padding:0 3px}
.eyebrow--light{color:#66bff4}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(48px,6vw,78px);line-height:.99;letter-spacing:-.052em;max-width:780px;margin-bottom:26px}
h2{font-size:clamp(38px,4.4vw,62px);line-height:1.02;letter-spacing:-.04em;margin-bottom:22px}
h3{font-size:22px;line-height:1.15;letter-spacing:-.02em}
.lead{font-size:18px;color:var(--muted);max-width:660px;line-height:1.68}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.hero-indicators{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:46px;padding-top:24px;border-top:1px solid var(--line)}
.hero-indicators div{display:flex;flex-direction:column;gap:3px}
.hero-indicators strong{font-size:13px}
.hero-indicators span{font-size:11.5px;color:var(--muted)}
.hero-image-wrap{position:relative;min-height:620px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#e8eef3}
.hero-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(4,29,51,.22));pointer-events:none}
.hero-image-wrap img{width:100%;height:100%;min-height:620px;object-fit:cover}
.hero-chip{position:absolute;z-index:2;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);border-radius:999px;padding:11px 14px;font-size:12px;font-weight:700;box-shadow:0 10px 30px rgba(8,30,52,.12)}
.hero-chip--top{right:18px;top:18px}.hero-chip--bottom{left:18px;bottom:18px}
.signal-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#1fb86a;margin-right:6px;box-shadow:0 0 0 4px rgba(31,184,106,.13)}

.marquee-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.strip-grid{min-height:62px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;text-align:center;color:#4b5864;font-size:12px}
.strip-grid span+span{border-left:1px solid var(--line)}

.section-heading{max-width:780px}
.section-heading>p:not(.eyebrow){color:var(--muted);font-size:16px;max-width:700px}
.services-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:16px;margin-top:52px}
.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:28px;min-height:310px;display:flex;flex-direction:column;background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#ced8e1}
.service-card--feature{grid-row:span 2;min-height:636px;background:linear-gradient(160deg,#f7fbff 0%,#fff 45%)}
.service-card__top{display:flex;justify-content:space-between;align-items:center;min-height:26px}
.service-number{font-size:11px;color:#72808e;font-weight:800;letter-spacing:.12em}
.service-badge{font-size:10px;padding:6px 9px;border-radius:999px;background:#eaf5ff;color:#07578e;font-weight:800}
.service-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:#eef7fd;color:var(--blue);margin:52px 0 28px}
.service-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.service-card--feature .service-icon{width:64px;height:64px;margin-top:72px}
.service-card h3{margin-bottom:12px}.service-card p{color:var(--muted);font-size:14px}
.service-card .text-link{margin-top:auto;color:var(--navy);font-size:13px;font-weight:800}
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}
.tag-row span{display:inline-flex;padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:11px;color:#4c5966;background:#fff}

.ecosystem-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.statement{font-size:24px!important;color:var(--ink)!important;margin-top:35px}.statement strong{color:var(--blue)}
.ecosystem-orbit{position:relative;min-height:560px;border-radius:32px;background:radial-gradient(circle at center,#eef8ff 0%,#f7f9fb 42%,#f0f4f7 100%);overflow:hidden;border:1px solid #e2e8ed}
.ecosystem-orbit:before,.ecosystem-orbit:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px dashed rgba(4,118,201,.18);border-radius:50%}
.ecosystem-orbit:before{width:62%;aspect-ratio:1}.ecosystem-orbit:after{width:88%;aspect-ratio:1}
.orbit-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:210px;height:210px;border-radius:50%;background:#fff;box-shadow:0 20px 50px rgba(8,30,52,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;border:1px solid #dce6ee}
.orbit-center img{width:110px;height:auto;margin-bottom:8px}.orbit-center span{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.orbit-item{position:absolute;z-index:3;background:#fff;border:1px solid #dfe7ed;border-radius:999px;padding:12px 16px;font-size:12px;font-weight:750;box-shadow:0 10px 25px rgba(8,30,52,.08)}
.orbit-item--1{top:12%;left:31%}.orbit-item--2{top:35%;right:5%}.orbit-item--3{bottom:12%;right:19%}.orbit-item--4{bottom:22%;left:4%}.orbit-item--5{top:23%;left:4%}

.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}
.feature-media{position:relative}.feature-media img{width:100%;height:630px;object-fit:cover;border-radius:28px}
.image-label{position:absolute;left:18px;bottom:18px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);padding:11px 14px;border-radius:999px;font-size:11px;font-weight:800}
.feature-copy>p:not(.eyebrow){color:var(--muted)}
.steps-compact{margin:34px 0 34px;border-top:1px solid var(--line)}
.steps-compact>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}
.steps-compact span{font-size:10px;color:#82909d;font-weight:800}.steps-compact strong{font-size:14px}.steps-compact p{margin:3px 0 0;color:var(--muted);font-size:12.5px}

.section-dark{background:var(--dark);color:#fff}
.split-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}
.split-heading p:not(.eyebrow){color:#aeb9c3}.split-heading .button{margin-top:18px}
.renovation-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:52px}
.renovation-image img{width:100%;height:560px;object-fit:cover;border-radius:24px}
.renovation-tags{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}
.renovation-tags span{display:flex;min-height:82px;align-items:center;padding:0 18px;border-radius:16px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04);color:#dfe7ed;font-size:13px}

.utilities-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.check-grid span{padding:12px 14px;border-radius:12px;background:#f5f8fb;font-size:12px;font-weight:700}.check-grid span:before{content:"✓";color:var(--blue);margin-right:8px}
.utilities-panel{border-radius:28px;background:linear-gradient(145deg,#062a55,#0b477d);color:#fff;padding:34px;box-shadow:var(--shadow)}
.panel-line{display:grid;grid-template-columns:42px 1fr;gap:6px 12px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.14)}.panel-line:last-child{border-bottom:0}.panel-line span{font-size:11px;color:#84c9ef}.panel-line strong{font-size:15px}.panel-line p{grid-column:2;color:#c9d8e3;font-size:12.5px;margin:0}

.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:48px}
.audience-card{border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--line);min-height:420px}.audience-card img{height:230px;width:100%;object-fit:cover}.audience-card div{padding:22px}.audience-card span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:800}.audience-card h3{font-size:18px;margin:8px 0 18px}.audience-card small{color:#909ba5;font-size:10px}

.process-section{background:#fff}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:50px}.process-card{padding:28px;border:1px solid var(--line);border-radius:18px;min-height:250px}.process-card>span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#eef7fd;color:var(--blue);font-size:10px;font-weight:900;margin-bottom:46px}.process-card h3{font-size:19px}.process-card p{color:var(--muted);font-size:13px}

.b2b{background:linear-gradient(145deg,#071a2c,#0a3157 72%,#0b4778);color:#fff;overflow:hidden}.b2b-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:68px;align-items:center}.b2b-copy>p:not(.eyebrow){color:#c1ced8;max-width:560px}.tag-row--dark span{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);color:#d8e4ec}.b2b-media img{height:580px;width:100%;object-fit:cover;border-radius:28px;box-shadow:0 30px 80px rgba(0,0,0,.28)}

.residential-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}.residential-media img{height:540px;width:100%;object-fit:cover;border-radius:28px}.residential-section .button{margin-top:15px}

.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:46px}.project-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.project-card img{width:100%;height:310px;object-fit:cover}.project-card div{padding:20px}.project-card span{font-size:10px;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.project-card h3{font-size:18px;margin:7px 0 18px}.project-card small{font-size:10px;color:#98a3ad}

.about-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:center}.about-brand{background:linear-gradient(145deg,#f6f9fb,#fff);border:1px solid var(--line);border-radius:28px;min-height:480px;display:grid;place-items:center;padding:40px}.about-brand img{max-width:360px}.about-section .section-heading p:not(.eyebrow){font-size:15px}

.location-section{padding-top:50px}.location-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.location-visual{position:relative;min-height:430px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#eef3f7,#dfe9f0)}
.location-visual:before,.location-visual:after{content:"";position:absolute;border:1px solid rgba(5,42,85,.12);border-radius:50%}.location-visual:before{width:520px;height:520px;left:50%;top:50%;transform:translate(-50%,-50%)}.location-visual:after{width:280px;height:280px;left:50%;top:50%;transform:translate(-50%,-50%)}
.map-dot{position:absolute;width:20px;height:20px;background:var(--blue);border:5px solid #fff;border-radius:50%;left:50%;top:43%;transform:translate(-50%,-50%);box-shadow:0 0 0 9px rgba(4,118,201,.12),0 10px 25px rgba(4,118,201,.25)}
.location-card{position:absolute;left:50%;top:54%;transform:translateX(-50%);width:240px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);border-radius:18px;padding:18px;display:flex;flex-direction:column;box-shadow:var(--shadow)}.location-card span,.location-card small{font-size:10px;color:var(--muted)}.location-card strong{font-size:17px;margin:3px 0}

.final-cta{padding-top:80px}.final-cta__inner{border-radius:32px;background:linear-gradient(135deg,#062a55,#0476c9);color:#fff;padding:72px 78px;overflow:hidden;position:relative}.final-cta__inner:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-130px;top:-210px;border:1px solid rgba(255,255,255,.16);box-shadow:0 0 0 58px rgba(255,255,255,.035)}.final-cta h2{max-width:780px}.final-cta p:not(.eyebrow){color:#d9e8f2;max-width:700px}.final-cta__actions{display:flex;align-items:center;gap:22px;margin-top:28px;position:relative;z-index:2}.phone-link{font-weight:700;font-size:14px}

.site-footer{background:#070d14;color:#c7d0d8;padding:72px 0 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px;padding-bottom:46px}.footer-brand img{width:170px;filter:drop-shadow(0 8px 15px rgba(0,0,0,.2));margin-bottom:18px}.footer-brand p{color:#fff;font-weight:700;margin-bottom:3px}.footer-brand small{color:#83909b}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px;font-size:12px}.footer-grid strong{color:#fff;margin-bottom:7px;font-size:12px}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.09);padding-top:24px;display:flex;justify-content:space-between;gap:20px;color:#788692;font-size:10px}

.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:90;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#1fac5b;color:#fff;box-shadow:0 14px 35px rgba(31,172,91,.28)}.whatsapp-float svg{width:26px;height:26px;fill:currentColor}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.reveal-delay{transition-delay:.12s}

@media (max-width:1000px){
  :root{--nav-h:70px}
  .nav-wrap{grid-template-columns:150px auto auto;justify-content:space-between}
  .menu-toggle{display:block;justify-self:end}
  .main-nav{position:absolute;left:20px;right:20px;top:calc(100% + 8px);display:none;flex-direction:column;align-items:stretch;gap:0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:var(--shadow)}
  .main-nav.is-open{display:flex}.main-nav a{padding:12px 14px;border-radius:10px}.main-nav a:hover{background:#f5f8fa}.nav-cta{display:none}
  .hero-grid,.feature-grid,.ecosystem-grid,.utilities-grid,.b2b-grid,.residential-grid,.about-grid,.location-grid{grid-template-columns:1fr;gap:50px}
  .hero{padding-top:64px}.hero-image-wrap,.hero-image-wrap img{min-height:520px}
  .services-grid{grid-template-columns:1fr 1fr}.service-card--feature{grid-row:auto;grid-column:span 2;min-height:480px}.service-card--feature .service-icon{margin-top:48px}
  .audience-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:1fr 1fr}.project-card:last-child{grid-column:span 2}
  .split-heading,.renovation-grid{grid-template-columns:1fr;gap:34px}
  .b2b-media img,.residential-media img,.feature-media img{height:500px}
  .about-brand{min-height:360px}
}

@media (max-width:680px){
  :root{--ubuild-h:38px;--nav-h:66px}
  .container{width:min(calc(100% - 28px),var(--container))}
  .section-pad{padding:72px 0}
  .desktop-only{display:none}.mobile-only{display:inline}
  .ubuild-bar__inner{justify-content:space-between;font-size:10.5px;gap:8px}
  .brand{width:120px;height:54px}.brand img{width:118px}
  .nav-wrap{grid-template-columns:1fr auto}
  .hero{padding-top:48px;padding-bottom:58px}
  h1{font-size:44px}.lead{font-size:16px}.hero-grid{gap:38px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}
  .hero-indicators{grid-template-columns:1fr;gap:12px;margin-top:32px}.hero-indicators div{padding-bottom:12px;border-bottom:1px solid var(--line)}
  .hero-image-wrap,.hero-image-wrap img{min-height:410px}.hero-chip{font-size:10px;padding:9px 11px}.hero-chip--top{right:12px;top:12px}.hero-chip--bottom{left:12px;bottom:12px}
  .strip-grid{grid-template-columns:1fr 1fr;padding:8px 0}.strip-grid span{padding:8px 3px}.strip-grid span+span{border-left:0}.strip-grid span:nth-child(even){border-left:1px solid var(--line)}
  .services-grid{grid-template-columns:1fr}.service-card--feature{grid-column:auto;min-height:420px}.service-card{min-height:280px}.service-card__top{min-height:20px}.service-icon,.service-card--feature .service-icon{margin-top:38px}
  .ecosystem-orbit{min-height:520px}.orbit-center{width:180px;height:180px}.orbit-center img{width:95px}.orbit-item{font-size:10px;padding:9px 11px}.orbit-item--1{left:25%}.orbit-item--2{right:2%;top:31%}.orbit-item--3{right:10%}.orbit-item--4{left:2%;bottom:21%}.orbit-item--5{left:2%;top:21%}
  .feature-media img,.b2b-media img,.residential-media img{height:400px}.renovation-image img{height:410px}.renovation-tags{grid-template-columns:1fr 1fr}.renovation-tags span{min-height:70px;padding:0 13px;font-size:11px}
  .check-grid{grid-template-columns:1fr}.utilities-panel{padding:22px}
  .audience-grid,.process-grid,.projects-grid{grid-template-columns:1fr}.project-card:last-child{grid-column:auto}.audience-card{min-height:0}.audience-card img{height:240px}.process-card{min-height:220px}.process-card>span{margin-bottom:32px}
  .about-brand{min-height:280px;padding:26px}.about-brand img{max-width:270px}
  .location-visual{min-height:340px}
  .final-cta{padding-top:44px}.final-cta__inner{padding:46px 26px;border-radius:24px}.final-cta__actions{align-items:flex-start;flex-direction:column}.final-cta__actions .button{width:100%}
  .footer-grid{grid-template-columns:1fr;gap:36px}.footer-bottom{flex-direction:column}
  .whatsapp-float{right:16px;bottom:16px;width:50px;height:50px}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.service-card,.main-nav a:after{transition:none}}
