:root{--navy:#1c3d58;--blue:#66a3c9;--green:#91bd72;--ink:#183247;--muted:#667987;--bg:#f4f8fa;--white:#fff;--line:#dce7ec;--shadow:0 22px 60px rgba(28,61,88,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.header{position:fixed;z-index:50;top:0;left:0;width:100%;transition:.25s;color:#fff}.header.scrolled{background:rgba(255,255,255,.96);box-shadow:0 5px 25px rgba(18,46,66,.08);color:var(--navy);backdrop-filter:blur(14px)}.nav-wrap{height:84px;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center}.brand-logo{display:block;width:auto;height:48px;max-width:190px}.nav{display:flex;gap:30px;margin-left:auto;font-size:14px;font-weight:600}.nav a{opacity:.9}.nav a:hover{opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:0;border-radius:8px;background:var(--blue);color:#fff;font:700 14px Manrope;cursor:pointer;transition:.2s;box-shadow:0 10px 24px rgba(102,163,201,.24)}.btn:hover{transform:translateY(-2px);filter:brightness(.97)}.btn-small{min-height:44px;padding:0 18px}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.55);box-shadow:none}.btn-full{width:100%}.btn-green{background:var(--green);box-shadow:none}.menu-btn{display:none;margin-left:auto;background:none;border:0;color:inherit;font-size:24px}.hero{min-height:820px;position:relative;color:#fff;background:linear-gradient(90deg,#17364f 0%,rgba(28,61,88,.83) 45%,rgba(28,61,88,.2) 100%),url('https://images.unsplash.com/photo-1581578731548-c64695cc6952?auto=format&fit=crop&w=2200&q=88') center/cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.03))}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .75fr;gap:72px;align-items:center;padding-top:145px;padding-bottom:80px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--blue);margin-bottom:18px}.eyebrow.light{color:#cfe7f5}.hero h1{font-size:64px;line-height:1.03;letter-spacing:-.045em;margin:0 0 24px;max-width:750px}.hero h1 span{color:#b6d79f}.hero-copy>p{font-size:18px;line-height:1.75;max-width:690px;color:#e8f0f5}.hero-actions{display:flex;gap:12px;margin:34px 0}.hero-points{display:flex;flex-wrap:wrap;gap:18px;font-size:12px;font-weight:700;color:#e8f0f5}.hero-points span:before{content:'✓';color:#b6d79f;margin-right:7px}.quote-card{background:#fff;color:var(--ink);padding:30px;border-radius:16px;box-shadow:0 30px 70px rgba(0,0,0,.18)}.quote-head small{font-weight:800;color:var(--green);letter-spacing:.12em}.quote-head h2{font-size:27px;margin:7px 0}.quote-head p{font-size:13px;color:var(--muted);line-height:1.6}.quote-card form{display:grid;gap:12px;margin-top:18px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{font-size:11px;font-weight:800;color:var(--ink);display:grid;gap:6px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:7px;padding:12px 13px;font:500 13px Manrope;color:var(--ink);outline:none;background:#fbfdfe}input:focus,select:focus,textarea:focus{border-color:var(--blue)}textarea{resize:vertical}.form-note{font-size:10px;color:#80909a;text-align:center}.trust-strip{background:#fff;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}.trust-grid div{padding:0 24px;border-right:1px solid var(--line)}.trust-grid div:first-child{padding-left:0}.trust-grid div:last-child{border:0}.trust-grid strong,.trust-grid span{display:block}.trust-grid strong{font-size:13px}.trust-grid span{font-size:11px;color:var(--muted);margin-top:4px}.section{padding:105px 0}.services{background:var(--bg)}.section-heading{display:grid;grid-template-columns:1fr .6fr;gap:80px;align-items:end;margin-bottom:45px}.section-heading h2,.about h2,.contact h2{font-size:42px;line-height:1.15;letter-spacing:-.035em;margin:0}.section-heading>p{color:var(--muted);line-height:1.75;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 25px rgba(28,61,88,.05);transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-img{height:220px;background-position:center;background-size:cover}.img-warehouse{background-image:url('https://images.unsplash.com/photo-1553413077-190dd305871c?auto=format&fit=crop&w=900&q=82')}.img-office{background-image:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=900&q=82')}.img-home{background-image:url('https://images.unsplash.com/photo-1527515637462-cff94eecc1ac?auto=format&fit=crop&w=900&q=82')}.img-construction{background-image:url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=900&q=82')}.img-disinfection{background-image:url('https://images.unsplash.com/photo-1585421514738-01798e348b17?auto=format&fit=crop&w=900&q=82')}.img-garden{background-image:url('https://images.unsplash.com/photo-1416879595882-3373a0480b5b?auto=format&fit=crop&w=900&q=82')}.service-body{padding:25px}.service-body>span{font-size:11px;color:var(--blue);font-weight:800}.service-body h3{font-size:19px;margin:8px 0 10px}.service-body p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-visual{position:relative}.about-photo{height:600px;border-radius:12px;background:url('https://images.unsplash.com/photo-1581578949510-fa7315c4c350?auto=format&fit=crop&w=1200&q=85') center/cover}.floating-card{position:absolute;right:-25px;bottom:35px;background:var(--green);color:#fff;padding:28px 34px;border-radius:10px;box-shadow:var(--shadow)}.floating-card b,.floating-card span{display:block}.floating-card b{font-size:12px;letter-spacing:.16em;margin-bottom:8px}.floating-card span{font-size:18px;font-weight:700;line-height:1.4}.about-copy .lead{font-size:20px;font-weight:600;line-height:1.55}.about-copy>p:not(.lead){color:var(--muted);line-height:1.8}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0}.mission-grid div{padding:20px;background:var(--bg);border-left:3px solid var(--green)}.mission-grid b{font-size:13px}.mission-grid p{font-size:12px;color:var(--muted);line-height:1.65;margin:7px 0 0}.text-link{font-size:13px;font-weight:800;color:var(--blue)}.why{background:var(--navy);color:#fff}.center-heading{text-align:center;margin-bottom:50px}.center-heading h2{font-size:42px;line-height:1.2;margin:0}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14)}.why-card{background:var(--navy);padding:34px}.why-card b{color:var(--green);font-size:12px}.why-card h3{font-size:18px;margin:12px 0}.why-card p{font-size:13px;line-height:1.7;color:#cbd9e2;margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.step{border-top:1px solid var(--line);padding-top:25px}.step span{display:grid;place-items:center;width:42px;height:42px;background:#e8f2f7;color:var(--navy);border-radius:50%;font-weight:800}.step h3{font-size:17px}.step p{font-size:13px;color:var(--muted);line-height:1.65}.cta-band{padding:75px 0;background:linear-gradient(115deg,#234d69,#1c3d58);color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.cta-inner h2{font-size:38px;margin:0 0 10px}.cta-inner p{color:#d5e2e9;margin:0}.contact{background:#f8fbfc}.contact-grid{display:grid;grid-template-columns:1fr .7fr;gap:100px;align-items:center}.contact-copy>p{color:var(--muted);line-height:1.75}.contact-list{display:grid;gap:20px;margin-top:32px}.contact-list a,.contact-list div{display:grid;gap:4px}.contact-list small{font-size:10px;color:var(--blue);font-weight:800;letter-spacing:.12em}.contact-list b{font-size:15px}.contact-panel{background:#fff;padding:40px;border-radius:14px;box-shadow:var(--shadow);display:grid;gap:12px}.contact-panel h3{font-size:24px;margin:0}.contact-panel p{font-size:13px;color:var(--muted)}.contact-panel>a:not(.btn){font-size:14px;font-weight:700;color:var(--blue)}footer{background:#102c40;color:#fff;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:70px}.brand-footer{margin-bottom:18px}.footer-grid p{color:#9eb1bd;font-size:13px;max-width:340px;line-height:1.7}.footer-grid>div:not(:first-child){display:grid;align-content:start;gap:10px;font-size:12px;color:#b9c7d0}.footer-grid b{color:#fff;margin-bottom:8px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;font-size:10px;color:#8198a7}.whatsapp{position:fixed;z-index:40;right:24px;bottom:24px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:12px;font-weight:800;box-shadow:0 10px 30px rgba(0,0,0,.2)}.whatsapp img{width:30px;height:30px;display:block;object-fit:contain}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav,.desktop-cta{display:none}.menu-btn{display:block}.header.open{background:#fff;color:var(--navy)}.header.open .nav{display:grid;position:absolute;top:84px;left:20px;right:20px;background:#fff;color:var(--navy);padding:25px;box-shadow:var(--shadow);border-radius:10px}.hero-grid{grid-template-columns:1fr;padding-top:145px}.hero h1{font-size:50px}.quote-card{max-width:600px}.trust-grid{grid-template-columns:1fr 1fr;gap:22px}.trust-grid div{border:0;padding:0}.service-grid{grid-template-columns:1fr 1fr}.about-grid,.contact-grid{grid-template-columns:1fr;gap:55px}.about-photo{height:480px}.floating-card{right:20px}.why-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.section-heading{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:72px}.header.open .nav{top:72px}.hero{min-height:auto}.hero-grid{padding-top:120px;gap:40px}.hero h1{font-size:40px}.hero-copy>p{font-size:15px}.hero-actions{display:grid}.hero-points{display:grid}.quote-card{padding:22px}.field-row{grid-template-columns:1fr}.trust-grid,.service-grid,.why-grid,.steps,.mission-grid,.footer-grid{grid-template-columns:1fr}.section{padding:75px 0}.section-heading h2,.about h2,.contact h2,.center-heading h2{font-size:34px}.service-img{height:210px}.about-photo{height:420px}.floating-card{left:18px;right:18px;bottom:18px}.cta-inner{display:grid}.cta-inner h2{font-size:32px}.contact-panel{padding:28px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:grid;gap:8px}.whatsapp{right:16px;bottom:16px}}

@media(max-width:600px){.brand-logo{height:40px;max-width:160px}}

/* Header logo: destacado al inicio y compacto al hacer scroll */
.header .nav-wrap{transition:height .28s ease}
.header .brand-logo{height:78px;max-width:310px;transition:height .28s ease,max-width .28s ease,transform .28s ease}
.header.scrolled .nav-wrap{height:72px}
.header.scrolled .brand-logo{height:48px;max-width:190px}
@media(max-width:900px){
  .header .brand-logo{height:64px;max-width:250px}
  .header.scrolled .brand-logo{height:44px;max-width:175px}
}
@media(max-width:600px){
  .header .brand-logo{height:54px;max-width:215px}
  .header.scrolled .brand-logo{height:38px;max-width:150px}
  .header.scrolled .nav-wrap{height:64px}
}

/* WhatsApp flotante: el SVG ya incluye su propio fondo */
.whatsapp{
  width:60px;
  height:60px;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  display:block;
  transition:transform .2s ease, filter .2s ease;
}
.whatsapp img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));
}
.whatsapp:hover{transform:translateY(-3px) scale(1.04)}
@media(max-width:600px){.whatsapp{width:56px;height:56px}}

