@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --black:#0B0B0B;
  --white:#FFFFFF;
  --paper:#EDEDE8;
  --gray:#555555;
  --gray-light:#8A8A85;
  --line:#0B0B0B;
}

*{box-sizing:border-box; margin:0; padding:0;}

body{
  font-family:'Inter', sans-serif;
  color:var(--black);
  background-color:var(--paper);
  background-image:
    repeating-linear-gradient(115deg, rgba(0,0,0,0.02) 0px, rgba(0,0,0,0.02) 1px, transparent 1px, transparent 90px),
    repeating-linear-gradient(25deg, rgba(0,0,0,0.015) 0px, rgba(0,0,0,0.015) 1px, transparent 1px, transparent 70px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
  line-height:1.6;
}

.wrap{max-width:1200px; margin:0 auto; padding:0 60px;}

.headline, h1, h2, h3{
  font-family:'Archivo Black', sans-serif;
  text-transform:uppercase;
  letter-spacing:-0.01em;
  line-height:1.02;
}

a{color:inherit; text-decoration:none;}

/* NAV */
.nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:32px 60px;
  max-width:1200px;
  margin:0 auto;
}
.nav .brand{
  font-family:'Archivo Black', sans-serif;
  font-size:15px;
  letter-spacing:.04em;
}
.nav .back{
  font-size:13px;
  font-weight:600;
  border-bottom:1.5px solid var(--black);
  padding-bottom:2px;
}

/* BUTTONS */
.btn{
  display:inline-block;
  padding:14px 30px;
  border:1.5px solid var(--black);
  font-size:13px;
  font-weight:600;
  letter-spacing:.02em;
  background:transparent;
  color:var(--black);
  transition:background .15s ease, color .15s ease;
}
.btn:hover{background:var(--black); color:var(--white);}
.btn-solid{background:var(--black); color:var(--white);}
.btn-solid:hover{background:transparent; color:var(--black);}

/* HERO */
.hero{
  padding:40px 0 90px;
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:70px;
  align-items:center;
}
.hero h1{
  font-size:clamp(38px, 4.6vw, 60px);
}
.hero .lede{
  margin-top:26px;
  max-width:460px;
  font-size:17px;
  color:var(--gray);
}
.hero .actions{
  margin-top:34px;
  display:flex;
  gap:16px;
  flex-wrap:wrap;
}
.hero-photo{
  aspect-ratio:16/11;
  background:
    repeating-linear-gradient(45deg, #1a1a1a, #1a1a1a 2px, #0B0B0B 2px, #0B0B0B 14px);
  border:1.5px solid var(--black);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--white);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
  padding:20px;
}

/* SECTION HEAD */
.section{padding:70px 0;}
.section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  margin-bottom:40px;
  flex-wrap:wrap;
}
.section-head h2{font-size:clamp(24px, 3vw, 32px);}
.section-head .note{
  font-size:14px;
  color:var(--gray);
  max-width:340px;
}

/* PARAGRAPH BLOCK — mirrors original "Book Lake Erie..." split layout */
.split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:start;
}
.split h2{font-size:clamp(24px, 3.2vw, 34px);}
.split p{
  color:var(--gray);
  font-size:16px;
  margin-bottom:22px;
}

/* BLACK PANEL — mirrors the site's dark schedule box */
.panel{
  background:var(--black);
  color:var(--white);
  padding:44px 48px;
}
.panel h2, .panel h3{color:var(--white);}
.panel p{color:#C9C9C4;}
.panel-row{
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:20px 0;
  border-top:1px solid #2A2A2A;
  flex-wrap:wrap;
}
.panel-row:first-of-type{border-top:none;}
.panel-row .label{
  font-weight:700;
  font-size:15px;
}
.panel-row .meta{
  color:#9A9A94;
  font-size:13.5px;
  margin-top:2px;
}
.panel-row .value{
  font-family:'Archivo Black', sans-serif;
  font-size:20px;
  white-space:nowrap;
}

/* PRICING TABLE */
.price-table{border:1.5px solid var(--black);}
.price-row{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr;
  border-top:1.5px solid var(--black);
}
.price-row:first-child{border-top:none; background:var(--black); color:var(--white);}
.price-row > div{
  padding:20px 26px;
  font-size:14.5px;
}
.price-row:first-child > div{
  font-family:'Archivo Black', sans-serif;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.price-row:not(:first-child) > div:not(:first-child){
  border-left:1.5px solid var(--black);
  font-family:'Archivo Black', sans-serif;
  font-size:19px;
}
.price-row .lineup{font-weight:700; font-size:16px;}
.price-row .lineup-sub{display:block; font-weight:400; color:var(--gray); font-size:13px; margin-top:3px;}
.addon-row{
  border-top:1.5px solid var(--black);
  padding:20px 26px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}
.addon-row .value{font-family:'Archivo Black', sans-serif; font-size:19px;}

/* NUMBERED LIST — etiquette */
.numbered{list-style:none;}
.numbered li{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:20px;
  padding:22px 0;
  border-top:1px solid #ddd;
}
.numbered li:first-child{border-top:none;}
.numbered .n{
  font-family:'Archivo Black', sans-serif;
  font-size:20px;
  color:var(--gray-light);
}
.numbered h4{
  font-family:'Inter', sans-serif;
  font-weight:700;
  font-size:15.5px;
  text-transform:none;
  margin-bottom:6px;
}
.numbered p{color:var(--gray); font-size:14.5px;}

/* FOOTER CTA */
.footer-cta{
  background:var(--black);
  color:var(--white);
  padding:70px 60px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  flex-wrap:wrap;
  max-width:1200px;
  margin:0 auto 90px;
}
.footer-cta h3{font-size:22px; color:var(--white); max-width:420px;}
.footer-cta .contact-fields{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.footer-cta input{
  background:var(--white);
  border:none;
  padding:14px 16px;
  font-family:'Inter', sans-serif;
  font-size:13.5px;
  min-width:140px;
}
.footer-cta button{
  background:#4A4A4A;
  color:var(--white);
  border:none;
  padding:14px 24px;
  font-weight:600;
  font-size:13.5px;
  cursor:pointer;
}
.footer-cta button:hover{background:#666;}

.site-footer{
  text-align:center;
  padding:0 0 60px;
  font-size:13px;
  color:var(--gray);
}
.site-footer .icons{
  display:flex;
  justify-content:center;
  gap:20px;
  margin-top:18px;
  font-size:15px;
}

@media (max-width: 860px){
  .wrap, .nav{padding-left:24px; padding-right:24px;}
  .hero-grid, .split{grid-template-columns:1fr; gap:36px;}
  .price-row{grid-template-columns:1fr;}
  .price-row:not(:first-child) > div:not(:first-child){border-left:none; border-top:1px solid var(--black);}
  .footer-cta{padding:50px 28px;}
}
