:root {
  --color-blue-950: #08224a;
  --color-blue-900: #0b2e63;
  --color-blue-800: #123d7a;
  --color-blue-100: #e8f1ff;
  --color-yellow-500: #ffd230;
  --color-yellow-600: #f0b900;
  --color-white: #ffffff;
  --color-gray-950: #172033;
  --color-gray-700: #4b5567;
  --color-gray-300: #d8deea;
  --color-gray-100: #f4f7fb;
  --shadow-soft: 0 18px 50px rgba(8, 34, 74, 0.16);
  --radius-large: 28px;
  --radius-medium: 18px;
  --max-width: 1160px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--color-gray-950);
  background: var(--color-gray-100);
  line-height: 1.5;
}

a {
  color: inherit;
  text-decoration: none;
}

img,
video {
  display: block;
  max-width: 100%;
}

.site-header {
  position: relative;
   z-index: 20;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(216, 222, 234, 0.8);
}

.header-shell {
  width: min(100%, var(--max-width));
  margin: 0 auto;
  padding: 12px 14px;
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 10px;
  align-items: center;
  position: relative;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.brand-mark {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: var(--color-blue-900);
  color: var(--color-yellow-500);
  font-weight: 900;
  letter-spacing: -0.04em;
}

.brand-text {
  min-width: 0;
}

.brand-text strong,
.brand-text small {
  display: block;
}

.brand-text strong {
  color: var(--color-blue-950);
  font-size: 0.95rem;
  line-height: 1.1;
}

.brand-text small {
  color: var(--color-gray-700);
  font-size: 0.75rem;
}

.top-actions {
  display: none;
  gap: 8px;
  align-items: center;
}

.top-link,
.menu-toggle,
.button {
  border: 0;
  border-radius: 999px;
  font-weight: 800;
  cursor: pointer;
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.top-link {
  padding: 10px 14px;
  font-size: 0.86rem;
  white-space: nowrap;
}

.top-link-primary {
  background: var(--color-yellow-500);
  color: var(--color-blue-950);
}

.top-link-secondary {
  background: var(--color-blue-100);
  color: var(--color-blue-900);
}

.menu-toggle {
  min-height: 42px;
  padding: 8px 12px;
  background: var(--color-blue-950);
  color: var(--color-white);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.menu-icon,
.menu-icon::before,
.menu-icon::after {
  width: 18px;
  height: 2px;
  display: block;
  border-radius: 99px;
  background: currentColor;
  position: relative;
}

.menu-icon::before,
.menu-icon::after {
  content: "";
  position: absolute;
  left: 0;
}

.menu-icon::before {
  top: -6px;
}

.menu-icon::after {
  top: 6px;
}

.main-menu {
  position: absolute;
  top: calc(100% + 4px);
  right: 14px;
  left: 14px;
  padding: 12px;
  display: grid;
  gap: 8px;
  background: var(--color-white);
  border: 1px solid var(--color-gray-300);
  border-radius: 20px;
  box-shadow: var(--shadow-soft);
}

.main-menu a {
  padding: 13px 14px;
  border-radius: 14px;
  color: var(--color-blue-950);
  font-weight: 750;
  background: var(--color-gray-100);
}

.main-menu a:hover,
.main-menu a:focus-visible,
.top-link:hover,
.top-link:focus-visible,
.button:hover,
.button:focus-visible {
  transform: translateY(-1px);
}

.hero-section {
  background:
    radial-gradient(circle at 78% 20%, rgba(255, 210, 48, 0.32), transparent 28%),
    linear-gradient(145deg, var(--color-blue-950), var(--color-blue-800));
  color: var(--color-white);
  overflow: hidden;
}

.hero-shell {
  width: min(100%, var(--max-width));
  margin: 0 auto;
  padding: 44px 18px 34px;
  display: grid;
  gap: 28px;
}

.hero-content {
  display: grid;
  gap: 16px;
  align-content: center;
}

.eyebrow {
  margin: 0;
  color: var(--color-yellow-500);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.76rem;
  font-weight: 900;
}

.hero-content h1,
.section-heading h2,
.responsibility-box h2 {
  margin: 0;
  letter-spacing: -0.04em;
  line-height: 1;
}

.hero-content h1 {
  max-width: 720px;
  font-size: clamp(2.2rem, 10vw, 5rem);
}

.hero-copy {
  max-width: 620px;
  margin: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(1rem, 4vw, 1.22rem);
}

.hero-actions {
  display: grid;
  gap: 10px;
}

.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 50px;
  padding: 14px 20px;
  font-size: 0.98rem;
}

.button-primary {
  background: var(--color-yellow-500);
  color: var(--color-blue-950);
  box-shadow: 0 14px 30px rgba(255, 210, 48, 0.22);
}

.button-outline {
  background: rgba(255, 255, 255, 0.1);
  color: var(--color-white);
  border: 1px solid rgba(255, 255, 255, 0.35);
}

.button-dark {
  background: var(--color-blue-950);
  color: var(--color-white);
}

.hero-note {
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.92rem;
}

.hero-media {
  position: relative;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.06));
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: var(--radius-large);
  padding: 12px;
  box-shadow: var(--shadow-soft);
}

.hero-media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 22px;
  background: var(--color-blue-100);
}

.section-shell {
  width: min(100%, var(--max-width));
  margin: 0 auto;
  padding: 44px 18px;
}

.quick-grid {
  display: grid;
  gap: 14px;
  margin-top: -24px;
  position: relative;
  z-index: 5;
}

.quick-card,
.video-card,
.faq-list details,
.responsibility-box {
  background: var(--color-white);
  border: 1px solid rgba(216, 222, 234, 0.9);
  border-radius: var(--radius-medium);
  box-shadow: 0 12px 34px rgba(8, 34, 74, 0.08);
}

.quick-card {
  padding: 20px;
  display: grid;
  gap: 8px;
}

.quick-number {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: var(--color-yellow-500);
  color: var(--color-blue-950);
  font-weight: 950;
}

.quick-card h2,
.video-card h3 {
  margin: 0;
  color: var(--color-blue-950);
}

.quick-card p,
.video-card p,
.section-heading p,
.faq-list p,
.responsibility-box p,
.footer-brand p {
  margin: 0;
  color: var(--color-gray-700);
}

.video-section,
.faq-preview {
  background: var(--color-white);
}

.section-heading {
  display: grid;
  gap: 12px;
  margin-bottom: 20px;
}

.section-heading h2,
.responsibility-box h2 {
  color: var(--color-blue-950);
  font-size: clamp(1.8rem, 7vw, 3rem);
}

.section-heading p {
  max-width: 720px;
}

.video-grid {
  display: grid;
  gap: 16px;
}

.video-card {
  padding: 14px;
  display: grid;
  gap: 12px;
}

.video-placeholder {
  min-height: 220px;
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(8, 34, 74, 0.9), rgba(18, 61, 122, 0.84)),
    repeating-linear-gradient(45deg, transparent 0, transparent 10px, rgba(255, 255, 255, 0.08) 10px, rgba(255, 255, 255, 0.08) 20px);
  color: var(--color-yellow-500);
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
}

.video-placeholder video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.video-placeholder span {
  position: absolute;
  z-index: 2;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(8, 34, 74, 0.76);
  font-weight: 900;
}

.faq-list {
  display: grid;
  gap: 12px;
  margin-bottom: 20px;
}

.faq-list details {
  padding: 18px;
}

.faq-list summary {
  color: var(--color-blue-950);
  font-weight: 850;
  cursor: pointer;
}

.faq-list p {
  padding-top: 10px;
}

