:root{
  --maroon:#7a1230; --maroon-d:#560c22; --gold:#e0a010; --cream:#fff2b8; --ink:#2b1a1f; --muted:#6d5a5f;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.2}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;z-index:10;background:var(--maroon-d);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.25)}
header .wrap{max-width:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 24px}
.brand{font-family:Georgia,serif;font-size:1.3rem;color:var(--maroon);text-decoration:none;font-weight:bold;display:flex;align-items:center;background:#fff;padding:4px 16px 4px 10px;border-radius:12px}
nav{display:flex;gap:18px;flex-wrap:wrap}
nav a{text-decoration:none;font-size:.95rem}
nav a{color:#fff;font-weight:600}
nav a:hover{color:var(--gold)}
.hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;color:#fff;text-align:center;padding:0 0 90px;overflow:hidden;background:var(--maroon-d)}
.hero h1{font-size:clamp(2.4rem,7vw,4rem);color:#ffd84a;margin-bottom:12px;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.hero p{max-width:620px;margin:0 auto 18px;font-size:1.15rem;text-shadow:0 1px 8px rgba(0,0,0,.7)}
.hero .aff{max-width:none;font-size:.95rem;font-style:italic;color:#ffe9a0}
@media(min-width:900px){.hero .aff{white-space:nowrap}}
.slides{position:absolute;inset:0}
.slides div{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.4s ease}
.slides div.on{opacity:1}
.slides::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(40,5,15,.25),rgba(40,5,15,.78))}
.hero-text{position:relative;z-index:1;width:100%}
.btn{display:inline-block;padding:12px 26px;border-radius:999px;background:var(--maroon);color:#fff;font-weight:700;text-decoration:none;margin:4px}
.btn.alt{background:transparent;color:#fff;border:2px solid #ffd84a}
section{padding:68px 0}
section h2{font-size:2rem;color:var(--maroon);text-align:center;margin-bottom:10px}
.sub{text-align:center;color:var(--muted);max-width:620px;margin:0 auto 36px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.card{background:#fff;border-radius:14px;padding:24px;box-shadow:0 2px 10px rgba(80,20,40,.08);border-top:4px solid var(--gold)}
.card h3{color:var(--maroon);margin-bottom:8px}
.card p{color:var(--muted);font-size:.95rem}
.alt-bg{background:#ffe27a}
.alt-bg .card{background:#fffbe9}
.about{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;text-align:center}
.stats b{display:block;font-family:Georgia,serif;font-size:2rem;color:var(--maroon)}
.video{aspect-ratio:16/9;width:100%;border:0;border-radius:14px}
.gallery div{aspect-ratio:4/3;border-radius:12px;background:#ead9c3;display:grid;place-items:center;color:var(--muted);font-size:.9rem}
.contact{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.contact p{margin-bottom:10px}
.contact iframe{width:100%;min-height:300px;border:0;border-radius:14px}
form{display:grid;gap:10px;margin-top:16px}
input,select,textarea{padding:11px;border:1px solid #d8c6ae;border-radius:8px;font:inherit;background:#fff}
button{padding:12px;border:0;border-radius:8px;background:var(--maroon);color:#fff;font:inherit;font-weight:700;cursor:pointer}
footer{background:var(--maroon-d);color:#e9d9c5;text-align:center;padding:28px 0;font-size:.9rem}
footer a{color:var(--gold)}
.wa{position:fixed;right:18px;bottom:90px;background:#25d366;color:#fff;text-decoration:none;font-weight:700;padding:14px 20px;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.scrollbtn{position:fixed;right:18px;bottom:156px;width:46px;height:46px;border:0;border-radius:50%;background:var(--maroon);color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.3);z-index:20}
.scrollbtn:hover{background:var(--maroon-d)}
.scrolltip{position:fixed;right:74px;bottom:164px;background:#fff;color:var(--maroon-d);font-weight:700;font-size:.9rem;padding:8px 14px;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.25);z-index:20;white-space:nowrap;animation:nudge 1.2s ease-in-out infinite;transition:opacity .3s}
.scrolltip.hide{opacity:0;pointer-events:none}
@keyframes nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.scrollbtn.sup{bottom:210px;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .3s,transform .3s}
.scrollbtn.sup.show{opacity:1;pointer-events:auto;transform:none}
.scrollbtn.sdown{transition:opacity .3s}
.scrollbtn.sdown.hide{opacity:0;pointer-events:none}
.scrollbtn::after{content:attr(data-tip);position:absolute;right:56px;top:50%;transform:translateY(-50%);background:var(--maroon-d);color:#fff;font-size:.85rem;font-weight:600;padding:6px 12px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}
.scrollbtn:hover::after,.scrollbtn:focus-visible::after{opacity:1}
