.faq-page main{
  background:#FFFFFF;
  color:#202426
}

.faq-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,31rem);
  gap:var(--space-4);
  align-items:start;
  padding-block:var(--hero-pad);
  background:#FFFFFF;
  color:#202426
}

.faq-hero .hero-copy{
  min-width:0;
  padding-top:var(--space-2)
}

.faq-hero h1{
  max-width:46rem;
  overflow-wrap:anywhere
}

.faq-hero-lead{
  max-width:43rem;
  margin-top:var(--space-3);
  color:#555B59;
  font-size:var(--text-md)
}

.faq-hero-actions{
  justify-content:flex-start;
  margin-top:var(--space-3)
}

.faq-price-note{
  max-width:42rem;
  margin-top:var(--space-2);
  color:#555B59
}

.faq-price-note .u-mono{
  color:#873515;
  font-weight:700
}

.faq-hero-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-1);
  max-width:42rem;
  margin:var(--space-3) 0 var(--space-3);
  padding-top:var(--space-2);
  border-top:1px solid color-mix(in srgb,#202426 13%,transparent)
}

.faq-hero-facts div{
  min-width:0
}

.faq-hero-facts dt,
.faq-hero-facts dd{
  min-width:0;
  overflow-wrap:anywhere
}

.faq-hero-facts dt{
  color:#555B59
}

.faq-hero-facts dd{
  margin-top:.25rem;
  color:#202426;
  font-family:var(--font-mono);
  font-weight:700;
  font-variant-numeric:tabular-nums
}

.faq-hero .hero-stage,
.faq-hero .hero-stage[data-hero-face="confirmed-draft"]{
  min-width:0;
  min-height:0;
  height:auto;
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:#202426;
  color:#F7F7F4
}

.faq-hero .hero-stage-head{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-2);
  padding:var(--space-2) var(--space-3);
  background:#202426;
  color:#F7F7F4;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700
}

.faq-hero .hero-art{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-areas:none;
  gap:var(--space-3);
  width:100%;
  height:auto;
  padding:var(--space-3);
  overflow:visible;
  transform:none;
  background:#DDE9F2;
  color:#1D2D38
}

.faq-hero .hero-art svg{
  grid-area:auto;
  width:1rem;
  height:1rem;
  border-radius:0;
  background:none
}

.faq-desk-ticket{
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  color:#202426
}

.faq-desk-ticket-main{
  background:#F3EEDD;
  color:#25251F
}

.faq-desk-ticket-route{
  background:#DDEBE8;
  color:#17312E
}

.faq-desk-ticket-access{
  background:#E3E2F2;
  color:#29263B
}

.faq-desk-label{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-2);
  margin-bottom:var(--space-2);
  color:inherit;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700
}

.faq-desk-label span{
  min-width:0;
  overflow-wrap:anywhere
}

.faq-desk-ticket h2{
  margin-bottom:var(--space-2);
  color:inherit;
  font-size:var(--text-lg);
  line-height:1.25;
  letter-spacing:-.03em
}

.faq-desk-ticket dl{
  display:grid;
  gap:0;
  margin:0
}

.faq-desk-ticket dl div{
  display:grid;
  grid-template-columns:minmax(7.5rem,.8fr) minmax(0,1fr);
  gap:var(--space-2);
  min-width:0;
  padding-block:.55rem;
  border-top:1px solid color-mix(in srgb,currentColor 14%,transparent)
}

.faq-desk-ticket dt,
.faq-desk-ticket dd{
  min-width:0;
  color:inherit;
  overflow-wrap:anywhere
}

.faq-desk-ticket dd{
  text-align:right;
  font-weight:700
}

.faq-desk-ticket-route ul{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:.45rem;
  padding:0;
  list-style:none
}

.faq-desk-ticket-route li{
  display:grid;
  grid-template-columns:3.25rem minmax(0,1fr);
  align-items:center;
  min-width:0;
  gap:.2rem var(--space-2);
  padding:.7rem .9rem;
  border-radius:var(--radius-sm);
  background:#FFFFFF;
  color:#202426;
  text-align:left
}