.text-link {
  color: var(--color-blue-900);
  font-weight: 900;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.responsibility-strip {
  background: linear-gradient(180deg, var(--color-white), var(--color-gray-100));
}

.responsibility-box {
  padding: 22px;
  display: grid;
  gap: 18px;
  align-items: center;
}

.site-footer {
  background: var(--color-blue-950);
  color: var(--color-white);
}

.footer-grid {
  display: grid;
  gap: 28px;
}

.footer-brand strong {
  display: block;
  margin-bottom: 10px;
  color: var(--color-yellow-500);
  font-size: 1.2rem;
}

.footer-brand p {
  color: rgba(255, 255, 255, 0.72);
}

.footer-column {
  display: grid;
  gap: 10px;
  align-content: start;
}

.footer-column h2 {
  margin: 0 0 4px;
  color: var(--color-yellow-500);
  font-size: 1rem;
}

.footer-column a {
  color: rgba(255, 255, 255, 0.78);
}

.footer-column a:hover,
.footer-column a:focus-visible {
  color: var(--color-yellow-500);
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding: 16px;
  text-align: center;
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.86rem;
}

.footer-bottom p {
  margin: 0;
}

.page-main {
  width: min(100%, 900px);
  margin: 0 auto;
  padding: 46px 18px;
}

.page-card {
  background: var(--color-white);
  border-radius: var(--radius-large);
  padding: 28px;
  box-shadow: 0 12px 34px rgba(8, 34, 74, 0.08);
}

.page-card h1 {
  color: var(--color-blue-950);
  letter-spacing: -0.04em;
  line-height: 1;
  font-size: clamp(2rem, 8vw, 3.5rem);
  margin: 0 0 16px;
}

.page-card p {
  color: var(--color-gray-700);
}

@media (min-width: 560px) {
  .top-actions {
    display: flex;
  }

  .hero-actions {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (min-width: 780px) {
  .header-shell {
    padding: 14px 18px;
  }

  .hero-shell {
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    align-items: center;
    padding-top: 74px;
    padding-bottom: 58px;
  }

  .quick-grid,
  .video-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .responsibility-box {
    grid-template-columns: 1fr 1.2fr auto;
  }

  .footer-grid {
    grid-template-columns: 1.2fr repeat(3, 1fr);
  }
}

@media (max-width: 420px) {
  .brand-text small {
    display: none;
  }

  .menu-label {
    display: none;
  }

  .menu-toggle {
    padding-inline: 12px;
  }

  .header-shell {
    gap: 8px;
  }
}

/* N64 - Ajuste header móvil y menú desplegable */
[hidden] {
  display: none !important;
}

@media (max-width: 559px) {
  .header-shell {
    grid-template-columns: 1fr auto;
    gap: 10px;
    padding: 14px;
  }

  .brand {
    order: 1;
  }

  .menu-toggle {
    order: 2;
  }

  .top-actions {
    order: 3;
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    gap: 8px;
  }

  .top-link {
    min-height: 44px;
    padding: 10px 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.84rem;
    text-align: center;
  }

  .main-menu {
    top: calc(100% + 8px);
    left: 14px;
    right: 14px;
    padding: 14px;
    gap: 10px;
    max-height: calc(100vh - 170px);
    overflow-y: auto;
  }

  .main-menu a {
    padding: 15px 16px;
    font-size: 1rem;
  }
}

@media (min-width: 560px) {
  .main-menu {
    left: auto;
    right: 18px;
    width: min(420px, calc(100vw - 36px));
  }
}

/* N64 registration form */
.registration-page{
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 16px 48px;
}

.registration-hero{
  padding: 20px 0 14px;
}

.registration-hero h1{
  margin: 8px 0 10px;
  font-size: clamp(2rem, 7vw, 3.4rem);
  line-height: 1.05;
}

.registration-hero p{
  margin: 0;
  color: var(--muted, #536171);
  font-size: 1.04rem;
  line-height: 1.55;
}

.registration-card,
.registration-note{
  background: #fff;
  border: 1px solid rgba(15, 43, 80, .10);
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(15, 43, 80, .10);
  padding: 20px;
  margin-top: 18px;
}

.registration-card h2,
.registration-note h2{
  margin-top: 0;
}

.form-intro,
.form-help{
  color: var(--muted, #536171);
}

.registration-form{
  display: grid;
  gap: 16px;
}

.field{
  display: grid;
  gap: 7px;
}

.field label{
  font-weight: 800;
  color: var(--ink, #10243d);
}

.field input,
.field select{
  width: 100%;
  min-height: 52px;
  border: 1px solid rgba(15, 43, 80, .22);
  border-radius: 14px;
  padding: 0 14px;
  font: inherit;
  background: #fff;
  color: var(--ink, #10243d);
}

.field input:focus,
.field select:focus{
  outline: 3px solid rgba(255, 199, 44, .45);
  border-color: rgba(15, 43, 80, .45);
}

.optional-contact{
  border: 1px dashed rgba(15, 43, 80, .22);
  border-radius: 18px;
  padding: 14px;
  background: rgba(15, 43, 80, .025);
}

.optional-contact summary{
  cursor: pointer;
  font-weight: 800;
  color: var(--ink, #10243d);
}

.optional-contact .field{
  margin-top: 14px;
}

.acceptance-box{
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255, 199, 44, .12);
  border: 1px solid rgba(255, 199, 44, .45);
}

.check-row{
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 10px;
  align-items: start;
  font-size: .94rem;
  line-height: 1.35;
}

.check-row input{
  width: 20px;
  height: 20px;
  margin-top: 1px;
}

.check-row a{
  font-weight: 800;
}

.btn-full{
  width: 100%;
  justify-content: center;
  min-height: 54px;
  font-size: 1rem;
}

.form-message{
  display: none;
  border-radius: 16px;
  padding: 14px;
  font-weight: 700;
  line-height: 1.4;
}

.form-message.is-visible{
  display: block;
}

.form-message.ok{
  background: rgba(20, 130, 80, .12);
  border: 1px solid rgba(20, 130, 80, .28);
  color: #11613f;
}

.form-message.bad{
  background: rgba(190, 30, 45, .10);
  border: 1px solid rgba(190, 30, 45, .25);
  color: #8a1f2b;
}

@media (max-width: 520px){
  .registration-page{
    padding: 16px 12px 40px;
  }

  .registration-card,
  .registration-note{
    border-radius: 20px;
    padding: 16px;
  }
}

/* N64_MINIMAL_FOOTER_V1 */
.site-footer.minimal-footer,
.minimal-footer{
  margin:36px auto 0;
  padding:18px 16px 22px;
  max-width:760px;
  text-align:center;
  background:transparent !important;
  color:#0b2345 !important;
  border:0 !important;
  box-shadow:none !important;
}

.site-footer.minimal-footer p,
.minimal-footer p{
  margin:0;
  font-size:1rem;
  font-weight:800;
  line-height:1.3;
}

.site-footer.minimal-footer small,
.minimal-footer small{
  display:block;
  margin-top:6px;
  font-size:.78rem;
  color:#64748b;
  line-height:1.3;
}

@media (max-width:720px){
  .site-footer.minimal-footer,
  .minimal-footer{
    margin-top:24px;
    padding:14px 14px 18px;
  }

  .site-footer.minimal-footer p,
  .minimal-footer p{
    font-size:.95rem;
  }
}

/* N64_REGISTRO_MINIMAL_COPY_V2 */
body:has(form#registrationForm) nav,
body:has(form#registrationForm) .site-nav,
body:has(form#registrationForm) .nav-links,
body:has(form#registrationForm) .menu-panel,
body:has(form#registrationForm) .desktop-nav{
  display:none !important;
}

body:has(form#registrationForm) .n64BackButton,
body:has(form#registrationForm) a.n64BackButton,
body:has(form#registrationForm) button.n64BackButton{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 14px;
  border-radius:999px;
  border:0;
  background:#0b2345;
  color:#fff;
  font-weight:800;
  font-size:.82rem;
  text-decoration:none;
}

body:has(form#registrationForm) .hero,
body:has(form#registrationForm) .page-hero,
body:has(form#registrationForm) .public-hero{
  margin-top:22px;
}

body:has(form#registrationForm) .hero p,
body:has(form#registrationForm) .page-hero p,
body:has(form#registrationForm) .public-hero p{
  max-width:420px;
  line-height:1.35;
}

body:has(form#registrationForm) .form-help,
body:has(form#registrationForm) .field-help,
body:has(form#registrationForm) small.help{
  display:none !important;
}

/* N64_REGISTRO_DISCLAIMER_ACCORDION_V1 */
.disclaimer-acceptance{
  display:block;
}

.disclaimer-details{
  margin:4px 0 0 28px;
  border:0;
}

.disclaimer-details summary{
  display:inline-flex;
  cursor:pointer;
  color:#0b5fc7;
  font-weight:800;
  font-size:.86rem;
  list-style:none;
}

.disclaimer-details summary::-webkit-details-marker{
  display:none;
}

.disclaimer-details summary::before{
  content:"▸";
  margin-right:5px;
}

.disclaimer-details[open] summary::before{
  content:"▾";
}

.disclaimer-copy{
  margin-top:8px;
  padding:10px 12px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(15,43,80,.12);
  color:#334155;
  line-height:1.4;
  max-width:620px;
}

.disclaimer-copy p{
  margin:0 0 8px;
}

.disclaimer-copy p:last-child{
  margin-bottom:0;
}

@media (max-width:720px){
  .disclaimer-details{
    margin-left:26px;
  }

  .disclaimer-copy{
    font-size:.88rem;
  }
}

/* N64_REGISTRO_POLISH_V4 */
.hp-field{
  position:absolute !important;
  left:-10000px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.registration-card{
  margin-bottom:48px !important;
}

.registration-note{
  margin-top:34px !important;
  opacity:.82;
  box-shadow:none !important;
  border:1px solid rgba(15,43,80,.08) !important;
}

.registration-note h2{
  font-size:1.15rem !important;
}

.registration-note p{
  line-height:1.45 !important;
}

.disclaimer-acceptance{
  display:block;
}

.disclaimer-details{
  margin:6px 0 0 28px;
  border:0;
}

.disclaimer-details summary{
  display:inline-flex;
  cursor:pointer;
  color:#475569;
  font-weight:700;
  font-size:.84rem;
  list-style:none;
}

.disclaimer-details summary::-webkit-details-marker{
  display:none;
}

.disclaimer-details summary::before{
  content:"▸";
  margin-right:5px;
}

.disclaimer-details[open] summary::before{
  content:"▾";
}

.disclaimer-copy{
  margin-top:8px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(15,43,80,.10);
  color:#475569;
  line-height:1.4;
  max-width:620px;
  font-size:.88rem;
}

.disclaimer-copy p{
  margin:0 0 8px;
}

.disclaimer-copy p:last-child{
  margin-bottom:0;
}

@media (max-width:720px){
  .registration-card{
    margin-bottom:36px !important;
  }

  .registration-note{
    margin-top:28px !important;
  }

  .disclaimer-details{
    margin-left:26px;
  }
}

/* N64_PUBLIC_CONTACT_SELECTOR_V1 */
.contact-selector-page{
  min-height:100vh;
}

.simple-header{
  max-width:760px;
  margin:0 auto;
  padding:18px 16px 8px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.simple-header strong{
  display:block;
  color:#0b2345;
  font-size:.98rem;
}

.simple-header small{
  display:block;
  color:#64748b;
  margin-top:3px;
  font-size:.8rem;
}

.back-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 14px;
  border-radius:999px;
  background:#0b2345;
  color:#fff;
  font-weight:800;
  font-size:.82rem;
  text-decoration:none;
}

.contact-main{
  max-width:760px;
  margin:0 auto;
  padding:28px 16px 10px;
}

.contact-hero{
  margin-bottom:22px;
}

.contact-hero h1{
  margin:0;
  color:#0b2345;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.03em;
}

.contact-hero p{
  margin:8px 0 0;
  color:#64748b;
  font-size:1rem;
}

.contact-channel-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.contact-channel-card{
  display:block;
  text-decoration:none;
  color:#0b2345;
  background:#fff;
  border:1px solid rgba(15,43,80,.10);
  border-radius:22px;
  padding:20px;
  box-shadow:0 14px 40px rgba(15,43,80,.08);
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

.contact-channel-card:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 48px rgba(15,43,80,.12);
  border-color:rgba(15,43,80,.20);
}

.contact-channel-kicker{
  display:inline-flex;
  margin-bottom:12px;
  padding:5px 10px;
  border-radius:999px;
  background:#eef5ff;
  color:#0b5fc7;
  font-size:.76rem;
  font-weight:900;
}

.contact-channel-card h2{
  margin:0;
  font-size:1.22rem;
  line-height:1.15;
}

.contact-channel-card p{
  margin:10px 0 18px;
  color:#64748b;
  line-height:1.4;
  font-size:.94rem;
}

.contact-channel-card strong{
  display:inline-flex;
  color:#0b5fc7;
  font-size:.9rem;
}

@media (max-width:720px){
  .simple-header{
    padding-top:14px;
  }

  .contact-main{
    padding-top:22px;
  }

  .contact-hero h1{
    font-size:1.8rem;
  }

  .contact-channel-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .contact-channel-card{
    padding:18px;
    border-radius:20px;
  }
}

/* N64_PUBLIC_CONTACT_SELECTOR_V2 */
.contact-admin-card{
  border-color:rgba(11,95,199,.22) !important;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%) !important;
}

.contact-admin-card .contact-channel-kicker{
  background:#eaf3ff !important;
  color:#0b5fc7 !important;
}

.contact-admin-card strong{
  color:#0b5fc7 !important;
}

.contact-admin-card::before{
  content:"";
  display:block;
  width:42px;
  height:4px;
  border-radius:999px;
  background:#0b5fc7;
  margin-bottom:16px;
}

.contact-support-card{
  border-color:rgba(16,122,92,.22) !important;
  background:linear-gradient(180deg,#ffffff 0%,#f6fffb 100%) !important;
}

.contact-support-card .contact-channel-kicker{
  background:#e7f8f1 !important;
  color:#107a5c !important;
}

.contact-support-card strong{
  color:#107a5c !important;
}

.contact-support-card::before{
  content:"";
  display:block;
  width:42px;
  height:4px;
  border-radius:999px;
  background:#107a5c;
  margin-bottom:16px;
}

.contact-hero p{
  color:#475569 !important;
  font-weight:650;
}

@media (max-width:720px){
  .contact-admin-card::before,
  .contact-support-card::before{
    width:38px;
    margin-bottom:14px;
  }
}

/* N64_PUBLIC_CONTACT_FORM_V1 */
.contact-form-page{
  min-height:100vh;
}

.contact-form-main{
  max-width:760px;
  margin:0 auto;
  padding:28px 16px 10px;
}

.contact-form-hero{
  margin-bottom:22px;
}

.contact-form-hero span{
  display:inline-flex;
  margin-bottom:10px;
  padding:5px 10px;
  border-radius:999px;
  background:#eaf3ff;
  color:#0b5fc7;
  font-size:.76rem;
  font-weight:900;
}

.contact-form-hero h1{
  margin:0;
  color:#0b2345;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.03em;
}

.contact-form-hero p{
  margin:8px 0 0;
  color:#64748b;
  line-height:1.4;
  font-size:1rem;
}

.contact-form-card{
  background:#fff;
  border:1px solid rgba(15,43,80,.10);
  border-radius:22px;
  padding:20px;
  box-shadow:0 14px 40px rgba(15,43,80,.08);
}

.contact-form{
  display:grid;
  gap:14px;
}

.contact-form .field{
  display:grid;
  gap:7px;
}

.contact-form label{
  color:#0b2345;
  font-weight:900;
  font-size:.9rem;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  border:1px solid rgba(15,43,80,.24);
  border-radius:14px;
  padding:12px 13px;
  font:inherit;
  color:#0b2345;
  background:#fff;
}

.contact-form textarea{
  resize:vertical;
  min-height:120px;
}

.contact-admin-form-page .contact-form-card{
  border-color:rgba(11,95,199,.18);
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
}

.hp-field{
  position:absolute !important;
  left:-10000px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media (max-width:720px){
  .contact-form-main{
    padding-top:22px;
  }

  .contact-form-hero h1{
    font-size:1.8rem;
  }

  .contact-form-card{
    padding:18px;
    border-radius:20px;
  }
}

/* N64_PUBLIC_CONTACT_SUPPORT_FORM_V1 */

.contact-support-form-page .contact-form-hero span{
  background:#e7f8f1 !important;
  color:#107a5c !important;
}

.contact-support-form-page .contact-form-card{
  border-color:rgba(16,122,92,.18) !important;
  background:linear-gradient(180deg,#ffffff 0%,#f6fffb 100%) !important;
}

.contact-support-form-page .btn-primary{
  background:#107a5c;
  border-color:#107a5c;
}

.contact-support-form-page .btn-primary:hover{
  background:#0b674d;
  border-color:#0b674d;
}
/* N64_DELIVERY_WOW_YELLOW_V1 */

.delivery-wow{
  background: var(--color-yellow-500);
  color: var(--color-blue-950);
}

.delivery-wow-shell{
  padding-top: 42px;
  padding-bottom: 46px;
}

.delivery-wow-box{
  display: grid;
  gap: 22px;
}

.delivery-wow .eyebrow{
  color: var(--color-blue-950);
}

.delivery-wow-main{
  display: grid;
  gap: 12px;
}

.delivery-wow-main h2{
  margin: 0;
  max-width: 780px;
  color: var(--color-blue-950);
  font-size: clamp(2rem, 7vw, 4rem);
  line-height: .95;
  letter-spacing: -0.055em;
}

.delivery-wow-main p{
  margin: 0;
  max-width: 760px;
  color: rgba(8, 34, 74, .82);
  font-size: clamp(1.02rem, 3vw, 1.22rem);
  font-weight: 650;
  line-height: 1.45;
}

.delivery-wow-points{
  display: grid;
  gap: 12px;
}

.delivery-wow-points div{
  background: rgba(255, 255, 255, .78);
  border: 1px solid rgba(8, 34, 74, .10);
  border-radius: 18px;
  padding: 16px;
  box-shadow: 0 12px 28px rgba(8, 34, 74, .10);
}

.delivery-wow-points strong{
  display: block;
  margin-bottom: 4px;
  color: var(--color-blue-950);
  font-size: 1rem;
  font-weight: 950;
}

.delivery-wow-points span{
  display: block;
  color: rgba(8, 34, 74, .74);
  font-size: .94rem;
  line-height: 1.35;
}

.delivery-wow-note{
  margin: 0;
  max-width: 920px;
  padding: 16px 18px;
  border-radius: 18px;
  background: var(--color-blue-950);
  color: var(--color-white);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.4;
}

@media (min-width: 780px){
  .delivery-wow-box{
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    align-items: center;
  }

  .delivery-wow-note{
    grid-column: 1 / -1;
  }
}

/* N65_DEPOSITO_FLOW_3_PASOS_AIRE_V2 */

.deposito-flow{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,.10), transparent 30%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#fff;
  padding:96px 18px 78px;
  overflow:hidden;
}

.deposito-flow__inner{
  width:min(100%, 860px);
  margin:0 auto;
}

.deposito-flow__head{
  max-width:660px;
  margin:0 auto 44px;
  text-align:center;
}

.deposito-flow__eyebrow{
  display:inline-flex;
  margin:0 0 35px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
  color:#eaf3ff;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  font-weight:950;
}

.deposito-flow__head h2{
  margin:0;
  color:#fff;
  font-size:clamp(2.1rem, 5vw, 3.3rem);
  line-height:1;
  letter-spacing:-.05em;
}

.deposito-flow__head p{
  max-width:540px;
  margin:20px auto 0;
  color:rgba(255,255,255,.74);
  font-size:1rem;
  line-height:1.5;
}

.deposito-flow__timeline{
  display:grid;
  justify-items:center;
}

.deposito-flow__step{
  width:min(100%, 430px);
  padding:24px 22px 25px;
  text-align:center;
  border-radius:26px;
  background:#f5f9ff;
  color:#0b2345;
  border:1px solid rgba(143,194,255,.42);
  box-shadow:0 16px 36px rgba(0,0,0,.17);
}

.deposito-flow__step--highlight{
  background:linear-gradient(180deg, #fff6cf 0%, #ffe58a 100%);
  border-color:rgba(255,210,48,.92);
}

.deposito-flow__tag{
  display:inline-flex;
  margin-bottom:12px;
  padding:5px 10px;
  border-radius:999px;
  background:#dbeafe;
  color:#2563eb;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.66rem;
  font-weight:950;
}

.deposito-flow__step--highlight .deposito-flow__tag{
  background:rgba(130,79,0,.10);
  color:#7a4b00;
}

.deposito-flow__icon{
  width:50px;
  height:50px;
  margin:0 auto 14px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:#0b5fc7;
  color:#fff;
  box-shadow:0 10px 24px rgba(11,95,199,.20);
}

.deposito-flow__step--highlight .deposito-flow__icon{
  background:#0b2345;
  box-shadow:0 10px 24px rgba(8,34,74,.18);
}

.deposito-flow__icon svg{
  width:31px;
  height:31px;
}

.deposito-flow__icon svg *{
  fill:none;
  stroke:currentColor;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.deposito-flow__step h3{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.35rem, 3vw, 1.75rem);
  line-height:1.08;
  letter-spacing:-.035em;
}

.deposito-flow__step p{
  max-width:330px;
  margin:10px auto 0;
  color:#55647a;
  font-size:.94rem;
  line-height:1.4;
}

.deposito-flow__line{
  position:relative;
  width:3px;
  height:58px;
  background:linear-gradient(180deg, rgba(96,165,250,.10), rgba(96,165,250,.72), rgba(96,165,250,.10));
  box-shadow:0 0 15px rgba(96,165,250,.32);
  overflow:hidden;
}

.deposito-flow__line::after{
  content:"";
  position:absolute;
  left:50%;
  top:-18px;
  width:7px;
  height:22px;
  transform:translateX(-50%);
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 14px rgba(255,210,48,.68);
  animation: depositoFlowDown 1.9s linear infinite;
}

.deposito-flow__status{
  width:min(100%, 560px);
  margin:34px auto 0;
  text-align:center;
  color:rgba(255,255,255,.86);
  font-size:.95rem;
  font-weight:800;
  line-height:1.4;
}

.deposito-flow__status span{
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;
  margin-right:7px;
  border-radius:999px;
  background:#ffd230;
  color:#0b2345;
  font-size:.82rem;
  font-weight:950;
  vertical-align:middle;
}

@keyframes depositoFlowDown{
  0%{
    transform:translate(-50%, -18px);
    opacity:0;
  }

  22%{
    opacity:1;
  }

  100%{
    transform:translate(-50%, 72px);
    opacity:0;
  }
}

@media (max-width:720px){
  .deposito-flow{
    padding:62px 15px 66px;
  }

  .deposito-flow__head{
    margin-bottom:36px;
  }

  .deposito-flow__eyebrow{
    margin-bottom:24px;
  }

  .deposito-flow__head p{
    margin-top:16px;
  }

  .deposito-flow__step{
    border-radius:23px;
    padding:22px 17px 23px;
  }

  .deposito-flow__line{
    height:52px;
  }

  .deposito-flow__status{
    margin-top:30px;
    font-size:.9rem;
  }
}

@media (prefers-reduced-motion: reduce){
  .deposito-flow__line::after{
    animation:none;
  }
}
/* N65_RETIRO_FLOW_QR_CARD_V1 */

.retiro-flow{
  background:#f4f7fb;
  color:#0b2345;
  padding:76px 18px 82px;
}

.retiro-flow__inner{
  width:min(100%, 860px);
  margin:0 auto;
}

.retiro-flow__head{
  max-width:620px;
  margin:0 auto 34px;
  text-align:center;
}

.retiro-flow__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  border:1px solid rgba(11,95,199,.14);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  font-weight:950;
}

.retiro-flow__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(2.1rem, 5vw, 3.3rem);
  line-height:1;
  letter-spacing:-.05em;
}

.retiro-flow__card{
  width:min(100%, 520px);
  margin:0 auto;
  padding:28px 24px 24px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(15,43,80,.10);
  box-shadow:0 18px 48px rgba(8,34,74,.12);
  text-align:center;
}

.retiro-flow__qr{
  position:relative;
  width:112px;
  height:112px;
  margin:0 auto 20px;
  display:grid;
  place-items:center;
  border-radius:30px;
  background:#0b2345;
  color:#fff;
  overflow:hidden;
  box-shadow:0 16px 38px rgba(8,34,74,.22);
}

.retiro-flow__qr svg{
  width:76px;
  height:76px;
  position:relative;
  z-index:1;
}

.retiro-flow__qr svg *{
  fill:none;
  stroke:currentColor;
  stroke-width:5;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.retiro-flow__scan{
  position:absolute;
  left:14px;
  right:14px;
  top:18px;
  height:3px;
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 18px rgba(255,210,48,.9);
  animation: retiroScan 2.2s ease-in-out infinite;
}

.retiro-flow__copy span{
  display:block;
  margin-bottom:7px;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:.68rem;
  font-weight:950;
}

.retiro-flow__copy h3{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.55rem, 4vw, 2.1rem);
  line-height:1.05;
  letter-spacing:-.04em;
}

.retiro-flow__copy p{
  max-width:360px;
  margin:10px auto 0;
  color:#55647a;
  font-size:.96rem;
  line-height:1.4;
}

.retiro-flow__resultados{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:24px;
}

.retiro-flow__resultado{
  padding:14px 12px;
  border-radius:18px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,.08);
}

.retiro-flow__resultado--ok{
  background:#fff6cf;
  border-color:rgba(255,210,48,.60);
}

.retiro-flow__resultado strong{
  display:block;
  color:#0b2345;
  font-size:.9rem;
  line-height:1.15;
}

.retiro-flow__resultado span{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:.82rem;
  line-height:1.25;
}

@keyframes retiroScan{
  0%, 100%{
    transform:translateY(0);
    opacity:.45;
  }

  50%{
    transform:translateY(72px);
    opacity:1;
  }
}

@media (max-width:720px){
  .retiro-flow{
    padding:62px 15px 68px;
  }

  .retiro-flow__head{
    margin-bottom:28px;
  }

  .retiro-flow__card{
    padding:24px 18px 20px;
    border-radius:26px;
  }

  .retiro-flow__resultados{
    grid-template-columns:1fr;
    gap:10px;
  }
}

@media (prefers-reduced-motion: reduce){
  .retiro-flow__scan{
    animation:none;
  }
}
/* N65_USO_VIDEO_FLOW_LIGERO_V1 */

.uso-video-flow{
  background:#ffffff;
  padding:64px 18px 72px;
  color:#0b2345;
}

.uso-video-flow__inner{
  width:min(100%, 860px);
  margin:0 auto;
}

.uso-video-flow__head{
  text-align:center;
  margin-bottom:30px;
}

.uso-video-flow__eyebrow{
  display:inline-flex;
  margin:0 0 14px;
  padding:7px 13px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  border:1px solid rgba(11,95,199,.14);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  font-weight:950;
}

.uso-video-flow__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(2rem, 5vw, 3rem);
  line-height:1;
  letter-spacing:-.05em;
}

.uso-video-flow__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.uso-video-card{
  padding:14px 14px 18px;
  border-radius:28px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,.08);
  box-shadow:0 14px 36px rgba(8,34,74,.08);
  text-align:center;
}

.uso-video-card__media{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  background:#0b2345;
  aspect-ratio:9 / 16;
  max-height:430px;
}

.uso-video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:22px;
}

.uso-video-card__placeholder{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at center, rgba(255,210,48,.18), transparent 34%),
    linear-gradient(180deg, rgba(11,35,69,.92), rgba(7,23,47,.96));
  color:#ffd230;
  pointer-events:none;
  transition:opacity .25s ease;
}

.uso-video-card__placeholder span{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  font-size:1.2rem;
  padding-left:3px;
}

.uso-video.is-loaded + .uso-video-card__placeholder{
  opacity:0;
}

.uso-video-card h3{
  margin:14px 0 0;
  color:#0b2345;
  font-size:1.2rem;
  line-height:1.1;
  letter-spacing:-.025em;
}

@media (max-width:720px){
  .uso-video-flow{
    padding:56px 15px 62px;
  }

  .uso-video-flow__head{
    margin-bottom:24px;
  }

  .uso-video-flow__grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .uso-video-card{
    width:min(100%, 360px);
    margin:0 auto;
    border-radius:26px;
  }

  .uso-video-card__media{
    max-height:520px;
  }
}

/* N65_HOME_FAQ_YELLOW_SOFT_V1 */

.home-faq{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.55), transparent 30%),
    linear-gradient(180deg, #fff4bd 0%, #ffd230 100%);
  color:#0b2345;
  padding:72px 18px 76px;
}

.home-faq__inner{
  width:min(100%, 860px);
  margin:0 auto;
}

.home-faq__head{
  max-width:680px;
  margin:0 auto 34px;
  text-align:center;
}

.home-faq__eyebrow{
  display:inline-flex;
  margin:0 0 16px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(11,35,69,.10);
  color:#0b2345;
  border:1px solid rgba(11,35,69,.14);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  font-weight:950;
}

.home-faq__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(2.1rem, 5vw, 3.35rem);
  line-height:1;
  letter-spacing:-.055em;
}

.home-faq__head p{
  max-width:560px;
  margin:16px auto 0;
  color:rgba(11,35,69,.76);
  font-size:1rem;
  line-height:1.45;
  font-weight:650;
}

.home-faq__list{
  display:grid;
  gap:12px;
}

.home-faq__item{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(11,35,69,.10);
  border-radius:22px;
  box-shadow:0 14px 36px rgba(8,34,74,.10);
  overflow:hidden;
}

.home-faq__item[open]{
  background:#ffffff;
  border-color:rgba(11,35,69,.18);
  box-shadow:0 18px 46px rgba(8,34,74,.14);
}

.home-faq__item summary{
  min-height:66px;
  padding:18px 20px;
  display:flex;
  align-items:center;
  gap:12px;
  color:#0b2345;
  font-size:1rem;
  font-weight:950;
  line-height:1.25;
  cursor:pointer;
  list-style:none;
}

.home-faq__item summary::-webkit-details-marker{
  display:none;
}

.home-faq__item summary span{
  flex:0 0 auto;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#0b2345;
  color:#ffd230;
  font-size:.78rem;
  font-weight:950;
}

.home-faq__item summary::after{
  content:"+";
  margin-left:auto;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  font-size:1.2rem;
  font-weight:900;
  line-height:1;
}

.home-faq__item[open] summary::after{
  content:"–";
  background:#ffd230;
  color:#0b2345;
}

.home-faq__item p{
  margin:0;
  padding:0 20px 20px 66px;
  color:#4b5567;
  font-size:.98rem;
  line-height:1.48;
}

.home-faq__item[open] p{
  color:#334155;
}

.home-faq__footer{
  margin-top:26px;
  text-align:center;
}

.home-faq__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 20px;
  border-radius:999px;
  background:#0b2345;
  color:#fff;
  font-size:.94rem;
  font-weight:900;
  box-shadow:0 14px 30px rgba(8,34,74,.18);
}

@media (max-width:720px){
  .home-faq{
    padding:62px 15px 66px;
  }

  .home-faq__head{
    margin-bottom:28px;
  }

  .home-faq__item{
    border-radius:20px;
  }

  .home-faq__item summary{
    padding:17px 16px;
    gap:10px;
    font-size:.96rem;
  }

  .home-faq__item summary span{
    width:31px;
    height:31px;
    border-radius:11px;
  }

  .home-faq__item p{
    padding:0 16px 18px 57px;
    font-size:.93rem;
  }
}

/* N65_HOME_FAQ_YELLOW_SOFT_V1 */

.home-faq{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.55), transparent 30%),
    linear-gradient(180deg, #fff4bd 0%, #ffd230 100%);
  color:#0b2345;
  padding:72px 18px 76px;
}

.home-faq__inner{
  width:min(100%, 860px);
  margin:0 auto;
}

.home-faq__head{
  max-width:680px;
  margin:0 auto 34px;
  text-align:center;
}

.home-faq__eyebrow{
  display:inline-flex;
  margin:0 0 16px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(11,35,69,.10);
  color:#0b2345;
  border:1px solid rgba(11,35,69,.14);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  font-weight:950;
}

.home-faq__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(2.1rem, 5vw, 3.35rem);
  line-height:1;
  letter-spacing:-.055em;
}

.home-faq__head p{
  max-width:560px;
  margin:16px auto 0;
  color:rgba(11,35,69,.76);
  font-size:1rem;
  line-height:1.45;
  font-weight:650;
}

.home-faq__list{
  display:grid;
  gap:12px;
}

.home-faq__item{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(11,35,69,.10);
  border-radius:22px;
  box-shadow:0 14px 36px rgba(8,34,74,.10);
  overflow:hidden;
}

.home-faq__item[open]{
  background:#ffffff;
  border-color:rgba(11,35,69,.18);
  box-shadow:0 18px 46px rgba(8,34,74,.14);
}

.home-faq__item summary{
  min-height:66px;
  padding:18px 20px;
  display:flex;
  align-items:center;
  gap:12px;
  color:#0b2345;
  font-size:1rem;
  font-weight:950;
  line-height:1.25;
  cursor:pointer;
  list-style:none;
}

.home-faq__item summary::-webkit-details-marker{
  display:none;
}

.home-faq__item summary span{
  flex:0 0 auto;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#0b2345;
  color:#ffd230;
  font-size:.78rem;
  font-weight:950;
}

.home-faq__item summary::after{
  content:"+";
  margin-left:auto;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  font-size:1.2rem;
  font-weight:900;
  line-height:1;
}

.home-faq__item[open] summary::after{
  content:"–";
  background:#ffd230;
  color:#0b2345;
}

.home-faq__item p{
  margin:0;
  padding:0 20px 20px 66px;
  color:#4b5567;
  font-size:.98rem;
  line-height:1.48;
}

.home-faq__item[open] p{
  color:#334155;
}

.home-faq__footer{
  margin-top:26px;
  text-align:center;
}

.home-faq__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 20px;
  border-radius:999px;
  background:#0b2345;
  color:#fff;
  font-size:.94rem;
  font-weight:900;
  box-shadow:0 14px 30px rgba(8,34,74,.18);
}

@media (max-width:720px){
  .home-faq{
    padding:62px 15px 66px;
  }

  .home-faq__head{
    margin-bottom:28px;
  }

  .home-faq__item{
    border-radius:20px;
  }

  .home-faq__item summary{
    padding:17px 16px;
    gap:10px;
    font-size:.96rem;
  }

  .home-faq__item summary span{
    width:31px;
    height:31px;
    border-radius:11px;
  }

  .home-faq__item p{
    padding:0 16px 18px 57px;
    font-size:.93rem;
  }
}

/* N65_RESIDENT_BENEFITS_ESCANEABLE_V1 */

.resident-benefits{
  background:#ffffff;
  color:#0b2345;
  padding:72px 18px 78px;
}

.resident-benefits__inner{
  width:min(100%, 900px);
  margin:0 auto;
}

.resident-benefits__head{
  max-width:640px;
  margin:0 auto 34px;
  text-align:center;
}

.resident-benefits__eyebrow{
  display:inline-flex;
  margin:0 0 16px;
  padding:7px 13px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  border:1px solid rgba(11,95,199,0.14);
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.resident-benefits__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(2.1rem, 5vw, 3.35rem);
  line-height:1;
  letter-spacing:-0.055em;
}

.resident-benefits__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.resident-benefit-card{
  min-height:150px;
  padding:20px;
  display:grid;
  align-content:start;
  gap:10px;
  border-radius:24px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 12px 30px rgba(8,34,74,0.07);
}

.resident-benefit-card--wide{
  grid-column:1 / -1;
  background:
    radial-gradient(circle at 90% 10%, rgba(255,210,48,0.28), transparent 30%),
    linear-gradient(135deg, #0b2345 0%, #123d7a 100%);
  color:#ffffff;
}

.resident-benefit-card__icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#ffd230;
  color:#0b2345;
  font-size:0.9rem;
  font-weight:900;
  line-height:1;
}

.resident-benefit-card h3{
  margin:0;
  color:#0b2345;
  font-size:1.22rem;
  line-height:1.1;
  letter-spacing:-0.03em;
}

.resident-benefit-card p{
  margin:0;
  color:#55647a;
  font-size:0.94rem;
  line-height:1.35;
}

.resident-benefit-card--wide h3,
.resident-benefit-card--wide p{
  color:#ffffff;
}

.resident-benefit-card--wide p{
  color:rgba(255,255,255,0.78);
}

@media (max-width:720px){
  .resident-benefits{
    padding:62px 15px 66px;
  }

  .resident-benefits__head{
    margin-bottom:28px;
  }

  .resident-benefits__grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .resident-benefit-card,
  .resident-benefit-card--wide{
    grid-column:auto;
    min-height:auto;
    border-radius:22px;
    padding:18px;
  }

  .resident-benefit-card__icon{
    width:42px;
    height:42px;
    border-radius:15px;
  }

  .resident-benefit-card h3{
    font-size:1.12rem;
  }

  .resident-benefit-card p{
    font-size:0.9rem;
  }
}
/* N65_HOME_FOOTER_BLUE_FINAL_V1 */

.home-footer{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.14), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #06162d 100%);
  color:#ffffff;
  padding:72px 18px 26px;
}

.home-footer__inner{
  width:min(100%, 900px);
  margin:0 auto;
}

.home-footer__cta{
  max-width:720px;
  margin:0 auto 44px;
  text-align:center;
}

.home-footer__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.home-footer__cta h2{
  margin:0;
  color:#ffffff;
  font-size:clamp(2rem, 5vw, 3.35rem);
  line-height:1;
  letter-spacing:-0.055em;
}

.home-footer__actions{
  margin-top:28px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
}

.home-footer__button{
  min-height:50px;
  padding:14px 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  font-size:0.95rem;
  font-weight:900;
  text-decoration:none;
}

.home-footer__button--primary{
  background:#ffd230;
  color:#0b2345;
  box-shadow:0 16px 34px rgba(255,210,48,0.22);
}

.home-footer__button--secondary{
  background:rgba(255,255,255,0.10);
  color:#ffffff;
  border:1px solid rgba(255,255,255,0.22);
}

.home-footer__links{
  padding:24px;
  border-radius:26px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.13);
}

.home-footer__links h3{
  margin:0 0 16px;
  color:#ffd230;
  font-size:1rem;
  line-height:1.2;
}

.home-footer__links nav{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
}

.home-footer__links a{
  min-height:44px;
  padding:11px 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-radius:16px;
  background:rgba(255,255,255,0.08);
  color:rgba(255,255,255,0.86);
  font-size:0.88rem;
  font-weight:800;
  text-decoration:none;
}

.home-footer__links a:hover,
.home-footer__links a:focus-visible{
  background:#ffd230;
  color:#0b2345;
}

.home-footer__bottom{
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,0.12);
  text-align:center;
}

.home-footer__bottom p{
  margin:0;
  color:#ffffff;
  font-size:0.95rem;
  font-weight:800;
}

.home-footer__bottom small{
  display:block;
  margin-top:6px;
  color:rgba(255,255,255,0.58);
  font-size:0.78rem;
  line-height:1.3;
}

@media (max-width:720px){
  .home-footer{
    padding:62px 15px 22px;
  }

  .home-footer__cta{
    margin-bottom:34px;
  }

  .home-footer__actions{
    display:grid;
    gap:10px;
  }

  .home-footer__button{
    width:100%;
  }

  .home-footer__links{
    padding:18px;
    border-radius:22px;
  }

  .home-footer__links nav{
    grid-template-columns:1fr;
  }

  .home-footer__links a{
    justify-content:flex-start;
    text-align:left;
  }
}

/* N65_RELATED_LINKS_INTERES_V1 */

.related-links{
  background:#f4f7fb;
  color:#0b2345;
  padding:62px 18px 66px;
}

.related-links__inner{
  width:min(100%, 860px);
  margin:0 auto;
}

.related-links__head{
  max-width:620px;
  margin:0 auto 28px;
  text-align:center;
}

.related-links__eyebrow{
  display:inline-flex;
  margin:0 0 14px;
  padding:7px 13px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  border:1px solid rgba(11,95,199,0.14);
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.related-links__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(2rem, 5vw, 3.1rem);
  line-height:1;
  letter-spacing:-0.055em;
}

.related-links__box{
  margin:0 auto;
}

.related-links__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}

.related-links__list li{
  margin:0;
}

.related-links__list a{
  min-height:82px;
  padding:18px 20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  border-radius:22px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 12px 30px rgba(8,34,74,0.07);
  color:#0b2345;
  text-decoration:none;
  transition:transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.related-links__list a:hover,
.related-links__list a:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(11,95,199,0.22);
  box-shadow:0 16px 38px rgba(8,34,74,0.11);
}

.related-links__list span{
  display:block;
  color:#0b2345;
  font-size:1.05rem;
  font-weight:900;
  line-height:1.15;
}

.related-links__list small{
  display:block;
  color:#64748b;
  font-size:0.9rem;
  line-height:1.35;
}

@media (min-width:780px){
  .related-links__list{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .related-links__list a{
    min-height:128px;
    align-items:flex-start;
  }
}

@media (max-width:720px){
  .related-links{
    padding:54px 15px 58px;
  }

  .related-links__head{
    margin-bottom:24px;
  }

  .related-links__list a{
    min-height:76px;
    padding:17px;
    border-radius:20px;
  }

  .related-links__list span{
    font-size:1rem;
  }

  .related-links__list small{
    font-size:0.86rem;
  }
}

/* N65_FINAL_FOOTER_SIMPLE_BLUE_V1 */

.final-footer{
  background:#0b2345;
  color:#ffffff;
  padding:34px 18px 38px;
}

.final-footer__inner{
  width:min(100%, 860px);
  margin:0 auto;
  text-align:center;
}

.final-footer__brand{
  display:grid;
  gap:4px;
  margin-bottom:18px;
}

.final-footer__brand strong{
  color:#ffd230;
  font-size:1.05rem;
  font-weight:900;
  line-height:1.2;
}

.final-footer__brand span{
  color:rgba(255,255,255,0.72);
  font-size:0.9rem;
  line-height:1.3;
}

.final-footer__message{
  margin:0;
  color:#ffffff;
  font-size:1rem;
  font-weight:800;
  line-height:1.35;
}

.final-footer__tech{
  display:block;
  margin-top:10px;
  color:rgba(255,255,255,0.52);
  font-size:0.78rem;
  line-height:1.35;
}

@media (max-width:720px){
  .final-footer{
    padding:30px 15px 34px;
  }

  .final-footer__brand{
    margin-bottom:16px;
  }

  .final-footer__message{
    font-size:0.95rem;
  }
}


/* N66_REGLAMENTO_USO_VISUAL_V1 */

.reglamento-page{
  background:#f4f7fb;
  color:#0b2345;
}

.reglamento-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.20), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.reglamento-hero__inner{
  width:min(100%, 860px);
  margin:0 auto;
  text-align:center;
}

.reglamento-hero__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.reglamento-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.3rem, 7vw, 4.2rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.reglamento-hero p{
  max-width:620px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.reglamento-documento{
  padding:52px 18px 76px;
}

.reglamento-documento__inner{
  width:min(100%, 900px);
  margin:0 auto;
}

.reglamento-aviso{
  padding:22px;
  border-radius:24px;
  background:#fff6cf;
  border:1px solid rgba(255,210,48,0.70);
  box-shadow:0 14px 34px rgba(8,34,74,0.08);
}

.reglamento-aviso strong{
  display:block;
  color:#0b2345;
  font-size:1.05rem;
  line-height:1.2;
}

.reglamento-aviso p{
  margin:8px 0 0;
  color:#4b5567;
  font-size:0.96rem;
  line-height:1.45;
}

.reglamento-resumen{
  margin:18px 0 26px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

.reglamento-resumen article{
  padding:16px;
  border-radius:20px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 10px 28px rgba(8,34,74,0.06);
}

.reglamento-resumen span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  margin-bottom:10px;
  border-radius:12px;
  background:#0b2345;
  color:#ffd230;
  font-size:0.76rem;
  font-weight:900;
}

.reglamento-resumen strong{
  display:block;
  color:#0b2345;
  font-size:0.92rem;
  line-height:1.25;
}

.reglamento-articulos{
  display:grid;
  gap:18px;
}

.reglamento-articulo{
  padding:26px;
  border-radius:26px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 14px 36px rgba(8,34,74,0.07);
}

.reglamento-articulo__numero{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 11px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.68rem;
  font-weight:900;
}

.reglamento-articulo h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.35rem, 4vw, 2rem);
  line-height:1.05;
  letter-spacing:-0.04em;
}

.reglamento-articulo p{
  margin:12px 0 0;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.55;
}

.reglamento-articulo ul{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.reglamento-articulo li{
  position:relative;
  padding-left:28px;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.45;
}

.reglamento-articulo li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:11px;
  height:11px;
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 0 4px rgba(255,210,48,0.22);
}

.reglamento-articulo--tiempos{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.20), transparent 30%),
    #ffffff;
}

.reglamento-tiempos{
  margin:18px 0 4px;
  display:grid;
  gap:10px;
}

.reglamento-tiempos div{
  padding:15px 16px;
  border-radius:18px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,0.08);
}

.reglamento-tiempos strong{
  display:block;
  color:#0b2345;
  font-size:0.98rem;
  line-height:1.2;
}

.reglamento-tiempos span{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:0.9rem;
  line-height:1.35;
}

.reglamento-articulo--aceptacion{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.24), transparent 30%),
    linear-gradient(135deg, #0b2345 0%, #123d7a 100%);
  color:#ffffff;
  border-color:rgba(255,255,255,0.12);
}

