
:root{
  --ink:#271a2e;
  --purple:#5b287d;
  --purple2:#7c3aa1;
  --gold:#d7a61d;
  --wine:#8e2937;
  --cream:#f7f0df;
  --paper:#fffdf8;
  --muted:#6e6470;
  --line:#e4d9cc;
  --shadow:0 16px 48px rgba(39,26,46,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Georgia, "Times New Roman", serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.65
}
img{max-width:100%;display:block}
a{color:inherit}
.container{width:min(1180px,calc(100% - 36px));margin:auto}
.topbar{
  background:var(--ink);
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:13px
}
.topbar .container{display:flex;justify-content:space-between;gap:18px;padding:8px 0;flex-wrap:wrap}
.header{
  background:rgba(255,253,248,.96);
  position:sticky;top:0;z-index:40;
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(12px)
}
.navrow{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 0}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none}
.brand img{width:70px;height:70px;object-fit:contain}
.brand-title{font-weight:700;font-size:20px;line-height:1.05;letter-spacing:.3px}
.brand-sub{font-family:Arial,sans-serif;color:var(--muted);font-size:12px;margin-top:5px}
nav{display:flex;align-items:center;gap:18px;font-family:Arial,sans-serif;font-size:14px}
nav a{text-decoration:none;font-weight:700}
nav a:hover{color:var(--purple)}
.menu-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 12px;font-weight:800}
.hero{
  min-height:620px;
  display:grid;align-items:center;
  position:relative;overflow:hidden;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(25,13,31,.92),rgba(47,27,52,.68) 55%,rgba(47,27,52,.18)),
    url("https://static.wixstatic.com/media/ef6287_6ffebe3a9e564d268e13269abe6bdd7e~mv2.jpg") center/cover no-repeat;
}
.hero:before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 25% 30%,rgba(215,166,29,.25),transparent 34%)
}
.hero .container{position:relative;z-index:2}
.kicker{
  display:inline-flex;gap:8px;align-items:center;
  font:700 12px/1 Arial,sans-serif;
  text-transform:uppercase;letter-spacing:2px;
  color:#ffe3৭f
}
.kicker:before{content:"";width:34px;height:2px;background:var(--gold)}
h1,h2,h3{line-height:1.1;margin:0 0 18px}
h1{font-size:clamp(42px,7vw,84px);max-width:900px}
.hero p{font:18px/1.7 Arial,sans-serif;max-width:700px;color:#f3edf4}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{
  display:inline-block;text-decoration:none;
  font:800 14px/1 Arial,sans-serif;
  padding:15px 20px;border-radius:999px;
  border:2px solid transparent
}
.btn-primary{background:var(--gold);color:#231826}
.btn-secondary{border-color:#fff;color:#fff}
.section{padding:84px 0}
.section.alt{background:var(--cream)}
.eyebrow{font:800 12px/1 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;color:var(--purple)}
.section-title{font-size:clamp(34px,5vw,58px)}
.lede{font:18px/1.7 Arial,sans-serif;color:var(--muted);max-width:760px}
.grid{display:grid;gap:24px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{
  background:#fff;border:1px solid var(--line);border-radius:18px;
  overflow:hidden;box-shadow:0 10px 30px rgba(39,26,46,.06)
}
.card-body{padding:28px}
.card h3{font-size:28px}
.card p{font-family:Arial,sans-serif;color:var(--muted)}
.meta{
  font:800 12px/1.5 Arial,sans-serif;
  text-transform:uppercase;letter-spacing:1px;color:var(--wine)
}
.event-list{display:grid;gap:16px;margin-top:30px}
.event{
  display:grid;grid-template-columns:90px 1fr auto;gap:22px;align-items:center;
  padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff
}
.datebox{
  background:var(--purple);color:#fff;text-align:center;border-radius:12px;padding:14px 8px;
  font-family:Arial,sans-serif
}
.datebox b{display:block;font-size:26px}
.datebox span{font-size:11px;letter-spacing:1.5px}
.event h3{font-size:24px;margin-bottom:7px}
.event p{margin:0;font-family:Arial,sans-serif;color:var(--muted)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}
.photo-frame{
  min-height:470px;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);
  background:url("https://static.wixstatic.com/media/ef6287_6ffebe3a9e564d268e13269abe6bdd7e~mv2.jpg") center/cover no-repeat
}
.membership{
  background:linear-gradient(135deg,var(--purple),#3e1e52);
  color:#fff;border-radius:24px;padding:48px
}
.membership p{font-family:Arial,sans-serif;color:#ede2f4}
.benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;padding:0;margin:24px 0;list-style:none}
.benefits li{font-family:Arial,sans-serif;padding-left:24px;position:relative}
.benefits li:before{content:"◆";position:absolute;left:0;color:var(--gold)}
.pagehero{padding:90px 0 70px;background:linear-gradient(135deg,#2a1633,#5d2d73);color:#fff}
.pagehero h1{font-size:clamp(40px,6vw,72px)}
.content{padding:64px 0}
.prose{max-width:860px}
.prose h2{font-size:36px;margin-top:42px}
.prose h3{font-size:26px;margin-top:30px}
.prose p,.prose li{font-family:Arial,sans-serif;color:#4f4651}
.prose ul,.prose ol{padding-left:22px}
.notice{
  border-left:5px solid var(--gold);padding:20px 24px;background:#fff8df;
  font-family:Arial,sans-serif;margin:28px 0;border-radius:0 12px 12px 0
}
.cta{
  background:linear-gradient(135deg,#1f1425,#4b245c);
  color:#fff;padding:60px 0
}
.cta .container{display:flex;justify-content:space-between;align-items:center;gap:28px}
.cta p{font-family:Arial,sans-serif;color:#e9ddec;margin:0}
.footer{background:#160f1a;color:#eee0f0;padding:54px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:36px}
.footer a{text-decoration:none;color:#eee0f0}
.footer p,.footer li{font-family:Arial,sans-serif;color:#c9bdcc;font-size:14px}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin:8px 0}
.copyright{border-top:1px solid #3d3043;margin-top:36px;padding-top:22px;font:13px Arial,sans-serif;color:#a99daf}
.timeline{border-left:2px solid var(--line);margin:32px 0;padding-left:28px}
.timeline-item{position:relative;margin-bottom:28px}
.timeline-item:before{content:"";position:absolute;left:-36px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--gold);border:3px solid var(--paper)}
.form{display:grid;gap:14px;max-width:760px}
.form input,.form textarea,.form select{
  width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:10px;
  font:15px Arial,sans-serif;background:white
}
.form textarea{min-height:150px}
.muted{color:var(--muted);font-family:Arial,sans-serif}
@media(max-width:900px){
  nav{display:none;position:absolute;left:0;right:0;top:99px;background:#fff;padding:18px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  nav.open{display:flex}.menu-btn{display:block}
  .grid-3,.grid-2,.split,.footer-grid{grid-template-columns:1fr}
  .event{grid-template-columns:74px 1fr}.event .btn{grid-column:1/-1;width:max-content}
  .cta .container{align-items:flex-start;flex-direction:column}
  .hero{min-height:560px}
}
@media(max-width:560px){
  .brand-title{font-size:16px}.brand img{width:55px;height:55px}
  .topbar .container{display:block}.topbar .container span{display:block;margin:3px 0}
  .hero{min-height:520px}.section{padding:64px 0}
  .membership{padding:30px 22px}.benefits{grid-template-columns:1fr}
  .event{grid-template-columns:1fr}.datebox{width:86px}
}
