:root{--ink:#3f5e60;--blue:#00216f;--sage:#b4c68b;--paper:#f8f8f3;--copy:#526769}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--copy);font-family:Poppins,Arial,sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}.nav{height:130px;display:flex;align-items:center;justify-content:space-between}.logo{width:120px;height:auto}.button{display:inline-block;border:0;border-radius:999px;padding:13px 24px;background:#547679;color:#fff;font-weight:600;font-size:14px}.hero{min-height:550px;position:relative;display:grid;align-items:center;overflow:hidden;background:var(--blue)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(#00216fe8 10%,#001770a8 48%,#00177205 100%)}.hero:after{content:"";position:absolute;inset:0;background:url('/assets/4298fbcc17b70fd4.jpg') center/cover;z-index:0}.hero .wrap{position:relative;z-index:1;color:#fff}.eyebrow{font-weight:800;font-size:clamp(30px,4vw,54px);line-height:1.1;text-transform:uppercase;max-width:760px;margin:0 0 24px}.hero h1{font-size:clamp(25px,3vw,43px);font-style:italic;margin:0 0 10px}.hero p{font-size:16px;font-weight:600;margin:0 0 22px}.intro{padding:135px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.intro h2,.success h2{color:var(--ink);font-size:clamp(34px,4vw,55px);line-height:1.05;margin:0 0 24px}.intro p{line-height:2;font-size:16px}.intro img{width:100%;height:360px;object-fit:cover}.statement{background:var(--ink);color:#fff;padding:100px 0}.statement .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.statement img{width:100%;height:360px;object-fit:cover}.statement h2{font-size:clamp(28px,3.5vw,48px);line-height:1.2;margin:0}.statement p{line-height:1.9}.success{padding:120px 0}.success>div>p{font-size:20px;margin:0 0 48px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;box-shadow:0 10px 35px #36504e16;transition:transform .2s}.card:hover{transform:translateY(-5px)}.card img{width:100%;height:260px;display:block;object-fit:cover}.card div{padding:22px}.card h3{color:var(--ink);font-size:17px;margin:0 0 10px}.card p{font-size:14px;margin:0}.contact{background:var(--sage);padding:110px 0}.contact h2{text-align:center;color:#fff;font-size:46px;margin:0 0 4px}.contact>div>p{text-align:center;color:#fff;margin:0 0 35px}.form{background:#fff;max-width:760px;margin:auto;border-radius:20px;padding:42px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.form label{font-size:13px;font-weight:600;color:#253c54}.form input,.form textarea{display:block;border:1px solid #e7e8e6;border-radius:28px;width:100%;margin-top:7px;padding:14px 17px;font:inherit}.form textarea{border-radius:18px;height:130px;resize:vertical}.form .wide{grid-column:1/-1}.form button{justify-self:start}.footer{background:var(--sage);border-top:1px solid #d2dfb2;padding:44px 0}.footer .wrap{border-top:1px solid #748675;padding-top:28px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#354a4b}.footer img{width:110px}.project-hero{background:var(--ink);color:#fff;padding:80px 0}.crumb{font-size:13px;opacity:.9}.project-hero h1{font-size:clamp(32px,5vw,56px);line-height:1.1;margin:24px 0 15px;text-transform:uppercase}.project-hero p{font-size:20px;margin:0}.project{padding:70px 0 110px}.project-cover{width:100%;max-height:560px;object-fit:cover;margin-bottom:45px}.project .lead{font-size:20px;line-height:1.9;max-width:940px}.project section{max-width:940px;margin:55px auto}.project section h2{font-size:29px;color:var(--ink);text-transform:uppercase;margin-bottom:18px}.project section p{line-height:1.9;font-size:16px}
@media(max-width:720px){.wrap{width:min(100% - 34px,1120px)}.nav{height:100px}.logo{width:95px}.hero{min-height:610px}.intro,.statement .wrap{grid-template-columns:1fr;gap:32px;padding-top:72px;padding-bottom:72px}.intro img,.statement img{height:260px}.success{padding:72px 0}.cards{grid-template-columns:1fr}.form{grid-template-columns:1fr;padding:28px}.footer .wrap{gap:20px}.project{padding-top:42px}.project-hero{padding:54px 0}.project .lead{font-size:17px}}

/* Hero: la foto queda debajo del velo azul, como en el diseño de Webflow. */
.hero{min-height:620px;background:#00216f url('/assets/4298fbcc17b70fd4.jpg') center/cover}
.hero:before{z-index:0;background:linear-gradient(180deg,rgba(0,31,111,.98) 5%,rgba(0,31,112,.85) 48%,rgba(0,23,114,.56) 100%)}
.hero:after{display:none}
.eyebrow{max-width:900px;margin-bottom:82px;font-size:clamp(34px,4.3vw,62px);letter-spacing:-.035em;line-height:1.04}
.hero h1{margin-bottom:22px;font-size:clamp(30px,3.8vw,56px);font-weight:800;letter-spacing:-.035em;line-height:1.05;text-transform:uppercase}
.hero p{margin-bottom:30px;font-size:18px;font-weight:700}
.project{max-width:1120px}.project-cover{display:block;width:min(100%,1008px);max-height:none;margin:0 auto 54px}.project .lead,.project section{max-width:1008px}.project-hero h1{font-size:54px}.project section h2{font-size:50.4px;line-height:1.3;margin-bottom:14px}.project section p{font-size:15.84px;line-height:1.8}.project .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:72px}.project .gallery img{display:block;width:100%;min-height:260px;object-fit:cover}.project .gallery img:only-child{grid-column:1/-1}
.project .content-image{display:block;width:min(100%,605px);max-height:560px;object-fit:cover;margin:48px auto 54px}
@media(max-width:720px){.project section h2{font-size:40px;line-height:1.3}.project .gallery{grid-template-columns:1fr;gap:20px;margin-top:48px}.project .gallery img{min-height:0}.eyebrow{margin-bottom:56px}}

/* La portada de Webflow usa un único H1 en dos bloques, no dos estilos separados. */
.hero{min-height:calc(100vh - 130px)}
.hero .wrap{width:68.28vw;margin-left:15.87vw;margin-right:0}.hero .hero-title{max-width:none;margin:0 0 16px;color:#fff;font-size:3.9vw;font-style:normal;font-weight:700;letter-spacing:normal;line-height:1.1;text-transform:uppercase}
.nav{width:90vw;max-width:none;height:11.5vw}.nav .logo{width:8vw}.nav .button{font-size:1.2vw;padding:.6vw 1.32vw}.hero .button{font-size:1.2vw;padding:1.08vw;border-radius:999px}
.hero-title em{font-style:italic}
.hero .hero-subtitle{margin:0 0 28px;color:#fff;font-size:clamp(17px,1.55vw,30px);font-weight:700;line-height:1.3}
@media(max-width:720px){.nav{width:min(100% - 34px,1120px);height:100px}.nav .logo{width:95px}.nav .button{font-size:14px;padding:13px 24px}.hero .button{font-size:14px;padding:13px 24px}.hero .wrap{width:min(100% - 34px,1120px);margin:auto}.hero{min-height:620px}.hero .hero-title{font-size:clamp(32px,8.2vw,42px);line-height:1.1}.hero .hero-subtitle{font-size:17px}.hero-title br+br{line-height:.55}}

/* Entradas equivalentes a las interacciones de Webflow. */
.hero-title,.hero-subtitle,.hero .button{animation:hero-enter .8s cubic-bezier(.22,1,.36,1) both}.hero-subtitle{animation-delay:.16s}.hero .button{animation-delay:.3s}.reveal{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal.delay-1{transition-delay:.12s}.reveal.delay-2{transition-delay:.24s}.card{transition:transform .25s ease,box-shadow .25s ease}.card:hover{box-shadow:0 18px 42px #36504e30}@keyframes hero-enter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
