:root{--green:#153b2b;--green2:#204f3b;--green3:#0e2b1f;--gold:#c9a64b;--gold2:#e2c979;--cream:#f6f4ec;--soft:#eef2ed;--white:#fff;--ink:#18211c;--muted:#65706a;--border:#dfe4de;--shadow:0 18px 50px rgba(20,50,37,.11);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--cream);color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(14,43,31,.96);backdrop-filter:blur(16px);color:white;border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(201,166,75,.65);border-radius:50%;color:var(--gold2);font-weight:900}.brand strong{display:block;font-size:18px;line-height:1}.brand small{display:block;color:#b8c4bd;margin-top:4px}.mainnav{display:flex;align-items:center;gap:20px;font-size:14px;font-weight:650}.mainnav a{opacity:.88;transition:.2s}.mainnav a:hover{opacity:1;color:var(--gold2)}.member-link{border:1px solid rgba(201,166,75,.55);padding:10px 14px;border-radius:999px;color:var(--gold2)!important}.nav-toggle{display:none;background:none;border:0;color:#fff;font-size:26px}.hero{background:linear-gradient(135deg,var(--green3),var(--green));color:white;overflow:hidden}.hero-grid{min-height:650px;display:grid;grid-template-columns:1.02fr .98fr;gap:60px;align-items:center;padding:70px 0}.hero-copy h1,.member-hero h1,.subpage-head h1,.login-card h1{font-size:clamp(44px,6vw,78px);line-height:.98;margin:16px 0 24px;letter-spacing:-.045em}.hero-copy h1 span{color:var(--gold2)}.hero-copy p{max-width:650px;font-size:19px;color:#dce6e0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:var(--gold2)}.eyebrow.gold{color:#9a7723}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 20px;font-weight:800;cursor:pointer;font-size:14px}.btn-gold{background:var(--gold);color:#14251d}.btn-gold:hover{background:var(--gold2)}.btn-ghost{border:1px solid rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.05)}.btn-outline{border:1px solid var(--green);color:var(--green);background:white}.full{width:100%}.image-placeholder{min-height:320px;border:1.5px dashed #aab7af;border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:#f9faf7;color:#667168;font-weight:750}.image-placeholder small{display:block;margin-top:10px;font-weight:500;opacity:.72}.image-placeholder.dark{background:rgba(255,255,255,.06);border-color:rgba(226,201,121,.45);color:#edf3ef}.image-placeholder.tall{min-height:430px}.hero-visual{position:relative}.hero-visual:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(201,166,75,.12);filter:blur(2px);right:-90px;top:-70px}.hero-visual .image-placeholder{position:relative;min-height:430px}.quickbar{transform:translateY(-34px);position:relative;z-index:5}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.quick-grid article{display:flex;gap:15px;padding:24px 28px;border-right:1px solid var(--border);align-items:center}.quick-grid article:last-child{border-right:0}.quick-grid small,.quick-grid strong{display:block}.quick-grid small{color:var(--muted);font-size:12px}.quick-grid strong{color:var(--green);font-size:15px}.quick-icon{font-size:24px;color:#a67d1f}.section{padding:88px 0}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:36px}.section-heading>p{max-width:520px;color:var(--muted);margin:0}.section h2,.subpage-head h1{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.035em;margin:8px 0;color:var(--green)}.cards{display:grid;gap:22px}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:30px;box-shadow:0 8px 30px rgba(27,53,40,.05)}.card h3{color:var(--green);font-size:23px;margin:8px 0}.card p{color:var(--muted)}.card-number{color:var(--gold);font-size:13px;font-weight:900}.section-dark{background:var(--green3);color:white}.section-dark h2{color:white}.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.lead,.lead-light{font-size:18px;color:var(--muted)}.lead-light{color:#c9d5ce}.schedule{margin-top:28px;border-top:1px solid rgba(255,255,255,.18)}.schedule div{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.14)}.schedule span{color:#aab9b0}.schedule strong{color:var(--gold2)}.timeline{margin-top:32px}.timeline div{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--border);padding:18px 0}.timeline b{color:#a67d1f;font-size:24px}.section-soft{background:#edf1eb}.news-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:22px}.news-card{background:#fff;border-radius:var(--radius);padding:28px;border:1px solid var(--border)}.news-card.featured{background:var(--green);color:#fff}.news-card h3{font-size:24px;margin:15px 0 8px}.news-card p{color:var(--muted)}.news-card.featured p{color:#d9e2dc}.tag{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eef0e9;color:#7d6420;font-size:11px;font-weight:900;text-transform:uppercase}.featured .tag{background:rgba(255,255,255,.1);color:var(--gold2)}.fake-link{color:var(--gold2);font-weight:800}.mini-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}.mini-cards>div{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px}.mini-cards strong,.mini-cards span{display:block}.mini-cards span{color:var(--muted);font-size:13px}.contact-section{background:var(--green)}.contact-box{display:grid;grid-template-columns:1.4fr .6fr;gap:35px;align-items:center;color:#fff}.contact-box h2{color:#fff}.contact-box p{color:#d4dfd8}.contact-note{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:24px}.site-footer{background:#0b241a;color:#b9c7bf;padding:52px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.1fr 1fr;gap:32px}.footer-grid strong,.footer-brand{color:#fff}.footer-brand{font-weight:850;font-size:19px}.footer-brand span{color:var(--gold2)}.footer-grid p{font-size:14px}.footer-grid a:hover{color:var(--gold2)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:26px;padding-top:20px;font-size:12px}.login-section{min-height:70vh;display:grid;place-items:center;padding:70px 20px;background:linear-gradient(135deg,#eef1eb,#f8f6ee)}.login-card{width:min(470px,100%);background:#fff;border-radius:28px;padding:38px;box-shadow:var(--shadow);border:1px solid var(--border)}.login-card h1{font-size:42px;color:var(--green);margin:10px 0 12px}.login-card>p{color:var(--muted)}.lock-badge{width:58px;height:58px;border-radius:18px;background:#edf2ed;display:grid;place-items:center;font-size:26px;margin-bottom:20px}.login-form,.panel-form{display:grid;gap:12px;margin-top:24px}.login-form label,.panel-form label{font-size:13px;font-weight:800;color:var(--green)}.login-form input,.panel-form input{width:100%;padding:14px 15px;border:1px solid #cfd8d1;border-radius:12px;font:inherit;outline:none;background:#fbfcfa}.login-form input:focus,.panel-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(21,59,43,.08)}.login-card small{display:block;color:var(--muted);margin-top:18px}.alert{padding:13px 15px;border-radius:12px;margin:18px 0;font-size:14px}.alert.error{background:#fff0ef;color:#8b2f2a;border:1px solid #f2c8c4}.alert.success{background:#edf8ef;color:#1f6532;border:1px solid #c4e6cb}.alert.info{background:#f6f3e6;color:#67551f;border:1px solid #e6d99d}.member-hero{background:var(--green);color:#fff;padding:64px 0}.member-hero h1{font-size:58px;margin:8px 0}.member-hero p{color:#cedbd3}.member-hero-inner{display:flex;justify-content:space-between;align-items:end;gap:24px}.member-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.member-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:30px;transition:.2s;box-shadow:0 8px 30px rgba(27,53,40,.05)}.member-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.member-card>span{font-size:30px}.member-card h2{font-size:28px;margin:14px 0 4px}.member-card p{color:var(--muted)}.member-card b{color:#9a7723}.admin-strip{margin-top:26px;background:#edf1eb;border-radius:20px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-strip strong,.admin-strip span{display:block}.admin-strip span{color:var(--muted);font-size:14px}.subpage-head{background:#edf1eb;padding:58px 0}.subpage-head>a,.subpage-head .container>a{font-size:14px;color:#6f7b74}.subpage-head h1{margin:12px 0 5px}.subpage-head p{color:var(--muted);margin:0}.table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--border)}.member-table{width:100%;border-collapse:collapse;background:#fff}.member-table th,.member-table td{text-align:left;padding:15px 17px;border-bottom:1px solid var(--border)}.member-table th{background:var(--green);color:#fff}.info-list,.event-list,.download-list{display:grid;gap:14px}.info-list article,.event-list>div,.download-list>a,.empty-state{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;display:flex;gap:18px;align-items:center}.info-list article>span{font-size:11px;text-transform:uppercase;background:#f4eed8;color:#7f651e;border-radius:999px;padding:6px 9px;font-weight:900}.info-list h3,.event-list h3{margin:0}.info-list p,.event-list p{margin:4px 0 0;color:var(--muted)}.event-date{width:58px;height:58px;display:grid;place-items:center;background:var(--green);color:#fff;border-radius:14px;line-height:1;text-align:center}.event-date b{color:var(--gold2);font-size:10px}.download-list>a{justify-content:flex-start}.download-list>a>span{font-size:26px}.download-list>a div{flex:1}.download-list>a strong,.download-list>a small{display:block}.download-list>a small{color:var(--muted)}.download-list>a>b{color:#9a7723}.narrow{max-width:760px}.panel-form{background:#fff;border:1px solid var(--border);border-radius:22px;padding:26px}.legal h2,.legal h3{color:var(--green)}code{background:#edf0eb;padding:2px 6px;border-radius:5px}
@media(max-width:980px){.mainnav{position:absolute;top:78px;left:0;right:0;background:#0f2f22;display:none;flex-direction:column;align-items:stretch;padding:18px 20px;border-top:1px solid rgba(255,255,255,.08)}.mainnav.open{display:flex}.nav-toggle{display:block}.hero-grid,.split,.contact-box{grid-template-columns:1fr}.hero-grid{min-height:auto;padding:60px 0}.quick-grid{grid-template-columns:1fr}.quick-grid article{border-right:0;border-bottom:1px solid var(--border)}.cards.three,.news-grid{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-top:15px}.footer-grid{grid-template-columns:1fr 1fr}.hero-visual .image-placeholder{min-height:320px}.member-grid{grid-template-columns:1fr}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:70px}.mainnav{top:70px}.brand small{display:none}.hero-copy h1{font-size:45px}.hero-copy p{font-size:17px}.section{padding:66px 0}.quickbar{transform:translateY(-18px)}.footer-grid{grid-template-columns:1fr}.member-hero-inner,.admin-strip{align-items:flex-start;flex-direction:column}.member-hero h1{font-size:45px}.login-card{padding:28px 22px}.schedule div{align-items:flex-start;flex-direction:column;gap:2px}.mini-cards{grid-template-columns:1fr}.image-placeholder.tall{min-height:300px}}

/* ===== Motion / Microinteractions ===== */
@media (prefers-reduced-motion: no-preference){
  body.motion-ready .hero-copy > *,
  body.motion-ready .hero-visual,
  body.motion-ready .subpage-head .container > *,
  body.motion-ready .login-card > *{
    opacity:0;
    transform:translateY(22px);
  }
  body.motion-ready.motion-start .hero-copy > *,
  body.motion-ready.motion-start .hero-visual,
  body.motion-ready.motion-start .subpage-head .container > *,
  body.motion-ready.motion-start .login-card > *{
    opacity:1;
    transform:none;
    transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);
  }
  body.motion-ready.motion-start .hero-copy > :nth-child(1),
  body.motion-ready.motion-start .subpage-head .container > :nth-child(1),
  body.motion-ready.motion-start .login-card > :nth-child(1){transition-delay:.05s}
  body.motion-ready.motion-start .hero-copy > :nth-child(2),
  body.motion-ready.motion-start .subpage-head .container > :nth-child(2),
  body.motion-ready.motion-start .login-card > :nth-child(2){transition-delay:.12s}
  body.motion-ready.motion-start .hero-copy > :nth-child(3),
  body.motion-ready.motion-start .subpage-head .container > :nth-child(3),
  body.motion-ready.motion-start .login-card > :nth-child(3){transition-delay:.19s}
  body.motion-ready.motion-start .hero-copy > :nth-child(4),
  body.motion-ready.motion-start .subpage-head .container > :nth-child(4),
  body.motion-ready.motion-start .login-card > :nth-child(4){transition-delay:.26s}
  body.motion-ready.motion-start .hero-visual{transition-delay:.16s}

  .reveal{
    opacity:0;
    transform:translateY(26px);
    transition:opacity .72s cubic-bezier(.2,.7,.2,1), transform .72s cubic-bezier(.2,.7,.2,1);
    will-change:opacity,transform;
  }
  .reveal.reveal-left{transform:translateX(-28px)}
  .reveal.reveal-right{transform:translateX(28px)}
  .reveal.is-visible{opacity:1;transform:none}
  .reveal.delay-1{transition-delay:.08s}
  .reveal.delay-2{transition-delay:.16s}
  .reveal.delay-3{transition-delay:.24s}

  .card,.news-card,.member-card,.mini-cards>div,.quick-grid article,.image-placeholder{
    transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease, background-color .28s ease;
  }
  .card:hover,.news-card:hover,.member-card:hover,.mini-cards>div:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 42px rgba(20,50,37,.13);
    border-color:rgba(201,166,75,.55);
  }
  .quick-grid article:hover{background:#fbfaf5}
  .image-placeholder:hover{transform:translateY(-3px);border-color:rgba(201,166,75,.7)}

  .btn{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease}
  .btn:hover{transform:translateY(-2px)}
  .btn-gold:hover{box-shadow:0 10px 26px rgba(201,166,75,.28)}

  .brand-mark{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
  .brand:hover .brand-mark{transform:rotate(-5deg) scale(1.05);border-color:var(--gold2);box-shadow:0 0 0 5px rgba(201,166,75,.08)}

  .section-heading h2,.section h2,.contact-box h2{position:relative;display:inline-block}
  .section-heading h2::after,.section h2::after,.contact-box h2::after{
    content:"";position:absolute;left:0;bottom:-10px;width:54px;height:3px;border-radius:99px;background:var(--gold);
    transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.2,.7,.2,1);
  }
  .is-visible .section-heading h2::after,
  .reveal.is-visible h2::after,
  .section-heading.reveal.is-visible h2::after{transform:scaleX(1)}

  .hero-visual:before{animation:heroGlow 7s ease-in-out infinite alternate}
  @keyframes heroGlow{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-18px,14px,0) scale(1.08)}}
}

/* Animated history timeline */
.timeline{position:relative;--timeline-progress:0}
.timeline::before{
  content:"";position:absolute;left:49px;top:0;bottom:0;width:2px;
  background:linear-gradient(to bottom,var(--gold),var(--gold2));
  transform:scaleY(var(--timeline-progress));transform-origin:top;
  transition:transform .12s linear;
}
.timeline>div{position:relative;border-top:0!important;padding:22px 0 22px 100px!important;grid-template-columns:1fr!important;min-height:92px}
.timeline>div::before{
  content:"";position:absolute;left:42px;top:35px;width:16px;height:16px;border-radius:50%;
  background:var(--cream);border:3px solid var(--gold);box-shadow:0 0 0 5px rgba(201,166,75,.12);
  z-index:2;transition:transform .35s ease,background-color .35s ease;
}
.timeline>div.is-visible::before{transform:scale(1.12);background:var(--gold2)}
.timeline>div b{display:block;margin-bottom:4px}
.section-soft .timeline>div::before{background:var(--soft)}

@media(max-width:700px){
  .timeline::before{left:20px}
  .timeline>div{padding-left:58px!important}
  .timeline>div::before{left:13px}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
