:root{
  --lake:#1f3a4d; --lake-2:#2c5a73; --glacier:#a9bfcc; --pine:#24413b;
  --stone:#e9e2d3; --cream:#f7f3ea; --ink:#1c2a30; --muted:#4a5a60; --accent:#9a6b3f;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased}
.skip{position:absolute;left:-9999px;top:0;background:var(--cream);color:var(--ink);padding:.6rem 1rem;z-index:10}
.skip:focus{left:1rem;top:1rem}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
a:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}

.hero{position:relative;min-height:min(92vh,760px);display:flex;flex-direction:column;overflow:hidden;color:var(--cream);
  background:linear-gradient(180deg,#16303f 0%,#24495e 38%,#5f8599 70%,#c9d6d9 100%)}
.brandbar{position:relative;z-index:2;display:flex;align-items:center;gap:.7rem;padding:1.5rem clamp(1.25rem,5vw,4rem)}
.mark{display:inline-flex;color:var(--stone)}
.wordmark{font-family:var(--serif);font-size:1.15rem;letter-spacing:.06em}
.navlink{margin-left:auto;color:var(--cream);text-decoration:none;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(247,243,234,.4);padding-bottom:2px}
.navlink:hover{border-color:var(--cream)}
.hero-copy{position:relative;z-index:2;padding:clamp(2.5rem,9vh,6rem) clamp(1.25rem,5vw,4rem) 0;max-width:60rem}
.eyebrow{font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;color:#d8e3e6;margin-bottom:1rem}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,6.5vw,5rem);line-height:1.06;letter-spacing:-.01em;text-shadow:0 1px 18px rgba(10,25,35,.25)}
h1 em{font-style:italic;color:var(--stone)}
.ridges{position:absolute;left:0;right:0;bottom:0;width:100%;height:62%;display:block}

main{max-width:46rem;margin:0 auto;padding:clamp(3.5rem,9vw,6.5rem) clamp(1.25rem,5vw,2rem)}
.about{text-align:center}
.lede{font-family:var(--serif);font-size:clamp(1.45rem,3vw,1.9rem);line-height:1.35;color:var(--lake);margin-bottom:1rem}
.about p:not(.lede){color:var(--muted);font-size:1.05rem}
.contact{margin-top:clamp(3rem,7vw,5rem);padding-top:clamp(2.5rem,6vw,3.5rem);border-top:1px solid #d6cdb9;text-align:center}
.contact h2{font-size:.8rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:.75rem}
.contact p{color:var(--muted)}
.email{display:inline-block;margin-top:1rem;font-family:var(--serif);font-size:clamp(1.25rem,3vw,1.6rem);color:var(--lake);text-decoration:none;border-bottom:1px solid var(--lake-2);padding-bottom:2px}
.email:hover{color:var(--lake-2)}

footer{background:var(--pine);color:#dfe7e2;text-align:center;padding:2rem 1rem;font-size:.85rem;letter-spacing:.04em}
