/* ================================================================
   Creator Summit ES 2026 — main.css (non-critical, loaded async)
   Tokens estão inlined em index.html. Aqui só seções e componentes.
   ================================================================ */

/* ───────── Utilities ───────── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.text-lime{color:var(--cs-lime)}
.text-purple{color:var(--cs-purple-bright)}
.placeholder{display:inline-block;padding:.0625rem .4rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--cs-purple-bright) 18%,transparent);color:#c7b3ff;border:1px dashed color-mix(in srgb,var(--cs-purple-bright) 40%,transparent);font-family:var(--cs-font-display);font-size:.75rem;font-weight:600;letter-spacing:.02em}

/* ───────── Section base ───────── */
.section{padding-block:var(--space-12)}
@media (min-width:768px){.section{padding-block:var(--space-16)}}
@media (min-width:1024px){.section{padding-block:var(--space-24)}}

.section--dark{background:var(--cs-surface);position:relative}
.section--dark::before,.section--dark::after{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cs-border),transparent)}
.section--dark::before{top:0}.section--dark::after{bottom:0}

.section__header{text-align:center;max-width:48rem;margin:0 auto var(--space-8)}
@media (min-width:768px){.section__header{margin-bottom:var(--space-12)}}
.section__eyebrow{display:inline-block;color:var(--cs-purple-bright);font-family:var(--cs-font-body);font-size:var(--fs-label);font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-bottom:var(--space-3)}
.section__eyebrow--lime{color:var(--cs-lime)}
.section__title{font-family:var(--cs-font-display);font-size:var(--fs-h2);font-weight:700;letter-spacing:-.02em;line-height:1.05;text-transform:uppercase;text-align:center;margin-bottom:var(--space-4);text-wrap:balance}
.section__lead{color:var(--cs-text-muted);font-size:var(--fs-md);line-height:1.6;text-align:center;max-width:56ch;margin-inline:auto}
@media (min-width:768px){.section__lead{font-size:var(--fs-lg)}}

.container--narrow{max-width:48rem}

