/* ============================================================
   Limpiezas Bahía — Landings de servicio (enfoque conversión)
   Diseño compartido por todas las landing locales.
   Usa las variables de marca de site.css (cargar site.css ANTES).
   ============================================================ */
body{background:var(--bg)}

/* Cabecera: teléfono SIEMPRE visible */
.lp-head{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 4px 18px -16px rgba(28,94,146,.6)}
.lp-head .wrap{display:flex;align-items:center;gap:1rem;padding:.55rem 0}
.lp-head .brand img{height:48px;width:auto;display:block}
.lp-head .hd-r{margin-left:auto;display:flex;align-items:center;gap:.7rem}
.hd-phone{display:inline-flex;align-items:center;gap:.55rem;background:var(--wash);border:1.5px solid #cfe7f1;border-radius:999px;padding:.5rem 1rem;font-family:var(--disp);font-weight:800;color:var(--blue-deep);white-space:nowrap;transition:.2s}
.hd-phone:hover{border-color:var(--cyan);background:#fff}
.hd-phone svg{width:1.15rem;height:1.15rem;color:var(--cyan)}
.hd-phone .lbl{display:block;font-family:var(--sans);font-weight:600;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);line-height:1}
.hd-phone .num{font-size:1.04rem;line-height:1.1}
@media(max-width:560px){.lp-head .hd-r .btn{display:none}.hd-phone .lbl{display:none}}

/* MIGAS DE PAN */
.lp-crumb{background:#fff;border-bottom:1px solid var(--line)}
.lp-crumb ol{list-style:none;margin:0;padding:.7rem 0;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-family:var(--sans);font-size:.82rem;color:var(--muted)}
.lp-crumb li{display:inline-flex;align-items:center}
.lp-crumb a{color:var(--blue-deep);text-decoration:none;font-weight:600}
.lp-crumb a:hover{text-decoration:underline}
.lp-crumb [aria-current=page]{color:var(--ink,#3a546b);font-weight:600}
.lp-crumb .sep{margin:0 .15rem;color:#b8c6d2;display:inline-flex}
.lp-crumb .sep svg{width:.85rem;height:.85rem}
@media(max-width:560px){.lp-crumb ol{font-size:.76rem}}

/* HERO */
.ghero{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--wash) 0%,var(--bg) 100%)}
.ghero::before{content:"";position:absolute;inset:0;background-image:var(--wave);background-size:90px 30px;opacity:.6}
.ghero .wrap{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:3rem;align-items:center;padding:3.2rem 0 3.4rem}
.ghero .eyebrow{display:inline-flex;align-items:center;gap:.5rem}
.ghero .eyebrow .pin{width:1.1em;height:1.1em;color:var(--cyan)}
.ghero h1{font-size:clamp(2rem,3.8vw,3.1rem);color:var(--navy);margin:.9rem 0 .8rem;line-height:1.1}
.ghero h1 .hl{color:var(--blue)}
.ghero .lead{font-size:1.18rem;color:var(--muted);max-width:48ch;margin-bottom:1.5rem}
.ghero-cta{display:flex;gap:.8rem;flex-wrap:wrap}
.ghero-trust{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin-top:1.7rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.ghero-trust .t{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--ink);font-size:.96rem}
.ghero-trust .t svg{width:1.25rem;height:1.25rem;color:var(--green);flex:none}
.ghero-pic{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);aspect-ratio:4/3}
.ghero-pic img{width:100%;height:100%;object-fit:cover}
.ghero-pic .tag{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.94);backdrop-filter:blur(4px);color:var(--navy);font-family:var(--disp);font-weight:700;font-size:.9rem;padding:.5rem .85rem;border-radius:12px;box-shadow:var(--shadow-sm)}
.ghero-pic .tag svg{width:1.05em;height:1.05em;color:var(--blue)}
@media(max-width:860px){.ghero .wrap{grid-template-columns:1fr;gap:2rem;padding:2.2rem 0 2.6rem}.ghero .lead{max-width:none}.ghero-pic{order:-1;aspect-ratio:16/10}}

/* Sección genérica */
.lp-sec{padding:4rem 0}
.sec-head{text-align:center;max-width:62ch;margin:0 auto 2.6rem}
.sec-head .eyebrow{display:block;margin-bottom:.5rem}
.sec-head h2{font-size:clamp(1.8rem,3vw,2.4rem);color:var(--navy);margin-bottom:.5rem}
.sec-head p{color:var(--muted);font-size:1.08rem}

/* "También cerca" bajo el subtítulo local de "Qué hacemos" */
.sec-head .lp-near{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-size:.9rem;color:var(--muted);margin-top:1rem}
.sec-head .lp-near .np{width:1em;height:1em;color:var(--cyan);flex:none}

/* Servicios */
.gsvc{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.gsvc .it{background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:1.5rem;transition:.22s}
.gsvc .it:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:#cfe7f1}
.gsvc .ic{width:54px;height:54px;border-radius:14px;background:var(--wash);display:grid;place-items:center;color:var(--blue);margin-bottom:.9rem}
.gsvc .ic svg,.gsvc .ic img{width:58%;height:58%}
.gsvc h3{font-size:1.18rem;color:var(--navy);margin-bottom:.3rem}
.gsvc p{color:var(--muted);font-size:.96rem}
@media(max-width:820px){.gsvc{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.gsvc{grid-template-columns:1fr}}

/* Por qué (trust band) */
.gwhy{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.gwhy::after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:rgba(95,200,224,.12);top:-150px;right:-80px}
.gwhy .wrap{position:relative;padding:3.6rem 0}
.gwhy .sec-head h2{color:#fff}.gwhy .sec-head .eyebrow{color:var(--cyan-2)}
.gwhy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem 1.6rem;margin-top:.5rem}
.gwhy .w{display:flex;gap:.9rem;align-items:flex-start}
.gwhy .wi{width:46px;height:46px;flex:none;border-radius:12px;background:rgba(255,255,255,.1);color:#FFD24D;display:grid;place-items:center}
.gwhy .wi svg{width:24px;height:24px}
.gwhy .w b{font-family:var(--disp);color:#fff;font-size:1.1rem;display:block;margin-bottom:.15rem}
.gwhy .w span{color:#bcd6e6;font-size:.96rem}
@media(max-width:820px){.gwhy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.gwhy-grid{grid-template-columns:1fr}}

/* Sectores con foto */
.gsec{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.gsec a{display:block;position:relative;border-radius:var(--r-sm);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--shadow-sm);border:1px solid var(--line)}
.gsec img{width:100%;height:100%;object-fit:cover;transition:.4s}
.gsec a:hover img{transform:scale(1.06)}
.gsec .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,58,92,0) 35%,rgba(18,58,92,.86) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.1rem}
.gsec .ov b{font-family:var(--disp);color:#fff;font-size:1.15rem;line-height:1.15}
.gsec .ov span{color:#cfe3f1;font-size:.85rem;margin-top:.2rem}
/* variante sin foto (placeholder con icono) */
.gsec a.ph{aspect-ratio:3/4;background:repeating-linear-gradient(135deg,#dceef6 0 14px,#e8f5fa 14px 28px);display:flex;flex-direction:column;justify-content:flex-end}
.gsec a.ph .pho{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:1.2rem;background:linear-gradient(180deg,rgba(18,58,92,.05),rgba(18,58,92,.5))}
.gsec a.ph .pic{width:46px;height:46px;border-radius:12px;background:#fff;color:var(--blue);display:grid;place-items:center;box-shadow:var(--shadow-sm)}
.gsec a.ph .pic svg{width:24px;height:24px}
.gsec a.ph .pho>span:last-child{display:flex;flex-direction:column}
.gsec a.ph b{font-family:var(--disp);color:#fff;font-size:1.15rem;line-height:1.15;text-shadow:0 1px 8px rgba(18,58,92,.5)}
.gsec a.ph span{color:#eaf6fb;font-size:.85rem;margin-top:.2rem;text-shadow:0 1px 8px rgba(18,58,92,.5)}
@media(max-width:820px){.gsec{grid-template-columns:1fr 1fr}}

/* Proceso */
.gproc{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:s}
.gstep{background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:1.5rem;position:relative}
.gstep .n{width:42px;height:42px;border-radius:50%;background:var(--yellow);color:#3a2c00;font-family:var(--disp);font-weight:800;font-size:1.2rem;display:grid;place-items:center;margin-bottom:.8rem}
.gstep h3{font-size:1.15rem;color:var(--navy);margin-bottom:.25rem}
.gstep p{color:var(--muted);font-size:.94rem}
.gstep .arr{position:absolute;right:-1rem;top:2.2rem;color:var(--cyan);z-index:2}
.gstep .arr svg{width:1.5rem;height:1.5rem}
@media(max-width:820px){.gproc{grid-template-columns:1fr 1fr}.gstep .arr{display:none}}
@media(max-width:460px){.gproc{grid-template-columns:1fr}}

/* Form + contacto */
.gform{background:var(--wash-2);background-image:var(--wave);background-size:90px 30px}
.gform-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:2.4rem;align-items:center}
.gform-info h2{font-size:clamp(1.7rem,2.8vw,2.3rem);color:var(--navy);margin-bottom:.6rem}
.gform-info p{color:var(--muted);font-size:1.08rem;max-width:42ch}
.gform-call{margin-top:1.6rem;display:flex;flex-direction:column;gap:.7rem}
.gform-call a{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--disp);font-weight:800;font-size:1.15rem;color:var(--blue-deep)}
.gform-call a svg{width:1.3rem;height:1.3rem;color:var(--cyan);flex:none}
.gform-call .wa{color:var(--green)}.gform-call .wa svg{color:var(--green)}
.gform-call small{display:block;font-family:var(--sans);font-weight:600;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.gcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:1.9rem}
.gcard h3{font-size:1.4rem;color:var(--navy);margin-bottom:.25rem}
.gcard .hint{color:var(--muted);font-size:.92rem;margin-bottom:1.2rem}
.check-field{display:flex;gap:.55rem;align-items:flex-start;margin:.2rem 0 1.1rem;font-size:.85rem;color:var(--muted)}
.check-field a{color:var(--blue);font-weight:600}.check-field input{width:auto;margin-top:.15rem}.check-field.error{color:var(--red)}
.gnote{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:.9rem;color:var(--muted);font-size:.82rem}
.gnote svg{width:.95rem;height:.95rem;color:var(--green)}
@media(max-width:820px){.gform-grid{grid-template-columns:1fr;gap:1.8rem}}

/* FAQ */
.gfaq{max-width:780px;margin:0 auto}
.gfaq details{background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);margin-bottom:.7rem;overflow:hidden;transition:.2s}
.gfaq details[open]{border-color:#cfe7f1;box-shadow:var(--shadow-sm)}
.gfaq summary{list-style:none;cursor:pointer;padding:1.1rem 1.3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-family:var(--disp);font-weight:700;color:var(--navy);font-size:1.05rem}
.gfaq summary::-webkit-details-marker{display:none}
.gfaq summary .pm{width:26px;height:26px;flex:none;border-radius:50%;background:var(--wash);color:var(--blue);display:grid;place-items:center;transition:.25s}
.gfaq summary .pm svg{width:1rem;height:1rem}
.gfaq details[open] summary .pm{transform:rotate(45deg);background:var(--blue);color:#fff}
.gfaq .ans{padding:0 1.3rem 1.2rem;color:var(--muted);line-height:1.6}

/* CTA */
.gcta{background:linear-gradient(135deg,var(--blue) 0%,var(--blue-deep) 60%,var(--navy) 100%);color:#fff;position:relative;overflow:hidden;text-align:center}
.gcta::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(95,200,224,.16);top:-180px;right:-120px}
.gcta .wrap{position:relative;padding:3.4rem 0}
.gcta h2{color:#fff;font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:.5rem}
.gcta p{color:#cfe3f1;font-size:1.15rem;max-width:50ch;margin:0 auto 1.7rem}
.gcta-btns{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap}
.gcta .btn-glass{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.5)}
.gcta .btn-glass:hover{background:rgba(255,255,255,.22);border-color:#fff;transform:translateY(-2px)}

/* Footer */
.gfoot{background:#0f2e48;color:#9fc0d6;padding:2.4rem 0;text-align:center;font-size:.9rem}
.gfoot .wrap{display:flex;flex-direction:column;gap:.9rem;align-items:center}
.gfoot .brand img{height:44px;background:#fff;padding:.3rem .5rem;border-radius:10px}
.gfoot .fl{display:flex;gap:1.3rem;flex-wrap:wrap;justify-content:center}
.gfoot a{color:#cfe3f1}.gfoot a:hover{color:#fff}
.gfoot .leg{color:#6f8da3;font-size:.82rem}

/* sticky móvil */
.gsticky{position:fixed;left:0;right:0;bottom:0;z-index:55;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px -16px rgba(28,94,146,.6);padding:.55rem .8rem;display:none;gap:.55rem}
.gsticky .btn{flex:1;padding:.85em 1em}
@media(max-width:760px){.gsticky{display:flex}body{padding-bottom:4.5rem}}
