
:root{
  --burgundy:#7b1021;
  --burgundy-dark:#5f0c19;
  --gold:#c79a3b;
  --cream:#fbf7ef;
  --paper:#fffdf8;
  --ink:#2d211d;
  --muted:#6b5c55;
  --line:#e8ddcb;
  --green:#32583d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  color:var(--ink);
  background:var(--cream);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,92vw);margin:0 auto}
.topbar{
  background:var(--burgundy-dark);
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:14px;
}
.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0;flex-wrap:wrap}
header{
  background:rgba(255,253,248,.97);
  border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:20;
  backdrop-filter:blur(10px);
}
.navwrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 0}
.brand{display:flex;align-items:center;gap:12px;min-width:280px}
.brand img{width:72px;height:72px;object-fit:cover;border-radius:50%}
.brand-title{font-size:24px;color:var(--burgundy);line-height:1.05;font-weight:700}
.brand-sub{font-family:Arial,sans-serif;font-size:12px;color:var(--muted);margin-top:5px}
nav{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-family:Arial,sans-serif;font-size:14px}
nav a{padding:9px 0;border-bottom:2px solid transparent}
nav a:hover,nav a.active{color:var(--burgundy);border-color:var(--gold)}
.btn{
  display:inline-block;padding:13px 20px;border-radius:8px;
  font-family:Arial,sans-serif;font-weight:700;font-size:14px;
  transition:.2s ease;border:1px solid transparent;
}
.btn-primary{background:var(--burgundy);color:white}
.btn-primary:hover{background:var(--burgundy-dark)}
.btn-gold{background:var(--gold);color:white}
.btn-outline{border-color:var(--gold);color:var(--burgundy);background:white}
.hero{
  min-height:520px;
  display:grid;
  place-items:center;
  text-align:center;
  color:white;
  position:relative;
  background:
    linear-gradient(rgba(35,18,18,.52),rgba(35,18,18,.64)),
    radial-gradient(circle at 20% 20%, rgba(199,154,59,.28), transparent 34%),
    linear-gradient(135deg,#765a4b,#304d3e);
}
.hero .container{padding:78px 0}
.hero .cross{font-size:36px;color:#f6d384}
.hero h1{font-size:clamp(40px,6vw,72px);margin:12px 0 6px;line-height:1}
.hero .lead{font-size:clamp(19px,2.5vw,28px);margin:0 auto 10px}
.hero .quote{font-style:italic;font-size:18px;max-width:720px;margin:18px auto 28px}
.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.section{padding:62px 0}
.section.alt{background:white}
.section-title{text-align:center;margin-bottom:34px}
.section-title .kicker{font-family:Arial,sans-serif;color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}
.section-title h2{font-size:38px;margin:8px 0;color:var(--burgundy)}
.section-title p{max-width:760px;margin:0 auto;color:var(--muted);line-height:1.7}
.grid{display:grid;gap:22px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{
  background:var(--paper);border:1px solid var(--line);border-radius:14px;
  padding:26px;box-shadow:0 10px 25px rgba(75,54,38,.06)
}
.card h3{margin-top:0;color:var(--burgundy);font-size:24px}
.card p{line-height:1.7;color:var(--muted)}
.icon{font-size:34px;color:var(--gold);margin-bottom:10px}
.band{
  background:linear-gradient(135deg,var(--burgundy-dark),var(--burgundy));
  color:#fff;padding:44px 0
}
.band .container{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}
.band h2{margin:0 0 8px;font-size:34px}
.band p{margin:0;color:#f3dfdf;max-width:760px}
.info-list{list-style:none;padding:0;margin:0}
.info-list li{padding:10px 0;border-bottom:1px solid var(--line);line-height:1.5}
.schedule .day{font-family:Arial,sans-serif;font-weight:700;color:var(--burgundy)}
.schedule .time{font-weight:700}
.notice{
  border-left:4px solid var(--gold);
  background:#fff8e9;
  padding:18px 20px;border-radius:8px;
  line-height:1.65;color:#594a42
}
.footer{
  background:#241b1c;color:#eee;padding:46px 0 24px;margin-top:0
}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.footer h3{color:#fff}
.footer p,.footer li{color:#cfc5c5;line-height:1.7}
.footer ul{list-style:none;padding:0}
.footer .copy{border-top:1px solid #493b3d;margin-top:30px;padding-top:18px;color:#aa9d9d;font-family:Arial,sans-serif;font-size:13px}
.page-hero{
  padding:72px 0 56px;
  background:linear-gradient(135deg,#f6eee3,#fff);
  border-bottom:1px solid var(--line)
}
.page-hero h1{font-size:48px;color:var(--burgundy);margin:0 0 10px}
.page-hero p{font-size:18px;color:var(--muted);max-width:760px;line-height:1.7}
.table{width:100%;border-collapse:collapse;background:white;border-radius:10px;overflow:hidden}
.table th,.table td{padding:14px;border-bottom:1px solid var(--line);text-align:left}
.table th{background:#f3e9da;color:var(--burgundy);font-family:Arial,sans-serif}
.cta-box{
  background:linear-gradient(135deg,#fff8eb,#fff);
  border:1px solid #ead8b4;border-radius:16px;padding:30px
}
.small{font-size:14px;color:var(--muted);font-family:Arial,sans-serif}
@media(max-width:900px){
  .grid-3,.grid-2,.footer-grid{grid-template-columns:1fr}
  nav{display:none}
  .brand{min-width:0}
  .hero{min-height:470px}
}
