﻿:root{
  --paper:#f5f2eb;--ink:#121416;--muted:#737770;--line:#dad6cc;--white:#fffdf8;
  --c1:#d8d0bf;--c2:#b8c9c1;--c3:#c7c1d0;--c4:#c7d0d5;--c5:#d3c2b7;--c6:#c9c7b2;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit}
.topbar{height:88px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(218,214,204,.72)}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:12px;font-weight:850;letter-spacing:.16em}
.brand-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-family:Georgia,serif;font-style:italic;font-size:19px}
.admin-link{text-decoration:none;font-size:11px;color:#92958f;border:1px solid var(--line);border-radius:999px;padding:9px 13px;transition:.2s}
.admin-link:hover{color:var(--ink);background:#ebe7df}
main{max-width:1440px;margin:0 auto;padding:0 48px 72px}
.hero{min-height:480px;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--line);padding:70px 0}
.eyebrow{font-size:10px;line-height:1;font-weight:850;letter-spacing:.21em;color:#777b75;margin:0 0 16px}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(60px,7.5vw,112px);line-height:.88;letter-spacing:-.055em;margin:0;max-width:1000px}
.hero-copy{font-size:15px;line-height:1.68;color:var(--muted);max-width:550px;margin:32px 0 0}
.hero-meta{display:flex;align-items:center;gap:12px;margin-top:28px;color:#8b8e88;font-size:11px}
.hero-meta b{color:var(--ink);font-size:13px}.dot{width:3px;height:3px;border-radius:50%;background:#a3a59f}
.events-section{padding-top:42px}
.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}
.section-head h2{font-size:29px;letter-spacing:-.04em;margin:0}
.refresh{border:1px solid var(--line);background:transparent;border-radius:999px;padding:9px 14px;color:var(--muted);font-size:11px;font-weight:750;cursor:pointer}
.refresh:hover{background:#ebe7df;color:var(--ink)}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.event-card{position:relative;min-height:370px;border-radius:22px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;padding:22px;background:var(--c1);isolation:isolate;transition:transform .25s ease,box-shadow .25s ease}
.event-card:nth-child(6n+2){background:var(--c2)}.event-card:nth-child(6n+3){background:var(--c3)}.event-card:nth-child(6n+4){background:var(--c4)}.event-card:nth-child(6n+5){background:var(--c5)}.event-card:nth-child(6n+6){background:var(--c6)}
.event-card:before{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(18,20,22,.12);border-radius:50%;right:-70px;top:-80px;z-index:-1}
.event-card:after{content:"";position:absolute;width:120px;height:120px;background:rgba(255,255,255,.23);border-radius:50%;right:42px;top:50px;z-index:-1}
.event-card:hover{transform:translateY(-3px);box-shadow:0 18px 55px rgba(20,22,23,.12)}
.card-top{display:flex;justify-content:space-between;align-items:start}.private-badge{font-size:9px;font-weight:850;letter-spacing:.14em;border:1px solid rgba(18,20,22,.18);border-radius:999px;padding:7px 9px;background:rgba(255,255,255,.16);backdrop-filter:blur(7px)}
.card-arrow{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.75);font-size:18px;transition:transform .2s}.event-card:hover .card-arrow{transform:translate(2px,-2px)}
.card-bottom h3{font-family:Georgia,serif;font-weight:500;font-size:38px;line-height:1.02;letter-spacing:-.04em;margin:0 0 16px;max-width:90%}
.card-info{display:flex;align-items:center;gap:18px;padding-top:15px;border-top:1px solid rgba(18,20,22,.15);font-size:11px;color:rgba(18,20,22,.62)}
.card-info strong{color:var(--ink);font-size:13px}.card-info span{white-space:nowrap}.card-info .date{margin-left:auto}
.loading{grid-column:1/-1;padding:80px 0;text-align:center;color:var(--muted);font-size:12px}
.empty{text-align:center;padding:95px 20px;color:var(--muted)}.empty-mark{font-family:Georgia,serif;font-size:66px;color:#b3afa5}.empty h3{font-family:Georgia,serif;font-weight:500;font-size:31px;color:var(--ink);margin:13px 0 8px}.empty p{font-size:13px;margin:0}
footer{max-width:1440px;margin:0 auto;padding:24px 48px 34px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#9b9d98;font-size:10px;letter-spacing:.08em}
@media(max-width:980px){.event-grid{grid-template-columns:repeat(2,1fr)}.hero{min-height:410px}.hero h1{font-size:72px}}
@media(max-width:640px){
  .topbar{height:72px;padding:0 18px}.admin-link{font-size:10px;padding:8px 11px}
  main{padding:0 14px 52px}.hero{min-height:auto;padding:60px 4px 54px}
  .hero h1{font-size:52px;line-height:.93}.hero-copy{font-size:13px;margin-top:23px}.hero-meta{font-size:10px;flex-wrap:wrap}
  .events-section{padding-top:30px}.section-head{padding:0 4px;margin-bottom:17px}.section-head h2{font-size:24px}
  .event-grid{grid-template-columns:1fr;gap:11px}.event-card{min-height:285px;border-radius:18px;padding:18px}
  .card-bottom h3{font-size:33px;margin-bottom:13px}.card-info{gap:13px;font-size:10px}
  footer{padding:20px 18px 28px;font-size:9px}
}
