*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f2f0e8;color:#1b2e1e;font-family:Questrial,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.top{height:160px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(27,46,30,.18)}.logo{width:310px;height:130px}.logo img{object-fit:contain}.top nav{display:flex;gap:30px;font-size:11px;letter-spacing:.12em}.hero{min-height:710px;display:grid;grid-template-columns:1fr .82fr}.hero-copy{padding:12vh 7vw 9vh}.micro{font-size:10px;letter-spacing:.23em;margin:0 0 28px}.hero h1{font-size:clamp(62px,7.4vw,118px);font-weight:400;line-height:.88;letter-spacing:-.045em;margin:0}.hero h1 span{display:block;font-size:.28em;letter-spacing:.17em;margin-bottom:17px}.subtitle{letter-spacing:.28em;font-size:12px;margin:25px 0 38px}.lead{font-size:19px;line-height:1.55;max-width:600px}.cta{display:inline-flex;gap:35px;border-bottom:1px solid #1b2e1e;padding:18px 0 10px;margin-top:28px;font-size:11px;letter-spacing:.15em}.hero-photo{position:relative;min-height:620px}.hero-photo:before{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.7);z-index:1}.photo-tag{position:absolute;bottom:40px;left:40px;color:white;font-size:9px;letter-spacing:.2em;z-index:2}.intro{padding:130px 12vw;text-align:center}.line{height:1px;width:70px;background:#1b2e1e;margin:0 auto 35px}.intro h2,.service-title h2,.projects-head h2,.process h2,.contact h2{font-weight:400;letter-spacing:-.025em}.intro h2{font-size:clamp(40px,5vw,72px);line-height:1.04;margin:0 auto 34px;max-width:1100px}.bodycopy{max-width:690px;margin:auto;font-size:17px;line-height:1.65}.services{background:#d9dacb;padding:110px 7vw}.service-title{display:grid;grid-template-columns:.7fr 1.3fr}.service-title h2{font-size:58px;margin:0 0 65px}.service-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #1b2e1e}.service-grid article{padding:30px 8vw 60px 0;position:relative}.service-grid article+article{border-left:1px solid rgba(27,46,30,.3);padding-left:5vw}.service-grid span{font-size:10px;letter-spacing:.2em}.service-grid h3{font-size:30px;font-weight:400;margin:55px 0 15px}.service-grid p{max-width:420px;line-height:1.6}.projects{padding:120px 7vw}.projects-head{display:grid;grid-template-columns:.55fr 1fr .7fr;align-items:end;margin-bottom:75px}.projects-head h2{font-size:65px;line-height:.95;margin:0}.projects-head>p:last-child{line-height:1.5}.project{display:grid;grid-template-columns:1.45fr .7fr;grid-template-rows:470px auto;gap:18px;margin-bottom:100px}.big-photo{grid-row:1}.small-photo{grid-row:1}.project-info{grid-column:1/3;display:grid;grid-template-columns:.45fr 1fr 1fr;align-items:center;border-top:1px solid rgba(27,46,30,.35);padding-top:20px}.project-info span{font-size:9px;letter-spacing:.18em}.project-info h3{font-size:30px;font-weight:400;letter-spacing:.1em;margin:0}.project-info p{margin:0}.project-b{grid-template-columns:.7fr 1.45fr}.project-b .big-photo{grid-column:2}.project-b .small-photo{grid-column:1;grid-row:1}.process{background:#1b2e1e;color:#f2f0e8;padding:120px 7vw}.process h2{font-size:68px;line-height:1;margin:0 0 75px}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(242,240,232,.45)}.steps article{padding:28px 28px 15px 0}.steps b{font-size:10px;letter-spacing:.18em}.steps h3{font-weight:400;font-size:23px;margin:55px 0 12px}.steps p{font-size:14px;line-height:1.55;opacity:.8}.contact{padding:120px 7vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;background:#e5e1d4}.contact h2{font-size:65px;line-height:.98;margin:0 0 30px}.contact-copy>p:last-child{font-size:17px;line-height:1.6;max-width:450px}form{border-top:1px solid #1b2e1e}form>label{display:block;padding:25px 0 12px;border-bottom:1px solid rgba(27,46,30,.35);font-size:10px;letter-spacing:.16em}input[type=text]{width:100%;border:0;background:transparent;outline:0;font:20px Questrial;color:#1b2e1e;padding:13px 0 5px}input::placeholder{color:rgba(27,46,30,.45)}fieldset{border:0;margin:0;padding:28px 0;border-bottom:1px solid rgba(27,46,30,.35)}legend{font-size:10px;letter-spacing:.16em;margin-bottom:18px}.radio{display:inline-flex;align-items:center;margin-right:28px;font-size:15px;letter-spacing:0}.radio input{accent-color:#1b2e1e;margin-right:8px}button{width:100%;margin-top:30px;padding:20px 0;background:#1b2e1e;color:#f2f0e8;border:0;font:11px Questrial;letter-spacing:.16em;cursor:pointer;display:flex;justify-content:space-between}button span{padding-right:20px}button:hover{opacity:.9}.note{font-size:11px;opacity:.65;line-height:1.4}footer{height:125px;padding:20px 7vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:9px;letter-spacing:.18em}footer img{width:105px;height:85px;object-fit:contain}footer p:nth-child(2){text-align:center}footer p:last-child{text-align:right}@media(max-width:800px){.top{height:132px}.top nav{display:none}.logo{width:225px;height:105px}.hero{grid-template-columns:1fr}.hero-copy{padding:10vh 7vw 8vh}.hero-photo{min-height:500px}.intro{padding:90px 7vw}.service-title{display:block}.service-title h2,.projects-head h2,.process h2,.contact h2{font-size:44px}.service-grid{grid-template-columns:1fr}.service-grid article+article{border-left:0;border-top:1px solid rgba(27,46,30,.3);padding-left:0}.projects-head{display:block}.projects-head>p:last-child{margin-top:25px}.project,.project-b{grid-template-columns:1fr 1fr;grid-template-rows:390px auto}.project-b .big-photo{grid-column:2}.project-info{grid-template-columns:1fr;gap:10px}.steps{grid-template-columns:1fr 1fr}.contact{grid-template-columns:1fr;gap:60px}.radio{display:flex;margin-bottom:15px}footer{grid-template-columns:1fr 1fr;height:auto}footer p:nth-child(2){display:none}}
/* ÁLAMO — sistema visual */
:root{
  --alamo-green:#1B2E1E;
  --alamo-ivory:#F2F0E8;
  --alamo-sage:#D9DACB;
  --alamo-warm:#E5E1D4;
}
body,button,input,fieldset,label{
  font-family:'Questrial',Arial,sans-serif;
}
button,.cta,.top nav a{
  text-transform:uppercase;
}