.reglamento-articulo--aceptacion .reglamento-articulo__numero{
  background:rgba(255,255,255,0.10);
  color:#ffd230;
  border:1px solid rgba(255,255,255,0.14);
}

.reglamento-articulo--aceptacion h2{
  color:#ffffff;
}

.reglamento-articulo--aceptacion p{
  color:rgba(255,255,255,0.78);
}

.reglamento-boton{
  margin-top:20px;
  min-height:48px;
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#ffd230;
  color:#0b2345;
  font-size:0.94rem;
  font-weight:900;
  text-decoration:none;
}

@media (max-width:780px){
  .reglamento-resumen{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .reglamento-hero{
    padding:62px 15px 58px;
  }

  .reglamento-documento{
    padding:38px 15px 62px;
  }

  .reglamento-resumen{
    grid-template-columns:1fr;
  }

  .reglamento-articulo{
    padding:22px 18px;
    border-radius:22px;
  }

  .reglamento-aviso{
    padding:19px;
    border-radius:22px;
  }

  .reglamento-tiempos div{
    padding:14px;
  }

  .reglamento-boton{
    width:100%;
  }
}
/* N66_LEGAL_HUB_INDEX_V1 */

.legal-hub-page{
  background:#f4f7fb;
  color:#0b2345;
}

.legal-hub-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.18), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.legal-hub-hero__inner{
  width:min(100%, 860px);
  margin:0 auto;
  text-align:center;
}

