.event-detail-hero{padding:64px 0;background:radial-gradient(circle at 10% 100%,rgba(247,206,78,.16),transparent 28%),#f7faf9}.event-detail-hero__grid{display:grid;grid-template-columns:1.05fr .78fr;gap:54px;align-items:center}.event-detail-hero__content>.status-badge{margin-bottom:18px}.event-detail-hero__content h1{font-size:clamp(2.5rem,5vw,4.6rem);margin-bottom:18px}.event-detail-hero__content>p{max-width:680px;color:#536273;font-size:1.04rem}.hero-meta{display:flex;flex-wrap:wrap;gap:18px 26px;margin:28px 0}.hero-meta>div{display:flex;align-items:center;gap:10px}.hero-meta .icon{width:24px;height:24px}.hero-meta span{display:grid}.hero-meta small{font-size:.72rem;color:#7c8b98;text-transform:uppercase;letter-spacing:.06em}.hero-meta strong{font-size:.94rem}.event-detail-hero__image{overflow:hidden;border-radius:22px;box-shadow:var(--shadow);background:#dbe4ea}.event-detail-hero__image img{width:100%;height:auto;max-height:690px;object-fit:cover}.event-information{padding:74px 0}.info-grid{display:grid;grid-template-columns:1fr;gap:28px}.content-card,.location-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:30px}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:26px}.program-grid>div{padding:20px;border-radius:14px;background:#f7faf9}.program-grid h3{color:var(--green-800);margin-bottom:10px}.program-grid p{margin-bottom:0;white-space:normal;color:#475569}.location-card{background:linear-gradient(160deg,#1D5A25,#3EAD48);color:#fff}.location-card .eyebrow{color:#F7CE4E}.location-card__icon{width:38px;height:38px;margin-bottom:18px;filter:brightness(0) invert(1)}.location-card h2{font-size:1.65rem}.location-card p{color:#E8F3EA}.location-card .button{margin:8px 0 18px}.contact-link{display:flex;align-items:center;gap:9px;padding-top:16px;border-top:1px solid rgba(255,255,255,.2);font-weight:750}.contact-link .icon{filter:brightness(0) invert(1)}.registration-section{padding:76px 0 86px;background:#1D5A25;color:#fff}.registration-grid{display:grid;grid-template-columns:.75fr 1.1fr;gap:50px;align-items:start}.registration-copy{position:sticky;top:120px;align-self:start}.registration-copy .eyebrow{color:#F7CE4E}.registration-copy h2{font-size:clamp(1.9rem,3vw,2.3rem)}.registration-copy>p{color:#DDEBE0}.registration-copy>.location-card{margin-top:28px}.registration-copy>.location-card h2{color:#fff}.registration-copy>.location-card p{color:#E8F3EA}.capacity-card{margin-top:28px;padding:20px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.06)}.capacity-card__header{display:flex;justify-content:space-between;margin-bottom:10px}.capacity-card .capacity{background:rgba(255,255,255,.15);margin-bottom:8px}.capacity-card small{color:#C6DBC9}.registration-form-card{padding:30px;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 20px 60px rgba(0,0,0,.2)}.registration-form-card form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.registration-form-card .acceptance{grid-column:1/-1}.form-closed{text-align:center;padding:36px 20px}.form-closed .icon{width:44px;height:44px;margin:0 auto 14px}.form-closed p{color:var(--muted)}@media(max-width:940px){.event-detail-hero__grid,.info-grid,.registration-grid{grid-template-columns:1fr}.event-detail-hero__image{max-width:620px}.registration-copy{position:static}.registration-copy h2{font-size:2.1rem}}@media(max-width:650px){.event-detail-hero{padding:44px 0}.program-grid,.registration-form-card form{grid-template-columns:1fr}.registration-form-card form .form-field--full,.registration-form-card .acceptance{grid-column:auto}.content-card,.location-card,.registration-form-card{padding:22px}.event-information{padding:52px 0}.registration-section{padding:54px 0}}
.rich-content{margin-top:24px;color:#475569;line-height:1.72}.rich-content h2,.rich-content h3,.rich-content h4{color:var(--green-800);margin-top:24px;margin-bottom:10px}.rich-content h2:first-child,.rich-content h3:first-child,.rich-content h4:first-child{margin-top:0}.rich-content p{margin:0 0 14px}.rich-content ul,.rich-content ol{margin:0 0 18px;padding-left:24px}.rich-content li{margin:6px 0}.rich-content blockquote{margin:18px 0;padding:14px 18px;border-left:4px solid var(--green-500);background:#f7faf9;border-radius:0 10px 10px 0}.rich-content a{color:var(--green-700);text-decoration:underline;text-underline-offset:3px}.program-empty{margin-top:20px;color:#64748b}

/* Mobile readability: keep rich text inside the viewport and allow natural wrapping. */
.event-detail-hero,.event-information,.registration-section{overflow-x:clip}
.info-grid,.content-card,.location-card,.rich-content{min-width:0;max-width:100%}
.rich-content,.rich-content *{box-sizing:border-box}
.rich-content p,.rich-content li,.rich-content h2,.rich-content h3,.rich-content h4,.rich-content a{max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}
@media(max-width:650px){
  .content-card{padding:20px;overflow:hidden}
  .content-card h2{font-size:1.72rem;line-height:1.16}
  .rich-content{margin-top:20px;font-size:.96rem;line-height:1.62}
  .rich-content h2,.rich-content h3,.rich-content h4{line-height:1.25;margin-top:20px}
  .rich-content ul,.rich-content ol{padding-left:20px;margin-right:0}
  .rich-content li{padding-left:2px}
}

/* Campos dinâmicos do formulário público */
.registration-form-card form .dynamic-field{min-width:0}.registration-form-card form .form-field--half{grid-column:auto}.registration-form-card form .form-field--full{grid-column:1/-1}.choice-field{margin:0;padding:0;border:0;min-width:0}.choice-field legend{padding:0;margin:0 0 7px;font-size:.88rem;font-weight:800;color:#334155}.field-help{display:block;color:#64748b;font-size:.78rem;margin-top:2px}.choice-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.choice-option{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #dbe3e0;border-radius:10px;background:#fbfcfb;cursor:pointer;transition:.15s}.choice-option:hover{border-color:#3EAD48;background:#f7fbf7}.choice-option:has(input:checked){border-color:#3EAD48;background:#eef8ef;box-shadow:0 0 0 2px rgba(62,173,72,.08)}.choice-option input{width:17px;height:17px;margin:2px 0 0;flex:0 0 auto;accent-color:#3EAD48}.choice-option span{font-size:.88rem;color:#334155}.dynamic-field--acceptance{display:grid;gap:5px}.dynamic-acceptance{padding:12px;border:1px solid #dbe3e0;border-radius:10px;background:#fbfcfb}.dynamic-acceptance input{accent-color:#3EAD48}@media(max-width:650px){.registration-form-card form .form-field--half,.registration-form-card form .form-field--full{grid-column:auto}.choice-options{grid-template-columns:1fr}}


/* Complemento obrigatório para a opção Outro/Outros em múltipla escolha */
.multiselect-other-field{display:grid;gap:6px;margin-top:12px;padding:12px;border:1px solid #cfe5d1;border-radius:10px;background:#f7fbf7}.multiselect-other-field[hidden]{display:none!important}.multiselect-other-field label{font-size:.84rem;font-weight:800;color:#334155}.multiselect-other-field input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#1e293b;font:inherit}.multiselect-other-field input:focus{outline:0;border-color:#3EAD48;box-shadow:0 0 0 3px rgba(62,173,72,.12)}

.rich-content img{display:block;max-width:100%;width:auto;margin:20px auto;border-radius:12px;}.rich-content img:not([height]){height:auto;}
.rich-content .rich-editor-image-item{display:inline-flex;flex-wrap:wrap;align-items:flex-start;gap:8px;max-width:100%;margin:8px 8px 8px 0;padding:0;vertical-align:top;line-height:0;}
.rich-content .rich-editor-image-item img{display:block;flex:0 0 auto;max-width:100%;margin:0;}

/* Localizacao dentro da area de inscricao: card com efeito liquid glass. */
.registration-copy > .location-card{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.09));
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  box-shadow:0 20px 44px rgba(5,31,12,.22),inset 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
}
.registration-copy > .location-card::before{
  content:"";
  position:absolute;
  inset:-35% auto auto -12%;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.28),rgba(255,255,255,0) 68%);
  pointer-events:none;
}
.registration-copy > .location-card::after{
  content:"";
  position:absolute;
  inset:auto -18% -28% auto;
  width:230px;
  height:230px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.12),rgba(255,255,255,0) 70%);
  pointer-events:none;
}
.registration-copy > .location-card > *{
  position:relative;
  z-index:1;
}
.registration-copy > .location-card .eyebrow{
  color:rgba(255,255,255,.78);
}
.registration-copy > .location-card h2{
  color:#fff;
}
.registration-copy > .location-card p{
  color:rgba(244,249,245,.92);
}
.registration-copy > .location-card .location-card__icon,
.registration-copy > .location-card .contact-link .icon{
  filter:brightness(0) invert(1);
  opacity:.96;
}
.registration-copy > .location-card .contact-link{
  color:#fff;
  border-top-color:rgba(255,255,255,.16);
}
.registration-copy > .location-card .button--outline{
  border-color:rgba(255,255,255,.24);
  color:#fff;
  background:rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.registration-copy > .location-card .button--outline:hover{
  border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.14);
}

