
    :root{
      --black:#1E2424;
      --ink:#1E2424;
      --soft-black:#1E2424;
      --accent:#2A6B5F;
      --accent-h:#215549;
      --white:#FFFFFF;
      --off-white:#F8F6F2;
      --muted:#5A7A72;
      --line:rgba(30,36,36,.10);
      --line-soft:rgba(30,36,36,.07);
      --card:#FFFFFF;
      --cream:#EAF0EE;
      --dark:#1E2424;
      --max:1180px;
      --transition:.28s ease;
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:'DM Sans',sans-serif;background:var(--off-white);color:var(--ink);line-height:1.62;overflow-x:hidden}
    img{display:block;width:100%;height:auto}
    a{text-decoration:none;color:inherit}
    .container{max-width:var(--max);margin:auto;padding:0 24px}
    .section{padding:96px 0}
    .eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--accent);font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}
    .eyebrow:before{content:"";width:38px;height:1px;background:var(--accent)}
    .title{font-size:clamp(2rem,4.5vw,4.45rem);line-height:.96;letter-spacing:-.065em;font-weight:900;margin-bottom:18px}
    .subtitle{color:var(--muted);font-size:clamp(.98rem,1.3vw,1.12rem);max-width:720px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:13px 26px;border:1.5px solid transparent;font-size:.74rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;transition:var(--transition);white-space:nowrap;border-radius:2px}
    .btn-primary{background:var(--accent);color:#FFFFFF;border-color:var(--accent);box-shadow:0 2px 10px rgba(42,107,95,.20),0 1px 2px rgba(42,107,95,.12)}
    .btn-primary:hover{background:var(--accent-h);border-color:var(--accent-h);box-shadow:0 4px 18px rgba(33,85,73,.26),0 2px 4px rgba(33,85,73,.16);transform:translateY(-1px)}
    .btn-primary:active{transform:translateY(0);box-shadow:0 1px 4px rgba(42,107,95,.18)}
    .btn-ghost{background:transparent;color:var(--ink);border-color:rgba(30,36,36,.22)}
    .btn-ghost:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 2px 8px rgba(42,107,95,.12);transform:translateY(-1px)}
    .btn-ghost:active{transform:translateY(0)}
    .btn-shutter{background:var(--ink);color:#FFFFFF;border-color:var(--ink)}

    .header{position:fixed;top:0;left:0;width:100%;z-index:20;background:#1E2424;backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.07)}
    .header-inner{height:78px;max-width:1260px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}
    .brand{display:flex;align-items:center;gap:12px;min-width:250px}
    .brand img{width:64px;height:46px;object-fit:contain;object-position:left center}
    .brand-text{display:flex;flex-direction:column;line-height:1.02;color:#FFFFFF;font-weight:900;letter-spacing:.01em;font-size:1.02rem;text-transform:uppercase}
    .brand-text small{color:rgba(255,255,255,.55);font-size:.54rem;letter-spacing:.20em;font-weight:500;margin-top:6px}
    .nav{display:flex;align-items:center;gap:24px;margin-left:auto}
    .nav a{font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72);transition:var(--transition)}
    .nav a:hover{color:var(--accent)}
    .hamburger{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
    .hamburger span{width:20px;height:2px;background:#FFFFFF;transition:var(--transition)}
    .hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .hamburger.active span:nth-child(2){opacity:0}
    .hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .mobile-menu{display:none;background:#1E2424;border-top:1px solid rgba(255,255,255,.07);padding:16px 24px 26px}
    .mobile-menu.open{display:block}.mobile-menu a{display:block;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.80)}.mobile-menu .btn{width:100%;margin-top:18px}

    .hero{min-height:100vh;padding-top:78px;display:grid;align-items:end;position:relative;background:linear-gradient(90deg,rgba(248,246,242,.97) 0%,rgba(248,246,242,.93) 44%,rgba(248,246,242,.68) 68%,rgba(248,246,242,.18) 100%),url('/assets/img/hero-doctor-shutters-fachada.png') center right/cover no-repeat;overflow:hidden}
    .hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(30,36,36,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(30,36,36,.04) 1px,transparent 1px);background-size:76px 76px;opacity:.5;pointer-events:none}
    .hero-content{position:relative;z-index:2;padding:110px 0 96px}
    .hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:34px;align-items:end;max-width:820px}
    .hero h1{font-size:clamp(2.8rem,6.4vw,6.4rem);line-height:.88;letter-spacing:-.04em;font-weight:900;text-transform:uppercase;max-width:850px;margin-bottom:25px;color:var(--ink)}
    .hero h1 span{color:var(--ink)}
    .hero p{max-width:640px;color:var(--muted);font-size:clamp(1rem,1.4vw,1.16rem);margin-bottom:34px}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px}
    .hero-panel{background:rgba(255,255,255,.06);border:1px solid var(--line);backdrop-filter:blur(18px);padding:26px;box-shadow:0 28px 80px rgba(0,0,0,.28)}
    .hero-panel img{width:170px;height:auto;margin-bottom:18px}
    .hero-panel strong{display:block;font-size:1.05rem;line-height:1.25;margin-bottom:10px}.hero-panel p{font-size:.86rem;color:rgba(255,255,255,.62);margin:0}

    .stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--cream)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:36px 28px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat span{color:var(--accent);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.stat h3{font-size:2.4rem;font-weight:900;letter-spacing:-.06em;margin:10px 0 6px;color:var(--ink);line-height:1}.stat p{font-size:.8rem;color:var(--muted);line-height:1.5}

    .intro{background:var(--off-white);color:var(--ink)}.intro-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:44px;align-items:center}.intro .title{color:var(--ink)}.intro .subtitle{color:var(--muted)}.intro-media{position:relative;min-height:560px;overflow:hidden;background:#ddd}.intro-media img{height:100%;position:absolute;inset:0;object-fit:cover}.intro-card{background:var(--dark);color:var(--white);padding:26px 30px;margin-top:28px;border-left:4px solid var(--accent)}.intro-card p{color:rgba(255,255,255,.82);font-size:1.05rem;line-height:1.6;font-style:italic}.intro-list{display:grid;gap:12px;margin-top:26px}.intro-list li{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;color:var(--muted)}.intro-list b{width:34px;height:34px;background:var(--ink);color:var(--ink);display:grid;place-items:center;font-size:.74rem}

    .services-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:42px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.service{min-height:290px;padding:34px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card);position:relative;overflow:hidden;transition:var(--transition)}.service:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:var(--transition)}.service:hover{background:rgba(255,255,255,.075);transform:translateY(-4px)}.service:hover:before{transform:scaleX(1)}.service .num{color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.10em}.service h3{font-size:1.25rem;line-height:1.22;margin:24px 0 12px}.service p{color:rgba(255,255,255,.62);font-size:.92rem}

    .feature{background:linear-gradient(90deg,rgba(30,36,36,.96),rgba(30,36,36,.70)),url('/assets/img/pasillo_moderno_y_luminoso_con_estores.png') center/cover no-repeat;min-height:560px;display:flex;align-items:center;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.feature-box{max-width:720px}.feature .title,.feature .subtitle,.feature .eyebrow{color:#fff!important}.feature .eyebrow:before{background:#fff}.feature .subtitle{margin-bottom:28px;color:rgba(255,255,255,.72)!important}

    .process{background:var(--cream)}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:38px}.step{padding:26px 22px;min-height:220px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--off-white)}.step strong{display:block;color:var(--accent);font-size:2rem;font-weight:900;line-height:1;margin-bottom:22px}.step h3{font-size:.95rem;line-height:1.26;margin-bottom:10px;color:var(--ink)}.step p{font-size:.82rem;color:var(--muted)}

    .gallery{background:var(--off-white);color:var(--ink)}.gallery .title{color:var(--ink)}.gallery .subtitle{color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:40px}.project{position:relative;overflow:hidden;background:#ccc;min-height:520px}.stack{display:grid;gap:18px}.project.small{min-height:251px}.project.wide{grid-column:1/-1;min-height:360px}.project img{height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .7s ease}.project:hover img{transform:scale(1.045)}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(0,0,0,.72))}.project-info{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;color:var(--white)}.project-info span{color:rgba(255,255,255,.82);font-size:.66rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.project-info h3{font-size:1.22rem;margin-top:6px}

    .maintenance{background:var(--dark)}.maintenance-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:stretch}.maintenance-card{background:var(--off-white);color:var(--ink);padding:42px;display:flex;flex-direction:column;justify-content:space-between}.maintenance-card h2{font-size:clamp(1.9rem,3.4vw,3.5rem);line-height:.98;letter-spacing:-.06em;margin-bottom:20px}.maintenance-card p{color:rgba(255,255,255,.75)}.maintenance-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.maintenance-item{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);padding:24px}.maintenance-item h3{font-size:1rem;margin-bottom:8px;color:#fff}.maintenance-item p{color:rgba(255,255,255,.55);font-size:.86rem}

    .quote{background:#FFFFFF;border-top:1px solid var(--line)}.quote-grid{display:grid;grid-template-columns:.9fr .85fr;gap:34px;align-items:start}.quote-panel{background:rgba(255,255,255,.05);border:1px solid var(--line);padding:30px}.quote-panel h3{font-size:1.35rem;line-height:1.18;margin-bottom:12px}.quote-panel p{color:rgba(255,255,255,.62);font-size:.92rem}.quote-actions{display:grid;gap:12px;margin-top:24px}.quote-actions a{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);transition:var(--transition)}.quote-actions a:hover{border-color:rgba(255,255,255,.38);transform:translateX(4px)}.icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;font-weight:900}.form{display:grid;gap:14px;background:var(--cream);color:var(--ink);padding:28px}.field{display:grid;gap:7px}.field label{font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(0,0,0,.18);background:#fff;padding:13px 13px;font:inherit;outline:none}.field textarea{min-height:100px;resize:vertical}.form .btn{width:100%;margin-top:4px}

    .footer{background:var(--dark);border-top:1px solid rgba(255,255,255,.08);padding:28px 0}.footer-grid{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center}.footer-logo{width:140px}.footer p{color:rgba(255,255,255,.50);font-size:.82rem}.footer a{color:rgba(255,255,255,.80);font-weight:800}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;z-index:30;box-shadow:0 16px 46px rgba(37,211,102,.32);transition:var(--transition)}.whatsapp-float:hover{transform:translateY(-4px) scale(1.04)}.whatsapp-float svg{width:30px;height:30px;fill:#fff}
    .fade-up{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.fade-up.visible{opacity:1;transform:translateY(0)}

    @media(max-width:1080px){.nav,.header>.header-inner>.btn{display:none}.hamburger{display:flex}.hero-grid,.intro-grid,.maintenance-grid{grid-template-columns:1fr}.hero-panel{max-width:430px}.services-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(3,1fr)}.gallery-grid{grid-template-columns:1fr;gap:14px}.project,.project.small,.project.wide{min-height:420px}.project img{object-position:center center}.stats-grid{grid-template-columns:repeat(2,1fr)}}
    @media(max-width:720px){.section{padding:72px 0}.header-inner{height:68px}.hero{padding-top:68px;background-position:58% center}.hero-content{padding:64px 0 40px}.hero h1{font-size:3.2rem}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.hero-panel{display:none}.stats{display:none}.services-head{display:block}.services-grid,.process-grid,.maintenance-list{grid-template-columns:1fr}.intro-media{min-height:410px}.project,.project.small,.project.wide{min-height:280px;border-radius:0}.gallery-grid{grid-template-columns:1fr;gap:12px}.footer-grid{grid-template-columns:1fr;align-items:start}.brand{min-width:205px}.brand img{width:52px}.brand-text{font-size:.86rem}.brand-text small{font-size:.44rem;letter-spacing:.20em}.quote-actions a{grid-template-columns:36px 1fr}.quote-actions a span:last-child{grid-column:2}.mobile-menu .btn{display:flex}}


    /* VERSIÓN AJUSTADA: menú negro + secciones alternadas en blanco */
    body{
      background:var(--cream);
      color:var(--ink);
    }

    .header{
      background:rgba(5,5,5,.92);
      border-bottom:1px solid rgba(255,255,255,.12);
    }

    .hero{
      background:
        linear-gradient(90deg,rgba(248,246,242,.97) 0%,rgba(248,246,242,.93) 44%,rgba(248,246,242,.68) 68%,rgba(248,246,242,.18) 100%),
        url('/assets/img/hero-doctor-shutters-fachada.png') center right/cover no-repeat;
    }

    .hero h1{
      text-transform:none;
      max-width:760px;
      letter-spacing:-.07em;
      color:var(--ink);
    }

    .hero-panel{
      background:rgba(5,5,5,.62);
    }

    #servicios{
      background:#FFFFFF;
      color:var(--ink);
    }

    #servicios .title,
    #servicios .service h3{
      color:var(--ink);
    }

    #servicios .subtitle,
    #servicios .service p{
      color:var(--muted);
    }

    #servicios .services-grid{
      border-left:1px solid rgba(17,18,20,.12);
      border-top:1px solid rgba(17,18,20,.12);
    }

    #servicios .service{
      background:var(--cream);
      border-right:1px solid rgba(17,18,20,.12);
      border-bottom:1px solid rgba(17,18,20,.12);
    }

    #servicios .service:hover{
      background:#FFFFFF;
      box-shadow:0 20px 60px rgba(17,18,20,.10);
    }

    .process{
      background:#F1EEE7;
      color:var(--ink);
    }

    .process .title,
    .process .step h3{
      color:var(--ink);
    }

    .process .subtitle,
    .process .step p{
      color:var(--muted);
    }

    .process-grid{
      border-top:1px solid rgba(17,18,20,.12);
      border-left:1px solid rgba(17,18,20,.12);
    }

    .step{
      background:#FFFFFF;
      border-right:1px solid rgba(17,18,20,.12);
      border-bottom:1px solid rgba(17,18,20,.12);
    }

    .gallery{
      background:#FFFFFF;
    }

    .maintenance{
      background:#F1EEE7;
      color:var(--ink);
    }

    .maintenance .maintenance-card{
      background:var(--dark);
      color:#FFFFFF;
      border-top:4px solid var(--accent);
    }

    .maintenance .maintenance-card h2{
      color:#FFFFFF;
    }

    .maintenance .maintenance-card p{
      color:rgba(255,255,255,.68);
    }

    .maintenance .maintenance-card .eyebrow{
      color:var(--ink) !important;
    }

    .maintenance .maintenance-card .eyebrow:before{
      background:var(--off-white);
    }

    .maintenance .maintenance-card .btn{
      border-color:var(--ink) !important;
      color:var(--ink) !important;
    }

    .maintenance-item{
      background:rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.12);
    }

    .maintenance-item h3{
      color:var(--ink);
    }

    .maintenance-item p{
      color:var(--muted);
    }

    .quote{
      background:#FFFFFF;
      color:var(--ink);
      border-top:1px solid rgba(17,18,20,.10);
    }

    .quote .title,
    .quote h3{
      color:var(--ink);
    }

    .quote-panel{
      background:var(--ink);
      color:#FFFFFF;
      border:1px solid rgba(42,107,95,.32);
    }

    .quote-panel h3{
      color:#FFFFFF;
    }

    .quote-panel p{
      color:rgba(255,255,255,.66);
    }

    .quote-actions a{
      background:rgba(255,255,255,.04);
      border-color:rgba(255,255,255,.12);
    }

    .form{
      background:var(--cream);
      border:1px solid rgba(17,18,20,.12);
      box-shadow:0 24px 70px rgba(17,18,20,.10);
    }

    @media(max-width:720px){
      .hero{
        background:
          linear-gradient(180deg,rgba(248,246,242,.0) 0%,rgba(248,246,242,.55) 50%,rgba(248,246,242,.97) 82%),
          url('/assets/img/hero-doctor-shutters-fachada.png') 30% center/cover no-repeat;
        min-height:100svh;
      }
      .hero h1{font-size:3rem;line-height:.94;color:var(--ink)}
      .hero p{color:var(--muted)}
      .hero-content{padding-top:72px;padding-bottom:52px}
    }





    /* NOSOTROS */
    .about{background:#FFFFFF;color:var(--ink);border-top:1px solid var(--line)}
    .about-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:42px;align-items:center}
    .about .title{color:var(--ink)}
    .about .subtitle{color:var(--muted)}
    .about-copy{display:grid;gap:18px}
    .about-copy p{color:var(--muted);font-size:.98rem;max-width:690px}
    .about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
    .about-point{background:var(--cream);border:1px solid rgba(17,18,20,.10);padding:18px}
    .about-point strong{display:block;color:var(--ink);font-size:.86rem;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
    .about-point span{display:block;color:var(--muted);font-size:.82rem;line-height:1.5}
    .about-media{min-height:560px;position:relative;overflow:hidden;background:#111;box-shadow:0 26px 80px rgba(17,18,20,.14)}
    .about-media img{position:absolute;inset:0;height:100%;object-fit:cover}
    .about-badge{position:absolute;left:22px;bottom:22px;background:rgba(30,36,36,.88);color:#fff;border:1px solid rgba(42,107,95,.32);padding:18px 20px;max-width:310px;backdrop-filter:blur(12px)}
    .about-badge small{display:block;color:rgba(255,255,255,.7);font-weight:900;letter-spacing:.10em;text-transform:uppercase;font-size:.58rem;margin-bottom:6px}.about-badge strong{display:block;font-size:1rem;line-height:1.28}
    @media(max-width:1080px){.about-grid{grid-template-columns:1fr}.about-media{min-height:420px}.about-points{grid-template-columns:1fr}}

    /* CONTACTO */
    .contact{background:var(--cream);color:var(--ink);border-top:1px solid var(--line)}
    .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:stretch}
    .contact-card{background:var(--dark);color:#fff;padding:34px;border:1px solid rgba(255,255,255,.10);display:flex;flex-direction:column;justify-content:space-between;min-height:360px}
    .contact-card .eyebrow{color:var(--ink)}
    .contact-card h2{font-size:clamp(1.9rem,3.2vw,3.3rem);line-height:1;letter-spacing:-.06em;text-transform:uppercase;margin:12px 0 16px}
    .contact-card p{color:rgba(255,255,255,.72);font-size:.96rem;max-width:560px}
    .contact-list{display:grid;gap:12px;background:#FFFFFF;border:1px solid var(--line);padding:28px}
    .contact-item{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid rgba(0,0,0,.10);transition:var(--transition)}
    .contact-item:last-child{border-bottom:0}
    .contact-item:hover{transform:translateX(4px)}
    .contact-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900;flex-shrink:0}.contact-icon svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.contact-icon.wa{background:#25D366}.contact-icon.ig{background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.contact-icon.mail{background:var(--accent)}
    .contact-item small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;font-weight:900;margin-bottom:2px}
    .contact-item strong{display:block;color:var(--ink);font-size:.98rem}.contact-item span:last-child{color:var(--muted);font-size:.84rem;white-space:nowrap}
    .contact-note{margin-top:18px;padding:18px;background:var(--cream);border:1px solid var(--line);color:var(--muted);font-size:.9rem}

    .contact-side{display:grid;gap:16px}
    .contact-map-card{background:#FFFFFF;border:1px solid var(--line);overflow:hidden;min-height:330px;display:grid;grid-template-rows:auto 1fr}
    .contact-map-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 18px;background:#FFFFFF;border-bottom:1px solid var(--line)}
    .contact-map-head small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;font-weight:900;margin-bottom:2px}.contact-map-head strong{color:var(--ink);font-size:.88rem;text-align:right}
    .contact-map{min-height:286px}.contact-map iframe{display:block;width:100%;height:100%;min-height:286px;border:0;filter:grayscale(12%) contrast(1.04)}

    @media(max-width:1080px){.contact-grid{grid-template-columns:1fr}}
    @media(max-width:720px){.contact-card,.contact-list{padding:22px 18px}.contact-item{grid-template-columns:42px 1fr}.contact-item span:last-child{grid-column:2}}


    /* AJUSTE HERO A LA IZQUIERDA */
    .hero .container{
      max-width:100%;
      margin-left:0;
      margin-right:0;
      padding-left:clamp(22px,5vw,72px);
      padding-right:24px;
    }
    .hero-grid{
      margin-left:0;
      margin-right:auto;
      max-width:760px;
      justify-items:start;
      text-align:left;
    }
    .hero h1,
    .hero p{
      text-align:left;
    }


    /* AJUSTE SECCIÓN NOSOTROS */
    .about.section{
      padding:72px 0;
    }
    .about-grid{
      grid-template-columns:1fr .92fr;
      gap:34px;
      align-items:center;
    }
    .about-copy{
      gap:14px;
    }
    .about-copy p{
      font-size:.94rem;
      line-height:1.55;
    }
    .about .title{
      font-size:clamp(1.9rem,3.6vw,3.8rem);
      margin-bottom:12px;
    }
    .about-points{
      grid-template-columns:repeat(3,1fr);
      gap:10px;
      margin-top:8px;
    }
    .about-point{
      padding:16px 14px;
    }
    .about-point span{
      font-size:.78rem;
      line-height:1.45;
    }
    .about-media{
      min-height:430px;
      max-height:520px;
      box-shadow:0 18px 48px rgba(17,18,20,.12);
    }
    .about-media img{
      object-fit:cover;
      object-position:center;
    }
    .about-badge{
      display:none!important;
    }
    @media(max-width:1080px){
      .about.section{padding:64px 0}
      .about-grid{grid-template-columns:1fr;gap:28px}
      .about-media{min-height:360px;max-height:420px}
      .about-points{grid-template-columns:repeat(3,1fr)}
    }
    @media(max-width:720px){
      .about.section{padding:54px 0}
      .about-points{grid-template-columns:1fr}
      .about-media{min-height:300px;max-height:340px}
    }


    /* AJUSTE SECCIÓN SERVICIOS COMPACTA */
    #servicios.section{
      padding:68px 0;
    }
    #servicios .services-head{
      margin-bottom:28px;
      align-items:end;
    }
    #servicios .title{
      font-size:clamp(1.9rem,3.6vw,3.75rem);
      margin-bottom:10px;
    }
    #servicios .subtitle{
      font-size:.95rem;
      max-width:560px;
      line-height:1.52;
    }
    #servicios .services-grid{
      grid-template-columns:repeat(3,1fr);
    }
    #servicios .service{
      min-height:220px;
      padding:26px 24px;
      display:flex;
      flex-direction:column;
      justify-content:flex-start;
    }
    #servicios .service .num{
      font-size:.7rem;
    }
    #servicios .service h3{
      font-size:1.08rem;
      margin:18px 0 9px;
      line-height:1.22;
    }
    #servicios .service p{
      font-size:.84rem;
      line-height:1.48;
    }
    @media(max-width:1080px){
      #servicios.section{padding:62px 0}
      #servicios .services-grid{grid-template-columns:repeat(2,1fr)}
      #servicios .service{min-height:210px}
    }
    @media(max-width:720px){
      #servicios.section{padding:54px 0}
      #servicios .services-head{margin-bottom:22px}
      #servicios .services-grid{grid-template-columns:1fr}
      #servicios .service{min-height:auto;padding:22px 20px}
    }


    /* AJUSTE FINAL: SERVICIOS MÁS COMPACTOS + SIN TEXTO SOBRE IMAGEN */
    .about-badge{
      display:none!important;
    }
    #servicios.section{
      padding:54px 0;
    }
    #servicios .services-head{
      margin-bottom:20px;
      gap:24px;
    }
    #servicios .eyebrow{
      margin-bottom:10px;
    }
    #servicios .title{
      font-size:clamp(1.75rem,3vw,3.15rem);
      margin-bottom:6px;
      line-height:1;
    }
    #servicios .subtitle{
      font-size:.88rem;
      line-height:1.45;
      max-width:520px;
    }
    #servicios .service{
      min-height:174px;
      padding:20px 20px 18px;
    }
    #servicios .service .num{
      font-size:.64rem;
      letter-spacing:.1em;
    }
    #servicios .service h3{
      font-size:.96rem;
      margin:13px 0 7px;
      line-height:1.2;
    }
    #servicios .service p{
      font-size:.76rem;
      line-height:1.42;
    }
    @media(max-width:1080px){
      #servicios.section{padding:52px 0}
      #servicios .service{min-height:168px}
    }
    @media(max-width:720px){
      #servicios.section{padding:48px 0}
      #servicios .service{min-height:auto;padding:18px}
    }


    /* AJUSTE SERVICIOS: COMPLETA Y VISIBLE */
    #servicios.section{
      padding:64px 0;
    }
    #servicios .services-head{
      margin-bottom:28px;
      gap:32px;
    }
    #servicios .eyebrow{
      margin-bottom:14px;
    }
    #servicios .title{
      font-size:clamp(2rem,3.7vw,3.85rem);
      margin-bottom:10px;
      line-height:.98;
    }
    #servicios .subtitle{
      font-size:.95rem;
      line-height:1.52;
      max-width:600px;
    }
    #servicios .services-grid{
      grid-template-columns:repeat(3,1fr);
    }
    #servicios .service{
      min-height:205px;
      padding:24px 24px 22px;
    }
    #servicios .service .num{
      font-size:.7rem;
    }
    #servicios .service h3{
      font-size:1.04rem;
      margin:16px 0 8px;
      line-height:1.22;
    }
    #servicios .service p{
      font-size:.82rem;
      line-height:1.48;
    }
    @media(max-width:1080px){
      #servicios.section{padding:60px 0}
      #servicios .services-grid{grid-template-columns:repeat(2,1fr)}
      #servicios .service{min-height:198px}
    }
    @media(max-width:720px){
      #servicios.section{padding:52px 0}
      #servicios .services-head{margin-bottom:22px}
      #servicios .services-grid{grid-template-columns:1fr}
      #servicios .service{min-height:auto;padding:22px 20px}
    }

  
    /* TRABAJOS EN SLIDER */
    .gallery-slider-section{padding:72px 0}
    .gallery-slider-wrap{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:34px;
      align-items:center;
      background:#fff;
      border:1px solid var(--line);
      border-radius:28px;
      padding:32px;
      box-shadow:0 18px 54px rgba(17,18,20,.06);
    }
    .gallery-copy .title{font-size:clamp(2rem,3.6vw,4rem);margin:10px 0 14px;line-height:.98}
    .gallery-copy .subtitle{max-width:520px;font-size:.95rem;line-height:1.58;color:var(--muted)}
    .gallery-meta{
      margin-top:22px;
      padding:18px 18px 16px;
      border:1px solid rgba(61,43,31,.10);
      border-radius:18px;
      background:linear-gradient(180deg,#fff,#fbf8f3);
    }
    .gallery-meta small{display:block;color:var(--accent);font-size:.66rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px}
    .gallery-meta strong{display:block;font-size:1.05rem;color:var(--ink);margin-bottom:8px}
    .gallery-meta p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.52}
    .gallery-controls{display:flex;gap:10px;margin-top:18px}
    .gallery-nav{
      width:48px;height:48px;border-radius:50%;
      border:1px solid rgba(61,43,31,.12);
      background:#fff;color:var(--ink);font-size:1.8rem;line-height:1;
      display:grid;place-items:center;cursor:pointer;transition:var(--transition);
      box-shadow:0 8px 24px rgba(17,18,20,.05);
    }
    .gallery-nav:hover{transform:translateY(-2px);border-color:rgba(168,72,50,.35);color:var(--accent)}
    .gallery-slider{display:grid;gap:14px}
    .gallery-stage{
      position:relative;overflow:hidden;border-radius:24px;background:#f3eee6;
      min-height:520px;border:1px solid rgba(61,43,31,.08)
    }
    .gallery-stage img{width:100%;height:100%;object-fit:cover;display:block}
    .gallery-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
    .gallery-thumb{
      border:1px solid rgba(61,43,31,.10);border-radius:16px;padding:0;overflow:hidden;
      background:#fff;cursor:pointer;transition:var(--transition)
    }
    .gallery-thumb img{width:100%;height:90px;object-fit:cover;display:block}
    .gallery-thumb.active{border-color:rgba(168,72,50,.46);box-shadow:0 10px 26px rgba(168,72,50,.14)}
    @media(max-width:1080px){
      .gallery-slider-wrap{grid-template-columns:1fr;gap:24px}
      .gallery-stage{min-height:420px}
    }
    @media(max-width:720px){
      .gallery-slider-section{padding:56px 0}
      .gallery-slider-wrap{padding:22px;border-radius:22px}
      .gallery-stage{min-height:280px}
      .gallery-thumbs{grid-template-columns:repeat(2,1fr)}
      .gallery-thumb img{height:78px}
      .gallery-controls{margin-top:14px}
    }


    /* TRABAJOS AJUSTADO A LA LÓGICA VISUAL DE NOSOTROS */
    .about-like-gallery{
      background:#FFFFFF;
      color:var(--ink);
      border-top:1px solid var(--line);
    }
    .gallery-about-grid{
      grid-template-columns:1.02fr .98fr;
      gap:42px;
      align-items:center;
    }
    .gallery-copy-panel{
      display:grid;
      gap:18px;
    }
    .gallery-copy-panel p{
      color:var(--muted);
      font-size:.98rem;
      max-width:690px;
      line-height:1.58;
    }
    .gallery-points{
      margin-top:14px;
    }
    .gallery-media-slider{
      min-height:520px;
      max-height:560px;
      position:relative;
      overflow:hidden;
      background:#111;
      box-shadow:0 26px 80px rgba(17,18,20,.14);
    }
    .gallery-media-slider img{
      position:absolute;
      inset:0;
      height:100%;
      width:100%;
      object-fit:cover;
      transition:opacity .28s ease, transform .7s ease;
    }
    .gallery-media-slider:hover img{
      transform:scale(1.035);
    }
    .gallery-caption{
      position:absolute;
      left:22px;
      right:22px;
      bottom:22px;
      background:rgba(30,36,36,.88);
      color:#fff;
      border:1px solid rgba(42,107,95,.32);
      padding:18px 20px;
      max-width:430px;
      backdrop-filter:blur(12px);
    }
    .gallery-caption small{
      display:block;
      color:rgba(255,255,255,.72);
      font-weight:900;
      letter-spacing:.10em;
      text-transform:uppercase;
      font-size:.58rem;
      margin-bottom:6px;
    }
    .gallery-caption strong{
      display:block;
      font-size:.96rem;
      line-height:1.35;
    }
    .clean-controls{
      display:flex;
      align-items:center;
      gap:10px;
      margin-top:8px;
    }
    .gallery-nav{
      width:44px;
      height:44px;
      border-radius:50%;
      border:1px solid rgba(30,36,36,.16);
      background:#fff;
      color:var(--ink);
      font-size:1.6rem;
      line-height:1;
      display:grid;
      place-items:center;
      cursor:pointer;
      transition:var(--transition);
      box-shadow:0 8px 24px rgba(17,18,20,.05);
    }
    .gallery-nav:hover{
      transform:translateY(-2px);
      border-color:var(--accent);
      color:var(--accent);
    }
    .gallery-count{
      margin-left:6px;
      color:var(--accent);
      font-size:.68rem;
      font-weight:900;
      letter-spacing:.14em;
    }
    @media(max-width:1080px){
      .gallery-about-grid{grid-template-columns:1fr}
      .gallery-media-slider{min-height:420px;max-height:460px}
    }
    @media(max-width:720px){
      .gallery-media-slider{min-height:320px;max-height:360px}
      .gallery-caption{left:16px;right:16px;bottom:16px;padding:15px 16px}
      .gallery-caption strong{font-size:.86rem}
    }


    /* LIMPIEZA FINAL TRABAJOS */
    .gallery-caption,
    .gallery-points{
      display:none!important;
    }
    .gallery-copy-panel{
      align-content:center;
    }
    .clean-controls{
      margin-top:18px;
    }
    .gallery-media-slider{
      background:#111;
    }


    /* AJUSTES FINALES SOLICITADOS */
    .gallery-about-grid{
      grid-template-columns:1.02fr .92fr;
      gap:36px;
      align-items:center;
    }
    .gallery-copy-panel{
      gap:14px;
    }
    .gallery-copy-panel p{
      max-width:640px;
      color:var(--muted);
      line-height:1.58;
    }
    .gallery-media-slider{
      min-height:420px;
      max-height:460px;
      overflow:hidden;
      background:#f3eee6;
      box-shadow:0 18px 54px rgba(17,18,20,.10);
    }
    .gallery-media-slider img{
      width:100%;
      height:100%;
      object-fit:cover;
      display:block;
      transition:opacity .6s ease, transform .8s ease;
    }
    .gallery-controls,.clean-controls,.gallery-count,.gallery-nav{
      display:none !important;
    }

    .maintenance{
      background:var(--dark);
    }
    .maintenance-grid{
      display:grid;
      grid-template-columns:.88fr 1.12fr;
      gap:30px;
      align-items:stretch;
    }
    .maintenance-cards{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:16px;
      align-content:start;
    }
    .maintenance-item{
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.10);
      min-height:170px;
      padding:22px 20px;
      display:flex;
      flex-direction:column;
      justify-content:flex-start;
      border-radius:0;
    }
    .maintenance-item h3{
      margin:0 0 10px;
      font-size:1rem;
      line-height:1.2;
      color:#fff;
    }
    .maintenance-item p{
      margin:0;
      color:rgba(255,255,255,.72);
      font-size:.88rem;
      line-height:1.5;
    }

    .contact-head{
      margin-bottom:24px;
    }
    .contact-clean-layout{
      display:block;
    }
    .contact-card{
      display:none !important;
    }
    .contact-side{
      max-width:100%;
      display:grid;
      grid-template-columns:.92fr 1.08fr;
      gap:18px;
      align-items:stretch;
    }
    .contact-list{
      height:100%;
    }
    .contact-map-card{
      min-height:100%;
    }

    @media(max-width:1080px){
      .gallery-about-grid,
      .maintenance-grid,
      .contact-side{
        grid-template-columns:1fr;
      }
      .gallery-media-slider{
        min-height:360px;
        max-height:400px;
      }
      .maintenance-cards{
        grid-template-columns:repeat(2,1fr);
      }
    }
    @media(max-width:720px){
      .gallery-media-slider{
        min-height:280px;
        max-height:320px;
      }
      .maintenance-cards{
        grid-template-columns:1fr;
      }
      .maintenance-item{
        min-height:auto;
      }
    }


    /* AJUSTES DE COMPOSICIÓN SOLICITADOS */
    .hero{
      min-height:92vh;
    }
    .hero-content{
      padding:78px 0 82px;
    }
    .hero-grid{
      gap:24px;
    }
    .hero p{
      margin-bottom:24px;
      max-width:620px;
    }

    #servicios.section{
      padding:56px 0 58px;
    }
    #servicios .services-head{
      margin-bottom:20px;
    }
    #servicios .service{
      min-height:188px;
      padding:22px 22px 20px;
    }

    .maintenance .btn,
    .maintenance-card .btn{
      background:#FFFFFF !important;
      color:#2A6B5F !important;
      border:1px solid #2A6B5F !important;
      box-shadow:0 10px 24px rgba(42,107,95,.12);
    }
    .maintenance .btn:hover,
    .maintenance-card .btn:hover{
      background:#F7F8F8 !important;
      color:#1E2424 !important;
      border-color:#1E2424 !important;
      transform:translateY(-2px);
    }

    .contact.section{
      padding:56px 0 54px;
    }
    .contact-head{
      margin-bottom:16px;
    }
    .contact-head .title{
      font-size:clamp(1.95rem,3.1vw,3rem);
      line-height:1.02;
    }
    .contact-side{
      grid-template-columns:.88fr 1.12fr;
      gap:16px;
      align-items:stretch;
    }
    .contact-list{
      padding:22px;
      gap:8px;
    }
    .contact-item{
      padding:12px 0;
    }
    .contact-item strong{
      font-size:.95rem;
    }
    .contact-item span:last-child{
      font-size:.78rem;
    }
    .contact-note{
      margin-top:14px;
      padding:14px 16px;
      font-size:.83rem;
    }
    .contact-map-card{
      min-height:280px;
      grid-template-rows:auto 1fr;
    }
    .contact-map-head{
      padding:14px 16px;
    }
    .contact-map iframe{
      min-height:280px;
    }

    .footer-pro{
      background:#080E14;
      color:rgba(255,255,255,.82);
      border-top:1px solid rgba(255,255,255,.08);
      padding-top:18px;
    }
    .footer-top{
      display:grid;
      grid-template-columns:auto 1fr auto;
      gap:24px;
      align-items:center;
      padding:0 0 18px;
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .footer-brand{
      display:flex;
      align-items:center;
    }
    .footer-logo-card{
      width:210px;
      max-width:100%;
      background:#fff;
      padding:12px 14px;
      border:1px solid rgba(255,255,255,.1);
      box-shadow:0 8px 24px rgba(0,0,0,.18);
    }
    .footer-info-line{
      display:flex;
      flex-wrap:wrap;
      gap:10px 14px;
      align-items:center;
      color:rgba(255,255,255,.78);
      font-size:.92rem;
      line-height:1.45;
    }
    .footer-info-line a{
      color:#A9D6FF;
      text-decoration:none;
      font-weight:700;
    }
    .footer-info-line strong{
      color:#FFFFFF;
      font-weight:800;
    }
    .footer-info-line .dot{
      color:rgba(255,255,255,.28);
      font-weight:400;
    }
    .footer-social{
      display:flex;
      gap:12px;
    }
    .footer-social a{
      width:50px;
      height:50px;
      display:grid;
      place-items:center;
      border:1px solid rgba(255,255,255,.14);
      color:#FFFFFF;
      text-decoration:none;
      transition:var(--transition);
    }
    .footer-social a:hover{
      transform:translateY(-2px);
      border-color:rgba(169,214,255,.65);
      color:#A9D6FF;
    }
    .footer-social svg{
      width:22px;
      height:22px;
      fill:currentColor;
    }
    .footer-bottom{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:18px;
      padding:16px 0 18px;
      font-size:.85rem;
      color:rgba(255,255,255,.58);
    }
    .footer-bottom p{
      margin:0;
    }
    .footer-bottom strong{
      color:#FFFFFF;
      font-weight:800;
    }

    @media(max-width:1080px){
      .hero-content{
        padding:70px 0 76px;
      }
      .contact-side{
        grid-template-columns:1fr;
      }
      .footer-top{
        grid-template-columns:1fr;
        align-items:flex-start;
      }
      .footer-bottom{
        flex-direction:column;
        align-items:flex-start;
      }
    }
    @media(max-width:720px){
      .hero{
        min-height:auto;
      }
      .hero-content{
        padding:56px 0 58px;
      }
      #servicios.section,
      .contact.section{
        padding:48px 0;
      }
      .contact-list{
        padding:18px;
      }
      .footer-logo-card{
        width:180px;
      }
      .footer-info-line{
        font-size:.88rem;
      }
      .footer-social a{
        width:46px;
        height:46px;
      }
    }


    /* AJUSTES: BOTÓN MANTENCIÓN, CONTACTO COMPLETO Y LINK LÜMA */
    .maintenance-card .btn{
      position:relative;
      width:max-content;
      min-height:50px;
      padding:14px 28px 14px 24px;
      background:#FFFFFF !important;
      color:#2A6B5F !important;
      border:2px solid #2A6B5F !important;
      border-radius:999px !important;
      box-shadow:0 14px 34px rgba(42,107,95,.20), inset 0 1px 0 rgba(255,255,255,.9);
      letter-spacing:.07em;
      overflow:hidden;
    }
    .maintenance-card .btn::after{
      content:"→";
      display:inline-grid;
      place-items:center;
      width:28px;
      height:28px;
      margin-left:8px;
      border-radius:50%;
      background:#2A6B5F;
      color:#FFFFFF;
      font-size:.9rem;
      line-height:1;
      transition:var(--transition);
    }
    .maintenance-card .btn:hover{
      background:#F7FBFA !important;
      color:#1E2424 !important;
      border-color:#1E2424 !important;
      transform:translateY(-3px);
      box-shadow:0 18px 42px rgba(30,36,36,.20);
    }
    .maintenance-card .btn:hover::after{
      background:#1E2424;
      transform:translateX(3px);
    }

    .contact.section{
      min-height:calc(100vh - 78px);
      display:flex;
      align-items:center;
      padding:58px 0 66px;
    }
    .contact .container{
      width:100%;
    }
    .contact-head{
      margin-bottom:22px;
    }
    .contact-clean-layout,
    .contact-side{
      min-height:420px;
    }
    .contact-list{
      display:flex;
      flex-direction:column;
      justify-content:center;
    }
    .contact-map-card{
      min-height:420px;
    }
    .contact-map,
    .contact-map iframe{
      min-height:360px;
    }

    .footer-bottom .luma-credit{
      color:#FFFFFF;
      text-decoration:none;
      transition:var(--transition);
    }
    .footer-bottom .luma-credit:hover{
      color:#A9D6FF;
    }

    @media(max-width:1080px){
      .contact.section{
        min-height:auto;
        align-items:flex-start;
        padding:58px 0;
      }
      .contact-clean-layout,
      .contact-side{
        min-height:auto;
      }
      .contact-map-card{
        min-height:360px;
      }
      .contact-map,
      .contact-map iframe{
        min-height:300px;
      }
    }
    @media(max-width:720px){
      .maintenance-card .btn{
        width:100%;
      }
      .contact.section{
        padding:52px 0;
      }
    }


    /* REVISIÓN FINAL MÓVIL + LOGOS + GOOGLE/SEGURIDAD */
    .brand img{
      max-width:64px;
      flex:0 0 auto;
    }
    .footer-logo-card{
      object-fit:contain;
    }
    iframe{
      max-width:100%;
    }

    @media(max-width:720px){
      html,body{
        width:100%;
        overflow-x:hidden;
      }
      .container{
        padding:0 18px;
      }
      .header-inner{
        padding:0 18px;
      }
      .brand{
        min-width:auto;
        max-width:72%;
        gap:10px;
      }
      .brand img{
        width:48px;
        height:40px;
      }
      .brand-text{
        font-size:.78rem;
      }
      .brand-text small{
        font-size:.42rem;
        letter-spacing:.16em;
      }

      .hero{
        min-height:auto;
        align-items:center;
        background:
          linear-gradient(180deg,rgba(248,246,242,.94) 0%,rgba(248,246,242,.97) 58%,rgba(248,246,242,1) 100%),
          url('/assets/img/hero-doctor-shutters-fachada.png') 70% center/cover no-repeat !important;
      }
      .hero-content{
        padding:76px 0 54px !important;
      }
      .hero h1{
        font-size:clamp(2.4rem,14vw,3.05rem) !important;
        line-height:.96 !important;
        letter-spacing:-.055em;
        margin-bottom:18px;
      }
      .hero p{
        font-size:.96rem;
        line-height:1.55;
        margin-bottom:22px;
      }

      .stats-grid{
        grid-template-columns:1fr 1fr;
      }
      .stat{
        padding:22px 16px;
      }
      .stat h3{
        font-size:1.65rem;
      }

      .about-grid,
      .gallery-about-grid,
      .maintenance-grid,
      .contact-side{
        grid-template-columns:1fr !important;
      }
      .about-media,
      .gallery-media-slider{
        min-height:290px !important;
        max-height:330px !important;
      }

      #servicios .services-grid{
        grid-template-columns:1fr !important;
      }
      #servicios .service{
        min-height:auto;
      }

      .process-grid{
        grid-template-columns:1fr !important;
      }
      .step{
        min-height:auto;
      }

      .maintenance-card{
        padding:28px 22px;
      }
      .maintenance-card h2{
        font-size:2rem;
        line-height:1.02;
      }
      .maintenance-cards{
        grid-template-columns:1fr !important;
      }

      .contact.section{
        min-height:auto !important;
      }
      .contact-head .title{
        font-size:2.05rem;
      }
      .contact-item{
        grid-template-columns:40px 1fr !important;
        gap:12px;
      }
      .contact-item span:last-child{
        grid-column:2;
        white-space:normal;
      }
      .contact-map-card,
      .contact-map,
      .contact-map iframe{
        min-height:300px !important;
      }

      .footer-top{
        gap:18px;
      }
      .footer-info-line{
        display:grid;
        gap:8px;
      }
      .footer-info-line .dot{
        display:none;
      }
      .footer-social{
        margin-top:6px;
      }
      .footer-bottom{
        font-size:.8rem;
      }
    }


    /* NOSOTROS: GALERÍA CON FOTOS REALES */
    .about-gallery{
      display:grid;
      grid-template-rows:1fr auto;
      gap:12px;
      min-height:500px;
      max-height:580px;
      background:#111;
      overflow:hidden;
      box-shadow:0 26px 80px rgba(17,18,20,.14);
    }
    .about-gallery-main{
      position:relative !important;
      inset:auto !important;
      width:100%;
      height:100%;
      min-height:390px;
      object-fit:cover;
      object-position:center;
    }
    .about-gallery-strip{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
      padding:0;
      background:#fff;
    }
    .about-gallery-strip img{
      position:relative !important;
      inset:auto !important;
      width:100%;
      height:150px;
      object-fit:cover;
      object-position:center;
    }
    @media(max-width:1080px){
      .about-gallery{
        min-height:auto;
        max-height:none;
      }
      .about-gallery-main{
        min-height:360px;
      }
      .about-gallery-strip img{
        height:130px;
      }
    }
    @media(max-width:720px){
      .about-gallery-main{
        min-height:280px;
      }
      .about-gallery-strip{
        gap:8px;
      }
      .about-gallery-strip img{
        height:105px;
      }
    }


    /* HERO CON NUEVA FACHADA */
    .hero{
      background:
        linear-gradient(90deg,rgba(248,246,242,.96) 0%,rgba(248,246,242,.90) 36%,rgba(248,246,242,.48) 58%,rgba(248,246,242,.08) 100%),
        url('/assets/img/hero-doctor-shutters-fachada.png') center right/cover no-repeat !important;
    }
    @media(max-width:720px){
      .hero{
        background:
          linear-gradient(180deg,rgba(248,246,242,.92) 0%,rgba(248,246,242,.96) 58%,rgba(248,246,242,.99) 100%),
          url('/assets/img/hero-doctor-shutters-fachada.png') 66% center/cover no-repeat !important;
      }
    }


    /* LOGO FINAL DR SHUTTERS */
    .brand img{
      width:88px;
      height:50px;
      object-fit:contain;
    }
    .footer-logo-card{
      background:#000 !important;
      padding:10px 14px !important;
      border:1px solid rgba(255,255,255,.12);
      object-fit:contain;
    }
    @media(max-width:720px){
      .brand img{
        width:64px;
        height:40px;
      }
    }


    /* AJUSTES FINALES: LOGO, HERO SIN VELO, FOOTER Y BOTÓN MANTENCIÓN */
    .hero{
      background:
        url('/assets/img/hero-doctor-shutters-fachada.png') center right/cover no-repeat !important;
    }
    .hero::before{display:none !important; content:none !important;}
    .hero-content{
      position:relative;
      z-index:2;
    }

    .brand img{
      width:110px !important;
      height:52px !important;
      object-fit:contain;
      object-position:left center;
    }
    .footer-logo-card{
      width:150px !important;
      max-height:70px;
      object-fit:contain;
      background:#000 !important;
      padding:8px 10px !important;
    }

    .maintenance-card .btn{
      border-radius:0 !important;
      background:#2A6B5F !important;
      color:#FFFFFF !important;
      border:1px solid #2A6B5F !important;
      box-shadow:0 12px 28px rgba(42,107,95,.18);
    }
    .maintenance-card .btn::after{
      display:none !important;
      content:none !important;
    }
    .maintenance-card .btn:hover{
      background:#215549 !important;
      color:#FFFFFF !important;
      border-color:#215549 !important;
      transform:translateY(-2px);
    }

    @media(max-width:720px){
      .hero{
        background:
          linear-gradient(180deg,rgba(248,246,242,.18) 0%,rgba(248,246,242,.08) 55%,rgba(248,246,242,.02) 100%),
          url('/assets/img/hero-doctor-shutters-fachada.png') 68% center/cover no-repeat !important;
      }
      .brand img{
        width:86px !important;
        height:42px !important;
      }
      .footer-logo-card{
        width:130px !important;
      }
    }


    /* NOSOTROS EN SLIDER */
    .about-slider{
      position:relative;
      min-height:520px;
      max-height:580px;
      overflow:hidden;
      background:#111;
      box-shadow:0 26px 80px rgba(17,18,20,.14);
      border:1px solid rgba(255,255,255,.05);
    }
    .about-slider-image{
      position:absolute !important;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
      transition:opacity .55s ease, transform .7s ease;
    }
    .about-slider:hover .about-slider-image{
      transform:scale(1.03);
    }
    .about-slider-overlay{
      position:absolute;
      left:18px;
      right:18px;
      bottom:18px;
      background:rgba(17,18,20,.72);
      color:#fff;
      padding:16px 18px;
      backdrop-filter:blur(10px);
      border:1px solid rgba(255,255,255,.08);
    }
    .about-slider-overlay strong{
      display:block;
      font-size:1rem;
      margin-bottom:6px;
      letter-spacing:.02em;
    }
    .about-slider-overlay span{
      display:block;
      font-size:.88rem;
      line-height:1.45;
      color:rgba(255,255,255,.82);
    }
    .about-slider-dots{
      position:absolute;
      top:16px;
      right:16px;
      display:flex;
      gap:8px;
      z-index:3;
    }
    .about-dot{
      width:11px;
      height:11px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.65);
      background:transparent;
      padding:0;
      cursor:pointer;
      transition:var(--transition);
    }
    .about-dot.active{
      background:#FFFFFF;
    }

    /* LOGO RECTANGULAR NÍTIDO */
    .brand img{
      width:154px !important;
      height:52px !important;
      object-fit:contain;
      object-position:left center;
      image-rendering:auto;
      filter:none;
    }
    .footer-logo-card{
      width:140px !important;
      max-height:56px;
      object-fit:contain;
      object-position:left center;
      background:#000 !important;
      padding:6px 10px !important;
      image-rendering:auto;
      filter:none;
    }

    @media(max-width:1080px){
      .about-slider{
        min-height:420px;
        max-height:470px;
      }
    }
    @media(max-width:720px){
      .about-slider{
        min-height:300px;
        max-height:340px;
      }
      .about-slider-overlay{
        left:12px;
        right:12px;
        bottom:12px;
        padding:12px 14px;
      }
      .about-slider-overlay strong{font-size:.92rem}
      .about-slider-overlay span{font-size:.8rem}
      .brand img{
        width:112px !important;
        height:40px !important;
      }
      .footer-logo-card{
        width:118px !important;
      }
    }


    /* AJUSTE MANTENCIÓN: TÍTULO EN VERDE */
    .maintenance-card h2{
      color:#2A6B5F !important;
    }


    /* LOGO FINAL RECTANGULAR + SIN SECCIÓN LA SOLUCIÓN */
    .brand{
      min-width:auto !important;
      gap:14px;
    }
    .brand img{
      width:168px !important;
      height:56px !important;
      max-width:168px !important;
      object-fit:contain !important;
      object-position:left center !important;
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
      padding:0 !important;
      filter:none !important;
      image-rendering:auto;
    }
    .brand-text{
      display:none !important;
    }
    .footer-logo-card{
      width:124px !important;
      max-height:50px !important;
      object-fit:contain !important;
      object-position:left center !important;
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
      padding:0 !important;
      filter:none !important;
    }
    .footer-brand{
      min-width:130px;
    }
    @media(max-width:720px){
      .brand img{
        width:132px !important;
        height:44px !important;
        max-width:132px !important;
      }
      .footer-logo-card{
        width:112px !important;
        max-height:44px !important;
      }
    }


    /* AJUSTE FINAL TAMAÑO LOGO HEADER Y FOOTER */
    .brand{
      min-width:auto !important;
      gap:10px !important;
    }
    .brand img{
      width:132px !important;
      height:42px !important;
      max-width:132px !important;
      object-fit:contain !important;
      object-position:left center !important;
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
      padding:0 !important;
    }
    .footer-logo-card{
      width:118px !important;
      max-width:118px !important;
      max-height:42px !important;
      object-fit:contain !important;
      object-position:left center !important;
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
      padding:0 !important;
    }
    .footer-brand{
      min-width:120px !important;
    }
    @media(max-width:720px){
      .brand img{
        width:108px !important;
        height:36px !important;
        max-width:108px !important;
      }
      .footer-logo-card{
        width:108px !important;
        max-width:108px !important;
        max-height:36px !important;
      }
    }


    /* HERO SIN VELO BLANCO */
    .hero{
      background:url('/assets/img/hero-doctor-shutters-fachada.png') center right/cover no-repeat !important;
    }
    @media(max-width:720px){
      .hero{
        background:url('/assets/img/hero-doctor-shutters-fachada.png') 68% center/cover no-repeat !important;
      }
    }


    /* FIX DEFINITIVO HERO SIN VELO */
    .hero::before,
    .hero:before,
    .hero::after,
    .hero:after{
      content:none !important;
      display:none !important;
      background:none !important;
      opacity:0 !important;
      box-shadow:none !important;
    }
    .hero{
      background-image:url('/assets/img/hero-doctor-shutters-fachada.png') !important;
      background-position:center right !important;
      background-size:cover !important;
      background-repeat:no-repeat !important;
    }
    @media(max-width:720px){
      .hero{
        background-image:url('/assets/img/hero-doctor-shutters-fachada.png') !important;
        background-position:68% center !important;
        background-size:cover !important;
        background-repeat:no-repeat !important;
      }
    }


    /* AJUSTE FINAL MENÚ + MANTENCIÓN */
    .header-inner{
      justify-content:flex-start !important;
    }
    .brand{
      margin-right:auto !important;
      justify-content:flex-start !important;
      align-items:center !important;
      gap:12px !important;
      min-width:260px !important;
    }
    .brand img{
      width:118px !important;
      height:42px !important;
      max-width:118px !important;
      object-fit:contain !important;
      object-position:left center !important;
      background:transparent !important;
      border:0 !important;
      border-radius:0 !important;
      box-shadow:none !important;
      padding:0 !important;
    }
    .brand-text{
      display:flex !important;
      color:#FFFFFF !important;
      font-size:.86rem !important;
      line-height:1.05 !important;
      letter-spacing:.03em !important;
      text-transform:uppercase !important;
      font-weight:900 !important;
    }
    .brand-text small{
      display:block !important;
      color:rgba(255,255,255,.58) !important;
      font-size:.45rem !important;
      letter-spacing:.18em !important;
      margin-top:5px !important;
      font-weight:600 !important;
    }

    .maintenance-card .eyebrow{
      color:#2A6B5F !important;
    }
    .maintenance-card .eyebrow:before{
      background:#2A6B5F !important;
    }
    .maintenance-card h2{
      color:#FFFFFF !important;
    }
    .maintenance-card p{
      color:rgba(255,255,255,.72) !important;
    }
    .maintenance-card .btn{
      position:relative !important;
      border-radius:0 !important;
      background:#2A6B5F !important;
      color:#FFFFFF !important;
      border:1px solid #2A6B5F !important;
      box-shadow:0 0 0 rgba(42,107,95,0);
      animation:maintenanceBlink 1.8s ease-in-out infinite;
      overflow:hidden;
    }
    .maintenance-card .btn::before{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
      transform:translateX(-120%);
      animation:maintenanceShine 2.4s ease-in-out infinite;
      pointer-events:none;
    }
    .maintenance-card .btn::after{
      display:none !important;
      content:none !important;
    }
    .maintenance-card .btn:hover{
      background:#215549 !important;
      color:#FFFFFF !important;
      border-color:#215549 !important;
      transform:translateY(-2px);
      animation:none;
    }
    @keyframes maintenanceBlink{
      0%,100%{box-shadow:0 0 0 rgba(42,107,95,0),0 12px 28px rgba(42,107,95,.12)}
      50%{box-shadow:0 0 0 5px rgba(42,107,95,.18),0 16px 38px rgba(42,107,95,.25)}
    }
    @keyframes maintenanceShine{
      0%{transform:translateX(-120%)}
      45%{transform:translateX(120%)}
      100%{transform:translateX(120%)}
    }

    @media(max-width:720px){
      .brand{
        min-width:auto !important;
        max-width:78% !important;
      }
      .brand img{
        width:92px !important;
        height:34px !important;
        max-width:92px !important;
      }
      .brand-text{
        font-size:.72rem !important;
      }
      .brand-text small{
        font-size:.38rem !important;
        letter-spacing:.14em !important;
      }
    }


    /* AJUSTE PEDIDO: MANTENCIÓN VERDE + BOTÓN MENÚ TITILANTE */
    #mantencion .maintenance-card > div > .eyebrow,
    #mantencion .maintenance-card .eyebrow{
      color:#2A6B5F !important;
      font-weight:900 !important;
    }
    #mantencion .maintenance-card > div > .eyebrow::before,
    #mantencion .maintenance-card .eyebrow::before{
      background:#2A6B5F !important;
    }

    .header .header-inner > a.btn-primary,
    .header .mobile-menu a.btn-primary{
      background:#2A6B5F !important;
      color:#FFFFFF !important;
      border-color:#2A6B5F !important;
      border-radius:0 !important;
      animation:menuCotizaBlink 1.7s ease-in-out infinite !important;
      box-shadow:0 0 0 rgba(42,107,95,0);
    }
    .header .header-inner > a.btn-primary::after,
    .header .mobile-menu a.btn-primary::after{
      display:none !important;
      content:none !important;
    }
    .header .header-inner > a.btn-primary:hover,
    .header .mobile-menu a.btn-primary:hover{
      background:#215549 !important;
      color:#FFFFFF !important;
      border-color:#215549 !important;
    }

    @keyframes menuCotizaBlink{
      0%,100%{
        box-shadow:0 0 0 0 rgba(42,107,95,0), 0 10px 24px rgba(42,107,95,.12);
        filter:brightness(1);
      }
      50%{
        box-shadow:0 0 0 5px rgba(42,107,95,.24), 0 14px 32px rgba(42,107,95,.34);
        filter:brightness(1.12);
      }
    }


    /* AJUSTE LOGO ALINEADO AL HERO + SIN TEXTO DE MARCA */
    .header-inner{
      max-width:100% !important;
      margin-left:0 !important;
      margin-right:0 !important;
      padding-left:clamp(22px,5vw,72px) !important;
      padding-right:24px !important;
      justify-content:flex-start !important;
    }
    .brand{
      min-width:0 !important;
      max-width:none !important;
      margin-right:auto !important;
      gap:0 !important;
      justify-content:flex-start !important;
      align-items:center !important;
    }
    .brand img{
      width:132px !important;
      height:42px !important;
      max-width:132px !important;
      object-fit:contain !important;
      object-position:left center !important;
    }
    .brand-text{
      display:none !important;
    }
    @media(max-width:720px){
      .header-inner{
        padding-left:18px !important;
        padding-right:18px !important;
      }
      .brand img{
        width:108px !important;
        height:36px !important;
        max-width:108px !important;
      }
    }


    /* HERO MÓVIL — usar solo la parte clara de la pared */
    @media (max-width: 768px) {
      .hero{
        min-height: 100svh !important;
        padding-top: 74px !important;
        background-image: url('/assets/img/hero-mobile-pared-clara.png') !important;
        background-position: center center !important;
        background-size: cover !important;
        background-repeat: no-repeat !important;
      }

      .hero::before,
      .hero::after{
        display: none !important;
        content: none !important;
      }

      .hero-content{
        min-height: calc(100svh - 74px) !important;
        display: flex !important;
        align-items: center !important;
        padding: 28px 0 34px !important;
        position: relative !important;
        z-index: 2 !important;
      }

      .hero h1,
      .hero h1 span,
      .hero h2{
        color: #1E2424 !important;
      }

      .hero p{
        color: #4B5454 !important;
        max-width: 100% !important;
      }

      .hero-actions{
        width: 100% !important;
        gap: 10px !important;
      }

      .hero-actions .btn{
        width: 100% !important;
        justify-content: center !important;
      }
    }


    /* AJUSTE SOLO MÓVIL: RESPIRACIÓN DEL HERO */
    @media (max-width: 768px) {
      .hero .container.hero-content,
      .hero-content{
        padding-left: 22px !important;
        padding-right: 22px !important;
      }

      .hero-grid{
        width: 100% !important;
        max-width: 100% !important;
      }

      .hero .fade-up{
        width: 100% !important;
        max-width: 100% !important;
      }

      .hero h1{
        max-width: 92% !important;
      }

      .hero p{
        max-width: 92% !important;
      }

      .hero-actions{
        width: 100% !important;
        max-width: 92% !important;
      }

      .hero-actions .btn{
        width: 100% !important;
        max-width: 100% !important;
      }
    }

    @media (max-width: 420px) {
      .hero .container.hero-content,
      .hero-content{
        padding-left: 20px !important;
        padding-right: 20px !important;
      }

      .hero h1,
      .hero p,
      .hero-actions{
        max-width: 100% !important;
      }
    }



    /* FIX SOLO MÓVIL: logos e imagen Nosotros sin afectar escritorio */
    .brand-logo-picture,
    .footer-logo-picture{
      display:block;
      flex:0 0 auto;
      line-height:0;
    }

    @media(max-width:768px){
      .brand-logo-picture img,
      .brand img{
        display:block !important;
        width:112px !important;
        height:auto !important;
        max-width:112px !important;
        object-fit:contain !important;
        object-position:left center !important;
        opacity:1 !important;
        visibility:visible !important;
      }

      .footer-logo-picture,
      .footer-logo-card{
        display:block !important;
        width:132px !important;
        max-width:132px !important;
        height:auto !important;
        opacity:1 !important;
        visibility:visible !important;
      }

      .footer-logo-card{
        object-fit:contain !important;
        object-position:left center !important;
      }

      #aboutSliderImage{
        display:block !important;
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
        object-position:center !important;
        opacity:1 !important;
        visibility:visible !important;
      }
    }


    /* FIX FINAL SOLO MÓVIL: Nosotros primera imagen + hero con imagen móvil correcta */
    @media(max-width:768px){
      .hero{
        background:url('/assets/img/hero-mobile-pared-clara.png') center center/cover no-repeat !important;
        background-image:url('/assets/img/hero-mobile-pared-clara.png') !important;
      }
      .hero::before,
      .hero:before,
      .hero::after,
      .hero:after{
        display:none !important;
        content:none !important;
        opacity:0 !important;
        background:none !important;
      }
      .about-slider{
        background:#111 url('/assets/img/nosotros-taller-shutter.png?v=mobile-nosotros-1') center center/cover no-repeat !important;
      }
      #aboutSliderImage{
        display:block !important;
        width:100% !important;
        height:100% !important;
        min-height:100% !important;
        object-fit:cover !important;
        object-position:center center !important;
        opacity:1 !important;
        visibility:visible !important;
      }
    }


    /* FIX SOLO MÓVIL: conservar color original de barra de menú */
    @media(max-width:768px){
      .header{
        background:rgba(5,5,5,.92) !important;
        backdrop-filter:blur(18px) !important;
        -webkit-backdrop-filter:blur(18px) !important;
        border-bottom:1px solid rgba(255,255,255,.12) !important;
        box-shadow:none !important;
      }
      .header-inner{
        background:transparent !important;
      }
    }



    /* FIX DEFINITIVO SOLO MÓVIL: fondo del hero */
    @media only screen and (max-width:768px){
      section.hero#inicio,
      .hero#inicio,
      .hero{
        background-color:transparent !important;
        background-image:url("/assets/img/hero-mobile-pared-clara.png") !important;
        background-position:center center !important;
        background-size:cover !important;
        background-repeat:no-repeat !important;
      }
    }


    /* FIX SOLO MÓVIL: imagen exacta del hero móvil */
    @media only screen and (max-width:768px){
      .hero#inicio{
        background: url("//assets/img/hero-mobile-pared-clara.png"), url("/assets/img/hero-mobile-pared-clara.png") !important;
        background-position:center center !important;
        background-size:cover !important;
        background-repeat:no-repeat !important;
        background-color:transparent !important;
      }
      .hero#inicio::before,
      .hero#inicio::after{
        display:none !important;
        content:none !important;
        background:none !important;
        opacity:0 !important;
      }
    }


.hero-claim{font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:700;color:var(--accent);margin:-8px 0 14px}.footer-legal-links{width:100%;text-align:center;padding:14px 24px 22px;font-size:.82rem;color:rgba(255,255,255,.65)}.footer-legal-links a:hover{color:#fff}
