:root{
  --navy:#061a38;
  --navy-2:#0a2b57;
  --blue:#0c3d7a;
  --ink:#07111f;
  --gold:#f1bd43;
  --gold-2:#ffd978;
  --white:#fff;
  --muted:#aabbd1;
  --line:rgba(255,255,255,.14);
  --glass:rgba(4,24,52,.72);
  --shadow:0 24px 70px rgba(0,16,42,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--navy)}
body{
  margin:0;
  color:#10233e;
  background:#f4f7fb;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
  padding-bottom:78px;
}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
.shell{width:min(1120px,calc(100% - 32px));margin-inline:auto}
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:90;background:rgba(255,255,255,.08)}
.reading-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold-2))}
.app-topbar{
  position:fixed;z-index:80;top:3px;left:0;right:0;
  display:flex;align-items:center;justify-content:space-between;
  gap:14px;padding:14px max(18px,env(safe-area-inset-left));
  color:#fff;background:linear-gradient(180deg,rgba(2,16,38,.88),rgba(2,16,38,.24),transparent);
  backdrop-filter:blur(3px);
}
.brand{display:flex;align-items:baseline;gap:5px;font-size:22px;letter-spacing:-.04em}
.brand strong{font-weight:900}
.brand strong:after{content:"";display:block;width:42px;height:4px;border-radius:8px;background:var(--gold);margin-top:3px}
.brand span{font-weight:300}
.top-actions{display:flex;gap:7px}
.icon-btn{
  border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:9px 11px;
  color:#fff;background:rgba(6,26,56,.58);backdrop-filter:blur(12px);
  font-size:12px;font-weight:700
}
.icon-btn.is-active{border-color:var(--gold);color:var(--gold)}
.hero{
  position:relative;min-height:720px;height:min(92svh,860px);overflow:hidden;
  background:var(--navy);color:#fff;
}
.hero-glow{position:absolute;inset:auto -25% -25% -25%;height:48%;background:radial-gradient(circle at 50% 0,rgba(241,189,67,.38),transparent 60%);z-index:3;pointer-events:none}
.hero-slides,.hero-slide{position:absolute;inset:0}
.hero-slide{opacity:0;transform:scale(1.04);transition:opacity .9s ease,transform 7s linear;pointer-events:none}
.hero-slide.is-active{opacity:1;transform:scale(1);pointer-events:auto}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;filter:saturate(.88) contrast(1.04)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,18,42,.15) 18%,rgba(3,22,48,.15) 36%,rgba(3,22,48,.88) 79%,#061a38 100%)}
.hero-copy{
  position:absolute;z-index:4;left:max(22px,calc((100% - 1120px)/2 + 20px));right:22px;bottom:112px;
  max-width:760px;text-shadow:0 8px 30px rgba(0,0,0,.45)
}
.source-pill{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:8px 12px;
  border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(6,26,56,.48);
  color:#d7e5f8;font-size:11px;font-weight:800;letter-spacing:.08em;backdrop-filter:blur(10px)
}
.hero-copy h1,.hero-copy h2{margin:0;font-weight:950;line-height:.88;letter-spacing:-.055em}
.hero-copy h1{font-size:clamp(52px,10vw,104px)}
.hero-copy h2{font-size:clamp(48px,9vw,92px)}
.hero-copy em{font-style:normal;color:var(--gold)}
.hero-copy p{max-width:680px;margin:18px 0 0;font-size:clamp(17px,2.8vw,24px);line-height:1.35;color:#ecf3fc}
.hero-bottom{
  position:absolute;z-index:8;left:max(22px,calc((100% - 1120px)/2 + 20px));right:max(22px,calc((100% - 1120px)/2 + 20px));bottom:46px;
  display:flex;align-items:center;justify-content:space-between;gap:20px
}
.hero-progress{display:flex;gap:8px}
.hero-progress button{width:54px;height:7px;border:0;border-radius:99px;background:rgba(255,255,255,.24);padding:0;overflow:hidden}
.hero-progress button.is-active{background:var(--gold)}
.round-action{
  width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.4);
  background:rgba(4,24,52,.72);color:#fff;font-size:26px;box-shadow:0 10px 32px rgba(0,0,0,.2)
}
.quick-grid{
  position:relative;z-index:14;margin-top:-28px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px
}
.quick-grid a{
  min-height:166px;padding:18px;border-radius:24px;color:#fff;
  background:linear-gradient(145deg,#0b3267,#061b3c);
  border:1px solid rgba(105,158,231,.28);box-shadow:var(--shadow);
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;
  transition:transform .22s ease,border-color .22s ease
}
.quick-grid a:hover{transform:translateY(-4px);border-color:rgba(241,189,67,.7)}
.quick-grid a>span{
  margin-bottom:auto;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;
  background:linear-gradient(145deg,rgba(241,189,67,.25),rgba(241,189,67,.04));
  border:1px solid rgba(241,189,67,.5);color:var(--gold);font-size:22px
}
.quick-grid b{font-size:21px;line-height:1.02;letter-spacing:-.035em}
.quick-grid small{margin-top:8px;color:#c4d3e6;line-height:1.3}
.section{padding:84px 0}
.section-dark{background:radial-gradient(circle at 75% 0,#103768 0,#061a38 46%,#04142d 100%);color:#fff}
.section-head{max-width:800px;margin-bottom:32px}
.section-head>span,.dialog-kicker{color:#a77916;font-size:12px;font-weight:900;letter-spacing:.12em}
.section-head h2{margin:8px 0 10px;font-size:clamp(34px,5vw,56px);line-height:1;letter-spacing:-.045em}
.section-head p{margin:0;color:#52657c;font-size:17px;line-height:1.55}
.section-head.light>span{color:var(--gold)}
.section-head.light p{color:#b9c9dd}
.feed-grid{display:grid;gap:18px;max-width:760px;margin-inline:auto}
.feed-card{background:#fff;border:1px solid #dce5ef;border-radius:24px;overflow:hidden;box-shadow:0 16px 44px rgba(17,48,83,.08)}
.feed-head{display:flex;align-items:center;gap:12px;padding:16px 18px}
.feed-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #e4bd5a}
.feed-head-text{min-width:0;flex:1}
.feed-head-text b{display:block;font-size:15px}
.feed-head-text small{display:block;margin-top:2px;color:#6c7f96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.verified{color:#0a67cf;font-weight:900}
.source-tag{margin-left:auto;border:1px solid #bfd3ec;background:#edf5ff;color:#245484;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:800}
.feed-body{padding:0 18px 16px}
.feed-body h3{margin:0;font-size:22px;line-height:1.2;letter-spacing:-.025em}
.feed-body p{margin:10px 0;color:#5e7188;line-height:1.5}
.feed-body>a{font-size:13px;font-weight:800;color:#245b9c}
.feed-media{display:block;width:100%;max-height:520px;object-fit:cover;background:#edf1f6}
.feed-actions{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #e6edf4}
.feed-actions button{border:0;background:transparent;padding:13px 6px;color:#38506c;font-size:13px;font-weight:750}
.feed-actions button.is-active{color:#0875d1}
.feed-counts{display:flex;gap:18px;padding:0 18px 14px;color:#6f8197;font-size:12px}
.feed-comments-preview{padding:0 18px 16px}
.feed-comment{padding:9px 12px;border-radius:14px;background:#f3f6fa;margin-top:8px}
.feed-comment b{font-size:12px}
.feed-comment p{margin:3px 0 0;font-size:13px;color:#53667e}
.bio-grid,.work-grid,.paving-grid,.project-grid,.source-grid,.municipality-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px
}
.info-card,.work-card,.paving-card,.project-card,.source-card,.municipality-card{
  border:1px solid #dce5ef;border-radius:22px;background:#fff;padding:20px;box-shadow:0 12px 38px rgba(17,48,83,.06)
}
.info-card span,.work-card span,.project-card span,.source-card span{display:block;color:#9b711a;font-size:11px;font-weight:900;letter-spacing:.08em}
.info-card p,.work-card p,.paving-card p,.project-card p,.source-card p,.municipality-card p{color:#5c6e84;line-height:1.5}
.info-card a,.work-card a,.paving-card a,.project-card a,.source-card a,.municipality-card a{font-weight:850;color:#235da2}
.timeline{margin-top:22px;border-left:2px solid #d7e0ea}
.timeline-item{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:0 0 26px 20px;position:relative}
.timeline-item:before{content:"";position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px #fff}
.timeline-item>strong{color:#8e6713}
.timeline-item h3{margin:0 0 7px}
.timeline-item p{margin:0 0 7px;color:#5d6e84;line-height:1.5}
.section-dark .work-card,.section-dark .project-card,.section-dark .municipality-card{
  background:rgba(8,40,81,.72);border-color:rgba(255,255,255,.13);box-shadow:none
}
.section-dark .work-card p,.section-dark .project-card p,.section-dark .municipality-card p{color:#c3d2e5}
.section-dark .work-card a,.section-dark .project-card a,.section-dark .municipality-card a{color:var(--gold-2)}
.work-card b{display:block;font-size:28px;color:var(--gold);margin:8px 0}
.project-card h3{margin:8px 0;font-size:21px}
.source-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 18px;font-weight:850}
.button.gold{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#2d2107}
.button.ghost-light{border:1px solid rgba(255,255,255,.24);color:#fff;background:transparent}
.button.full{width:100%}
.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.media-card{position:relative;min-height:320px;border-radius:24px;overflow:hidden;background:#0b2b58;box-shadow:var(--shadow)}
.media-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.media-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(2,15,35,.94))}
.media-card>div{position:absolute;z-index:2;left:16px;right:16px;bottom:16px;color:#fff}
.media-card small{color:#d0dced}
.event-galleries{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}
.event-galleries article{padding:20px;border:1px solid #dce5ef;border-radius:24px;background:#fff}
.event-galleries h3{margin:4px 0 14px;font-size:30px}
.event-galleries span{color:#9b711a;font-size:11px;font-weight:900;letter-spacing:.1em}
.event-strip{display:flex;gap:10px;overflow:auto;scroll-snap-type:x mandatory}
.event-card{flex:0 0 78%;scroll-snap-align:start;border-radius:18px;overflow:hidden;background:#eef2f7}
.event-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.event-card div{padding:12px}
.empty-media{padding:26px 18px;border-radius:18px;background:#f1f4f8;color:#6a7b90;line-height:1.45}
.privacy-note{margin-top:30px;padding:20px;border-radius:22px;border:1px solid #dce5ef;background:#eef4fb}
.privacy-note b{font-size:18px}
.privacy-note p{margin-bottom:0;color:#52657c;line-height:1.5}
.bottom-nav{
  position:fixed;z-index:70;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));
  display:grid;grid-template-columns:repeat(4,1fr);max-width:620px;margin:auto;
  border:1px solid rgba(255,255,255,.18);border-radius:24px;
  background:rgba(4,24,52,.92);box-shadow:0 20px 60px rgba(0,0,0,.32);backdrop-filter:blur(18px)
}
.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;color:#aec1da;font-size:11px}
.bottom-nav a>span{font-size:21px}
.bottom-nav a.is-active{color:var(--gold)}
.footer{padding:48px 0 110px;background:#020d1d;color:#aebfd4}
.footer b{color:#fff}
.register-dialog,.comments-dialog{width:min(520px,calc(100% - 28px));border:0;border-radius:28px;padding:0;background:#fff;box-shadow:0 30px 100px rgba(0,0,0,.38)}
.register-dialog::backdrop,.comments-dialog::backdrop{background:rgba(0,10,28,.68);backdrop-filter:blur(5px)}
.register-dialog form,.comments-shell{position:relative;padding:28px}
.dialog-close{position:absolute;right:18px;top:14px;border:0;background:#edf2f7;width:38px;height:38px;border-radius:50%;font-size:24px}
.register-dialog h2,.comments-dialog h2{font-size:30px;line-height:1.05;margin:8px 0 8px}
.register-dialog p{color:#607289;line-height:1.45}
.register-dialog label{display:block;margin:14px 0;color:#31485f;font-size:13px;font-weight:800}
.register-dialog input,.comments-dialog textarea{width:100%;margin-top:6px;border:1px solid #ccd7e4;border-radius:14px;padding:13px 14px;background:#f9fbfd;outline:none}
.register-dialog input:focus,.comments-dialog textarea:focus{border-color:#2f6eb3;box-shadow:0 0 0 3px rgba(47,110,179,.1)}
.register-dialog .consent{display:flex;gap:10px;align-items:flex-start;font-weight:500;line-height:1.4}
.register-dialog .consent input{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto}
.comments-list{max-height:42vh;overflow:auto;margin:16px 0}
.comment-row{padding:12px;border-radius:16px;background:#f1f5f9;margin-bottom:9px}
.comment-row b{display:block;font-size:13px}
.comment-row p{margin:4px 0 0;line-height:1.4;color:#51657b}
#commentForm{display:grid;gap:10px}
#commentText{min-height:100px;resize:vertical}
.toast{
  position:fixed;z-index:120;left:50%;bottom:100px;transform:translateX(-50%);
  width:min(520px,calc(100% - 28px));padding:13px 16px;border-radius:16px;
  background:#071a37;color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.3);text-align:center
}
.loading{padding:40px;text-align:center;color:#687b92}
@media (max-width:760px){
  .app-topbar{padding-top:max(14px,env(safe-area-inset-top))}
  .top-actions .icon-btn{font-size:0;width:40px;height:40px;padding:0}
  .top-actions .icon-btn:before{font-size:17px}
  #registerBtn:before{content:"◎"}
  #notifyBtn:before{content:"◌"}
  #installAppBtn:before{content:"↓"}
  .hero{min-height:700px;height:91svh}
  .hero-copy{left:20px;right:20px;bottom:118px}
  .hero-copy h1{font-size:clamp(54px,15vw,78px)}
  .hero-copy h2{font-size:clamp(46px,13vw,70px)}
  .hero-copy p{font-size:16px;max-width:90%}
  .quick-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:-22px}
  .quick-grid a{min-height:155px;padding:15px}
  .quick-grid b{font-size:19px}
  .section{padding:64px 0}
  .bio-grid,.work-grid,.paving-grid,.project-grid,.source-grid,.municipality-grid{grid-template-columns:1fr}
  .media-grid{grid-template-columns:1fr 1fr}
  .event-galleries{grid-template-columns:1fr}
  .timeline-item{grid-template-columns:80px 1fr}
}
@media (max-width:460px){
  .shell{width:min(100% - 22px,1120px)}
  .hero-bottom{left:20px;right:20px}
  .hero-progress button{width:42px}
  .quick-grid a{min-height:146px;border-radius:20px}
  .media-grid{grid-template-columns:1fr}
  .media-card{min-height:420px}
  .feed-actions button{font-size:11px}
  .feed-counts{gap:12px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .hero-slide{transform:none!important}
}

.guided-tour{
  position:fixed;z-index:85;left:50%;top:max(74px,calc(env(safe-area-inset-top) + 62px));transform:translateX(-50%);
  width:min(560px,calc(100% - 28px));display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:10px 12px 10px 15px;border:1px solid rgba(255,255,255,.18);border-radius:18px;
  background:rgba(4,24,52,.78);color:#fff;backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(0,0,0,.2);
  transition:opacity .3s ease,transform .3s ease
}
.guided-tour-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.guided-tour-copy span{font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--gold)}
.guided-tour-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.guided-tour button{flex:0 0 auto;border:1px solid rgba(241,189,67,.55);border-radius:999px;background:rgba(241,189,67,.12);color:var(--gold-2);padding:8px 12px;font-size:11px;font-weight:850}
.guided-tour.is-paused{opacity:.78}
.guided-tour.is-paused button{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.06)}
.tour-focus{position:relative}
.tour-focus:after{
  content:"";position:absolute;inset:10px;pointer-events:none;border-radius:28px;
  box-shadow:inset 0 0 0 1px rgba(241,189,67,.18),0 0 80px rgba(241,189,67,.08);
  opacity:1;animation:tourHalo 2.4s ease-in-out infinite
}
.tour-card-active{transform:translateY(-8px) scale(1.015)!important;border-color:rgba(241,189,67,.8)!important;box-shadow:0 24px 70px rgba(8,39,84,.18)!important}
@keyframes tourHalo{0%,100%{opacity:.25}50%{opacity:.8}}
.hero-slide.is-active img{animation:heroKenBurns 6s ease-in-out both}
.hero-slide[data-index="1"].is-active img{animation-name:heroKenBurnsAlt}
.hero-slide[data-index="2"].is-active img{animation-name:heroKenBurnsWide}
@keyframes heroKenBurns{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.11) translate3d(-1.5%,-1%,0)}}
@keyframes heroKenBurnsAlt{from{transform:scale(1.08) translate3d(2%,0,0)}to{transform:scale(1.02) translate3d(-1%,1%,0)}}
@keyframes heroKenBurnsWide{from{transform:scale(1.03) translate3d(-1%,1%,0)}to{transform:scale(1.1) translate3d(1.5%,-1%,0)}}
.auto-reveal{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.auto-reveal.is-visible{opacity:1;transform:none}

.section,.quick-grid{scroll-margin-top:108px}
@media (max-width:760px){
  .guided-tour{top:max(64px,calc(env(safe-area-inset-top) + 55px));padding:8px 9px 8px 12px;border-radius:16px}
  .guided-tour-copy span{font-size:9px}
  .guided-tour-copy b{font-size:11px;max-width:230px}
  .guided-tour button{padding:7px 9px}
  .section,.quick-grid{scroll-margin-top:96px}
}

.media-grid{
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:4px 2px 18px;
}
.media-grid::-webkit-scrollbar,.event-strip::-webkit-scrollbar{display:none}
.media-card{flex:0 0 calc((100% - 28px)/3);scroll-snap-align:start}
.tour-focus .media-card img,.tour-card-active img{animation:mediaKenBurns 3.6s ease-in-out both}
@keyframes mediaKenBurns{from{transform:scale(1.01) translate3d(0,0,0)}to{transform:scale(1.08) translate3d(-1.5%,-1%,0)}}
@media (max-width:760px){
  .media-card{flex:0 0 78%;min-height:420px}
}

.guided-tour.is-waiting{
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-12px);
}
.start-experience{
  margin-top:22px;
  width:min(520px,100%);
  min-height:62px;
  border:1px solid rgba(255,235,177,.76);
  border-radius:999px;
  padding:7px 14px 7px 8px;
  display:grid;
  grid-template-columns:48px 1fr 32px;
  align-items:center;
  gap:9px;
  color:#071a37;
  background:linear-gradient(135deg,#ffd76f,#efb637);
  box-shadow:0 14px 40px rgba(244,184,51,.3),inset 0 1px rgba(255,255,255,.6);
  text-shadow:none;
  transition:transform .25s ease,opacity .25s ease,filter .25s ease;
  animation:startPulse 2.2s ease-in-out infinite;
}
.start-experience:hover{transform:translateY(-2px);filter:brightness(1.04)}
.start-experience.is-started{opacity:0;pointer-events:none;transform:translateY(10px);height:0;min-height:0;margin:0;padding:0;border:0;overflow:hidden;animation:none}
.start-play{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  background:#071f45;color:#ffd76f;font-size:18px;padding-left:3px
}
.start-experience b{font-size:15px;letter-spacing:.015em}
.start-arrow{font-size:30px;font-weight:800;line-height:1}
@keyframes startPulse{0%,100%{box-shadow:0 14px 40px rgba(244,184,51,.26),inset 0 1px rgba(255,255,255,.6)}50%{box-shadow:0 18px 58px rgba(244,184,51,.48),0 0 0 5px rgba(241,189,67,.09),inset 0 1px rgba(255,255,255,.6)}}

.quick-grid a{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background-size:cover;
  background-position:center;
}
.quick-grid a:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(180deg,rgba(3,18,42,.14) 0%,rgba(3,20,46,.78) 62%,rgba(3,19,43,.98) 100%);
}
.quick-grid a:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  background-size:cover;
  background-position:center;
  transform:scale(1.03);
  transition:transform 5s ease;
}
.quick-grid a:hover:after,.quick-grid a.tour-card-active:after{transform:scale(1.12)}
.quick-grid a:nth-child(1):after{background-image:url("/images/conheca-zezinho/optimized/gallery-04-960.webp")}
.quick-grid a:nth-child(2):after{background-image:url("/images/conheca-zezinho/optimized/gallery-01-960.webp")}
.quick-grid a:nth-child(3):after{background-image:url("/images/conheca-zezinho/optimized/gallery-02-960.webp")}
.quick-grid a:nth-child(4):after{background-image:url("/images/conheca-zezinho/optimized/gallery-03-960.webp")}
.quick-grid a:nth-child(5):after{background-image:url("/images/conheca-zezinho/optimized/gallery-05-960.webp")}
.quick-grid a:nth-child(6):after{background-image:url("/images/conheca-zezinho/optimized/gallery-09-960.webp")}
.quick-grid a>span,.quick-grid a>b,.quick-grid a>small{position:relative;z-index:1;text-shadow:0 2px 14px rgba(0,0,0,.6)}

.section-visual{
  position:relative;
  display:block;
  width:100%;
  min-height:260px;
  margin:0 0 26px;
  overflow:hidden;
  border-radius:28px;
  background:#0a2b57;
  box-shadow:0 18px 50px rgba(7,30,65,.12);
  isolation:isolate;
}
.section-visual img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.02);
  transition:transform 6s ease;
}
.section-visual:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(3,18,42,.02) 18%,rgba(3,18,42,.16) 46%,rgba(3,18,42,.9) 100%);
}
.section-visual>span{
  position:absolute;
  z-index:2;
  left:20px;
  right:20px;
  bottom:18px;
  display:flex;
  flex-direction:column;
  gap:4px;
  color:#fff;
  text-shadow:0 4px 18px rgba(0,0,0,.55);
}
.section-visual>span b{font-size:24px;letter-spacing:-.025em}
.section-visual>span small{font-size:12px;color:#d6e1ef}
.section-visual:hover img,.section-visual.tour-card-active img,.tour-focus .section-visual img{transform:scale(1.09) translate3d(-1%,0,0)}
.section-visual.dark-visual{border:1px solid rgba(255,255,255,.13);box-shadow:0 20px 50px rgba(0,0,0,.22)}
.section-visual-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:26px}
.section-visual-pair .section-visual{margin:0;min-height:230px}
@media (max-width:760px){
  .section-visual{min-height:245px;border-radius:22px}
  .section-visual-pair{grid-template-columns:1fr;gap:12px}
  .section-visual-pair .section-visual{min-height:220px}
  .section-visual>span b{font-size:21px}
}

.feed-card{
  overflow:hidden;
  transform-style:preserve-3d;
  perspective:1200px;
}
.feed-media-wrap{
  position:relative;
  display:block;
  min-height:360px;
  overflow:hidden;
  background:#09264f;
}
.feed-media-wrap:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(3,16,37,.03) 22%,rgba(3,16,37,.18) 50%,rgba(3,16,37,.94) 100%);
  pointer-events:none;
}
.feed-media{
  width:100%;
  height:100%;
  min-height:360px;
  max-height:none;
  object-fit:cover;
  display:block;
  transition:transform 7s ease,filter .7s ease;
}
.feed-card.tour-card-active .feed-media,
.feed-card:hover .feed-media{
  transform:scale(1.07) translate3d(-1%,0,0);
  filter:saturate(1.06) contrast(1.03);
}
.feed-media-overlay{
  position:absolute;
  z-index:2;
  left:20px;
  right:20px;
  bottom:20px;
  color:#fff;
  text-shadow:0 5px 22px rgba(0,0,0,.7);
}
.feed-media-overlay h3{
  margin:0;
  max-width:95%;
  font-size:clamp(26px,4.5vw,40px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.feed-media-overlay small{
  display:block;
  margin-top:9px;
  color:#dbe6f4;
  font-size:12px;
  font-weight:700;
}
.feed-body{
  padding:13px 18px 15px;
}
.feed-source-line{
  margin:0 0 7px!important;
  font-size:13px;
  line-height:1.35!important;
  color:#71839a!important;
}
.feed-body>a{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
@media(max-width:760px){
  .feed-media-wrap,.feed-media{min-height:315px}
  .feed-media-overlay{left:16px;right:16px;bottom:16px}
  .feed-media-overlay h3{font-size:29px}
  .feed-source-line{display:none}
  .feed-body{padding:11px 16px 13px}
}

@media (prefers-reduced-motion:reduce){
  body.motion-consented .hero-slide.is-active img{
    animation-duration:6s!important;
    animation-iteration-count:1!important;
  }
  body.motion-consented .auto-reveal{
    transition-duration:.7s!important;
  }
  body.motion-consented .tour-card-active{
    transition-duration:.35s!important;
  }
}
@media(max-width:760px){
  .guided-tour:not(.is-waiting){
    top:max(66px,calc(env(safe-area-inset-top) + 56px));
    left:18px;
    right:18px;
    width:auto;
    transform:none;
    padding:7px 8px 7px 11px;
    border-radius:14px;
  }
  .guided-tour-copy span{display:none}
  .guided-tour-copy b{max-width:240px;font-size:10px}
  .guided-tour button{padding:6px 9px;font-size:10px}
}
.guided-tour{display:none!important}
.hero-slide:first-child img{object-position:50% 30%}
body.cinema-open{overflow:hidden;background:#020a16}
.cinema-experience{
  position:fixed;inset:0;z-index:300;
  background:#020a16;color:#fff;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .55s ease,visibility .55s ease;
  overflow:hidden;perspective:1400px;
}
.cinema-experience.is-open{opacity:1;visibility:visible;pointer-events:auto}
.cinema-brand{
  position:absolute;z-index:20;top:max(18px,env(safe-area-inset-top));left:20px;
  display:flex;gap:5px;align-items:baseline;font-size:19px;letter-spacing:-.04em;
  text-shadow:0 3px 18px rgba(0,0,0,.45)
}
.cinema-brand strong{font-weight:950}
.cinema-brand strong:after{content:"";display:block;width:38px;height:3px;background:var(--gold);border-radius:9px;margin-top:3px}
.cinema-brand span{font-weight:300}
.cinema-close{
  position:absolute;z-index:25;top:max(16px,env(safe-area-inset-top));right:18px;
  width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.28);
  background:rgba(5,22,48,.56);color:#fff;font-size:28px;backdrop-filter:blur(14px)
}.cinema-scenes,.cinema-scene{position:absolute;inset:0}
.cinema-scene{
  opacity:0;visibility:hidden;transform:translate3d(5%,0,-90px) scale(.96);
  transition:opacity .8s ease,transform 1s cubic-bezier(.2,.75,.2,1),visibility .8s;
  transform-style:preserve-3d;overflow:hidden
}
.cinema-scene.is-active{
  opacity:1;visibility:visible;transform:translate3d(0,0,0) scale(1)
}
.scene-bg{
  position:absolute;inset:-7%;width:114%;height:114%;object-fit:cover;
  filter:blur(24px) saturate(1.1) brightness(.46);
  transform:translateZ(-130px) scale(1.18);
  transition:transform 7s ease
}
.cinema-scene.is-active .scene-bg{transform:translate3d(-1.8%,-1%,0) scale(1.24)}
.scene-depth{
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 78% 23%,rgba(65,129,220,.28),transparent 27%),
    radial-gradient(circle at 20% 76%,rgba(241,189,67,.2),transparent 25%),
    linear-gradient(180deg,rgba(1,8,20,.16),rgba(1,8,20,.38) 42%,rgba(1,8,20,.94) 100%);
  pointer-events:none
}
.scene-frame{
  position:absolute;z-index:3;top:12%;right:-6%;width:76%;height:60%;
  border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.22);
  box-shadow:-28px 32px 80px rgba(0,0,0,.52),0 0 0 1px rgba(241,189,67,.12);
  transform:translate3d(90px,20px,90px) rotateY(-8deg) rotateZ(1.5deg) scale(.94);
  transition:transform 1.3s cubic-bezier(.18,.8,.2,1),opacity 1s ease;opacity:.35
}.cinema-scene.is-active .scene-frame{
  transform:translate3d(0,0,110px) rotateY(-4deg) rotateZ(.7deg) scale(1);opacity:1
}
.scene-frame-wide{width:86%;height:54%;top:14%;right:-11%}
.scene-frame-tall{width:72%;height:64%;top:10%;right:-4%}
.scene-photo{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform 7s ease}
.cinema-scene.is-active .scene-photo{transform:scale(1.1) translate3d(-1.2%,-.8%,0)}
.scene-copy{
  position:absolute;z-index:9;left:22px;right:22px;bottom:118px;max-width:690px;
  transform:translate3d(0,36px,130px);opacity:0;
  transition:transform 1s .18s cubic-bezier(.2,.75,.2,1),opacity .8s .18s ease
}
.cinema-scene.is-active .scene-copy{transform:translate3d(0,0,130px);opacity:1}
.scene-copy>span{
  display:inline-flex;padding:7px 10px;border-radius:999px;
  background:rgba(4,24,52,.58);border:1px solid rgba(255,255,255,.18);
  color:var(--gold-2);font-size:10px;font-weight:900;letter-spacing:.13em;backdrop-filter:blur(12px)
}
.scene-copy h2{
  margin:13px 0 8px;font-size:clamp(46px,12vw,92px);line-height:.88;
  letter-spacing:-.06em;font-weight:950;text-shadow:0 7px 30px rgba(0,0,0,.6)
}
.scene-copy p{max-width:620px;margin:0 0 12px;color:#e2ebf7;font-size:15px;line-height:1.42;text-shadow:0 4px 20px rgba(0,0,0,.48)}
.scene-copy a{color:#fff;font-size:12px;font-weight:850;border-bottom:1px solid rgba(241,189,67,.72);padding-bottom:3px}
.cinema-controls{
  position:absolute;z-index:30;left:20px;right:20px;bottom:max(18px,env(safe-area-inset-bottom));
  display:flex;align-items:center;justify-content:space-between;gap:14px
}
.cinema-progress{display:flex;gap:6px;flex:1}
.cinema-progress button{
  position:relative;flex:1;height:5px;border:0;padding:0;border-radius:99px;
  background:rgba(255,255,255,.22);overflow:hidden
}
.cinema-progress button:before{
  content:"";position:absolute;inset:0 auto 0 0;width:0;background:var(--gold);
  border-radius:inherit
}
.cinema-progress button.is-done:before{width:100%}
.cinema-progress button.is-active:before{animation:cinemaProgress var(--scene-duration,6500ms) linear forwards}
.cinema-progress.is-paused button.is-active:before{animation-play-state:paused}
@keyframes cinemaProgress{from{width:0}to{width:100%}}
.cinema-buttons{display:flex;gap:8px}
.cinema-buttons button,.cinema-explore{
  border:1px solid rgba(255,255,255,.22);border-radius:999px;
  background:rgba(5,22,48,.66);color:#fff;padding:10px 13px;
  font-size:11px;font-weight:850;backdrop-filter:blur(14px)
}
#cinemaNext{border-color:rgba(241,189,67,.52);color:var(--gold-2)}
.cinema-final{background:#04142d}
.cinema-mosaic{
  position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;
  gap:4px;transform:scale(1.06);filter:saturate(.9)
}
.cinema-mosaic img{width:100%;height:100%;object-fit:cover}
.cinema-final:after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,13,31,.28),rgba(2,13,31,.7) 45%,#031129 100%)
}.final-copy{bottom:132px}
.cinema-explore{
  display:inline-flex;margin-top:8px;background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:#281d05;border-color:transparent;box-shadow:0 12px 38px rgba(241,189,67,.28);
  padding:13px 17px
}
@media(max-width:760px){
  .scene-frame{top:10%;right:-13%;width:92%;height:59%;border-radius:28px}
  .scene-frame-wide{top:11%;right:-15%;width:96%;height:55%}
  .scene-frame-tall{top:9%;right:-8%;width:84%;height:62%}
  .scene-copy{bottom:112px;left:20px;right:20px}
  .scene-copy h2{font-size:clamp(48px,14vw,72px)}
  .scene-copy p{max-width:92%;font-size:14px}
  .cinema-controls{left:18px;right:18px;gap:10px}
  .cinema-buttons button{padding:9px 10px}
}
@media(max-width:420px){
  .scene-frame{height:55%}
  .scene-frame-wide{height:52%}
  .scene-frame-tall{height:58%}
  .scene-copy h2{font-size:50px}
  .scene-copy p{font-size:13px}
  .cinema-buttons #cinemaPause{display:none}
}
.bio-grid,.timeline,.work-grid,.paving-grid,.project-grid,.municipality-grid{
  display:flex!important;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;
  scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px 18px;
}
.bio-grid::-webkit-scrollbar,.timeline::-webkit-scrollbar,.work-grid::-webkit-scrollbar,
.paving-grid::-webkit-scrollbar,.project-grid::-webkit-scrollbar,.municipality-grid::-webkit-scrollbar{display:none}
.info-card,.timeline-item,.work-card,.paving-card,.project-card,.municipality-card{
  flex:0 0 min(82vw,520px);scroll-snap-align:start
}
.timeline{margin-top:20px;border-left:0!important}
.timeline-item{
  display:block!important;min-height:250px;padding:24px!important;border:1px solid #dce5ef;
  border-radius:24px;background:#fff;box-shadow:0 14px 42px rgba(17,48,83,.08)
}
.timeline-item:before{display:none!important}
.timeline-item>strong{
  display:inline-flex;margin-bottom:22px;padding:7px 10px;border-radius:999px;
  background:#fff4d8;color:#8b6515!important;font-size:12px
}
.timeline-item h3{font-size:27px;line-height:1.02;letter-spacing:-.04em}
.timeline-item p{font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.section-dark .work-grid,.section-dark .project-grid,.section-dark .municipality-grid{padding-bottom:20px}
@media(min-width:800px){
  .info-card,.timeline-item,.work-card,.paving-card,.project-card,.municipality-card{flex-basis:46%}
}.rail-motion-hint{
  display:flex;align-items:center;gap:8px;margin:-8px 0 18px;color:#7d8da1;
  font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase
}
.rail-motion-hint:before{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--gold),transparent)}
.section-dark .rail-motion-hint{color:#aebed1}

/* Landing v6 — composição cinematográfica inspirada na referência enviada,
   usando somente fotografias reais já vinculadas às fontes. */
@media(max-width:760px){
  body{background:#03142f}
  .app-topbar{
    position:absolute;top:0;padding:calc(env(safe-area-inset-top) + 18px) 22px 8px;
    background:linear-gradient(180deg,rgba(1,10,25,.72),transparent);
    backdrop-filter:none;
  }
  .brand{font-size:25px;text-shadow:0 4px 20px rgba(0,0,0,.6)}
  .brand strong:after{height:5px;width:54px;background:linear-gradient(90deg,var(--gold),#ffdc77)}
  .top-actions{gap:8px}
  .top-actions .icon-btn{
    width:46px;height:46px;border-radius:50%;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(4,24,52,.58);backdrop-filter:blur(16px);
    box-shadow:0 7px 22px rgba(0,0,0,.22)
  }

  .hero{
    min-height:0;height:66svh;max-height:none;
    background:#03142f;overflow:hidden;
  }
  .hero:before,.hero:after{
    content:"";position:absolute;z-index:5;pointer-events:none;
    left:-22%;width:150%;height:170px;border-radius:50%;
    border-top:3px solid rgba(255,197,63,.78);
    filter:drop-shadow(0 0 10px rgba(255,190,42,.72));
    transform:rotate(-13deg);
    opacity:.7;
  }
  .hero:before{top:33%;animation:goldSweep 6.8s ease-in-out infinite alternate}
  .hero:after{top:63%;transform:rotate(11deg);animation:goldSweep2 7.6s ease-in-out infinite alternate}
  @keyframes goldSweep{
    from{translate:-3% 0;scale:.98;opacity:.35}
    to{translate:5% 5%;scale:1.05;opacity:.9}
  }
  @keyframes goldSweep2{
    from{translate:5% 0;scale:1;opacity:.25}
    to{translate:-4% -4%;scale:1.06;opacity:.75}
  }
  .hero-slide img{
    object-position:50% 24%;
    filter:saturate(.96) contrast(1.06) brightness(.9);
  }
  .hero-slide:first-child img{object-position:50% 20%}
  .hero-overlay{
    background:
      linear-gradient(90deg,rgba(2,12,31,.12),rgba(2,12,31,.02) 54%,rgba(5,31,71,.26)),
      linear-gradient(180deg,rgba(1,9,22,.1) 12%,rgba(2,15,35,.05) 38%,rgba(3,21,48,.52) 63%,#03142f 100%)
  }
  .hero-copy{
    left:22px;right:22px;bottom:56px;max-width:none;z-index:9;
  }
  .source-pill{
    margin-bottom:9px;padding:6px 9px;font-size:8.5px;
    background:rgba(2,20,47,.5)
  }
  .hero-copy h1{font-size:clamp(42px,12.8vw,65px);line-height:.91;max-width:94%}
  .hero-copy h1 em{color:var(--gold)}
  .hero-copy h2{font-size:clamp(42px,12vw,62px);line-height:.9}
  .hero-copy p{
    margin-top:10px;max-width:94%;font-size:14px;line-height:1.28;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
  }
  .start-experience{
    margin-top:14px;min-height:56px;width:100%;
    grid-template-columns:42px 1fr 25px;padding:6px 12px 6px 7px;
    box-shadow:0 11px 42px rgba(244,184,51,.42),0 0 0 1px rgba(255,226,138,.38);
  }
  .start-play{width:42px;height:42px;font-size:16px}
  .start-experience b{font-size:13px}
  .hero-bottom{display:none}

  .quick-grid{
    position:relative;z-index:20;margin-top:-8px;
    width:100%;padding:10px 18px 112px;
    grid-template-columns:1fr 1fr;gap:10px;
    background:
      radial-gradient(circle at 50% -8%,rgba(29,84,156,.32),transparent 36%),
      linear-gradient(180deg,#03142f,#051b3b 72%,#03142f);
  }
  .quick-grid:before{
    content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
    background:linear-gradient(125deg,transparent 20%,rgba(241,189,67,.08) 48%,transparent 68%)
  }
  .quick-grid a{
    min-height:156px;padding:14px;border-radius:19px;
    border:1px solid rgba(79,140,222,.52);
    box-shadow:0 16px 38px rgba(0,0,0,.27),inset 0 0 0 1px rgba(255,255,255,.03);
  }
  .quick-grid a:nth-child(1),.quick-grid a:nth-child(5){border-color:rgba(241,189,67,.63)}
  .quick-grid a>span{
    width:39px;height:39px;font-size:18px;margin-bottom:auto;
    background:rgba(5,24,55,.7);
    box-shadow:0 0 0 1px rgba(241,189,67,.18),0 0 18px rgba(241,189,67,.12)
  }
  .quick-grid b{font-size:19px;line-height:.98;max-width:78%}
  .quick-grid small{display:none}
  .quick-grid a:before{
    background:linear-gradient(180deg,rgba(3,18,42,.02) 0%,rgba(3,20,46,.46) 42%,rgba(3,19,43,.97) 100%)
  }
  .quick-grid a::marker{display:none}
  .quick-grid a > b:after{
    content:"›";position:absolute;right:12px;bottom:12px;
    width:34px;height:34px;display:grid;place-items:center;border-radius:50%;
    border:1px solid rgba(255,255,255,.38);color:#fff;font-size:25px;font-weight:400;
    background:rgba(4,24,52,.52);backdrop-filter:blur(8px)
  }
  .quick-grid a:nth-child(1) > b:before,
  .quick-grid a:nth-child(5) > b:before{
    content:"";position:absolute;left:14px;bottom:9px;width:36px;height:3px;border-radius:9px;background:var(--gold)
  }
  .bottom-nav{
    z-index:110;left:18px;right:18px;bottom:max(10px,env(safe-area-inset-bottom));
    max-width:none;border-radius:27px;
    background:rgba(5,26,58,.95);
    border:1px solid rgba(255,255,255,.2);
    box-shadow:0 20px 60px rgba(0,0,0,.45),0 0 40px rgba(30,91,166,.12)
  }
  .bottom-nav a{padding:12px 4px 11px}
  .bottom-nav a>span{font-size:24px}
  .bottom-nav a>b{font-size:11px}

  #feed.section{background:#f4f7fb;padding-top:28px}
}

.welcome-eyebrow{
  display:block;margin:0 0 8px;color:#fff;font-size:12px;font-weight:900;
  letter-spacing:.12em;text-transform:uppercase;text-shadow:0 4px 16px rgba(0,0,0,.55)
}
.quick-grid a:nth-child(1):after{background-image:url("/images/conheca-zezinho/optimized/hero-portrait.webp")!important}
.quick-grid a:nth-child(2):after{background-image:url("/images/conheca-zezinho/optimized/gallery-01-960.webp")!important}
.quick-grid a:nth-child(3):after{background-image:url("/images/conheca-zezinho/optimized/gallery-02-960.webp")!important}
.quick-grid a:nth-child(4):after{background-image:url("/images/conheca-zezinho/optimized/gallery-03-960.webp")!important}
.quick-grid a:nth-child(5):after{background-image:url("/images/conheca-zezinho/optimized/gallery-04-960.webp")!important}
.quick-grid a:nth-child(6):after{background-image:url("/images/conheca-zezinho/optimized/gallery-09-960.webp")!important}
.feed-avatar{object-position:50% 38%}
@media(max-width:760px){
  .welcome-eyebrow{font-size:10px;margin-bottom:7px}
  .hero-slide:first-child img{object-position:48% 32%!important}
}

.push-setup-dialog{
  width:min(520px,calc(100% - 26px));border:0;border-radius:28px;padding:0;background:#fff;
  box-shadow:0 30px 100px rgba(0,0,0,.38)
}
.push-setup-dialog::backdrop{background:rgba(0,10,28,.72);backdrop-filter:blur(5px)}
.push-setup-shell{position:relative;padding:28px}
.push-setup-shell h2{margin:8px 0 10px;font-size:31px;line-height:1.02;letter-spacing:-.045em}
.push-setup-shell>p{color:#607289;line-height:1.48}
.push-steps{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px}
.push-steps li{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;padding:11px 12px;border-radius:15px;background:#f3f7fb;color:#41566f;line-height:1.4}
.push-steps li>b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#092a59;color:#ffd66e}
.setup-secondary{margin-top:9px;background:#eef3f8;color:#254e7b}
.push-setup-shell small{display:block;margin-top:12px;color:#708299;line-height:1.4}

/* Trajetória: manter a fotografia oficial e apenas reenquadrar dentro do card. */
#trajetoria .section-visual img{
  object-position:50% 22%;
  transform:scale(1);
}
#trajetoria .section-visual:hover img,
#trajetoria .section-visual.tour-card-active img,
#trajetoria.tour-focus .section-visual img{
  transform:scale(1.035);
}
@media(max-width:760px){
  #trajetoria .section-visual{
    min-height:285px;
  }
  #trajetoria .section-visual img{
    object-position:50% 20%;
  }
}