/* ───────── Modal Ingresso ───────── */
dialog.modal-ingresso{padding:0;border:0;background:transparent;max-width:min(calc(100% - 2rem),26rem);width:100%;border-radius:var(--radius-2xl);margin:auto}
dialog.modal-ingresso::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.modal-ingresso__inner{background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-2xl);padding:var(--space-8) var(--space-6);position:relative}
@media (min-width:480px){.modal-ingresso__inner{padding:var(--space-8)}}
.modal-ingresso__close{position:absolute;top:var(--space-4);right:var(--space-4);width:2.25rem;height:2.25rem;border-radius:var(--radius);background:var(--cs-surface-elev);border:1px solid var(--cs-border);color:var(--cs-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
.modal-ingresso__close:hover{background:var(--cs-border);color:var(--cs-text)}
.modal-ingresso__header{margin-bottom:var(--space-6);padding-right:var(--space-8)}
.modal-ingresso__tier{display:inline-block;padding:.25rem .625rem;background:color-mix(in srgb,var(--cs-lime) 16%,transparent);color:var(--cs-lime);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--space-3)}
.modal-ingresso__title{font-family:var(--cs-font-display);font-size:var(--fs-h3);font-weight:700;letter-spacing:-.02em;text-transform:uppercase;margin-bottom:var(--space-2);line-height:1.05}
.modal-ingresso__sub{color:var(--cs-text-muted);font-size:var(--fs-sm);line-height:1.5}
.modal-ingresso__form{display:flex;flex-direction:column;gap:var(--space-4)}
.modal-ingresso__field{display:flex;flex-direction:column;gap:.375rem}
.modal-ingresso__field label{font-size:var(--fs-sm);font-weight:500;color:var(--cs-text)}
.modal-ingresso__field input{height:3rem;padding:.75rem 1rem;background:var(--cs-bg);border:1px solid var(--cs-border);border-radius:var(--radius);color:var(--cs-text);font-family:var(--cs-font-body);font-size:var(--fs-body);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}
.modal-ingresso__field input:focus{outline:none;border-color:var(--cs-lime);box-shadow:0 0 0 3px color-mix(in srgb,var(--cs-lime) 18%,transparent)}
.modal-ingresso__field input.is-invalid{border-color:#ef4444}
.modal-ingresso__field input.is-invalid:focus{box-shadow:0 0 0 3px rgba(239,68,68,.18)}
.modal-ingresso__error{font-size:var(--fs-xs);color:#ef4444;display:none}
.modal-ingresso__error.is-visible{display:block}
.modal-ingresso__input-group{display:flex;align-items:stretch}
.modal-ingresso__prefix{display:flex;align-items:center;padding:.75rem .75rem;background:var(--cs-surface-elev);border:1px solid var(--cs-border);border-right:0;border-radius:var(--radius) 0 0 var(--radius);font-size:var(--fs-sm);color:var(--cs-text-muted);white-space:nowrap;flex-shrink:0}
.modal-ingresso__input-group input{border-radius:0 var(--radius) var(--radius) 0;flex:1}

/* Modal VIP — usa paleta roxa em vez de lime */
.modal-ingresso--vip .modal-ingresso__tier{background:color-mix(in srgb,var(--cs-purple-bright) 18%,transparent);color:var(--cs-purple-bright)}
.modal-ingresso--vip .modal-ingresso__field input:focus{border-color:var(--cs-purple-bright);box-shadow:0 0 0 3px color-mix(in srgb,var(--cs-purple-bright) 18%,transparent)}

/* ───────── Brand marquee (faixa passante de marcas confirmadas) ───────── */
.brand-marquee{padding-block:var(--space-6);position:relative}
@media (min-width:768px){.brand-marquee{padding-block:var(--space-6) var(--space-10)}}
.brand-marquee__label{text-align:center;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.16em;color:var(--cs-text-dim);font-weight:600;margin-bottom:var(--space-5)}
@media (min-width:768px){.brand-marquee__label{margin-bottom:var(--space-6)}}
.brand-marquee__viewport{background:var(--cs-surface);border-block:1px solid var(--cs-border);padding-block:var(--space-6);overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 8%,#000 92%,transparent 100%)}
@media (min-width:768px){.brand-marquee__viewport{padding-block:var(--space-8)}}
.brand-marquee__track{display:flex;align-items:center;gap:var(--space-10);width:max-content;animation:cs-logo-scroll 120s linear infinite;opacity:.6}
@media (min-width:768px){.brand-marquee__track{gap:var(--space-12)}}
.brand-marquee__track img{height:1.5rem;width:auto;max-width:8rem;object-fit:contain;filter:brightness(0) invert(1);flex-shrink:0}
@media (min-width:768px){.brand-marquee__track img{height:2rem;max-width:10rem}}
.brand-marquee__track img.brand-marquee__img--tall{height:2.25rem;max-width:7rem}
@media (min-width:768px){.brand-marquee__track img.brand-marquee__img--tall{height:3rem;max-width:9rem}}
.brand-marquee__track img.brand-marquee__img--square{height:3rem;max-width:3.75rem}
@media (min-width:768px){.brand-marquee__track img.brand-marquee__img--square{height:3.75rem;max-width:4.5rem}}
@keyframes cs-logo-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.brand-marquee__track{animation:none;flex-wrap:wrap;justify-content:center;width:100%}.brand-marquee__viewport{mask-image:none;-webkit-mask-image:none}}

/* ───────── Section CTA (botão centralizado no fim de uma seção) ───────── */
.section__cta{display:flex;justify-content:center;margin-top:var(--space-10)}
@media (min-width:768px){.section__cta{margin-top:var(--space-12)}}

/* ───────── Benefits grid (cards "Por que estar lá" — 3 colunas com símbolos do brand) ───────── */
.benefits-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}
@media (min-width:768px){.benefits-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-6)}}
.benefit-card{position:relative;display:flex;flex-direction:column;background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-2xl);padding:var(--space-6);transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-med) var(--ease-out)}
@media (min-width:1024px){.benefit-card{padding:var(--space-8)}}
.benefit-card:hover{border-color:color-mix(in srgb,var(--cs-purple-bright) 50%,var(--cs-border));transform:translateY(-3px)}
.benefit-card__icon{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border-radius:var(--radius-xl);background:color-mix(in srgb,var(--cs-purple-bright) 14%,transparent);color:var(--cs-purple-bright);margin-bottom:var(--space-5)}
.benefit-card__icon svg{width:1.75rem;height:1.75rem;display:block}
.benefit-card__title{font-family:var(--cs-font-display);font-size:1.25rem;font-weight:700;letter-spacing:-.015em;line-height:1.1;text-transform:uppercase;color:var(--cs-text);margin-bottom:var(--space-3)}
@media (min-width:1024px){.benefit-card__title{font-size:1.375rem}}
.benefit-card__lead{font-size:.9375rem;line-height:1.45;color:var(--cs-lime);font-weight:600;margin-bottom:var(--space-4)}
.benefit-card__body{font-size:.9375rem;line-height:1.6;color:var(--cs-text-muted)}

