
:root{--navy:#0d1b2a;--navy2:#14283f;--cream:#eee7da;--paper:#fbfaf7;--orange:#e45d34;--ink:#17202a;--muted:#66717d;--line:#ddd8ce;--r:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}img{display:block;max-width:100%}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.topbar{position:sticky;top:0;z-index:40;background:rgba(251,250,247,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(13,27,42,.08)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:58px;height:58px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-size:15px}.brand small{font-size:10px;margin-top:5px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}#links{display:flex;gap:25px}#links a{text-decoration:none;font-size:13px;font-weight:800}#links a:hover{color:var(--orange)}.menu{display:none;border:0;background:transparent;font-size:26px}
.hero{min-height:760px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,14,24,.91) 0%,rgba(5,14,24,.75) 42%,rgba(5,14,24,.28) 73%,rgba(5,14,24,.15) 100%)}.hero-content{position:relative;padding:86px 0}.hero-logo{width:120px;height:120px;object-fit:contain;filter:brightness(0) invert(1);opacity:.98;margin-bottom:22px}.eyebrow{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:900;color:#ff9679;margin:0 0 14px}.eyebrow.dark{color:var(--orange)}.eyebrow.bright{color:#ffb19c}h1,h2,h3{line-height:1.02;margin-top:0}h1{font-size:clamp(62px,7.7vw,108px);letter-spacing:-.06em;margin-bottom:22px}h1 span{color:#ff7b56}h2{font-size:clamp(40px,5vw,68px);letter-spacing:-.045em;margin-bottom:23px}h3{font-size:26px;letter-spacing:-.025em}.lead{font-size:19px;max-width:670px;color:rgba(255,255,255,.84)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{min-height:50px;padding:0 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:13px;font-weight:900;border:1px solid transparent}.primary{background:var(--orange)}.glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.32);backdrop-filter:blur(10px)}
.strip{background:var(--navy);color:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr)}.stats div{padding:24px 18px;border-right:1px solid rgba(255,255,255,.1)}.stats div:last-child{border-right:0}.stats strong{display:block;font-size:32px;letter-spacing:-.04em}.stats span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.58);font-weight:800}
.section{padding:110px 0}.light{background:var(--paper)}.cream{background:var(--cream)}.dark{background:var(--navy);color:#fff}.intro-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:70px;align-items:center}.big{font-size:24px;line-height:1.45;letter-spacing:-.01em}.intro-grid p:not(.eyebrow):not(.big){color:var(--muted)}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.pill-row span{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:11px;font-weight:800}.photo-card{margin:0;background:#fff;padding:10px;border-radius:var(--r);box-shadow:0 24px 70px rgba(13,27,42,.12)}.photo-card img{border-radius:20px}.photo-card figcaption{padding:11px 8px 5px;font-size:11px;color:var(--muted)}
.event-head{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:end}.datebox{min-width:195px;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:24px;text-align:center;background:rgba(255,255,255,.06)}.datebox small,.datebox span{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:10px;color:rgba(255,255,255,.62);font-weight:800}.datebox strong{display:block;font-size:72px;line-height:1;letter-spacing:-.06em;margin:7px 0}.event-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:20px;margin-top:46px}.event-main{background:#fff;color:var(--ink);padding:36px;border-radius:var(--r)}.event-main p{color:var(--muted)}.event-main .small{font-size:12px}.countdown{display:flex;gap:10px;margin-top:28px}.countdown div{flex:1;background:#f1ede6;border-radius:16px;padding:14px 15px}.countdown strong{display:block;font-size:30px;line-height:1}.countdown span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:800}.event-side{padding:32px;border-radius:var(--r);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}.event-side ul{list-style:none;padding:0}.event-side li{padding:11px 0 11px 24px;border-bottom:1px solid rgba(255,255,255,.09);position:relative;color:rgba(255,255,255,.78);font-size:14px}.event-side li:before{content:"✓";position:absolute;left:0;color:#ff9478}.event-side a{display:inline-block;margin-top:20px;text-decoration:none;font-size:13px;font-weight:900;color:#ffb19c}
.section-lead{max-width:760px;color:#646962;font-size:18px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:14px;margin-top:38px}.gallery figure{margin:0;border-radius:22px;overflow:hidden;background:#ddd}.gallery figure.wide{grid-column:span 2}.gallery img{width:100%;height:100%;object-fit:cover;transition:.3s transform}.gallery figure:hover img{transform:scale(1.025)}
.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}.social{min-height:350px;border-radius:var(--r);padding:30px;border:1px solid var(--line);display:flex;flex-direction:column}.facebook{background:linear-gradient(145deg,#edf3ff,#fff)}.instagram{background:linear-gradient(145deg,#fff0f3,#fff8eb)}.social-icon{width:42px;height:42px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:19px;margin-bottom:50px}.social p{color:var(--muted);max-width:520px}.social .btn{margin-top:auto;align-self:flex-start}.darkbtn{background:var(--navy);color:#fff}.disabled{background:#ebe7df;color:#999}.feed-note{margin-top:18px;padding:18px 20px;border:1px dashed #bdb6aa;border-radius:16px;background:#f6f3ec;color:var(--muted);font-size:13px}.contact{background:var(--orange);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end}.contact p{color:rgba(255,255,255,.82);font-size:17px}.whitebtn{background:#fff;color:var(--navy)}
footer{background:#08111e;color:#fff;padding:42px 0 24px}.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:52px;height:52px;filter:brightness(0) invert(1)}.footer-brand span{display:flex;flex-direction:column}.footer-brand small{color:rgba(255,255,255,.5);font-size:11px}.footer-grid nav{display:flex;gap:20px}.footer-grid nav a{font-size:11px;text-decoration:none;color:rgba(255,255,255,.7)}.copy{margin-top:25px;padding-top:17px;border-top:1px solid rgba(255,255,255,.08);font-size:10px;color:rgba(255,255,255,.38)}
.legal-hero{padding:70px 0;background:var(--navy);color:#fff}.legal{padding:70px 0;max-width:850px}.legal h2{font-size:27px;margin-top:38px}.legal p,.legal li{color:#53606c}.notice{background:#fff0d6;border:1px solid #ead0a1;padding:17px;border-radius:14px;color:#674a18!important}
@media(max-width:900px){#links{display:none;position:absolute;top:72px;left:20px;right:20px;background:#fff;border-radius:16px;padding:18px;box-shadow:0 20px 60px rgba(13,27,42,.16);flex-direction:column}#links.open{display:flex}.menu{display:block}.hero{min-height:680px}.intro-grid,.event-grid,.event-head,.contact-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery figure.wide{grid-column:span 2}.datebox{width:195px}.social-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wrap{width:min(100% - 28px,1180px)}.nav{height:72px}.brand img{width:48px;height:48px}.hero{min-height:690px}.hero-content{padding:58px 0}.hero-logo{width:92px;height:92px}h1{font-size:clamp(54px,17vw,78px)}.section{padding:78px 0}.stats{grid-template-columns:1fr 1fr}.stats strong{font-size:26px}.intro-grid{gap:34px}.big{font-size:21px}.gallery{grid-template-columns:1fr;grid-auto-rows:260px}.gallery figure.wide{grid-column:span 1}.countdown div{padding:12px}.countdown strong{font-size:24px}.footer-grid{align-items:flex-start;flex-direction:column}.footer-grid nav{flex-wrap:wrap}}

.contact-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.contact-buttons{justify-content:flex-start}}


/* --- v4 adjustments --- */
.event-info{display:grid;gap:10px;margin:24px 0 8px}
.event-info div{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:start;padding:12px 14px;border-radius:16px;background:#f3efe8}
.event-info strong{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6d6d69}
.event-info span{font-size:14px;color:#23303d}

.gallery-subhead{margin:46px 0 18px}
.gallery-subhead h3{margin:0 0 6px;font-size:28px}
.gallery-subhead p{margin:0;color:#62675f}
.gallery-more{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:12px}
.gallery-more figure{margin:0;border-radius:18px;overflow:hidden;background:#ddd;aspect-ratio:4/3}
.gallery-more img{width:100%;height:100%;object-fit:cover;transition:.3s transform}
.gallery-more figure:hover img{transform:scale(1.03)}

.social-grid{max-width:860px;margin:26px auto 0}
.social{min-height:260px;padding:24px 24px 22px}
.social-icon{width:38px;height:38px;margin-bottom:22px;font-size:17px}
.social h3{font-size:24px}
.social p{font-size:14px;line-height:1.5;max-width:430px}
.feed-note{max-width:860px;margin:18px auto 0}

@media(max-width:900px){
  .event-info div{grid-template-columns:1fr}
  .gallery-more{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .gallery-subhead{margin-top:34px}
  .gallery-more{grid-template-columns:1fr}
}


/* --- v5 gallery refinement --- */
.gallery-highlights{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:34px;
}
.gallery-highlights figure,
.gallery-compact figure{
  margin:0;
  border-radius:20px;
  overflow:hidden;
  background:#d9d7d0;
  box-shadow:0 10px 30px rgba(13,27,42,.06);
}
.gallery-highlights figure{aspect-ratio:4/3}
.gallery-highlights .hero-shot{grid-column:span 2; aspect-ratio:16/10}
.gallery-highlights img,
.gallery-compact img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .35s ease;
}
.gallery-highlights figure:hover img,
.gallery-compact figure:hover img{
  transform:scale(1.03);
}
.gallery-subhead{
  margin:38px 0 14px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:end;
  flex-wrap:wrap;
}
.gallery-subhead h3{
  margin:0;
  font-size:28px;
}
.gallery-subhead p{
  margin:0;
  color:#66717d;
}
.gallery-compact{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.gallery-compact figure{
  aspect-ratio:4/3;
}

@media(max-width:900px){
  .gallery-highlights{grid-template-columns:repeat(2,1fr)}
  .gallery-highlights .hero-shot{grid-column:span 2}
  .gallery-compact{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .gallery-highlights{grid-template-columns:1fr}
  .gallery-highlights .hero-shot{grid-column:span 1}
  .gallery-compact{grid-template-columns:1fr}
  .gallery-subhead{margin-top:30px}
}


/* --- v6 Social Links --- */
.social-links-section{padding-top:90px;padding-bottom:90px}
.social-intro{max-width:650px;margin-bottom:26px}
.social-link-buttons{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  max-width:820px;
}
.social-link-button{
  display:grid;
  grid-template-columns:58px 1fr auto;
  align-items:center;
  gap:15px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(13,27,42,.05);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.social-link-button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(13,27,42,.09);
  border-color:#c7c0b5;
}
.social-logo{
  width:52px;
  height:52px;
  display:block;
}
.social-logo svg{
  width:52px;
  height:52px;
  display:block;
}
.social-link-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.social-link-copy strong{
  font-size:18px;
  line-height:1.15;
}
.social-link-copy small{
  margin-top:5px;
  color:var(--muted);
  font-size:12px;
}
.social-arrow{
  font-size:24px;
  color:#8b9298;
  padding-left:4px;
}

@media(max-width:700px){
  .social-link-buttons{grid-template-columns:1fr}
}
