.region-hero.c-page-hero{
  padding-block:var(--hero-top) var(--space-section);
  background:#FFFFFF;
  color:#29232F;
}

.region-hero__inner{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  gap:var(--space-5);
  align-items:start;
}

.region-hero__copy,
.region-ticket,
.region-network__copy,
.region-network__check{
  min-width:0;
  overflow-wrap:break-word;
}

.region-hero__copy .c-kicker,
.region-section-head .c-kicker,
.region-network__copy .c-kicker,
.region-close .c-kicker{
  margin-bottom:var(--space-2);
}

.region-hero__copy h1{
  max-width:18ch;
  margin-bottom:var(--space-3);
}

.region-hero__lead{
  max-width:38rem;
  margin-bottom:0;
  color:#5E5862;
  font-size:var(--text-lg);
}

.region-hero__actions{
  justify-content:flex-start;
  margin-top:var(--space-3);
}

.region-hero__note{
  margin:var(--space-3) 0 0;
  color:#5E5862;
  font-size:var(--text-sm);
}

.region-ticket{
  height:auto;
  overflow:hidden;
  border-radius:var(--radius-stage);
  background:var(--lavender);
  color:#29232F;
  box-shadow:var(--shadow-card);
  text-align:left;
}

.region-ticket__top{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:var(--space-1) var(--space-2);
  padding:var(--space-2) var(--space-3);
  background:#29232F;
  color:#F5F1F5;
}

.region-ticket__label,
.region-ticket__code{
  min-width:0;
  font-size:var(--text-xs);
  font-weight:750;
}

.region-ticket__body{
  padding:var(--space-4);
}

.region-ticket__body h2{
  margin:var(--space-2) 0 var(--space-1);
  font-size:clamp(1.6rem,2.6vw,2rem);
}

.region-ticket__body > p{
  color:#49434E;
}

.region-ticket__facts{
  display:grid;
  gap:0;
  margin:var(--space-3) 0;
}

.region-ticket__facts > div{
  display:grid;
  grid-template-columns:minmax(6rem,9rem) minmax(0,1fr);
  gap:var(--space-2);
  padding-block:var(--space-2);
  border-top:1px solid color-mix(in srgb,#29232F 14%,transparent);
}

.region-ticket__facts dt,
.region-ticket__facts dd{
  min-width:0;
  overflow-wrap:break-word;
  color:#29232F;
}

.region-ticket__facts dd{
  font-weight:750;
}

.region-ticket__body .region-ticket__foot{
  margin-bottom:0;
  font-size:var(--text-sm);
  line-height:1.6;
}

.region-plans.c-section,
.region-faq.c-section{
  padding-block:var(--space-section);
  background:#FFFFFF;
  color:#29232F;
}

.region-section-head{
  max-width:47rem;
  margin-bottom:var(--space-4);
}

.region-section-head h2,
.region-network h2{
  margin-bottom:var(--space-2);
}

.region-section-head > p,
.region-network__copy > p{
  margin-bottom:0;
  color:#5E5862;
}

.region-price-grid{
  align-items:stretch;
}

.region-price-card{
  min-width:0;
  height:100%;
  padding:var(--space-3);
}

.region-price-card__type{
  display:block;
  margin-bottom:var(--space-2);
  color:#514B55;
  font-size:var(--text-xs);
  font-weight:750;
  letter-spacing:.04em;
}

.region-price-card h3{
  margin-bottom:var(--space-2);
}

.region-price-card__specs{
  padding-bottom:var(--space-2);
  border-bottom:1px solid color-mix(in srgb,#29232F 14%,transparent);
  font-size:var(--text-sm);
  font-weight:750;
}

.region-price-card__use{
  margin:var(--space-2) 0 var(--space-3);
  color:#49434E;
  font-size:var(--text-sm);
}

.region-price-card__periods{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-2);
  width:100%;
  margin:0;
}

.region-price-card__periods > div{
  min-width:0;
  padding:var(--space-1) 0;
  border-top:1px solid color-mix(in srgb,#29232F 14%,transparent);
}

.region-price-card__periods dt{
  color:#514B55;
}

.region-price-card__periods dd{
  color:#29232F;
  font-family:var(--font-mono);
  font-size:var(--text-lg);
  font-variant-numeric:tabular-nums;
  font-weight:750;
}

.region-price-card__action{
  margin-top:auto;
  padding-top:var(--space-3);
}

.region-price-card__action .c-btn{
  max-width:100%;
  white-space:normal;
}

.region-plans__note{
  max-width:47rem;
  margin:var(--space-3) 0 0;
  color:#5E5862;
  font-size:var(--text-sm);
}

.region-network.c-section{
  padding-block:var(--space-section);
  background:var(--slate);
  color:#243039;
}

.region-network__inner{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:var(--space-4);
  align-items:start;
}

.region-network__copy > p{
  color:#35434A;
}

.region-network__copy > p + p{
  margin-top:var(--space-2);
}

.region-network__check{
  padding:var(--space-4);
  border-radius:var(--radius-card);
  background:#FFFFFF;
  color:#29232F;
}

.region-network__check h3{
  margin-bottom:var(--space-2);
}

.region-network__check ul{
  margin:0;
  padding-left:1.3rem;
}

.region-network__check li + li{
  margin-top:var(--space-1);
}

.region-network__check p{
  margin:var(--space-3) 0 0;
  color:#49434E;
  font-size:var(--text-sm);
}

.region-steps.c-section{
  padding-block:var(--space-section);
  background:#29232F;
  color:#F5F1F5;
}

.region-steps .region-section-head > p{
  color:#DDD6DF;
}

.region-steps__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));
  gap:var(--space-2);
  align-items:stretch;
  margin:0;
  padding:0;
  list-style:none;
}