/* Service detail pages */
.service-body .service-link{display:inline-block;margin-top:18px;color:var(--blue);font-weight:800;text-decoration:none}.service-body .service-link:hover{transform:translateX(3px)}
.service-card{transition:transform .25s ease,box-shadow .25s ease}.service-card:hover{transform:translateY(-5px)}
.service-detail-hero{padding:180px 0 90px;background:linear-gradient(135deg,#102f45,#1c3d58 65%,#315f78);color:#fff}.service-detail-hero .eyebrow{color:#b9dc9d}.service-detail-hero h1{font-size:clamp(42px,6vw,76px);line-height:1.02;max-width:900px;margin:14px 0 22px}.service-detail-hero p{max-width:760px;font-size:19px;line-height:1.7;color:#d9e4eb}.service-detail-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.service-detail{background:#f4f8fa}.detail-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.detail-intro h2{font-size:42px;line-height:1.12;margin:10px 0 18px}.detail-intro p{color:#637381;line-height:1.8}.includes{display:grid;gap:14px}.include-item{background:#fff;border:1px solid #e2ebf0;border-radius:16px;padding:20px 22px;display:flex;gap:15px;align-items:flex-start}.include-item:before{content:'✓';flex:0 0 28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf6e7;color:#66934b;font-weight:900}.include-item b{display:block;color:#17364d;margin-bottom:4px}.include-item p{margin:0;color:#6a7882;line-height:1.55}.service-note{margin-top:28px;padding:22px;border-left:4px solid #91bd72;background:#fff;border-radius:0 14px 14px 0;color:#536774;line-height:1.65}.detail-cta{background:#fff}.detail-cta-box{border-radius:24px;background:#1c3d58;color:#fff;padding:52px;display:flex;justify-content:space-between;align-items:center;gap:30px}.detail-cta-box h2{font-size:36px;margin:8px 0 10px}.detail-cta-box p{color:#d7e3ea;max-width:650px;margin:0}.detail-cta-box .btn{flex:none}.service-page .header:not(.scrolled){background:#fff}.service-page .header:not(.scrolled) .nav a{color:#1c3d58}.service-page .header:not(.scrolled) .menu-btn{color:#1c3d58}
@media(max-width:850px){.service-detail-hero{padding:140px 0 70px}.detail-grid{grid-template-columns:1fr;gap:38px}.detail-intro h2{font-size:34px}.detail-cta-box{padding:34px 26px;display:block}.detail-cta-box .btn{margin-top:24px}.service-detail-hero p{font-size:17px}}

/* =========================================================
   CLEANZA - LOGO HEADER
   Grande al inicio / tamaño actual al hacer scroll
   ========================================================= */

/* Estado inicial */
header:not(.scrolled) .brand-logo {
    width: auto;
    height: 92px;
    max-height: 92px;
    transition: height 0.3s ease, max-height 0.3s ease;
}

/* Header con más espacio únicamente antes del scroll */
header:not(.scrolled) .nav {
    min-height: 112px;
    transition: min-height 0.3s ease;
}

/* En scroll NO modificamos el tamaño que ya tenía */
header.scrolled .brand-logo {
    transition: height 0.3s ease, max-height 0.3s ease;
}

/* Móvil */
@media (max-width: 768px) {
    header:not(.scrolled) .brand-logo {
        height: 72px;
        max-height: 72px;
    }

    header:not(.scrolled) .nav {
        min-height: 88px;
    }
}


/* =========================================================
   CLEANZA - LOGO GRANDE FLOTANTE AL INICIO
   El header mantiene su altura.
   Al hacer scroll vuelve al tamaño compacto.
   ========================================================= */

header {
    overflow: visible !important;
}

header .nav {
    overflow: visible !important;
}

/* INICIO: logo protagonista y sobresaliendo del header */
header:not(.scrolled) .brand {
    position: relative;
    z-index: 20;
    overflow: visible;
}

header:not(.scrolled) .brand-logo {
    width: 145px !important;
    height: 145px !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain;
    transition:
        width .3s ease,
        height .3s ease,
        transform .3s ease !important;
}

/* NO agrandamos el header */
header:not(.scrolled) .nav {
    min-height: initial !important;
}

/* SCROLL: vuelve al tamaño que ya tenía */
header.scrolled .brand-logo {
    width: auto;
    transition:
        width .3s ease,
        height .3s ease,
        transform .3s ease !important;
}

/* MÓVIL */
@media (max-width: 768px) {
    header:not(.scrolled) .brand-logo {
        width: 110px !important;
        height: 110px !important;
        max-width: none !important;
        max-height: none !important;
    }

    header:not(.scrolled) .nav {
        min-height: initial !important;
    }
}


/* =========================================================
   CLEANZA - POSICIÓN LOGO GRANDE
   Mantiene tamaño y lo desplaza hacia abajo
   ========================================================= */

header:not(.scrolled) .brand-logo {
    transform: translateY(45px) !important;
}

/* Al hacer scroll vuelve a su posición normal */
header.scrolled .brand-logo {
    transform: translateY(0) !important;
}

/* Móvil */
@media (max-width: 768px) {
    header:not(.scrolled) .brand-logo {
        transform: translateY(30px) !important;
    }
}


/* =========================================================
   CLEANZA - AJUSTE HEADER / HERO MOBILE
   Más aire entre logo y contenido
   ========================================================= */

@media (max-width: 768px) {

    /* Logo ligeramente más compacto en móvil */
    header:not(.scrolled) .brand-logo {
        width: 100px !important;
        height: 100px !important;
        max-width: none !important;
        max-height: none !important;
        transform: translateY(25px) !important;
    }

    /* Bajamos el contenido del hero para darle aire al logo */
    .hero-copy {
        padding-top: 35px;
    }
}