/* ───────── Audience (para quem) ───────── */
.audience-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}
@media (min-width:768px){.audience-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-6)}}
.audience-card{background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-2xl);padding:var(--space-6) var(--space-5);position:relative;overflow:hidden;transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-med) var(--ease-out)}
@media (min-width:768px){.audience-card{padding:var(--space-8)}}
.audience-card:hover{border-color:color-mix(in srgb,var(--cs-purple-bright) 50%,var(--cs-border));transform:translateY(-2px)}
.audience-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--cs-purple-bright)}
.audience-card--creator::before{background:var(--cs-lime)}
.audience-card__tag{display:inline-block;padding:.25rem .625rem;background:var(--cs-purple-soft);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:600;color:var(--cs-purple-bright);letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--space-4)}
.audience-card--creator .audience-card__tag{background:color-mix(in srgb,var(--cs-lime) 18%,transparent);color:var(--cs-lime)}
.audience-card__title{font-family:var(--cs-font-display);font-size:var(--fs-h3);font-weight:700;letter-spacing:-.015em;line-height:1.2;text-transform:none;margin-bottom:var(--space-5);text-wrap:balance}
.audience-card__title .text-lime{display:block}
.audience-card__list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-3)}
.audience-card__list li{position:relative;padding-left:1.75rem;color:var(--cs-text);font-size:.9375rem;line-height:1.55}
.audience-card__list li::before{content:"";position:absolute;left:.125rem;top:.5em;width:.875rem;height:.875rem;background:var(--cs-purple-bright);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);border-radius:1px}
.audience-card--creator .audience-card__list li::before{background:var(--cs-lime)}

/* ───────── Timeline (programação) ───────── */
.timeline{list-style:none;padding:0 0 0 var(--space-6);margin:0 auto;max-width:44rem;position:relative}
.timeline::before{content:"";position:absolute;left:.5rem;top:.75rem;bottom:.75rem;width:2px;background:linear-gradient(to bottom,transparent 0,var(--cs-border) 8%,var(--cs-border) 92%,transparent 100%)}
.timeline__phase{position:relative;display:flex;flex-direction:column;gap:.125rem;padding:var(--space-6) 0 var(--space-3);margin-left:calc(-1 * var(--space-6));padding-left:var(--space-6)}
.timeline__phase:first-child{padding-top:0}
.timeline__phase::before{content:"";position:absolute;left:0;top:calc(var(--space-6) + .25rem);width:1.125rem;height:1.125rem;background:var(--cs-lime);border-radius:50%;box-shadow:0 0 0 5px var(--cs-surface),0 0 16px var(--cs-lime)}
.timeline__phase:first-child::before{top:.25rem}
.timeline__phase-label{font-family:var(--cs-font-display);font-size:var(--fs-h3);font-weight:700;text-transform:uppercase;letter-spacing:-.01em;color:var(--cs-lime);line-height:1.05}
.timeline__phase-sub{font-family:var(--cs-font-body);font-size:var(--fs-sm);color:var(--cs-text-muted);letter-spacing:.02em}
.timeline__item{position:relative;display:grid;grid-template-columns:6.75rem 1fr;gap:1rem;padding:var(--space-4) 0;align-items:start}
@media (max-width:480px){.timeline__item{grid-template-columns:1fr;gap:.375rem}}
.timeline__item::before{content:"";position:absolute;left:-1.375rem;top:1.35rem;width:.75rem;height:.75rem;background:var(--cs-surface);border:2px solid var(--cs-lime);border-radius:50%;box-shadow:0 0 0 3px var(--cs-surface)}
.timeline__item--soft::before{border-color:var(--cs-border)}
.timeline__item--soft .timeline__title{color:var(--cs-text-muted);font-weight:500}
.timeline__time{font-family:var(--cs-font-display);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--cs-text-muted);padding-top:.375rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.timeline__body{display:flex;flex-direction:column;gap:.25rem;min-width:0}
.timeline__tag{display:inline-block;align-self:flex-start;font-family:var(--cs-font-display);font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--cs-lime);background:rgba(191,255,52,.08);border:1px solid color-mix(in srgb,var(--cs-lime) 30%,transparent);padding:.1875rem .5rem;border-radius:var(--radius-full);margin-bottom:.125rem}
.timeline__title{font-family:var(--cs-font-display);font-size:1.0625rem;font-weight:600;text-transform:none;letter-spacing:-.01em;color:var(--cs-text);line-height:1.25}
.timeline__desc{font-size:var(--fs-sm);color:var(--cs-text-muted);line-height:1.55}
.timeline__note{text-align:center;color:var(--cs-text-dim);font-size:var(--fs-sm);margin-top:var(--space-8);font-style:italic;max-width:38rem;margin-inline:auto}

