:root{
  --navy:#0B2545;
  --navy-2:#123a63;
  --teal:#1D9E75;
  --teal-dark:#0F6E56;
  --coral:#D85A30;
  --bg:#F5F7F8;
  --panel:#FFFFFF;
  --border:#DCE2E7;
  --text:#16232E;
  --text-2:#5A6B78;
  --radius:10px;
  --maxw:1080px;
}

/* Visor batimetrico */
.bathy-main{max-width:1500px}.bathy-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px;align-items:start}.bathy-sidebar{margin:0;position:sticky;top:84px}.bathy-map-panel{margin:0;padding:0;overflow:hidden;position:relative}.bathy-map-panel #bathy-map{height:650px;width:100%;background:#dbe5e8}.bathy-control{margin-bottom:18px}.bathy-control>label,.bathy-layers legend{display:flex;justify-content:space-between;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin-bottom:7px}.bathy-control select{width:100%;padding:10px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);font:inherit}.bathy-control input[type=range]{width:100%;accent-color:#123a63}.bathy-layers{border:0;padding:0;margin:0 0 18px}.bathy-layers label{display:flex;gap:9px;align-items:center;padding:7px 0;font-size:14px}.bathy-layers input{accent-color:#123a63}.bathy-legend{border-top:1px solid var(--border);padding-top:15px;margin-top:4px}.legend-title{font-size:13px;font-weight:700;margin-bottom:7px}.legend-gradient{height:14px;border-radius:10px;background:linear-gradient(90deg,#b00020,#e03126,#f57e20,#fad039,#45bec4,#1d69a8,#133770,#071840)}.legend-values{display:flex;justify-content:space-between;font-size:10px;color:var(--text-2);margin-top:5px}.bathy-actions{display:grid;gap:8px;margin-top:20px}.btn-map{border:0;border-radius:7px;padding:10px 12px;background:#123a63;color:#fff;font:600 13px Inter,sans-serif;cursor:pointer}.btn-map-secondary{background:#eef3f5;color:#123a63;border:1px solid var(--border)}#bathy-theme-toggle{display:none}.map-status{position:absolute;left:14px;bottom:14px;z-index:500;max-width:520px;background:rgba(255,255,255,.92);box-shadow:0 2px 8px rgba(0,0,0,.14);border-radius:6px;padding:8px 11px;font-size:12px;color:#334}.bathy-info-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center}.bathy-metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0}.bathy-metadata div{border-left:3px solid #d6e2e7;padding-left:10px}.bathy-metadata dt{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2)}.bathy-metadata dd{margin:2px 0 0;font-size:13px;font-weight:600}.bathy-warning{margin:0}.map-fullscreen{overflow:hidden}.map-fullscreen .site-header,.map-fullscreen .page-hero,.map-fullscreen .service-context,.map-fullscreen .bathy-info-grid,.map-fullscreen .bathy-main>.panel:not(.bathy-map-panel),.map-fullscreen footer{display:none!important}.map-fullscreen .bathy-main{max-width:none;padding:12px;margin:0}.map-fullscreen .bathy-layout{grid-template-columns:290px minmax(0,1fr);height:calc(100vh - 24px)}.map-fullscreen .bathy-sidebar{display:block!important;position:static;height:calc(100vh - 24px);overflow:auto}.map-fullscreen #bathy-theme-toggle{display:block}.map-fullscreen .bathy-map-panel{border:0;border-radius:10px}.map-fullscreen .bathy-map-panel #bathy-map{height:calc(100vh - 24px)}.map-dark{background:#071827;color:#EDF5F8}.map-dark .bathy-main,.map-dark .bathy-layout{background:#071827}.map-dark .panel,.map-dark .bathy-sidebar{border-color:#315064;background:#10283A;color:#EDF5F8}.map-dark .bathy-control>label,.map-dark .bathy-layers legend,.map-dark .legend-values{color:#B4C8D3}.map-dark .bathy-control select,.map-dark .port-map-search input,.map-dark .btn-map-secondary{border-color:#526675;background:#22333F;color:#F3F7F9}.map-dark .bathy-legend{border-color:#315064}.map-dark .map-status,.map-dark .leaflet-control-zoom a,.map-dark .leaflet-control-attribution,.map-dark .leaflet-popup-content-wrapper,.map-dark .leaflet-popup-tip{background:#22333F;color:#F3F7F9}.map-dark #bathy-map .leaflet-tile-pane{filter:brightness(.62) saturate(.72) contrast(1.15)}.vessel-arrow{background:transparent;border:0}
@media(max-width:850px){.bathy-layout{grid-template-columns:1fr}.bathy-sidebar{position:static}.bathy-map-panel #bathy-map{height:520px}.bathy-info-grid{grid-template-columns:1fr}.bathy-metadata{grid-template-columns:1fr}}
.traffic-map-fullscreen{overflow:hidden}.traffic-map-fullscreen .site-header,.traffic-map-fullscreen .page-hero,.traffic-map-fullscreen footer,.traffic-map-fullscreen .tool-heading,.traffic-map-fullscreen .source-note{display:none!important}.traffic-map-fullscreen main{max-width:none;margin:0;padding:0}.traffic-map-fullscreen .map-tool-panel{position:relative;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}.traffic-map-fullscreen #live-map{height:100vh!important;border:0!important;border-radius:0!important}
.sounding-label-wrap{background:transparent!important;border:0!important}.sounding-label{display:block;width:42px;text-align:center;font:700 11px/18px 'IBM Plex Mono',monospace;letter-spacing:-.3px;text-shadow:-1px -1px 0 rgba(255,255,255,.95),1px -1px 0 rgba(255,255,255,.95),-1px 1px 0 rgba(255,255,255,.95),1px 1px 0 rgba(255,255,255,.95),0 0 4px #fff;cursor:help}
.nav-signal-wrap{background:transparent!important;border:0!important}.nav-signal{display:block;width:13px;height:13px;border:1.5px solid #fff;box-shadow:0 0 0 1px rgba(7,24,64,.85),0 1px 4px rgba(0,0,0,.45)}.nav-signal-buoy{border-radius:50% 50% 45% 45%}.nav-signal-beacon{border-radius:1px;transform:rotate(45deg)}.nav-signal-lit:after{content:'';display:block;width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:0 0 5px 2px #fff;position:absolute;left:5px;top:5px}.nav-signal-blind{opacity:.78}.leaflet-control.signal-toggle{background:rgba(255,255,255,.95);padding:7px 9px;border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.35);font:600 12px/18px Inter,sans-serif;color:#223}.leaflet-control.signal-toggle label{display:flex;align-items:center;gap:6px;cursor:pointer}.leaflet-control.signal-toggle input{accent-color:#123a63}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:15px;
  line-height:1.6;
}
.mono{font-family:'IBM Plex Mono',monospace;}
a{color:var(--teal-dark);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;display:block;}

/* Header / nav */
header.site-header{
  background:var(--navy);
  color:#fff;
  position:sticky;
  top:0;
  z-index:2000;
}
.header-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:14px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{display:flex;align-items:center;gap:10px;}
.brand img{height:38px;width:auto;}
.brand span{font-weight:700;font-size:16px;letter-spacing:0.3px;}
nav.main-nav{display:flex;align-items:center;gap:6px;}
nav.main-nav > ul{list-style:none;display:flex;gap:4px;margin:0;padding:0;}
nav.main-nav a{
  color:#cdd9e4;
  font-size:14px;
  font-weight:500;
  padding:10px 12px;
  border-radius:6px;
  display:block;
  white-space:nowrap;
}
nav.main-nav a:hover,
nav.main-nav a.active{color:#fff;background:rgba(255,255,255,0.08);text-decoration:none;}
.has-dropdown{position:relative;}
.has-dropdown::before{content:'';position:absolute;z-index:2099;left:-12px;right:-12px;top:100%;height:16px;}
.dropdown{
  display:none;
  position:absolute;
  top:100%;left:0;
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:8px;
  min-width:220px;
  padding:6px;
  box-shadow:0 8px 24px rgba(11,37,69,0.18);
  z-index:2100;
}
.has-dropdown:hover .dropdown,
.has-dropdown:focus-within .dropdown{display:block;}
nav.main-nav .dropdown a{color:var(--navy);padding:9px 10px;border-radius:6px;font-size:13.5px;font-weight:600;}
nav.main-nav .dropdown a:hover{background:#F0F4F6;color:var(--navy);text-decoration:none;}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,0.3);color:#fff;border-radius:6px;padding:6px 10px;font-size:18px;cursor:pointer;}

@media (max-width:820px){
  .nav-toggle{display:block;}
  nav.main-nav{
    display:none;
    position:absolute;
    top:100%;left:0;right:0;
    background:var(--navy-2);
    flex-direction:column;
    padding:10px 20px 16px;
  }
  nav.main-nav.open{display:flex;}
  nav.main-nav > ul{flex-direction:column;width:100%;}
  .dropdown{position:static;background:rgba(255,255,255,0.05);border:none;box-shadow:none;margin:2px 0 8px 10px;}
  .dropdown a{color:#cdd9e4;}
  .dropdown a:hover{background:rgba(255,255,255,0.08);color:#fff;}
}

/* Page structure */
main{max-width:var(--maxw);margin:0 auto;padding:36px 20px 60px;}
.page-hero{
  background:var(--navy);
  color:#fff;
  padding:38px 0 46px;
}
.page-hero-inner{max-width:var(--maxw);margin:0 auto;padding:0 20px;}
.page-hero h1{margin:0 0 8px;font-size:26px;font-weight:700;}
.page-hero p{margin:0;color:#9db3c9;font-size:14.5px;max-width:640px;}
.eyebrow{
  text-transform:uppercase;letter-spacing:0.6px;font-size:11.5px;
  color:var(--teal);font-weight:600;margin-bottom:6px;display:block;
}

.panel{
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:24px;
  margin-bottom:22px;
}
.panel h2{font-size:18px;font-weight:700;margin:0 0 12px;}
.panel p{color:var(--text-2);}

.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:24px 0;}
.card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  padding:20px;transition:border-color .15s, transform .15s;
}
.card:hover{border-color:var(--teal);transform:translateY(-2px);}
.card h3{margin:0 0 8px;font-size:15.5px;}
.card p{margin:0 0 12px;font-size:13.5px;color:var(--text-2);}
.card a.card-link{font-size:13px;font-weight:600;}

.btn{
  display:inline-block;background:var(--teal);color:#fff;
  padding:10px 18px;border-radius:7px;font-weight:600;font-size:14px;
}
.btn:hover{background:var(--teal-dark);text-decoration:none;color:#fff;}
.btn.ghost{background:transparent;border:1px solid var(--navy);color:var(--navy);}
.btn.ghost:hover{background:#EEF2F5;}

.link-list{list-style:none;margin:0;padding:0;}
.link-list li{border-bottom:1px solid #EEF1F3;padding:11px 0;}
.link-list li:last-child{border-bottom:none;}
.link-list a{font-weight:600;font-size:14.5px;}
.link-list .meta{color:var(--text-2);font-size:12.5px;margin-top:2px;}

details.faq-item{
  border-bottom:1px solid #EEF1F3;padding:14px 0;
}
details.faq-item:last-child{border-bottom:none;}
details.faq-item summary{
  cursor:pointer;font-weight:600;font-size:14.5px;color:var(--navy);
  list-style:none;display:flex;justify-content:space-between;align-items:center;
}
details.faq-item summary::-webkit-details-marker{display:none;}
details.faq-item summary::after{content:'+';font-size:18px;color:var(--teal);font-weight:400;}
details.faq-item[open] summary::after{content:'–';}
details.faq-item p{margin:10px 0 0;color:var(--text-2);font-size:14px;}

.note-box{
  background:#F0F4F6;border-radius:8px;padding:14px 16px;font-size:13.5px;
  color:var(--text-2);margin-top:10px;
}
.iframe-wrap{border:1px solid var(--border);border-radius:10px;overflow:hidden;}
.iframe-wrap iframe{width:100%;height:900px;border:0;display:block;}
.iframe-wrap.ports-frame iframe{height:2550px;}
@media (max-width:900px){.iframe-wrap.ports-frame iframe{height:3300px;}}

/* Hero con imagen de fondo */
.page-hero.with-image{
  position:relative;
  background-size:cover;
  background-position:center;
  padding:0;
}
.page-hero.with-image::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(11,37,69,0.88), rgba(11,37,69,0.75));
}
.page-hero.with-image .page-hero-inner{position:relative;padding:44px 20px 50px;}

/* Figuras con pie de foto */
figure.photo{margin:0 0 20px;}
figure.photo img{border-radius:10px;width:100%;height:auto;object-fit:cover;}
figure.photo figcaption{font-size:12px;color:var(--text-2);margin-top:6px;}
.figure-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:640px){.figure-row{grid-template-columns:1fr;}}

.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:20px 0;}
.gallery{overflow:visible;}
.gallery-item{overflow:hidden;border-radius:10px;}
.gallery img{border-radius:10px;width:100%;height:150px;object-fit:cover;transition:transform .25s ease;}
.gallery-item:hover img{transform:scale(1.08);}

.panel.with-figure{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:center;}
.panel.with-figure figure.photo{margin:0;}
@media (max-width:720px){.panel.with-figure{grid-template-columns:1fr;}}

footer.site-footer{
  background:var(--navy);color:#9db3c9;padding:26px 20px;margin-top:40px;
}
.footer-inner{
  max-width:var(--maxw);margin:0 auto;display:flex;justify-content:space-between;
  align-items:center;flex-wrap:wrap;gap:12px;font-size:12.5px;
}
.footer-inner img{height:26px;opacity:0.85;}

/* V54 · independencia institucional, ayuda y términos */
.independence-notice{margin:32px 0;padding:28px;border:1px solid #BFD8D2;border-left:5px solid var(--teal);border-radius:16px;background:#F4FBF9;box-shadow:var(--shadow-sm)}
.independence-notice h2{margin:3px 0 10px;color:var(--navy)}.independence-notice p{margin:8px 0;color:var(--text-2)}.independence-notice a{display:inline-block;margin-top:8px;font-weight:800}
.legal-intro{max-width:900px;color:var(--text-2);font-size:16px}.legal-sections h2{margin:30px 0 8px;padding-top:4px;color:var(--navy)}.legal-sections h2:first-child{margin-top:0}.legal-sections p{max-width:960px}.legal-list{display:grid;gap:8px;color:var(--text-2)}
.help-launcher{position:fixed;right:22px;bottom:22px;z-index:3300;display:flex;align-items:center;gap:7px;border:0;border-radius:999px;padding:12px 17px;background:var(--navy);color:#fff;font:800 13px/1 Manrope,sans-serif;box-shadow:0 10px 30px rgba(9,37,63,.28);cursor:pointer}.help-launcher:hover{background:var(--teal-dark)}
.tool-help{position:fixed;right:22px;bottom:78px;z-index:3299;width:min(390px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 110px));overflow:auto;padding:25px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow-lg)}.tool-help[hidden]{display:none}.tool-help-close{position:absolute;right:13px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:#EEF3F5;color:var(--navy);font-size:25px;cursor:pointer}.tool-help h2{margin:4px 35px 18px 0;font-size:21px;color:var(--navy)}.tool-help h3{margin:17px 0 4px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--teal-dark)}.tool-help p{margin:0;color:var(--text-2);font-size:14px}.tool-help-links{margin-top:20px!important;padding-top:14px;border-top:1px solid var(--border)}
.help-paths{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:26px 0}.help-paths article{padding:20px;border:1px solid var(--border);border-radius:16px;background:#fff}.help-paths span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--teal-soft);color:var(--teal-dark);font-weight:800}.help-paths h2{margin:12px 0 5px;font-size:18px}.help-paths p{margin:0;color:var(--text-2);font-size:13px}.help-glossary{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:0}.help-glossary div{padding:14px 0;border-bottom:1px solid var(--border)}.help-glossary dt{font-weight:800;color:var(--navy)}.help-glossary dd{margin:3px 0 0;color:var(--text-2)}
@media(max-width:850px){.help-paths{grid-template-columns:1fr 1fr}.help-glossary{grid-template-columns:1fr}}
@media(max-width:560px){.help-launcher{right:14px;bottom:14px}.help-launcher span{display:none}.tool-help{right:10px;bottom:66px;width:calc(100vw - 20px)}.help-paths{grid-template-columns:1fr}}

/* Sistema visual 2026 */
:root{
  --navy:#09253F;
  --navy-2:#123B5A;
  --navy-3:#1B4B69;
  --teal:#1A8A7A;
  --teal-dark:#116B61;
  --teal-soft:#E5F3F0;
  --coral:#D96C42;
  --bg:#F3F6F8;
  --panel:#FFFFFF;
  --border:#DCE5EA;
  --border-strong:#C9D6DD;
  --text:#122231;
  --text-2:#536675;
  --text-3:#748692;
  --radius-sm:10px;
  --radius:18px;
  --radius-lg:26px;
  --shadow-sm:0 4px 16px rgba(9,37,63,.06);
  --shadow:0 14px 38px rgba(9,37,63,.09);
  --shadow-lg:0 24px 65px rgba(9,37,63,.14);
  --maxw:1220px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

html{scroll-behavior:smooth;}
body{font-family:'Manrope',sans-serif;font-size:15px;line-height:1.7;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;}
a{color:var(--teal-dark);transition:color .2s var(--ease);}
a:hover{color:var(--teal);text-decoration:none;}
::selection{background:var(--teal-soft);color:var(--navy);}
.skip-link{position:fixed;left:16px;top:12px;z-index:5000;padding:10px 14px;border-radius:9px;background:#fff;color:var(--navy);font-weight:800;box-shadow:var(--shadow-lg);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid rgba(26,138,122,.48);outline-offset:3px}a:focus-visible,button:focus-visible{border-radius:5px}

header.site-header{background:rgba(255,255,255,.94);color:var(--navy);border-bottom:1px solid rgba(201,214,221,.85);box-shadow:0 3px 18px rgba(9,37,63,.045);backdrop-filter:blur(14px);}
.header-inner{min-height:78px;padding:9px 24px;}
.brand{color:var(--navy);gap:12px;min-width:max-content;}
.brand:hover{color:var(--navy);}
.brand img{height:58px;width:58px;object-fit:cover;object-position:top;border-radius:50%;}
.brand span{display:flex;flex-direction:column;font-size:15px;font-weight:800;line-height:1.1;letter-spacing:.06em;}
.brand small{font-size:9px;font-weight:600;color:var(--text-3);letter-spacing:.015em;margin-top:5px;text-transform:none;}
nav.main-nav > ul{gap:9px;}
nav.main-nav a{position:relative;color:#50616E;font-size:13.5px;font-weight:700;padding:12px 10px;border-radius:0;}
nav.main-nav > ul > li > a::after{content:'';position:absolute;left:10px;right:10px;bottom:5px;height:2px;border-radius:2px;background:var(--teal);transform:scaleX(0);transition:transform .2s var(--ease);}
nav.main-nav > ul > li > a:hover,nav.main-nav > ul > li > a.active{color:var(--navy);background:transparent;}
nav.main-nav > ul > li > a:hover::after,nav.main-nav > ul > li > a.active::after{transform:scaleX(1);}
.dropdown{top:calc(100% + 4px);min-width:270px;padding:10px;border-color:var(--border);border-radius:14px;box-shadow:var(--shadow-lg);}
nav.main-nav .dropdown a{padding:10px 12px;border-radius:9px;font-size:13px;}
nav.main-nav .dropdown a:hover{background:var(--teal-soft);color:var(--teal-dark);}
.nav-toggle{color:var(--navy);border-color:var(--border-strong);border-radius:10px;background:#fff;padding:7px 11px;}

main{padding:48px 24px 76px;}
.page-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy),var(--navy-2));padding:54px 0 60px;}
.page-hero::after{content:'';position:absolute;width:420px;height:420px;border-radius:50%;right:-170px;top:-270px;border:90px solid rgba(255,255,255,.035);}
.page-hero-inner{position:relative;z-index:1;padding:0 24px;}
.page-hero h1{max-width:820px;margin:0 0 12px;font-size:clamp(30px,4vw,48px);font-weight:800;line-height:1.08;letter-spacing:-.035em;}
.page-hero p{font-size:16px;line-height:1.65;color:#C4D3DD;max-width:720px;}
.eyebrow{margin-bottom:12px;color:#71D1BF;font-size:11px;font-weight:800;letter-spacing:.14em;}
.page-hero.with-image::before{background:linear-gradient(90deg,rgba(6,28,48,.92) 0%,rgba(9,37,63,.77) 52%,rgba(9,37,63,.45) 100%);}
.page-hero.with-image .page-hero-inner{padding:68px 24px 74px;}

.panel{border:1px solid rgba(220,229,234,.92);border-radius:var(--radius);padding:clamp(24px,3vw,36px);margin-bottom:28px;box-shadow:var(--shadow-sm);}
.panel h2{font-size:clamp(19px,2vw,24px);line-height:1.25;letter-spacing:-.02em;margin-bottom:14px;}
.panel p{color:var(--text-2);}
.card-grid{gap:20px;margin:30px 0;}
.card{position:relative;border:1px solid var(--border);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);}
.card::before{content:'';position:absolute;left:0;top:24px;bottom:24px;width:3px;border-radius:0 4px 4px 0;background:var(--teal);opacity:0;transition:opacity .2s var(--ease);}
.card:hover{border-color:#C8DBD7;box-shadow:var(--shadow);transform:translateY(-4px);}
.card:hover::before{opacity:1;}
.card h3{font-size:16.5px;line-height:1.35;letter-spacing:-.015em;margin-bottom:10px;}
.card p{font-size:13.5px;line-height:1.65;}
.card a.card-link{display:inline-flex;align-items:center;gap:5px;font-weight:800;}

.btn{border:1px solid transparent;border-radius:11px;padding:11px 19px;background:var(--navy-2);font-weight:800;box-shadow:0 7px 18px rgba(18,59,90,.16);transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease);}
.btn:hover{background:var(--navy);box-shadow:0 10px 25px rgba(9,37,63,.22);transform:translateY(-2px);}
.btn.ghost{border-color:var(--border-strong);background:#fff;color:var(--navy);box-shadow:none;}
.btn.ghost:hover{border-color:var(--navy);background:#fff;}
.note-box{background:var(--teal-soft);border:1px solid #CCE5DF;border-radius:var(--radius-sm);padding:16px 18px;}
.iframe-wrap{border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;}
figure.photo img,.gallery-item,.gallery img{border-radius:var(--radius);}
.gallery{gap:18px;}
details.faq-item{padding:18px 0;border-color:var(--border);}
details.faq-item summary{font-size:14.5px;font-weight:800;color:var(--navy);}
details.faq-item summary::after{display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:var(--teal-soft);color:var(--teal-dark);}
input,select,textarea,button{font:inherit;}
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{width:100%;min-height:44px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--text);padding:10px 12px;outline:none;transition:border-color .2s,box-shadow .2s;}
input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(26,138,122,.12);}
table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;}
th{background:#EDF3F5;color:var(--navy);font-size:11px;letter-spacing:.06em;text-transform:uppercase;text-align:left;}
th,td{padding:12px 14px;border-bottom:1px solid var(--border);}
tr:last-child td{border-bottom:0;}

footer.site-footer{margin-top:0;padding:58px 24px 22px;background:#09263D;color:#BCD0DB;}
.malvinas-strip{display:flex;justify-content:center;align-items:center;padding:30px 24px;background:#fff;border-top:1px solid var(--border);}
.malvinas-strip img{display:block;width:min(800px,100%);height:auto;aspect-ratio:80/13;object-fit:contain;}
.footer-inner{align-items:start;gap:60px;font-size:13px;}
.footer-brand{display:flex;align-items:flex-start;gap:18px;max-width:510px;}
.footer-logo{display:grid;place-items:center;flex:0 0 78px;width:78px;height:78px;border-radius:50%;overflow:hidden;background:#fff;padding:5px;}
.footer-brand img,.footer-logo img{width:100%;height:100%;object-fit:contain;opacity:1;background:#fff;border-radius:50%;padding:0;filter:none!important;}
.footer-brand strong{display:block;color:#fff;font-size:19px;letter-spacing:-.02em;margin:4px 0 8px;}
.footer-brand p{margin:0;max-width:390px;line-height:1.65;color:#9EB5C3;}
.footer-links{display:flex;gap:38px;margin-left:auto;}
.footer-links>div{display:flex;flex-direction:column;min-width:130px;gap:7px;}
.footer-links strong{color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px;}
.footer-links a{color:#B7CBD6;font-weight:600;}
.footer-links a:hover{color:#fff;}
.footer-bottom{max-width:var(--maxw);margin:38px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11.5px;color:#819CAA;}

@media(max-width:820px){
  .header-inner{min-height:68px;padding:7px 18px;}
  .brand img{height:50px;width:50px;}.brand small{display:none;}
  nav.main-nav{background:#fff;border-top:1px solid var(--border);box-shadow:var(--shadow);padding:12px 18px 20px;}
  nav.main-nav a{color:var(--navy);padding:11px 10px;}
  nav.main-nav > ul > li > a::after{display:none;}
  .dropdown{background:#F3F7F8;border:0;margin:3px 0 8px 12px;}
  nav.main-nav .dropdown a{color:var(--navy);}
  main{padding:34px 18px 56px;}
  .page-hero-inner{padding:0 18px;}.page-hero.with-image .page-hero-inner{padding:52px 18px 58px;}
  .footer-inner{display:grid;gap:36px;}.footer-links{margin:0;gap:42px;}.footer-bottom{margin-top:30px;}
}
@media(max-width:520px){
  .brand span{font-size:13px;}.page-hero h1{font-size:32px;}.page-hero p{font-size:14.5px;}
  .panel{padding:22px}.card{padding:22px}.footer-brand{display:block}.footer-brand img{margin-bottom:16px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
}
.btn-map,.leaflet-control.signal-toggle{font-family:'Manrope',sans-serif;}

/* Portada audiovisual */
.home-hero{position:relative;min-height:clamp(620px,calc(100vh - 78px),820px);display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff;isolation:isolate;}
.home-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3;}
.home-hero-slideshow{position:absolute;inset:0;z-index:-3;overflow:hidden;background:#071B2D}.home-hero-slideshow img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:none;animation:heroCrossfade 40s linear infinite}.home-hero-slideshow img:nth-child(1){animation-delay:0s}.home-hero-slideshow img:nth-child(2){animation-delay:8s}.home-hero-slideshow img:nth-child(3){animation-delay:16s}.home-hero-slideshow img:nth-child(4){animation-delay:24s}.home-hero-slideshow img:nth-child(5){animation-delay:32s}@keyframes heroCrossfade{0%{opacity:0}4%{opacity:1}20%{opacity:1}24%{opacity:0}100%{opacity:0}}
.home-hero-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(4,24,41,.94) 0%,rgba(5,31,51,.82) 44%,rgba(7,35,55,.5) 72%,rgba(6,29,47,.4) 100%);}
.home-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.08),transparent 55%,rgba(3,20,34,.52));}
.home-hero-inner{width:100%;max-width:var(--maxw);margin:0 auto;padding:80px 24px 112px;}
.hero-badge{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px);font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#DDEBED;}
.hero-badge::before{content:'';width:7px;height:7px;border-radius:50%;background:#70D1BF;box-shadow:0 0 0 5px rgba(112,209,191,.13);}
.home-hero h1{max-width:850px;margin:28px 0 22px;font-size:clamp(48px,6.3vw,84px);font-weight:800;line-height:.98;letter-spacing:-.055em;text-wrap:balance;}
.home-hero p{max-width:720px;margin:0;color:#D0DEE4;font-size:clamp(16px,1.5vw,19px);line-height:1.68;}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:34px;}
.hero-actions .btn{padding:14px 21px;border-radius:12px;box-shadow:none;}
.hero-primary{background:#1B668C;}.hero-primary:hover{background:#155475;}
.hero-secondary{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5);backdrop-filter:blur(8px);}.hero-secondary:hover{background:#fff;color:var(--navy);}
.hero-scroll{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;color:#E2EDF1;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;}
.hero-scroll:hover{color:#fff;}.hero-scroll span{display:block;width:1px;height:30px;background:linear-gradient(#70D1BF,transparent);}
.media-credit{position:absolute;right:18px;bottom:14px;color:rgba(255,255,255,.52);font-size:8px;}.media-credit a{color:inherit;}

.home-metrics{position:relative;z-index:2;max-width:var(--maxw);margin:-1px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);}
.home-metrics>div{display:flex;flex-direction:column;justify-content:center;min-height:126px;padding:22px 30px;border-right:1px solid var(--border);}
.home-metrics>div:last-child{border-right:0;}.home-metrics strong{font-size:26px;line-height:1.1;color:var(--navy);letter-spacing:-.04em;}.home-metrics span{margin-top:7px;font-size:11px;color:var(--text-3);font-weight:700;}
.home-main{padding-top:80px;}
.home-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start;margin-bottom:70px;}
.section-kicker{display:block;margin-bottom:12px;color:var(--teal-dark);font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.home-intro h2,.section-heading h2,.home-cta h2{margin:0;font-size:clamp(29px,3.7vw,46px);line-height:1.12;letter-spacing:-.045em;text-wrap:balance;}
.home-intro>p{margin:28px 0 0;font-size:15px;line-height:1.85;color:var(--text-2);}
.featured-services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:90px;}
.feature-card{position:relative;min-height:390px;padding:30px;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-lg);color:#fff;background-color:var(--navy);background-position:center;background-size:cover;box-shadow:var(--shadow);isolation:isolate;transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.feature-card::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,30,48,.2),rgba(6,29,47,.93));}
.feature-card:hover{color:#fff;transform:translateY(-7px);box-shadow:var(--shadow-lg);}.feature-card:hover .feature-link b{transform:translateX(5px);}
.feature-ports{background-image:url('/assets/img/zarate.jpg');}.feature-stats{background-image:url('/assets/img/satelite_rio_plata.jpg');}.feature-live{background-image:url('/assets/img/panel_vnt_home.jpg');}
.feature-number{position:absolute;top:28px;right:28px;font:500 11px 'IBM Plex Mono',monospace;color:rgba(255,255,255,.65);}
.feature-tag{align-self:flex-start;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.14);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(6px);}
.feature-card h3{margin:auto 0 12px;font-size:26px;line-height:1.14;letter-spacing:-.035em;}.feature-card p{margin:0;color:#D4E0E5;font-size:13px;line-height:1.65;}.feature-link{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.25);font-size:12px;font-weight:800;}.feature-link b{font-size:18px;transition:transform .2s;}
.tools-section{margin-bottom:80px;}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px;}.section-heading h2{font-size:clamp(27px,3vw,38px);}.section-heading>a{font-size:12px;font-weight:800;white-space:nowrap;}
.tool-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border-strong);}
.tool-grid>a{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;min-height:118px;padding:22px 22px 22px 8px;color:var(--text);border-bottom:1px solid var(--border);transition:background .2s,padding .2s;}
.tool-grid>a:nth-child(odd){border-right:1px solid var(--border);}.tool-grid>a:hover{background:#fff;padding-left:18px;}.tool-grid>a>span{font:500 10px 'IBM Plex Mono',monospace;color:var(--teal);}.tool-grid h3{margin:0 0 5px;font-size:15px;}.tool-grid p{margin:0;color:var(--text-3);font-size:12px;}.tool-grid b{font-size:18px;color:var(--teal-dark);}
.home-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:48px 52px;border-radius:var(--radius-lg);background:linear-gradient(125deg,var(--navy),var(--navy-3));color:#fff;box-shadow:var(--shadow);}.home-cta>div{max-width:780px;}.home-cta .section-kicker{color:#70D1BF;}.home-cta h2{font-size:clamp(27px,3.5vw,42px);}.home-cta .btn{min-width:135px;text-align:center;background:#fff;color:var(--navy);box-shadow:none;}.home-cta .btn:hover{background:var(--teal-soft);}

@media(max-width:900px){
  .home-hero{min-height:680px;}.home-hero-inner{padding-top:70px}.home-metrics{grid-template-columns:1fr 1fr;margin:0;border-radius:0;}.home-metrics>div{min-height:105px}.home-metrics>div:nth-child(2){border-right:0}.home-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .home-intro{grid-template-columns:1fr;gap:20px}.home-intro>p{margin-top:0}.featured-services{grid-template-columns:1fr 1fr}.feature-card:last-child{grid-column:1/-1;min-height:330px}.footer-brand{max-width:none}
}
@media(max-width:640px){
  .home-hero{min-height:650px}.home-hero-inner{padding:62px 18px 105px}.home-hero h1{font-size:43px}.hero-actions{display:grid}.hero-actions .btn{text-align:center}.hero-scroll{display:none}.media-credit{right:10px;bottom:8px}
  .home-metrics{padding:0 10px}.home-metrics>div{padding:17px 13px}.home-metrics strong{font-size:21px}.home-metrics span{font-size:9.5px}
  .home-main{padding-top:58px}.home-intro{margin-bottom:48px}.featured-services{grid-template-columns:1fr;margin-bottom:64px}.feature-card,.feature-card:last-child{grid-column:auto;min-height:340px}.section-heading{display:block}.section-heading>a{display:inline-block;margin-top:15px}.tool-grid{grid-template-columns:1fr}.tool-grid>a:nth-child(odd){border-right:0}.home-cta{display:block;padding:34px 25px}.home-cta .btn{margin-top:25px}
}

/* Páginas internas */
.breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:28px;color:rgba(255,255,255,.58);font-size:10px;font-weight:700}.breadcrumbs a{color:rgba(255,255,255,.72)}.breadcrumbs a:hover{color:#fff}.breadcrumbs span:last-child{color:#fff}.breadcrumbs+ .eyebrow{margin-top:0}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.hero-meta span{padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);color:#D5E2E7;font-size:9px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;backdrop-filter:blur(7px)}.hero-meta .live-meta::before{content:'';display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:#70D1BF;box-shadow:0 0 0 4px rgba(112,209,191,.12)}
.internal-main{padding-top:50px}.tool-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:20px}.tool-heading h2{margin:0;font-size:clamp(24px,3vw,34px);line-height:1.15;letter-spacing:-.035em}.tool-heading>a{font-size:11.5px;font-weight:800;white-space:nowrap}.tool-panel{padding:14px}.tool-panel>.note-box{margin:14px 2px 1px}.map-tool-panel{padding:18px}.content-heading{margin-bottom:25px}.content-heading h2{margin:0 0 8px;font-size:clamp(24px,3vw,34px);letter-spacing:-.035em}.content-heading p{max-width:680px;margin:0;color:var(--text-2);font-size:13.5px}
.source-note{margin:-7px 0 18px;color:var(--text-3);font-size:10.5px}.map-actions{display:flex;justify-content:flex-end;margin-bottom:10px}.live-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 230px;gap:10px;margin-bottom:14px}.live-toolbar .map-search{margin:0}.map-filter{width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--text);font:600 12px 'Manrope',sans-serif}.live-map{width:100%;height:520px;border-radius:12px;border:1px solid var(--border)}.vessel-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 17px;margin-top:10px;padding:10px 13px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--text-2);font-size:10px;font-weight:700}.vessel-legend span{display:flex;align-items:center;gap:6px}.vessel-legend small{margin-left:auto;color:var(--text-3);font-size:9px;font-weight:600}.legend-vessel{display:block;width:12px;height:17px;clip-path:polygon(50% 0,100% 100%,50% 76%,0 100%);background:#687A84;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}.legend-vessel.moving{width:15px;height:21px;background:#087F8C}.legend-vessel.stopped{background:#EF7A23}.legend-vessel.special{width:13px;height:19px;background:#C52F43}.live-info{min-height:20px;margin-top:10px;padding:11px 14px;border-radius:9px;background:#F0F4F6;color:var(--text-2);font-size:12px}.vessels-table-wrap{max-height:340px;overflow:auto}.vessels-table{width:100%;min-width:860px;font-size:12px;border-collapse:collapse}.signal-old{color:#9B2C3B;font-weight:700}.vessel-popup{min-width:270px;color:#183444}.vessel-popup-head{display:flex;align-items:center;gap:9px;padding-bottom:9px;border-bottom:1px solid #E1E8EB}.vessel-popup-head strong,.vessel-popup-head small{display:block}.vessel-popup-head strong{font-size:14px}.vessel-popup-head small{margin-top:2px;color:#647985;font-size:10px}.vessel-status-dot{width:9px;height:9px;border-radius:50%;background:#687A84;box-shadow:0 0 0 4px #EEF2F4}.vessel-status-dot.moving{background:#087F8C}.vessel-status-dot.stopped{background:#EF7A23}.vessel-status-dot.special{background:#C52F43}.vessel-popup-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;padding:11px 0}.vessel-popup-grid .wide{grid-column:1/-1}.vessel-popup-grid span{display:block;color:#71838D;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.vessel-popup-grid b{display:block;margin-top:2px;font-size:10.5px}.vessel-signal{padding:7px 9px;border-radius:7px;background:#E7F4F1;color:#146757;font-size:9.5px;font-weight:700}.vessel-signal.stale{background:#FBECE8;color:#8F382D}.vessel-map-link{display:inline-block;margin-top:9px;font-size:10px;font-weight:800}.vessel-popup-note{margin:8px 0 0;color:#71838D;font-size:8.5px;line-height:1.4}.vessel-stale{opacity:.72}
.article-page{max-width:1120px}.featured-panel{overflow:hidden;padding:0;grid-template-columns:1.05fr .95fr;gap:0}.featured-panel>div{padding:44px}.featured-panel figure.photo{height:100%}.featured-panel figure.photo img{height:100%;min-height:390px;border-radius:0;object-fit:cover}.featured-panel figcaption{padding:0 15px 10px}.faq-panel{padding:38px 44px}.visual-panel{padding:16px}.visual-panel .figure-row{gap:16px}.visual-panel figure{margin:0}.visual-panel figure img{height:285px;object-fit:cover}.stations-panel{padding:40px 44px}.stations-panel .link-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.stations-panel .link-list li{position:relative;padding:16px 34px 16px 0}.stations-panel .link-list li::after{content:'↗';position:absolute;right:4px;top:17px;color:var(--teal)}.stations-panel .link-list a{font-size:14px}.stations-panel .link-list .meta{font-family:'IBM Plex Mono',monospace;font-size:10px}
.about-page{max-width:1120px}.about-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:62px;align-items:center;margin-bottom:76px}.about-intro h2{margin:0 0 18px;font-size:clamp(31px,4vw,48px);letter-spacing:-.045em}.about-intro p{color:var(--text-2)}.about-photo{margin:0}.about-photo img{height:470px;object-fit:cover;box-shadow:var(--shadow)}.audience-section{margin-bottom:76px}.audience-section>.content-heading{max-width:760px}.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.audience-grid>div{min-height:225px;padding:25px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}.audience-grid span{font:500 10px 'IBM Plex Mono',monospace;color:var(--teal)}.audience-grid h3{margin:45px 0 8px;font-size:16px}.audience-grid p{margin:0;color:var(--text-2);font-size:12px;line-height:1.65}.inner-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:42px 46px;border-radius:var(--radius-lg);background:linear-gradient(125deg,var(--navy),var(--navy-3));color:#fff}.inner-cta h2{max-width:720px;margin:0;font-size:clamp(26px,3.5vw,40px);line-height:1.15;letter-spacing:-.04em}.inner-cta .section-kicker{color:#70D1BF}.inner-cta .btn{background:#fff;color:var(--navy);box-shadow:none;white-space:nowrap}
.contact-page{max-width:1180px}.contact-intro{max-width:720px;margin:0 0 38px}.contact-intro h2{margin:0 0 12px;font-size:clamp(30px,4vw,45px);line-height:1.14;letter-spacing:-.045em}.contact-intro p{color:var(--text-2)}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.contact-grid>a{min-height:300px;padding:32px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;color:var(--text);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.contact-grid>a:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.contact-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:38px;border-radius:12px;background:var(--teal-soft);color:var(--teal-dark);font-size:20px;font-weight:800}.contact-icon-linkedin{background:#E8F3FA;color:#0A66C2;font-family:Arial,sans-serif;font-size:18px;letter-spacing:-.04em}.contact-grid small{font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--text-3)}.contact-grid h3{margin:7px 0;font-size:23px}.contact-grid p{margin:0;color:var(--text-2);font-size:13px}.contact-grid b{margin-top:auto;padding-top:25px;color:var(--teal-dark);font-size:11.5px}.contact-note{display:flex;justify-content:space-between;gap:20px;margin-top:20px;padding:20px 25px;border-radius:14px;background:var(--navy);color:#fff;font-size:12px}.contact-note span{color:#BCD0DB}
@media(max-width:960px){.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>a:last-child{grid-column:1/-1;min-height:240px}}

@media(max-width:900px){.about-intro{gap:35px}.audience-grid{grid-template-columns:1fr 1fr}.featured-panel{grid-template-columns:1fr}.featured-panel figure.photo{order:-1}.featured-panel figure.photo img{min-height:300px;max-height:380px}.stations-panel .link-list{grid-template-columns:1fr}.visual-panel figure img{height:230px}}
@media(max-width:640px){.breadcrumbs{margin-bottom:20px;overflow:hidden}.breadcrumbs span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-meta{margin-top:18px}.internal-main{padding-top:36px}.tool-heading{display:block}.tool-heading>a{display:inline-block;margin-top:10px}.tool-panel,.map-tool-panel{padding:8px}.featured-panel>div,.faq-panel,.stations-panel{padding:27px 22px}.about-intro{grid-template-columns:1fr;margin-bottom:55px}.about-photo{order:-1}.about-photo img{height:300px}.audience-grid{grid-template-columns:1fr}.audience-grid>div{min-height:185px}.audience-grid h3{margin-top:28px}.inner-cta{display:block;padding:32px 24px}.inner-cta .btn{margin-top:24px}.contact-grid{grid-template-columns:1fr}.contact-grid>a{min-height:270px;padding:26px}.contact-note{display:block}.contact-note span{display:block;margin-top:5px}.visual-panel .figure-row{grid-template-columns:1fr}.visual-panel figure img{height:220px}}
@media(max-width:640px){.live-toolbar{grid-template-columns:1fr}.live-map{height:470px}.vessel-popup{min-width:230px}.vessel-popup-grid{gap:8px 10px}}

/* Integración de dashboards */
.tool-page .tool-panel{padding:0;border:0;background:transparent;box-shadow:none}.tool-page .iframe-wrap{overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}.tool-page .iframe-wrap iframe{display:block;overflow:hidden;background:transparent}.stats-frame iframe{height:1500px}.traffic-frame iframe{height:2350px}.ports-frame iframe{height:2550px}
@media(max-width:900px){.stats-frame iframe{height:2100px}.traffic-frame iframe{height:3000px}.ports-frame iframe{height:3400px}}
@media(prefers-reduced-motion:reduce){.home-hero-media,.home-hero-slideshow img:not(:first-child){display:none}.home-hero-slideshow img:first-child{display:block;opacity:1;animation:none}.home-hero{background:url('/assets/img/hero_puertos_argentinos_v27.jpg') center/cover no-repeat}.feature-card,.card,.btn{transition:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{header.site-header,footer.site-footer,.page-hero,.home-hero,.nav-toggle,.btn,.tool-heading>a{display:none!important}body,main{background:#fff!important;color:#000!important}main{max-width:none!important;padding:0!important}.panel,.card{box-shadow:none!important;break-inside:avoid}}

/* Arquitectura de navegación */
.nav-chevron{font-size:14px;margin-left:2px;color:var(--teal);}
.mega-menu{position:fixed;top:76px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100vw - 32px));grid-template-columns:1.2fr repeat(3,1fr);gap:0;padding:0;overflow:hidden;}
.has-dropdown:hover .mega-menu,.has-dropdown:focus-within .mega-menu{display:grid;}
.mega-intro{padding:27px;background:linear-gradient(145deg,var(--navy),var(--navy-3));color:#fff;}
.mega-intro>span,.mega-group>span{display:block;margin-bottom:12px;font-size:9.5px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;}
.mega-intro>span{color:#78D4C3}.mega-intro strong{display:block;font-size:17px;line-height:1.45;letter-spacing:-.02em}.mega-intro>a{display:inline-block!important;margin-top:20px;padding:0!important;color:#fff!important;font-size:11px!important;}
.mega-group{padding:24px 18px;border-right:1px solid var(--border);}.mega-group:last-child{border-right:0}.mega-group>span{padding:0 8px;color:var(--text-3);}
nav.main-nav .mega-group a{display:flex;flex-direction:column;gap:1px;padding:9px 8px;}
.mega-group b{font-size:12.5px;color:var(--navy)}.mega-group small{font-size:9.5px;color:var(--text-3);font-weight:600}.mega-group a:hover b{color:var(--teal-dark)}

.platform-hero{padding:70px 0 76px}.platform-hero h1{max-width:900px}.platform-main{padding-top:0;}
.platform-index{position:relative;z-index:3;display:flex;justify-content:center;gap:6px;width:max-content;max-width:calc(100% - 36px);margin:-25px auto 66px;padding:7px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);}
.platform-index a{padding:10px 17px;border-radius:9px;color:var(--text-2);font-size:11.5px;font-weight:800;white-space:nowrap}.platform-index a:hover{background:var(--teal-soft);color:var(--teal-dark)}
.platform-feature{display:grid;grid-template-columns:1fr 1fr;min-height:470px;margin-bottom:82px;overflow:hidden;border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow);}
.platform-feature-copy{padding:52px}.platform-feature-copy h2{margin:0 0 18px;font-size:clamp(30px,3.8vw,48px);line-height:1.08;letter-spacing:-.045em}.platform-feature-copy p{color:var(--text-2)}.platform-feature-copy ul{display:grid;gap:7px;margin:22px 0 28px;padding:0;list-style:none}.platform-feature-copy li{font-size:12px;font-weight:700;color:var(--navy)}.platform-feature-copy li::before{content:'✓';margin-right:9px;color:var(--teal)}
.platform-feature-image{position:relative;min-height:420px;overflow:hidden}.platform-feature-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,28,45,.75))}.platform-feature-image img{width:100%;height:100%;object-fit:cover}.platform-feature-image span{position:absolute;z-index:1;left:25px;bottom:22px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.platform-group{scroll-margin-top:105px;margin-bottom:80px}.platform-group-heading{display:grid;grid-template-columns:55px 1fr;gap:18px;align-items:start;margin-bottom:27px}.platform-group-heading>span{padding-top:8px;font:500 11px 'IBM Plex Mono',monospace;color:var(--teal)}.platform-group-heading h2{margin:0;font-size:clamp(27px,3vw,39px);line-height:1.15;letter-spacing:-.04em}.platform-group-heading p{margin:7px 0 0;color:var(--text-3);font-size:13px}
.platform-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-left:73px}.platform-cards.two-cols{grid-template-columns:repeat(2,1fr)}.platform-cards>a{position:relative;min-height:240px;padding:26px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--text);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s}.platform-cards>a:hover{transform:translateY(-5px);border-color:#C7DDD8;box-shadow:var(--shadow)}.platform-cards h3{margin:28px 0 9px;font-size:18px;letter-spacing:-.025em}.platform-cards p{margin:0;color:var(--text-2);font-size:12.5px;line-height:1.65}.platform-cards b{margin-top:auto;padding-top:20px;color:var(--teal-dark);font-size:11.5px}.tool-status{align-self:flex-start;padding:5px 8px;border-radius:999px;background:#EEF3F5;color:var(--text-3);font-size:8.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.tool-status.live{background:var(--teal-soft);color:var(--teal-dark)}.tool-status.live::before{content:'';display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:var(--teal)}

@media(max-width:1000px){.mega-menu{transform:translateX(-50%);grid-template-columns:repeat(3,1fr)}.mega-intro{display:none}.footer-links{gap:25px}.platform-cards{margin-left:0}}
@media(max-width:820px){
  .mega-menu{position:static;top:auto;left:auto;width:100%;transform:none;grid-template-columns:1fr;padding:6px;overflow:visible}.mega-group{padding:8px;border:0}.mega-group>span{margin:5px 0 4px}.mega-group small{display:none}.mega-intro{display:none}
  .footer-links{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.platform-feature{grid-template-columns:1fr}.platform-feature-image{min-height:330px;order:-1}.platform-feature-copy{padding:34px}.platform-cards,.platform-cards.two-cols{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .platform-index{justify-content:flex-start;width:auto;overflow-x:auto;margin-bottom:48px}.platform-feature{margin-bottom:60px}.platform-feature-image{min-height:245px}.platform-feature-copy{padding:27px 23px}.platform-group{margin-bottom:58px}.platform-group-heading{grid-template-columns:35px 1fr}.platform-cards,.platform-cards.two-cols{grid-template-columns:1fr}.platform-cards>a{min-height:215px}.footer-links{grid-template-columns:1fr 1fr}.footer-logo{margin-bottom:16px}.footer-logo img{margin:0}
}

/* Tráfico en vivo: búsqueda, derrota y modo de mapa completo */
.traffic-map-dark .live-map .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.92)}.traffic-map-dark .live-map{background:#17232B}.full-only{display:none!important}.map-actions{gap:8px}.vessel-search-wrap{position:relative;min-width:0}.search-suggestions{position:absolute;z-index:1200;top:calc(100% + 5px);left:0;width:100%;max-height:360px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:0 16px 38px rgba(6,35,58,.2)}.search-suggestions[hidden]{display:none}.search-suggestions button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:15px;padding:11px 13px;border:0;border-bottom:1px solid #EDF1F3;background:#fff;color:var(--text);text-align:left;cursor:pointer}.search-suggestions button:last-child{border-bottom:0}.search-suggestions button:hover,.search-suggestions button:focus{outline:0;background:#F0F7F6}.search-suggestions span,.search-suggestions strong,.search-suggestions small{display:block}.search-suggestions strong{font-size:12px}.search-suggestions small{margin-top:2px;color:var(--text-3);font-size:9.5px}.search-suggestions em{flex:0 0 auto;padding:4px 7px;border-radius:999px;font-size:8.5px;font-style:normal;font-weight:800}.search-suggestions em.live{background:#E3F5F0;color:#0F6E56}.search-suggestions em.historic{background:#FFF1DF;color:#8A5B22}.search-empty{padding:14px;color:var(--text-3);font-size:11px}.track-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;padding:11px 13px;border:1px solid #D8D0E8;border-left:4px solid #6D4AA5;border-radius:10px;background:#FAF8FD}.track-panel[hidden]{display:none}.track-selected{min-width:165px}.track-selected span,.track-selected strong,.track-selected small{display:block}.track-selected span{color:#76668D;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.track-selected strong{margin-top:2px;color:#34294A;font-size:12.5px}.track-selected small{margin-top:2px;color:var(--text-3);font-size:9px}.track-options{display:flex;flex-wrap:wrap;gap:5px}.track-options button{padding:7px 9px;border:1px solid #D8D0E8;border-radius:7px;background:#fff;color:#584574;font:700 9.5px 'Inter',sans-serif;cursor:pointer}.track-options button:hover,.track-options button.active{border-color:#6D4AA5;background:#6D4AA5;color:#fff}.track-options .track-clear{border-color:transparent;background:transparent;color:var(--text-3)}.track-status{min-width:190px;color:#6B5A80;font-size:9px;line-height:1.4}.vessel-row{cursor:pointer}.vessel-row:hover,.vessel-row:focus{outline:0;background:#F0F7F6}.fullscreen-list-close{position:absolute;z-index:2;top:10px;right:12px;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#EEF3F5;color:var(--navy);font-size:21px;line-height:32px;cursor:pointer}

.traffic-map-fullscreen .full-only{display:inline-flex!important;align-items:center;justify-content:center}.traffic-map-fullscreen .map-actions{position:fixed;z-index:1250;top:12px;right:12px;margin:0}.traffic-map-fullscreen .live-toolbar{position:fixed;z-index:1240;top:12px;left:12px;display:grid!important;width:min(650px,calc(100vw - 390px));margin:0;padding:8px;border:1px solid rgba(9,37,63,.12);border-radius:11px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(6,35,58,.2);backdrop-filter:blur(7px)}.traffic-map-fullscreen .track-panel{position:fixed;z-index:1230;top:76px;left:12px;width:min(800px,calc(100vw - 24px));margin:0;box-shadow:0 8px 24px rgba(6,35,58,.16)}.traffic-map-fullscreen .vessel-legend{position:fixed;z-index:1220;bottom:12px;left:12px;max-width:min(720px,calc(100vw - 340px));margin:0;box-shadow:0 8px 24px rgba(6,35,58,.16)}.traffic-map-fullscreen #live-info{position:fixed;z-index:1220;right:12px;bottom:54px;max-width:310px;margin:0;box-shadow:0 8px 24px rgba(6,35,58,.16)}.traffic-map-fullscreen #live-meta{position:fixed;z-index:1220;right:12px;bottom:12px;max-width:400px;margin:0;padding:8px 11px;border-radius:8px;background:rgba(9,37,63,.9);color:#fff;font-size:9px}.traffic-map-fullscreen .leaflet-top.leaflet-right{top:132px}.traffic-map-fullscreen .vessels-panel{display:none!important}.traffic-map-fullscreen .vessels-panel.fullscreen-open{position:fixed;z-index:1300;top:68px;right:12px;bottom:12px;display:block!important;width:min(610px,calc(100vw - 24px));margin:0;padding:20px;border-radius:12px;background:#fff;box-shadow:0 18px 52px rgba(6,35,58,.34);overflow:hidden}.traffic-map-fullscreen .vessels-panel .content-heading{padding-right:36px}.traffic-map-fullscreen .vessels-table-wrap{max-height:calc(100vh - 230px)}

@media(max-width:900px){.track-panel{align-items:flex-start;flex-direction:column}.track-status{min-width:0}.traffic-map-fullscreen .live-toolbar{top:62px;width:calc(100vw - 24px)}.traffic-map-fullscreen .track-panel{top:126px;width:calc(100vw - 24px)}.traffic-map-fullscreen .vessel-legend{max-width:calc(100vw - 24px);right:12px}.traffic-map-fullscreen #live-info{right:12px;bottom:88px;max-width:260px}.traffic-map-fullscreen #live-meta{display:none}}
@media(max-width:640px){.search-suggestions button{align-items:flex-start}.search-suggestions em{white-space:nowrap}.track-options button{padding:7px}.traffic-map-fullscreen .map-actions{left:12px;right:12px;justify-content:space-between}.traffic-map-fullscreen .live-toolbar{grid-template-columns:1fr;top:60px}.traffic-map-fullscreen .track-panel{top:168px;right:12px;width:auto;max-height:210px;overflow:auto}.traffic-map-fullscreen .leaflet-top.leaflet-right{top:300px}.traffic-map-fullscreen .vessel-legend{display:grid;grid-template-columns:1fr 1fr;gap:6px 9px}.traffic-map-fullscreen .vessel-legend small{grid-column:1/-1;margin-left:0}.traffic-map-fullscreen #live-info{display:none}.traffic-map-fullscreen #live-meta{display:block;left:12px;right:12px;bottom:96px;max-width:none}.traffic-map-fullscreen .vessels-panel.fullscreen-open{inset:8px;width:auto}.traffic-map-fullscreen .vessels-table-wrap{max-height:calc(100vh - 180px)}}
.service-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 18px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.service-context article{background:#fff;padding:22px 24px}
.service-context span{display:block;margin-bottom:9px;color:var(--teal);font-family:'IBM Plex Mono',monospace;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.service-context h2,.service-context h3{margin:0 0 9px;color:var(--navy);font-size:1rem;line-height:1.3}
.service-context p{margin:0;color:var(--text-2);font-size:.9rem;line-height:1.65}
.service-context a{color:var(--teal-dark);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
@media (max-width:820px){.service-context{grid-template-columns:1fr}.service-context article{padding:19px 20px}}

/* V46 · Consentimiento de medición y privacidad */
.footer-privacy{display:inline-flex;align-items:center;gap:12px}.footer-privacy a,.footer-privacy button{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.analytics-consent{position:fixed;z-index:5000;right:22px;bottom:22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;width:min(780px,calc(100vw - 44px));padding:20px 22px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:#09253F;color:#fff;box-shadow:0 22px 65px rgba(3,23,38,.35)}
.analytics-consent[hidden]{display:none}.analytics-consent-copy strong{display:block;margin-bottom:5px;font-size:15px}.analytics-consent-copy p{max-width:560px;margin:0;color:#D9E7EE;font-size:12px;line-height:1.55}.analytics-consent-copy a{display:inline-block;margin-top:7px;color:#7EE1D1;font-size:10.5px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.analytics-consent-actions{display:flex;gap:8px;white-space:nowrap}.analytics-consent-actions button{min-height:40px;padding:9px 14px;border:1px solid rgba(255,255,255,.35);border-radius:9px;font:800 10.5px 'Manrope',sans-serif;cursor:pointer}.consent-reject{background:transparent;color:#fff}.consent-accept{border-color:#1A917D!important;background:#1A917D;color:#fff}.analytics-consent-actions button:hover,.analytics-consent-actions button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.privacy-page{display:grid;gap:18px}.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.legal-panel h2{margin-top:0}.legal-panel p{color:var(--text-2);line-height:1.75}.legal-panel a{color:var(--teal-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}.legal-panel code{padding:2px 5px;border-radius:5px;background:#EDF3F4;color:var(--navy)}.privacy-open-preferences{margin-top:5px}.legal-updated{margin-bottom:0;font-size:11px}
@media(max-width:820px){.analytics-consent{grid-template-columns:1fr;gap:14px;right:12px;bottom:12px;width:calc(100vw - 24px);padding:17px}.analytics-consent-actions{justify-content:flex-end}.legal-grid{grid-template-columns:1fr}.footer-privacy{width:100%;justify-content:center}}
@media(max-width:480px){.analytics-consent-actions{display:grid;grid-template-columns:1fr 1fr}.analytics-consent-actions button{padding:9px 8px}.footer-privacy{flex-direction:column;gap:5px}}

/* V48 · Tráfico en vivo: puertos y tema exclusivo de pantalla completa */
.live-toolbar{grid-template-columns:minmax(260px,1fr) 230px auto}
.map-layer-toggle{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--text-2);font-size:10px;font-weight:800;white-space:nowrap}
.map-layer-toggle input{accent-color:var(--teal)}
#map-theme-toggle{display:none}
.traffic-map-fullscreen #map-theme-toggle{display:inline-flex}
.search-suggestions em.port{background:#E9E8F8;color:#55439A}
.traffic-map-fullscreen .live-toolbar{width:min(850px,calc(100vw - 390px))}
.traffic-map-dark .live-toolbar,.traffic-map-dark .vessel-legend,.traffic-map-dark .live-info,.traffic-map-dark .map-filter,.traffic-map-dark .map-layer-toggle,.traffic-map-dark .search-suggestions,.traffic-map-dark .search-suggestions button{border-color:#355064;background:#102D40;color:#EDF7FA}
.traffic-map-dark .search-suggestions button:hover,.traffic-map-dark .search-suggestions button:focus,.traffic-map-dark .vessel-row:hover,.traffic-map-dark .vessel-row:focus{background:#173B50}
.traffic-map-dark .search-suggestions small,.traffic-map-dark .vessel-legend small{color:#A9C2CF}
.traffic-map-dark .track-panel{border-color:#5D4B79;background:#172D40;color:#EEF5FA}
.traffic-map-dark .track-selected strong,.traffic-map-dark .track-selected span,.traffic-map-dark .track-status{color:#E5DCF5}
.traffic-map-dark .track-options button{border-color:#536B7B;background:#102D40;color:#E6EEF3}
.traffic-map-dark .traffic-port-search-pin div{background:#1D4054!important;color:#fff!important}
@media(max-width:900px){.live-toolbar{grid-template-columns:1fr 220px}.map-layer-toggle{grid-column:1/-1}.traffic-map-fullscreen .live-toolbar{width:calc(100vw - 24px)}}
@media(max-width:640px){.live-toolbar{grid-template-columns:1fr}.map-layer-toggle{grid-column:auto}.traffic-map-fullscreen .live-toolbar{grid-template-columns:1fr}}

/* V52.1 · Ficha centrada y primera capa de enriquecimiento técnico AIS */
.live-map-stage{position:relative;isolation:isolate}.vessel-detail-drawer{position:absolute;z-index:1100;top:12px;right:12px;bottom:12px;width:min(355px,calc(100% - 24px));padding:18px 17px 16px;border:1px solid rgba(9,37,63,.16);border-radius:13px;background:rgba(255,255,255,.98);box-shadow:0 18px 48px rgba(6,35,58,.28);color:#183444;overflow:auto;overscroll-behavior:contain;backdrop-filter:blur(7px)}.vessel-detail-drawer[hidden]{display:none}.vessel-detail-close{position:sticky;z-index:2;top:-8px;float:right;width:32px;height:32px;margin:-7px -7px 0 8px;padding:0;border:1px solid #DCE5E9;border-radius:50%;background:#fff;color:#183444;font-size:21px;line-height:28px;cursor:pointer;box-shadow:0 4px 12px rgba(6,35,58,.12)}.vessel-detail-close:hover,.vessel-detail-close:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.vessel-detail-head{display:flex;align-items:flex-start;gap:10px;padding:2px 38px 13px 0;border-bottom:1px solid #E1E8EB}.vessel-detail-head .vessel-status-dot{flex:0 0 auto;margin-top:7px}.vessel-detail-kicker{display:block;color:#087F8C;font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.vessel-detail-head h3{margin:3px 0 2px;color:#09253F;font-size:18px;line-height:1.2}.vessel-detail-head p{margin:0;color:#647985;font-size:10px}.vessel-detail-section{padding:13px 0 2px}.vessel-detail-section h4{margin:0 0 9px;color:#526C79;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.vessel-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 13px}.vessel-detail-grid .wide{grid-column:1/-1}.vessel-detail-grid span{display:block;color:#71838D;font-size:7.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.vessel-detail-grid b{display:block;margin-top:2px;color:#183444;font-size:10.5px;line-height:1.35}.vessel-technical-source{display:grid;gap:2px;margin-top:10px;padding:9px 10px;border:1px solid #D9E6EA;border-radius:8px;background:#F3F8F9}.vessel-technical-source strong{color:#176B62;font-size:9px}.vessel-technical-source span{color:#657C87;font-size:8.5px;line-height:1.35}.vessel-detail-drawer .vessel-map-link{margin-top:11px}
.traffic-map-fullscreen .live-map-stage{height:100vh}.traffic-map-fullscreen .vessel-detail-drawer{position:fixed;top:132px;right:12px;bottom:76px;width:min(380px,calc(100vw - 24px))}.traffic-map-dark .vessel-detail-drawer{border-color:#355064;background:rgba(16,45,64,.98);color:#EDF7FA}.traffic-map-dark .vessel-detail-close{border-color:#486273;background:#173B50;color:#fff}.traffic-map-dark .vessel-detail-head,.traffic-map-dark .vessel-detail-section{border-color:#355064}.traffic-map-dark .vessel-detail-head h3,.traffic-map-dark .vessel-detail-grid b{color:#F2F8FA}.traffic-map-dark .vessel-detail-head p,.traffic-map-dark .vessel-detail-grid span{color:#A9C2CF}.traffic-map-dark .vessel-detail-section h4,.traffic-map-dark .vessel-detail-kicker{color:#7EE1D1}.traffic-map-dark .vessel-technical-source{border-color:#355064;background:#173B50}.traffic-map-dark .vessel-technical-source strong{color:#7EE1D1}.traffic-map-dark .vessel-technical-source span,.traffic-map-dark .vessel-popup-note{color:#B8CDD7}
@media(max-width:760px){.vessel-detail-drawer{top:auto;left:8px;right:8px;bottom:8px;width:auto;max-height:44%;padding:15px}.vessel-detail-grid{gap:8px 11px}.traffic-map-fullscreen .vessel-detail-drawer{position:fixed;top:auto;left:8px;right:8px;bottom:8px;width:auto;max-height:44vh}.traffic-map-fullscreen .vessel-legend,.traffic-map-fullscreen #live-meta{display:none!important}}

/* V53.2 · Pantalla completa: panel batimétrico visible y desplazable */
.map-fullscreen .bathy-layout{
  height:calc(100dvh - 24px);
  min-height:0;
}
.map-fullscreen .bathy-sidebar{
  box-sizing:border-box;
  height:calc(100dvh - 24px);
  min-height:0;
  padding-top:24px;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.map-fullscreen .bathy-map-panel{min-height:0}
.map-fullscreen .bathy-map-panel #bathy-map{height:calc(100dvh - 24px)}
@media(max-height:720px){
  .map-fullscreen .bathy-sidebar{padding-top:18px;padding-bottom:18px}
  .map-fullscreen .bathy-control{margin-bottom:14px}
  .map-fullscreen .bathy-layers{margin-bottom:14px}
  .map-fullscreen .bathy-actions{margin-top:16px}
}
