/* Ajustes aprováveis de marca: cabeçalho claro e fotografia real no destaque. */
.topbar {
  background: #fff;
  color: var(--navy);
  border-bottom: 1px solid #e5e1d9;
  box-shadow: 0 8px 30px rgb(8 28 48 / 8%);
}

.topbar .brand {
  width: min(245px, 30vw);
  height: 68px;
  overflow: hidden;
}

.topbar .site-logo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}

.topbar nav a {
  color: var(--navy);
  font-weight: 600;
}

.topbar .outline {
  color: var(--navy);
  border-color: rgb(11 28 47 / 42%);
}

.hero-with-video {
  background: var(--navy);
}

.hero-with-video > img {
  left: auto;
  right: 0;
  width: 58%;
  object-position: center 35%;
}

.hero-with-video > .hero-administrators {
  top: 82px;
  height: calc(100% - 82px);
  width: 55%;
  object-position: center top;
}

.hero-with-video .hero-shade {
  background:
    linear-gradient(90deg, #081a2c 0%, #081a2c 42%, rgb(8 26 44 / 92%) 50%, rgb(8 26 44 / 18%) 72%),
    linear-gradient(0deg, rgb(4 13 23 / 45%), transparent 58%);
}

.hero-with-video .hero-content {
  max-width: 720px;
}

/* Vídeo temporariamente oculto; estrutura preservada para reativação futura. */
[hidden] {
  display: none !important;
}

.hero-video-disabled .hero-content {
  padding-top: 8rem;
}

@media (max-width: 900px) {
  .topbar {
    padding-inline: 1.25rem;
  }

  .topbar .brand {
    width: 205px;
  }

  .topbar nav {
    display: none;
  }

  .hero-with-video > img {
    width: 100%;
    object-position: 56% center;
  }

  .hero-with-video > .hero-administrators {
    width: 100%;
    height: calc(100% - 70px);
    top: 70px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center top;
    background: transparent;
  }

  .hero-with-video .hero-shade {
    background: linear-gradient(180deg, rgb(8 26 44 / 48%) 0%, #081a2c 53%, #081a2c 100%);
  }

  .hero-video-disabled {
    min-height: 760px;
  }

  .hero-video-disabled .hero-content {
    padding-top: 13rem;
  }

  .hero-video-disabled .trust {
    margin-bottom: 0;
  }
}

.chapter-taubate-feature{position:relative;display:block;width:100%;padding:0;background:#061b2d}
.chapter-showcase.chapter-showcase-approved{display:block;min-height:0;padding:0;background:#061b2d;overflow:hidden}
.chapter-showcase.chapter-showcase-approved:before,.chapter-showcase.chapter-showcase-approved:after{display:none}
.chapter-showcase-approved>img{display:block;width:100%;height:auto;object-fit:contain}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.chapter-showcase{position:relative;isolation:isolate;min-height:760px;padding:58px clamp(36px,5vw,82px) 70px;display:grid;grid-template-columns:minmax(340px,.72fr) minmax(560px,1.5fr) 100px;grid-template-rows:auto 1fr auto;gap:34px 54px;overflow:hidden;color:#fff;background:radial-gradient(circle at 76% 14%,rgb(49 95 122 / 43%),transparent 35%),linear-gradient(125deg,#03182a 0%,#082c43 64%,#123d55 100%)}
.chapter-showcase:before{content:"";position:absolute;z-index:-1;inset:auto 0 0 30%;height:34%;opacity:.24;background:linear-gradient(to top,#03111d,transparent),radial-gradient(ellipse at bottom,#65869b 0%,transparent 67%);clip-path:polygon(0 72%,12% 58%,22% 66%,34% 40%,45% 53%,58% 22%,72% 46%,83% 26%,100% 48%,100% 100%,0 100%)}
.chapter-showcase:after{content:"";position:absolute;z-index:-1;right:-1%;bottom:0;width:10%;height:47%;opacity:.18;background:linear-gradient(90deg,transparent,#b9c7cd);clip-path:polygon(45% 0,59% 0,61% 23%,76% 25%,76% 100%,29% 100%,29% 25%,43% 23%)}
.chapter-map{position:absolute;z-index:-1;top:33px;right:12%;width:47%;height:170px;opacity:.75;pointer-events:none}.chapter-map i{position:absolute;border:1px solid #d7aa5c;border-color:#d7aa5c transparent transparent;border-radius:50%}.chapter-map i:nth-child(1){inset:50px 5% auto 4%;height:190px;transform:rotate(-5deg)}.chapter-map i:nth-child(2){inset:33px 23% auto 29%;height:145px;transform:rotate(-12deg)}.chapter-map i:nth-child(3){inset:78px 0 auto 61%;height:85px;transform:rotate(-19deg)}.chapter-map b{position:absolute;width:8px;height:8px;border:1px solid #f1ca7d;border-radius:50%;background:#e6b45e;box-shadow:0 0 0 6px rgb(231 184 99 / 10%)}.chapter-map b:nth-of-type(1){left:22%;top:93px}.chapter-map b:nth-of-type(2){left:57%;top:65px}.chapter-map b:nth-of-type(3){right:8%;top:107px;width:13px;height:13px}
.chapter-region{position:absolute;z-index:1;right:5%;top:45px;padding-left:20px;border-left:1px solid #dfb76e;color:#cbd7de;font-size:8px;line-height:2;letter-spacing:.42em}.chapter-region b,.chapter-region span{display:block}.chapter-region b{color:#fff}
.chapter-cityscape{position:absolute;z-index:-1;left:28%;right:0;bottom:0;height:255px;opacity:.24;background:linear-gradient(to top,#020d16 0%,rgb(5 27 43 / 94%) 55%,transparent 100%)}.chapter-cityscape:before{content:"";position:absolute;inset:45px 0 0;background:linear-gradient(180deg,rgb(121 158 178 / 34%),#041522 80%);clip-path:polygon(0 64%,5% 55%,9% 61%,13% 45%,17% 55%,22% 36%,27% 51%,31% 30%,36% 47%,41% 24%,46% 42%,51% 29%,56% 47%,61% 36%,67% 51%,72% 31%,78% 45%,84% 27%,90% 49%,95% 38%,100% 53%,100% 100%,0 100%)}.chapter-cityscape:after{content:"";position:absolute;left:8%;right:4%;bottom:0;height:100px;background:#020d16;clip-path:polygon(0 60%,3% 60%,3% 34%,5% 34%,5% 53%,8% 53%,8% 18%,10% 18%,10% 59%,13% 59%,13% 40%,16% 40%,16% 62%,20% 62%,20% 26%,23% 26%,23% 57%,28% 57%,28% 42%,31% 42%,31% 62%,36% 62%,36% 20%,39% 20%,39% 55%,43% 55%,43% 32%,47% 32%,47% 61%,52% 61%,52% 38%,56% 38%,56% 57%,61% 57%,61% 15%,63% 15%,63% 56%,69% 56%,69% 35%,73% 35%,73% 59%,79% 59%,79% 25%,82% 25%,82% 53%,87% 53%,87% 39%,91% 39%,91% 58%,96% 58%,96% 31%,100% 31%,100% 100%,0 100%)}
.chapter-cities{position:absolute;z-index:0;left:35%;right:7%;bottom:22px;display:flex;justify-content:space-between;color:rgb(225 234 239 / 48%);font-size:6px;letter-spacing:.22em}.chapter-cities span:before{content:"";display:block;width:3px;height:3px;margin:0 auto 6px;border-radius:50%;background:#e2b363;box-shadow:0 0 0 3px rgb(226 179 99 / 12%)}
.chapter-kicker{grid-column:1/-1;display:flex;align-items:center;gap:18px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.4em}.chapter-kicker span{width:62px;height:3px;background:#e8bd6c}.chapter-kicker b{color:#e8bd6c}
.chapter-identification{grid-column:1;grid-row:2/4;align-self:center;position:relative;z-index:2;padding:28px 0;background:none;border:0;box-shadow:none;color:#fff}
.chapter-identification small{display:block;color:#eac373;font-size:11px;font-weight:800;line-height:1.85;letter-spacing:.27em}.chapter-identification h2{margin:18px 0 24px;font:clamp(48px,5vw,78px)/.91 var(--serif);letter-spacing:-.045em}.chapter-identification h2 em{display:block;margin-top:7px;color:#e9bd6b;font-weight:400;line-height:.9}.chapter-identification p{max-width:410px;margin:0;color:#e0e6ea;font-size:14px;line-height:1.75}.chapter-identification p:before{content:"";display:block;width:54px;height:2px;margin-bottom:17px;background:#e7b85f}
.chapter-pillars{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;max-width:430px}.chapter-pillars span{min-height:74px;padding:0 17px;text-align:center;border-right:1px solid rgb(237 193 110 / 35%)}.chapter-pillars span:first-child{padding-left:0}.chapter-pillars span:last-child{padding-right:0;border:0}.chapter-pillars i{display:block;margin-bottom:8px;color:#e8bd6c;font:26px/1 var(--serif);font-style:normal}.chapter-pillars b{color:#fff;font-size:8px;line-height:1.65;letter-spacing:.24em;text-transform:uppercase}
.event-art.event-art-taubate{grid-column:2;grid-row:2;align-self:center;position:relative;width:100%;height:auto;min-height:0;margin:20px 0 0;padding:20px;overflow:visible;border:2px solid #d9ae64;background:#faf5e9;box-shadow:0 34px 80px rgb(0 0 0 / 42%);transform:none}
.event-art.event-art-taubate:after{content:"";position:absolute;inset:10px;pointer-events:none;border:1px solid rgb(7 27 45 / 23%)}
.event-art.event-art-taubate img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 55%;border:0;box-shadow:none;background:#e8e2d9}
.event-art.event-art-taubate figcaption{position:absolute;left:20px;bottom:-30px;padding:12px 20px;background:#e2b464;color:#061b2d;font-size:8px;font-weight:900;letter-spacing:.28em;white-space:nowrap}
.chapter-words{grid-column:3;grid-row:2;align-self:center;padding-left:20px;border-left:2px solid #dfb364}.chapter-words span{display:block;margin-bottom:22px;color:#c9d4db;font-size:8px;letter-spacing:.42em}.chapter-words b{color:#e7bc6d;font-size:8px;line-height:2.4;letter-spacing:.3em}
.chapter-signature{grid-column:2/4;grid-row:3;justify-self:end;align-self:end;margin:0;display:flex;align-items:flex-start;gap:18px;color:#d4dce1;font-size:8px;line-height:1.9;letter-spacing:.34em;text-transform:uppercase}.chapter-signature span{width:48px;height:3px;margin-top:5px;background:#e5b863}
.chapter-taubate-feature>.event-copy{position:relative;z-index:1;width:100%;margin:0;padding:84px max(6vw,24px) 100px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);gap:24px;background:linear-gradient(135deg,#061827 0,#0a2941 56%,#123d59 100%)}
.event-overview{padding:clamp(38px,5vw,72px);background:var(--ivory);box-shadow:0 24px 60px rgb(0 0 0 / 18%)}.event-overview h2{font:clamp(36px,3.8vw,54px)/1.05 var(--serif);margin:0 0 20px}.event-overview>p:not(.date){color:var(--muted);font-size:15px;line-height:1.7}.event-overview .primary{margin-top:8px}.chapter-taubate-feature .speaker-line.speaker-feature{height:max-content;margin:0;border:1px solid rgb(221 181 104 / 35%);border-bottom:4px solid var(--gold);border-radius:0;box-shadow:0 24px 60px rgb(0 0 0 / 18%)}.chapter-taubate-feature .speaker-feature .speaker-photo{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:#edf6fb}.chapter-taubate-feature .speaker-details{padding:28px 30px 32px;background:#fff}
@media(max-width:1100px){.chapter-showcase{min-height:0;grid-template-columns:minmax(300px,.75fr) minmax(440px,1.25fr);grid-template-rows:auto auto auto;padding:50px 34px 90px;gap:30px}.chapter-identification{grid-column:1;grid-row:2}.event-art.event-art-taubate{grid-column:2;grid-row:2}.chapter-words{display:none}.chapter-signature{grid-column:2;grid-row:3}.chapter-region{display:none}.chapter-cities{left:28%;right:4%}.chapter-taubate-feature>.event-copy{grid-template-columns:1fr;padding-top:70px}.event-overview{padding:45px 30px}.chapter-taubate-feature .speaker-line.speaker-feature{margin:0}}
@media(max-width:780px){.chapter-showcase{display:flex;flex-direction:column;padding:38px 20px 96px;gap:25px}.chapter-kicker{font-size:9px;letter-spacing:.28em}.chapter-kicker span{width:38px}.chapter-map{top:35px;right:-15%;width:80%;opacity:.35}.chapter-identification{order:1;align-self:stretch;padding:14px 0 0}.chapter-identification small{font-size:9px}.chapter-identification h2{font-size:clamp(46px,13vw,66px);max-width:590px}.event-art.event-art-taubate{order:2;margin:5px 0 26px;padding:10px}.event-art.event-art-taubate figcaption{left:10px;bottom:-27px;padding:10px 13px;font-size:6px}.chapter-pillars{max-width:none}.chapter-signature{order:3;align-self:flex-end}.chapter-cityscape{left:0;height:180px}.chapter-cities{left:20px;right:20px;bottom:16px}.chapter-cities span:nth-child(even){display:none}.chapter-taubate-feature>.event-copy{padding:64px 18px 70px}}
@media(max-width:560px){.chapter-showcase{padding:32px 14px 55px}.chapter-identification h2{font-size:47px}.chapter-identification p{font-size:13px}.chapter-pillars span{padding:0 8px}.chapter-pillars b{font-size:6px}.event-art.event-art-taubate img{aspect-ratio:auto;object-fit:contain}.chapter-signature{font-size:6px;letter-spacing:.22em}.event-overview{padding:35px 20px}.event-overview dl{gap:25px}.chapter-taubate-feature .speaker-details{padding:22px 20px 25px}}

.chapter-taubate-feature .speaker-feature > img.speaker-photo {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: center;
}

.directory-intro{max-width:670px;margin:30px 0 0;color:var(--muted);font-size:15px;line-height:1.75}
.company-grid article{position:relative;overflow:hidden;padding:18px 18px 25px;transition:transform .25s ease,box-shadow .25s ease}.company-grid article:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgb(9 31 49 / 13%)}
.company-brand{height:260px;margin-bottom:26px;display:grid;place-items:center;overflow:hidden;background:#0a1b2e}.company-brand img{display:block;width:100%;height:100%;object-fit:cover}.tocto-company{background:#050505}.icom-company{background:#001a3b}.logos-company{background:#071d43}
.company-grid article>span{display:block;min-height:25px;line-height:1.55}.company-grid article p{min-height:42px;line-height:1.6}.company-grid article a{display:inline-block;margin-top:8px;padding-bottom:5px;border-bottom:1px solid var(--gold)}
@media(max-width:820px){.directory-intro{margin-top:10px}.company-brand{height:auto;aspect-ratio:1}.company-grid article>span,.company-grid article p{min-height:0}}

@media (max-width: 520px) {
  .topbar .brand {
    width: 175px;
  }

  .topbar .outline {
    padding: 9px 11px;
    font-size: 12px;
  }
}

footer {
  background: #fff;
  color: #5f6b76;
  border-top: 1px solid #e5e1d9;
}

footer .brand {
  width: 220px;
  height: 62px;
  overflow: hidden;
}

footer .site-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
  background: #fff;
}

footer > a {
  color: #8a642b;
}

.event-address {
  margin-top: -8px;
  padding: 13px 15px;
  border-left: 3px solid var(--gold);
  background: rgb(255 255 255 / 62%);
  font-size: 12px !important;
  line-height: 1.55 !important;
}

.event-address b {
  color: var(--navy);
}

.speaker-line.speaker-feature {
  margin: 28px 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  overflow: hidden;
  border: 1px solid #ded8cc;
  border-bottom: 4px solid var(--gold);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 20px 48px rgb(11 28 47 / 13%);
}

.speaker-feature .speaker-photo {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  flex: none;
  border: 0;
  border-radius: 0;
  object-fit: contain;
  object-position: center top;
  background: #eef6fb;
}

.speaker-details {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 26px 28px 30px;
  border-top: 1px solid #e5ded2;
}

.speaker-details small,
.speaker-details b,
.speaker-details strong,
.speaker-details span {
  display: block;
}

.speaker-details small {
  color: #9a7135;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
}

.speaker-details b {
  margin-top: 9px;
  color: var(--navy);
  font: 25px/1.08 var(--serif);
}

.speaker-details strong {
  margin-top: 10px;
  color: #354554;
  font: 14px/1.4 var(--serif);
}

.speaker-details span {
  margin-top: 8px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

@media (max-width: 560px) {
  .speaker-line.speaker-feature {
    flex-direction: column;
    margin: 24px 0;
  }

  .speaker-feature .speaker-photo {
    width: 100%;
    height: auto;
    aspect-ratio: auto;
  }

  .speaker-details {
    padding: 22px 20px 24px;
  }
}

.calendar-toolbar {
  margin-top: 44px;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: var(--navy);
  color: #fff;
}

.calendar-toolbar b,
.calendar-toolbar span {
  display: block;
}

.calendar-toolbar b {
  font: 22px var(--serif);
}

.calendar-toolbar span {
  margin-top: 5px;
  color: #bbc6cf;
  font-size: 12px;
}

.calendar-admin-link {
  padding: 12px 16px;
  background: var(--gold);
  color: var(--navy);
  text-decoration: none;
  font-size: 12px;
  font-weight: 800;
}

.activity-calendar {
  border: 1px solid var(--line);
  border-top: 0;
}

.activity-calendar article {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr) 190px;
  gap: 24px;
  align-items: center;
  padding: 24px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}

.activity-calendar article:last-child {
  border-bottom: 0;
}

.activity-calendar time {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #8b672f;
}

.activity-calendar time b {
  font: 44px/1 var(--serif);
  color: var(--navy);
}

.activity-calendar time span {
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: .12em;
}

.activity-info small {
  color: #9a7135;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
}

.activity-info h3 {
  margin: 6px 0 9px;
  font: 24px var(--serif);
}

.activity-info p {
  margin: 4px 0;
  color: var(--muted);
  font-size: 12px;
}

.activity-info p b {
  color: var(--ink);
}

.activity-info i::after {
  content: "•";
  padding: 0 7px;
  color: var(--gold);
  font-style: normal;
}

.activity-status {
  display: grid;
  justify-items: end;
  gap: 14px;
}

.activity-status span {
  padding: 7px 9px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
}

.status-review {
  background: #edf5ef;
  color: #427052;
}

.status-draft {
  background: #f3f0e9;
  color: #766b59;
}

.activity-status button {
  padding: 0 0 5px;
  border: 0;
  border-bottom: 1px solid var(--gold);
  background: transparent;
  color: var(--navy);
  font-size: 11px;
  font-weight: 800;
}

.calendar-note {
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}

@media (max-width: 760px) {
  .calendar-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .calendar-admin-link {
    text-align: center;
  }

  .activity-calendar article {
    grid-template-columns: 78px 1fr;
    gap: 16px;
  }

  .activity-status {
    grid-column: 1 / -1;
    justify-items: start;
    padding-top: 14px;
    border-top: 1px solid var(--line);
  }
}

.vale-mural-intro {
  margin-top: 38px;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-left: 4px solid var(--gold);
  background: var(--navy);
  color: #fff;
}

.vale-mural-intro b {
  color: var(--gold);
  font: 19px var(--serif);
  letter-spacing: .05em;
}

.vale-mural-intro span {
  color: #cbd3da;
  font-size: 12px;
}

.real-events-grid.vale-photo-wall {
  grid-template-columns: 1.45fr repeat(3, 1fr);
  grid-template-rows: repeat(4, 13.5rem);
  margin-top: 14px;
}

.vale-photo-wall .real-event-main {
  grid-column: 1 / 3;
  grid-row: 1 / 3;
}

.vale-photo-wall figure:nth-child(6) {
  grid-column: 1 / 2;
}

.vale-photo-wall figure:nth-child(7) {
  grid-column: 2 / 3;
}

.vale-photo-wall figure img {
  filter: saturate(.94) contrast(1.02);
}

@media (max-width: 980px) {
  .real-events-grid.vale-photo-wall {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 24rem repeat(6, 14rem);
  }

  .vale-photo-wall .real-event-main {
    grid-column: 1 / -1;
    grid-row: auto;
  }

  .vale-photo-wall figure:nth-child(6),
  .vale-photo-wall figure:nth-child(7) {
    grid-column: auto;
  }
}

@media (max-width: 620px) {
  .vale-mural-intro {
    align-items: flex-start;
    flex-direction: column;
  }

  .real-events-grid.vale-photo-wall {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 25rem repeat(6, 10rem);
  }

  .vale-photo-wall figcaption {
    left: .75rem;
    right: .75rem;
    bottom: .7rem;
  }

  .vale-photo-wall figcaption span {
    font-size: .55rem;
  }

  .vale-photo-wall figcaption b {
    font-size: .88rem;
  }
}
