/* ARCO PASS · proposta (mobile-first) */
.hero { position: relative; color: #fff; overflow: hidden; background: var(--mar-escuro); }
.hero__foto { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .55; }
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 61, 82, .35) 0%, rgba(10, 61, 82, .92) 75%); }
.hero__conteudo { position: relative; z-index: 1; padding-block: var(--s-10) var(--s-12); }
.hero__marcas { display: flex; align-items: center; gap: var(--s-3); margin-bottom: var(--s-8); flex-wrap: wrap; }
.hero__logo { width: clamp(140px, 30vw, 200px); height: auto; }
.hero__x { opacity: .6; font-size: var(--t-lg); }
.hero__fab { font-weight: 800; letter-spacing: .02em; font-size: var(--t-lg); }
.hero__kicker { color: var(--sol); }
.hero h1 { font-size: clamp(1.9rem, 1.3rem + 3.4vw, 3.6rem); max-width: 18ch; color: #fff; margin-bottom: var(--s-4); }
.hero__sub { font-size: var(--t-lg); max-width: 54ch; opacity: .92; }
.escada-premio { list-style: none; padding: 0; margin: var(--s-6) 0 0; display: flex; align-items: flex-end; gap: var(--s-2); }
.escada-premio li { background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .2); border-radius: var(--r-sm); padding: 8px 14px; text-align: center; min-width: 64px; }
.escada-premio li:nth-child(1) { padding-top: 8px; }
.escada-premio li:nth-child(2) { padding-top: 18px; }
.escada-premio li.on { padding-top: 30px; background: var(--sol); color: #1B2430; border-color: var(--sol); }
.escada-premio b { display: block; font-family: var(--f-titulo); font-size: var(--t-xl); line-height: 1; }
.escada-premio span { font-size: var(--t-xs); font-weight: 700; }

.sec { padding-block: clamp(48px, 8vw, 96px); }
.sec--areia { background: var(--bg-2); }
.sec--fina { padding-block: var(--s-10); border-top: 1px solid var(--borda); border-bottom: 1px solid var(--borda); }
.sec h2 { max-width: 22ch; }

.dores { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); margin-top: var(--s-6); }
.dor { background: var(--superficie); border: 1px solid var(--borda); border-radius: var(--r-md); padding: var(--s-6); box-shadow: var(--sombra-1); position: relative; overflow: hidden; }
.dor::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: var(--sunset); }
.dor:nth-child(2)::before { background: var(--sol); }
.dor:nth-child(3)::before { background: var(--reserva); }
.dor__num { font-family: var(--f-titulo); font-size: var(--t-2xl); font-weight: 700; color: var(--acao); line-height: 1; display: block; margin-bottom: var(--s-3); }
.dor h3 { font-size: var(--t-lg); }
.dor p { color: var(--texto-2); margin: 0; }