/* ───────── Speakers ───────── */
.speakers-marquee{position:relative;width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%)}
.speakers-marquee__track{list-style:none;padding:0;margin:0;display:flex;width:max-content;gap:var(--space-4);animation:cs-speakers-scroll 55s linear infinite;will-change:transform}
.speakers-marquee:hover .speakers-marquee__track,.speakers-marquee:focus-within .speakers-marquee__track{animation-play-state:paused}
@media (min-width:1024px){.speakers-marquee__track{gap:var(--space-5)}}
@keyframes cs-speakers-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.speakers-marquee{mask-image:none;-webkit-mask-image:none}.speakers-marquee__track{animation:none;flex-wrap:wrap;justify-content:center;width:100%}.speakers-marquee__track>[aria-hidden="true"]{display:none}}
.speaker-card{flex:0 0 13.5rem;display:flex;flex-direction:column;background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-xl);overflow:hidden;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}
@media (min-width:1024px){.speaker-card{flex-basis:15.5rem}}
.speaker-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--cs-lime) 50%,var(--cs-border))}
.speaker-card__photo{width:100%;aspect-ratio:4/5;background:#0f0f16;position:relative;overflow:hidden}
.speaker-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.speaker-card:not(.speaker-card--tba) .speaker-card__photo::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 65% at 50% 38%,transparent 0%,transparent 55%,rgba(15,15,22,.75) 100%);pointer-events:none}
.speaker-card--tba .speaker-card__photo{background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--cs-purple-bright) 12%,var(--cs-surface-elev)) 0%,var(--cs-surface-elev) 70%)}
.speaker-card--tba .speaker-card__photo::after{content:"?";position:absolute;inset:0;display:grid;place-items:center;font-family:var(--cs-font-display);font-size:3.5rem;font-weight:700;color:var(--cs-text-dim);opacity:.22;line-height:1}
.speaker-card__body{padding:var(--space-4) var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:.25rem;flex:1;text-align:left}
@media (min-width:1024px){.speaker-card__body{padding:var(--space-5) var(--space-5) var(--space-6)}}
.speaker-card__tag{display:inline-block;align-self:flex-start;padding:.25rem .625rem;background:color-mix(in srgb,var(--cs-purple-bright) 14%,transparent);color:var(--cs-purple-bright);border-radius:var(--radius-full);font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem}
.speaker-card__name{font-family:var(--cs-font-display);font-size:1.0625rem;font-weight:700;letter-spacing:-.015em;color:var(--cs-text);text-transform:uppercase;line-height:1.08}
.speaker-card__role{font-size:.8125rem;color:var(--cs-lime);font-weight:600;letter-spacing:.005em;line-height:1.3}
.speaker-card--tba .speaker-card__role{color:var(--cs-purple-bright)}
.speaker-card__bio{font-size:.8125rem;color:var(--cs-text-muted);line-height:1.5;margin-top:.25rem}

/* ───────── Venue (layout com fotos + mapa) ───────── */
.venue-layout{display:grid;grid-template-columns:1fr;gap:var(--space-10)}
@media (min-width:1024px){.venue-layout{grid-template-columns:1fr 1.55fr;gap:var(--space-12);align-items:start}}

.venue-layout__info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5)}
.venue-layout__title{font-family:var(--cs-font-display);font-size:var(--fs-h2);font-weight:700;letter-spacing:-.02em;line-height:1.05;text-transform:uppercase;text-wrap:balance}
.venue-layout__desc{color:var(--cs-text-muted);font-size:var(--fs-md);line-height:1.6;max-width:40ch}

