:root{font-family:Inter,system-ui,sans-serif;color:#1f160e;background:#f7f1e8;--bg: #f7f1e8;--surface: rgba(255, 248, 240, .84);--surface-strong: #fffdf8;--text: #1f160e;--muted: #6b5948;--line: rgba(110, 73, 37, .14);--primary: #b86a24;--primary-strong: #8d4f1c;--accent: #442518;--shadow: 0 24px 80px rgba(49, 25, 7, .12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at top,rgba(221,171,118,.24),transparent 25%),linear-gradient(180deg,#fffaf3,#f7f1e8 35%,#f4ede4);color:var(--text)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}#root{min-height:100vh}.app-shell{position:relative}.container{width:min(1120px,calc(100% - 2rem));margin:0 auto}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(1160px,calc(100% - 1.5rem));margin:1rem auto 0;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#341f129e;color:#fff7ef;box-shadow:0 12px 40px #1b100929}.brand{display:inline-flex;align-items:center;gap:.85rem;min-width:0}.brand strong,.brand small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand strong{font-size:.95rem}.brand small{font-size:.75rem;color:#fff7efb8}.brand-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#ffffff1f;font-size:1.2rem}.site-nav{display:flex;align-items:center;gap:1rem}.site-nav a{color:#fff7efe0;font-size:.92rem}.site-nav a:hover{color:#ffdcb7}.menu-button{display:none;flex-direction:column;gap:.28rem;padding:0;border:0;background:transparent;cursor:pointer}.menu-button span{width:1.3rem;height:2px;border-radius:999px;background:#fff7ef}.hero-section{position:relative;min-height:100vh;margin-top:-5.25rem;padding:8rem 0 4rem;overflow:hidden;color:#fffaf5}.hero-backdrop{position:absolute;inset:0;background-position:center;background-size:cover;transform:scale(1.05)}.hero-backdrop:after{content:"";position:absolute;inset:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-content{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .9fr;gap:2.25rem;align-items:center}.hero-copy,.hero-panel,.info-card,.timing-card,.history-card,.event-card,.gallery-card,.contact-card{border:1px solid rgba(255,255,255,.12);background:#301d116b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow)}.hero-copy{padding:2rem;border-radius:2rem}.eyebrow{margin:0 0 .8rem;letter-spacing:.14em;text-transform:uppercase;color:#f4c38d;font-size:.78rem;font-weight:700}.hero-copy h1,.section-copy h2{margin:0;font-family:Playfair Display,serif;line-height:1.04}.hero-copy h1{font-size:clamp(2.7rem,5vw,4.8rem);max-width:12ch}.hero-tagline{margin:1rem 0 0;font-size:1.2rem;color:#fff8f1eb}.hero-description{margin:1rem 0 0;max-width:60ch;color:#fff8f1cc;line-height:1.75}.hero-actions,.contact-actions,.social-links{display:flex;flex-wrap:wrap;gap:.8rem}.hero-actions{margin-top:1.5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.85rem;padding:.8rem 1.2rem;border-radius:999px;font-weight:700;transition:transform .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}.button:hover{transform:translateY(-1px)}.button.primary{background:linear-gradient(135deg,#dc9b56,#b86a24);color:#29170d}.button.secondary{border:1px solid rgba(255,230,204,.34);color:#fff8f0}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.75rem}.hero-stats article{padding:1rem;border-radius:1.25rem;background:#ffffff14}.hero-stats strong,.hero-frame-copy strong,.info-card strong,.timing-card strong,.history-card h3,.event-copy h3,.contact-card strong{display:block}.hero-stats strong{margin-bottom:.35rem;font-size:.96rem}.hero-stats span{color:#fff8f1b8;font-size:.88rem;line-height:1.45}.hero-panel{padding:1rem;border-radius:2rem}.hero-frame{overflow:hidden;border-radius:1.55rem;background:#ffffff14}.hero-image{width:100%;aspect-ratio:4 / 5;object-fit:cover}.hero-frame-copy{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.05rem 1.1rem}.hero-frame-copy span,.hero-note,.section-description,.stacked-copy p,.info-card p,.timing-card p,.history-card p,.event-copy p,.contact-card p,.footer-row p{line-height:1.7}.hero-frame-copy span,.hero-note{color:#fff8f1b8}.hero-dots{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.hero-dots button{width:.7rem;height:.7rem;padding:0;border:0;border-radius:999px;background:#fff0e342;cursor:pointer}.hero-dots button.is-active{width:2rem;background:#efb06e}.hero-note{margin:1rem 0 0;font-size:.95rem}.content-section{padding:5.5rem 0}.content-section.light{background:#fffbf5b8}.section-copy{max-width:48rem;margin-bottom:2rem}.section-copy h2{font-size:clamp(2rem,4vw,3.4rem);color:var(--accent)}.section-description{margin-top:.9rem;color:var(--muted)}.about-grid,.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:start}.stacked-copy{display:grid;gap:1rem}.stacked-copy p,.info-card p,.timing-card span,.history-card p,.event-copy p,.contact-card p{margin:0;color:var(--muted)}.info-card-grid,.timing-grid,.history-grid,.event-grid,.gallery-grid{display:grid;gap:1.25rem}.info-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-card,.timing-card,.history-card,.event-card,.gallery-card,.contact-card{padding:1.35rem;border-radius:1.5rem;background:#ffffffc2;border-color:var(--line)}.info-card span,.event-copy span,.contact-card span{display:block;margin-bottom:.45rem;color:var(--primary);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.info-card strong,.timing-card h3,.history-card h3,.event-copy h3,.contact-card strong,.contact-card a{color:var(--accent)}.timing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.timing-card h3{margin:0 0 1rem;font-size:1.08rem}.timing-card p+p{margin-top:.85rem}.timing-card span{display:block;font-size:.88rem}.timing-card strong{margin-top:.2rem}.history-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.history-card h3,.event-copy h3{margin:0 0 .8rem;font-size:1.18rem}.event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.event-card{overflow:hidden;padding:0}.event-media{aspect-ratio:4 / 3;background:linear-gradient(135deg,#f2ddc5,#efd2ad)}.event-media img{width:100%;height:100%;object-fit:cover}.event-copy{padding:1.25rem}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-card{padding:0;overflow:hidden}.gallery-card img{width:100%;aspect-ratio:1 / 1;object-fit:cover}.gallery-card figcaption{padding:.95rem 1rem 1.05rem;color:var(--accent);font-weight:600}.contact-card{display:grid;gap:1rem}.contact-card a:hover,.social-links a:hover{color:var(--primary-strong)}.social-links a{font-weight:700;color:var(--primary)}.site-footer{padding:1.6rem 0 2.4rem}.footer-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.25rem;color:var(--muted)}.image-placeholder{display:grid;place-items:center;min-height:100%;padding:2rem;color:var(--muted);text-align:center}@media(max-width:960px){.site-header{width:calc(100% - 1rem);padding-inline:.9rem;border-radius:1.4rem}.menu-button{display:inline-flex}.site-nav{position:absolute;top:calc(100% + .65rem);right:0;left:0;display:none;flex-direction:column;align-items:stretch;padding:.8rem;border-radius:1.4rem;background:#301d11eb;border:1px solid rgba(255,255,255,.12)}.site-nav.is-open{display:flex}.hero-content,.about-grid,.contact-grid,.history-grid,.event-grid,.gallery-grid,.timing-grid{grid-template-columns:1fr}.hero-section{margin-top:-6.5rem;padding-top:8.8rem}.hero-copy h1{max-width:none}.hero-stats,.info-card-grid{grid-template-columns:1fr}}@media(max-width:720px){.container{width:min(1120px,calc(100% - 1.25rem))}.hero-copy,.hero-panel,.info-card,.timing-card,.history-card,.event-copy,.contact-card{padding:1.1rem}.content-section{padding:4.5rem 0}.hero-actions,.contact-actions,.social-links{flex-direction:column}.button{width:100%}.footer-row{flex-direction:column}}