.pass { display: grid; gap: var(--s-10); align-items: center; }
.pass > * { min-width: 0; }
@media (min-width: 900px) { .pass { grid-template-columns: 1.2fr .8fr; } }
.modulos { list-style: none; padding: 0; margin: var(--s-6) 0; display: grid; gap: var(--s-4); }
.modulos li { display: grid; grid-template-columns: 48px 1fr; gap: var(--s-3); align-items: start; }
.modulos li > * { min-width: 0; }
.modulos__ic { width: 48px; height: 48px; border-radius: 14px; background: var(--superficie); display: grid; place-items: center; font-size: 24px; box-shadow: var(--sombra-1); }
.modulos b { font-size: var(--t-md); }
.modulos p { margin: 2px 0 0; color: var(--texto-2); font-size: var(--t-sm); }
.pass__celular { display: flex; justify-content: center; text-decoration: none; color: inherit; }
.pass__celular .celular { width: min(300px, 100%); height: auto; aspect-ratio: 9 / 18.5; border-radius: 44px; padding: 10px; transition: transform .3s; }
.pass__celular:hover .celular { transform: translateY(-4px) rotate(-1deg); }
.pass__celular .celular__tela { border-radius: 34px; position: relative; }
.pass__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pass__overlay { position: absolute; left: 12px; right: 12px; bottom: 14px; background: rgba(255, 255, 255, .94); color: #1B2430; border-radius: 20px; padding: 14px; display: grid; gap: 4px; justify-items: start; }
.pass__hora { margin: 6px 0 0; font-size: 12px; font-weight: 800; color: #C24E12; text-transform: uppercase; letter-spacing: .06em; }
.pass__titulo { margin: 0 0 6px; font-family: var(--f-titulo); font-size: 1.4rem; font-weight: 700; }

.prova { background: var(--mar-escuro); color: #fff; }
.prova h2 { color: #fff; }
.prova .kicker { color: var(--sol); }
.prova__grid { display: grid; gap: var(--s-6); align-items: center; }
.prova__grid > * { min-width: 0; }
@media (min-width: 760px) { .prova__grid { grid-template-columns: auto 1fr; gap: var(--s-12); } }
.prova__num { font-family: var(--f-titulo); font-weight: 700; font-size: clamp(4rem, 2.5rem + 8vw, 8rem); line-height: .9; background: linear-gradient(90deg, var(--sunset), var(--sol)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.prova p { opacity: .9; max-width: 56ch; }

.tabela-wrap { background: var(--superficie); border-radius: var(--r-md); border: 1px solid var(--borda); padding: var(--s-2) var(--s-4); margin: var(--s-5) 0 var(--s-3); }
.tabela td:first-child { width: 55%; }

.degraus { list-style: none; padding: 0; margin: var(--s-6) 0 0; display: grid; gap: var(--s-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); align-items: end; }
.degrau { background: var(--superficie); border: 1px solid var(--borda); border-radius: var(--r-md); padding: var(--s-6); position: relative; box-shadow: var(--sombra-1); min-width: 0; }
.degrau h3 { font-size: var(--t-lg); }
.degrau__passo { font-size: var(--t-xs); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: var(--texto-2); display: block; margin-bottom: var(--s-2); }
.degrau__preco { font-family: var(--f-titulo); font-weight: 700; font-size: var(--t-xl); margin: 0 0 var(--s-2); color: var(--primaria); }
.degrau__det { margin: 0; font-size: var(--t-sm); color: var(--texto-2); }
.degrau--1 { border: 2px solid var(--acao); box-shadow: var(--sombra-2); }
.degrau--1 .degrau__passo { color: var(--acao); }
.degrau--1 .degrau__preco { color: var(--acao); font-size: var(--t-2xl); }
@media (min-width: 900px) {
  .degrau--2 { margin-bottom: var(--s-6); }
  .degrau--3 { margin-bottom: var(--s-12); }
}
.pior { margin-top: var(--s-6); display: flex; gap: var(--s-4); align-items: center; flex-wrap: wrap; background: var(--superficie-2); border: 1px dashed var(--borda); border-radius: var(--r-md); padding: var(--s-4) var(--s-5); }
.pior__rot { font-size: var(--t-xs); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; background: var(--tinta); color: #fff; padding: 4px 10px; border-radius: var(--r-pill); }
.pior__txt { margin: 0; font-family: var(--f-titulo); font-size: var(--t-lg); font-weight: 600; }

.prox__txt { font-size: var(--t-lg); margin: 0; max-width: 60ch; }

.cta { background: linear-gradient(135deg, #C24E12, #E86624 55%, #F6A23B); color: #fff; }
.cta h2 { color: #fff; }
.cta__grid { display: grid; gap: var(--s-6); align-items: center; }
.cta__grid > * { min-width: 0; }
@media (min-width: 860px) { .cta__grid { grid-template-columns: 1fr auto; } }
.cta p { font-size: var(--t-lg); max-width: 46ch; }
.cta__btn { background: #fff; color: #A9420E; box-shadow: 0 10px 30px rgba(0, 0, 0, .2); font-size: var(--t-lg); min-height: 56px; }
.cta__btn:hover { background: #FFF4E8; }
.cta__acoes { display: grid; gap: var(--s-2); justify-items: start; }
.cta__acoes .small { margin: 0; opacity: .9; }