.legal-hub-hero__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.legal-hub-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.3rem, 7vw, 4.1rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.legal-hub-hero p{
  max-width:620px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.legal-hub-content{
  padding:54px 18px 76px;
}

.legal-hub-content__inner{
  width:min(100%, 900px);
  margin:0 auto;
}

.legal-hub-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.legal-hub-card{
  min-height:300px;
  padding:26px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  border-radius:28px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 14px 36px rgba(8,34,74,0.08);
}

.legal-hub-card--primary{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.22), transparent 34%),
    #ffffff;
  border-color:rgba(255,210,48,0.45);
}

.legal-hub-card__tag{
  display:inline-flex;
  margin-bottom:18px;
  padding:6px 11px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.68rem;
  font-weight:900;
}

.legal-hub-card--primary .legal-hub-card__tag{
  background:#fff1ad;
  color:#7a4b00;
}

.legal-hub-card h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.55rem, 4vw, 2.15rem);
  line-height:1.05;
  letter-spacing:-0.045em;
}

.legal-hub-card p{
  margin:14px 0 22px;
  color:#55647a;
  font-size:0.98rem;
  line-height:1.5;
}

.legal-hub-card__link{
  margin-top:auto;
  min-height:48px;
  padding:13px 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#0b2345;
  color:#ffffff;
  font-size:0.92rem;
  font-weight:900;
  text-decoration:none;
}

