:root{--cream:#f4e4c5;--ink:#21140e;--wood:#24140c;--red:#a8281d;--blue:#1f5f78;--gold:#e3ad32}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#130905;color:var(--ink);font-family:Georgia,"Times New Roman",serif}
img{display:block;max-width:100%}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 24px;background:#f4e4c5;border-bottom:5px solid var(--gold);box-shadow:0 8px 20px rgba(0,0,0,.3)}
.brand{width:300px;text-decoration:none;color:var(--ink);background:#fff2d2;border:3px solid #8b5b2d;border-radius:12px;padding:8px 18px;text-align:center;transform:rotate(-1deg)}
.brand span{display:block;font:900 14px Arial;text-transform:uppercase;letter-spacing:1px}
.brand strong{display:block;font:66px/.82 Impact,sans-serif;text-transform:uppercase;letter-spacing:2px}
.brand em{display:block;color:#8b421e;font-size:28px}
.nav{display:flex;gap:20px;flex-wrap:wrap}
.nav a{font:900 13px Arial,sans-serif;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:3px solid transparent;padding:10px 0}
.nav a:hover{color:var(--red);border-color:var(--red)}
.menu{display:none}
.hero{position:relative;min-height:660px;background:#244b6c;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-text{position:relative;z-index:2;text-align:center;color:#fff;padding-top:130px;text-shadow:4px 5px 0 rgba(0,0,0,.45)}
.hero-text p{font:70px Impact,sans-serif;text-transform:uppercase;letter-spacing:3px;margin:0}
.hero-text h1{font:128px/.85 Impact,sans-serif;text-transform:uppercase;letter-spacing:4px;margin:10px 0 24px}
.ribbon{display:inline-block;background:var(--red);color:white;text-decoration:none;font-size:34px;font-style:italic;padding:15px 42px;box-shadow:0 12px 28px rgba(0,0,0,.35)}
.pie-polaroid{position:absolute;right:7%;top:9%;z-index:3;width:270px;padding:14px 14px 45px;background:#fff;transform:rotate(8deg);box-shadow:0 14px 30px rgba(0,0,0,.42)}
.paper{background:radial-gradient(circle at 14% 10%,rgba(100,60,20,.13),transparent 240px),var(--cream)}
.wood{background:repeating-linear-gradient(0deg,#26150d,#26150d 18px,#301b10 20px,#1f1009 42px);color:#fff4d8}
section{padding:64px clamp(22px,6vw,92px)}
h2{font:72px/.9 Impact,sans-serif;text-transform:uppercase;letter-spacing:2px;color:var(--blue);margin:0 0 24px}
.history{display:grid;grid-template-columns:.85fr 1fr 1.05fr;gap:30px;align-items:center}
.kicker{font:38px Impact,sans-serif;text-transform:uppercase;color:var(--blue);margin:0}
.history p,.location-text p,.about p{font-size:21px;line-height:1.5}
.photo{display:block;background:white;padding:12px;box-shadow:0 16px 34px rgba(0,0,0,.35)}
.tilt-left{transform:rotate(-4deg)}
.tilt-right{transform:rotate(3deg)}
.btn{display:inline-block;padding:14px 24px;border-radius:5px;text-decoration:none;text-transform:uppercase;font:900 14px Arial,sans-serif;letter-spacing:.04em;color:white;box-shadow:0 5px 0 rgba(0,0,0,.18)}
.btn.blue{background:var(--blue)}.btn.red{background:var(--red)}.btn.gold{background:var(--gold);color:#22140c}
.things h2,.gallery h2{text-align:center;color:#fff4d8}
.card-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}
.card{display:block;background:#f4e4c5;color:var(--ink);text-decoration:none;border-radius:8px;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.35);transition:.18s}
.card:hover{transform:translateY(-7px)}
.card img{height:150px;width:100%;object-fit:cover}
.card strong{display:block;font:24px Impact,sans-serif;text-transform:uppercase;text-align:center;margin:15px 12px 8px}
.card span{display:block;font-size:16px;line-height:1.35;text-align:center;padding:0 14px 18px}
.location{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.map{border:10px solid rgba(255,255,255,.8);box-shadow:0 14px 30px rgba(0,0,0,.3)}
.videos{text-align:center}
.videos h2{color:var(--red)}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:26px}
.video{position:relative;text-decoration:none;color:var(--ink);font-size:18px}
.video img{height:210px;width:100%;object-fit:cover;border-radius:9px;box-shadow:0 14px 30px rgba(0,0,0,.3)}
.video span{position:absolute;top:72px;left:50%;transform:translateX(-50%);width:72px;height:72px;border-radius:50%;background:rgba(0,0,0,.6);color:white;display:grid;place-items:center;font-size:32px;padding-left:5px}
.video strong{display:block;margin-top:12px}
.festival{position:relative;padding:0;background:#21140e;color:white;text-align:center}
.festival>img{width:100%;min-height:360px;object-fit:cover}
.festival-copy{position:absolute;inset:0;display:grid;place-content:center;padding:40px;background:rgba(0,0,0,.08)}
.festival h2{color:white}
.festival p{font-size:22px;margin:0 auto 18px;max-width:760px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.gallery-grid a{display:block;border:8px solid #f4e4c5;box-shadow:0 14px 30px rgba(0,0,0,.35)}
.gallery-grid img{height:250px;width:100%;object-fit:cover}
.about{text-align:center}.about p{max-width:850px;margin:auto}
footer{text-align:center;background:#100804;color:#fff0d0;padding:28px;font-size:18px}
@media(max-width:1200px){.card-grid{grid-template-columns:repeat(3,1fr)}.history{grid-template-columns:1fr 1fr}.pie-large{grid-column:1/-1}.hero-text h1{font-size:95px}.hero-text p{font-size:50px}}
@media(max-width:760px){.site-header{align-items:flex-start}.brand{width:220px}.brand strong{font-size:44px}.menu{display:block;background:var(--red);color:white;border:0;border-radius:6px;font-size:24px;padding:8px 12px}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#f4e4c5;padding:16px}.nav.open{display:grid;grid-template-columns:1fr 1fr}.hero{min-height:560px}.hero-text{padding-top:150px}.hero-text p{font-size:34px}.hero-text h1{font-size:68px}.pie-polaroid{display:none}.history,.location,.video-grid,.gallery-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr}.festival-copy{position:relative;background:#21140e}}
