.brand{min-width:235px}
.brand-logo{width:225px;height:62px;object-fit:contain;object-position:center;background:#fff}
.site-footer .brand{display:inline-flex;background:transparent!important;padding:0}
.site-footer .brand-logo{width:230px;height:86px;object-fit:contain;background:transparent!important}
.work-btn{margin-top:10px!important;color:#fff!important;width:max-content}
.service-box-photo{position:relative;overflow:hidden;padding:0;color:#fff}
.service-box-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.service-box-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,30,23,.92),rgba(6,30,23,.12))}
.service-box-photo>div{position:absolute;z-index:2;left:28px;right:28px;bottom:24px}
.service-box-photo p{color:#e1ece7}
.site-header{position:sticky;top:0;z-index:1000;box-shadow:0 5px 24px rgba(13,45,36,.07)}
html{scroll-padding-top:100px}
.home-hero:before{background-image:url('../images/1.png');background-position:center}
.home-hero:after{background:linear-gradient(90deg,rgba(5,28,22,.86),rgba(7,37,30,.55) 52%,rgba(7,37,30,.04) 88%)}
.hero-content h1 em{color:var(--green)}
.intro-section{padding:110px 0 120px}
.intro-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}
.intro-copy .lead{max-width:590px}
.intro-photo{position:relative;margin:0;min-height:570px;overflow:hidden;background:#edf3ee}
.intro-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.intro-photo:after{content:'';position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(transparent,rgba(7,37,30,.72))}
.intro-photo figcaption{position:absolute;z-index:2;left:28px;right:28px;bottom:24px;color:#fff;font-size:12px;font-weight:600}
.sector-heading{max-width:820px;margin-bottom:48px}.sector-heading .lead{color:#bed0c8;max-width:680px}
.services-preview{padding-top:95px}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{position:relative;height:520px;overflow:hidden;color:#fff;background:var(--forest)}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.service-card:hover img{transform:scale(1.035)}
.service-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,30,23,.94) 0%,rgba(6,30,23,.48) 44%,rgba(6,30,23,.03) 76%)}
.service-card-content{position:absolute;z-index:2;left:30px;right:30px;bottom:28px}.service-card-content>span{font-size:9px;letter-spacing:1.5px;color:var(--green);font-weight:800}.service-card h3{font-size:25px;line-height:1.2;letter-spacing:-.7px;margin:10px 0 12px}.service-card p{font-size:12px;color:#dce7e2;margin:0}.service-card strong{font-weight:800}
.sector-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:transparent}
.sector-cards article{min-height:230px;padding:28px;background:#12382e;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;justify-content:flex-start;transition:.25s}
.sector-cards article:hover{background:#184438;transform:translateY(-4px);border-color:rgba(89,175,60,.55)}.sector-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:rgba(89,175,60,.14);margin-bottom:28px}.sector-icon svg{width:25px;height:25px;fill:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sector-cards strong{font-size:18px;line-height:1.3;margin-bottom:9px}.sector-cards p{font-size:11px;color:#aebfb8;margin:0;line-height:1.6}
.service-real-photo{box-shadow:0 24px 55px rgba(13,45,36,.13)}.service-real-photo img{object-position:center}
.technology-label{gap:6px}.technology-label:before{margin-right:6px}.technology-label strong{font-weight:800}
.service-card:nth-child(2) img{object-position:center}.service-hallway img{object-position:center 45%}
.captcha-field{margin-top:4px}.captcha-row{display:grid;grid-template-columns:190px 44px 1fr;gap:10px;align-items:center}.captcha-row img{width:190px;height:58px;border-radius:3px}.captcha-refresh{height:58px;border:1px solid #cfd9d1;background:#fff;color:var(--green-dark);font-size:24px;cursor:pointer}.captcha-refresh:hover{border-color:var(--green)}.captcha-row input{height:58px}.website-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-alert{display:none;margin:0 0 20px;padding:12px 14px;border-left:3px solid #bd3d3d;background:#fff3f3;color:#7b2222;font-size:11px}.form-alert.show{display:block}
.work-showcase{overflow:hidden}.work-showcase .section-heading>div{max-width:790px}.slider-controls{display:flex;gap:9px;flex:0 0 auto}
.slider-controls button{width:48px;height:48px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:20px;cursor:pointer;transition:.2s}
.slider-controls button:hover{background:var(--green);color:#fff;border-color:var(--green)}
.work-slider{overflow:hidden}.work-track{display:flex;gap:18px;transition:transform .55s cubic-bezier(.22,.61,.36,1)}
.work-slide{margin:0;flex:0 0 calc((100% - 36px)/3);height:500px;overflow:hidden;background:#edf2ee}
.work-slide img{width:100%;height:100%;object-fit:cover}
.slider-dots{display:flex;justify-content:center;gap:8px;margin-top:28px}.slider-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#cbd7cd;cursor:pointer}.slider-dots button.active{width:28px;border-radius:8px;background:var(--green)}
.location-line,.instagram-link{display:flex!important;align-items:center;gap:9px}.location-line svg,.instagram-link svg{width:18px;height:18px;flex:0 0 18px;stroke:#fff;fill:none;stroke-width:1.8}.location-line svg{fill:#fff;stroke:none}.instagram-link{margin:13px 0 4px;color:#fff!important;width:max-content}.instagram-link .fill-dot{fill:#fff;stroke:none}
.team-photo{min-height:620px;position:relative;overflow:hidden;background:#eef2ee}
.team-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.small-title{font-size:clamp(30px,3vw,43px)}
.method-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:0;border-top:1px solid var(--line)}
.method-list li{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:600}
.method-list span{color:var(--green);font-size:10px;font-weight:800}
@media(max-width:900px){.about-columns,.intro-feature{grid-template-columns:1fr}.team-photo{min-height:620px}.intro-photo{min-height:520px}.service-cards{grid-template-columns:1fr 1fr}.service-card:last-child{grid-column:1/-1;height:430px}.sector-cards{grid-template-columns:1fr 1fr}.work-slide{flex-basis:calc((100% - 18px)/2)}.site-header{position:sticky}}
@media(max-width:600px){.team-photo{min-height:520px}.intro-section{padding:74px 0 88px}.intro-photo{min-height:430px}.service-cards{grid-template-columns:1fr}.service-card,.service-card:last-child{grid-column:auto;height:460px}.sector-cards{grid-template-columns:1fr}.sector-cards article{min-height:190px}.work-showcase .section-heading{align-items:flex-end}.work-slide{flex-basis:86%;height:460px}.slider-controls button{width:42px;height:42px}.captcha-row{grid-template-columns:1fr 44px}.captcha-row input{grid-column:1/-1}.captcha-row img{width:100%;object-fit:cover}}
@media(max-width:600px){.brand{min-width:175px}.brand-logo{width:172px;height:50px}.site-footer .brand-logo{width:190px}.work-btn{font-size:11px!important}.home-hero:before{background-position:82% center}.home-hero:after{background:linear-gradient(90deg,rgba(5,28,22,.82),rgba(7,37,30,.42))}}

/* En mobile el acceso del encabezado se presenta únicamente como bandera. */
@media(max-width:600px){
  .header-contact{padding:0!important;min-width:44px!important;min-height:30px!important;background:transparent!important;box-shadow:none!important;border-radius:4px!important}
  .header-contact:hover{background:transparent!important;box-shadow:none!important;transform:none!important}
  .header-contact:after{content:''!important;display:block;width:44px;height:30px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 30'%3E%3Cdefs%3E%3CclipPath id='r'%3E%3Crect width='44' height='30' rx='3'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23r)'%3E%3Cpath fill='%23d52b1e' d='M0 0h44v10H0z'/%3E%3Cpath fill='%23fff' d='M0 10h44v10H0z'/%3E%3Cpath fill='%230038a8' d='M0 20h44v10H0z'/%3E%3Ccircle cx='22' cy='15' r='3.4' fill='%23fff' stroke='%231b7f3a' stroke-width='1'/%3E%3Ccircle cx='22' cy='15' r='1.15' fill='%23f2c94c'/%3E%3C/g%3E%3Crect x='.5' y='.5' width='43' height='29' rx='2.5' fill='none' stroke='%23cfd7d2'/%3E%3C/svg%3E")}
}

/* La bandera reemplaza al botón de CTA del navbar en todas las pantallas. */
.header-contact{font-size:0!important;padding:0!important;min-width:48px!important;min-height:32px!important;background:transparent!important;box-shadow:none!important;border-radius:4px!important}
.header-contact:hover{background:transparent!important;box-shadow:none!important;transform:none!important}
.header-contact:after{content:''!important;display:block;width:48px;height:32px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 32'%3E%3Cdefs%3E%3CclipPath id='r'%3E%3Crect width='48' height='32' rx='3'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23r)'%3E%3Cpath fill='%23d52b1e' d='M0 0h48v10.67H0z'/%3E%3Cpath fill='%23fff' d='M0 10.67h48v10.66H0z'/%3E%3Cpath fill='%230038a8' d='M0 21.33h48V32H0z'/%3E%3Ccircle cx='24' cy='16' r='3.6' fill='%23fff' stroke='%231b7f3a' stroke-width='1'/%3E%3Ccircle cx='24' cy='16' r='1.2' fill='%23f2c94c'/%3E%3C/g%3E%3Crect x='.5' y='.5' width='47' height='31' rx='2.5' fill='none' stroke='%23cfd7d2'/%3E%3C/svg%3E")}
@media(max-width:600px){.header-contact{min-width:44px!important;min-height:30px!important}.header-contact:after{width:44px;height:30px}}
