:root{--bg-dark:#0A0E1A;--bg-darker:#060811;--bg-card-dark:#121A2E;--bg-card-dark-2:#0E1526;--bg-light:#F4F6FB;--bg-card-light:#FFFFFF;--text-on-dark:#FFFFFF;--text-on-dark-soft:rgba(255,255,255,0.72);--text-on-dark-faint:rgba(255,255,255,0.52);--text-on-light:#0A0E1A;--text-on-light-soft:rgba(10,14,26,0.68);--text-on-light-faint:rgba(10,14,26,0.50);--line-dark:rgba(255,255,255,0.12);--line-light:rgba(10,14,26,0.10);--accent:#2F6FED;--accent-hover:#1E54C7;--accent-2:#6EA1FF;--check:#22C55E;--crab-orange:#E2583A;--ink:var(--text-on-dark);--ink-soft:var(--text-on-dark-soft);--ink-faint:var(--text-on-dark-faint);--card-bg:var(--bg-card-dark);--line:var(--line-dark);--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"Space Grotesk",monospace;--radius:14px;--container:1180px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:64px;--space-6:96px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}body{margin:0;background:var(--bg-dark);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}.container{max-width:var(--container);margin:0 auto;padding:0 var(--space-3)}h1,h2,h3,h4{font-family:var(--font-body);font-weight:800;line-height:1.1;margin:0 0 var(--space-2);letter-spacing:-0.02em;color:var(--ink)}h1{font-size:clamp(2.3rem,4.6vw,3.6rem)}h1 em{font-style:normal;color:var(--accent-2)}h2{font-size:clamp(1.6rem,3vw,2.2rem)}h2 em{font-style:normal;color:var(--accent-2)}h3{font-size:1.15rem;font-weight:700}p{margin:0 0 var(--space-2);max-width:62ch;color:var(--ink)}.lede{color:var(--ink-soft);font-size:1.1rem}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:0.1em;font-size:0.74rem;color:var(--accent-2);font-weight:500;display:inline-block;margin-bottom:10px;padding:6px 14px;border:1px solid var(--line);border-radius:999px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:0.96rem;padding:13px 24px;border-radius:8px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-outline{border-color:var(--line);color:var(--ink);background:transparent}.btn-outline:hover{border-color:var(--ink-soft)}.btn-outline-light{border-color:rgba(255,255,255,0.4);color:#fff;background:transparent}.btn-outline-light:hover{background:rgba(255,255,255,0.1)}.site-header{position:sticky;top:0;z-index:100;background:rgba(10,14,26,0.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-dark);--ink:var(--text-on-dark);--ink-soft:var(--text-on-dark-soft);--line:var(--line-dark)}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:1.15rem;color:#fff;letter-spacing:-0.01em}.logo svg,.logo img{width:42px;height:42px;object-fit:contain}.logo .logo-lockup{width:auto;height:38px}.logo-crab{width:40px;height:40px;flex:0 0 auto}.logo-text{display:flex;flex-direction:column;line-height:1.05}.logo-name{font-weight:800;font-size:1.15rem}.logo-sub{font-family:var(--font-mono);font-weight:500;font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--accent-2)}@media (max-width:480px){.logo-crab{width:34px;height:34px}.logo-name{font-size:1rem}.logo-sub{font-size:0.56rem}}.nav-desktop{display:flex;align-items:center;gap:var(--space-4)}.nav-links{display:flex;gap:var(--space-3);list-style:none;margin:0;padding:0}.nav-links a{text-decoration:none;font-size:0.94rem;font-weight:500;position:relative;color:var(--text-on-dark-soft)}.nav-links a:hover,.nav-links a[aria-current="page"]{color:#fff}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px}.nav-toggle span{display:block;width:22px;height:2px;background:#fff;margin:5px 0}.has-dropdown{position:relative}.dropdown{position:absolute;top:100%;left:-16px;min-width:260px;margin-top:10px;background:var(--bg-card-dark);border:1px solid var(--line-dark);border-radius:var(--radius);box-shadow:0 16px 32px rgba(0,0,0,0.4);padding:8px;display:grid;gap:2px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s ease,transform .15s ease}.has-dropdown::after{content:"";position:absolute;top:100%;left:0;right:0;height:16px}.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{opacity:1;visibility:visible;transform:translateY(0)}.dropdown a{display:block;padding:9px 12px;border-radius:6px;text-decoration:none;font-size:0.9rem;color:var(--text-on-dark-soft)}.dropdown a:hover{background:rgba(255,255,255,0.06);color:#fff}@media (max-width:900px){.nav-desktop{position:fixed;inset:65px 0 0 0;background:var(--bg-dark);flex-direction:column;align-items:flex-start;padding:var(--space-3);gap:var(--space-3);transform:translateX(100%);transition:transform .25s ease;overflow-y:auto}.nav-desktop.open{transform:translateX(0)}.nav-links{flex-direction:column;gap:var(--space-2);width:100%}.dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;display:none;padding-left:12px}.has-dropdown.open .dropdown{display:grid}.nav-toggle{display:block}}.chip-row{display:flex;flex-wrap:wrap;gap:10px}.chip{font-size:0.85rem;color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;padding:8px 16px;white-space:nowrap}.hero{background:var(--bg-dark);padding:var(--space-6) 0 var(--space-5)}.hero .container{display:grid;grid-template-columns:1.05fr 0.95fr;gap:var(--space-5);align-items:center}.hero-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin:var(--space-3) 0}.hero-media{border:1px solid var(--line-dark);border-radius:16px;overflow:hidden;background:var(--bg-card-dark)}.hero-media img{width:100%;height:100%;object-fit:cover}@media (max-width:860px){.hero .container{grid-template-columns:1fr}.hero-media{order:-1}}.hero-fullbleed{position:relative;padding:0;min-height:min(90vh,820px);display:flex;align-items:center;overflow:hidden}.hero-fullbleed .container{display:block;position:relative;z-index:2;padding-top:var(--space-6);padding-bottom:var(--space-6);width:100%}.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:right center}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,8,17,0.97) 0%,rgba(6,8,17,0.9) 42%,rgba(6,8,17,0.55) 70%,rgba(6,8,17,0.25) 100%),linear-gradient(0deg,rgba(6,8,17,0.6) 0%,rgba(6,8,17,0) 40%)}.hero-copy{max-width:600px;text-align:left;margin-left:0}.hero-copy h1,.hero-copy p,.hero-copy .eyebrow{text-align:left}.hero-copy .hero-actions{justify-content:flex-start}.chip-on-media{background:rgba(6,8,17,0.55);backdrop-filter:blur(4px)}@media (max-width:760px){.hero-fullbleed{min-height:auto;padding:var(--space-5) 0}.hero-bg img{object-position:center}.hero-scrim{background:linear-gradient(180deg,rgba(6,8,17,0.5) 0%,rgba(6,8,17,0.9) 55%,rgba(6,8,17,0.98) 100%)}.hero-copy{max-width:none}}.page-hero{background:var(--bg-dark);padding:var(--space-5) 0 var(--space-4);border-bottom:1px solid var(--line-dark)}.page-hero-media .container{display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--space-4);align-items:center}.page-hero-media .hero-media{border-radius:14px}@media (max-width:860px){.page-hero-media .container{grid-template-columns:1fr}.page-hero-media .hero-media{order:-1}}.breadcrumb{font-family:var(--font-mono);font-size:0.76rem;color:var(--text-on-dark-faint);margin-bottom:var(--space-2)}.breadcrumb a{text-decoration:none;color:var(--text-on-dark-faint)}.breadcrumb a:hover{color:#fff}.section{padding:var(--space-6) 0}.section-sand{background:var(--bg-dark)}.section-alt{background:var(--bg-light);--ink:var(--text-on-light);--ink-soft:var(--text-on-light-soft);--ink-faint:var(--text-on-light-faint);--card-bg:var(--bg-card-light);--line:var(--line-light)}.section-alt .eyebrow{color:var(--accent)}.section-header{max-width:640px;margin-bottom:var(--space-5)}.grid{display:grid;gap:var(--space-3)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.grid-3,.grid-4,.grid-2{grid-template-columns:1fr}}.card{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-3)}.card .icon{width:56px;height:56px;color:var(--accent);margin-bottom:var(--space-2);object-fit:contain}img.icon{display:block}.card h3{margin-bottom:6px}.card p{margin-bottom:0;color:var(--ink-soft);font-size:0.95rem}a.card{text-decoration:none;display:block;transition:border-color .15s ease,transform .15s ease}a.card:hover{border-color:var(--accent);transform:translateY(-2px)}.stat-strip{display:flex;flex-wrap:wrap;gap:var(--space-5);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--space-4) 0}.stat{min-width:150px}.stat .num{font-weight:800;font-size:2.2rem;color:var(--accent-2);letter-spacing:-0.02em}.stat .label{font-family:var(--font-mono);font-size:0.76rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-faint)}.testi{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-3)}.testi p{font-size:1.02rem}.testi footer{font-family:var(--font-mono);font-size:0.78rem;color:var(--accent-2);margin-top:var(--space-2)}.form-panel{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4)}.ghl-embed-wrap{min-height:640px}.ghl-embed-wrap iframe{width:100%;border:none;min-height:640px;border-radius:8px}.form-note{font-size:0.85rem;color:var(--ink-faint);margin-top:var(--space-2)}.cta-band{background:linear-gradient(135deg,var(--accent),#1B3E9E);color:#fff;padding:var(--space-5) 0;text-align:center}.cta-band h2{color:#fff}.cta-band p{margin-left:auto;margin-right:auto;color:rgba(255,255,255,0.85)}.cta-band .btn-outline-light{border-color:rgba(255,255,255,0.5);color:#fff}.cta-band .btn-outline-light:hover{background:#fff;color:var(--accent)}.site-footer{background:var(--bg-darker);color:rgba(255,255,255,0.7);padding:var(--space-6) 0 var(--space-3);--ink:#fff;--ink-soft:rgba(255,255,255,0.7)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-5)}.footer-grid h4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:0.08em;font-size:0.76rem;color:#fff;margin-bottom:var(--space-2)}.footer-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.footer-grid a{text-decoration:none;font-size:0.9rem;color:rgba(255,255,255,0.62)}.footer-grid a:hover{color:var(--accent-2)}.footer-grid p{color:rgba(255,255,255,0.6)}.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding-top:var(--space-3);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);font-size:0.8rem;color:rgba(255,255,255,0.5)}.footer-bottom a{color:rgba(255,255,255,0.6);text-decoration:none}.footer-bottom a:hover{color:var(--accent-2)}.footer-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:0.72rem;letter-spacing:0.04em;color:rgba(255,255,255,0.55);border:1px solid rgba(255,255,255,0.14);border-radius:999px;padding:4px 12px}.footer-badge span[aria-hidden]{color:var(--check);font-weight:700}@media (max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}.media-band{border-radius:16px;overflow:hidden;border:1px solid var(--line-dark);margin-top:var(--space-4);position:relative}.media-band img{width:100%;height:auto;display:block}.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center}.split.reverse .split-media{order:-1}.split-media{border-radius:16px;overflow:hidden;border:1px solid var(--line);max-height:420px}.split-media img{width:100%;height:100%;max-height:420px;object-fit:cover;display:block}@media (max-width:820px){.split{grid-template-columns:1fr;gap:var(--space-3)}.split.reverse .split-media,.split-media{order:0;max-height:300px}.split-media img{max-height:300px}}.logo-strip{background:var(--bg-dark);border-top:1px solid var(--line-dark);padding:var(--space-5) 0;overflow:hidden}.logo-strip .strip-title{text-align:center;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:0.1em;font-size:0.76rem;color:var(--text-on-dark-faint);margin-bottom:var(--space-4)}.logo-track-wrap{position:relative;width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.logo-track{display:flex;align-items:center;gap:var(--space-6);width:max-content;padding-right:var(--space-6);animation:logo-scroll 52s linear infinite;will-change:transform}.logo-track img{height:44px;width:auto;display:block;flex:0 0 auto;opacity:0.9;transition:opacity .2s ease}.logo-track img:hover{opacity:1}.logo-strip:hover .logo-track{animation-play-state:paused}@keyframes logo-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.logo-track{animation:none;flex-wrap:wrap;width:100%;justify-content:center}.logo-track-wrap{-webkit-mask-image:none;mask-image:none}}@media (max-width:620px){.logo-track img{height:44px}}.team-section{padding-top:var(--space-6);padding-bottom:var(--space-6)}.team-grid{gap:var(--space-3)}.team-card{margin:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--bg-card-dark);transition:transform .18s ease,border-color .18s ease}.team-card:hover{transform:translateY(-4px);border-color:var(--accent)}.team-card img{width:100%;height:auto;display:block;aspect-ratio:1/1;object-fit:cover}.posters{gap:var(--space-3)}.poster-card{display:block;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--bg-card-dark);transition:transform .18s ease,border-color .18s ease}.poster-card:hover{transform:translateY(-4px);border-color:var(--accent)}.poster-card img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;object-position:top center;display:block}.contact-form{display:grid;gap:var(--space-2)}.contact-form .field{display:grid;gap:6px}.contact-form label{font-size:0.9rem;color:rgba(255,255,255,0.8);font-weight:500}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:12px 14px;border-radius:8px;border:1px solid var(--line-dark);background:rgba(255,255,255,0.04);color:#fff;font-family:var(--font-body);font-size:0.96rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,0.4)}.contact-form select option{background:var(--bg-card-dark);color:#fff}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(47,111,237,0.25)}.contact-form textarea{resize:vertical}.contact-form .field-check{display:flex;align-items:flex-start;gap:10px}.field-check input{width:auto;margin-top:3px;flex:0 0 auto}.field-check label{font-size:0.85rem;color:rgba(255,255,255,0.6)}.hidden-field{position:absolute;left:-9999px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:#fff;padding:10px 16px;z-index:1000}.skip-link:focus{left:10px;top:10px}.text-center{text-align:center}.mt-0{margin-top:0}.small{font-size:0.87rem}.list-check{list-style:none;margin:0;padding:0;display:grid;gap:12px}.list-check li{display:flex;gap:10px;align-items:flex-start;color:var(--ink-soft)}.list-check li::before{content:"✓";color:var(--check);font-family:var(--font-mono);flex-shrink:0;font-weight:700}.hero-fullbleed.hero-light{--hero-ink:#06142E;--hero-ink-soft:#2B4066;--hero-accent:#1B4FD8;background:#EAF3FB}.hero-light .hero-bg img{object-position:78% center}.hero-light .hero-scrim{background:linear-gradient(90deg,rgba(255,255,255,0.98) 0%,rgba(255,255,255,0.96) 32%,rgba(255,255,255,0.90) 43%,rgba(255,255,255,0.52) 52%,rgba(255,255,255,0.14) 62%,rgba(255,255,255,0) 72%)}.hero-light .hero-copy{max-width:540px}.hero-light .hero-copy .lede{max-width:46ch}.hero-light .hero-copy .eyebrow{color:var(--hero-accent)}.hero-light .hero-copy h1{color:var(--hero-ink);text-wrap:balance}.hero-light .hero-copy h1 em{color:var(--hero-accent)}.hero-light .hero-copy .lede{color:var(--hero-ink-soft);text-wrap:pretty}.hero-light .btn-outline-light{background:rgba(255,255,255,0.65);color:var(--hero-ink);border:1.5px solid rgba(6,20,46,0.28)}.hero-light .btn-outline-light:hover{background:#fff;border-color:var(--hero-ink)}.chip-on-light{background:rgba(255,255,255,0.78);color:var(--hero-ink);border:1px solid rgba(6,20,46,0.16);backdrop-filter:blur(4px)}@media (max-width:860px){.hero-fullbleed.hero-light{display:block;min-height:auto;padding:0 0 var(--space-5);background:linear-gradient(180deg,#EAF3FB 0%,#F7FAFE 55%,#EAF3FB 100%)}.hero-light .hero-bg{position:static}.hero-light .hero-bg img{width:100%;height:auto;aspect-ratio:16/9;object-position:64% center}.hero-light .hero-scrim{display:none}.hero-light .container{padding-top:var(--space-4);padding-bottom:0}.hero-light .hero-copy{max-width:none}}@media (max-width:520px){.hero-light .hero-bg img{aspect-ratio:4/3;object-position:66% center}}.split-media{align-self:stretch;max-height:none}.split-media img{height:100%;max-height:none;min-height:320px;object-fit:cover}@media (max-width:860px){.split-media img{min-height:0;aspect-ratio:16/10}}.card-featured{position:relative;border-color:rgba(43,107,255,0.35)}.card-featured::before{content:"Obligatorio por ley";position:absolute;top:-10px;left:16px;font-family:var(--font-mono);font-size:0.62rem;letter-spacing:0.1em;text-transform:uppercase;background:#FF6B1A;color:#fff;padding:4px 9px;border-radius:999px}.card-icon{width:52px;height:52px;object-fit:contain;display:block;margin-bottom:10px;border-radius:12px}.grid-5{grid-template-columns:repeat(5,1fr)}@media (max-width:1100px){.grid-5{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.grid-5{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.grid-5{grid-template-columns:1fr}}.eco-head{display:grid;grid-template-columns:1.05fr 0.95fr;gap:var(--space-5);align-items:center;margin-bottom:var(--space-5)}.eco-visual{margin:0;border-radius:18px;overflow:hidden;border:1px solid rgba(107,165,255,0.24);box-shadow:0 22px 60px rgba(0,0,0,0.5)}.eco-visual img{width:100%;height:auto;display:block}.eco-intro h2{font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.05;text-wrap:balance;margin-bottom:var(--space-2)}.eco-intro .lede{max-width:48ch;text-wrap:pretty}.eco-rule{display:block;width:70px;height:3px;border-radius:3px;background:#FF6B1A;margin:var(--space-3) 0 var(--space-2)}.eco-claim{font-family:var(--font-mono);font-size:0.74rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-faint);line-height:1.7;margin:0}.eco-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.eco-card{display:flex;flex-direction:column;gap:10px;padding:24px 22px 22px;border-radius:16px;background:linear-gradient(180deg,rgba(16,31,56,0.9) 0%,rgba(9,18,34,0.96) 100%);border:1px solid rgba(107,165,255,0.28);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.eco-card:hover{transform:translateY(-5px);border-color:rgba(107,165,255,0.7);box-shadow:0 20px 50px rgba(0,0,0,0.5)}.eco-icon{color:#6BA5FF;display:block}.eco-icon svg{width:42px;height:42px}.eco-tag{align-self:flex-start;font-family:var(--font-mono);font-size:0.64rem;letter-spacing:0.12em;text-transform:uppercase;padding:5px 11px;border-radius:999px;color:#6BA5FF;border:1px solid rgba(107,165,255,0.55)}.eco-card h3{font-size:1.35rem;color:#fff;margin:0;letter-spacing:-0.02em}.eco-card p{font-size:0.9rem;color:rgba(255,255,255,0.66);margin:0;line-height:1.55}.eco-link{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;color:#6BA5FF;text-decoration:none;padding:11px 20px;border-radius:999px;border:1px solid rgba(107,165,255,0.55);transition:background-color .2s ease,color .2s ease,border-color .2s ease}.eco-link:hover{background:rgba(107,165,255,0.14);color:#fff;border-color:#6BA5FF}.eco-card.is-partner{border-color:rgba(255,107,26,0.42)}.eco-card.is-partner:hover{border-color:rgba(255,140,70,0.85)}.eco-card.is-partner .eco-icon{color:#6BA5FF}.eco-card.is-partner .eco-tag{color:#FF8B45;border-color:rgba(255,107,26,0.6)}.eco-card.is-partner .eco-link{color:#FF8B45;border-color:rgba(255,107,26,0.6)}.eco-card.is-partner .eco-link:hover{background:rgba(255,107,26,0.16);color:#fff;border-color:#FF8B45}.eco-foot{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid rgba(255,255,255,0.08);text-align:center;font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-faint)}@media (max-width:1040px){.eco-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.eco-head{grid-template-columns:1fr;gap:var(--space-4)}}@media (max-width:560px){.eco-grid{grid-template-columns:1fr}}.testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.testi-card{position:relative;margin:0;padding:30px 28px 24px;background:#fff;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;gap:18px;box-shadow:0 2px 12px rgba(6,20,46,0.05);transition:transform .2s ease,box-shadow .2s ease}.testi-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(6,20,46,0.10)}.testi-mark{position:absolute;top:6px;right:22px;font-size:4.6rem;line-height:1;color:rgba(43,107,255,0.14);font-weight:800;pointer-events:none}.testi-card p{position:relative;margin:0;font-size:1.06rem;line-height:1.6;color:var(--ink);text-wrap:pretty}.testi-card footer{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.testi-avatar{width:44px;height:44px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#2B6BFF,#6BA5FF);color:#fff;font-weight:800;font-size:0.86rem;letter-spacing:0.02em}.testi-who{display:flex;flex-direction:column;min-width:0}.testi-who strong{font-size:0.95rem;color:var(--ink)}.testi-who small{font-size:0.8rem;color:var(--ink-faint)}@media (max-width:760px){.testi-grid{grid-template-columns:1fr}}html,body{overflow-x:clip}.eco-icon{width:72px;height:72px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(255,255,255,0.18);box-shadow:0 6px 18px rgba(0,0,0,0.35);overflow:hidden}.eco-icon img{width:56px;height:56px;object-fit:contain;display:block}.partner-mark{display:flex;align-items:center;gap:12px;margin:0 0 12px}.partner-mark img{width:36px;height:36px;object-fit:contain;display:block}.partner-mark .eyebrow{margin:0}.section-sand .card{background:linear-gradient(180deg,rgba(20,36,64,0.92) 0%,rgba(13,25,46,0.96) 100%);border:1px solid rgba(107,165,255,0.20);box-shadow:0 10px 28px rgba(0,0,0,0.38),inset 0 1px 0 rgba(255,255,255,0.06);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.section-sand .card:hover{transform:translateY(-4px);border-color:rgba(107,165,255,0.62);box-shadow:0 18px 44px rgba(0,0,0,0.5),0 0 34px rgba(43,107,255,0.28),inset 0 1px 0 rgba(255,255,255,0.10)}.section-sand .card h3{color:#fff}.section-sand .card p{color:rgba(255,255,255,0.70)}.manifiesto{background:var(--bg-dark);color:#fff}.manifiesto-inner{max-width:760px;margin:0 auto;text-align:center}.manifiesto-inner h2{color:#fff;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;text-wrap:balance;margin-bottom:var(--space-3)}.manifiesto-inner p{color:rgba(255,255,255,0.72);margin:0 0 var(--space-3);text-wrap:pretty}.manifiesto-lead{font-size:1.15rem;line-height:1.65}.manifiesto-punch{font-size:1.35rem;font-weight:700;color:#fff !important;padding:18px 0;margin:var(--space-3) 0 !important;border-top:1px solid rgba(107,165,255,0.28);border-bottom:1px solid rgba(107,165,255,0.28)}.manifiesto-cierre{margin-top:var(--space-4) !important;font-size:1.12rem;line-height:1.7}.manifiesto-cierre strong{color:#FF8B45;font-size:1.2rem}.svc-bento{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;grid-auto-flow:dense}.svc{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:9px;padding:26px 24px 22px;border-radius:18px;text-decoration:none;background:linear-gradient(165deg,rgba(23,41,72,0.95) 0%,rgba(11,22,41,0.98) 62%);border:1px solid rgba(107,165,255,0.18);box-shadow:inset 0 1px 0 rgba(255,255,255,0.07);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.svc.is-wide{grid-column:span 2}.svc::before{content:"";position:absolute;top:0;left:0;height:2px;width:100%;background:linear-gradient(90deg,var(--accent-2,#2B6BFF),#6BA5FF 55%,#FF6B1A);transform:scaleX(0);transform-origin:left;opacity:.9;transition:transform .35s cubic-bezier(.22,.61,.36,1)}.svc::after{content:"";position:absolute;top:-70px;left:-60px;width:230px;height:230px;background:radial-gradient(circle,rgba(43,107,255,0.24) 0%,transparent 68%);opacity:0;transition:opacity .3s ease;z-index:-1;pointer-events:none}.svc:hover{transform:translateY(-5px);border-color:rgba(107,165,255,0.55);box-shadow:0 20px 46px rgba(0,0,0,0.5),0 0 30px rgba(43,107,255,0.20),inset 0 1px 0 rgba(255,255,255,0.12)}.svc:hover::before{transform:scaleX(1)}.svc:hover::after{opacity:1}.svc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.svc-ico{width:60px;height:60px;border-radius:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,rgba(43,107,255,0.24),rgba(10,20,38,0.6));border:1px solid rgba(107,165,255,0.28);transition:transform .22s ease,border-color .22s ease}.svc:hover .svc-ico{transform:scale(1.06);border-color:rgba(107,165,255,0.7)}.svc-ico img{width:38px;height:38px;object-fit:contain;display:block}.svc-num{font-family:var(--font-mono);font-size:1.6rem;font-weight:700;color:rgba(255,255,255,0.09);line-height:1;letter-spacing:-0.02em;font-variant-numeric:tabular-nums;transition:color .22s ease}.svc:hover .svc-num{color:rgba(107,165,255,0.34)}.svc-tag{align-self:flex-start;margin-top:6px;font-family:var(--font-mono);font-size:0.6rem;letter-spacing:0.13em;text-transform:uppercase;color:#6BA5FF;padding:4px 10px;border-radius:999px;border:1px solid rgba(107,165,255,0.35)}.svc h3{font-size:1.12rem;color:#fff;margin:2px 0 0;line-height:1.22;letter-spacing:-0.015em;text-wrap:balance}.svc.is-wide h3{font-size:1.45rem}.svc p{font-size:0.9rem;color:rgba(255,255,255,0.66);margin:0;line-height:1.55}.svc.is-wide p{font-size:0.95rem;max-width:48ch}.svc-go{margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.13em;text-transform:uppercase;color:rgba(107,165,255,0.55);transition:color .22s ease,gap .22s ease}.svc:hover .svc-go{color:#6BA5FF;gap:13px}.svc.is-law{border-color:rgba(255,107,26,0.42)}.svc.is-law .svc-tag{color:#FF8B45;border-color:rgba(255,107,26,0.55)}.svc.is-law .svc-go{color:rgba(255,139,69,0.6)}.svc.is-law:hover{border-color:rgba(255,140,70,0.85);box-shadow:0 20px 46px rgba(0,0,0,0.5),0 0 32px rgba(255,107,26,0.22)}.svc.is-law:hover .svc-go{color:#FF8B45}.svc.is-law:hover .svc-num{color:rgba(255,139,69,0.34)}.svc.is-law::after{background:radial-gradient(circle,rgba(255,107,26,0.22) 0%,transparent 68%)}@media (max-width:1100px){.svc-bento{grid-template-columns:repeat(2,1fr)}.svc.is-wide{grid-column:span 2}}@media (max-width:620px){.svc-bento{grid-template-columns:1fr;gap:12px}.svc.is-wide{grid-column:span 1}.svc.is-wide h3{font-size:1.15rem}.svc{padding:22px 20px 18px}}@media (prefers-reduced-motion:reduce){.svc:hover{transform:none}.svc::before{transition:none}}.page-hero-media .container{grid-template-columns:1fr 1.05fr;gap:var(--space-5)}.page-hero-media .hero-media{border-radius:18px;overflow:hidden;border:1px solid rgba(107,165,255,0.22);box-shadow:0 24px 60px rgba(0,0,0,0.5);margin:0}.page-hero-media .hero-media img,.page-hero-media .hero-media video{width:100%;height:auto;display:block}@media (max-width:900px){.page-hero-media .container{grid-template-columns:1fr}}.hero-video{position:relative;background:#050B18}.hero-video video{object-fit:cover}@media (prefers-reduced-motion:reduce){.hero-video video{display:none}.hero-video{background:url('../video/logos-orbita-poster.jpg') center/cover no-repeat;aspect-ratio:16/9}}.flujos-section{background:var(--bg-dark);color:#fff}.flujos-section h2,.flujos-section .section-header p{color:#fff}.flujos-section .section-header p{color:rgba(255,255,255,0.7)}.flujos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.flujo{position:relative;padding:26px 24px;border-radius:18px;background:linear-gradient(165deg,rgba(23,41,72,0.95) 0%,rgba(11,22,41,0.98) 62%);border:1px solid rgba(107,165,255,0.18);box-shadow:inset 0 1px 0 rgba(255,255,255,0.07);transition:border-color .2s ease,transform .2s ease}.flujo:hover{transform:translateY(-4px);border-color:rgba(107,165,255,0.5)}.flujo-num{position:absolute;top:20px;right:24px;font-family:var(--font-mono);font-size:1.5rem;font-weight:700;color:rgba(107,165,255,0.20);font-variant-numeric:tabular-nums}.flujo h3{font-size:1.15rem;color:#fff;margin:0 0 8px;max-width:26ch;text-wrap:balance}.flujo p{font-size:0.92rem;color:rgba(255,255,255,0.68);margin:0 0 18px;line-height:1.55}.flujo-pasos{list-style:none;margin:0;padding:16px 0 0;border-top:1px solid rgba(255,255,255,0.09);display:flex;flex-wrap:wrap;align-items:center;gap:8px 6px;counter-reset:paso}.flujo-pasos li{font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.05em;text-transform:uppercase;color:rgba(255,255,255,0.72);padding:6px 11px;border-radius:999px;background:rgba(43,107,255,0.13);border:1px solid rgba(107,165,255,0.26)}.flujo-pasos li:not(:last-child)::after{content:"→";margin-left:10px;color:rgba(107,165,255,0.55)}.flujo-pasos li:last-child{background:rgba(255,107,26,0.13);border-color:rgba(255,140,70,0.4);color:#FF9C5E}@media (max-width:820px){.flujos{grid-template-columns:1fr}}.manifiesto-split{display:grid;grid-template-columns:0.95fr 1.05fr;gap:var(--space-5);align-items:center}.manifiesto-foto{margin:0;border-radius:18px;overflow:hidden;border:1px solid rgba(107,165,255,0.22);box-shadow:0 24px 60px rgba(0,0,0,0.5)}.manifiesto-foto img{width:100%;height:100%;object-fit:cover;display:block;min-height:340px}.manifiesto-texto{text-align:left}.manifiesto-texto h2{font-size:clamp(1.9rem,3.4vw,2.9rem)}.manifiesto-texto .manifiesto-punch{text-align:left}.manifiesto-texto .manifiesto-cierre{text-align:left}@media (max-width:900px){.manifiesto-split{grid-template-columns:1fr;gap:var(--space-4)}.manifiesto-foto img{min-height:0;aspect-ratio:16/10}}.cert-logos{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);display:flex;align-items:center;gap:12px}.cert-logos img{width:34px;height:34px;object-fit:contain;display:block;flex-shrink:0}.cert-logos span{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-faint)}.svc-ico{background:none;border:none;padding:0}.svc-ico img{width:60px;height:60px;border-radius:15px}.svc:hover .svc-ico{border-color:transparent}.a360-shot.is-blend,.a360-figure.is-blend{border:none;box-shadow:none;border-radius:0;background:transparent}.a360-shot.is-blend::after,.a360-figure.is-blend::after{content:none}.split-media.is-poster{border:none;background:transparent;border-radius:20px;overflow:hidden;align-self:center;max-width:520px;margin-inline:auto}.split-media.is-poster img{height:auto;min-height:0;object-fit:contain;border-radius:20px}.foot-brand{display:flex;flex-direction:column;line-height:1.05}.foot-name{font-weight:800;font-size:1.15rem;color:#fff}.foot-claim{font-family:var(--font-mono);font-size:0.64rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent-2,#6BA5FF);margin-top:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ct-hero{position:relative;background:var(--bg-dark);color:#fff;padding:var(--space-6) 0 var(--space-5);border-bottom:1px solid var(--line-dark)}.ct-hero-inner{display:grid;grid-template-columns:1.05fr 0.95fr;gap:var(--space-5);align-items:center}.ct-hero h1{font-size:clamp(2.1rem,4.4vw,3.4rem);line-height:1.06;color:#fff;text-wrap:balance;margin-bottom:var(--space-2)}.ct-hero .lede{color:rgba(255,255,255,0.78);max-width:52ch;text-wrap:pretty}.ct-hero .breadcrumb{color:rgba(255,255,255,0.62)}.ct-hero .breadcrumb a{color:rgba(255,255,255,0.80)}.ct-promesas{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;gap:11px}.ct-promesas li{display:flex;align-items:center;gap:11px;color:rgba(255,255,255,0.86);font-size:0.96rem}.ct-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:#6BA5FF;box-shadow:0 0 0 4px rgba(43,107,255,0.20)}.ct-hero-img{margin:0;border-radius:20px;overflow:hidden;border:1px solid rgba(107,165,255,0.24);box-shadow:0 24px 60px rgba(0,0,0,0.5)}.ct-hero-img img{width:100%;height:auto;display:block}.ct-main{background:var(--bg-dark);color:#fff}.ct-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--space-5);align-items:start}.ct-form-panel{background:linear-gradient(180deg,rgba(20,36,64,0.9) 0%,rgba(12,23,42,0.96) 100%);border:1px solid rgba(107,165,255,0.22);border-radius:20px;padding:var(--space-5);box-shadow:0 18px 46px rgba(0,0,0,0.42)}.ct-form-panel h2{color:#fff;margin:0 0 6px}.ct-form-intro{color:rgba(255,255,255,0.62);font-size:0.88rem;margin:0 0 var(--space-4)}.contact-form .field{margin-bottom:var(--space-3)}.contact-form label{display:block;margin-bottom:7px;font-weight:600;color:#fff;font-size:0.94rem}.contact-form .req{color:#FF9C5E;margin-left:2px}.contact-form .opt{color:rgba(255,255,255,0.55);font-weight:400;font-size:0.85em}.contact-form input[type="text"],.contact-form input[type="email"],.contact-form input[type="tel"],.contact-form select,.contact-form textarea{width:100%;min-height:48px;padding:12px 14px;border-radius:11px;background:rgba(5,11,24,0.72);border:1.5px solid rgba(255,255,255,0.22);color:#fff;font-family:inherit;font-size:1rem;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.contact-form textarea{min-height:132px;resize:vertical}.contact-form::placeholder{color:rgba(255,255,255,0.45)}.contact-form input:hover,.contact-form select:hover,.contact-form textarea:hover{border-color:rgba(255,255,255,0.38)}.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:3px solid #6BA5FF;outline-offset:2px;border-color:#6BA5FF;background:rgba(5,11,24,0.92)}.contact-form input:user-invalid,.contact-form textarea:user-invalid,.contact-form select:user-invalid{border-color:#FF8B6B}.contact-form .hint{display:block;margin-top:6px;font-size:0.82rem;color:rgba(255,255,255,0.60);line-height:1.45}.ct-consent{margin:var(--space-4) 0 var(--space-4);padding:var(--space-3);border:1px solid rgba(107,165,255,0.24);border-radius:14px;background:rgba(43,107,255,0.06)}.ct-consent legend{padding:0 9px;font-family:var(--font-mono);font-size:0.68rem;letter-spacing:0.14em;text-transform:uppercase;color:#6BA5FF}.ct-consent .field-check{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;padding:4px 0}.ct-consent .field-check input[type="checkbox"]{width:24px;height:24px;margin:0;flex-shrink:0;accent-color:#2B6BFF;cursor:pointer}.ct-consent .field-check label{margin:0;font-weight:400;font-size:0.9rem;line-height:1.5;color:rgba(255,255,255,0.86);cursor:pointer;min-height:24px;display:flex;align-items:center;flex-wrap:wrap}.ct-consent .field-check input[type="checkbox"]:focus-visible{outline:3px solid #6BA5FF;outline-offset:3px}.ct-consent a{color:#8FBCFF;text-decoration:underline}.ct-rgpd{margin:6px 0 0;font-size:0.78rem;line-height:1.55;color:rgba(255,255,255,0.58)}.ct-rgpd a{color:#8FBCFF}.ct-submit{width:100%;justify-content:center;min-height:52px;font-size:1rem}.form-note{margin-top:12px;font-size:0.84rem;color:rgba(255,255,255,0.60);text-align:center}.ct-aside{display:grid;gap:var(--space-4);align-content:start}.ct-card{background:rgba(18,32,58,0.6);border:1px solid rgba(107,165,255,0.20);border-radius:20px;padding:var(--space-4)}.ct-card h2{color:#fff;margin:0 0 var(--space-3);font-size:1.5rem}.ct-datos{list-style:none;margin:0;padding:0;display:grid;gap:16px}.ct-datos li{display:flex;gap:13px;align-items:flex-start;color:rgba(255,255,255,0.78);font-size:0.94rem;line-height:1.5}.ct-datos strong{color:#fff;font-size:0.86rem}.ct-datos a{color:#8FBCFF;text-decoration:underline}.ct-ico{width:40px;height:40px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(43,107,255,0.16);border:1px solid rgba(107,165,255,0.30);color:#6BA5FF}.ct-ico svg{width:20px;height:20px}.ct-mapa{margin:0;border-radius:20px;overflow:hidden;border:1px solid rgba(107,165,255,0.20);background:rgba(18,32,58,0.6)}.ct-mapa iframe{display:block;width:100%;aspect-ratio:4/3;height:auto;border:0}.ct-mapa figcaption{padding:13px var(--space-3);border-top:1px solid rgba(255,255,255,0.09)}.ct-mapa figcaption a{color:#8FBCFF;text-decoration:none;font-size:0.9rem;font-weight:600;display:inline-flex;align-items:center;gap:8px;min-height:24px}.ct-mapa figcaption a:hover{text-decoration:underline}.ct-aviso-ia{display:flex;gap:14px;align-items:flex-start;padding:var(--space-4);border-radius:20px;background:linear-gradient(160deg,rgba(255,107,26,0.10) 0%,rgba(18,32,58,0.6) 55%);border:1px solid rgba(255,140,70,0.32)}.ct-aviso-ico{width:40px;height:40px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(255,107,26,0.16);border:1px solid rgba(255,140,70,0.42);color:#FF9C5E}.ct-aviso-ico svg{width:21px;height:21px}.ct-aviso-ia h3{margin:0 0 8px;font-size:1.02rem;color:#fff}.ct-aviso-ia p{margin:0 0 9px;font-size:0.87rem;line-height:1.55;color:rgba(255,255,255,0.76)}.ct-aviso-ia a{color:#FFB07A;text-decoration:underline}.ct-aviso-pie{margin:12px 0 0 !important;padding-top:10px;border-top:1px solid rgba(255,255,255,0.10);font-size:0.75rem !important;color:rgba(255,255,255,0.55) !important}@media (max-width:960px){.ct-hero-inner{grid-template-columns:1fr}.ct-hero-img{order:-1}.ct-grid{grid-template-columns:1fr}}@media (max-width:560px){.ct-form-panel{padding:var(--space-4) var(--space-3)}.ct-aviso-ia{flex-direction:column}}.ct-consent .field-check{min-height:44px;align-items:center}.ct-consent .field-check input[type="checkbox"]{width:28px;height:28px}.ct-consent .field-check label{min-height:44px;padding:8px 0}.ct-datos a{display:inline-flex;align-items:center;min-height:44px;padding:2px 0}.ct-mapa figcaption a{min-height:44px;padding:10px 0}.ct-hero .breadcrumb a{display:inline-block;min-height:44px;line-height:44px}.ct-hero .breadcrumb{display:flex;align-items:center;gap:8px;min-height:44px}.ct-consent .field-check{align-items:flex-start}.ct-consent .field-check input[type="checkbox"]{margin-top:9px}.ct-consent .field-check label{display:block;align-items:initial;flex-wrap:initial;padding:6px 0}.e404{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-dark);color:#fff;text-align:center;padding:var(--space-6) 0;position:relative;overflow:hidden;isolation:isolate}.e404::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 55% at 50% 38%,rgba(255,107,26,0.16) 0%,transparent 62%),radial-gradient(ellipse 70% 60% at 50% 100%,rgba(43,107,255,0.16) 0%,transparent 60%)}.e404-inner{max-width:660px}.e404-eyebrow{font-family:var(--font-mono);font-size:0.78rem;letter-spacing:0.24em;text-transform:uppercase;color:#FF9C5E;margin-bottom:var(--space-3)}.e404-figura{margin:0 auto var(--space-3);max-width:300px}.e404-figura img{width:100%;height:auto;display:block;filter:drop-shadow(0 0 42px rgba(255,107,26,0.42));animation:e404-flota 4.5s ease-in-out infinite}@keyframes e404-flota{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}.e404 h1{font-size:clamp(1.9rem,4.6vw,3rem);color:#fff;line-height:1.08;text-wrap:balance;margin-bottom:var(--space-2)}.e404-lede{color:rgba(255,255,255,0.74);max-width:46ch;margin:0 auto var(--space-4);text-wrap:pretty}.e404-acciones{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}.e404-atajos{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid rgba(255,255,255,0.10)}.e404-atajos-titulo{font-family:var(--font-mono);font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:14px}.e404-atajos ul{list-style:none;margin:0;padding:0;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.e404-atajos a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(107,165,255,0.32);color:#8FBCFF;text-decoration:none;font-size:0.9rem;transition:background-color .18s ease,border-color .18s ease}.e404-atajos a:hover{background:rgba(43,107,255,0.16);border-color:#6BA5FF}@media (prefers-reduced-motion:reduce){.e404-figura img{animation:none}}.wa-fab{position:fixed;right:20px;bottom:20px;z-index:60;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25D366;color:#062E14;box-shadow:0 8px 24px rgba(0,0,0,0.4),0 0 0 0 rgba(37,211,102,0.5);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,width .25s ease;padding-bottom:env(safe-area-inset-bottom)}.wa-fab svg{width:30px;height:30px;flex-shrink:0}.wa-fab .wa-txt{max-width:0;overflow:hidden;white-space:nowrap;font-weight:700;font-size:0.92rem;color:#062E14;transition:max-width .28s ease,margin-left .28s ease;margin-left:0}.wa-fab:hover,.wa-fab:focus-visible{width:auto;padding:0 20px 0 14px;border-radius:999px;transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,0.45),0 0 0 6px rgba(37,211,102,0.20)}.wa-fab:hover .wa-txt,.wa-fab:focus-visible .wa-txt{max-width:190px;margin-left:10px}.wa-fab:focus-visible{outline:3px solid #fff;outline-offset:3px}body.cookies-abiertas .wa-fab{transform:translateY(-96px)}@media (max-width:560px){.wa-fab{right:14px;bottom:14px;width:52px;height:52px}.wa-fab svg{width:27px;height:27px}}@media (prefers-reduced-motion:reduce){.wa-fab{transition:none}}.ck{position:fixed;left:0;right:0;bottom:0;z-index:80;background:linear-gradient(180deg,rgba(12,23,42,0.98) 0%,rgba(6,12,24,0.99) 100%);border-top:2px solid rgba(107,165,255,0.4);box-shadow:0 -14px 44px rgba(0,0,0,0.55);padding:var(--space-4) 0 calc(var(--space-4) + env(safe-area-inset-bottom));color:#fff;transform:translateY(110%);transition:transform .38s cubic-bezier(.22,.61,.36,1)}.ck[data-visible="true"]{transform:translateY(0)}.ck-inner{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.ck-crab{width:64px;height:64px;flex-shrink:0;animation:ck-saluda 3.2s ease-in-out infinite}@keyframes ck-saluda{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.ck-texto{flex:1 1 380px;min-width:0}.ck-texto h2{font-size:1.1rem;color:#fff;margin:0 0 6px}.ck-texto p{font-size:0.88rem;color:rgba(255,255,255,0.76);margin:0;line-height:1.55;max-width:62ch}.ck-texto a{color:#8FBCFF;text-decoration:underline}.ck-botones{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ck-btn{min-height:46px;padding:0 22px;border-radius:11px;border:1.5px solid transparent;font-family:inherit;font-size:0.94rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.ck-btn:focus-visible{outline:3px solid #6BA5FF;outline-offset:3px}.ck-aceptar{background:#2B6BFF;color:#fff;border-color:#2B6BFF}.ck-aceptar:hover{background:#4B84FF;transform:translateY(-1px)}.ck-rechazar{background:#2B6BFF;color:#fff;border-color:#2B6BFF}.ck-rechazar:hover{background:#4B84FF;transform:translateY(-1px)}.ck-config{background:transparent;color:rgba(255,255,255,0.82);border-color:rgba(255,255,255,0.3)}.ck-config:hover{background:rgba(255,255,255,0.10);border-color:rgba(255,255,255,0.55)}.ck-panel{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid rgba(255,255,255,0.12);display:grid;gap:12px}.ck-panel[hidden]{display:none}.ck-cat{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:13px;background:rgba(43,107,255,0.07);border:1px solid rgba(107,165,255,0.22)}.ck-cat input[type="checkbox"]{width:26px;height:26px;margin:2px 0 0;flex-shrink:0;accent-color:#2B6BFF;cursor:pointer}.ck-cat input:disabled{cursor:not-allowed;opacity:0.65}.ck-cat input:focus-visible{outline:3px solid #6BA5FF;outline-offset:3px}.ck-cat-txt{min-width:0}.ck-cat-txt strong{display:block;color:#fff;font-size:0.94rem;margin-bottom:3px}.ck-cat-txt span{display:block;color:rgba(255,255,255,0.68);font-size:0.83rem;line-height:1.5}.ck-cat-txt .ck-fija{display:inline-block;margin-left:8px;font-family:var(--font-mono);font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;color:#6BA5FF;border:1px solid rgba(107,165,255,0.4);padding:2px 7px;border-radius:999px;vertical-align:1px}.ck-panel-pie{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:4px}@media (max-width:860px){.ck-inner{gap:var(--space-3)}.ck-crab{width:48px;height:48px}.ck-botones{width:100%}.ck-botones .ck-btn{flex:1 1 140px}}@media (prefers-reduced-motion:reduce){.ck{transition:none}.ck-crab{animation:none}}.ck-reabrir{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-decoration:underline}@media (max-width:900px){.nav-desktop{position:fixed;inset:0;top:0;height:100dvh;width:min(88vw,400px);left:auto;right:0;background:linear-gradient(180deg,#0C1729 0%,#050B18 100%);border-left:1px solid rgba(107,165,255,0.22);box-shadow:-20px 0 50px rgba(0,0,0,0.55);flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:calc(72px + env(safe-area-inset-top)) 0 calc(24px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;transform:translateX(102%);transition:transform .3s cubic-bezier(.22,.61,.36,1);z-index:120}.nav-desktop.open{transform:translateX(0)}.nav-links{flex-direction:column;gap:0;width:100%;padding:0 var(--space-3)}.nav-links>li{border-bottom:1px solid rgba(255,255,255,0.08)}.nav-links>li>a{display:flex;align-items:center;min-height:56px;font-size:1.05rem;font-weight:600;color:#fff;width:100%}.has-dropdown{position:relative}.has-dropdown>a{padding-right:52px}.nav-sub-toggle{position:absolute;top:4px;right:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#8FBCFF;cursor:pointer}.nav-sub-toggle svg{width:20px;height:20px;transition:transform .22s ease}.has-dropdown.open .nav-sub-toggle svg{transform:rotate(180deg)}.nav-sub-toggle:focus-visible{outline:3px solid #6BA5FF;outline-offset:-3px;border-radius:8px}.dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;background:none;display:none;padding:0 0 12px 6px;margin:0}.has-dropdown.open .dropdown{display:grid;gap:2px}.dropdown a{display:flex;align-items:center;min-height:46px;font-size:0.94rem;color:rgba(255,255,255,0.78);padding:6px 12px;border-left:2px solid rgba(107,165,255,0.28);border-radius:0 8px 8px 0}.dropdown a:hover{background:rgba(43,107,255,0.14);color:#fff}.nav-desktop>.btn{margin:var(--space-3) var(--space-3) 0;justify-content:center;min-height:52px}.nav-toggle{display:block;position:relative;z-index:130;width:44px;height:44px}.nav-toggle span{transition:transform .25s ease,opacity .2s ease}body.nav-abierto{overflow:hidden}body.nav-abierto .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}body.nav-abierto .nav-toggle span:nth-child(2){opacity:0}body.nav-abierto .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-velo{position:fixed;inset:0;z-index:110;background:rgba(3,8,18,0.62);opacity:0;pointer-events:none;transition:opacity .3s ease;backdrop-filter:blur(2px);border:none}body.nav-abierto .nav-velo{opacity:1;pointer-events:auto}}@media (prefers-reduced-motion:reduce){.nav-desktop{transition:none}}@media (max-width:900px){.site-header{backdrop-filter:none;background:rgba(10,14,26,0.97)}.action360 .site-header{backdrop-filter:none;background:rgba(5,11,24,0.97)}.nav-sub-toggle{top:50%;transform:translateY(-50%)}}@media (max-width:900px){.nav-velo{z-index:105}.nav-desktop{z-index:115}.nav-toggle{z-index:125}.site-header{z-index:118}}@media (min-width:901px){.has-dropdown{position:static}.site-header .container{position:relative}.dropdown.mega{position:absolute;top:calc(100% + 14px);left:0;right:0;width:100%;min-width:0;margin:0;background:linear-gradient(180deg,rgba(14,26,48,0.99) 0%,rgba(7,14,28,0.99) 100%);border:1px solid rgba(107,165,255,0.26);border-radius:20px;padding:0;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,0.6),0 0 0 1px rgba(43,107,255,0.08)}.mm-inner{display:grid;grid-template-columns:repeat(3,1fr) 300px;gap:0;padding:26px 26px 22px}.mm-col{padding-right:26px;border-right:1px solid rgba(255,255,255,0.07)}.mm-col:nth-child(3){border-right:none}.mm-col + .mm-col{padding-left:26px}.mm-h{font-family:var(--font-mono);font-size:0.64rem;letter-spacing:0.16em;text-transform:uppercase;color:#6BA5FF;margin:0 0 12px;padding:0 10px}.dropdown.mega a{display:block;padding:9px 10px;border-radius:9px;text-decoration:none;transition:background-color .16s ease,transform .16s ease}.dropdown.mega a:hover{background:rgba(43,107,255,0.14);transform:translateX(2px)}.mm-t{display:block;font-size:0.94rem;font-weight:600;color:#fff;line-height:1.25}.mm-d{display:block;font-size:0.79rem;color:rgba(255,255,255,0.56);line-height:1.4;margin-top:2px}.mm-featured{display:flex !important;flex-direction:column;gap:7px;margin-left:26px;padding:20px !important;border-radius:15px !important;background:linear-gradient(160deg,rgba(43,107,255,0.24) 0%,rgba(10,20,38,0.9) 68%);border:1px solid rgba(107,165,255,0.4)}.mm-featured:hover{background:linear-gradient(160deg,rgba(43,107,255,0.34) 0%,rgba(10,20,38,0.92) 68%) !important;transform:none !important}.mm-badge{align-self:flex-start;font-family:var(--font-mono);font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:#FF9C5E;border:1px solid rgba(255,140,70,0.5);border-radius:999px;padding:3px 9px}.mm-f-t{font-size:1.2rem;font-weight:800;color:#fff;letter-spacing:-0.02em}.mm-f-d{font-size:0.83rem;color:rgba(255,255,255,0.68);line-height:1.5}.mm-f-cta{margin-top:auto;padding-top:10px;font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.13em;text-transform:uppercase;color:#8FBCFF}.mm-pie{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 26px;border-top:1px solid rgba(255,255,255,0.08);background:rgba(43,107,255,0.06)}.mm-pie span{font-size:0.86rem;color:rgba(255,255,255,0.62)}.mm-pie a{font-size:0.86rem;font-weight:600;color:#8FBCFF;text-decoration:none;padding:6px 0 !important;background:none !important}.mm-pie a:hover{text-decoration:underline;transform:none !important}}@media (max-width:900px){.mm-inner{display:block}.mm-col{margin-bottom:10px}.mm-h{font-family:var(--font-mono);font-size:0.6rem;letter-spacing:0.16em;text-transform:uppercase;color:#6BA5FF;margin:12px 0 4px;padding-left:12px}.mm-t{display:block;font-weight:600;color:#fff}.mm-d{display:none}.mm-featured{margin:12px 12px 0;padding:14px !important;border-radius:12px !important;background:rgba(43,107,255,0.16);border:1px solid rgba(107,165,255,0.35);display:flex !important;flex-direction:column;gap:5px}.mm-badge{align-self:flex-start;font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;color:#FF9C5E}.mm-f-t{font-weight:800;color:#fff}.mm-f-d,.mm-f-cta{display:none}.mm-pie{display:flex;flex-direction:column;gap:4px;padding:14px 12px 0}.mm-pie span{font-size:0.8rem;color:rgba(255,255,255,0.55)}.mm-pie a{color:#8FBCFF}}
/* Mega menú: puente que cubre el hueco y margen de error al apuntar */
@media (min-width: 901px){
  .has-dropdown > a{ position:relative; }
  /* zona invisible que une el enlace con el panel */
  .has-dropdown > a::after{
    content:""; position:absolute; left:-14px; right:-14px; top:100%;
    height:26px; background:transparent;
  }
  .dropdown.mega{ padding-top:0; }
  .dropdown.mega::before{
    content:""; position:absolute; left:0; right:0; top:-22px; height:24px;
  }
  /* se mantiene abierto mientras el ratón esté en el enlace o dentro del panel */
  .has-dropdown:hover > .dropdown.mega,
  .has-dropdown:focus-within > .dropdown.mega,
  .dropdown.mega:hover{ opacity:1; visibility:visible; transform:translateY(0); }
  /* cierre con retardo para no perderlo por un temblor del ratón */
  .dropdown.mega{ transition:opacity .18s ease, transform .18s ease, visibility 0s linear .22s; }
  .has-dropdown:hover > .dropdown.mega,
  .has-dropdown:focus-within > .dropdown.mega{ transition:opacity .18s ease, transform .18s ease, visibility 0s; }
  /* el botón de presupuesto nunca queda por debajo del panel */
  .nav-desktop > .btn{ position:relative; z-index:2; }
}

/* ---------- Pruebas verificables (Nosotros) ---------- */
.pruebas{ background:var(--bg-dark); color:#fff; }
.pruebas h2, .pruebas .section-header p{ color:#fff; }
.pruebas .section-header p{ color:rgba(255,255,255,0.72); }
.pruebas-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--space-4); align-items:start; }
.prueba{
  margin:0; padding:var(--space-4); border-radius:20px;
  background:linear-gradient(180deg, rgba(20,36,64,0.86) 0%, rgba(11,22,41,0.96) 100%);
  border:1px solid rgba(107,165,255,0.24);
  box-shadow:0 18px 46px rgba(0,0,0,0.44);
}
.prueba-cab{ margin-bottom:var(--space-3); }
.prueba-etq{
  display:inline-block; font-family:var(--font-mono); font-size:0.62rem;
  letter-spacing:0.14em; text-transform:uppercase; color:#6BA5FF;
  border:1px solid rgba(107,165,255,0.42); border-radius:999px; padding:4px 11px; margin-bottom:10px;
}
.prueba-etq-ia{ color:#FF9C5E; border-color:rgba(255,140,70,0.5); }
.prueba-cab h3{ font-size:1.32rem; color:#fff; margin:0; letter-spacing:-0.02em; }
.prueba img{
  width:100%; height:auto; display:block; border-radius:13px;
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 10px 28px rgba(0,0,0,0.4);
}
.prueba figcaption{
  margin-top:var(--space-3); font-size:0.87rem; line-height:1.6;
  color:rgba(255,255,255,0.70);
}
.prueba figcaption a{ color:#8FBCFF; text-decoration:underline; }
.pruebas-nota{
  margin:var(--space-4) 0 0; padding-top:var(--space-3);
  border-top:1px solid rgba(255,255,255,0.09);
  font-size:0.78rem; color:rgba(255,255,255,0.52); max-width:74ch;
}
@media (max-width: 900px){ .pruebas-grid{ grid-template-columns:1fr; } }

/* El cangrejo de las galletas necesita más presencia */
.ck-crab{ width:88px; height:88px; }
@media (max-width: 860px){ .ck-crab{ width:64px; height:64px; } }

/* ---------- Pruebas: dos módulos exactamente iguales ---------- */
.pruebas-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:var(--space-4);
  align-items:stretch;
}
.prueba{
  margin:0; padding:0; overflow:hidden; height:100%;
  display:flex; flex-direction:column;
  border-radius:20px;
  background:linear-gradient(180deg, rgba(20,36,64,0.88) 0%, rgba(11,22,41,0.96) 100%);
  border:1px solid rgba(107,165,255,0.24);
  box-shadow:0 18px 46px rgba(0,0,0,0.44);
  transition:border-color .2s ease, transform .2s ease;
}
.prueba:hover{ transform:translateY(-4px); border-color:rgba(107,165,255,0.55); }
.prueba-media{
  background:#0A1426; border-bottom:1px solid rgba(255,255,255,0.08);
  aspect-ratio:16/10; overflow:hidden;
}
.prueba-media img{
  width:100%; height:100%; object-fit:cover; object-position:top center;
  display:block; border:none; border-radius:0; box-shadow:none;
}
.prueba-cuerpo{
  padding:var(--space-4); display:flex; flex-direction:column; gap:9px;
  flex:1; margin:0;
}
.prueba-cuerpo h3{ font-size:1.3rem; color:#fff; margin:0; letter-spacing:-0.02em; }
.prueba-cuerpo p{ font-size:0.89rem; line-height:1.6; color:rgba(255,255,255,0.70); margin:0; }
.prueba-dato{
  margin-top:auto; padding-top:14px; border-top:1px solid rgba(255,255,255,0.10);
  font-size:0.84rem; color:rgba(255,255,255,0.62);
}
.prueba-dato strong{
  display:inline-block; margin-right:7px; font-size:1.15rem; color:#6BA5FF;
  font-variant-numeric:tabular-nums;
}
.prueba:last-child .prueba-dato strong{ color:#FF9C5E; }
@media (max-width: 900px){
  .pruebas-grid{ grid-template-columns:1fr; }
  .prueba-media{ aspect-ratio:16/9; }
}

/* ---------- Secciones de texto: que ocupen el ancho ---------- */
.section-alt .section-header,
.section-sand .section-header{ max-width:none; }
.texto-ancho{
  display:grid; grid-template-columns:0.9fr 1.1fr; gap:var(--space-5); align-items:start;
}
.texto-ancho > h2{ margin:0; font-size:clamp(1.8rem, 3.2vw, 2.6rem); line-height:1.1; text-wrap:balance; }
.texto-ancho .texto-cuerpo{ display:grid; gap:var(--space-3); }
.texto-ancho .texto-cuerpo p{ margin:0; max-width:64ch; }
@media (max-width: 860px){ .texto-ancho{ grid-template-columns:1fr; gap:var(--space-3); } }

/* El botón de submenú solo tiene sentido en el panel móvil */
.nav-sub-toggle{ display:none; }
@media (max-width: 900px){ .nav-sub-toggle{ display:flex; } }

/* Segundo párrafo del hero de servicio, un punto más discreto */
.lede-2{ font-size:0.98rem; color:var(--ink-soft); margin-top:var(--space-2); }
.page-hero .lede strong{ color:#fff; font-weight:700; }

/* ---------- Marcador de velocidad de Google ---------- */
.pruebas-grid{ grid-template-columns:repeat(3,1fr); }
.prueba-media-claro{
  background:#fff; display:flex; align-items:center; justify-content:center;
  padding:18px 16px;
}
.speed-meter{ width:100%; max-width:290px; text-align:center; user-select:none; }
.speed-meter .logo{ width:66%; max-width:180px; height:auto; display:block; margin:0 auto -4px; }
.speed-meter svg{ width:100%; height:auto; display:block; }
.speed-meter .sm-value{ font-size:56px; font-weight:800; fill:#1f2733; letter-spacing:-2px; }
.speed-meter .sm-unit{ font-size:17px; font-weight:600; fill:#8a94a3; letter-spacing:3px; }
.speed-meter .sm-label{ font-size:19px; font-weight:700; }
.prueba-etq-verde{ color:#4ADE80; border-color:rgba(74,222,128,0.45); }
.prueba-marcador .prueba-dato strong{ color:#4ADE80; }
@media (max-width: 1100px){ .pruebas-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width: 900px){ .pruebas-grid{ grid-template-columns:1fr; } }

/* El marcador debe caber entero dentro del marco */
.prueba-media-claro{ padding:10px 12px; }
.prueba-media-claro .speed-meter{ max-width:255px; }
.prueba-media-claro .speed-meter .logo{ max-width:132px; margin-bottom:-8px; }
@media (max-width: 900px){
  .prueba-media-claro .speed-meter{ max-width:300px; }
  .prueba-media-claro .speed-meter .logo{ max-width:160px; }
}

/* Marco más alto: el marcador es casi cuadrado y necesita sitio */
.prueba-media{ aspect-ratio:4/3; }
.prueba-media-claro{ padding:12px; }
.prueba-media-claro .speed-meter{
  max-width:none; width:auto; height:100%;
  display:flex; flex-direction:column; justify-content:center; align-items:center;
}
.prueba-media-claro .speed-meter .logo{
  width:auto; height:13%; max-width:none; max-height:30px; margin:0 0 2px;
}
.prueba-media-claro .speed-meter svg{ height:85%; width:auto; max-width:100%; }
@media (max-width: 900px){ .prueba-media{ aspect-ratio:16/10; } }

/* =========================================================
   Preguntas frecuentes
   ========================================================= */
.faq-section{ background:var(--bg-dark); color:#fff; }
.faq-section h2{ color:#fff; }
.faq-cab{ margin-bottom:var(--space-5); }
.faq-cab .texto-cuerpo p{ color:rgba(255,255,255,0.72); }
.faq-lista{ display:grid; gap:12px; max-width:980px; }
.faq-item{
  background:linear-gradient(180deg, rgba(20,36,64,0.72) 0%, rgba(11,22,41,0.9) 100%);
  border:1px solid rgba(107,165,255,0.20); border-radius:15px;
  overflow:hidden; transition:border-color .18s ease;
}
.faq-item[open]{ border-color:rgba(107,165,255,0.5); }
.faq-item summary{
  display:flex; align-items:center; justify-content:space-between; gap:18px;
  padding:20px 22px; cursor:pointer; list-style:none;
  font-size:1.04rem; font-weight:600; color:#fff; line-height:1.35;
  min-height:44px;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary:hover{ background:rgba(43,107,255,0.08); }
.faq-item summary:focus-visible{ outline:3px solid #6BA5FF; outline-offset:-3px; }
.faq-mas{
  position:relative; width:22px; height:22px; flex-shrink:0;
}
.faq-mas::before, .faq-mas::after{
  content:""; position:absolute; left:50%; top:50%; background:#6BA5FF;
  transform:translate(-50%,-50%); border-radius:2px;
  transition:transform .22s ease, opacity .22s ease;
}
.faq-mas::before{ width:16px; height:2.5px; }
.faq-mas::after{ width:2.5px; height:16px; }
.faq-item[open] .faq-mas::after{ transform:translate(-50%,-50%) rotate(90deg); opacity:0; }
.faq-r{ padding:0 22px 22px; }
.faq-r p{
  margin:0; font-size:0.95rem; line-height:1.7;
  color:rgba(255,255,255,0.74); max-width:78ch; text-wrap:pretty;
}
@media (prefers-reduced-motion: reduce){
  .faq-mas::before, .faq-mas::after{ transition:none; }
}
@media (max-width: 560px){
  .faq-item summary{ padding:16px 18px; font-size:0.98rem; }
  .faq-r{ padding:0 18px 18px; }
}

/* =========================================================
   PORTFOLIO
   ========================================================= */
.pf-hero{
  background:var(--bg-dark); color:#fff;
  padding:var(--space-6) 0 var(--space-5);
  border-bottom:1px solid var(--line-dark);
}
.pf-hero-inner{ display:grid; grid-template-columns:1fr 1.05fr; gap:var(--space-5); align-items:center; }
.pf-hero h1{ font-size:clamp(2.2rem,4.8vw,3.6rem); line-height:1.04; color:#fff; text-wrap:balance; margin-bottom:var(--space-3); }
.pf-hero .lede{ color:rgba(255,255,255,0.78); max-width:52ch; }
.pf-hero .breadcrumb{ color:rgba(255,255,255,0.6); }
.pf-hero .breadcrumb a{ color:rgba(255,255,255,0.8); }
.pf-hero-img{ margin:0; border-radius:20px; overflow:hidden; border:1px solid rgba(107,165,255,0.24); box-shadow:0 24px 60px rgba(0,0,0,0.5); }
.pf-hero-img img{ width:100%; height:auto; display:block; }
.pf-metricas{ list-style:none; display:flex; flex-wrap:wrap; gap:var(--space-4); margin:var(--space-4) 0 0; padding:var(--space-3) 0 0; border-top:1px solid rgba(255,255,255,0.12); }
.pf-metricas li{ display:flex; flex-direction:column; }
.pf-metricas .num{ font-size:1.6rem; font-weight:800; color:#fff; font-variant-numeric:tabular-nums; letter-spacing:-0.02em; }
.pf-metricas .lbl{ font-size:0.82rem; color:rgba(255,255,255,0.58); }

/* Trayectoria */
.pf-tray{ background:var(--bg-dark); color:#fff; }
.pf-tray h2{ color:#fff; }
.pf-tray .texto-cuerpo p{ color:rgba(255,255,255,0.74); }
.pf-destacado{ font-size:1.15rem; font-weight:700; color:#fff !important; border-left:3px solid #FF6B1A; padding-left:16px; }
.pf-timeline{
  list-style:none; margin:var(--space-5) 0 0; padding:26px 0 0; position:relative;
  display:grid; grid-template-columns:repeat(6,1fr); gap:16px;
}
.pf-timeline::before{ content:""; position:absolute; top:0; left:5%; right:5%; height:2px;
  background:linear-gradient(90deg, transparent, var(--accent-2,#2B6BFF) 15%, #6BA5FF 60%, #FF6B1A 95%, transparent); }
.pf-timeline li{ position:relative; padding-top:6px; }
.pf-timeline li::before{ content:""; position:absolute; top:-31px; left:0; width:10px; height:10px; border-radius:50%;
  background:#6BA5FF; box-shadow:0 0 0 4px rgba(43,107,255,0.2); }
.pf-timeline li.is-final::before{ background:#FF6B1A; box-shadow:0 0 0 4px rgba(255,107,26,0.2); }
.tl-anio{ display:block; font-family:var(--font-mono); font-size:0.86rem; font-weight:700; color:#6BA5FF; margin-bottom:5px; }
.pf-timeline li.is-final .tl-anio{ color:#FF9C5E; }
.tl-txt{ display:block; font-size:0.86rem; color:rgba(255,255,255,0.72); line-height:1.45; }

/* Casos */
.pf-caso{ background:var(--bg-dark); color:#fff; }
.pf-caso.pf-caso-alt{ background:#08111F; }
.pf-caso h2{ color:#fff; font-size:clamp(1.8rem,3.4vw,2.7rem); margin-bottom:6px; }
.pf-caso h3{ color:#8FBCFF; font-size:1.1rem; font-weight:600; margin:0 0 var(--space-3); }
.pf-caso p{ color:rgba(255,255,255,0.74); }
.pf-split{ display:grid; grid-template-columns:1fr 1fr; gap:var(--space-5); align-items:center; }
.pf-caso-media figure{ margin:0; border-radius:16px; overflow:hidden; border:1px solid rgba(107,165,255,0.2);
  box-shadow:0 16px 42px rgba(0,0,0,0.44); }
.pf-caso-media img{ width:100%; height:auto; display:block; transition:transform .5s cubic-bezier(.22,.61,.36,1); }
.pf-caso-media figure:hover img{ transform:scale(1.03); }
.pf-media-duo{ display:grid; gap:14px; }
.pf-media-mosaico{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pf-media-mosaico .m-a{ grid-column:span 2; }

.pf-grande{ font-size:1.35rem; font-weight:800; color:#fff !important; letter-spacing:-0.02em; margin:0 0 var(--space-2); }
.pf-pills{ list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:var(--space-3) 0 0; padding:0; }
.pf-pills li{
  font-family:var(--font-mono); font-size:0.64rem; letter-spacing:0.1em; text-transform:uppercase;
  color:#8FBCFF; border:1px solid rgba(107,165,255,0.34); border-radius:999px; padding:6px 12px;
}
.pf-nota{
  margin:var(--space-3) 0 0; padding:18px 20px; border-radius:14px;
  background:rgba(255,107,26,0.08); border:1px solid rgba(255,140,70,0.3);
}
.pf-nota-etq{ font-family:var(--font-mono); font-size:0.62rem; letter-spacing:0.14em; text-transform:uppercase; color:#FF9C5E !important; margin:0 0 6px; }
.pf-nota-tit{ font-weight:700; color:#fff !important; margin:0 0 6px; }
.pf-nota p:last-child{ margin:0; font-size:0.9rem; }

/* Clientes históricos */
.pf-historicos{ background:var(--bg-dark); }
.pf-duo{ display:grid; grid-template-columns:1fr 1fr; gap:var(--space-4); align-items:stretch; }
.pf-card{
  display:flex; flex-direction:column; overflow:hidden; border-radius:20px;
  background:linear-gradient(180deg, rgba(20,36,64,0.86) 0%, rgba(11,22,41,0.96) 100%);
  border:1px solid rgba(107,165,255,0.22); box-shadow:0 18px 44px rgba(0,0,0,0.42);
  transition:border-color .2s ease, transform .2s ease;
}
.pf-card:hover{ transform:translateY(-4px); border-color:rgba(107,165,255,0.55); }
.pf-card figure{ margin:0; aspect-ratio:4/3; overflow:hidden; border-bottom:1px solid rgba(255,255,255,0.08); }
.pf-card figure img{ width:100%; height:100%; object-fit:cover; display:block; }
.pf-card-body{ padding:var(--space-4); display:flex; flex-direction:column; flex:1; }
.pf-card-body h3{ color:#fff; font-size:1.3rem; margin:0 0 8px; }
.pf-card-body p{ color:rgba(255,255,255,0.72); font-size:0.92rem; }
.pf-card-body .pf-pills{ margin-top:auto; padding-top:var(--space-3); }
.pf-firma{ margin-top:var(--space-2) !important; padding-top:12px; border-top:1px solid rgba(255,255,255,0.1); display:flex; flex-direction:column; }
.pf-firma strong{ color:#fff; }
.pf-firma span{ font-size:0.84rem; color:rgba(255,255,255,0.58); }

/* Caso destacado */
.pf-destacada{ background:#08111F; color:#fff; }
.pf-destacada-cab{ display:grid; grid-template-columns:1fr 1fr; gap:var(--space-5); align-items:end; margin-bottom:var(--space-4); }
.pf-destacada h2{ color:#fff; font-size:clamp(2rem,4vw,3.1rem); margin:0 0 4px; }
.pf-destacada h3{ color:#8FBCFF; font-size:1.15rem; font-weight:600; margin:0; }
.pf-destacada-cab p{ color:rgba(255,255,255,0.74); margin:0; }
.pf-destacada-img{ margin:0 0 var(--space-4); border-radius:20px; overflow:hidden;
  border:1px solid rgba(107,165,255,0.22); box-shadow:0 22px 56px rgba(0,0,0,0.5); }
.pf-destacada-img img{ width:100%; height:auto; display:block; }
.pf-pasos{ list-style:none; margin:0 0 var(--space-4); padding:0; display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.pf-pasos li{ padding:20px 18px; border-radius:14px; background:rgba(20,36,64,0.6); border:1px solid rgba(107,165,255,0.2); }
.paso-num{ font-family:var(--font-mono); font-size:0.72rem; color:#6BA5FF; letter-spacing:0.12em; }
.pf-pasos h4{ font-size:0.98rem; color:#fff; margin:8px 0 6px; }
.pf-pasos p{ font-size:0.84rem; color:rgba(255,255,255,0.64); margin:0; line-height:1.45; }
.pf-mini-galeria{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:var(--space-3); }
.pf-mini-galeria figure{ margin:0; border-radius:14px; overflow:hidden; border:1px solid rgba(107,165,255,0.18); }
.pf-mini-galeria img{ width:100%; height:auto; display:block; }

/* Resultado destacado */
.pf-resultado{
  margin:var(--space-3) 0 0; padding:20px 22px; border-radius:16px; text-align:center;
  background:linear-gradient(160deg, rgba(255,107,26,0.16) 0%, rgba(11,22,41,0.9) 70%);
  border:1px solid rgba(255,140,70,0.4);
}
.pf-res-etq{ font-family:var(--font-mono); font-size:0.62rem; letter-spacing:0.15em; text-transform:uppercase; color:#FF9C5E !important; margin:0; }
.pf-res-num{ font-size:2.8rem; font-weight:800; color:#fff !important; line-height:1.05; margin:4px 0 2px; letter-spacing:-0.03em; }
.pf-res-txt{ margin:0; font-size:0.9rem; color:rgba(255,255,255,0.7) !important; }

/* Mosaico Mesa Socorro */
.pf-mosaico3{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:var(--space-4); }
.pf-mosaico3 figure{ margin:0; border-radius:16px; overflow:hidden; border:1px solid rgba(107,165,255,0.18); aspect-ratio:1/1; }
.pf-mosaico3 img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Otros proyectos */
.pf-otros{ background:var(--bg-dark); color:#fff; }
.pf-otros h2{ color:#fff; }
.pf-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.pf-mini{
  padding:var(--space-4); border-radius:18px; display:flex; flex-direction:column;
  background:linear-gradient(180deg, rgba(20,36,64,0.8) 0%, rgba(11,22,41,0.95) 100%);
  border:1px solid rgba(107,165,255,0.2); transition:border-color .2s ease, transform .2s ease;
}
.pf-mini:hover{ transform:translateY(-4px); border-color:rgba(107,165,255,0.5); }
.pf-mini h3{ color:#fff; font-size:1.2rem; margin:0 0 8px; }
.pf-mini p{ color:rgba(255,255,255,0.7); font-size:0.9rem; margin:0; }
.pf-mini .pf-pills{ margin-top:auto; padding-top:var(--space-3); }

/* Cierre */
.pf-cierre{ background:#08111F; color:#fff; }
.pf-cierre-inner{ max-width:820px; }
.pf-cierre h2{ color:#fff; font-size:clamp(1.8rem,3.6vw,2.8rem); line-height:1.1; text-wrap:balance; margin-bottom:var(--space-3); }
.pf-cierre p{ color:rgba(255,255,255,0.74); }
.pf-cierre-destacado{
  margin-top:var(--space-4) !important; font-size:1.3rem; font-weight:800; color:#fff !important;
  border-left:3px solid #FF6B1A; padding-left:16px;
}
.pf-cierre-grande{
  font-size:clamp(1.5rem,3vw,2.2rem); font-weight:800; color:#8FBCFF !important;
  line-height:1.15; letter-spacing:-0.02em; margin-top:var(--space-2) !important;
}

/* Botón de caso, preparado pero oculto hasta que existan las páginas */
.pf-caso-btn{ display:none; }

/* Aparición al hacer scroll, solo con CSS */
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .pf-caso .pf-caso-copy, .pf-caso .pf-caso-media,
    .pf-card, .pf-mini, .pf-pasos li, .pf-destacada-img{
      animation:pf-aparece linear both;
      animation-timeline:view();
      animation-range:entry 0% entry 42%;
    }
    @keyframes pf-aparece{ from{ opacity:0; transform:translateY(20px); } to{ opacity:1; transform:none; } }
  }
}

/* Responsive */
@media (max-width: 1000px){
  .pf-timeline{ grid-template-columns:repeat(3,1fr); row-gap:26px; }
  .pf-pasos{ grid-template-columns:repeat(3,1fr); }
  .pf-grid3{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 900px){
  .pf-hero-inner{ grid-template-columns:1fr; }
  .pf-hero-img{ order:-1; }
  .pf-split{ grid-template-columns:1fr; gap:var(--space-4); }
  .pf-split-inv .pf-caso-media{ order:2; }
  .pf-duo{ grid-template-columns:1fr; }
  .pf-destacada-cab{ grid-template-columns:1fr; gap:var(--space-3); align-items:start; }
  .pf-mini-galeria{ grid-template-columns:1fr; }
}
@media (max-width: 640px){
  .pf-timeline{ grid-template-columns:1fr; gap:0; padding:0 0 0 26px; }
  .pf-timeline::before{ top:0; bottom:0; left:5px; right:auto; width:2px; height:auto;
    background:linear-gradient(180deg, transparent, #2B6BFF 12%, #6BA5FF 60%, #FF6B1A 94%, transparent); }
  .pf-timeline li{ padding:0 0 22px; }
  .pf-timeline li::before{ top:4px; left:-26px; }
  .pf-pasos{ grid-template-columns:1fr; }
  .pf-grid3{ grid-template-columns:1fr; }
  .pf-mosaico3{ grid-template-columns:1fr; }
  .pf-media-mosaico{ grid-template-columns:1fr; }
  .pf-media-mosaico .m-a{ grid-column:auto; }
}

/* Captura de evidencia: fondo claro y pie explicativo */
.pf-evidencia{ background:#fff; }
.pf-evidencia img{ background:#fff; }
.pf-evidencia figcaption{
  padding:11px 16px; background:#0C1729; border-top:1px solid rgba(107,165,255,0.2);
  font-size:0.82rem; color:rgba(255,255,255,0.66); text-align:center;
}

/* Imagen en las tarjetas de otros proyectos */
.pf-mini{ padding:0; overflow:hidden; }
.pf-mini > .eyebrow{ margin:var(--space-4) var(--space-4) 0; }
.pf-mini > h3, .pf-mini > p, .pf-mini > .pf-pills{ margin-left:var(--space-4); margin-right:var(--space-4); }
.pf-mini > .pf-pills{ margin-bottom:var(--space-4); }
.pf-mini-img{
  margin:0 0 var(--space-3); aspect-ratio:3/2; overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.pf-mini-img img{
  width:100%; height:100%; object-fit:cover; object-position:top center; display:block;
  transition:transform .5s cubic-bezier(.22,.61,.36,1);
}
.pf-mini:hover .pf-mini-img img{ transform:scale(1.04); }

/* La imagen va primero y el antetítulo debajo, así las tres arrancan igual */
.pf-mini{ display:flex; flex-direction:column; }
.pf-mini-img{ order:-1; margin:0 0 var(--space-3); }
.pf-mini > .eyebrow{
  margin:0 var(--space-4) 10px; min-height:2.6em;
  display:flex; align-items:flex-start;
}

/* =========================================================
   PÁGINAS LEGALES
   ========================================================= */
.lg-section{ background:var(--bg-dark); color:#fff; }
.lg-wrap{ display:grid; grid-template-columns:250px 1fr; gap:var(--space-5); align-items:start; }

.lg-indice{
  position:sticky; top:96px; align-self:start;
  padding:var(--space-3); border-radius:16px;
  background:rgba(20,36,64,0.55); border:1px solid rgba(107,165,255,0.2);
  max-height:calc(100vh - 130px); overflow-y:auto; overscroll-behavior:contain;
}
.lg-indice-tit{
  font-family:var(--font-mono); font-size:0.62rem; letter-spacing:0.14em;
  text-transform:uppercase; color:#6BA5FF; margin:0 0 10px;
}
.lg-indice ul{ list-style:none; margin:0; padding:0; display:grid; gap:2px; }
.lg-indice a{
  display:block; padding:7px 10px; border-radius:8px;
  font-size:0.82rem; line-height:1.35; color:rgba(255,255,255,0.7); text-decoration:none;
  border-left:2px solid transparent; transition:background-color .16s ease, color .16s ease, border-color .16s ease;
}
.lg-indice a:hover{ background:rgba(43,107,255,0.14); color:#fff; border-left-color:#6BA5FF; }
.lg-indice a:focus-visible{ outline:2px solid #6BA5FF; outline-offset:2px; }

.lg-texto{ max-width:76ch; }
.lg-fecha{
  display:inline-block; font-family:var(--font-mono); font-size:0.68rem;
  letter-spacing:0.12em; text-transform:uppercase; color:#8FBCFF;
  border:1px solid rgba(107,165,255,0.35); border-radius:999px; padding:6px 14px; margin:0 0 var(--space-4);
}
.lg-texto h2{
  font-size:1.45rem; color:#fff; margin:var(--space-5) 0 var(--space-2);
  padding-top:var(--space-3); border-top:1px solid rgba(255,255,255,0.1);
  scroll-margin-top:100px; text-wrap:balance;
}
.lg-texto h2:first-of-type{ margin-top:var(--space-2); border-top:none; padding-top:0; }
.lg-texto h3{ font-size:1.06rem; color:#8FBCFF; margin:var(--space-4) 0 8px; }
.lg-texto p{ color:rgba(255,255,255,0.76); line-height:1.75; margin:0 0 var(--space-2); font-size:0.95rem; }
.lg-texto a{ color:#8FBCFF; text-decoration:underline; }
.lg-texto strong{ color:#fff; }
.lg-lista{ list-style:none; margin:0 0 var(--space-3); padding:0; display:grid; gap:9px; }
.lg-lista li{
  position:relative; padding-left:22px; color:rgba(255,255,255,0.76);
  line-height:1.7; font-size:0.95rem;
}
.lg-lista li::before{
  content:""; position:absolute; left:2px; top:11px;
  width:7px; height:7px; border-radius:50%; background:#6BA5FF;
}
.lg-datos{
  padding:16px 18px; border-radius:12px; margin-bottom:var(--space-3) !important;
  background:rgba(43,107,255,0.08); border:1px solid rgba(107,165,255,0.22);
  line-height:1.9 !important;
}
.lg-tabla-wrap{ overflow-x:auto; margin:0 0 var(--space-3); border-radius:12px; border:1px solid rgba(107,165,255,0.22); }
.lg-tabla{ width:100%; border-collapse:collapse; min-width:640px; font-size:0.84rem; }
.lg-tabla th, .lg-tabla td{ padding:11px 14px; text-align:left; border-bottom:1px solid rgba(255,255,255,0.09); }
.lg-tabla th{ background:rgba(43,107,255,0.14); color:#fff; font-weight:700; }
.lg-tabla td{ color:rgba(255,255,255,0.72); }
.lg-tabla tr:last-child td{ border-bottom:none; }

@media (max-width: 900px){
  .lg-wrap{ grid-template-columns:1fr; gap:var(--space-4); }
  .lg-indice{ position:static; max-height:none; }
  .lg-indice ul{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 520px){
  .lg-indice ul{ grid-template-columns:1fr; }
  .lg-texto h2{ font-size:1.28rem; }
}

/* =========================================================
   Legibilidad en móvil: ninguna etiqueta por debajo de 12px
   ========================================================= */
@media (max-width: 640px){
  .eyebrow, .chip, .pf-pills li, .svc-tag, .svc-num, .svc-go,
  .mm-badge, .mm-h, .mm-f-cta, .prueba-etq, .prueba-dato,
  .acta-num, .a360-node .node-idx, .a360-step .step-idx,
  .tl-anio, .tl-txt, .paso-num, .flujo-pasos li, .a360-flow-note,
  .a360-loop span, .lg-fecha, .lg-indice-tit, .pf-res-etq, .pf-nota-etq,
  .ck-cat-txt span, .cert-logos span, .foot-claim, .strip-title,
  .eco-tag, .eco-link, .acta-gtext small, .ct-aviso-pie, .pruebas-nota,
  .a360-emp .emp-role, .a360-emp .emp-desc, .prueba-cuerpo p,
  .pf-mini p, .pf-card-body p, .hint, .form-note, .ct-rgpd, .small{
    font-size:0.78rem !important;   /* ≈ 12.5px */
    line-height:1.55;
  }
  .lg-texto p, .lg-lista li, .faq-r p{ font-size:0.92rem; }
}

@media (max-width: 640px){
  .eco-foot, .ct-consent legend, .lg-tabla{ font-size:0.78rem !important; }
}

/* Ajuste de la barra de navegacion al anadir Soporte (901-1119px) */
@media (min-width:901px){.nav-links>li>a{white-space:nowrap}.logo-name,.logo-sub{white-space:nowrap}.site-header .nav-desktop>.btn{white-space:nowrap}}
@media (min-width:901px) and (max-width:1119px){.nav-desktop{gap:20px}.nav-links{gap:18px}.nav-links a{font-size:0.87rem}.site-header .nav-desktop>.btn{font-size:0.87rem;padding-left:16px;padding-right:16px}}

/* Testimonios con logo de cliente */
.testi-logo{flex-shrink:0;width:auto;height:auto;max-height:36px;max-width:120px;object-fit:contain}
.testi-logo-fondo{border-radius:6px}
@media (min-width:1060px){.testi-grid{grid-template-columns:repeat(3,1fr)}}

/* Estrellas de valoracion: se encienden en dorado de la 1 a la 5 al pasar por encima */
.testi-estrellas{display:flex;gap:5px;align-items:center;line-height:0}
.testi-estrella{width:17px;height:17px;flex:0 0 auto;display:block;fill:rgba(10,14,26,0.17);transform-origin:50% 56%;transition:fill .3s ease,filter .3s ease,transform .45s cubic-bezier(.34,1.56,.64,1);transition-delay:0s}
.testi-card:hover .testi-estrella,
.testi-card:focus-within .testi-estrella,
.testi-estrellas:hover .testi-estrella{fill:#E3A72F;transform:scale(1.16);filter:drop-shadow(0 0 4px rgba(227,167,47,.9)) drop-shadow(0 0 10px rgba(227,167,47,.5))}
.testi-card:hover .testi-estrella:nth-child(1),.testi-card:focus-within .testi-estrella:nth-child(1),.testi-estrellas:hover .testi-estrella:nth-child(1){transition-delay:0s}
.testi-card:hover .testi-estrella:nth-child(2),.testi-card:focus-within .testi-estrella:nth-child(2),.testi-estrellas:hover .testi-estrella:nth-child(2){transition-delay:.1s}
.testi-card:hover .testi-estrella:nth-child(3),.testi-card:focus-within .testi-estrella:nth-child(3),.testi-estrellas:hover .testi-estrella:nth-child(3){transition-delay:.2s}
.testi-card:hover .testi-estrella:nth-child(4),.testi-card:focus-within .testi-estrella:nth-child(4),.testi-estrellas:hover .testi-estrella:nth-child(4){transition-delay:.3s}
.testi-card:hover .testi-estrella:nth-child(5),.testi-card:focus-within .testi-estrella:nth-child(5),.testi-estrellas:hover .testi-estrella:nth-child(5){transition-delay:.4s}
@media (hover:none){.testi-estrella{fill:#E3A72F}}
@media (prefers-reduced-motion:reduce){.testi-estrella{transition:fill .2s ease}.testi-card:hover .testi-estrella,.testi-card:focus-within .testi-estrella,.testi-estrellas:hover .testi-estrella{transform:none;filter:none;transition-delay:0s}}

/* ============================================================
   Menu Servicios: se abre al pinchar, no al pasar por encima
   ============================================================ */
@media (min-width:901px){
  /* fuera el puente invisible que disparaba el menu sin querer */
  .has-dropdown::after{content:none}

  /* pasar el raton ya no abre nada */
  .has-dropdown:hover>.dropdown.mega,
  .has-dropdown:focus-within>.dropdown.mega,
  .dropdown.mega:hover{opacity:0;visibility:hidden;transform:translateY(-8px) scale(.985);pointer-events:none}

  .dropdown.mega{
    opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(-8px) scale(.985);transform-origin:top center;
    background:linear-gradient(180deg,rgba(15,27,50,0.96) 0%,rgba(8,15,30,0.97) 100%);
    -webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);
    border:1px solid rgba(107,165,255,0.16);
    box-shadow:0 1px 0 rgba(255,255,255,0.05) inset,0 18px 44px rgba(3,9,22,0.42),0 44px 90px rgba(3,9,22,0.30);
    transition:opacity .3s cubic-bezier(.22,.61,.36,1),transform .38s cubic-bezier(.22,.61,.36,1),visibility 0s linear .38s;
  }

  /* abierto: solo con la clase que pone el clic */
  .has-dropdown.abierto>.dropdown.mega,
  .has-dropdown.abierto:hover>.dropdown.mega{
    opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);
    transition:opacity .32s cubic-bezier(.22,.61,.36,1),transform .42s cubic-bezier(.22,.61,.36,1),visibility 0s linear 0s;
  }

  /* los enlaces de dentro ya no dan el tiron lateral */
  .dropdown.mega a{transition:background-color .24s ease,color .24s ease}
  .dropdown.mega a:hover{background:rgba(107,165,255,0.10);transform:none}
  .mm-col{border-right:1px solid rgba(255,255,255,0.05)}
  .mm-pie{background:rgba(107,165,255,0.04);border-top:1px solid rgba(255,255,255,0.06)}
  .mm-featured{border:1px solid rgba(107,165,255,0.26);background:linear-gradient(160deg,rgba(43,107,255,0.18) 0%,rgba(10,20,38,0.86) 70%)}
  .mm-featured:hover{background:linear-gradient(160deg,rgba(43,107,255,0.26) 0%,rgba(10,20,38,0.88) 70%)!important}

  /* flecha que gira al abrir */
  .nav-links>.has-dropdown>a{display:inline-flex;align-items:center;gap:7px}
  .nav-links>.has-dropdown>a::after{
    content:"";position:static;display:block;width:8px;height:8px;flex:0 0 auto;
    top:auto;left:auto;right:auto;bottom:auto;background:none;
    border:0;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;
    transform:translateY(-2px) rotate(45deg);opacity:.6;
    transition:transform .34s cubic-bezier(.22,.61,.36,1),opacity .24s ease;
  }
  .nav-links>.has-dropdown.abierto>a{color:#fff}
  .nav-links>.has-dropdown.abierto>a::after{transform:translateY(1px) rotate(-135deg);opacity:1}
}
@media (prefers-reduced-motion:reduce){
  .dropdown.mega,.has-dropdown.abierto>.dropdown.mega{transition:opacity .01ms linear,visibility .01ms linear;transform:none}
  .nav-links>.has-dropdown>a::after{transition:none}
}
.mm-pie a span{color:inherit;font-size:inherit}
@media (max-width:900px){.has-dropdown.open>.nav-sub-toggle{top:2px;transform:none}}

/* ============================================================
   Articulos del blog
   ============================================================ */
.post-hero .lede{max-width:68ch}
.post-meta{font-family:var(--font-mono);font-size:0.76rem;letter-spacing:0.06em;color:var(--text-on-dark-faint);margin:var(--space-2) 0 0}
.post-cuerpo{max-width:72ch;margin:0 auto;font-size:1.06rem;line-height:1.75;color:var(--text-on-light)}
.post-cuerpo>*:first-child{margin-top:0}
.post-cuerpo p{margin:0 0 1.25em;max-width:none;color:inherit}
.post-cuerpo h2{font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.2;margin:2.2em 0 .7em;scroll-margin-top:96px}
.post-cuerpo h3{font-size:1.12rem;margin:1.9em 0 .55em}
.post-cuerpo h4{font-size:1rem;margin:1.6em 0 .5em}
.post-cuerpo ul,.post-cuerpo ol{margin:0 0 1.3em;padding-left:1.35em}
.post-cuerpo li{margin-bottom:.5em}
.post-cuerpo li::marker{color:var(--accent)}
.post-cuerpo strong{font-weight:700;color:var(--text-on-light)}
.post-cuerpo a{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-cuerpo a:hover{text-decoration-thickness:2px}
.post-cuerpo hr{border:0;border-top:1px solid var(--line-light);margin:2.4em 0}
.post-cuerpo figure{margin:1.8em 0}
.post-cuerpo img{border-radius:14px;width:100%;height:auto}
.post-cuerpo figcaption{font-size:.85rem;color:var(--text-on-light-faint);margin-top:.6em;text-align:center}
.post-cuerpo blockquote{margin:1.8em 0;padding:2px 0 2px 20px;border-left:3px solid var(--accent);color:var(--text-on-light-soft);font-style:normal}
.post-cuerpo table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.95rem}
.post-cuerpo th,.post-cuerpo td{border:1px solid var(--line-light);padding:10px 12px;text-align:left}
.post-cuerpo th{background:rgba(10,14,26,.04);font-weight:700}

/* indice del articulo */
.post-indice{margin:0 0 2.4em;padding:20px 24px;border:1px solid var(--line-light);border-left:3px solid var(--accent);border-radius:12px;background:rgba(43,107,255,.04)}
.post-indice-t{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-hover);margin:0 0 10px}
.post-indice ol{margin:0;padding-left:1.2em}
.post-indice li{margin-bottom:.35em}
.post-indice a{color:var(--text-on-light-soft);text-decoration:none}
.post-indice a:hover{color:var(--accent-hover);text-decoration:underline}

/* llamada del final */
.post-cta{max-width:72ch;margin:var(--space-5) auto 0;padding:var(--space-4);border:1px solid var(--line-light);border-radius:18px;background:linear-gradient(160deg,rgba(43,107,255,.07) 0%,rgba(43,107,255,.02) 70%)}
.post-cta h2{font-size:1.45rem;margin:0 0 10px}
.post-cta p{color:var(--text-on-light-soft);margin-bottom:var(--space-2)}

/* articulos relacionados */
.post-rel{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.post-rel-card{display:flex;flex-direction:column;gap:8px;padding:22px;background:#fff;border:1px solid var(--line-light);border-radius:14px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.post-rel-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(6,20,46,.10)}
.post-rel-cat{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.13em;text-transform:uppercase;color:var(--accent-hover)}
.post-rel-t{font-size:1rem;font-weight:700;line-height:1.35;color:var(--text-on-light)}
@media (max-width:860px){.post-rel{grid-template-columns:1fr}.post-cuerpo{font-size:1.02rem}}
/* el cuerpo del articulo va sobre fondo claro; los relacionados, sobre el oscuro */
.post-seccion{padding-top:var(--space-5)}
.post-rel-seccion .post-rel-card{background:var(--bg-card-dark);border-color:var(--line-dark)}
.post-rel-seccion .post-rel-t{color:#fff}
.post-rel-seccion .post-rel-cat{color:var(--accent-2)}
.post-rel-seccion .post-rel-card:hover{box-shadow:0 14px 34px rgba(0,0,0,.35)}
/* ===== Blog: artículos ===== */
.post-destacada{margin:0 0 2.2em;border-radius:16px;overflow:hidden;border:1px solid var(--line-light);background:#fff}
.post-destacada img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.post-figura{margin:2em 0;border-radius:14px;overflow:hidden;border:1px solid var(--line-light);background:#fff}
.post-figura img{width:100%;height:auto}
.post-figura figcaption{padding:10px 16px;font-size:.88rem;color:var(--text-on-light-faint);background:rgba(10,14,26,.03);margin:0}
.post-cuerpo h2{margin:1.9em 0 .6em;scroll-margin-top:96px;color:var(--text-on-light)}
.post-cuerpo h3{margin:1.5em 0 .5em;font-size:1.22rem;color:var(--text-on-light)}
.post-cuerpo h4{margin:1.3em 0 .4em;font-size:1.06rem;color:var(--text-on-light)}
.post-cuerpo p{max-width:none;color:var(--text-on-light)}
.post-cuerpo ul,.post-cuerpo ol{padding-left:1.3em;margin:0 0 1.2em}
.post-cuerpo li{margin-bottom:.5em}
.post-cuerpo a{color:var(--accent-hover);text-decoration:underline;text-underline-offset:2px}
.post-cuerpo a:hover{color:var(--accent)}
.post-cuerpo hr{border:0;border-top:1px solid var(--line-light);margin:2.2em 0}
.post-cuerpo blockquote{margin:1.6em 0;padding:4px 0 4px 20px;border-left:3px solid var(--accent);color:var(--text-on-light-soft);font-style:italic}
.post-cuerpo strong{font-weight:700}
.post-cuerpo table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.96rem}
.post-cuerpo th,.post-cuerpo td{border:1px solid var(--line-light);padding:10px 12px;text-align:left}

/* ===== Blog: índice ===== */
.blog-filtros{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 var(--space-4)}
.blog-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:999px;border:1px solid var(--line-light);background:#fff;color:var(--text-on-light);font-size:.9rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .18s ease}
.blog-chip:hover{border-color:var(--accent);color:var(--accent-hover)}
.blog-chip[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
.blog-chip span{font-family:var(--font-mono);font-size:.76rem;opacity:.7}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line-light);border-radius:16px;overflow:hidden;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(10,14,26,.10);border-color:rgba(47,111,237,.35)}
.blog-card-img{aspect-ratio:16/10;background:var(--bg-light);overflow:hidden}
.blog-card-img img{width:100%;height:100%;object-fit:cover}
.blog-card-body{display:flex;flex-direction:column;gap:9px;padding:20px 22px 24px;flex:1}
.blog-card-cat{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.09em;font-size:.7rem;color:var(--accent-hover)}
.blog-card-t{font-weight:700;font-size:1.06rem;line-height:1.32;color:var(--text-on-light);letter-spacing:-.01em}
.blog-card-d{font-size:.92rem;line-height:1.55;color:var(--text-on-light-soft);margin:0;flex:1}
.blog-card-meta{font-size:.8rem;color:var(--text-on-light-faint);margin-top:4px}
.blog-destacado{display:grid;grid-template-columns:1.05fr .95fr;gap:0;background:#fff;border:1px solid var(--line-light);border-radius:18px;overflow:hidden;text-decoration:none;margin:0 0 var(--space-4);transition:box-shadow .2s ease,border-color .2s ease}
.blog-destacado:hover{box-shadow:0 16px 40px rgba(10,14,26,.12);border-color:rgba(47,111,237,.35)}
.blog-destacado-img{min-height:280px;background:var(--bg-light)}
.blog-destacado-img img{width:100%;height:100%;object-fit:cover}
.blog-destacado-body{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:var(--space-4)}
.blog-destacado-body h2{font-size:clamp(1.4rem,2.4vw,1.9rem);margin:0;color:var(--text-on-light)}
.blog-destacado-body p{color:var(--text-on-light-soft);margin:0}
.blog-vacio{padding:var(--space-4);text-align:center;color:var(--text-on-light-soft)}
.paginacion{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:var(--space-5)}
.paginacion a,.paginacion span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 13px;border-radius:11px;border:1px solid var(--line-light);background:#fff;color:var(--text-on-light);text-decoration:none;font-weight:600;font-size:.94rem}
.paginacion a:hover{border-color:var(--accent);color:var(--accent-hover)}
.paginacion [aria-current="page"]{background:var(--accent);border-color:var(--accent);color:#fff}
.paginacion .pag-puntos{border:0;background:none;min-width:24px}
@media (max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr)}.blog-destacado{grid-template-columns:1fr}.blog-destacado-img{min-height:210px}}
@media (max-width:600px){.blog-grid{grid-template-columns:1fr}.post-destacada img{aspect-ratio:4/3}}

/* Mensaje de estado del formulario de contacto */
.form-estado{
  margin:0 0 1rem;
  padding:.75rem 1rem;
  border-radius:10px;
  font-size:.95rem;
  line-height:1.45;
  border:1px solid transparent;
}
.form-estado--info{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.18);
}
.form-estado--error{
  background:rgba(220,64,64,.12);
  border-color:rgba(220,64,64,.45);
}
