@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--dark:#0d272e;--green:#218776;--green-light:#9fd2c5;--ink:#183039;--muted:#607078;--cream:#f5f7f6;--line:#dfe6e2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:white}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}.wrap{max-width:1200px;margin:auto;padding-left:34px;padding-right:34px}.section{padding-top:108px;padding-bottom:108px}.site-header{height:86px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:32px;position:relative;z-index:10;background:white}.brand{display:flex;align-items:center;gap:10px;min-width:230px;font-size:11px;font-weight:800;letter-spacing:1.8px}.brand img{height:61px;width:72px;object-fit:contain;object-position:center}.brand strong{color:var(--green);font-size:17px}nav{display:flex;gap:33px;align-items:center}nav a{font-size:13px;font-weight:700;color:#35454b}nav a:hover{color:var(--green)}.nav-cta{background:var(--dark);padding:16px 20px;color:white;font-weight:700;font-size:12px}.nav-cta span{padding-left:18px;color:var(--green-light)}.menu-toggle{display:none;border:0;background:none;font-size:30px;cursor:pointer}.hero{min-height:685px;position:relative;background:var(--dark);color:white;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 34%;background:linear-gradient(90deg,#112d36b8,#112d3633),url('arquitectura.jpg') center/cover no-repeat;filter:grayscale(1)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0a232d 0%,#0a232df5 35%,#0a232dc2 59%,#0a232d18 100%)}.hero-content{position:relative;z-index:1;padding-top:100px;padding-bottom:48px}.eyebrow,.section-kicker{font-size:11px;font-weight:800;letter-spacing:2.5px}.eyebrow{color:#d5eee7}.line{display:inline-block;width:27px;height:2px;vertical-align:middle;margin-right:12px;background:var(--green-light)}h1{font-size:clamp(46px,5.8vw,79px);letter-spacing:-3.7px;line-height:1.13;font-weight:800;margin:33px 0 25px}h1 em{font-style:normal;color:#9ed7c9}.hero-description{max-width:490px;color:#ccdadb;font-size:16px;line-height:1.85}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid transparent;padding:17px 23px;font-size:13px;font-weight:800;cursor:pointer;transition:transform .15s,background .2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--green);color:white}.primary:hover{background:#2a9d88}.light-outline{color:white;border-color:#82979a;background:transparent}.hero-foot{display:flex;gap:50px;margin-top:75px}.hero-foot div{display:flex;flex-direction:column;border-left:2px solid #4c827d;padding-left:16px}.hero-foot b{font-size:25px;font-weight:800}.hero-foot small{color:#c6d3d0;font-size:11px;margin-top:4px}.hero-side{position:absolute;right:25px;bottom:40px;writing-mode:vertical-rl;z-index:2;font-size:10px;letter-spacing:2px;color:#c6d7d7}.section-kicker{color:var(--green);margin-bottom:23px}h2{font-size:clamp(33px,3.8vw,49px);line-height:1.18;letter-spacing:-2.2px;margin-bottom:24px}h2 span{color:var(--green)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.mini-rule{width:55px;height:3px;background:var(--green);margin:35px 0}.about-grid p{max-width:490px;color:#68767b;font-size:15px;line-height:1.85}.about-grid .lead{font-size:17px;color:#334c52;font-weight:600}.signature{display:flex;flex-direction:column;margin-top:40px;gap:6px}.signature span,.signature small{font-size:11px;color:#76888e}.signature b{font-size:17px}.about-feature{height:470px;position:relative}.about-feature img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.feature-tag{position:absolute;right:-20px;bottom:25px;background:var(--green);color:white;width:205px;padding:23px}.feature-tag b,.feature-tag span{display:block}.feature-tag b{font-size:19px}.feature-tag span{font-size:12px;margin-top:7px;color:#d9f4ec}.services{background:var(--cream)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:46px}.section-top p{max-width:335px;font-size:14px;line-height:1.8;color:#78898d}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service{padding:28px;background:#fff;min-height:340px;position:relative;display:flex;flex-direction:column;border-bottom:3px solid transparent;transition:.2s}.service:hover{border-color:var(--green);transform:translateY(-3px)}.service-number{align-self:flex-end;font-size:12px;font-weight:800;color:#b1bfbd}.service-icon{height:100px;display:flex;align-items:center;font-size:57px;color:var(--green);font-weight:300}.service h3{font-size:20px;letter-spacing:-.6px;margin-bottom:11px}.service p{color:#748186;line-height:1.7;font-size:13px}.service a{margin-top:auto;color:var(--green);font-weight:800;font-size:12px}.mission{display:grid;grid-template-columns:1fr 1fr;gap:75px}.mission-item{border-top:1px solid var(--line);padding-top:30px}.mission h3{font-size:31px}.mission p{color:#60757b;line-height:1.9;font-size:15px}.projects{background:#102c33;color:white}.projects .section-top p{color:#aec0c2}.projects h2 span{color:#92cdbf}.filter-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:28px 0}.filters{display:flex;flex-wrap:wrap;gap:8px}.filter{border:1px solid #49666d;background:transparent;color:#c8d4d4;padding:10px 14px;cursor:pointer;font-weight:700;font-size:12px}.filter.active,.filter:hover{background:var(--green);border-color:var(--green);color:white}#count{color:#aac1c1;font-size:12px;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.project{background:#183943;min-height:278px;padding:26px;display:flex;flex-direction:column;border:1px solid #34545d}.project-top{display:flex;justify-content:space-between;align-items:center;gap:6px}.year{color:#a3d7c8;font-size:11px;letter-spacing:1.8px;font-weight:800}.project-symbol{font-size:22px;color:#7aaba5}.project h3{font-size:19px;line-height:1.4;margin:40px 0 18px}.project-place{margin:auto 0 0;color:#aebfc1;font-size:12px}.project-meta{font-size:11px;color:#d1dcdb;margin-top:13px;border-top:1px solid #41616a;padding-top:13px}.project-meta b{color:#a7daca}.projects-actions{display:flex;justify-content:center;align-items:center;gap:30px;flex-wrap:wrap;margin-top:36px}.dark-outline{color:white;border-color:#69898e;background:transparent}.pdf-link{font-size:13px;text-decoration:underline;color:#c3e1d9}.banner{background:linear-gradient(125deg,#176c62,#249984);color:white;padding:75px 0}.banner-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.banner h2{margin-bottom:0;font-size:39px}.banner .primary{background:white;color:#1a7668;white-space:nowrap}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact>div>p{line-height:1.9;color:#64767b;max-width:390px}.contact-detail{border-top:1px solid var(--line);padding:20px 0;display:flex;flex-direction:column;gap:7px}.contact-detail span{font-size:10px;letter-spacing:1.3px;color:var(--green);font-weight:800}.contact-detail b{font-size:15px}.contact-note{font-size:12px!important;color:#8b989b!important}.contact form{background:#f2f6f4;padding:34px;display:flex;flex-direction:column;gap:9px}.contact form h3{font-size:25px;margin-bottom:11px}.contact label{font-size:12px;font-weight:800;margin-top:7px}.contact input,.contact textarea,.contact select{width:100%;border:1px solid #d6e1de;background:white;padding:13px;color:var(--ink);outline-color:var(--green)}.contact form button{margin-top:9px}.form-help{font-size:11px;line-height:1.5;color:#738481;margin:5px 0 0}footer{background:#0b242b;color:white;padding-top:62px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:50px;padding-bottom:50px}.footer-grid>div{display:flex;flex-direction:column;align-items:start;gap:12px}.footer-brand{font-size:18px;letter-spacing:1px}.footer-brand b{color:#88c9b8}.footer-grid p{max-width:270px;font-size:12px;line-height:1.8;color:#a5babb;margin:0}.footer-grid span{font-size:10px;letter-spacing:2px;color:#9acfc2;font-weight:800}.footer-grid a{font-size:13px;color:#d5e0df}.footer-bottom{border-top:1px solid #28474d;display:flex;align-items:center;justify-content:space-between;padding-top:20px;padding-bottom:25px;color:#8fa9aa;font-size:11px}@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid,.contact{gap:45px}.site-header{gap:15px}nav{gap:14px}.nav-cta{display:none}}@media(max-width:700px){.wrap{padding-left:21px;padding-right:21px}.section{padding-top:65px;padding-bottom:65px}.site-header{height:72px}.brand{min-width:auto}.brand img{width:57px;height:51px}.brand span{font-size:9px}.brand strong{font-size:13px}.menu-toggle{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;padding:22px;background:white;flex-direction:column;align-items:start;box-shadow:0 12px 20px #0002}nav.open{display:flex}.hero{min-height:700px}.hero-content{padding-top:75px}.hero-photo{left:0;opacity:.45}.hero-shade{background:#09232bce}h1{letter-spacing:-2px}.hero-foot{gap:15px;flex-wrap:wrap;margin-top:60px}.hero-foot b{font-size:20px}.hero-foot small{font-size:10px}.hero-side{display:none}.about-grid,.mission,.contact{grid-template-columns:1fr;gap:35px}.about-feature{height:315px}.feature-tag{right:0}.section-top,.banner-inner{display:block}.section-top p{max-width:100%}.service-grid,.project-grid{grid-template-columns:1fr}.service{min-height:280px}.service-icon{height:75px}.project{min-height:240px}.project h3{margin:22px 0}.filters{gap:6px}.filter{padding:9px 11px}.filter-bar{display:block}#count{display:block;margin-top:18px}.banner h2{font-size:31px;margin-bottom:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:18px;flex-wrap:wrap}.contact form{padding:24px}}