.legal-hub-card--primary .legal-hub-card__link{
  background:#ffd230;
  color:#0b2345;
  box-shadow:0 14px 30px rgba(255,210,48,0.22);
}

.legal-hub-note{
  margin-top:22px;
  padding:20px 22px;
  border-radius:24px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 12px 30px rgba(8,34,74,0.06);
}

.legal-hub-note strong{
  display:block;
  color:#0b2345;
  font-size:1rem;
  line-height:1.2;
}

.legal-hub-note p{
  margin:7px 0 0;
  color:#64748b;
  font-size:0.94rem;
  line-height:1.4;
}

@media (max-width:720px){
  .legal-hub-hero{
    padding:62px 15px 58px;
  }

  .legal-hub-content{
    padding:42px 15px 62px;
  }

  .legal-hub-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .legal-hub-card{
    min-height:auto;
    padding:22px 18px;
    border-radius:24px;
  }

  .legal-hub-note{
    padding:18px;
    border-radius:22px;
  }

  .legal-hub-card__link{
    width:100%;
  }
}

/* N66_RESPONSABILIDADES_SISTEMA_V1 */

.system-scope-page{
  background:#f4f7fb;
  color:#0b2345;
}

.system-scope-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.18), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.system-scope-hero__inner{
  width:min(100%, 880px);
  margin:0 auto;
  text-align:center;
}

