:root {
  --ink: #062b3a;
  --ink2: #0b3c4a;
  --red: #ff4132;
  --red2: #c92e24;
  --sand: #f1f3f4;
  --cream: #ffffff;
  --line: #d4d9dc;
  --white: #fff;
  --max: 1180px;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 84px;
}
body {
  margin: 0;
  color: var(--ink);
  background: var(--cream);
  font:
    400 16px/1.6 Arial,
    Helvetica,
    sans-serif;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
}
a {
  color: inherit;
  text-decoration: none;
}
h1,
h2,
h3,
p {
  margin: 0;
}
h1,
h2,
h3 {
  font-family: Arial, Helvetica, sans-serif;
  letter-spacing: -0.035em;
  line-height: 1.05;
}
.site-container {
  width: min(var(--max), calc(100% - 40px));
  margin-inline: auto;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.skip-link {
  position: fixed;
  top: -50px;
  left: 12px;
  z-index: 100;
  padding: 10px 16px;
  background: #fff;
  color: var(--ink);
  font-weight: 700;
}
.skip-link:focus {
  top: 12px;
}
.utility-bar {
  background: var(--ink);
  color: #f2f2f2;
  font-size: 0.77rem;
}
.utility-bar__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 34px;
}
.utility-bar a {
  color: #fff;
  font-weight: 700;
}
.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
}
.navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 76px;
}
.brand {
  width: 176px;
}
.brand img {
  width: 100%;
}
.main-nav {
  display: flex;
  align-items: center;
  gap: 24px;
  font-size: 0.87rem;
  font-weight: 700;
}
.main-nav > a:not(.button) {
  color: #34383a;
}
.main-nav > a:not(.button):hover {
  color: var(--red);
}
.nav-toggle {
  display: none;
  padding: 9px 3px;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.nav-toggle span:not(.sr-only) {
  display: block;
  width: 25px;
  height: 2px;
  margin: 5px;
  background: var(--ink);
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 47px;
  padding: 12px 20px;
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
  font-size: 0.87rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  transition: 0.2s;
}
.button:hover {
  border-color: var(--red2);
  background: var(--red2);
  transform: translateY(-2px);
}
.button--small {
  min-height: 39px;
  padding: 8px 13px;
}
.button--ghost {
  border-color: rgba(255, 255, 255, 0.75);
  background: transparent;
}
.button--ghost:hover {
  border-color: #fff;
  background: #fff;
  color: var(--ink);
}
.button--outline-light {
  border-color: #acbfc7;
  background: transparent;
}
.button--outline-light:hover {
  border-color: #fff;
  background: #fff;
  color: var(--ink);
}
.button--full {
  width: 100%;
  margin-top: 23px;
}
.hero {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 650px;
  overflow: hidden;
  background: var(--ink);
  color: #fff;
}
.hero__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(0, 0, 0, 0.94),
    rgba(0, 0, 0, 0.73) 48%,
    rgba(0, 0, 0, 0.28)
  );
}
.hero__content {
  position: relative;
  z-index: 1;
  padding: 96px 0 73px;
}
.eyebrow {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  color: var(--red);
  font-size: 0.73rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.eyebrow span {
  display: inline-block;
  width: 23px;
  height: 2px;
  background: currentColor;
}
.eyebrow--light {
  color: #f2f2f2;
}
.hero h1 {
  max-width: 770px;
  font-size: clamp(2.55rem, 5.9vw, 5.25rem);
  font-weight: 800;
}
.hero h1 em {
  color: #ffcb00;
  font-style: normal;
}
.hero__lead {
  max-width: 595px;
  margin-top: 26px;
  color: #f5f5f5;
  font-size: clamp(1rem, 2vw, 1.22rem);
}
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}
.hero__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 42px;
  margin: 76px 0 0;
  padding: 17px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.35);
  list-style: none;
  color: #d9dde0;
  font-size: 0.84rem;
}
.hero__facts li {
  display: flex;
  flex-direction: column;
}
.hero__facts strong {
  color: #fff;
  font-size: 1.16rem;
}
.trust-strip {
  background: var(--red);
  color: #fff;
}
.trust-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 83px;
}
.trust-strip p {
  font-size: 0.79rem;
  line-height: 1.25;
}
.trust-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 7px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 50%;
}
.section {
  padding: 112px 0;
}
.intro-section,
.process-section {
  background: var(--cream);
}
.intro-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 70px;
  align-items: end;
}
.intro-grid h2,
.section-heading h2,
.sectors-content h2,
.coverage-copy h2,
.quote-copy h2 {
  max-width: 690px;
  font-size: clamp(2.1rem, 4vw, 3.8rem);
}
.intro-copy {
  padding-left: 28px;
  border-left: 1px solid #acbfc7;
  color: #4c5559;
}
.intro-copy p {
  max-width: 470px;
}
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  color: var(--red);
  font-size: 0.88rem;
  font-weight: 800;
}
.benefit-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 67px;
}
.benefit-card {
  min-height: 248px;
  padding: 25px 23px;
  border: 1px solid var(--line);
  background: #fff;
  transition: 0.2s;
}
.benefit-card:hover {
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
}
.card-number {
  color: var(--red);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.11em;
}
.benefit-card h3 {
  margin-top: 47px;
  font-size: 1.28rem;
}
.benefit-card p {
  margin-top: 12px;
  color: #626a6d;
  font-size: 0.87rem;
  line-height: 1.55;
}
.services-section {
  background: var(--ink);
  color: #fff;
}
.section-heading--split {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 50px;
}
.section-heading--split > p {
  max-width: 375px;
  color: #c3c9cc;
}
.service-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 56px;
  border-top: 1px solid rgba(255, 255, 255, 0.23);
  border-left: 1px solid rgba(255, 255, 255, 0.23);
}
.service-card {
  min-height: 275px;
  padding: 29px 24px;
  border-right: 1px solid rgba(255, 255, 255, 0.23);
  border-bottom: 1px solid rgba(255, 255, 255, 0.23);
  color: #f1f3f4;
  transition: 0.2s;
}
.service-card:hover {
  background: var(--ink2);
}
.service-card > span {
  color: #ffcb00;
  font-size: 1.65rem;
}
.service-card h3 {
  margin-top: 41px;
  color: #fff;
  font-size: 1.32rem;
}
.service-card p {
  min-height: 64px;
  margin-top: 13px;
  font-size: 0.85rem;
  line-height: 1.55;
}
.service-card b {
  color: #ffcb00;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
}
.sectors-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 9%;
}
.sector-image {
  display: flex;
  align-items: center;
  min-height: 470px;
  overflow: hidden;
  background: var(--sand);
}
.sector-image img {
  width: 100%;
  height: 470px;
  object-fit: cover;
}
.sectors-content > p:not(.eyebrow) {
  max-width: 540px;
  margin-top: 22px;
  color: #5c6569;
}
.sector-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin: 35px 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--line);
}
.sector-list li {
  padding: 12px 8px 12px 0;
  border-bottom: 1px solid var(--line);
  font-size: 0.87rem;
  font-weight: 700;
}
.sector-list li:before {
  margin-right: 9px;
  color: var(--red);
  content: '↗';
}
.coverage-section {
  overflow: hidden;
  background: #0b3c4a;
  color: #fff;
}
.coverage-grid {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  align-items: center;
  gap: 8%;
}
.coverage-copy > p:not(.eyebrow) {
  max-width: 520px;
  margin: 21px 0 30px;
  color: #d7dadd;
}
.coverage-map {
  position: relative;
  min-height: 450px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: linear-gradient(
    140deg,
    rgba(255, 255, 255, 0.06),
    rgba(255, 255, 255, 0.01)
  );
}
.coverage-map:before {
  position: absolute;
  inset: 38px 21% 38px 34%;
  opacity: 0.16;
  background: #acbfc7;
  content: '';
  clip-path: polygon(
    39% 0,
    57% 7%,
    53% 19%,
    67% 29%,
    57% 39%,
    73% 53%,
    62% 67%,
    72% 81%,
    50% 100%,
    41% 81%,
    25% 70%,
    32% 56%,
    13% 44%,
    29% 33%,
    20% 17%
  );
}
.coverage-map__line {
  position: absolute;
  top: 65px;
  bottom: 61px;
  left: 50%;
  border-left: 1px dashed rgba(255, 255, 255, 0.7);
  transform: rotate(8deg);
}
.map-point {
  position: absolute;
  left: 52%;
  padding: 7px 10px 7px 15px;
  border-left: 2px solid #ffcb00;
  background: rgba(0, 0, 0, 0.8);
  font-size: 0.72rem;
  line-height: 1.25;
}
.map-point b,
.map-point span {
  display: block;
}
.map-point span {
  color: #acbfc7;
  font-size: 0.66rem;
}
.map-point--north {
  top: 64px;
}
.map-point--mid {
  top: 160px;
  left: 46%;
}
.map-point--center {
  top: 255px;
  left: 56%;
}
.map-point--south {
  bottom: 69px;
  left: 47%;
}
.map-label {
  position: absolute;
  right: 8%;
  bottom: 40px;
  color: rgba(255, 255, 255, 0.4);
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: -0.06em;
  text-align: right;
}
.section-heading--center {
  text-align: center;
}
.section-heading--center .eyebrow {
  justify-content: center;
}
.section-heading--center h2 {
  margin-inline: auto;
}
.process-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin: 66px 0 0;
  padding: 0;
  list-style: none;
}
.process-list li {
  position: relative;
  padding: 0 18px 0 0;
}
.process-list li:not(:last-child):after {
  position: absolute;
  top: 17px;
  right: 0;
  left: 55px;
  border-top: 1px solid #acbfc7;
  content: '';
}
.process-list span {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: var(--red);
  color: #fff;
  font-size: 0.68rem;
  font-weight: 800;
}
.process-list h3 {
  margin-top: 31px;
  font-size: 1.2rem;
}
.process-list p {
  max-width: 210px;
  margin-top: 10px;
  color: #626a6d;
  font-size: 0.84rem;
}
.quote-section {
  padding: 105px 0;
  background: linear-gradient(110deg, #031d29 0%, #062b3a 54%, #9c251d 100%);
  color: #fff;
}
.quote-grid {
  display: grid;
  grid-template-columns: 0.88fr 1.12fr;
  gap: 9%;
  align-items: start;
}
.quote-copy > p:not(.eyebrow) {
  max-width: 490px;
  margin-top: 22px;
  color: #e8e8e8;
}
.quote-phone {
  display: inline-flex;
  gap: 10px;
  margin-top: 37px;
  color: #ffcb00;
  font-size: 1.2rem;
  font-weight: 800;
}
.quote-form {
  padding: 27px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 15px 38px rgba(0, 0, 0, 0.14);
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.form-grid__full {
  grid-column: 1/-1;
}
.quote-form label {
  display: grid;
  gap: 7px;
  color: #34383a;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}
.quote-form input,
.quote-form textarea {
  width: 100%;
  padding: 12px;
  border: 1px solid #c9ced1;
  border-radius: 0;
  background: #fff;
  color: var(--ink);
  font:
    400 0.9rem Arial,
    sans-serif;
}
.quote-form textarea {
  min-height: 100px;
  resize: vertical;
}
.quote-form input:focus,
.quote-form textarea:focus {
  outline: 2px solid #ffcb00;
  border-color: #ffcb00;
}
.form-notice {
  margin-top: 14px;
  color: #687176;
  font-size: 0.68rem;
}
.form-notice a {
  color: var(--red);
  text-decoration: underline;
}
.site-footer {
  padding: 61px 0 0;
  background: #031d29;
  color: #e8e8e8;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.65fr 1fr 1.25fr 1fr;
  gap: 35px;
}
.footer-logo {
  width: 182px;
}
.footer-grid p {
  max-width: 320px;
  margin-top: 12px;
  color: #acbfc7;
  font-size: 0.78rem;
  line-height: 1.6;
}
.footer-grid h2 {
  color: #fff;
  font-size: 0.98rem;
  letter-spacing: 0;
}
.footer-grid a {
  display: block;
  margin-top: 11px;
  color: #e4e6e7;
  font-size: 0.8rem;
}
.footer-grid a:hover {
  color: #ffcb00;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 55px;
  padding: 17px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  color: #acbfc7;
  font-size: 0.68rem;
}
.footer-bottom a {
  color: #e4e6e7;
}
@media (max-width: 900px) {
  .main-nav {
    gap: 14px;
  }
  .main-nav > a:not(.button) {
    font-size: 0.78rem;
  }
  .benefit-grid,
  .service-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .intro-grid,
  .coverage-grid,
  .quote-grid {
    gap: 40px;
  }
  .footer-grid {
    grid-template-columns: 1.3fr 1fr 1fr;
  }
  .footer-grid > :last-child {
    grid-column: 2;
  }
}
@media (max-width: 700px) {
  html {
    scroll-padding-top: 67px;
  }
  .site-container {
    width: min(var(--max), calc(100% - 32px));
  }
  .utility-bar__content p {
    display: none;
  }
  .utility-bar__content {
    justify-content: center;
  }
  .navigation {
    min-height: 65px;
  }
  .brand {
    width: 145px;
  }
  .nav-toggle {
    display: block;
  }
  .main-nav {
    position: absolute;
    top: 99px;
    right: 0;
    left: 0;
    display: none;
    padding: 17px 16px 22px;
    background: #fff;
    box-shadow: 0 10px 18px rgba(0, 0, 0, 0.13);
  }
  .main-nav.is-open {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .main-nav a {
    padding: 7px 0;
  }
  .main-nav .button {
    margin-top: 8px;
  }
  .hero {
    min-height: 594px;
  }
  .hero__image {
    object-position: 56% center;
  }
  .hero__overlay {
    background: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0.95),
      rgba(0, 0, 0, 0.68)
    );
  }
  .hero__content {
    padding: 68px 0 44px;
  }
  .hero h1 {
    font-size: clamp(2.45rem, 12vw, 3.45rem);
  }
  .hero__lead {
    font-size: 1rem;
  }
  .hero__facts {
    gap: 15px 26px;
    margin-top: 48px;
  }
  .trust-strip__grid {
    grid-template-columns: 1fr 1fr;
    padding: 16px 0;
  }
  .trust-strip p {
    font-size: 0.72rem;
  }
  .section {
    padding: 75px 0;
  }
  .intro-grid,
  .sectors-grid,
  .coverage-grid,
  .quote-grid {
    grid-template-columns: 1fr;
  }
  .intro-grid {
    gap: 24px;
  }
  .intro-copy {
    padding-left: 17px;
  }
  .benefit-grid {
    grid-template-columns: 1fr;
    margin-top: 43px;
  }
  .benefit-card {
    min-height: 0;
  }
  .benefit-card h3 {
    margin-top: 29px;
  }
  .section-heading--split {
    display: block;
  }
  .section-heading--split > p {
    margin-top: 20px;
  }
  .service-grid {
    grid-template-columns: 1fr;
    margin-top: 38px;
  }
  .service-card {
    min-height: 0;
  }
  .service-card h3 {
    margin-top: 24px;
  }
  .service-card p {
    min-height: 0;
  }
  .sectors-grid {
    gap: 42px;
  }
  .sector-image,
  .sector-image img {
    min-height: 0;
    height: 300px;
  }
  .sector-list {
    grid-template-columns: 1fr;
  }
  .coverage-map {
    min-height: 380px;
  }
  .process-list {
    grid-template-columns: 1fr 1fr;
    gap: 32px 20px;
    margin-top: 44px;
  }
  .process-list li:not(:last-child):after {
    display: none;
  }
  .quote-section {
    padding: 75px 0;
  }
  .quote-grid {
    gap: 38px;
  }
  .quote-form {
    padding: 20px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .form-grid__full {
    grid-column: auto;
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 32px 20px;
  }
  .footer-grid > :last-child {
    grid-column: auto;
  }
  .footer-grid > :first-child {
    grid-column: 1/-1;
  }
  .footer-bottom {
    flex-direction: column;
    margin-top: 35px;
  }
  .map-label {
    right: 5%;
  }
}
@media (max-width: 390px) {
  .hero__facts {
    gap: 14px;
    font-size: 0.72rem;
  }
  .hero__facts strong {
    font-size: 1rem;
  }
  .trust-strip__grid,
  .process-list,
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .footer-grid > :first-child {
    grid-column: auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *:before,
  *:after {
    transition-duration: 0.01ms !important;
  }
}
.pemex-products {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 56px;
}
.product-card {
  overflow: hidden;
  background: #fff;
  color: #182f3a;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.16);
}
.product-card__brand {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 128px;
  padding: 30px;
  background: #fff;
  border-bottom: 1px solid #e0e4e6;
}
.product-card__brand img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 55px;
  object-fit: contain;
}
.product-card__body {
  padding: 25px 25px 28px;
  border-top: 5px solid #333;
}
.product-card--diesel .product-card__body {
  border-color: #262626;
}
.product-card--magna .product-card__body {
  border-color: #008c45;
}
.product-card--premium .product-card__body {
  border-color: #d7282f;
}
.product-card__label {
  color: #687176;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.product-card h3 {
  margin-top: 13px;
  font-size: 1.45rem;
}
.product-card__body > p:not(.product-card__label) {
  min-height: 50px;
  margin-top: 12px;
  color: #5c6569;
  font-size: 0.87rem;
  line-height: 1.55;
}
.product-card__body a {
  display: inline-flex;
  gap: 8px;
  margin-top: 20px;
  color: #062b3a;
  font-size: 0.78rem;
  font-weight: 800;
}
.product-card--diesel a {
  color: #262626;
}
.product-card--magna a {
  color: #008c45;
}
.product-card--premium a {
  color: #d7282f;
}
.pemex-assurance {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 25px;
  padding: 19px 22px;
  border: 1px solid rgba(255, 255, 255, 0.24);
  color: #d7dadd;
}
.pemex-assurance img {
  width: auto;
  max-width: 168px;
  max-height: 50px;
  object-fit: contain;
}
.pemex-assurance p {
  flex: 0 1 auto;
  margin: 0;
  font-size: 0.77rem;
  line-height: 1.4;
}
.text-link--light {
  margin: 0;
  color: #fff;
  white-space: nowrap;
}
.trademark-notice {
  max-width: 1180px;
  padding-top: 28px;
  color: #acbfc7;
  font-size: 0.74rem;
  line-height: 1.5;
}
.trademark-notice p {
  max-width: 800px;
}
@media (max-width: 700px) {
  .pemex-products {
    grid-template-columns: 1fr;
    margin-top: 38px;
  }
  .pemex-assurance {
    gap: 8px 12px;
  }
  .text-link--light {
    margin-top: 0;
  }
  .trademark-notice {
    padding-top: 25px;
  }
} /* Textura periférica: reservada para los márgenes sin contenido. */
body::before,
body::after {
  position: fixed;
  z-index: 15;
  top: 0;
  bottom: 0;
  width: clamp(15px, 5vw, 105px);
  pointer-events: none;
  opacity: 0.22;
  content: '';
  background-image:
    radial-gradient(
      circle at 25% 18%,
      rgba(6, 43, 58, 0.42) 0 1px,
      transparent 1.8px
    ),
    radial-gradient(
      circle at 72% 43%,
      rgba(255, 65, 50, 0.33) 0 1px,
      transparent 2px
    ),
    radial-gradient(
      circle at 42% 76%,
      rgba(172, 191, 199, 0.44) 0 1px,
      transparent 1.8px
    );
  background-size:
    8px 9px,
    13px 12px,
    17px 15px;
  filter: blur(5px);
  mix-blend-mode: multiply;
}
body::before {
  left: 0;
  border-right: 1px solid rgba(6, 43, 58, 0.1);
}
body::after {
  right: 0;
  border-left: 1px solid rgba(6, 43, 58, 0.1);
  transform: scaleX(-1);
}
.section-heading--products {
  display: grid;
  grid-template-columns: 1.3fr 0.7fr;
  align-items: end;
  gap: 56px;
  text-align: justify;
}
.section-heading--products h2 {
  max-width: 760px;
  font-size: clamp(2.55rem, 4.7vw, 4.45rem);
}
.services-subtitle {
  max-width: 390px;
  margin: 0 0 5px auto;
  color: #c3c9cc;
  font-size: 1rem;
  line-height: 1.7;
  text-align: justify;
}
.pemex-products {
  grid-template-columns: 1fr;
  gap: 18px;
}
.product-card {
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1.2fr);
  min-height: 245px;
}
.product-card__brand {
  min-height: 100%;
  padding: 40px;
  border-right: 1px solid #e0e4e6;
  border-bottom: 0;
}
.product-card__brand img {
  max-height: 68px;
}
.product-card__body {
  display: flex;
  min-height: 240px;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  padding: 30px 42px;
  text-align: center;
}
.product-card h3 {
  margin-top: 10px;
  font-size: 1.7rem;
}
.product-card__body > p:not(.product-card__label) {
  max-width: 510px;
  min-height: 0;
  margin-top: 13px;
}
.product-card__body a {
  margin-top: 21px;
}
.pemex-assurance {
  justify-content: center;
  text-align: center;
}
.pemex-assurance p {
  flex: 0 1 auto;
  max-width: 36ch;
}
@media (max-width: 700px) {
  body::before,
  body::after {
    display: none;
  }
  .section-heading--products {
    display: block;
    text-align: left;
  }
  .section-heading--products h2 {
    font-size: clamp(2.25rem, 10vw, 3.15rem);
  }
  .services-subtitle {
    margin-top: 20px;
    text-align: left;
  }
  .product-card {
    grid-template-columns: 1fr;
  }
  .product-card__brand {
    min-height: 128px;
    padding: 30px;
    border-right: 0;
    border-bottom: 1px solid #e0e4e6;
  }
  .product-card__body {
    min-height: 0;
    padding: 26px 23px;
  }
  .pemex-assurance {
    align-items: center;
    text-align: center;
  }
}
.product-card__body{padding:0;border-top:0}.product-card__info{width:100%;margin-top:auto;padding:30px 42px 23px}.product-card__quote{width:100%;margin-top:auto;padding:14px 26px;background:#262626}.product-card__quote a{display:flex;align-items:center;justify-content:center;gap:9px;margin:0;color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.product-card--diesel .product-card__quote{background:#262626}.product-card--magna .product-card__quote{background:#008C45}.product-card--premium .product-card__quote{background:#D7282F}.product-card--diesel .product-card__body a,.product-card--magna .product-card__body a,.product-card--premium .product-card__body a{color:#fff}@media(max-width:700px){.product-card__info{padding:26px 23px 22px}.product-card__quote{padding:14px 20px}}/* Encabezado de productos: jerarquía vertical y protección responsive. */
html,body{max-width:100%;overflow-x:clip}.services-section{overflow:hidden}.section-heading--products{display:block;text-align:left}.section-heading--products .eyebrow{width:max-content;margin-bottom:25px;padding:9px 14px;border-left:4px solid #FFCB00;background:rgba(255,255,255,.08);color:#FFCB00;font-size:.9rem;letter-spacing:.17em}.section-heading--products .eyebrow::before{content:"Distribuidor autorizado";display:block;margin-bottom:3px;color:#C3C9CC;font-size:.62rem;font-weight:700;letter-spacing:.13em}.section-heading--products h2{max-width:840px;font-size:clamp(2.8rem,5.3vw,5rem)}.services-subtitle{max-width:720px;margin:25px 0 0;color:#D7DADD;font-size:1.02rem;line-height:1.8;text-align:justify}.pemex-products,.product-card,.product-card__body,.product-card__info{min-width:0}@media(max-width:700px){.section-heading--products .eyebrow{margin-bottom:19px;padding:8px 11px;font-size:.76rem;letter-spacing:.12em}.section-heading--products .eyebrow::before{font-size:.56rem}.section-heading--products h2{font-size:clamp(2.2rem,10.8vw,3.2rem);line-height:1.03}.services-subtitle{margin-top:20px;font-size:.94rem;line-height:1.7;text-align:left}.product-card__brand,.product-card__body,.product-card__info{max-width:100%}}/* Facturación y catálogo de productos. */
.billing-section{background:#F1F3F4}.billing-grid{display:grid;grid-template-columns:1fr .65fr;align-items:center;gap:11%}.billing-copy h2{max-width:700px;font-size:clamp(2.25rem,4vw,3.8rem)}.billing-copy>p:not(.eyebrow):not(.billing-help){max-width:590px;margin-top:20px;color:#4C5559}.billing-steps{display:grid;gap:13px;margin:30px 0;padding:0;list-style:none}.billing-steps li{display:flex;align-items:center;gap:13px;color:#243c47;font-size:.91rem;font-weight:700}.billing-steps span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#062B3A;color:#fff;font-size:.72rem}.billing-help{margin-top:17px;color:#687176;font-size:.75rem}.ticket-reference{position:relative;display:block;justify-self:center;padding:23px 23px 0;background:#fff;box-shadow:0 18px 40px rgba(6,43,58,.15);transition:transform .2s}.ticket-reference:hover{transform:translateY(-4px)}.ticket-reference span{position:absolute;top:0;left:0;padding:7px 11px;background:#062B3A;color:#fff;font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ticket-reference img{width:230px;height:auto}
.products-page{background:#F1F3F4}.products-hero{padding:106px 0 88px;background:linear-gradient(120deg,#031D29,#062B3A 64%,#0B3C4A);color:#fff}.products-hero h1{max-width:850px;font-size:clamp(2.9rem,6vw,5.6rem)}.products-hero>div>p:not(.eyebrow){max-width:630px;margin-top:23px;color:#D7DADD;font-size:1.12rem}.products-hero .button{margin-top:31px}.products-subnav{position:sticky;top:76px;z-index:10;overflow-x:auto;background:#fff;box-shadow:0 2px 11px rgba(6,43,58,.08)}.products-subnav>div{display:flex;gap:4px;min-width:max-content}.products-subnav a{padding:16px 13px;border-bottom:3px solid transparent;color:#35434a;font-size:.76rem;font-weight:800;white-space:nowrap}.products-subnav a:hover{border-color:#FF4132;color:#062B3A}.products-list{padding:40px 0 80px}.product-detail{padding:38px 0}.product-detail__grid{display:grid;grid-template-columns:.75fr 1.25fr;min-height:340px;overflow:hidden;background:#fff;box-shadow:0 12px 32px rgba(6,43,58,.08)}.product-detail__brand{display:flex;align-items:center;justify-content:center;padding:50px;background:#fff;border-right:1px solid #D4D9DC}.product-detail__brand img{width:auto;max-width:100%;max-height:75px;object-fit:contain}.product-detail__content{display:flex;flex-direction:column;align-items:flex-start;padding:47px 52px}.product-detail__content .eyebrow{margin-bottom:14px;color:#687176}.product-detail__content h2{font-size:clamp(2rem,3.5vw,3.2rem)}.product-detail__description{max-width:640px;margin-top:18px;color:#4C5559;font-size:1.02rem}.product-detail__content ul{display:flex;flex-wrap:wrap;gap:9px 25px;margin:26px 0 0;padding:0;list-style:none}.product-detail__content li{color:#35434a;font-size:.84rem;font-weight:800}.product-detail__content li::before{margin-right:8px;content:'✓';color:#008C45}.product-detail__cta{align-self:stretch;margin-top:auto;padding:15px 18px;background:#262626;color:#fff;text-align:center;font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.product-detail--magna .product-detail__cta{background:#008C45}.product-detail--premium .product-detail__cta{background:#D7282F}.product-detail--premium .product-detail__content .eyebrow{color:#D7282F}.product-detail--magna .product-detail__content .eyebrow{color:#008C45}.products-cta{padding:73px 0;background:#062B3A;color:#fff}.products-cta>div{display:flex;align-items:center;justify-content:space-between;gap:30px}.products-cta h2{max-width:620px;font-size:clamp(2rem,4vw,3.4rem)}
@media(max-width:700px){.billing-grid,.product-detail__grid{grid-template-columns:1fr;gap:40px}.ticket-reference{justify-self:start}.ticket-reference img{width:210px}.products-hero{padding:75px 0 62px}.products-hero h1{font-size:clamp(2.55rem,11vw,3.7rem)}.products-subnav{top:65px}.products-list{padding:25px 0 56px}.product-detail{padding:12px 0}.product-detail__brand{min-height:190px;padding:35px;border-right:0;border-bottom:1px solid #D4D9DC}.product-detail__brand img{max-height:58px}.product-detail__content{min-height:0;padding:33px 25px}.product-detail__content ul{display:block;margin-top:21px}.product-detail__content li{margin-top:9px}.product-detail__cta{margin-top:27px;margin-right:-25px;margin-bottom:-33px;margin-left:-25px;padding:16px}.products-cta{padding:58px 0}.products-cta>div{display:block}.products-cta .button{margin-top:27px}}.ticket-reference{border:0;text-align:left;cursor:zoom-in}.ticket-reference strong{display:flex;align-items:center;justify-content:space-between;padding:11px 0 12px;color:#062B3A;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.ticket-reference strong b{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#FF4132;color:#fff;font-size:1rem}.ticket-modal{width:min(94vw,680px);max-height:92vh;padding:0;border:0;background:transparent}.ticket-modal::backdrop{background:rgba(3,29,41,.82);backdrop-filter:blur(5px)}.ticket-modal__inner{position:relative;max-height:92vh;padding:25px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.4);text-align:center}.ticket-modal__inner>p{margin:0 40px 16px;color:#062B3A;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.ticket-modal__image{max-height:calc(92vh - 126px);overflow:auto;background:#F1F3F4;cursor:zoom-in}.ticket-modal__image img{width:100%;height:auto;transition:transform .25s ease;transform-origin:center top}.ticket-modal__image:hover img{transform:scale(1.45)}.ticket-modal__inner small{display:block;margin-top:13px;color:#687176;font-size:.7rem}.ticket-modal__close{position:absolute;z-index:1;top:10px;right:10px;display:flex;align-items:center;justify-content:center;width:31px;height:31px;border:0;border-radius:50%;background:#062B3A;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer}.ticket-modal__close:hover{background:#FF4132}@media(max-width:700px){.ticket-modal__inner{padding:18px}.ticket-modal__image{max-height:calc(92vh - 115px)}.ticket-modal__image:hover img{transform:scale(1.22)}}/* Directorio de estaciones: selector en grid + mapa interactivo. */
.stations-page{background:#F1F3F4}.stations-hero{padding:100px 0 84px;background:linear-gradient(120deg,#031D29,#062B3A 64%,#0B3C4A);color:#fff}.stations-hero h1{max-width:800px;font-size:clamp(2.9rem,6vw,5.4rem)}.stations-hero>div>p:not(.eyebrow){max-width:620px;margin-top:23px;color:#D7DADD;font-size:1.1rem}.stations-directory{padding:90px 0 105px}.stations-directory__heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.stations-directory__heading h2{font-size:clamp(2.2rem,4vw,3.7rem)}.stations-directory__heading>p{max-width:400px;color:#4C5559;text-align:justify}.station-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:46px}.station-selector__item{min-height:77px;padding:13px 15px;border:1px solid #D4D9DC;background:#fff;color:#062B3A;text-align:left;font:800 .78rem/1.27 Arial,Helvetica,sans-serif;cursor:pointer;transition:border-color .2s,background .2s,color .2s,transform .2s}.station-selector__item span{display:block;margin-bottom:5px;color:#687176;font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.station-selector__item:hover{border-color:#FF4132;transform:translateY(-2px)}.station-selector__item.is-selected{border-color:#062B3A;background:#062B3A;color:#fff}.station-selector__item.is-selected span{color:#FFCB00}.stations-explorer{display:grid;grid-template-columns:.75fr 1.25fr;min-height:530px;margin-top:45px;background:#fff;box-shadow:0 16px 42px rgba(6,43,58,.11)}.station-detail{display:flex;flex-direction:column;padding:47px 42px;background:#fff}.station-detail h2{font-size:clamp(1.9rem,3vw,2.8rem)}.station-detail__code{margin-top:9px;color:#FF4132;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.station-detail dl{display:grid;gap:21px;margin:37px 0 0}.station-detail dt{margin-bottom:3px;color:#687176;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.station-detail dd{margin:0;color:#263d47;font-size:.91rem;font-weight:700;line-height:1.55}.station-detail dd a{text-decoration:underline;text-decoration-color:#FF4132;text-underline-offset:4px}.station-detail__directions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:auto;padding:14px 17px;background:#062B3A;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.station-detail__directions:hover{background:#FF4132}#stations-map{min-height:530px;width:100%;z-index:1}.cbs-map-pin{display:flex;align-items:center;justify-content:center;width:25px!important;height:25px!important;border:3px solid #fff!important;border-radius:50%;background:#FF4132;box-shadow:0 2px 9px rgba(0,0,0,.35)}.cbs-map-pin span{width:7px;height:7px;border-radius:50%;background:#fff}.leaflet-popup-content-wrapper{border-radius:0;font-family:Arial,Helvetica,sans-serif}.leaflet-popup-content{color:#062B3A;font-size:.8rem;font-weight:800}
@media(max-width:900px){.station-selector{grid-template-columns:repeat(3,1fr)}.stations-explorer{grid-template-columns:.9fr 1.1fr}.station-detail{padding:37px 28px}}@media(max-width:700px){.stations-hero{padding:75px 0 61px}.stations-hero h1{font-size:clamp(2.5rem,11vw,3.7rem)}.stations-directory{padding:64px 0 75px}.stations-directory__heading{display:block}.stations-directory__heading>p{margin-top:20px;text-align:left}.station-selector{grid-template-columns:repeat(2,1fr);margin-top:32px}.station-selector__item{min-height:75px;padding:12px;font-size:.7rem}.stations-explorer{grid-template-columns:1fr;min-height:0;margin-top:30px}.station-detail{min-height:390px;padding:34px 25px}.station-detail dl{margin-top:28px}.station-detail__directions{margin-top:30px}#stations-map{min-height:430px}.leaflet-control-attribution{font-size:8px}}/* Selector compacto de estaciones: badges flexibles en lugar de tarjetas. */
.station-selector{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}.station-selector__item{display:inline-flex;align-items:center;min-height:0;max-width:100%;padding:8px 11px;border-radius:999px;font-size:.72rem;line-height:1.2;white-space:normal}.station-selector__item span{display:inline;margin:0 6px 0 0;color:#687176;font-size:.58rem;letter-spacing:.06em}.station-selector__item span::after{content:'·';margin-left:6px}.station-selector__item.is-selected span{color:#FFCB00}@media(max-width:900px){.station-selector{grid-template-columns:none}}@media(max-width:700px){.station-selector{gap:6px;margin-top:27px}.station-selector__item{padding:7px 9px;font-size:.65rem}.station-selector__item span{margin-right:4px;font-size:.52rem}.station-selector__item span::after{margin-left:4px}}/* Mapa de estaciones dentro de la cobertura de la portada. */
.coverage-map--live{overflow:hidden;background:#E7ECEE}.coverage-map--live::before{display:none}.coverage-map--live #coverage-stations-map{min-height:450px;width:100%;background:#E7ECEE}.coverage-map__hint{position:absolute;z-index:2;bottom:12px;left:12px;margin:0;padding:7px 10px;background:rgba(3,29,41,.9);color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.coverage-station-pin{display:flex;align-items:center;justify-content:center;width:18px!important;height:18px!important;border:2px solid #fff!important;border-radius:50%;background:#FF4132;box-shadow:0 1px 7px rgba(0,0,0,.4);cursor:pointer}.coverage-station-pin span{width:5px;height:5px;border-radius:50%;background:#fff}@media(max-width:700px){.coverage-map--live #coverage-stations-map{min-height:380px}.coverage-map__hint{right:12px;left:auto;font-size:.58rem}}/* Transición de navegación entre páginas. */
body{animation:cbs-page-in .38s cubic-bezier(.2,.8,.2,1)}.page-transition{position:fixed;z-index:1000;inset:0;pointer-events:none;transform:translateX(-110%);background-image:linear-gradient(112deg,rgba(3,29,41,.96) 0%,rgba(6,43,58,.84) 57%,rgba(255,65,50,.82) 100%),url('../images/inicio.webp');background-position:center;background-size:cover;box-shadow:14px 0 34px rgba(3,29,41,.28)}.page-transition::after{position:absolute;top:0;right:0;bottom:0;width:13%;background:#FFCB00;content:''}.is-page-leaving{overflow:hidden}.is-page-leaving .page-transition{animation:cbs-page-out .36s cubic-bezier(.72,0,.35,1) forwards}.is-page-leaving main,.is-page-leaving .site-header,.is-page-leaving .site-footer{animation:cbs-page-fade .25s ease forwards}@keyframes cbs-page-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes cbs-page-out{from{transform:translateX(-110%)}to{transform:translateX(0)}}@keyframes cbs-page-fade{to{opacity:.18;transform:translateX(10px)}}@media(prefers-reduced-motion:reduce){body{animation:none}.is-page-leaving .page-transition{animation:none;transform:translateX(0)}.is-page-leaving main,.is-page-leaving .site-header,.is-page-leaving .site-footer{animation:none}}/* Mantiene las capas de Leaflet por debajo de la navegación fija. */
.site-header{z-index:1100}#stations-map,#coverage-stations-map{position:relative;z-index:0;isolation:isolate}/* Contenido técnico completo de los productos PEMEX. */
.product-detail__benefits{width:100%;margin-top:26px;padding:22px 0 4px;border-top:1px solid #D4D9DC}.product-detail__benefits h3{margin-bottom:16px;color:#062B3A;font-size:1.06rem;letter-spacing:0}.product-detail__benefits p{margin-top:12px;color:#4C5559;font-size:.86rem;line-height:1.6}.product-detail__benefits strong{color:#062B3A}.product-detail--premium .product-detail__benefits h3,.product-detail--premium .product-detail__benefits strong{color:#D7282F}.product-detail--magna .product-detail__benefits h3,.product-detail--magna .product-detail__benefits strong{color:#008C45}.product-detail__brand img{max-height:150px}@media(max-width:700px){.product-detail__brand img{max-height:110px}.product-detail__benefits{margin-top:23px}.product-detail__benefits p{font-size:.82rem}}/* Datos de contacto en la barra superior. */
.utility-contacts{display:flex;align-items:center;gap:20px}.utility-contacts a{display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:.76rem;font-weight:700}.utility-contacts svg{width:15px;height:15px;fill:#FFCB00;flex:0 0 auto}.utility-contacts a:hover{color:#FFCB00}@media(max-width:700px){.utility-bar__content{min-height:40px}.utility-contacts{width:100%;justify-content:center;gap:14px}.utility-contacts a{font-size:.66rem}.utility-contacts svg{width:13px;height:13px}}/* El ticket ampliado permanece estable: sin zoom al pasar el cursor. */
.ticket-modal__image{cursor:default}.ticket-modal__image img{transform:none!important;transition:none}.ticket-modal__image:hover img{transform:none}/* Header compacto con ocultamiento al desplazarse hacia abajo. */
.site-header{transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s}.site-header.is-header-hidden{transform:translateY(-100%);box-shadow:none}.utility-bar__content{min-height:29px}.utility-bar{font-size:.68rem}.utility-contacts{gap:15px}.utility-contacts a{font-size:.69rem}.utility-contacts svg{width:13px;height:13px}.navigation{min-height:62px}.brand{width:142px}.main-nav{gap:18px;font-size:.79rem}.main-nav .button--small{min-height:34px;padding:7px 11px;font-size:.73rem}@media(max-width:700px){.utility-bar__content{min-height:34px}.utility-contacts{gap:11px}.utility-contacts a{font-size:.61rem}.utility-contacts svg{width:12px;height:12px}.navigation{min-height:58px}.brand{width:128px}.main-nav{top:92px}.site-header.is-header-hidden{transform:translateY(-100%)}}/* Correcciones compactas para móvil: evita estiramientos y usa selector nativo. */
.station-mobile-select{display:none}.pemex-assurance{min-width:0}.pemex-assurance p{min-width:0;overflow-wrap:anywhere}.utility-contacts{flex-wrap:wrap}@media(max-width:700px){.pemex-assurance{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 12px;padding:12px 14px;text-align:center}.pemex-assurance img{margin:0;max-width:120px;max-height:36px}.pemex-assurance p{flex:0 1 auto;width:auto;max-width:100%;margin:0;font-size:.7rem;line-height:1.35}.pemex-assurance .text-link--light{display:inline-flex;justify-content:center;white-space:normal;margin:0}.utility-contacts{justify-content:center;gap:4px 12px}.utility-contacts a{max-width:100%}.utility-contacts a span{overflow-wrap:anywhere}.station-selector{display:none}.station-mobile-select{display:grid;gap:7px;margin-top:26px;color:#062B3A;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.station-mobile-select select{width:100%;min-width:0;padding:13px 40px 13px 14px;border:1px solid #ACBFC7;border-radius:0;background:#fff;color:#062B3A;font:700 .88rem/1.35 Arial,Helvetica,sans-serif;appearance:auto}.station-mobile-select select:focus{outline:2px solid #FFCB00;border-color:#FFCB00}.stations-explorer{margin-top:24px}.product-detail__content,.quote-form,.station-detail{min-width:0}.product-detail__content h2,.quote-copy h2,.stations-hero h1{overflow-wrap:anywhere}}/* Proceso comercial compacto en móvil: número y contenido en una misma fila. */
@media(max-width:700px){.process-list{grid-template-columns:1fr;gap:15px}.process-list li{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;align-items:start;padding:0}.process-list span{grid-row:1 / span 2;width:36px;height:36px}.process-list h3{margin:2px 0 0;font-size:1.12rem}.process-list p{grid-column:2;max-width:none;margin:6px 0 0;font-size:.82rem}}
/* Landing B2B unificada: interacciones, cotizador guiado y módulos operativos. */
html.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
html.js .reveal.is-visible{opacity:1;transform:none}
.hero__image{animation:cbsHeroDrift 18s ease-in-out infinite alternate}
.hero::after{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.22;background-image:radial-gradient(rgba(255,255,255,.35) .6px,transparent .7px);background-size:5px 5px;mix-blend-mode:soft-light;content:''}
.hero__content{z-index:1}
@keyframes cbsHeroDrift{from{transform:scale(1)}to{transform:scale(1.055)}}
.products-landing{background:#f1f3f4}
.products-landing__heading{max-width:790px}
.products-landing__heading>p:not(.eyebrow){max-width:620px;margin-top:20px;color:#4c5559}
.product-accordions{display:grid;gap:12px;margin-top:45px}
.product-accordion{overflow:hidden;border:1px solid #d4d9dc;background:#fff;transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease}
.product-accordion:hover{border-color:#acbfc7;box-shadow:0 12px 28px rgba(6,43,58,.09);transform:translateY(-2px)}
.product-accordion summary{display:grid;grid-template-columns:190px minmax(0,1fr) 36px;gap:28px;align-items:center;padding:22px 28px;cursor:pointer;list-style:none}
.product-accordion summary::-webkit-details-marker{display:none}
.product-accordion summary img{width:100%;max-height:62px;object-fit:contain}
.product-accordion summary span{display:grid;gap:5px}
.product-accordion summary b{color:#062b3a;font-size:1.07rem}
.product-accordion summary small{color:#687176;font-size:.8rem}
.product-accordion summary i{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #d4d9dc;border-radius:50%;color:#062b3a;font-size:1.4rem;font-style:normal;transition:transform .25s ease,background .25s ease,color .25s ease}
.product-accordion[open] summary i{background:#062b3a;color:#fff;transform:rotate(45deg)}
.product-accordion--premium[open]{border-left:4px solid #d7282f}.product-accordion--magna[open]{border-left:4px solid #008c45}.product-accordion--diesel[open]{border-left:4px solid #262626}
.product-accordion__content{padding:0 98px 28px 246px;color:#4c5559}
.product-accordion__content p{max-width:700px}.product-accordion__content ul{display:grid;gap:9px;margin:18px 0 0;padding:0;list-style:none;font-size:.87rem}.product-accordion__content li::before{margin-right:9px;color:#008c45;content:'✓';font-weight:800}
.landing-stations{background:#fff}.landing-stations .stations-directory__heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.landing-stations .stations-directory__heading h2{font-size:clamp(2.2rem,4vw,3.7rem)}.landing-stations .stations-directory__heading>p{max-width:400px;color:#4c5559;text-align:justify}
#landing-stations-map{min-height:530px;width:100%;background:#e7ecee;position:relative;z-index:0;isolation:isolate}
.landing-stations .stations-explorer{display:grid;grid-template-columns:.75fr 1.25fr;min-height:530px;margin-top:32px;background:#fff;box-shadow:0 16px 42px rgba(6,43,58,.11)}
.billing-guide{align-self:center;width:min(100%,360px);justify-self:center;padding:19px;background:#fff;box-shadow:0 15px 38px rgba(6,43,58,.11)}
.billing-guide__label{color:#062b3a;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.billing-guide__ticket{display:grid;gap:9px;margin-top:15px;padding:17px;border:1px dashed #acbfc7;background:#f8fafb}.ticket-line{padding:8px 0;border-bottom:1px dashed #d4d9dc;color:#687176;font-size:.73rem}.ticket-line--brand{color:#062b3a;font-weight:800}.ticket-field{display:flex;justify-content:space-between;gap:14px;padding:10px;border:1px solid transparent;background:#fff;color:#263d47;font:700 .8rem Arial,Helvetica,sans-serif;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.ticket-field:hover,.ticket-field.is-active{border-color:#ffcb00;background:#fff8d7;transform:translateX(3px)}.ticket-field span{font-weight:400}.billing-guide__tips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.billing-guide__tips button{padding:7px 8px;border:1px solid #d4d9dc;background:#fff;color:#4c5559;font-size:.67rem;font-weight:800;cursor:pointer;transition:.2s}.billing-guide__tips button b{margin-right:4px;color:#ff4132}.billing-guide__tips button.is-active,.billing-guide__tips button:hover{border-color:#062b3a;background:#062b3a;color:#fff}.billing-guide__tips button.is-active b,.billing-guide__tips button:hover b{color:#ffcb00}.billing-guide>p:last-child{margin-top:13px;color:#4c5559;font-size:.78rem;line-height:1.45}
.quote-wizard{position:relative;overflow:hidden}.wizard-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:27px}.wizard-progress span{display:flex;align-items:center;justify-content:center;height:29px;background:#e7ecee;color:#687176;font-size:.7rem;font-weight:800;transition:background .25s,color .25s,transform .25s}.wizard-progress span.is-active{background:#062b3a;color:#fff;transform:translateY(-2px)}.wizard-step{display:none;min-width:0;margin:0;padding:0;border:0;animation:wizardIn .3s ease}.wizard-step.is-active{display:block}.wizard-step legend{margin:0;color:#062b3a;font-size:1.2rem;font-weight:800;line-height:1.2}.wizard-step>p{margin-top:8px;color:#687176;font-size:.84rem}.wizard-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.wizard-options button{min-height:55px;padding:10px;border:1px solid #d4d9dc;background:#fff;color:#263d47;font:700 .78rem/1.3 Arial,Helvetica,sans-serif;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,color .2s,transform .2s}.wizard-options button:hover,.wizard-options button.is-selected{border-color:#062b3a;background:#062b3a;color:#fff;transform:translateY(-2px)}.wizard-step select{width:100%;padding:12px;border:1px solid #c9ced1;background:#fff;color:#062b3a;font:400 .9rem Arial,sans-serif}.wizard-step select:focus{outline:2px solid #ffcb00;border-color:#ffcb00}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:27px}.wizard-back{padding:0;border:0;background:transparent;color:#687176;font-size:.8rem;font-weight:800;cursor:pointer}.wizard-back:hover{color:#ff4132}.wizard-actions [data-wizard-submit],.wizard-actions.is-final [data-wizard-next]{display:none}.wizard-actions:not(.is-final) [data-wizard-submit]{display:none}.wizard-summary{margin-top:20px;padding:13px;background:#f1f3f4;color:#263d47;font-size:.8rem;line-height:1.55}@keyframes wizardIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.main-nav a.is-current:not(.button){color:#ff4132}
@media (max-width:900px){.product-accordion__content{padding:0 35px 28px}.product-accordion summary{grid-template-columns:155px minmax(0,1fr) 36px;gap:20px}.landing-stations .stations-explorer{grid-template-columns:.9fr 1.1fr}}
@media (max-width:700px){.products-landing__heading>p:not(.eyebrow){font-size:.93rem}.product-accordions{margin-top:30px}.product-accordion summary{grid-template-columns:1fr 28px;gap:13px;padding:19px}.product-accordion summary img{grid-column:1;max-width:150px;max-height:46px}.product-accordion summary span{grid-column:1;grid-row:2}.product-accordion summary i{grid-column:2;grid-row:1 / span 2;width:28px;height:28px;font-size:1.15rem}.product-accordion summary b{font-size:.97rem}.product-accordion__content{padding:0 19px 23px;font-size:.91rem}.landing-stations .stations-directory__heading{display:block}.landing-stations .stations-directory__heading>p{margin-top:18px;text-align:left}.landing-stations .stations-explorer{grid-template-columns:1fr;min-height:0;margin-top:24px}.landing-stations .station-detail{min-height:390px;padding:34px 25px}#landing-stations-map{min-height:400px}.billing-guide{width:100%;padding:16px}.wizard-options{grid-template-columns:1fr}.wizard-actions .button{min-height:43px;padding:10px 14px;font-size:.78rem}.wizard-step legend{font-size:1.1rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero__image{transform:none!important}}

/* Ticket térmico HTML/CSS: proporción y composición de la referencia (564 × 1029). */
.billing-guide{width:min(100%,322px);padding:0;background:transparent;box-shadow:none}
.billing-guide__label{margin:0 0 10px;padding-left:3px}
.billing-guide__ticket.ticket-real{position:relative;display:block;min-height:548px;padding:22px 20px 17px;overflow:hidden;border:0;background:#fff;color:#101010;box-shadow:0 13px 27px rgba(6,43,58,.16);font-family:"Courier New",Courier,monospace;font-size:10px;font-weight:400;line-height:1.38;letter-spacing:-.025em}
.ticket-real b,.ticket-real strong{font-weight:700}
.ticket-real::before,.ticket-real::after{position:absolute;right:0;left:0;height:7px;background:linear-gradient(135deg,transparent 4px,#f1f3f4 0) 0 0/8px 7px repeat-x;content:""}
.ticket-real::before{top:0;transform:rotate(180deg)}.ticket-real::after{bottom:0}
.ticket-real__logo{display:block;width:100px;height:auto;margin:4px auto 8px}
.ticket-real__head{display:grid;justify-items:center;gap:3px;text-align:center}.ticket-real__head>b{font-size:13px;letter-spacing:-.07em}.ticket-real__head>span{font-size:9px;letter-spacing:.07em}.ticket-real__head small{font-size:8px;line-height:1.35}.ticket-real__rule{margin:11px 0 8px;overflow:hidden;white-space:nowrap;letter-spacing:-.12em}.ticket-real__meta{display:flex;justify-content:space-between;gap:8px;font-size:8px}.ticket-real__item{display:grid;gap:2px}.ticket-real__item b{font-size:10px}.ticket-real__payment{display:grid;justify-items:center;gap:3px;font-size:8px;text-align:center}.ticket-field--real{display:flex;width:100%;justify-content:space-between;align-items:center;min-height:27px;padding:5px 4px;border:1px solid transparent;border-radius:0;background:transparent;color:#101010;font:400 10px/1.25 "Courier New",Courier,monospace;letter-spacing:-.025em;text-align:left;transform:none!important;cursor:pointer}.ticket-field--real span{font-weight:400}.ticket-field--real b{font-size:11px;font-weight:700}.ticket-field--real:hover,.ticket-field--real.is-active{border-color:#ff4132;background:rgba(255,65,50,.09);box-shadow:inset 3px 0 #ff4132}.ticket-field--real.ticket-real__total{align-items:baseline;margin:8px 0;font-size:13px}.ticket-field--real.ticket-real__total b{font-size:15px}.ticket-field--inline{width:auto;min-height:0;padding:2px 3px;gap:4px;font-size:8px}.ticket-field--inline b{font-size:8px}.ticket-real__qr{display:flex;align-items:center;gap:12px;margin-top:6px;padding:4px 2px}.ticket-real__qr img{width:72px;height:72px;flex:0 0 auto;object-fit:contain}.ticket-real__qr span,.ticket-real__qr b{font-size:11px;letter-spacing:.02em;text-transform:uppercase;line-height:1.25}.billing-guide__tips{margin-top:13px}.billing-guide>p:last-child{margin:11px 3px 0}
@media(max-width:700px){.billing-guide{width:min(100%,296px);justify-self:center}.billing-guide__ticket.ticket-real{min-height:514px;padding:20px 17px 15px;font-size:9px}.ticket-real__head>b{font-size:12px}.ticket-real__total{font-size:12px}.ticket-real__total b{font-size:14px}.ticket-real__qr img{width:64px;height:64px}.ticket-real__qr span,.ticket-real__qr b{font-size:10px}}

/* Visor del ticket: lupa contextual y zoom manual. */
.ticket-real__zoom{position:absolute;z-index:2;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid rgba(6,43,58,.16);border-radius:50%;background:rgba(255,255,255,.96);color:#062b3a;box-shadow:0 3px 10px rgba(6,43,58,.16);cursor:zoom-in;transition:transform .2s ease,background .2s ease,color .2s ease}.ticket-real__zoom:hover{background:#062b3a;color:#fff;transform:scale(1.1)}.ticket-real__zoom svg{width:17px;height:17px;fill:currentColor}.ticket-modal--receipt{width:min(96vw,700px)}.ticket-modal--receipt .ticket-modal__inner{display:flex;max-height:94vh;flex-direction:column;padding:18px}.ticket-modal__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 42px 13px 0}.ticket-modal__toolbar>p{margin:0!important;text-align:left}.ticket-modal__zoom-controls{display:flex;align-items:center;gap:5px}.ticket-modal__zoom-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;border:1px solid #acbfc7;background:#fff;color:#062b3a;font:800 1rem/1 Arial,Helvetica,sans-serif;cursor:pointer;transition:background .18s,color .18s,transform .18s}.ticket-modal__zoom-controls button:hover{background:#062b3a;color:#fff;transform:translateY(-1px)}.ticket-modal__zoom-controls output{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:30px;background:#f1f3f4;color:#35434a;font:800 .7rem/1 Arial,Helvetica,sans-serif}.ticket-modal__zoom-controls .ticket-modal__reset{min-width:auto;font-size:.62rem;letter-spacing:.035em;text-transform:uppercase}.ticket-modal__image--receipt{display:block;max-height:calc(94vh - 132px);padding:18px;overflow:auto;background:#e7ecee;cursor:grab;overscroll-behavior:contain}.ticket-modal__image--receipt:active{cursor:grabbing}.ticket-modal__zoom-stage{position:relative;width:360px;height:650px;margin:auto;transform-origin:top left}.ticket-modal__image--receipt .ticket-real{width:360px;min-height:650px;margin:0;transform:scale(var(--ticket-scale,1));transform-origin:top left}.ticket-modal__image--receipt .ticket-real__zoom{display:none}.ticket-modal__image--receipt .ticket-field{pointer-events:none}.ticket-modal__image--receipt .ticket-field.is-active{border-color:#ff4132;background:rgba(255,65,50,.09);box-shadow:inset 3px 0 #ff4132}@media(max-width:700px){.ticket-modal--receipt .ticket-modal__inner{padding:13px}.ticket-modal__toolbar{align-items:flex-start;flex-direction:column;gap:9px;margin:0 38px 11px 0}.ticket-modal__toolbar>p{font-size:.7rem}.ticket-modal__zoom-controls{width:100%}.ticket-modal__zoom-controls .ticket-modal__reset{margin-left:auto}.ticket-modal__image--receipt{max-height:calc(94vh - 163px);padding:12px}.ticket-modal__zoom-stage{width:310px;height:560px}.ticket-modal__image--receipt .ticket-real{width:310px;min-height:560px}}.button,.benefit-card,.product-card,.product-accordion,.wizard-options button,.station-selector__item,.process-list li{position:relative;isolation:isolate}.button{overflow:hidden}.button::after{position:absolute;inset:-120% -20%;z-index:-1;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.25) 50%,transparent 58%);content:"";transform:translateX(-110%);transition:transform .55s ease}.button:hover::after{transform:translateX(110%)}.benefit-card::after,.product-card::after,.product-accordion::after{position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(255,203,0,.16),transparent 42%);content:"";transition:opacity .25s ease}.benefit-card:hover::after,.product-card:hover::after,.product-accordion:hover::after{opacity:1}.trust-strip p,.hero__facts li{transition:transform .22s ease,color .22s ease}.trust-strip p:hover,.hero__facts li:hover{transform:translateY(-3px);color:#fff}.process-list li{transition:transform .24s ease}.process-list li:hover{transform:translateY(-5px)}.process-list li:hover span{box-shadow:0 0 0 6px rgba(255,65,50,.12)}.quote-form label{transition:color .2s ease}.quote-form label:focus-within{color:#062b3a}.quote-form label:focus-within input,.quote-form label:focus-within textarea,.quote-form label:focus-within select{box-shadow:0 0 0 4px rgba(255,203,0,.2)}.quote-form label.is-filled{color:#062b3a}.is-pressing{transform:scale(.975)!important}.cbs-map-pin{transition:transform .2s ease,box-shadow .2s ease}.cbs-map-pin:hover{transform:scale(1.16);box-shadow:0 0 0 6px rgba(255,65,50,.16),0 2px 9px rgba(0,0,0,.35)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ffcb00;outline-offset:3px}
@media(prefers-reduced-motion:no-preference){.station-selector__item.is-selected{animation:selectedStation .42s ease}.wizard-progress .is-active{animation:progressPop .32s ease}}@keyframes selectedStation{50%{transform:scale(1.035)}}@keyframes progressPop{50%{transform:translateY(-4px) scale(1.06)}}
/* Títulos de sección: brillo en bucle con una pausa de 3 segundos. */
html.js .title-shimmer{position:relative;isolation:isolate}.title-shimmer__overlay{position:absolute;inset:0;z-index:2;display:block;pointer-events:none;color:transparent!important;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;white-space:normal;-webkit-text-fill-color:transparent!important}.title-shimmer__overlay,.title-shimmer__overlay *{background:linear-gradient(112deg,transparent 42%,rgba(255,255,255,.8) 49%,rgba(255,203,0,.52) 51%,transparent 58%) 100% 0/260% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent!important}.title-shimmer__overlay br{background:none}@media(prefers-reduced-motion:no-preference){html.js .title-shimmer.is-title-visible .title-shimmer__overlay,html.js .title-shimmer.is-title-visible .title-shimmer__overlay *{animation:cbs-title-shimmer 8s ease-in-out infinite}@keyframes cbs-title-shimmer{0%{background-position:100% 0}62.5%{background-position:-160% 0}62.51%,100%{background-position:100% 0}}}
/* Cobertura y estaciones: una sola sección funcional y compacta. */
.coverage-stations-section{background:#062b3a}.coverage-stations__heading{display:flex;align-items:end;justify-content:space-between;gap:36px}.coverage-stations__heading .eyebrow{color:#ffcb00}.coverage-stations__heading h2{color:#fff;font-size:clamp(2.2rem,4vw,3.7rem)}.coverage-stations__heading>p{max-width:360px;margin:0;color:#d7dadd;line-height:1.6;text-align:left}.coverage-stations-section .station-selector{margin-top:25px}.coverage-stations__explorer{grid-template-columns:.72fr 1.28fr;min-height:390px;margin-top:22px;border:1px solid #d4d9dc;box-shadow:0 13px 30px rgba(6,43,58,.1)}.coverage-stations__explorer #landing-stations-map{min-height:390px}.station-detail--compact{min-height:390px;padding:31px 32px}.station-detail--compact h2{font-size:clamp(1.5rem,2.5vw,2.25rem)}.station-detail__summary{display:grid;gap:9px;margin-top:22px;color:#4c5559;font-size:.82rem;line-height:1.45}.station-detail__summary p{margin:0}.station-detail__summary p:first-child{color:#062b3a;font-weight:800}.station-detail__summary a{color:#062b3a;font-weight:800;text-decoration:underline;text-decoration-color:#ff4132;text-underline-offset:4px}.station-detail--compact .station-detail__directions{margin-top:auto}@media(max-width:700px){.coverage-stations__heading{display:block}.coverage-stations__heading>p{margin-top:15px;font-size:.9rem}.coverage-stations-section .station-mobile-select{margin-top:21px}.coverage-stations__explorer{grid-template-columns:1fr;min-height:0;margin-top:18px}.station-detail--compact{min-height:0;padding:27px 23px}.station-detail--compact .station-detail__directions{margin-top:24px}.coverage-stations__explorer #landing-stations-map{min-height:330px}.station-detail__summary{margin-top:18px}}

/* Navegación accesible, estados del cotizador y selector de tema. */
[hidden]{display:none!important}.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.navigation-actions{display:flex;align-items:center;gap:8px;order:3}.main-nav{order:2;margin-left:auto}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:7px 10px;border:1px solid #d4d9dc;background:#fff;color:#062b3a;font:700 .72rem/1 Arial,Helvetica,sans-serif;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s}.theme-toggle:hover{border-color:#062b3a;transform:translateY(-1px)}.theme-toggle svg{width:18px;height:18px;fill:currentColor}.theme-toggle__sun{display:none}html[data-theme=dark] .theme-toggle__sun{display:block}html[data-theme=dark] .theme-toggle__moon{display:none}.wizard-progress{margin-top:0;padding:0;list-style:none}.wizard-progress li{display:flex;align-items:center;justify-content:center;height:29px;background:#e7ecee;color:#687176;font-size:.7rem;font-weight:800;transition:background .25s,color .25s,transform .25s}.wizard-progress li.is-active{background:#062b3a;color:#fff;transform:translateY(-2px)}.wizard-progress li[aria-current=step]{box-shadow:0 0 0 3px #ffcb00}.wizard-actions.is-final [data-wizard-submit]{display:inline-flex}.form-status{margin-top:16px;padding:11px 13px;border-left:4px solid #062b3a;background:#e7ecee;color:#263d47;font-size:.8rem;line-height:1.5}.form-status--error{border-left-color:#c92e24;background:#fff0ee;color:#7c211b}.form-status--success{border-left-color:#008c45;background:#eaf8f0;color:#075d31}.button:disabled{opacity:.62;transform:none;cursor:wait}.utility-contacts a{font-size:.75rem}.station-selector__item[aria-pressed=true]{border-color:#062b3a;background:#062b3a;color:#fff}
@media(max-width:1050px){.theme-toggle span{display:none}.theme-toggle{width:38px;padding:7px}}
@media(max-width:700px){html{scroll-padding-top:92px}.navigation-actions{margin-left:auto}.theme-toggle{width:38px;min-height:38px}.utility-contacts a{font-size:.75rem}.main-nav{margin-left:0}}

/* Tema oscuro: mantiene los colores de marca y eleva el contraste de las superficies claras. */
html[data-theme=dark]{color-scheme:dark}html[data-theme=dark] body{background:#071c25;color:#e9f1f3}html[data-theme=dark] .site-header{background:rgba(7,28,37,.98);box-shadow:0 1px 0 rgba(255,255,255,.12)}html[data-theme=dark] .main-nav> a:not(.button){color:#e3ecef}html[data-theme=dark] .nav-toggle span:not(.sr-only){background:#eef5f7}html[data-theme=dark] .theme-toggle{border-color:#34515c;background:#0d2a35;color:#f5f8f9}html[data-theme=dark] .skip-link{background:#ffcb00;color:#031d29}html[data-theme=dark] .intro-section,html[data-theme=dark] .products-landing,html[data-theme=dark] .sectors-section,html[data-theme=dark] .process-section,html[data-theme=dark] .billing-section{background:#071c25;color:#e9f1f3}html[data-theme=dark] .intro-section h2,html[data-theme=dark] .intro-copy,html[data-theme=dark] .benefit-card h3,html[data-theme=dark] .products-landing h2,html[data-theme=dark] .products-landing__heading>p,html[data-theme=dark] .product-accordion summary b,html[data-theme=dark] .sectors-content h2,html[data-theme=dark] .sectors-content>p,html[data-theme=dark] .process-section h2,html[data-theme=dark] .process-list h3,html[data-theme=dark] .process-list p,html[data-theme=dark] .billing-copy h2,html[data-theme=dark] .billing-copy>p,html[data-theme=dark] .billing-help{color:#e9f1f3}html[data-theme=dark] .benefit-card,html[data-theme=dark] .product-accordion,html[data-theme=dark] .station-detail,html[data-theme=dark] .quote-form,html[data-theme=dark] .ticket-modal__inner{border-color:#294652;background:#0c2833;color:#e9f1f3}html[data-theme=dark] .benefit-card p,html[data-theme=dark] .product-accordion summary small,html[data-theme=dark] .product-accordion__content,html[data-theme=dark] .station-detail__summary,html[data-theme=dark] .station-detail__summary p:first-child,html[data-theme=dark] .station-detail__summary a{color:#c7d5da}html[data-theme=dark] .product-accordion summary i{border-color:#46616b;color:#e9f1f3}html[data-theme=dark] .product-accordion[open] summary i{background:#ffcb00;color:#031d29}html[data-theme=dark] .product-accordion__content{border-color:#294652}html[data-theme=dark] .quote-form label,html[data-theme=dark] .wizard-step legend,html[data-theme=dark] .quote-form label:focus-within,html[data-theme=dark] .quote-form label.is-filled{color:#e9f1f3}html[data-theme=dark] .wizard-step>p,html[data-theme=dark] .wizard-back,html[data-theme=dark] .form-notice{color:#b7c8ce}html[data-theme=dark] .wizard-options button,html[data-theme=dark] .quote-form input,html[data-theme=dark] .quote-form textarea,html[data-theme=dark] .quote-form select{border-color:#3b5863;background:#102f3b;color:#f3f7f8}html[data-theme=dark] .wizard-options button:hover,html[data-theme=dark] .wizard-options button.is-selected{border-color:#ffcb00;background:#163f4e;color:#fff}html[data-theme=dark] .wizard-progress li{background:#173742;color:#c7d5da}html[data-theme=dark] .wizard-progress li.is-active{background:#ffcb00;color:#031d29}html[data-theme=dark] .wizard-summary{background:#102f3b;color:#dce7ea}html[data-theme=dark] .form-status{background:#173742;color:#e9f1f3}html[data-theme=dark] .form-status--error{border-left-color:#ff6b5f;background:#3b201f;color:#ffd9d5}html[data-theme=dark] .form-status--success{border-left-color:#49d58b;background:#123529;color:#d9ffea}html[data-theme=dark] .coverage-stations__explorer{border-color:#294652}html[data-theme=dark] .station-mobile-select{color:#ffcb00}html[data-theme=dark] .station-mobile-select select{border-color:#3b5863;background:#102f3b;color:#f3f7f8}html[data-theme=dark] .billing-guide__label,html[data-theme=dark] .billing-guide>p:last-child{color:#d5e1e4}html[data-theme=dark] .ticket-modal__toolbar>p,html[data-theme=dark] .ticket-modal__inner>small{color:#e9f1f3}html[data-theme=dark] .ticket-modal__image--receipt{background:#102f3b}html[data-theme=dark] .main-nav.is-open{background:#0c2833}

/* Segunda pasada de contraste: textos y controles que heredaban colores del tema claro. */
html[data-theme=dark] .products-landing__heading>p:not(.eyebrow),
html[data-theme=dark] .sectors-content>p:not(.eyebrow),
html[data-theme=dark] .billing-copy>p:not(.eyebrow):not(.billing-help){color:#c7d5da}
html[data-theme=dark] .billing-steps li{color:#e9f1f3}
html[data-theme=dark] .billing-steps span{background:#ffcb00;color:#031d29}
html[data-theme=dark] .billing-guide__tips button{border-color:#46616b;background:#102f3b;color:#e9f1f3}
html[data-theme=dark] .billing-guide__tips button b{color:#ffcb00}
html[data-theme=dark] .billing-guide__tips button:is(:hover,.is-active){border-color:#ffcb00;background:#ffcb00;color:#031d29}
html[data-theme=dark] .billing-guide__tips button:is(:hover,.is-active) b{color:#031d29}
html[data-theme=dark] .station-selector__item{border-color:#3b5863;background:#102f3b;color:#e9f1f3}
html[data-theme=dark] .station-selector__item span{color:#b7c8ce}
html[data-theme=dark] .station-selector__item:is(.is-selected,[aria-pressed=true]){border-color:#ffcb00;background:#ffcb00;color:#031d29}
html[data-theme=dark] .station-selector__item:is(.is-selected,[aria-pressed=true]) span{color:#243c47}
html[data-theme=dark] .process-list span{background:#ffcb00;color:#031d29}
html[data-theme=dark] .button{border-color:#ffcb00;background:#ffcb00;color:#031d29}
html[data-theme=dark] .button:hover{border-color:#ffe06b;background:#ffe06b;color:#031d29}
html[data-theme=dark] .eyebrow,
html[data-theme=dark] .card-number,
html[data-theme=dark] .text-link,
html[data-theme=dark] .station-detail__code,
html[data-theme=dark] .form-notice a{color:#ff806f}
html[data-theme=dark] .coverage-stations__heading .eyebrow{color:#ffcb00}
html[data-theme=dark] .quote-form :is(input,textarea,select)::placeholder{color:#a9bbc1;opacity:1}
@media(max-width:700px){.wizard-step legend{scroll-margin-top:118px}}