.faq-desk-ticket-route li span{
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700
}

.faq-desk-ticket-route li strong{
  min-width:0;
  font-size:var(--text-sm);
  line-height:1.35
}

.faq-access-state{
  display:inline-flex;
  width:fit-content;
  align-items:center;
  gap:.4em;
  padding:.4em .9em;
  border-radius:999px;
  background:#FFFFFF;
  color:#202426;
  line-height:1
}

.faq-access-flow{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.3fr);
  gap:.45rem;
  align-items:center;
  min-width:0
}

.faq-access-flow span{
  min-width:0;
  padding:.65rem .5rem;
  border-radius:var(--radius-sm);
  background:#FFFFFF;
  color:#202426;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700;
  text-align:center;
  overflow-wrap:anywhere
}

.faq-access-flow svg{
  width:1rem;
  height:1rem;
  color:#873515
}

.faq-section-soft{
  padding-block:var(--section-pad);
  background:#FCFBF8;
  color:#202426
}

.faq-config-layout{
  display:grid;
  grid-template-columns:minmax(18rem,.78fr) minmax(0,1.22fr);
  gap:var(--space-3);
  align-items:start
}

.faq-single-plan{
  min-width:0;
  padding-inline:var(--space-4);
  background:#F3EEDD;
  color:#25251F
}

.faq-single-plan .c-badge{
  align-self:flex-start;
  margin-bottom:var(--space-2)
}

.faq-single-plan h3{
  color:#25251F
}

.faq-single-plan .c-price-card-price small{
  margin-left:.35rem;
  color:#5E5545;
  font-family:var(--font-body);
  font-size:var(--text-sm);
  letter-spacing:0
}

.faq-single-plan .c-price-card-specs span{
  display:grid;
  gap:.2rem;
  background:#FFFFFF;
  color:#202426
}

.faq-single-plan .c-price-card-specs small{
  color:#555B59
}

.faq-single-plan>p:not(.c-price-card-price){
  margin-bottom:var(--space-3);
  color:#4F4C42
}

.faq-single-plan .c-btn{
  margin-top:0
}

.faq-surface{
  min-width:0;
  padding-inline:var(--space-3);
  border-radius:var(--radius-md)
}

.faq-surface details{
  color:inherit
}

.faq-surface summary{
  color:inherit
}

.faq-surface .faq-answer{
  max-width:none;
  padding:var(--space-2) var(--space-3) var(--space-3);
  border-top:1px solid color-mix(in srgb,currentColor 13%,transparent);
  color:inherit
}

.faq-surface .faq-answer p{
  max-width:52rem;
  color:inherit
}

.faq-surface .faq-answer a:not(.c-btn){
  color:#6F2A10;
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.2em
}

.faq-surface-sand,
.faq-surface-sand details{
  background:#F3EEDD;
  color:#25251F
}

.faq-surface-blue,
.faq-surface-blue details{
  background:#DDE9F2;
  color:#1D2D38
}

.faq-surface-lavender,
.faq-surface-lavender details{
  background:#E3E2F2;
  color:#29263B
}

.faq-surface-mint,
.faq-surface-mint details{
  background:#DDEBE8;
  color:#17312E
}

.faq-surface-rose,
.faq-surface-rose details{
  background:#F1E2E5;
  color:#38242A
}

.faq-surface details:first-child{
  border-top-color:color-mix(in srgb,currentColor 13%,transparent)
}

.faq-surface details{
  border-bottom-color:color-mix(in srgb,currentColor 13%,transparent)
}

.faq-period-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--space-2)
}

.faq-period-card{
  display:flex;
  min-width:0;
  min-height:11rem;
  flex-direction:column;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#F3EEDD;
  color:#25251F
}

.faq-period-card:nth-child(2){
  background:#DDEBE8;
  color:#17312E
}