.system-scope-hero__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.system-scope-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.25rem, 7vw, 4.1rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.system-scope-hero p{
  max-width:660px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.system-scope-content{
  padding:54px 18px 76px;
}

.system-scope-content__inner{
  width:min(100%, 920px);
  margin:0 auto;
}

.system-scope-main-card{
  padding:28px;
  border-radius:30px;
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.28), transparent 34%),
    #ffffff;
  border:1px solid rgba(255,210,48,0.50);
  box-shadow:0 16px 40px rgba(8,34,74,0.08);
}

.system-scope-main-card span{
  display:inline-flex;
  margin-bottom:16px;
  padding:6px 11px;
  border-radius:999px;
  background:#fff1ad;
  color:#7a4b00;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.68rem;
  font-weight:900;
}

.system-scope-main-card h2{
  max-width:720px;
  margin:0;
  color:#0b2345;
  font-size:clamp(1.75rem, 5vw, 2.7rem);
  line-height:1;
  letter-spacing:-0.055em;
}

.system-scope-main-card p{
  max-width:760px;
  margin:14px 0 0;
  color:#4b5567;
  font-size:1rem;
  line-height:1.55;
}

.system-scope-grid{
  margin:18px 0 26px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

.system-scope-grid article{
  padding:18px;
  border-radius:22px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 12px 30px rgba(8,34,74,0.06);
}

.system-scope-grid strong{
  display:block;
  color:#0b2345;
  font-size:1rem;
  line-height:1.2;
}

.system-scope-grid p{
  margin:8px 0 0;
  color:#64748b;
  font-size:0.9rem;
  line-height:1.4;
}

.system-scope-sections{
  display:grid;
  gap:18px;
}

.system-scope-section{
  padding:26px;
  border-radius:26px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 14px 36px rgba(8,34,74,0.07);
}

.system-scope-section__tag{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 11px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.68rem;
  font-weight:900;
}

.system-scope-section h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.35rem, 4vw, 2rem);
  line-height:1.05;
  letter-spacing:-0.04em;
}

.system-scope-section p{
  margin:12px 0 0;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.55;
}

.system-scope-section ul{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.system-scope-section li{
  position:relative;
  padding-left:28px;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.45;
}

.system-scope-section li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:11px;
  height:11px;
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 0 4px rgba(255,210,48,0.22);
}

.system-scope-section--yellow{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.26), transparent 32%),
    #ffffff;
  border-color:rgba(255,210,48,0.42);
}

.system-scope-section--yellow .system-scope-section__tag{
  background:#fff1ad;
  color:#7a4b00;
}

.system-scope-section--acceptance{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.24), transparent 30%),
    linear-gradient(135deg, #0b2345 0%, #123d7a 100%);
  color:#ffffff;
  border-color:rgba(255,255,255,0.12);
}

.system-scope-section--acceptance .system-scope-section__tag{
  background:rgba(255,255,255,0.10);
  color:#ffd230;
  border:1px solid rgba(255,255,255,0.14);
}

.system-scope-section--acceptance h2{
  color:#ffffff;
}

.system-scope-section--acceptance p{
  color:rgba(255,255,255,0.78);
}

.system-scope-button{
  margin-top:20px;
  min-height:48px;
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#ffd230;
  color:#0b2345;
  font-size:0.94rem;
  font-weight:900;
  text-decoration:none;
}

@media (max-width:860px){
  .system-scope-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .system-scope-hero{
    padding:62px 15px 58px;
  }

  .system-scope-content{
    padding:42px 15px 62px;
  }

  .system-scope-main-card{
    padding:22px 18px;
    border-radius:24px;
  }

  .system-scope-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .system-scope-section{
    padding:22px 18px;
    border-radius:22px;
  }

  .system-scope-button{
    width:100%;
  }
}

/* N67_COMO_FUNCIONA_PAGE_V1 */

.how-page{
  background:#f4f7fb;
  color:#0b2345;
}

.how-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.18), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.how-hero__inner{
  width:min(100%, 860px);
  margin:0 auto;
  text-align:center;
}

.how-hero__eyebrow,
.how-videos__eyebrow,
.how-summary__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.how-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.3rem, 7vw, 4.1rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.how-hero p{
  max-width:620px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.how-questions{
  padding:44px 18px 22px;
}

.how-questions__inner{
  width:min(100%, 920px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.how-question-card{
  padding:22px;
  border-radius:24px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 12px 30px rgba(8,34,74,0.07);
}

.how-question-card h2{
  margin:0;
  color:#0b2345;
  font-size:1.08rem;
  line-height:1.15;
  letter-spacing:-0.025em;
}

.how-question-card p{
  margin:10px 0 0;
  color:#4b5567;
  font-size:0.96rem;
  line-height:1.4;
}

.how-steps{
  padding:18px 18px 62px;
}

.how-steps__inner{
  width:min(100%, 920px);
  margin:0 auto;
  display:grid;
  gap:20px;
}

.how-step{
  display:grid;
  grid-template-columns:320px 1fr;
  gap:30px;
  align-items:center;
  padding:28px;
  border-radius:30px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 16px 40px rgba(8,34,74,0.08);
}

.how-step--pickup{
  background:
    radial-gradient(circle at 92% 0%, rgba(255,210,48,0.22), transparent 34%),
    #ffffff;
}

.how-step__media{
  display:flex;
  justify-content:center;
  align-items:center;
}

.how-step__media img{
  width:100%;
  max-width:320px;
  height:auto;
  display:block;
  border-radius:24px;
  object-fit:cover;
}

.how-step__content{
  position:relative;
}

.how-step__number{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  margin-bottom:14px;
  border-radius:15px;
  background:#0b2345;
  color:#ffd230;
  font-size:1rem;
  font-weight:950;
}

.how-step__eyebrow{
  margin:0 0 8px;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.how-step h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.65rem, 4.4vw, 2.45rem);
  line-height:1;
  letter-spacing:-0.055em;
}

.how-step p{
  margin:13px 0 0;
  color:#4b5567;
  font-size:1rem;
  line-height:1.5;
}

.how-step ul{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:9px;
}

.how-step li{
  position:relative;
  padding-left:28px;
  color:#4b5567;
  font-size:0.96rem;
  line-height:1.35;
}

.how-step li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:11px;
  height:11px;
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 0 4px rgba(255,210,48,0.22);
}

.how-videos{
  padding:66px 18px;
  background:#ffffff;
}

.how-videos__inner{
  width:min(100%, 920px);
  margin:0 auto;
}

.how-videos__head{
  max-width:640px;
  margin:0 auto 26px;
  text-align:center;
}

.how-videos__eyebrow{
  background:#fff1ad;
  border-color:rgba(255,210,48,0.55);
  color:#7a4b00;
}

.how-videos__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.85rem, 5.2vw, 3rem);
  line-height:1;
  letter-spacing:-0.06em;
}

.how-videos__head p{
  margin:12px auto 0;
  color:#64748b;
  font-size:0.98rem;
  line-height:1.45;
}

.how-videos__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.how-video-card{
  overflow:hidden;
  border-radius:28px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 14px 34px rgba(8,34,74,0.07);
}

.how-video-card__media{
  position:relative;
  aspect-ratio:9 / 16;
  max-height:520px;
  background:#0b2345;
  overflow:hidden;
}

.how-video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  opacity:0;
  transition:opacity .28s ease;
}

.how-video.is-loaded,
.uso-video.is-loaded{
  opacity:1;
}

.how-video-card__placeholder{
  position:absolute;
  inset:auto 14px 14px;
  display:inline-flex;
  width:max-content;
  max-width:calc(100% - 28px);
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.88);
  color:#0b2345;
  font-size:0.78rem;
  font-weight:900;
  pointer-events:none;
}

.how-video-card__body{
  padding:20px;
}

.how-video-card__body h3{
  margin:0;
  color:#0b2345;
  font-size:1.22rem;
  line-height:1.1;
  letter-spacing:-0.035em;
}

.how-video-card__body p{
  margin:8px 0 0;
  color:#64748b;
  font-size:0.94rem;
  line-height:1.4;
}

.how-summary{
  padding:70px 18px 78px;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.22), transparent 34%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
}

.how-summary__inner{
  width:min(100%, 760px);
  margin:0 auto;
  text-align:center;
}

.how-summary h2{
  margin:0;
  color:#ffffff;
  font-size:clamp(1.9rem, 5.8vw, 3.1rem);
  line-height:1;
  letter-spacing:-0.06em;
}