.registration-privacy-note{margin:-2px 0 0;color:#64748b;font-size:.8rem;line-height:1.5}.registration-privacy-note a{color:#287A32;font-weight:800;text-decoration:underline;text-underline-offset:3px}

/* Politica de privacidade sempre vinculada visualmente ao checkbox de aceite. */
.dynamic-acceptance__content{display:grid;gap:4px;min-width:0}.dynamic-acceptance__label{display:block}.dynamic-acceptance .registration-privacy-note{display:block;margin:0;color:#64748b;font-size:.78rem;line-height:1.45;font-weight:500}.dynamic-acceptance .registration-privacy-note a{color:#287A32;font-weight:800;text-decoration:underline;text-underline-offset:3px}.dynamic-acceptance .registration-privacy-note a:hover{color:#1D5A25}

/* Conteudo programatico responsivo: a altura configurada vale no desktop,
   mas nunca deve causar distorcao ou overflow em telas menores. */
@media (max-width:940px){
  .rich-content img,
  .rich-content .rich-editor-image-item img{
    max-width:100%;
    height:auto!important;
    object-fit:contain;
  }
}

@media (max-width:650px){
  .rich-content .rich-editor-image-item{
    display:block;
    width:100%;
    max-width:100%;
    margin:10px 0;
  }

  .rich-content img,
  .rich-content .rich-editor-image-item img{
    display:block;
    width:100%!important;
    max-width:100%;
    height:auto!important;
    margin:14px 0;
    object-fit:contain;
  }
}
