:root{--sky:#6ec1e4;--cyan:#2fa7d6;--blue:#0d3b66;--navy:#07203f;--mist:#e6edf2;--ink:#0a2748;--muted:#566d82;--max:1180px;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Poppins,Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--max))/2));position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(13,59,102,.1)}.brand{width:215px}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:25px;font-size:.88rem;font-weight:500}.main-nav a{padding:10px 0}.main-nav a:hover,.main-nav .active{color:var(--cyan)}.main-nav .nav-cta{padding:11px 19px;border-radius:999px;background:var(--navy);color:#fff}.menu-button{display:none;border:0;background:none;padding:10px}.menu-button span{display:block;width:25px;height:2px;background:var(--navy);margin:5px}.eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:600;color:var(--cyan)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,6vw,5.5rem);line-height:1.02;letter-spacing:-.055em;color:var(--navy);margin-bottom:28px}h1 span{color:var(--cyan)}h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.12;letter-spacing:-.045em;color:var(--navy);margin-bottom:22px}h3{font-size:1.35rem;line-height:1.3;color:var(--navy)}.lead{font-size:1.08rem;color:var(--muted);max-width:650px}.hero{min-height:calc(100vh - 104px);display:grid;grid-template-columns:1.12fr .88fr;background:linear-gradient(135deg,#fff,#f0f8fc)}.hero-copy{padding:clamp(70px,9vw,130px) max(24px,calc((100vw - var(--max))/2));padding-right:clamp(40px,7vw,100px);align-self:center}.hero-image{position:relative;min-height:620px;overflow:hidden;background:var(--navy)}.hero-image>img{width:100%;height:100%;object-fit:cover}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(7,32,63,.72))}.image-note{position:absolute;z-index:2;left:30px;right:30px;bottom:30px;border:1px solid rgba(255,255,255,.3);background:rgba(7,32,63,.75);backdrop-filter:blur(10px);border-radius:18px;padding:22px;color:#fff;display:flex;flex-direction:column}.image-note span{font-size:.86rem;color:#cce8f5}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.button{display:inline-block;border-radius:999px;padding:14px 23px;font-size:.92rem;font-weight:600}.button.primary{background:var(--navy);color:#fff}.button.secondary{background:#fff;border:1px solid #b8cad7}.home-selector,.page-section{max-width:var(--max);margin:auto;padding:100px 24px}.home-selector>div:first-child{max-width:700px}.selector-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.selector-grid a{border:1px solid #d8e4eb;border-radius:20px;padding:28px;display:grid;grid-template-columns:52px 1fr;column-gap:18px;transition:.2s;background:#fff}.selector-grid a:hover{transform:translateY(-3px);border-color:var(--cyan);box-shadow:0 16px 35px rgba(7,32,63,.08)}.selector-grid span{grid-row:1/3;color:var(--cyan);font-weight:600}.selector-grid strong{font-size:1.15rem}.selector-grid small{color:var(--muted);font-size:.84rem}.page-hero{padding:95px max(24px,calc((100vw - var(--max))/2));background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.page-hero h1{color:#fff;max-width:900px;margin-bottom:20px}.page-hero .lead{color:#c1d9e6}.page-hero .eyebrow{color:var(--sky)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:80px}.copy p,.copy li{color:var(--muted)}.numbered-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.numbered-list article{padding:28px;border-radius:20px;background:var(--mist)}.numbered-list span{font-size:.78rem;color:var(--cyan);font-weight:600}.service-chooser{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service-option{padding:34px;border-radius:22px;background:#f4f8fb;border:1px solid #dce6ec;display:flex;flex-direction:column;min-height:260px}.service-option span{font-size:.78rem;color:var(--cyan);font-weight:600}.service-option p{color:var(--muted)}.service-option b{margin-top:auto;color:var(--cyan)}.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px}.detail-list{background:var(--mist);padding:35px;border-radius:var(--radius)}.detail-list ul{margin:0;padding-left:20px}.detail-list li+li{margin-top:12px}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}.mode-grid article{padding:25px;background:var(--navy);color:#fff;border-radius:18px}.mode-grid h3{color:#fff}.mode-grid p{font-size:.88rem;color:#bed2df;margin:0}.process-list{display:grid;border-top:1px solid #bdd0dc}.process-list article{display:grid;grid-template-columns:80px .45fr 1fr;gap:30px;padding:30px 0;border-bottom:1px solid #bdd0dc}.process-list span{color:var(--cyan);font-weight:600}.process-list p{color:var(--muted);margin:0}.notice{padding:22px;border-left:4px solid var(--cyan);background:#eef7fb;color:var(--muted);margin-top:35px}.contact-card{background:var(--mist);border-radius:var(--radius);padding:40px}.contact-status{display:flex;gap:15px;align-items:flex-start}.status-dot{width:13px;height:13px;margin-top:7px;border-radius:50%;background:#f0b84b;box-shadow:0 0 0 6px rgba(240,184,75,.2)}footer{max-width:var(--max);margin:auto;padding:60px 24px 28px;display:grid;grid-template-columns:1.4fr 1.1fr .8fr;gap:35px;align-items:start;border-top:1px solid #e0e8ed}.footer-logo{width:190px}.footer-logo img{width:100%;height:auto}footer p{color:var(--muted);font-size:.86rem;margin:15px 0 0}footer div{display:flex;gap:18px;justify-content:flex-end;font-size:.86rem}footer small{grid-column:1/-1;border-top:1px solid #e0e8ed;padding-top:22px;color:#718494}
@media(max-width:900px){.site-header{height:88px}.brand{width:180px}.main-nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid #dce5eb}.main-nav.open{display:flex}.menu-button{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 24px}.hero-image{min-height:480px}.two-column,.detail-grid{grid-template-columns:1fr;gap:35px}.process-list article{grid-template-columns:50px 1fr}.process-list article p{grid-column:2}.mode-grid{grid-template-columns:1fr}.page-section{padding:75px 24px}footer{grid-template-columns:1fr}footer div{justify-content:flex-start}footer small{grid-column:auto}}
@media(max-width:600px){h1{font-size:2.75rem}.selector-grid,.service-chooser,.numbered-list{grid-template-columns:1fr}.selector-grid a{grid-template-columns:40px 1fr}.hero-image{min-height:400px}.page-hero{padding-top:70px;padding-bottom:70px}.contact-card{padding:26px}}

/* Escala compacta */
.site-header{height:78px}.brand{width:154px}.main-nav{gap:22px;font-size:.82rem}.main-nav .nav-cta{padding:9px 17px}h1{font-size:clamp(2.5rem,4.1vw,4.15rem);line-height:1.04}h2{font-size:clamp(1.75rem,3vw,2.65rem)}h3{font-size:1.15rem}.lead{font-size:1rem}.hero{min-height:calc(100vh - 78px)}.hero-copy{padding-top:65px;padding-bottom:65px}.hero-image{min-height:520px}.home-selector,.page-section{padding-top:70px;padding-bottom:70px}.page-hero{padding-top:62px;padding-bottom:62px}.page-hero h1{margin-bottom:14px}.selector-grid a{padding:22px;border-radius:16px}.service-option{padding:27px;min-height:220px}.numbered-list article{padding:23px}.detail-list{padding:28px}.mode-grid{margin-top:32px}.mode-grid article{padding:21px}.process-list article{padding:23px 0}.contact-card{padding:32px}footer{padding-top:42px}.footer-logo{width:160px}
@media(max-width:900px){.site-header{height:72px}.brand{width:145px}.main-nav{top:72px}.hero-copy{padding-top:55px;padding-bottom:55px}.hero-image{min-height:410px}.home-selector,.page-section{padding-top:58px;padding-bottom:58px}.page-hero{padding-top:52px;padding-bottom:52px}}
@media(max-width:600px){h1{font-size:2.3rem}h2{font-size:1.85rem}.hero-image{min-height:340px}.selector-grid a{padding:19px}.service-option{min-height:195px}}
.brand{width:140px}.footer-logo{width:150px}@media(max-width:900px){.brand{width:128px}}
.hero{height:560px;min-height:0}.hero-image{min-height:0}.hero-copy{padding-top:45px;padding-bottom:45px}@media(max-width:900px){.hero{height:auto}.hero-image{min-height:380px}.hero-copy{padding-top:48px;padding-bottom:48px}}@media(max-width:600px){.hero-image{min-height:320px}}
.page-hero.has-photo{position:relative;isolation:isolate;background-size:cover;background-position:center;overflow:hidden}.page-hero.has-photo:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,32,63,.94) 0%,rgba(7,32,63,.82) 52%,rgba(13,59,102,.58) 100%)}.page-hero.has-photo:after{content:"";position:absolute;inset:auto 0 0;z-index:-1;height:2px;background:linear-gradient(90deg,var(--cyan),transparent)}.page-hero.photo-company{background-image:url('header-company.webp')}.page-hero.photo-services{background-image:url('header-services.webp');background-position:center 58%}.page-hero.photo-green{background-image:url('header-sustainability.webp');background-position:center 52%}.page-hero.has-photo h1{text-shadow:0 2px 18px rgba(0,0,0,.18)}
.page-hero.photo-aseo{background-image:url('header-aseo.webp');background-position:center 58%}.page-hero.photo-mantenimiento{background-image:url('header-mantenimiento.webp');background-position:center 48%}.page-hero.photo-operamos{background-image:url('header-operamos.webp');background-position:center 48%}.page-hero.photo-contacto{background-image:url('header-contacto.webp');background-position:center 52%}
.maintenance-section>h2{margin-bottom:30px}.maintenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.maintenance-grid .detail-list{height:100%}.maintenance-grid .detail-list h3{margin-bottom:18px}@media(max-width:700px){.maintenance-grid{grid-template-columns:1fr}}