.how-summary__actions{
  margin-top:26px;
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.how-summary__button{
  min-height:48px;
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffffff;
  font-size:0.94rem;
  font-weight:900;
  text-decoration:none;
}

.how-summary__button--primary{
  background:#ffd230;
  color:#0b2345;
  border-color:#ffd230;
}

@media (max-width:860px){
  .how-questions__inner{
    grid-template-columns:1fr;
  }

  .how-step{
    grid-template-columns:1fr;
    gap:20px;
  }

  .how-step__media img{
    max-width:340px;
  }
}

@media (max-width:720px){
  .how-hero{
    padding:62px 15px 58px;
  }

  .how-questions{
    padding:34px 15px 18px;
  }

  .how-steps{
    padding:16px 15px 52px;
  }

  .how-step{
    padding:22px 18px;
    border-radius:24px;
  }

  .how-step__media img{
    max-width:320px;
    border-radius:22px;
  }

  .how-videos{
    padding:54px 15px;
  }

  .how-videos__grid{
    grid-template-columns:1fr;
  }

  .how-video-card__media{
    max-height:none;
  }

  .how-summary{
    padding:58px 15px 64px;
  }

  .how-summary__actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .how-summary__button{
    width:100%;
  }
}
/* N68_FAQ_PAGE_ESCANEABLE_V1 */

.faq-page{
  background:#f4f7fb;
  color:#0b2345;
}

.faq-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.18), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.faq-hero__inner{
  width:min(100%, 860px);
  margin:0 auto;
  text-align:center;
}

.faq-hero__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.faq-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.3rem, 7vw, 4.2rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.faq-hero p{
  max-width:620px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.faq-fast{
  padding:44px 18px 24px;
}

.faq-fast__inner{
  width:min(100%, 980px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}

.faq-fast-card{
  padding:20px;
  border-radius:24px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 12px 30px rgba(8,34,74,0.07);
}

.faq-fast-card h2{
  margin:0;
  color:#0b2345;
  font-size:1rem;
  line-height:1.15;
  letter-spacing:-0.025em;
}

.faq-fast-card p{
  margin:10px 0 0;
  color:#4b5567;
  font-size:0.94rem;
  line-height:1.35;
}

.faq-content{
  padding:18px 18px 78px;
}

.faq-content__inner{
  width:min(100%, 920px);
  margin:0 auto;
  display:grid;
  gap:18px;
}

.faq-block{
  padding:24px;
  border-radius:28px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 14px 36px rgba(8,34,74,0.07);
}

.faq-block--highlight{
  background:
    radial-gradient(circle at 92% 0%, rgba(255,210,48,0.24), transparent 34%),
    #ffffff;
  border-color:rgba(255,210,48,0.44);
}

.faq-block__head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:16px;
}

.faq-block__head span{
  width:38px;
  height:38px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#0b2345;
  color:#ffd230;
  font-size:0.82rem;
  font-weight:950;
}

.faq-block__head h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.35rem, 4vw, 2rem);
  line-height:1.05;
  letter-spacing:-0.045em;
}

.faq-list{
  display:grid;
  gap:10px;
}

.faq-item{
  border-radius:18px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,0.07);
  overflow:hidden;
}

.faq-item[open]{
  background:#fff8d8;
  border-color:rgba(255,210,48,0.50);
}

.faq-item summary{
  position:relative;
  min-height:54px;
  padding:16px 46px 16px 18px;
  display:flex;
  align-items:center;
  color:#0b2345;
  font-size:0.98rem;
  line-height:1.25;
  font-weight:900;
  cursor:pointer;
  list-style:none;
}

.faq-item summary::-webkit-details-marker{
  display:none;
}

.faq-item summary::after{
  content:"+";
  position:absolute;
  right:17px;
  top:50%;
  transform:translateY(-50%);
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#ffffff;
  color:#0b2345;
  font-size:1rem;
  font-weight:950;
  box-shadow:0 6px 14px rgba(8,34,74,0.08);
}

.faq-item[open] summary::after{
  content:"–";
  background:#0b2345;
  color:#ffd230;
}

.faq-item p{
  margin:0;
  padding:0 18px 17px;
  color:#4b5567;
  font-size:0.96rem;
  line-height:1.45;
}

.faq-item a{
  color:#0b5fc7;
  font-weight:900;
  text-decoration:none;
}

.faq-item a:hover{
  text-decoration:underline;
}

@media (max-width:900px){
  .faq-fast__inner{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .faq-hero{
    padding:62px 15px 58px;
  }

  .faq-fast{
    padding:34px 15px 18px;
  }

  .faq-fast__inner{
    grid-template-columns:1fr;
    gap:12px;
  }

  .faq-content{
    padding:16px 15px 62px;
  }

  .faq-block{
    padding:20px 16px;
    border-radius:24px;
  }

  .faq-block__head{
    align-items:flex-start;
  }

  .faq-block__head span{
    width:34px;
    height:34px;
    border-radius:12px;
  }

  .faq-item summary{
    min-height:52px;
    padding:15px 44px 15px 16px;
    font-size:0.95rem;
  }

  .faq-item p{
    padding:0 16px 16px;
    font-size:0.94rem;
  }
}



/* N68_TERMINOS_CONDICIONES_PAGE_V1 */

.terms-page{
  background:#f4f7fb;
  color:#0b2345;
}

.terms-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.18), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.terms-hero__inner{
  width:min(100%, 880px);
  margin:0 auto;
  text-align:center;
}

.terms-hero__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.terms-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.25rem, 7vw, 4.1rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.terms-hero p{
  max-width:660px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.terms-document{
  padding:54px 18px 76px;
}

.terms-document__inner{
  width:min(100%, 920px);
  margin:0 auto;
}

.terms-notice{
  padding:22px;
  border-radius:24px;
  background:#fff6cf;
  border:1px solid rgba(255,210,48,0.70);
  box-shadow:0 14px 34px rgba(8,34,74,0.08);
}

.terms-notice strong{
  display:block;
  color:#0b2345;
  font-size:1.05rem;
  line-height:1.2;
}

.terms-notice p{
  margin:8px 0 0;
  color:#4b5567;
  font-size:0.96rem;
  line-height:1.45;
}

.terms-index{
  margin:18px 0 26px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

.terms-index article{
  padding:16px;
  border-radius:20px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 10px 28px rgba(8,34,74,0.06);
}

.terms-index span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  margin-bottom:10px;
  border-radius:12px;
  background:#0b2345;
  color:#ffd230;
  font-size:0.76rem;
  font-weight:900;
}

.terms-index strong{
  display:block;
  color:#0b2345;
  font-size:0.92rem;
  line-height:1.25;
}

.terms-sections{
  display:grid;
  gap:18px;
}

.terms-section{
  padding:26px;
  border-radius:26px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 14px 36px rgba(8,34,74,0.07);
}

.terms-section__number{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 11px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.68rem;
  font-weight:900;
}

.terms-section h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.35rem, 4vw, 2rem);
  line-height:1.05;
  letter-spacing:-0.04em;
}

.terms-section p{
  margin:12px 0 0;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.55;
}

.terms-section ul{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.terms-section li{
  position:relative;
  padding-left:28px;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.45;
}

.terms-section li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:11px;
  height:11px;
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 0 4px rgba(255,210,48,0.22);
}

.terms-section--time{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.22), transparent 30%),
    #ffffff;
  border-color:rgba(255,210,48,0.42);
}

.terms-time-grid{
  margin:18px 0 4px;
  display:grid;
  gap:10px;
}

.terms-time-grid div{
  padding:15px 16px;
  border-radius:18px;
  background:#f4f7fb;
  border:1px solid rgba(15,43,80,0.08);
}

.terms-time-grid strong{
  display:block;
  color:#0b2345;
  font-size:0.98rem;
  line-height:1.2;
}

.terms-time-grid span{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:0.9rem;
  line-height:1.35;
}

.terms-section--acceptance{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.24), transparent 30%),
    linear-gradient(135deg, #0b2345 0%, #123d7a 100%);
  color:#ffffff;
  border-color:rgba(255,255,255,0.12);
}

.terms-section--acceptance .terms-section__number{
  background:rgba(255,255,255,0.10);
  color:#ffd230;
  border:1px solid rgba(255,255,255,0.14);
}

.terms-section--acceptance h2{
  color:#ffffff;
}

.terms-section--acceptance p{
  color:rgba(255,255,255,0.78);
}

.terms-button{
  margin-top:20px;
  min-height:48px;
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#ffd230;
  color:#0b2345;
  font-size:0.94rem;
  font-weight:900;
  text-decoration:none;
}

@media (max-width:860px){
  .terms-index{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .terms-hero{
    padding:62px 15px 58px;
  }

  .terms-document{
    padding:38px 15px 62px;
  }

  .terms-index{
    grid-template-columns:1fr;
  }

  .terms-section{
    padding:22px 18px;
    border-radius:22px;
  }

  .terms-notice{
    padding:19px;
    border-radius:22px;
  }

  .terms-time-grid div{
    padding:14px;
  }

  .terms-button{
    width:100%;
  }
}

/* N69_POLITICA_DATOS_PAGE_V1 */

.data-policy-page{
  background:#f4f7fb;
  color:#0b2345;
}

.data-policy-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(255,210,48,0.18), transparent 32%),
    linear-gradient(180deg, #0b2345 0%, #07172f 100%);
  color:#ffffff;
  padding:76px 18px 72px;
}

.data-policy-hero__inner{
  width:min(100%, 880px);
  margin:0 auto;
  text-align:center;
}

.data-policy-hero__eyebrow{
  display:inline-flex;
  margin:0 0 18px;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.16);
  color:#ffd230;
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.data-policy-hero h1{
  margin:0;
  color:#ffffff;
  font-size:clamp(2.25rem, 7vw, 4.1rem);
  line-height:0.96;
  letter-spacing:-0.06em;
}

.data-policy-hero p{
  max-width:660px;
  margin:18px auto 0;
  color:rgba(255,255,255,0.78);
  font-size:1.05rem;
  line-height:1.5;
}

.data-policy-content{
  padding:54px 18px 76px;
}

.data-policy-content__inner{
  width:min(100%, 920px);
  margin:0 auto;
}

.data-policy-notice{
  padding:22px;
  border-radius:24px;
  background:#fff6cf;
  border:1px solid rgba(255,210,48,0.70);
  box-shadow:0 14px 34px rgba(8,34,74,0.08);
}

.data-policy-notice strong{
  display:block;
  color:#0b2345;
  font-size:1.05rem;
  line-height:1.2;
}

.data-policy-notice p{
  margin:8px 0 0;
  color:#4b5567;
  font-size:0.96rem;
  line-height:1.45;
}

.data-policy-summary{
  margin:18px 0 26px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

.data-policy-summary article{
  padding:16px;
  border-radius:20px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.08);
  box-shadow:0 10px 28px rgba(8,34,74,0.06);
}

.data-policy-summary span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  margin-bottom:10px;
  border-radius:12px;
  background:#0b2345;
  color:#ffd230;
  font-size:0.76rem;
  font-weight:900;
}

.data-policy-summary strong{
  display:block;
  color:#0b2345;
  font-size:0.92rem;
  line-height:1.25;
}

.data-policy-sections{
  display:grid;
  gap:18px;
}

.data-policy-section{
  padding:26px;
  border-radius:26px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 14px 36px rgba(8,34,74,0.07);
}

