/* Homepage v2 (Oct 18, 2026): 3D port hero, story carousel, site map, free tools. */
.hv2{--hx-ink:#0B141E}
/* hero */
.hx{position:relative;background:var(--hx-ink);color:#fff;overflow:hidden;min-height:clamp(560px,84vh,860px);display:flex;align-items:center;isolation:isolate}
.hx-media{position:absolute;inset:0;z-index:-1}
.hx-media video,.hx-poster{position:absolute;top:0;right:0;left:auto;width:min(100%,max(78%,calc(100% - 380px)));height:100%;object-fit:cover;object-position:60% 50%}
.hx-media video{opacity:0;transition:opacity .8s}
.hx-media.is-playing video{opacity:1}
.hx-poster{transition:opacity .8s}
.hx-media.is-playing .hx-poster{opacity:0}
.hx-media video{z-index:1}
.hx-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,20,30,.96) 0%,rgba(11,20,30,.82) 34%,rgba(11,20,30,.15) 62%,rgba(11,20,30,0) 100%),linear-gradient(0deg,rgba(11,20,30,.9) 0%,rgba(11,20,30,0) 30%)}
.hx-in{position:relative;width:100%;padding-top:72px;padding-bottom:150px}
.hx-kick{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blush);margin:0 0 18px}
.hx-kick::before{content:"";width:28px;height:2px;background:var(--seal)}
.hx h1{font-size:clamp(42px,6.2vw,84px);line-height:.98;letter-spacing:-.04em;margin:0 0 22px;max-width:12ch;color:#fff}
.hx-lede{font-size:clamp(17px,1.6vw,20px);line-height:1.55;color:#C9D3DD;max-width:34em;margin:0 0 30px}
.hx-ctas{display:flex;gap:12px;flex-wrap:wrap}
.hx-ctas .btn{padding:14px 22px;font-size:17px}
.hx-ghost{color:#fff;border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.04);backdrop-filter:blur(6px)}

.hx-pause{position:absolute;right:28px;bottom:120px;font:600 12px var(--font);color:#C9D3DD;background:rgba(11,20,30,.6);border:1px solid rgba(255,255,255,.2);border-radius:99px;padding:6px 12px;cursor:pointer}

/* carousel */
.hc{position:relative;z-index:2;margin-top:-104px;padding-bottom:20px}
.hc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.hc-top h2{margin:0;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.hc-ctrl{display:flex;gap:8px}
.hc-ctrl button{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(11,20,30,.55);color:#fff;font-size:17px;cursor:pointer;backdrop-filter:blur(6px)}
.hc-ctrl button:hover{background:#fff;color:var(--ink)}
.hc-ctrl .hc-play{font-size:11px;letter-spacing:-1px}
.hc-view{overflow:hidden;border-radius:16px;background:var(--sheet);box-shadow:0 30px 60px -30px rgba(11,20,30,.55),0 0 0 1px var(--rule)}
.hc-track{list-style:none;margin:0;padding:0;display:flex;transition:transform .7s cubic-bezier(.65,.05,.25,1)}
.hc-slide{flex:0 0 100%;min-width:0}
.hc-slide>a{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);min-height:340px;text-decoration:none;color:var(--ink)}
.hc-vis{position:relative;display:block;overflow:hidden;background:var(--paper)}
.hc-photo img,.hc-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hc-shot{background:#E9EEF3}
.hc-shot img{object-position:left top;transform:scale(1.25);transform-origin:left top}
.hc-stat{display:flex;align-items:center;justify-content:center;background:var(--ink);background-image:radial-gradient(circle at 80% 20%,rgba(179,38,30,.55),transparent 55%),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:auto,32px 32px,32px 32px;color:#fff;padding:30px}
.hc-stat span{font-size:clamp(48px,6vw,92px);font-weight:700;letter-spacing:-.04em;line-height:1;text-align:center}
.hc-stat em{display:block;font-style:normal;font-size:.26em;letter-spacing:0;font-weight:500;color:var(--blush);margin-top:12px}
.hc-plain{background:var(--ink)}
.hc-slide img{transition:transform .9s}
.hc-slide a:hover .hc-photo img{transform:scale(1.04)}
.hc-body{display:flex;flex-direction:column;padding:34px 36px 30px}
.hc-kick{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.hc-kick b{background:var(--seal);color:#fff;border-radius:4px;padding:3px 8px}
.hc-guide .hc-kick b{background:#1F5A85}.hc-tool .hc-kick b{background:var(--ink)}
.hc-body h3{font-size:clamp(22px,2.3vw,30px);line-height:1.15;letter-spacing:-.02em;margin:0 0 12px}
.hc-body p{margin:0 0 14px;color:var(--muted);font-size:16px}
.hc-meta{font-size:14px;color:var(--muted)}
.hc-meta strong{color:var(--ink);font-size:18px}
.hc-go{margin-top:auto;padding-top:18px;font-weight:600;color:var(--seal)}
.hc-slide a:hover h3{color:var(--seal)}
.hc-dots{display:flex;gap:6px;justify-content:center;margin-top:14px}
.hc-dot{width:42px;height:18px;border:0;background:none;padding:7px 0;cursor:pointer}
.hc-dot span{display:block;height:4px;border-radius:2px;background:var(--rule);overflow:hidden;position:relative}
.hc-dot span::after{content:"";position:absolute;inset:0;background:var(--seal);transform:scaleX(0);transform-origin:left}
.hc-dot[aria-current="true"] span::after{transform:scaleX(1)}
.hc.is-auto .hc-dot[aria-current="true"] span::after{transform:scaleX(0);animation:hcfill var(--hc-ms,6500ms) linear forwards}
.hc.is-paused .hc-dot[aria-current="true"] span::after{animation-play-state:paused}
@keyframes hcfill{to{transform:scaleX(1)}}

/* site map */
.hm{padding:72px 0 10px}
.hm-head h2{font-size:clamp(28px,3vw,38px);letter-spacing:-.025em;margin:0 0 6px}
.hm-head p{margin:0 0 26px;color:var(--muted);font-size:17px}
.hm-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.hm-tile{grid-column:span 2;display:flex;flex-direction:column;border:1px solid var(--rule);border-radius:14px;overflow:hidden;background:var(--sheet);transition:box-shadow .2s,transform .2s}
.hm-tile:hover{box-shadow:0 16px 34px -20px rgba(27,42,58,.5);transform:translateY(-2px)}
.hm-tools,.hm-free{grid-column:span 3}
.hm-main{display:flex;flex-direction:column;flex:1;padding:24px 24px 18px;text-decoration:none;color:var(--ink);position:relative}
.hm-n{font-size:46px;font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--seal);min-height:46px}
.hm-main h3{font-size:22px;margin:10px 0 6px;letter-spacing:-.01em}
.hm-main p{margin:0 0 14px;color:var(--muted);font-size:15px}
.hm-go{margin-top:auto;font-weight:600;font-size:15px}
.hm-main:hover .hm-go{color:var(--seal)}
.hm-tile ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule);display:flex}
.hm-tile li{flex:1}
.hm-tile li+li{border-left:1px solid var(--rule)}
.hm-tile li a{display:block;padding:11px 16px;font-size:14px;color:var(--muted);text-decoration:none}
.hm-tile li a:hover{color:var(--seal);background:var(--paper)}
.hm-tile ul:empty{display:none}
.hm-tools{background:var(--ink)}.hm-tools .hm-main{color:#fff}.hm-tools .hm-main p{color:#C9D3DD}.hm-tools .hm-n{color:var(--blush)}
.hm-tools ul{border-color:rgba(255,255,255,.15)}.hm-tools li+li{border-color:rgba(255,255,255,.15)}.hm-tools li a{color:#C9D3DD}.hm-tools li a:hover{background:rgba(255,255,255,.06);color:#fff}
.hm-news .hm-n::before{content:"Daily";font-size:28px}
.hm-resources .hm-n::before{content:"\2197";font-size:40px}
[data-l="es"] .hm-news .hm-n::before{content:"A diario"}

/* free tools */
.hf{padding:64px 0 20px}
.hf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.hf-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--rule);border-radius:10px;text-decoration:none;color:var(--ink);font-weight:600;font-size:15px;background:var(--sheet)}
.hf-item:hover{border-color:var(--ink);background:var(--paper)}
.hf-ico{flex:none;width:34px;height:34px;border-radius:8px;background:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--seal);font-size:16px}
.hf-item:hover .hf-ico{background:var(--seal);color:#fff}
.hf-all{display:inline-block;margin-top:16px;font-weight:600;color:var(--seal);text-decoration:none}
.hf-all:hover{text-decoration:underline}

@media (max-width:980px){
 .hm-grid{grid-template-columns:1fr 1fr}.hm-tile,.hm-tools,.hm-free{grid-column:span 1}
 .hf-grid{grid-template-columns:1fr 1fr}
 .hc-slide>a{grid-template-columns:1fr;min-height:0}
 .hc-vis{aspect-ratio:16/8}
 .hc-body{padding:22px 22px 20px}
}
@media (max-width:640px){
 .hx{min-height:0;align-items:flex-end}
 .hx{display:block}
 .hx-media{inset:0 0 auto 0;height:min(78vw,320px)}
 .hx-media video,.hx-poster{inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 55%}
 .hx-media::after{background:linear-gradient(0deg,rgba(11,20,30,1) 45%,rgba(11,20,30,.35) 66%,rgba(11,20,30,0) 100%)}
 .hx-in{padding-top:min(250px,62vw);padding-bottom:120px}
 .hx-media::after{background:linear-gradient(0deg,rgba(11,20,30,1) 0%,rgba(11,20,30,0) 45%)}

 .hx-pause{display:none}
 .hm-grid{grid-template-columns:1fr}
 .hm-n{font-size:36px;min-height:36px}
 .hf-grid{grid-template-columns:1fr}
 .hc-body p{display:none}
 .hc-body h3{font-size:20px}
 .hc{margin-top:-84px}
}
@media (prefers-reduced-motion:reduce){.hc-track{transition:none}.hx-media video{display:none}}

/* globe hero (Oct 19) */
.hx-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;touch-action:pan-y;opacity:0;transition:opacity .6s}
.hx-canvas:active{cursor:grabbing}
.hx-media.is-live .hx-canvas{opacity:1}
.hx-media .hx-poster{display:none}
.hx-media.no-webgl .hx-poster{display:block}
.hx-media::after{pointer-events:none;z-index:1}
.hx-media{z-index:0}
.hx-in{pointer-events:none}
.hx-in a,.hx-in button,.hx-in input{pointer-events:auto}
.hx-media::after{background:linear-gradient(90deg,rgba(11,20,30,.92) 0%,rgba(11,20,30,.6) 34%,rgba(11,20,30,0) 55%),linear-gradient(0deg,rgba(11,20,30,.85) 0%,rgba(11,20,30,0) 26%)}
.hx-legend{position:absolute;right:28px;bottom:166px;display:flex;align-items:center;gap:10px;margin:0;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#9FB0C1}
.hx-legend span{width:26px;height:2px;background:linear-gradient(90deg,#E0453A,#F2A89E);box-shadow:0 0 8px #E0453A}
@media (max-width:640px){
 .hx-media{height:min(96vw,400px)}
 .hx-media::after{background:linear-gradient(0deg,rgba(11,20,30,1) 0%,rgba(11,20,30,0) 38%)}
 .hx-in{padding-top:min(330px,82vw)}
 .hx-legend{display:none}
}

/* all-navy homepage (Oct 19): no white sections under the dark hero */
body:has(main.hv2){--bg:#0B141E;--ink:#EEF2F6;--muted:#9FB0C1;--rule:rgba(255,255,255,.10);--paper:#122132;--sheet:#0F1B28;background:#0B141E;color:#EEF2F6}
body:has(main.hv2) a{color:inherit}
.hv2 .hx,.hv2 .hc,.hv2 .hm,.hv2 .hf,.hv2 .h-how,.hv2 .about{background:transparent}
.hv2 .hc-view{background:#0F1B28;box-shadow:0 30px 60px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.08)}
.hv2 .hc-slide>a{color:#EEF2F6}
.hv2 .hc-stat{background-color:#0E1925}
.hv2 .hc-tool .hc-kick b{background:#2C4560}
.hv2 .hc-shot{background:#E9EEF3}
.hv2 .hc-dot span{background:rgba(255,255,255,.14)}
.hv2 .hm-tile{background:#0F1B28;border-color:rgba(255,255,255,.09)}
.hv2 .hm-tile:hover{box-shadow:0 18px 40px -22px rgba(0,0,0,.8);border-color:rgba(255,255,255,.18)}
.hv2 .hm-tools{background:linear-gradient(140deg,#1B2E44,#0F1B28 70%);border-color:rgba(224,69,58,.35)}
.hv2 .hm-tile li a{color:#9FB0C1}
.hv2 .hm-tile li a:hover{background:rgba(255,255,255,.05);color:#fff}
.hv2 .hm-n{color:#E0453A}
.hv2 .hf-item{background:#0F1B28;border-color:rgba(255,255,255,.09);color:#EEF2F6}
.hv2 .hf-item:hover{background:#13253A;border-color:rgba(255,255,255,.25)}
.hv2 .hf-ico{background:rgba(224,69,58,.12);color:#F2A89E}
.hv2 .hf-all,.hv2 .hc-go{color:#F2766B}
.hv2 .hsteps li{background:#0F1B28;border:1px solid rgba(255,255,255,.08)}
.hv2 .step-n{background:#E0453A;color:#fff}
.hv2 .hsteps p,.hv2 .family p{color:#9FB0C1}
.hv2 .guide{background:linear-gradient(180deg,#0F1B28,#0B141E);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.hv2 .guide-copy>p,.hv2 .about p{color:#B9C6D3}
.hv2 .guide-offer{background:transparent;border-color:#F2766B;color:#F2A89E}
.hv2 .guide-art img{box-shadow:0 26px 60px rgba(0,0,0,.6)}
.hv2 .ml-form-fieldRow input{background:#0F1B28!important;color:#EEF2F6!important;border-color:rgba(255,255,255,.18)!important}
.hv2 .ml-form-fieldRow input:focus{border-color:#F2A89E!important}
.hv2 .ml-form-embedPermissionsContent p{color:#9FB0C1}
.hv2 .guide a{color:#F2A89E}
body:has(main.hv2) .foot{background:#08101A;border-top-color:rgba(255,255,255,.08)}
body:has(main.hv2) .foot nav a{color:#8FA1B3}
body:has(main.hv2) .foot nav a:hover{color:#fff}
body:has(main.hv2) .top{background:rgba(11,20,30,.85)}
.hv2 .guide .ml-form-embedContainer .ml-form-fieldRow input,.hv2 #mlb2-46362068 .ml-form-fieldRow input{background:#0F1B28!important;color:#EEF2F6!important;border-color:rgba(255,255,255,.2)!important}
.hv2 .guide .ml-form-embedPermissionsContent p{color:#B9C6D3!important}
