:root{
  --sea:#1C6E7D; --turq:#3FA9B8; --sand:#E8D8B0; --olive:#6B7B4A;
  --terra:#C46A4B; --offwhite:#FBF7EF; --ink:#2B2B28;
  --serif:"Iowan Old Style",Palatino,"Palatino Linotype",Georgia,serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{
  font-family:var(--sans); color:var(--offwhite); background:var(--sea);
  min-height:100%; display:flex; flex-direction:column; position:relative; overflow-x:hidden;
}

/* Slideshow */
.slideshow{position:fixed; inset:0; z-index:-2; background:var(--sea)}
.slideshow .slide{
  position:absolute; inset:0; background-size:cover; background-position:center;
  opacity:0; transition:opacity 1.6s ease-in-out; will-change:opacity;
}
.slideshow .slide.on{opacity:1}
.scrim{position:fixed; inset:0; z-index:-1;
  background:linear-gradient(180deg, rgba(28,110,125,.45) 0%, rgba(43,43,40,.55) 100%);}

/* Hero */
.hero{
  flex:1; display:flex; flex-direction:column; justify-content:center;
  max-width:720px; margin:0 auto; padding:6vh 24px; text-align:center;
  text-shadow:0 1px 18px rgba(0,0,0,.35);
}
.eyebrow{text-transform:uppercase; letter-spacing:.28em; font-size:.78rem; opacity:.9; margin:0 0 .6rem}
h1{font-family:var(--serif); font-weight:600; font-size:clamp(2.6rem,7vw,4.4rem); margin:.1rem 0 .4rem; line-height:1.05}
.lede{font-size:clamp(1.05rem,2.4vw,1.35rem); opacity:.95; margin:.2rem 0 2.4rem}

.enter{
  background:rgba(251,247,239,.12); backdrop-filter:blur(6px);
  border:1px solid rgba(251,247,239,.28); border-radius:18px;
  padding:1.6rem 1.4rem; margin:0 auto; max-width:560px;
}
.enter h2{font-family:var(--serif); font-weight:600; margin:.1rem 0 .6rem; font-size:1.5rem}
.enter p{margin:.5rem 0; opacity:.96}
.cta{font-size:1.08rem}
.cta strong{color:var(--sand)}

.contact{margin-top:2rem; font-size:.98rem; opacity:.92}
.contact a{color:var(--sand); text-decoration:underline; text-underline-offset:3px}

.foot{padding:14px 24px; text-align:center; font-size:.8rem; opacity:.8}

@media (prefers-reduced-motion: reduce){
  .slideshow .slide{transition:none}
}