.data-policy-section__number{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 11px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.68rem;
  font-weight:900;
}

.data-policy-section h2{
  margin:0;
  color:#0b2345;
  font-size:clamp(1.35rem, 4vw, 2rem);
  line-height:1.05;
  letter-spacing:-0.04em;
}

.data-policy-section p{
  margin:12px 0 0;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.55;
}

.data-policy-section ul{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.data-policy-section li{
  position:relative;
  padding-left:28px;
  color:#4b5567;
  font-size:0.98rem;
  line-height:1.45;
}

.data-policy-section li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:11px;
  height:11px;
  border-radius:999px;
  background:#ffd230;
  box-shadow:0 0 0 4px rgba(255,210,48,0.22);
}

.data-policy-section--yellow{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.22), transparent 30%),
    #ffffff;
  border-color:rgba(255,210,48,0.42);
}

.data-policy-section--yellow .data-policy-section__number{
  background:#fff1ad;
  color:#7a4b00;
}

.data-policy-inline-link{
  margin-top:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:12px 18px;
  border-radius:999px;
  background:#0b2345;
  color:#ffffff;
  font-size:0.9rem;
  font-weight:900;
  text-decoration:none;
}

.data-policy-section--acceptance{
  background:
    radial-gradient(circle at 90% 0%, rgba(255,210,48,0.24), transparent 30%),
    linear-gradient(135deg, #0b2345 0%, #123d7a 100%);
  color:#ffffff;
  border-color:rgba(255,255,255,0.12);
}

.data-policy-section--acceptance .data-policy-section__number{
  background:rgba(255,255,255,0.10);
  color:#ffd230;
  border:1px solid rgba(255,255,255,0.14);
}

.data-policy-section--acceptance h2{
  color:#ffffff;
}

.data-policy-section--acceptance p{
  color:rgba(255,255,255,0.78);
}

.data-policy-button{
  margin-top:20px;
  min-height:48px;
  padding:13px 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#ffd230;
  color:#0b2345;
  font-size:0.94rem;
  font-weight:900;
  text-decoration:none;
}

@media (max-width:860px){
  .data-policy-summary{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .data-policy-hero{
    padding:62px 15px 58px;
  }

  .data-policy-content{
    padding:38px 15px 62px;
  }

  .data-policy-summary{
    grid-template-columns:1fr;
  }

  .data-policy-section{
    padding:22px 18px;
    border-radius:22px;
  }

  .data-policy-notice{
    padding:19px;
    border-radius:22px;
  }

  .data-policy-button,
  .data-policy-inline-link{
    width:100%;
  }
}
/* N70_HEADER_LOGO_SUBNAV_MULTISITE_V1 */

/* N70_HEADER_LOGO_SUBNAV_MULTISITE_V1 */

.site-header{
  position:relative;
  width:100%;
  z-index:1000;
  background:rgba(255,255,255,0.96);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(216,222,234,0.75);
}


.header-shell{
  width:min(100%, var(--max-width));
  min-height:76px;
  margin:0 auto;
  padding:10px 18px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:center;
  position:relative;
}

.brand-logo{
  display:inline-flex;
  align-items:center;
  justify-self:start;
  width:auto;
  max-width:max-content;
}

.brand-logo img{
  width:165px;
  height:auto;
  display:block;
}

/* Oculta definitivamente los botones antiguos si quedaron en alguna página */
.top-actions{
  display:none !important;
}

/* Menú principal: conserva la lógica actual */
.menu-toggle{
  justify-self:end;
  min-height:42px;
  padding:8px 13px;
  background:var(--color-blue-950);
  color:var(--color-white);
  border:0;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:900;
  cursor:pointer;
}

.main-menu{
  position:absolute;
  top:calc(100% + 8px);
  right:18px;
  left:auto;
  width:min(420px, calc(100vw - 36px));
  padding:12px;
  display:grid;
  gap:8px;
  background:var(--color-white);
  border:1px solid var(--color-gray-300);
  border-radius:20px;
  box-shadow:var(--shadow-soft);
}

.main-menu a{
  padding:13px 14px;
  border-radius:14px;
  color:var(--color-blue-950);
  font-weight:800;
  background:var(--color-gray-100);
}

/* Barra auxiliar limpia */
.header-subnav{
  min-height:42px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:0;
  background:#f4f7fb;
  border-top:1px solid rgba(216,222,234,0.75);
}

.header-subnav a{
  min-height:42px;
  padding:0 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--color-blue-950);
  font-size:0.88rem;
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
}

.header-subnav a + a{
  border-left:1px solid rgba(15,43,80,0.14);
}

.header-subnav a:hover,
.header-subnav a:focus-visible{
  background:#e8f1ff;
  color:var(--color-blue-900);
}

@media (max-width:720px){
  .header-shell{
    min-height:68px;
    padding:8px 14px;
  }

  .brand-logo img{
    width:128px;
  }

  .header-subnav{
    min-height:40px;
  }

  .header-subnav a{
    flex:1;
    min-height:40px;
    padding:0 10px;
    font-size:0.84rem;
  }

  .main-menu{
    top:calc(100% + 8px);
    left:14px;
    right:14px;
    width:auto;
    max-height:calc(100vh - 130px);
    overflow-y:auto;
  }
}

@media (max-width:420px){
  .brand-logo img{
    width:118px;
  }

  .menu-label{
    display:none;
  }
}

/* N71_HERO_ACTIONS_COMPACT_MOBILE */

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

.hero-actions .button{
  width:auto;
  min-width:auto;
  max-width:max-content;
  white-space:nowrap;
}

@media (max-width:720px){
  .hero-actions{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }

  .hero-actions .button{
    width:auto;
    min-width:220px;
    max-width:260px;
    padding-inline:22px;
  }
}
/* N72_HERO_IMAGE_1_1_CONTROLADA */

.hero-media{
  width:100%;
  max-width:420px;
  margin:0 auto;
}

.hero-media img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  object-position:center;
}

@media (max-width:720px){
  .hero-media{
    max-width:340px;
  }
}

/* N73_HERO_IMAGE_SQUARE_FORCE_V1 */

.hero-media--square{
  width:100%;
  max-width:420px;
  justify-self:center;
  align-self:center;
  padding:12px;
  border-radius:28px;
}

.hero-media--square .hero-image-square{
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  display:block;
  object-fit:cover;
  object-position:center;
  border-radius:22px;
}

@media (max-width:720px){
  .hero-media--square{
    max-width:330px;
    margin:0 auto;
  }

  .hero-media--square .hero-image-square{
    aspect-ratio:1 / 1;
  }
}
/* N74_HERO_ACTIONS_MOBILE_AFTER_IMAGE_COMPACT */

@media (max-width:720px){
  .hero-section .hero-actions{
    order:3;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    width:80%;
  }

  .hero-section .hero-actions .button{
    width:auto;
    min-width:170px;
    max-width:190px;
    padding:10px 20px;
    white-space:nowrap;
  }
}

.delivery-wow-note strong{
  display:block;
  margin-bottom:4px;
}

.delivery-wow-note span{
  display:block;
}

/* N79_THANKYOU_PAGE_DIRECT_V1 */

.thanks-page{
  background:#f4f7fb;
  color:#0b2345;
}

.thanks-main{
  min-height:calc(100vh - 220px);
  display:grid;
  place-items:center;
  padding:54px 18px 70px;
}

.thanks-card{
  width:min(100%, 620px);
  padding:34px 26px 28px;
  text-align:center;
  border-radius:30px;
  background:#ffffff;
  border:1px solid rgba(15,43,80,0.09);
  box-shadow:0 18px 48px rgba(8,34,74,0.10);
}

.thanks-icon{
  width:58px;
  height:58px;
  margin:0 auto 18px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:#ffd230;
  color:#0b2345;
  font-size:1.6rem;
  font-weight:950;
  box-shadow:0 14px 30px rgba(255,210,48,0.24);
}

.thanks-eyebrow{
  display:inline-flex;
  margin:0 0 14px;
  padding:7px 13px;
  border-radius:999px;
  background:#e8f1ff;
  color:#0b5fc7;
  border:1px solid rgba(11,95,199,0.14);
  text-transform:uppercase;
  letter-spacing:0.1em;
  font-size:0.72rem;
  font-weight:900;
}

.thanks-card h1{
  margin:0;
  color:#0b2345;
  font-size:clamp(2rem, 7vw, 3.35rem);
  line-height:1;
  letter-spacing:-0.055em;
}

.thanks-copy{
  max-width:460px;
  margin:16px auto 0;
  color:#4b5567;
  font-size:1rem;
  line-height:1.5;
}

.thanks-notice{
  margin:24px auto 0;
  padding:16px 18px;
  text-align:left;
  border-radius:20px;
  background:#fff6cf;
  border:1px solid rgba(255,210,48,0.68);
}

.thanks-notice strong{
  display:block;
  margin-bottom:4px;
  color:#0b2345;
  font-size:0.96rem;
  line-height:1.2;
}

.thanks-notice span{
  display:block;
  color:#4b5567;
  font-size:0.94rem;
  line-height:1.4;
}

.thanks-actions{
  margin-top:26px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
}

.thanks-button,
.thanks-back{
  min-height:46px;
  padding:12px 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#0b2345;
  color:#ffffff;
  font-size:0.92rem;
  font-weight:900;
  text-decoration:none;
}

.thanks-button--primary{
  background:#ffd230;
  color:#0b2345;
  box-shadow:0 14px 30px rgba(255,210,48,0.20);
}

.thanks-back{
  min-height:40px;
  padding:9px 15px;
  font-size:0.84rem;
}

@media (max-width:720px){
  .thanks-main{
    padding:36px 15px 56px;
  }

  .thanks-card{
    padding:28px 20px 22px;
    border-radius:26px;
  }

  .thanks-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .thanks-button{
    width:100%;
  }
}


/* DEMO_RESIDENCIAL_V1
   Identidad visual mínima para dejar claro que este minisitio es una demostración.
   No altera los estilos funcionales existentes.
*/
.demo-brand{
  display:inline-flex;
  align-items:center;
  min-height:48px;
}

.demo-brand__name{
  display:inline-flex;
  align-items:center;
  color:var(--color-blue-950);
  font-size:1rem;
  line-height:1.1;
  font-weight:900;
  letter-spacing:-0.025em;
}

.demo-status{
  position:fixed;
  right:14px;
  bottom:14px;
  z-index:2000;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(8,34,74,.82);
  border:1px solid rgba(255,255,255,.32);
  color:#fff;
  box-shadow:0 8px 22px rgba(8,34,74,.18);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  pointer-events:none;
  opacity:.82;
}

@media (max-width:720px){
  .demo-brand__name{
    font-size:.92rem;
  }

  .demo-status{
    right:10px;
    bottom:10px;
    padding:5px 9px;
    font-size:.64rem;
  }
}
/* DEMO_VIDEO_CARDS_FIX_V1
   Evita franjas laterales en los videos verticales
*/

.uso-video-card__media,
.how-video-card__media{
  width:100%;
  max-height:none;
  aspect-ratio:9 / 16;
}

.uso-video,
.how-video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}