.faq-period-card:nth-child(3){
  background:#E3E2F2;
  color:#29263B
}

.faq-period-card:nth-child(4){
  background:#DDE9F2;
  color:#1D2D38
}

.faq-period-card span{
  font-family:var(--font-heading);
  font-weight:700
}

.faq-period-card strong{
  margin-top:var(--space-1);
  color:inherit;
  font-size:clamp(1.75rem,4cqi,2.55rem);
  line-height:1.1;
  letter-spacing:-.04em;
  overflow-wrap:anywhere
}

.faq-period-card small{
  margin-top:auto;
  padding-top:var(--space-2);
  color:inherit
}

.faq-follow-block{
  margin-top:var(--space-4)
}

.faq-region-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));
  gap:var(--space-2);
  align-items:stretch
}

.faq-region-card{
  display:flex;
  height:100%;
  min-width:0;
  flex-direction:column;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#DDEBE8;
  color:#17312E
}

.faq-region-card:nth-child(2){
  background:#E3E2F2;
  color:#29263B
}

.faq-region-card:nth-child(3){
  background:#DDE9F2;
  color:#1D2D38
}

.faq-region-card:nth-child(4){
  background:#F1E2E5;
  color:#38242A
}

.faq-region-card:nth-child(5){
  background:#F3EEDD;
  color:#25251F
}

.faq-region-code{
  width:fit-content;
  margin-bottom:var(--space-2);
  padding:.4em .8em;
  border-radius:999px;
  background:#FFFFFF;
  color:#202426;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700;
  line-height:1
}

.faq-region-card h3{
  color:inherit;
  font-size:var(--text-md)
}

.faq-region-card p{
  margin-top:var(--space-1);
  margin-bottom:var(--space-3);
  color:inherit
}

.faq-region-card .c-badge{
  margin-top:auto;
  background:#FFFFFF;
  color:#202426
}

.faq-access-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-3);
  align-items:stretch
}

.faq-access-card{
  min-width:0;
  padding-inline:var(--space-3)
}

.faq-access-card .c-icon-well{
  margin-bottom:var(--space-2);
  background:#FFFFFF;
  color:#873515
}

.faq-access-card h3{
  color:inherit;
  font-size:var(--text-md)
}

.faq-access-card p{
  margin-top:var(--space-1);
  margin-bottom:var(--space-3);
  color:inherit
}

.faq-access-card .c-btn{
  margin-top:var(--space-3)
}

.faq-glossary-section{
  padding-block:var(--section-pad);
  background:#202426;
  color:#F7F7F4
}

.faq-glossary-section .c-section-head p{
  color:#C3C8C6
}

.faq-glossary-section .c-kicker{
  background:#F3EEDD;
  color:#25251F
}

.faq-glossary-section .c-kicker::before{
  background:#873515
}

.faq-glossary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-2);
  margin:0
}

.faq-glossary-grid div{
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#2C3132;
  color:#F7F7F4
}

.faq-glossary-grid dt,
.faq-glossary-grid dd{
  min-width:0;
  overflow-wrap:anywhere
}

.faq-glossary-grid dt{
  color:#FFFFFF;
  font-family:var(--font-heading);
  font-size:var(--text-md);
  font-weight:700
}

.faq-glossary-grid dd{
  margin-top:var(--space-1);
  color:#D0D5D3;
  font-size:var(--text-base)
}

.faq-lifecycle-list{
  display:grid;
  gap:0
}