.region-step{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  padding:var(--space-3);
  border-radius:var(--radius-card);
  background:#FFFFFF;
  color:#29232F;
}

.region-step__number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.5rem;
  height:2.5rem;
  margin-bottom:var(--space-2);
  border-radius:var(--radius-pill);
  background:#E8EEF0;
  color:#243039;
  font-size:var(--text-sm);
  font-weight:750;
}

.region-step h3{
  margin-bottom:var(--space-1);
}

.region-step p{
  margin-bottom:var(--space-3);
  color:#49434E;
  font-size:var(--text-sm);
}

.region-step__time{
  display:block;
  margin-top:auto;
  padding-top:var(--space-2);
  border-top:1px solid color-mix(in srgb,#29232F 14%,transparent);
  color:#514B55;
  font-size:var(--text-sm);
}

.region-faq__list{
  max-width:56rem;
  gap:0;
}

.region-faq .c-faq{
  padding:var(--space-3) 0;
  border-bottom:1px solid color-mix(in srgb,#29232F 14%,transparent);
  border-radius:0;
  background:#FFFFFF;
  color:#29232F;
}

.region-faq .c-faq:first-child{
  border-top:1px solid color-mix(in srgb,#29232F 14%,transparent);
}

.region-faq .c-faq__body{
  margin-top:var(--space-2);
  padding:var(--space-2) var(--space-2) 0;
  border-top:1px solid color-mix(in srgb,#29232F 14%,transparent);
  color:#49434E;
}

.region-close-section{
  padding-block:var(--space-section);
}

.region-close.c-closing{
  overflow:hidden;
  padding:var(--space-4);
  border-radius:var(--radius-stage);
  background:#29232F;
  color:#F5F1F5;
}

.region-close__inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(12rem,17rem);
  gap:var(--space-4);
  align-items:center;
}

.region-close h2{
  max-width:35rem;
  margin-bottom:var(--space-2);
}

.region-close p{
  max-width:35rem;
  margin-bottom:0;
  color:#DDD6DF;
}

.region-close__actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--space-2);
}

.region-close__actions .c-btn{
  width:100%;
  white-space:normal;
}

.region-close__actions .c-btn--ghost{
  border-color:color-mix(in srgb,#F5F1F5 45%,transparent);
  background:transparent;
  color:#F5F1F5;
}

[hidden]{
  display:none !important;
}

@media(max-width:64rem){
  .region-hero__inner,
  .region-network__inner{
    grid-template-columns:minmax(0,1fr);
  }

  .region-ticket{
    width:100%;
    height:auto;
  }
}

@media(max-width:42rem){
  .region-hero.c-page-hero{
    padding-block:var(--hero-top) var(--space-5);
  }

  .region-hero__inner{
    gap:var(--space-4);
  }

  .region-hero__copy h1{
    max-width:none;
  }

  .region-hero__actions{
    align-items:stretch;
  }

  .region-hero__actions .c-btn{
    width:100%;
    white-space:normal;
  }

  .region-ticket__body,
  .region-network__check{
    padding:var(--space-3);
  }

  .region-ticket__facts > div{
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-1);
  }

  .region-price-grid{
    grid-template-columns:minmax(0,1fr);
  }

  .region-price-card__action .c-btn{
    width:100%;
  }

  .region-close__inner{
    grid-template-columns:minmax(0,1fr);
  }
}

@media(prefers-reduced-motion:reduce){
  .region-hero__actions .c-btn,
  .region-price-card__action .c-btn,
  .region-close__actions .c-btn{
    transition:none;
  }
}
