*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:auto;max-width:1800px;background:#ffebcc url(img/papel.webp);color:#103b20;font:normal clamp(16px,1.8vw,24px) Georgia,serif}img{display:block;width:100%}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}header,nav,.hero,.cards,article,footer,#programacao{display:flex;align-items:center}header{justify-content:space-between;padding:0 4%;border-bottom:3px solid #972b16}header img{width:clamp(130px,19vw,280px)}nav{gap:4vw;font-weight:bold}.hero>div{text-align:center;width:44%;padding:1.2% 1%}.hero h1{margin:0}.hero strong,.btn,figcaption,button{display:inline-block;color:#fff1d7;font-weight:bold;background:#982911;border-radius:8px;padding:.3em .8em}.hero strong{font-size:1.35em;font-style:italic}.hero p{margin:.3em;font-size:1.4em;font-weight:bold}.btn{background:#103d20;border-radius:30px}.scene{width:56%;align-self:stretch;object-fit:cover;min-height:0}.hero{overflow:hidden}.hero .scene{height:35vw;max-height:630px}h2,h3,h4{margin:0;text-align:center;font-style:italic}h2{font-size:clamp(27px,4.5vw,70px);padding:.25em 0 .4em}h2:before,h2:after{content:'✿';color:#e9a000;margin:0 .35em;font-size:.8em}.cards{align-items:stretch;gap:1.2%;padding:0 1.6% 2%}figure{margin:0;width:25%;text-align:center}figure img,article img{border-radius:12px}figcaption{position:relative;margin-top:-.2em;font-size:1.13em}figure:nth-child(even) figcaption{background:#174924}#programacao,footer{background:#103d21;color:#fff0d7}#programacao img{width:50%}#programacao div{padding:1% 4%;width:50%}h3{font-size:clamp(36px,6vw,96px);line-height:.99}#programacao p,article p,footer p,dialog p{font-family:system-ui,sans-serif}#programacao p{border-top:3px solid #dfac35;padding-top:.7em}article{gap:4%;padding:0 3% 2%}article img{width:54%}footer{padding:2% 3%;align-items:stretch;text-align:center}footer section{flex:1;padding:0 2%}footer section+section{border-left:1px solid #f6d9a9}footer img{border-radius:15px;margin:.6em auto}h4{font-size:1.55em}button{border:1px solid #eab668;font: bold 1em Georgia;cursor:pointer}.social{border-radius:50%;background:#fff1d7;color:#103d21;width:1.7em;height:1.7em;padding:0;font-size:1.6em}dialog{border:0;border-radius:12px;text-align:center;background:#fff1d7;color:#103d21}dialog::backdrop{background:#142519a8}@media(max-width:650px){header{flex-direction:column;padding:4px}nav{width:100%;justify-content:space-evenly;gap:0;padding:9px 0}.hero,article,#programacao,footer{flex-direction:column}.hero>div,.hero .scene,article img,#programacao img,#programacao div{width:100%}.hero>div{padding:10px 12px 18px}.hero h1 img{max-width:400px;margin:auto}.hero .scene{height:52vw}.cards{flex-wrap:wrap;gap:12px 2%;padding:4px 3% 20px}figure{width:49%}figcaption{font-size:1em}h2{padding:18px 0}#programacao div{padding:20px 7%}#programacao p{text-align:center}article{padding:0 5% 12px}footer{padding:15px}footer section{padding:14px}footer section+section{border:0;border-top:1px solid #bca47a}footer img{max-width:310px}}

header{padding-block:clamp(10px,1.3vw,22px)}
nav a{padding-block:8px}
.hero>div{padding:clamp(28px,3.5vw,64px) 3%}
.hero h1{margin-bottom:18px}
.hero p{margin:18px 0}
.hero .scene{height:auto;min-height:clamp(400px,39vw,680px)}
#barracas,#a-feira{padding:clamp(40px,5vw,88px) 4%}
h2{padding:0;margin-bottom:clamp(26px,3vw,48px)}
.cards{padding:0;gap:clamp(14px,2.3vw,36px)}
figure{flex:1;min-width:0}
figcaption{margin-top:12px;padding:.4em .65em}
#programacao{align-items:stretch}
#programacao img{object-fit:cover}
#programacao div{align-self:center;padding:clamp(34px,4.5vw,76px) 5%}
#programacao p{line-height:1.5;padding-top:18px;margin-bottom:0}
article{padding:0;gap:5%}
article p,footer p{line-height:1.6}
footer{padding:clamp(38px,4.5vw,74px) 3%}
footer section{padding-inline:3%}
footer h4{margin-bottom:20px}
@media(max-width:650px){
 header{padding:10px 8px}
 nav{padding:6px 0 0;flex-wrap:wrap}
 .hero>div{padding:28px 5%}
 .hero .scene{min-height:0;height:62vw}
 #barracas,#a-feira{padding:42px 5%}
 .cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}
 figure{width:auto}
 #programacao div{padding:32px 7%}
 article{gap:20px}
 article p{margin:0}
 footer{padding:8px 6%}
 footer section{padding:28px 0}
}

.hero, #programacao, article {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:center;
  gap:clamp(22px,4vw,64px);
}
.hero, #programacao {padding:clamp(24px,4vw,64px) 4%}
.hero>div, #programacao div {width:100%;padding:0}
.hero .scene, #programacao img, article img, figure img {
  display:block;
  width:100%;
  height:auto;
  min-height:0;
  max-height:none;
  aspect-ratio:1;
  object-fit:cover;
  border-radius:18px;
  align-self:center;
}
.hero .scene {object-position:38% center}
#programacao img {object-position:35% center}
article img {object-position:40% center}
.cards {display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
figure {position:relative;width:auto}
figcaption {
  position:absolute;
  bottom:8px;
  left:50%;
  transform:translateX(-50%);
  width:max-content;
  max-width:95%;
  margin:0;
}
footer #local img {width:min(100%,240px);aspect-ratio:1;object-fit:cover}
@media(max-width:800px){
 .cards {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
 .hero, #programacao, article {grid-template-columns:minmax(0,1fr)}
 .hero>div {padding:8px 0}
 #programacao div {padding:8px 3%}
}