.faq-lifecycle-row{
  display:grid;
  grid-template-columns:2.5rem minmax(7.5rem,11rem) minmax(0,1fr);
  gap:var(--space-3);
  align-items:start;
  min-width:0;
  padding:var(--space-3);
  border-top:1px solid color-mix(in srgb,#202426 13%,transparent)
}

.faq-lifecycle-row:last-child{
  border-bottom:1px solid color-mix(in srgb,#202426 13%,transparent)
}

.faq-step-number{
  display:inline-flex;
  width:2.5rem;
  height:2.5rem;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#873515;
  color:#FFFFFF;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700;
  line-height:1
}

.faq-lifecycle-row h3{
  min-width:0;
  color:#202426;
  font-size:var(--text-md);
  overflow-wrap:anywhere
}

.faq-lifecycle-row p{
  min-width:0;
  color:#555B59;
  overflow-wrap:anywhere
}

.faq-closing-section{
  padding-top:var(--section-pad);
  padding-bottom:var(--space-4);
  background:#FFFFFF;
  color:#202426
}

.faq-closing{
  padding-inline:clamp(var(--space-3),5vw,var(--space-6));
  background:#873515;
  color:#FFFFFF
}

.faq-closing h2{
  color:#FFFFFF
}

.faq-closing p{
  color:#F4DED3
}

.faq-closing-label{
  display:inline-flex;
  width:fit-content;
  align-items:center;
  gap:.4em;
  margin-bottom:var(--space-2);
  padding:.4em .9em;
  border-radius:999px;
  background:#F3EEDD;
  color:#25251F;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:700;
  line-height:1
}

.faq-closing-actions{
  display:flex;
  min-width:13rem;
  flex-direction:column;
  align-items:center;
  gap:var(--space-2)
}

.faq-closing-actions .c-btn{
  width:100%
}

.faq-closing-primary{
  background:#FFFFFF;
  color:#6F2A10
}

.faq-closing-primary:hover{
  background:#F3EEDD;
  color:#6F2A10
}

.faq-closing .c-btn-ghost{
  color:#FFFFFF;
  border-color:rgba(255,255,255,.46)
}

.faq-closing .c-btn-ghost:hover{
  background:rgba(255,255,255,.1);
  color:#FFFFFF
}

@media (max-width:64rem){
  .faq-hero{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-hero .hero-stage{
    width:min(calc(100% - var(--gutter)*2),100%);
    height:auto;
    margin-inline:auto;
    overflow:hidden;
    transform:none
  }

  .faq-hero .hero-art{
    grid-template-columns:minmax(0,1fr);
    width:min(calc(100% - var(--gutter)*2),100%);
    height:auto;
    margin-inline:auto;
    overflow:visible;
    transform:none
  }

  .faq-config-layout{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-access-grid{
    grid-template-columns:minmax(0,1fr)
  }
}

@media (max-width:48rem){
  .faq-period-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .faq-glossary-grid{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-desk-ticket-route ul{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .faq-desk-ticket-route li:last-child{
    grid-column:1/-1
  }
}

@media (max-width:42rem){
  .faq-hero{
    gap:var(--space-3)
  }

  .faq-hero .hero-copy{
    padding-top:0
  }

  .faq-hero-actions{
    width:100%
  }

  .faq-hero-actions .c-btn{
    width:100%
  }

  .faq-hero-facts{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-hero .hero-stage-head{
    align-items:flex-start;
    flex-direction:column
  }

  .faq-hero .hero-art{
    padding:var(--space-2)
  }

  .faq-desk-ticket{
    padding:var(--space-3)
  }

  .faq-desk-ticket dl div{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-desk-ticket dd{
    text-align:left
  }

  .faq-access-flow{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-access-flow svg{
    margin-inline:auto;
    transform:rotate(90deg)
  }

  .faq-period-grid{
    grid-template-columns:minmax(0,1fr)
  }

  .faq-period-card{
    min-height:0
  }

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

  .faq-lifecycle-row{
    grid-template-columns:2.25rem minmax(0,1fr);
    gap:var(--space-2)
  }

  .faq-lifecycle-row>:nth-child(3){
    grid-column:2
  }

  .faq-step-number{
    width:2.25rem;
    height:2.25rem
  }

  .faq-surface{
    padding-inline:var(--space-2)
  }

  .faq-surface .faq-answer{
    padding-inline:var(--space-2)
  }

  .faq-closing-actions{
    width:100%;
    min-width:0
  }
}