/* Header logo - final enlarged version */
.top{height:175px}
.logo{width:440px;height:155px;display:flex;align-items:center}
.logo img{width:100%;height:100%;object-fit:contain;object-position:left center}
@media(max-width:800px){.top{height:140px}.logo{width:290px;height:122px}}

/* Portada: primero mensaje, luego imagen */
.hero-after-intro{
  padding:0 7vw 110px;
}
.hero-after-intro .hero-photo{
  min-height:620px;
  height:68vh;
  max-height:760px;
  position:relative;
  overflow:hidden;
}
.hero-after-intro .hero-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width:800px){
  .hero-after-intro{padding:0 0 75px}
  .hero-after-intro .hero-photo{min-height:460px;height:58vh}
}

/* Ajustes finales solicitados */
.hero-after-intro{
  padding:0 18vw 100px;
}
.hero-after-intro .hero-photo{
  min-height:0;
  height:390px;
  max-height:390px;
}
.project-info{
  grid-template-columns:1fr 1fr;
}
.project-info h3{
  grid-column:1;
}
.project-info p{
  grid-column:2;
}
footer{
  grid-template-columns:1fr 1fr;
}
footer p:nth-child(2){
  text-align:left;
}
footer p:last-child{
  text-align:right;
}
@media(max-width:800px){
  .hero-after-intro{
    padding:0 7vw 70px;
  }
  .hero-after-intro .hero-photo{
    min-height:0;
    height:260px;
    max-height:260px;
  }
  .project-info{
    grid-template-columns:1fr;
  }
  .project-info h3,.project-info p{
    grid-column:1;
  }
}

/* Proyectos: nombre y tipo por encima de las fotografías */
.project{
  grid-template-rows:auto 470px;
}
.project .project-info{
  grid-column:1 / 3;
  grid-row:1;
  margin-bottom:10px;
  border-top:1px solid rgba(27,46,30,.35);
  padding-top:20px;
}
.project .big-photo,
.project .small-photo{
  grid-row:2;
}
.project-b .small-photo{
  grid-row:2;
}
@media(max-width:800px){
  .project,.project-b{
    grid-template-rows:auto 390px;
  }
  .project .project-info{
    grid-column:1 / 3;
    grid-row:1;
  }
  .project .big-photo,
  .project .small-photo,
  .project-b .small-photo{
    grid-row:2;
  }
}

/* Corrección espaciado botón WhatsApp */
#sendWhatsapp {
  word-spacing: 0.22em;
  white-space: nowrap;
}

/* Corrección real: aire del texto respecto del borde del botón */
#sendWhatsapp {
  box-sizing: border-box;
  padding-left: 20px;
  padding-right: 0;
  word-spacing: normal;
}