.venue-meta{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2);width:100%}
.venue-meta__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--cs-surface-elev);border:1px solid var(--cs-border);border-radius:var(--radius-xl);font-size:var(--fs-sm)}
.venue-meta__icon{width:1.125rem;height:1.125rem;color:var(--cs-lime);flex-shrink:0}

.venue-benefits{list-style:none;padding:0;margin:0;display:grid;gap:.625rem;width:100%}
.venue-benefits li{display:flex;align-items:flex-start;gap:.625rem;color:var(--cs-text-muted);font-size:var(--fs-sm);line-height:1.5}
.venue-benefits__dot{display:inline-block;width:.4375rem;height:.4375rem;border-radius:50%;background:var(--cs-lime);margin-top:.5em;flex-shrink:0}

.venue-layout__visual{display:flex;flex-direction:column;gap:var(--space-3)}
.venue-photos{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.venue-photos__img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-xl);display:block;background:var(--cs-surface-elev)}
.venue-map{border-radius:var(--radius-xl);overflow:hidden;height:140px}
.venue-map iframe{width:100%;height:100%;display:block}

/* ───────── Tickets ───────── */
.tickets-grid{display:grid;grid-template-columns:1fr;gap:var(--space-5)}
@media (min-width:768px){.tickets-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.tickets-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-6);align-items:stretch}}
.ticket-card{position:relative;display:flex;flex-direction:column;background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-2xl);padding:var(--space-6);transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}
@media (min-width:1024px){.ticket-card{padding:var(--space-8)}}
.ticket-card:hover{border-color:color-mix(in srgb,var(--cs-lime) 50%,var(--cs-border));transform:translateY(-3px)}
.ticket-card--vip{background:linear-gradient(160deg,color-mix(in srgb,var(--cs-purple-bright) 12%,var(--cs-surface)) 0%,var(--cs-surface) 65%);border-color:color-mix(in srgb,var(--cs-purple-bright) 45%,var(--cs-border));box-shadow:0 24px 48px -24px rgba(107,41,236,.4)}
.ticket-card--vip:hover{border-color:var(--cs-purple-bright)}
.ticket-card__ribbon{position:absolute;top:-.625rem;right:var(--space-5);padding:.25rem .75rem;background:var(--cs-purple-bright);color:var(--cs-white);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ticket-card__head{margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--cs-border)}
.ticket-card__tag{display:inline-block;padding:.25rem .625rem;background:color-mix(in srgb,var(--cs-lime) 16%,transparent);color:var(--cs-lime);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--space-3)}
.ticket-card__tag--vip{background:var(--cs-purple-soft);color:var(--cs-purple-bright)}
.ticket-card__name{font-family:var(--cs-font-display);font-size:1.375rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;text-transform:uppercase;margin-bottom:var(--space-3)}
.ticket-card__name span{display:block;color:var(--cs-lime)}
.ticket-card--vip .ticket-card__name span{color:var(--cs-purple-bright)}
.ticket-card__price{display:flex;align-items:flex-end;gap:.25rem;line-height:1;margin-bottom:.5rem}
.ticket-card__currency{font-family:var(--cs-font-body);font-size:1rem;font-weight:500;color:var(--cs-text-muted);padding-bottom:.5rem}
.ticket-card__amount{font-family:var(--cs-font-display);font-size:3rem;font-weight:700;letter-spacing:-.03em;color:var(--cs-text);font-variant-numeric:tabular-nums}
.ticket-card__limit{font-size:var(--fs-xs);color:var(--cs-text-muted);font-weight:500}.ticket-card__list{list-style:none;padding:0;margin:0 0 var(--space-6);display:grid;gap:.625rem;flex:1}
.ticket-card__list li{position:relative;padding-left:1.5rem;color:var(--cs-text);font-size:.9375rem;line-height:1.5}
.ticket-card__list li::before{content:"";position:absolute;left:.125rem;top:.5rem;width:.6875rem;height:.6875rem;background:var(--cs-lime);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);border-radius:1px}
.ticket-card--vip .ticket-card__list li::before{background:var(--cs-purple-bright)}
.tickets__footnote{text-align:center;color:var(--cs-text-dim);font-size:var(--fs-xs);margin-top:var(--space-8);line-height:1.5}

