*{box-sizing:border-box}
body{margin:0;background:#f4f1e7;color:#172018;font-family:Georgia,"Times New Roman",serif}
img{display:block;width:100%;height:100%;object-fit:cover}
.hero{height:clamp(680px,86svh,760px);min-height:0;position:relative;overflow:hidden}
.hero img{object-position:center center}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,22,14,.02),rgba(8,22,14,.12) 42%,rgba(8,22,14,.74))}
nav{position:absolute;z-index:3;top:22px;right:5vw;display:flex;gap:10px}
nav a{font-family:Arial,sans-serif;color:#24311f;text-decoration:none;background:#f1e8cf;padding:12px 18px;border-radius:999px;text-transform:uppercase;font-size:12px;font-weight:800;box-shadow:0 10px 24px rgba(34,51,31,.14)}
.hero-copy{position:absolute;z-index:2;left:5vw;right:auto;bottom:36px;max-width:790px;color:#f4f1e7;background:transparent;padding:0;display:block}
.hero-copy p,.intro p,.season p:first-child{margin:0 0 14px;font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900;color:#e2d09d}
.hero h1{font-size:clamp(42px,5.2vw,72px);line-height:.96;max-width:780px;margin:0;font-weight:400;text-shadow:0 3px 22px rgba(0,0,0,.45)}
.hero a{display:inline-flex;margin-top:18px;background:#f4f1e7;color:#172018;text-decoration:none;padding:17px 24px;font:900 13px Arial;text-transform:uppercase;white-space:nowrap}
.atlas{display:grid;grid-template-columns:.82fr 1.18fr;gap:0;min-height:390px}
.atlas img{height:390px}
.intro{padding:36px 6vw;display:flex;flex-direction:column;justify-content:center}
.intro p,.season p:first-child{color:#61733c}
.intro h2,.season h2{font-size:clamp(27px,2.7vw,38px);line-height:1.08;margin:0;font-weight:400}
.contact h2{font-size:clamp(36px,5.7vw,86px);line-height:1.02;margin:0;font-weight:400}
.zones{background:#1d2d22;color:#f4f1e7;overflow:hidden}
.zones img{height:500px;object-fit:cover;object-position:center}
.zone-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#c8b778;padding:1px}
.zones article{padding:18px 18px 20px;background:#f4f1e7;color:#172017;min-height:124px}
.zones span{font:900 11px Arial;color:#66733e;text-transform:uppercase}
.zones b{display:block;margin:6px 0 4px;font-size:21px;line-height:1}
.zones p,.season p:last-child{font-size:15px;line-height:1.32}
.season{display:grid;grid-template-columns:1.15fr .85fr;background:#f4f1e7;min-height:420px}
.season img{height:420px}
.season div{padding:38px 6vw;display:flex;flex-direction:column;justify-content:center}
.contact{padding:56px 6vw;background:#e2d09d;display:grid;grid-template-columns:1fr 430px;gap:42px;align-items:end}
.contact form{display:grid;gap:12px}
.contact input{height:58px;border:0;background:white;padding:0 16px;font:18px Arial}
.contact button{height:58px;border:0;background:#172018;color:white;font:900 13px Arial;text-transform:uppercase}
@media(max-width:820px){
  nav{left:18px;right:18px;top:18px;overflow:auto}
  .hero{height:700px;min-height:0}
  .hero-copy{left:22px;right:22px;bottom:34px;max-width:none}
  .hero h1{font-size:42px}
  .hero a{margin-top:18px}
  .atlas,.season,.contact{grid-template-columns:1fr}
  .atlas,.season{height:auto}
  .atlas img,.season img{height:300px}
  .zones{grid-template-columns:1fr}
  .contact{padding:56px 22px}
  .intro,.season div{padding:42px 22px}
}
