:root{--blue:#3B7FD4;--green:#00B4D8;--dark:#06090C;--pad:clamp(24px,5vw,80px);}
nav{display:flex;align-items:center;justify-content:space-between;padding:22px var(--pad);position:sticky;top:0;z-index:200;background:rgba(6,9,12,.97);backdrop-filter:blur(16px);border-bottom:.5px solid rgba(255,255,255,.07);}
.logo-wrap{display:flex;flex-direction:column;gap:2px;text-decoration:none;}
.nav-social svg{width:13px;height:13px;fill:none;stroke:rgba(255,255,255,.35);stroke-width:1.5;transition:stroke .2s;}
.nav-social a.wa svg{fill:rgba(255,255,255,.35);stroke:none;transition:fill .2s;}
.nav-cta{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--green);border:.5px solid rgba(0,180,216,.35);padding:8px 18px;border-radius:2px;text-decoration:none;transition:background .2s;white-space:nowrap;}
.nav-cta:hover{background:rgba(0,180,216,.08);}
@media(max-width:640px){.nav-social,.nav-back{display:none;}}
.nav-links{display:flex;gap:clamp(20px,3vw,40px);list-style:none;}
.nav-links{align-items:center;}
.drop-btn{line-height:1;}
.drop-btn{
  display:flex;align-items:center;gap:6px;
  font-family:'DM Sans',sans-serif;
  font-size:10px;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,.4);
  background:none;border:0;padding:0;cursor:pointer;
  transition:color .2s;
}
@media(max-width:900px){.nav-links{display:none;}}
@media(prefers-reduced-motion:reduce){.dropdown,.drop-btn .caret{transition:none;}}
@media(max-width:900px){.nav-toggle{display:flex;}.nav-links{
    display:block;
    position:fixed;top:69px;left:0;right:0;
    max-height:calc(100dvh - 69px);overflow-y:auto;
    background:#06090C;
    border-top:.5px solid rgba(255,255,255,.08);
    padding:8px 0 28px;
    transform:translateY(-8px);opacity:0;visibility:hidden;
    transition:opacity .22s ease,transform .22s ease,visibility .22s;
    z-index:99;
  }.nav-links.open{opacity:1;visibility:visible;transform:none;}.nav-links > li{display:block;border-bottom:.5px solid rgba(255,255,255,.05);}.nav-links > li > a,.drop-btn{
    width:100%;padding:16px var(--pad);font-size:12px;letter-spacing:2px;
    justify-content:space-between;
  }.dropdown{
    position:static;opacity:1;visibility:visible;transform:none;
    display:none;min-width:0;box-shadow:none;
    background:#0D1117;padding:4px 0 10px;
  }.has-drop.open .dropdown{display:block;}.dropdown a{color:rgba(255,255,255,.62);padding:12px var(--pad) 12px calc(var(--pad) + 14px);font-size:13px;}.dropdown a:hover,.dropdown a:focus-visible{background:rgba(255,255,255,.05);color:#fff;padding-left:calc(var(--pad) + 20px);}.nav-social{display:flex;}.nav-cta{display:none;}}
.breadcrumb-bar{background:#0D1117;border-bottom:.5px solid rgba(255,255,255,.07);padding:11px var(--pad);position:static;z-index:auto;display:block;backdrop-filter:none;}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.25);}
.breadcrumb a{color:rgba(255,255,255,.25);text-decoration:none;transition:color .2s;}
footer{background:#040608;padding:clamp(40px,4.5vw,56px) var(--pad) 26px;border-top:.5px solid rgba(255,255,255,.06);}
.foot-name{color:#fff;text-decoration:none;display:block;line-height:0;}
.foot-mark{height:18px;width:auto;display:block;}
.foot-copy{font-size:11px;color:rgba(255,255,255,.2);}
.foot-socials{display:flex;gap:8px;}
.fs{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:.5px solid rgba(255,255,255,.1);border-radius:2px;transition:border-color .2s;}
.fs svg{width:12px;height:12px;fill:none;stroke:rgba(255,255,255,.3);stroke-width:1.5;}
.fs.wa svg{fill:rgba(255,255,255,.3);stroke:none;}
.wa-float{position:fixed;right:20px;bottom:20px;z-index:95;width:52px;height:52px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(0,0,0,.3);transition:transform .2s;}
@media(max-width:640px){.wa-float{right:16px;bottom:16px;width:48px;height:48px;}}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/dm-sans-latin-300-normal.woff2') format('woff2');}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/dm-sans-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/dm-sans-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/barlow-condensed-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/barlow-condensed-latin-800-normal.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:900;font-display:swap;src:url('/fonts/barlow-condensed-latin-900-normal.woff2') format('woff2');}
.logo-name{color:#fff;line-height:0;}
.logo-mark{height:22px;width:auto;display:block;}
.logo-sub{font-size:9px;letter-spacing:5px;text-transform:uppercase;color:rgba(255,255,255,.3);font-weight:300;}
.nav-r{display:flex;align-items:center;gap:16px;}
.nav-back{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.4);text-decoration:none;transition:color .2s;}
.nav-back:hover{color:#fff;}
.nav-back svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.5;}
.nav-social{display:flex;gap:10px;}
.nav-social a{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:.5px solid rgba(255,255,255,.12);border-radius:2px;transition:border-color .2s;}
.nav-social a:hover{border-color:var(--green);}
.nav-social a:hover svg{stroke:var(--green);}
.nav-social a.wa:hover svg{fill:#25D366;}
.nav-social a.wa:hover{border-color:#25D366;}
.nav-links a{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.4);text-decoration:none;cursor:pointer;transition:color .2s;}
.nav-links a:hover{color:#fff;}
.nav-links a.active,.drop-btn.active{color:var(--green);}
.nav-links > li{display:flex;align-items:center;}
.nav-links > li > a{display:flex;align-items:center;line-height:1;}
.breadcrumb{justify-content:flex-start;align-items:center;gap:9px;flex-wrap:wrap;}
.breadcrumb li{display:flex;align-items:center;}
.has-drop{position:relative;}
.breadcrumb a:hover{color:var(--green);}
.drop-btn:hover{color:#fff;}
.breadcrumb .current{color:var(--green);}
.drop-btn[aria-expanded="true"]{color:var(--green);}
.breadcrumb .sep{opacity:.3;}
.drop-btn .caret{width:9px;height:9px;fill:none;stroke:#fff;stroke-width:1.6; stroke-linecap:round;stroke-linejoin:round; transition:transform .2s;flex-shrink:0;}
.drop-btn[aria-expanded="true"] .caret{transform:rotate(180deg);}
.dropdown{position:absolute;top:calc(100% + 16px);left:-16px; min-width:250px; background:#fff; padding:8px 0; box-shadow:0 12px 40px -8px rgba(0,0,0,.45); opacity:0;visibility:hidden;transform:translateY(-6px); transition:opacity .18s ease,transform .18s ease,visibility .18s; z-index:120;}
.has-drop.open .dropdown{opacity:1;visibility:visible;transform:none;}
.dropdown a{display:block; padding:11px 22px; font-size:13px;letter-spacing:.2px;text-transform:none; color:#0D0D0D;text-decoration:none; transition:background .15s,padding-left .15s; white-space:nowrap;}
.dropdown a:hover,.dropdown a:focus-visible{background:#F2F2F0;padding-left:27px;color:#000;outline:none;}
.drop-btn:focus-visible{outline:1px solid var(--green);outline-offset:4px;}
.nav-toggle{display:none;flex-direction:column;gap:5px; background:none;border:0;padding:8px;cursor:pointer;margin-left:4px;}
.nav-toggle span{display:block;width:22px;height:1.5px;background:#fff;transition:transform .25s,opacity .2s;}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
@media(max-width:520px){.nav-social{display:none;}}
.foot-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.1fr;gap:clamp(24px,3vw,50px);max-width:1240px;margin:0 auto clamp(30px,3.5vw,44px);}
@media(max-width:840px){.foot-grid{grid-template-columns:1fr 1fr;gap:30px;}}
@media(max-width:480px){.foot-grid{grid-template-columns:1fr;}}
.fs{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:.5px solid rgba(255,255,255,.12);border-radius:2px;transition:border-color .2s;}
.fs svg{width:13px;height:13px;fill:none;stroke:rgba(255,255,255,.32);stroke-width:1.5;transition:stroke .2s;}
.fs:hover{border-color:rgba(255,255,255,.3);}
.foot-sub{font-size:9px;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.28);margin:5px 0 16px;}
.foot-desc{font-size:13px;line-height:1.7;color:rgba(255,255,255,.35);font-weight:300;max-width:34ch;}
.foot-col h4,.foot-col h2{font-size:9.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--green);margin-bottom:14px;font-family:'DM Sans',sans-serif;font-weight:500;}
.foot-col a,.foot-col span{display:block;font-size:13px;line-height:1.55;color:rgba(255,255,255,.42);text-decoration:none;padding:5px 0;transition:color .2s;font-weight:300;}
.foot-col a:hover{color:var(--green);}
.fs:hover svg{stroke:var(--green);}
.nav-social a.wa svg,.fs.wa svg{fill:rgba(255,255,255,.35);stroke:none;transition:fill .2s;}
.fs.wa:hover{border-color:#25D366;}
.foot-bottom{max-width:1240px;margin:0 auto;padding-top:22px;border-top:.5px solid rgba(255,255,255,.07);display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;}
.fs.wa:hover svg{fill:#25D366;}
.foot-back{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.35);text-decoration:none;transition:color .2s;}
@media(min-width:761px){.foot-bottom{padding-right:70px;}}
.foot-back:hover{color:var(--green);}
.wa-float:hover{transform:scale(1.07);}
.wa-float svg{width:26px;height:26px;fill:#fff;}
:root{--blue-txt:#3674C1;--green-txt:#007E97;}
body .foot-copy{color:rgba(255,255,255,.45);}
body .foot-sub{color:rgba(255,255,255,.45);}
body .foot-desc{color:rgba(255,255,255,.45);}
body .foot-back{color:rgba(255,255,255,.45);}
body .logo-sub{color:rgba(255,255,255,.45);}
body .foot-col a,body .foot-col span{color:rgba(255,255,255,.48);}
body .foot-copy,body .foot-sub,body .foot-desc,body .foot-back,body .logo-sub,body .ci-l,body .ci-label,body .strip-l,body .hero-p,body .cta-p,body .art-meta span,body .c-soc span{color:rgba(255,255,255,.46);}
body .drop-btn{color:rgba(255,255,255,.72);}
body .contact-p,body .foot-col a,body .foot-col span{color:rgba(255,255,255,.5);}
:root{--blue-txt:#3169B3;--green-txt:#00768D;}
body .breadcrumb a{color:rgba(255,255,255,.55);}
body .nav-links a{color:rgba(255,255,255,.72);}
.sub-btn .caret{
  width:9px;height:9px;fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
  flex-shrink:0;transform:rotate(90deg);transition:transform .2s;
}
.sub-btn[aria-expanded="true"] .caret{transform:none;}
.dropdown .submenu{
  position:absolute;top:-8px;right:100%;left:auto;
  min-width:250px;
  background:var(--drop-fondo,#fff);
  padding:8px 0;
  box-shadow:0 12px 40px -8px rgba(0,0,0,.45);
  opacity:0;visibility:hidden;transform:translateX(6px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s;
  z-index:130;
}
.dropdown .dd-todos{
  border-top:.5px solid rgba(0,0,0,.1);
  margin-top:6px;padding-top:14px;
  color:var(--blue,#3B7FD4);font-weight:500;
}
@media(prefers-reduced-motion:reduce){.dropdown .submenu,.sub-btn .caret{transition:none;}}
@media(max-width:900px){.sub-btn .caret{transform:none;}.sub-btn[aria-expanded="true"] .caret{transform:rotate(180deg);}.dropdown .submenu{
    position:static;opacity:1;visibility:visible;transform:none;
    display:none;min-width:0;box-shadow:none;
    background:#111820;padding:2px 0 6px;
  }.dropdown .submenu a{padding-left:calc(var(--pad) + 30px);}.dropdown .submenu a:hover,.dropdown .submenu a:focus-visible{padding-left:calc(var(--pad) + 36px);}.dropdown .dd-todos{border-top-color:rgba(255,255,255,.08);color:var(--green,#00B4D8);}}
body .dropdown a{color:#0D0D0D;}
body .dropdown a:hover,body .dropdown a:focus-visible{color:#000;}
body .nav-links .dropdown a.active{color:var(--green-txt);font-weight:500;}
body .dropdown .dd-todos{color:var(--blue-txt);}
body .nav-links > li > a.active,body .drop-btn.active{color:var(--green);}
@media(max-width:900px){body .dropdown a{color:rgba(255,255,255,.62);}body .dropdown a:hover,body .dropdown a:focus-visible{color:#fff;}body .nav-links .dropdown a.active{color:var(--green);}body .dropdown .dd-todos{color:var(--green);}}
.foot-socials{display:flex;gap:8px;margin-top:14px;}
.nav-social svg{width:13px;height:13px;fill:none;stroke:rgba(255,255,255,.35);stroke-width:1.5;transition:stroke .2s;}
.nav-social a.wa svg{fill:rgba(255,255,255,.35);stroke:none;transition:fill .2s;}
@media(max-width:640px){.nav-social,.nav-back{display:none;}}
@media(max-width:900px){.nav-toggle{display:flex;}.nav-links{
    display:block;
    position:fixed;top:69px;left:0;right:0;
    max-height:calc(100dvh - 69px);overflow-y:auto;
    background:#06090C;
    border-top:.5px solid rgba(255,255,255,.08);
    padding:8px 0 28px;
    transform:translateY(-8px);opacity:0;visibility:hidden;
    transition:opacity .22s ease,transform .22s ease,visibility .22s;
    z-index:99;
  }.nav-links.open{opacity:1;visibility:visible;transform:none;}.nav-links > li{display:block;border-bottom:.5px solid rgba(255,255,255,.05);}.nav-links > li > a,.drop-btn{
    width:100%;padding:16px var(--pad);font-size:12px;letter-spacing:2px;
    justify-content:space-between;
  }.dropdown{
    position:static;opacity:1;visibility:visible;transform:none;
    display:none;min-width:0;box-shadow:none;
    background:#0D1117;padding:4px 0 10px;
  }.has-drop.open .dropdown{display:block;}.dropdown a{color:rgba(255,255,255,.62);padding:12px var(--pad) 12px calc(var(--pad) + 14px);font-size:13px;}.dropdown a:hover,.dropdown a:focus-visible{background:rgba(255,255,255,.05);color:#fff;padding-left:calc(var(--pad) + 20px);}.nav-social{display:flex;}.nav-cta{display:none;}}
/* el bloque de datos de contacto, sobre fondo oscuro */
.pi-datos{list-style:none;margin:0;padding:0;font-size:14.5px;}
.pi-datos li{padding:14px 0;border-bottom:1px solid var(--line);color:var(--muted);}
.pi-datos li:first-child{padding-top:0;}
.pi-datos strong{display:block;color:#fff;font-weight:500;font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:4px;}
.pi-datos a{color:var(--accent);}
/* los enlaces en prosa, que sobre este CSS quedaban invisibles */
.pi-link{color:#0d5f52;border-bottom:1px solid #2eb89a66;transition:color .2s,border-color .2s;}
.pi-link:hover{color:#2eb89a;border-bottom-color:#2eb89a;}
/* la fila de servicio, cuando además es un enlace */
.pi-sv{text-decoration:none;position:relative;}
.pi-sv h3{transition:color .2s;}
.pi-sv:hover h3{color:#0d5f52;}
.pi-sv h3:after{content:" \2192";color:#2eb89a;font-weight:400;}
