:root{--navy:#112c43;--ink:#17334a;--blue:#1669a6;--blue-dark:#0b507f;--red:#ed3237;--cream:#f5f7f7;--line:#dbe4e9;--muted:#617585;--white:#fff;--shadow:0 20px 60px rgba(17,44,67,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(3.4rem,7vw,6.8rem)}h2{font-size:clamp(2.35rem,4.1vw,4.4rem)}h3{font-size:1.35rem}p{margin-bottom:1.1rem}.shell{width:min(100% - 64px,1240px);margin-inline:auto}.skip-link{position:absolute;z-index:1000;top:-80px;left:12px;padding:9px 14px;background:#fff}.skip-link:focus{top:10px}.site-header{position:relative;z-index:50;background:var(--white);border-bottom:1px solid #edf0f3}.header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:38px}.brand{display:flex;align-items:center;flex:0 0 auto;max-width:240px}.brand img,.brand .custom-logo{width:100%;max-height:75px;object-fit:contain;object-position:left center}.site-nav{display:flex;align-items:center;gap:clamp(18px,2vw,32px);font-size:.91rem;font-weight:700}.site-nav a{text-decoration:none;transition:color .2s}.site-nav a:hover,.site-nav a:focus-visible{color:var(--blue)}.site-nav .nav-contact{padding:12px 18px;border:1px solid var(--blue);color:var(--blue);white-space:nowrap}.site-nav .nav-contact:hover{background:var(--blue);color:#fff}.nav-contact span{margin-left:18px}.menu-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:8px}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:6px 0}.hero{position:relative;isolation:isolate;min-height:680px;background:#203849 var(--hero-image) center 52%/cover no-repeat;color:#fff;display:flex;flex-direction:column;justify-content:center}.hero-shade{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(8,31,49,.94) 0%,rgba(8,31,49,.78) 48%,rgba(8,31,49,.25) 100%),linear-gradient(0deg,rgba(8,31,49,.45),transparent 45%)}.hero-content{position:relative;z-index:1;padding-block:115px 100px}.eyebrow{color:var(--blue);font-size:.77rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:27px}.hero-eyebrow{color:#b8dfff;display:flex;align-items:center;gap:14px}.eyebrow-line{width:30px;height:1px;background:var(--red)}.hero h1{max-width:790px;margin:0 0 25px;font-weight:800;text-wrap:balance}.hero-lead{max-width:630px;font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.6;color:#e3ecf2}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:37px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:54px;padding:13px 20px;text-decoration:none;font-size:.88rem;font-weight:800;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#fff;color:var(--navy)}.button-light:hover{background:#e6f1f8}.button-ghost{border:1px solid rgba(255,255,255,.7);color:#fff}.button-ghost:hover{background:rgba(255,255,255,.12)}.button-outline{border:1px solid var(--blue);color:var(--blue);margin-top:35px}.button-outline:hover{background:var(--blue);color:#fff}.hero-caption{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;justify-content:space-between;gap:20px;color:#d8e4eb;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.intro-strip{background:var(--navy);color:#fff}.intro-strip-inner{min-height:75px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.77rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.intro-strip span:not(:last-child){padding-right:15px;border-right:1px solid #47677b}.section{padding:125px 0}.about-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(55px,7vw,115px);align-items:center}.about-image-wrap{position:relative;min-height:590px;background:#d6e0e5}.about-image-wrap img{width:100%;height:590px;object-fit:cover;object-position:center}.image-tag{position:absolute;left:0;bottom:0;padding:13px 20px;background:#fff;color:var(--navy);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.about-copy h2{max-width:600px;margin-bottom:27px}.section-lead{font-size:1.06rem;color:var(--muted);line-height:1.8}.about-note{display:flex;align-items:center;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin:38px 0 28px}.about-note strong{font-size:1.2rem;white-space:nowrap}.about-note span{font-size:.9rem;color:var(--muted);line-height:1.4}.text-link{display:inline-flex;gap:35px;text-decoration:none;color:var(--blue);font-weight:800;border-bottom:1px solid var(--blue);padding-bottom:6px}.text-link:hover{color:var(--red);border-color:var(--red)}.services{background:var(--cream)}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:47px}.section-head h2{max-width:720px;margin:0}.section-head>p{max-width:335px;margin:0 0 6px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{position:relative;background:#fff;min-height:255px;padding:30px 30px 62px}.card-number{display:block;color:var(--blue);font-size:.83rem;font-weight:800;margin-bottom:29px}.service-card h3{max-width:240px;margin-bottom:15px}.service-card p{color:var(--muted);font-size:.94rem;line-height:1.6;margin:0}.card-arrow{position:absolute;right:28px;bottom:23px;font-size:1.3rem;color:var(--blue)}.products{background:#fff}.products-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(55px,8vw,125px);align-items:center}.products h2{max-width:550px}.products .section-lead{max-width:490px;margin-bottom:28px}.product-list{padding:0;margin:0;list-style:none;border-top:1px solid var(--line)}.product-list li{position:relative;padding:23px 0 23px 35px;border-bottom:1px solid var(--line);font-size:1.02rem;font-weight:700}.product-list li:before{content:'↗';position:absolute;left:0;color:var(--blue)}.gallery{background:#eaf0f3}.gallery .section-head{margin-bottom:37px}.instagram-feed-wrap{min-height:260px}.instagram-feed-wrap #sb_instagram{padding-bottom:0!important}.instagram-feed-wrap #sb_instagram #sbi_images{padding:0!important}.instagram-feed-wrap #sb_instagram .sbi_item{padding:4px!important}.instagram-feed-wrap #sb_instagram .sbi_photo{border-radius:0!important}.feed-pending{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:8px;min-height:270px;padding:40px;background:#fff;border:1px dashed #aac0cf}.feed-pending strong{font-size:1.25rem}.feed-pending span{color:var(--muted)}.contact{background:var(--navy);color:#fff;padding-bottom:95px}.contact .eyebrow{color:#8cc2e4}.contact .section-head>p{color:#d1dce3}.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1px;background:#31536b}.contact-form-panel,.contact-details{background:#153950;padding:clamp(28px,4vw,55px)}.contact-form-panel>p{color:#c6d7e1}.contact-form-panel h3,.contact-details h3{margin-bottom:13px;font-size:1.45rem}.contact-form-panel a{color:#fff}.contact-form-panel .wpcf7 form{margin-top:28px}.contact-form-panel .wpcf7 form p{margin:0 0 19px;color:#dce8ee}.contact-form-panel .wpcf7 form label{display:block}.contact-form-panel .wpcf7 input:not([type=submit]),.contact-form-panel .wpcf7 textarea{display:block;width:100%;margin-top:6px;padding:12px 14px;min-height:48px;border:1px solid #608097;border-radius:0;background:#fff;color:var(--navy)}.contact-form-panel .wpcf7 textarea{min-height:138px;resize:vertical}.contact-form-panel .wpcf7 input[type=submit]{padding:13px 28px;min-height:50px;border:0;background:var(--red);color:#fff;font-weight:800;cursor:pointer}.contact-form-panel .wpcf7 input[type=submit]:hover{background:#cc232a}.contact-form-panel .wpcf7-response-output{color:#fff}.detail-link,.address{display:flex;flex-direction:column;gap:3px;padding:21px 0;border-bottom:1px solid #3d5c70;text-decoration:none}.detail-link span,.address span{color:#a7c6d8;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.detail-link strong,.address strong{font-size:1.07rem;line-height:1.45;overflow-wrap:anywhere}.detail-link:hover strong{color:#95d2f3}.map-wrap{position:relative;margin-top:1px;background:#cfdde5}.map-wrap iframe{display:block;border:0;width:100%;height:330px}.map-wrap a{position:absolute;right:15px;bottom:15px;padding:8px 13px;background:#fff;color:var(--navy);font-size:.78rem;font-weight:800;text-decoration:none;box-shadow:var(--shadow)}.site-footer{background:#0b2335;color:#d2dfe6}.footer-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.78rem}.footer-inner div{display:flex;flex-direction:column}.footer-inner strong{font-size:.9rem;color:#fff}.footer-inner p{margin:0}.footer-inner a{text-decoration:none;color:#fff}.floating-whatsapp{position:fixed;z-index:40;right:23px;bottom:23px;display:flex;align-items:center;gap:9px;padding:10px 15px;border-radius:100px;background:#1caa60;color:#fff;box-shadow:0 10px 24px #0b3e2855;font-weight:800;font-size:.83rem;text-decoration:none}.floating-whatsapp:hover{background:#10884a}.floating-whatsapp svg{width:23px;height:23px}.simple-page{padding-block:90px;min-height:65vh}.simple-page h1{font-size:clamp(2.4rem,5vw,4rem)}:focus-visible{outline:3px solid #f44;outline-offset:3px}
@media(max-width:1050px){.site-nav{gap:15px;font-size:.83rem}.brand{max-width:190px}.hero{min-height:620px}.service-card{padding:25px 25px 60px}}
@media(max-width:800px){.shell{width:min(100% - 38px,1240px)}.header-inner{min-height:76px}.brand{max-width:200px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;min-height:calc(100vh - 76px);padding:35px 19px;background:#fff;flex-direction:column;align-items:stretch;gap:0;font-size:1.1rem}.site-nav.is-open{display:flex}.site-nav a{padding:16px 10px;border-bottom:1px solid var(--line)}.site-nav .nav-contact{margin-top:20px;text-align:center}.hero{min-height:600px}.hero-content{padding-block:95px}.hero-caption{display:none}.intro-strip-inner{flex-wrap:wrap;justify-content:center;padding-block:18px}.intro-strip span{padding:3px 8px}.section{padding:85px 0}.about-grid,.products-grid,.contact-grid{grid-template-columns:1fr;gap:50px}.about-image-wrap,.about-image-wrap img{min-height:0;height:420px}.section-head{align-items:start;flex-direction:column;gap:17px}.section-head>p{max-width:580px}.service-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:1px}.footer-inner{flex-wrap:wrap;padding-block:24px}}
@media(max-width:560px){.shell{width:min(100% - 32px,1240px)}.hero{min-height:630px;background-position:60% center}.hero-shade{background:linear-gradient(90deg,rgba(8,31,49,.93),rgba(8,31,49,.72))}.hero h1{font-size:clamp(3.1rem,13vw,4.5rem)}.hero-lead{font-size:1rem}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.intro-strip-inner{justify-content:flex-start;font-size:.7rem}.intro-strip span:not(:last-child){border:0}.about-image-wrap,.about-image-wrap img{height:300px}.about-note{align-items:flex-start;flex-direction:column;gap:7px}.service-grid{grid-template-columns:1fr}.service-card{min-height:220px}.products-grid{gap:35px}.contact-form-panel,.contact-details{padding:25px}.map-wrap iframe{height:270px}.footer-inner{flex-direction:column;align-items:flex-start}.floating-whatsapp span{display:none}.floating-whatsapp{width:50px;height:50px;padding:0;justify-content:center;right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.site-nav a{transition:none}}
.hero-caption{z-index:1}
.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 42px}
.featured-grid figure{position:relative;margin:0;overflow:hidden;background:#d5e3eb;aspect-ratio:4/3}
.featured-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.featured-grid figure:hover img{transform:scale(1.035)}
.featured-grid figcaption{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:3px;padding:35px 19px 17px;background:linear-gradient(transparent,rgba(10,37,58,.76));color:#fff}
.featured-grid figcaption strong{font-size:1.04rem}.featured-grid figcaption span{font-size:.85rem;opacity:.9}
.video-highlight{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,42%);align-items:center;gap:32px;padding:30px;background:#eaf2f5;margin-bottom:50px}
.video-highlight h3{font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.12;margin:10px 0}.video-highlight p:last-child{max-width:37ch;color:#4e6371}
.video-highlight video{display:block;width:100%;max-height:420px;background:#112e42;object-fit:cover}
.latest-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 18px}
.latest-head h3{font-size:clamp(1.35rem,2vw,1.8rem);margin:0}.latest-head span{color:#537184;font-size:.9rem}
@media(max-width:760px){.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-highlight{grid-template-columns:1fr}}
@media(max-width:520px){.featured-grid{grid-template-columns:1fr}.featured-grid figure{aspect-ratio:1.35}.video-highlight{padding:20px;gap:18px}.latest-head{align-items:start;flex-direction:column;gap:4px}}
.hero{background:#203849}
.hero-media{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 47%}
.hero-shade{z-index:1}
.hero-content,.hero-caption{z-index:2}
@media(max-width:560px){.hero-media img{object-position:center center}.hero-shade{background:linear-gradient(90deg,rgba(8,31,49,.87),rgba(8,31,49,.62))}}

/* Más profundidad en empresa, servicios y productos, sin sacrificar contraste. */
.about{position:relative;overflow:hidden;background:radial-gradient(circle at 5% 82%,#dcecf3 0,transparent 34%),linear-gradient(120deg,#f5f9fb 0%,#fff 62%)}
.about::before{content:"";position:absolute;right:-140px;top:-160px;width:460px;height:460px;border:1px solid rgba(22,105,166,.13);border-radius:50%;pointer-events:none}
.about-image-wrap{box-shadow:25px 25px 0 #e1edf3,0 25px 45px rgba(17,44,67,.12);overflow:hidden}
.about-image-wrap img{transition:transform .8s ease}
.about-image-wrap:hover img{transform:scale(1.035)}
.about-copy{position:relative}
.about-copy .eyebrow::before,.services .eyebrow::before,.products .eyebrow::before{content:"";display:inline-block;width:26px;height:2px;margin:0 12px 4px 0;background:var(--red)}
.about-note{border-top-color:#b9d4e2;border-bottom-color:#b9d4e2}

.services{position:relative;isolation:isolate;background:#eaf1f4}
.services::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:440px;background:linear-gradient(90deg,rgba(8,31,49,.94),rgba(8,31,49,.78) 52%,rgba(8,31,49,.55)),url('planta-elevacion.jpg') center 56%/cover no-repeat}
.services .section-head{min-height:210px;align-items:end;margin-bottom:64px}
.services .section-head h2,.services .section-head>p{color:#fff}
.services .eyebrow{color:#9cd5f7}
.services .section-head>p{color:#e6f0f5}
.service-grid{gap:12px;background:transparent;border:0}
.service-card{background:#e8f4f9;border:1px solid #c7e1ee;box-shadow:0 10px 24px rgba(17,44,67,.06);cursor:pointer;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease,background .28s ease,color .28s ease}
.service-card:hover{transform:translateY(-5px);background:#d5ebf5;border-color:#83bdda;box-shadow:0 22px 38px rgba(17,44,67,.15)}
.service-card:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.service-card[aria-pressed="true"],.service-card[aria-pressed="true"]:hover{background:#0d5279;border-color:#0d5279;color:#fff;box-shadow:0 24px 42px rgba(9,45,72,.26)}
.service-card[aria-pressed="true"] p{color:#e6f4fb}
.service-card[aria-pressed="true"] .card-number{color:#addcf2}
.service-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
.service-card:hover::before,.service-card[aria-pressed="true"]::before{transform:scaleX(1)}
.service-card[aria-pressed="true"]::before{background:#a9def5}
@media(hover:hover){
  .service-card:hover{background:#0d5279;border-color:#0d5279;color:#fff;box-shadow:0 24px 42px rgba(9,45,72,.26)}
  .service-card:hover p{color:#e6f4fb}
  .service-card:hover .card-number{color:#addcf2}
  .service-card:hover::before{background:#a9def5}
}

.products{position:relative;isolation:isolate;background:linear-gradient(125deg,#fbfaf5 0%,#f2f4ed 100%)}
.products::before{content:"";position:absolute;z-index:-1;inset:0 auto 0 0;width:54%;background:linear-gradient(90deg,rgba(251,250,245,.77),rgba(251,250,245,.95)),url('estanques.jpg') center 48%/cover no-repeat;pointer-events:none}
.products-grid{align-items:stretch}
.products-grid>div{align-self:center}
.product-list{display:flex;flex-direction:column;justify-content:center;min-height:390px;padding:28px 34px;border:1px solid #d8d8ca;background:linear-gradient(145deg,#fffdf7,#f2eee1);box-shadow:16px 16px 0 #e3e9e3}
.product-list li{color:var(--navy);border-bottom-color:#d9ddda}
.product-list li:first-child{border-top:1px solid #d9ddda}
.product-list li::before{content:"";top:calc(50% - 3px);width:7px;height:7px;border-radius:50%;background:var(--blue)}

@media(max-width:800px){.services::before{height:375px}.services .section-head{min-height:190px;margin-bottom:47px}.product-list{min-height:340px}.about-image-wrap{box-shadow:15px 15px 0 #e1edf3}}
@media(max-width:560px){.about::before{display:none}.about-image-wrap{box-shadow:10px 10px 0 #e1edf3}.services::before{height:410px;background-position:62% center}.services .section-head{min-height:225px;margin-bottom:38px}.services .section-head>p{max-width:32ch}.service-grid{gap:10px}.products::before{width:100%;height:380px;background:linear-gradient(180deg,rgba(251,250,245,.86),rgba(251,250,245,1)),url('estanques.jpg') center/cover no-repeat}.product-list{padding:18px 23px;min-height:310px;box-shadow:10px 10px 0 #e3e9e3}.product-list li{font-size:.94rem;padding-block:19px}}
@media(prefers-reduced-motion:no-preference){
  .motion-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
  .motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
  .motion-ready .service-card:nth-child(2),.motion-ready .service-card:nth-child(5){transition-delay:70ms}
  .motion-ready .service-card:nth-child(3),.motion-ready .service-card:nth-child(6){transition-delay:140ms}
}
@media(prefers-reduced-motion:reduce){.about-image-wrap img,.service-card,.service-card::before,.product-list li,.product-list li::before{transition:none}}