.contact-section{display:grid;gap:34px}.contact-heading{max-width:720px}.contact-email-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.email-card{display:flex;flex-direction:column;min-height:165px;padding:26px;border:1px solid #d8e4eb;border-radius:18px;background:#f4f8fb;transition:.2s}.email-card:hover{transform:translateY(-2px);border-color:var(--cyan);box-shadow:0 14px 30px rgba(7,32,63,.08)}.email-card span{color:var(--cyan);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.email-card strong{margin-top:12px;color:var(--navy);font-size:1.05rem;overflow-wrap:anywhere}.email-card small{margin-top:auto;color:var(--muted)}.email-card.primary-email{background:var(--navy);border-color:var(--navy)}.email-card.primary-email strong{color:#fff}.email-card.primary-email small{color:#bed2df}.contact-request{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;border-radius:20px;background:var(--mist)}.contact-request h3{margin-bottom:8px}.contact-request p:last-child{margin:0;color:var(--muted)}.contact-request .button{flex:0 0 auto}@media(max-width:700px){.contact-email-grid{grid-template-columns:1fr}.contact-request{align-items:flex-start;flex-direction:column}.contact-request .button{width:100%;text-align:center}}

.email-contact-card h3{margin-bottom:18px}.contact-links{display:grid;gap:0}.contact-links a{display:flex;flex-direction:column;padding:14px 0;border-bottom:1px solid #cbd9e2}.contact-links a:first-child{padding-top:0}.contact-links a:last-child{padding-bottom:0;border-bottom:0}.contact-links span{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--cyan)}.contact-links strong{margin-top:3px;color:var(--navy);font-size:.92rem;overflow-wrap:anywhere}.contact-links a:hover strong{color:var(--cyan)}

.contact-email-grid .phone-card{grid-column:1/-1;min-height:130px;background:#eaf7fc;border-color:#b9ddec}.contact-email-grid .phone-card strong{font-size:1.25rem;color:var(--navy)}
@media(max-width:700px){.contact-email-grid .phone-card{grid-column:auto}}

.service-request-cta{max-width:var(--max);margin:0 auto 70px;padding:38px 42px;border-radius:24px;background:linear-gradient(135deg,var(--mist),#f7fbfd);display:flex;align-items:center;justify-content:space-between;gap:32px}.service-request-cta h2{font-size:clamp(1.65rem,2.7vw,2.35rem);margin-bottom:10px}.service-request-cta p:last-child{margin:0;color:var(--muted)}.service-request-cta .eyebrow{margin-bottom:10px}.service-request-cta .button{flex:0 0 auto}@media(max-width:700px){.service-request-cta{margin:0 24px 58px;padding:30px 24px;align-items:flex-start;flex-direction:column}.service-request-cta .button{width:100%;text-align:center}}

/* Orden y énfasis de las opciones finales del menú */
.main-nav a[href="contacto.html"]{order:90;padding:10px 0!important;border-radius:0!important;background:transparent!important;color:inherit!important}.main-nav a[href="contacto.html"]:hover{color:var(--cyan)!important}.main-nav a[href="solicitar-servicio.html"]{order:100;padding:11px 19px!important;border-radius:999px;background:var(--navy)!important;color:#fff!important}.main-nav a[href="solicitar-servicio.html"]:hover{background:var(--blue)!important;color:#fff!important}

/* Solicitud visible debajo de los servicios de la página principal */
.home-request{margin-top:28px;padding:32px 36px;border-radius:22px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:28px}.home-request .eyebrow{color:var(--sky);margin-bottom:8px}.home-request h3{color:#fff;margin-bottom:8px;font-size:1.55rem}.home-request p:last-child{margin:0;color:#bed2df}.home-request .button{flex:0 0 auto;background:#fff;color:var(--navy)}
/* Contacto: Mauricio gris y cotizaciones azul */
.contact-email-grid .email-card[href^="mailto:mauricio.varela"]{background:#f4f8fb;border-color:#d8e4eb}.contact-email-grid .email-card[href^="mailto:mauricio.varela"] strong{color:var(--navy)}.contact-email-grid .email-card[href^="mailto:mauricio.varela"] small{color:var(--muted)}.contact-request{background:var(--navy);color:#fff}.contact-request h3{color:#fff}.contact-request p:last-child{color:#bed2df}.contact-request .eyebrow{color:var(--sky)}.contact-request .button.primary{background:#fff;color:var(--navy)}
@media(max-width:700px){.home-request{padding:28px 24px;align-items:flex-start;flex-direction:column}.home-request .button{width:100%;text-align:center}}