.cl-project-image{width:100%;height:145px;object-fit:cover;margin-top:14px;border-radius:2px}.project:has(.cl-project-image) h3{margin-top:20px}.cl-trap{position:absolute!important;left:-9999px!important}.contact-detail a{color:var(--green);font-weight:700}#show-more[hidden]{display:none!important}.admin-bar .site-header{scroll-margin-top:32px}

/* v1.1.0 visual improvements */
.site-header{
  position: sticky;
  top: 0;
  box-shadow: 0 8px 24px rgba(16,44,51,.06);
}
.brand{
  gap: 14px;
  min-width: 300px;
}
.brand img{
  width: 86px;
  height: 66px;
}
.brand span{
  font-size: 13px;
}
.brand strong{
  font-size: 20px;
}
.header-actions{
  display:flex;
  align-items:center;
  gap:14px;
}
.header-phone{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
  color:#23424a;
  line-height:1.1;
}
.header-phone span{
  font-size:10px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:#6d8085;
  font-weight:800;
}
.header-phone b{
  font-size:14px;
  color:var(--green);
}
.hero-photo{
  background:linear-gradient(90deg,#112d36b8,#112d3633),url('arquitectura-clean.jpg') center/cover no-repeat;
  filter:grayscale(1) contrast(1.03);
}
.hero-description{
  max-width: 560px;
}
.hero-actions .solid-dark{
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
}
.hero-actions .solid-dark:hover{
  background: rgba(255,255,255,.15);
}
.hero-highlights{
  display:grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:54px;
  max-width:1040px;
}
.hero-highlight{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  backdrop-filter: blur(5px);
  padding:18px 18px 16px;
  border-radius: 4px;
}
.hero-highlight span{
  display:block;
  font-size:10px;
  letter-spacing:1.5px;
  color:#b9d8d3;
  font-weight:800;
  margin-bottom:8px;
}
.hero-highlight b{
  display:block;
  font-size:24px;
  font-weight:800;
  margin-bottom:4px;
}
.hero-highlight small{
  color:#d3dfde;
  font-size:11px;
}
.contact-card{
  border-color: rgba(95,205,180,.36);
  background: linear-gradient(160deg, rgba(49,146,126,.18), rgba(255,255,255,.05));
}
.contact-card b{
  font-size:22px;
}
.about-feature img{
  filter: grayscale(1) contrast(1.02);
}
.project{
  border-radius: 6px;
  overflow:hidden;
}
.project h3{
  min-height: 80px;
}
.banner-actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.banner-outline{
  background:transparent;
  color:white;
  border:1px solid rgba(255,255,255,.6);
}
.whatsapp-cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding:14px 20px;
  background:var(--green);
  color:white;
  font-weight:800;
}
.floating-whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:999;
  background:#1e8b78;
  color:#fff;
  font-weight:800;
  padding:14px 18px;
  border-radius:999px;
  box-shadow:0 12px 28px rgba(12,37,44,.22);
}
.floating-whatsapp:hover{
  background:#187765;
}
@media(max-width:1000px){
  .header-phone{display:none;}
  .hero-highlights{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:700px){
  .site-header{
    flex-wrap:wrap;
    height:auto;
    padding-top:10px;
    padding-bottom:10px;
  }
  .brand{
    min-width:auto;
    gap:8px;
  }
  .brand img{
    width:70px;
    height:52px;
  }
  .brand span{
    font-size:10px;
    letter-spacing:1.2px;
  }
  .brand strong{
    font-size:15px;
  }
  .header-actions{
    margin-left:auto;
  }
  .nav-cta{
    display:inline-flex;
    padding:12px 14px;
    font-size:11px;
  }
  nav{
    top:72px;
  }
  .hero-highlights{
    grid-template-columns:1fr;
    margin-top:34px;
  }
  .hero-highlight b,
  .contact-card b{
    font-size:19px;
  }
  .banner-actions{
    margin-top:22px;
  }
  .floating-whatsapp{
    right:14px;
    bottom:14px;
    padding:12px 15px;
    font-size:13px;
  }
}

.whatsapp-form-button{background:#1e8b78;color:#fff;width:100%;text-align:center;justify-content:center;margin-top:2px}.whatsapp-form-button:hover{background:#176c5d}
