:root{
  --burgundy:#61112b;
  --gold:#c28d39;
  --vanilla:#efe5d2;
  --bordeaux-noir:#1c0a10;
  --bg-base:#12060a;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:
    radial-gradient(circle at 15% -10%, rgba(97,17,43,0.55), transparent 45%),
    radial-gradient(circle at 100% 15%, rgba(194,141,57,0.14), transparent 42%),
    radial-gradient(circle at 15% 100%, rgba(97,17,43,0.35), transparent 48%),
    var(--bg-base);
  color:var(--vanilla);
  font-family:'Avenir','Helvetica Neue',Arial,sans-serif;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  position:relative;
}
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:url('../patterns/daniela-monogram.svg');
  background-size:480px 280px;opacity:0.05;
  mask-image:radial-gradient(circle at 50% 25%, black 0%, transparent 70%);
  -webkit-mask-image:radial-gradient(circle at 50% 25%, black 0%, transparent 70%);
}
.hero{position:relative;z-index:1;}
.countdown-bar{position:relative;z-index:1;}
.social-row, .footer{position:relative;z-index:1;}
a{color:inherit;text-decoration:none;}
a:hover{color:var(--gold);}

@font-face{font-family:'The Seasons';src:url('../fonts/the-seasons-regular.ttf') format('truetype');font-weight:400;font-style:normal;}
@font-face{font-family:'The Seasons';src:url('../fonts/the-seasons-light.ttf') format('truetype');font-weight:300;font-style:normal;}
@font-face{font-family:'The Seasons';src:url('../fonts/the-seasons-bold.ttf') format('truetype');font-weight:700;font-style:normal;}
@font-face{font-family:'The Seasons';src:url('../fonts/the-seasons-italic.ttf') format('truetype');font-weight:400;font-style:italic;}
@font-face{font-family:'Avenir';src:url('../fonts/avenir-regular.ttf') format('truetype');font-weight:400;font-style:normal;}

.hero{
  width:100%;
  max-width:760px;
  padding:88px 28px 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.logo{width:200px;color:var(--vanilla);}
.logo svg{width:100%;height:auto;display:block;fill:currentColor;}

.eyebrow{display:flex;align-items:center;gap:16px;margin-top:44px;}
.eyebrow .line{width:28px;height:1px;background:var(--gold);}
.eyebrow span{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);}

.kicker{font-family:'The Seasons',serif;font-style:italic;font-weight:400;font-size:22px;margin-top:28px;}
h1{font-family:'The Seasons',serif;font-weight:700;font-size:clamp(64px,12vw,120px);line-height:0.92;margin:2px 0 0;}

.subcopy{font-size:17px;line-height:1.6;color:rgba(239,229,210,0.65);max-width:460px;margin:32px 0 0;}

.date-block{margin-top:52px;}
.date-block .date{font-family:'The Seasons',serif;font-weight:400;font-size:30px;}
.date-block .venue{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-top:8px;}

.countdown-bar{
  width:100%;margin-top:64px;padding:44px 24px;display:flex;justify-content:center;
  background:linear-gradient(180deg, rgba(97,17,43,0.32), rgba(0,0,0,0.35));
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-top:1px solid rgba(255,255,255,0.08);border-bottom:1px solid rgba(255,255,255,0.08);
}
.countdown-bar .groups{display:flex;align-items:flex-start;gap:clamp(18px,4vw,48px);}
.countdown-bar .unit{display:flex;flex-direction:column;align-items:center;}
.countdown-bar .unit .num{font-family:'The Seasons',serif;font-weight:700;font-size:clamp(36px,6vw,56px);color:var(--gold);line-height:1;}
.countdown-bar .unit .label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(239,229,210,0.75);margin-top:10px;}
.countdown-bar .sep{font-family:'The Seasons',serif;font-weight:700;font-size:clamp(36px,6vw,56px);color:rgba(239,229,210,0.75);line-height:1;opacity:0.5;}

.social-row{display:flex;align-items:center;gap:22px;margin-top:52px;}
.social-row a{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--vanilla);}
.social-row .dot{width:3px;height:3px;border-radius:50%;background:var(--gold);}

.footer{font-size:11px;letter-spacing:1px;color:rgba(239,229,210,0.55);margin:56px 0 36px;}