/* ───────── FAQ ───────── */
.faq{display:flex;flex-direction:column;gap:.5rem}
.faq__item{background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-xl);overflow:hidden;transition:border-color var(--dur-fast) var(--ease-out)}
.faq__item[open]{border-color:color-mix(in srgb,var(--cs-purple-bright) 35%,var(--cs-border))}
.faq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);cursor:pointer;font-family:var(--cs-font-display);font-size:1rem;font-weight:600;letter-spacing:-.01em;color:var(--cs-text);list-style:none;-webkit-tap-highlight-color:transparent}
.faq__q::-webkit-details-marker{display:none}
.faq__q:hover{background:color-mix(in srgb,var(--cs-purple-bright) 6%,transparent)}
.faq__icon{width:1.25rem;height:1.25rem;color:var(--cs-text-muted);flex-shrink:0;transition:transform var(--dur-fast) var(--ease-out)}
.faq__item[open] .faq__icon{transform:rotate(180deg);color:var(--cs-lime)}
.faq__a{padding:0 var(--space-5) var(--space-5)}
.faq__a p{color:var(--cs-text-muted);font-size:.9375rem;line-height:1.6}
.faq__a a{color:var(--cs-lime);text-decoration:underline;text-underline-offset:3px}
.faq__a a:hover{color:var(--cs-lime-dark)}

/* ───────── Embaixadoras Pitch (variação A — phones + features) ───────── */
.emb-pitch__stage{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"eyebrow eyebrow" "title title" "sub sub" "phone-left phone-right" "cta cta";gap:var(--space-4) var(--space-3);align-items:center;justify-items:center;text-align:center}
@media (min-width:1024px){.emb-pitch__stage{grid-template-columns:1fr 2.4fr 1fr;grid-template-areas:"phone-left eyebrow phone-right" "phone-left title phone-right" "phone-left sub phone-right" "phone-left cta phone-right";gap:0 var(--space-8)}}
.emb-pitch__copy{display:contents}
.emb-pitch__copy > .section__eyebrow{grid-area:eyebrow;margin-bottom:0}
.emb-pitch__copy > .emb-pitch__title{grid-area:title}
.emb-pitch__copy > .emb-pitch__sub{grid-area:sub;max-width:44rem}
.emb-pitch__copy > .btn{grid-area:cta;margin-top:var(--space-2)}
.emb-pitch__title{font-family:var(--cs-font-display);font-size:var(--fs-h2);font-weight:700;letter-spacing:-.02em;line-height:1.1;text-transform:uppercase;max-width:18ch;margin-inline:auto;text-wrap:balance}
.emb-pitch__sub{color:var(--cs-text-muted);font-size:var(--fs-md);line-height:1.6;text-align:center;max-width:48ch;margin-inline:auto}

.emb-pitch__phone{position:relative;display:flex;margin:0;width:100%;max-width:11.5rem;aspect-ratio:9/19;padding:.375rem;background:#0c0c12;border:1px solid color-mix(in srgb,var(--cs-border) 80%,#000);border-radius:1.75rem;box-shadow:0 0 0 1px color-mix(in srgb,var(--cs-text) 6%,transparent) inset,0 30px 60px -20px rgba(0,0,0,.7),0 12px 32px -8px rgba(0,0,0,.55)}
.emb-pitch__phone--left{grid-area:phone-left;justify-self:start;transform:rotate(-6deg)}
.emb-pitch__phone--right{grid-area:phone-right;justify-self:end;transform:rotate(6deg)}
@media (max-width:1023px){.emb-pitch__phone--left{justify-self:end;max-width:9rem}.emb-pitch__phone--right{justify-self:start;max-width:9rem}}
@media (prefers-reduced-motion:reduce){.emb-pitch__phone--left,.emb-pitch__phone--right{transform:none}}

.emb-mockup{display:flex;flex-direction:column;width:100%;height:100%;background:#0b0b0b;border-radius:1.35rem;overflow:hidden;color:#fafafa;font-family:var(--cs-font-body)}
.emb-mockup__header{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;border-bottom:1px solid #1c1c1c;flex-shrink:0}
.emb-mockup__avatar{position:relative;display:grid;place-items:center;width:1.375rem;height:1.375rem;border-radius:50%;padding:1.5px;background:conic-gradient(from 225deg,#f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);flex-shrink:0}
.emb-mockup__avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;background:#1c1c24}
.emb-mockup__user{font-size:.5rem;font-weight:600;color:#fafafa;flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.emb-mockup__verified{width:.5625rem;height:.5625rem;flex-shrink:0;margin-left:.1875rem;margin-right:auto}
.emb-mockup__dots{font-size:.5rem;letter-spacing:.05em;color:#fafafa;flex-shrink:0}
.emb-mockup__media{position:relative;flex:1 1 auto;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--cs-purple) 30%,#0a0a0e) 0%,#000 100%);overflow:hidden;display:grid;place-items:center}
.emb-mockup__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.emb-mockup__play{width:2.25rem;height:2.25rem;color:rgba(255,255,255,.85);filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}
.emb-mockup__actions{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem .25rem;flex-shrink:0}
.emb-mockup__action{display:inline-flex;align-items:center;gap:.1875rem}
.emb-mockup__icon{width:.8125rem;height:.8125rem;color:#fafafa;flex-shrink:0}
.emb-mockup__action--end{margin-left:auto}
.emb-mockup__count{font-size:.4375rem;font-weight:600;color:#fafafa;line-height:1}
.emb-mockup__meta{padding:0 .5rem .5rem;flex-shrink:0;font-size:.4375rem;line-height:1.35}
.emb-mockup__meta p{margin:0}
.emb-mockup__caption{color:#d0d0d0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}
.emb-mockup__caption strong{font-weight:700;color:#fafafa;margin-right:.1875rem}

.emb-pitch__features{list-style:none;margin:var(--space-12) 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:var(--space-4)}
@media (min-width:640px){.emb-pitch__features{grid-template-columns:repeat(3,1fr);gap:var(--space-5);margin-top:var(--space-16)}}
.emb-feature{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5);background:var(--cs-surface);border:1px solid var(--cs-border);border-radius:var(--radius-xl);text-align:center}
.emb-feature__num{font-family:var(--cs-font-display);font-size:clamp(2rem,5vw,2.75rem);font-weight:700;letter-spacing:-.025em;line-height:1;background:var(--gradient-text-lime);-webkit-background-clip:text;background-clip:text;color:transparent}
.emb-feature__text{margin:0;color:var(--cs-text-muted);font-size:var(--fs-sm);line-height:1.45;text-wrap:balance}

/* ───────── CTA final ───────── */
.section--cta-final{background:linear-gradient(135deg,var(--cs-surface) 0%,color-mix(in srgb,var(--cs-purple-bright) 14%,var(--cs-surface)) 100%);border-top:1px solid var(--cs-border)}
.cta-final{text-align:center;max-width:48rem;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}
.cta-final__title{font-family:var(--cs-font-display);font-size:clamp(1.875rem,5vw,3rem);font-weight:700;letter-spacing:-.02em;line-height:1.05;text-transform:uppercase;text-wrap:balance;max-width:18ch}
.cta-final__sub{color:var(--cs-text-muted);font-size:var(--fs-lg);line-height:1.55;max-width:48ch}

/* ───────── Footer ───────── */
.site-footer{padding-block:var(--space-12) calc(var(--space-12) + 4rem);background:var(--cs-bg);border-top:1px solid var(--cs-border)}
@media (min-width:1024px){.site-footer{padding-block:var(--space-16)}}
.site-footer__inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);text-align:center}
.site-footer__brand .cs-logo{font-size:1.1rem}
.site-footer__entity{font-size:var(--fs-sm);color:var(--cs-text-muted);max-width:54ch;line-height:1.6}
.site-footer__entity strong{color:var(--cs-text);font-weight:600}
.site-footer__entity a{color:var(--cs-text-muted);text-decoration:underline;text-underline-offset:2px}
.site-footer__entity a:hover{color:var(--cs-lime)}
.site-footer__links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4) var(--space-6);font-size:var(--fs-sm)}
.site-footer__links a{color:var(--cs-text-muted);transition:color var(--dur-fast) var(--ease-out)}
.site-footer__links a:hover{color:var(--cs-lime)}
.site-footer__copy{font-size:var(--fs-xs);color:var(--cs-text-dim);letter-spacing:.02em}

/* ───────── Reveal on scroll (IntersectionObserver via main.js) ───────── */
.reveal{opacity:0;transform:translateY(16px);transition:opacity var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out)}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
