/* ============================================================
   Bay City - Boat Slips page styles
   Scoped under .boat-slips-page so nothing leaks to other
   sites that share this theme across the multisite network.
   Brand tokens reference the theme's globals where present,
   with hard fallbacks so the page is safe on its own.
   ============================================================ */

.boat-slips-page{
	--bs-navy:var(--global-color-navy,#1D2F5F);
	--bs-navy-deep:#15234a;
	--bs-green:var(--global-color-green,#099E62);
	--bs-green-dark:#077e4e;
	--bs-black:var(--global-color-black,#3B3B3B);
	--bs-white:var(--global-color-white,#ffffff);
	--bs-line:#e7e9ee;
	--bs-bg-soft:#f4f6f9;
	font-family:var(--global-font-family,"Instrument Sans",sans-serif);
	color:var(--bs-black);
	line-height:1.5;
}
.boat-slips-page *{box-sizing:border-box;}
.boat-slips-page img{max-width:100%;height:auto;display:block;}

/* Reuse the theme .container if present; provide a fallback width otherwise */
.boat-slips-page .container{max-width:var(--content-width,1290px);margin:0 auto;padding:0 24px;width:100%;}

/* Headings */
.boat-slips-page h1,
.boat-slips-page h2,
.boat-slips-page h3{font-weight:700;line-height:1.05;color:var(--bs-black);margin:0;}
.boat-slips-page .bs-title{font-size:clamp(32px,4.4vw,50px);font-weight:700;}
.boat-slips-page .bs-hl{color:var(--bs-green);}
.boat-slips-page .bs-lead{font-size:20px;font-weight:400;margin-top:22px;color:#4a4f5c;}
.boat-slips-page .bs-lead-sm{font-size:18px;}

/* Buttons */
.boat-slips-page .bs-btn{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:6px;
	font-size:13px;padding:18px 34px;color:var(--bs-white);background:var(--bs-green);border:0;cursor:pointer;border-radius:0;}
.boat-slips-page .bs-btn:hover{background:var(--bs-green-dark);color:var(--bs-white);}

/* ---------- HERO ---------- */
.boat-slips-page .bs-hero{position:relative;min-height:620px;display:flex;align-items:center;color:var(--bs-white);
	background:var(--bs-navy);background-size:cover;background-position:center;}
.boat-slips-page .bs-hero::before{content:"";position:absolute;inset:0;
	background:linear-gradient(90deg,rgba(21,35,74,.86) 0%,rgba(21,35,74,.55) 45%,rgba(21,35,74,.15) 100%);}
.boat-slips-page .bs-hero .container{position:relative;z-index:2;padding-top:90px;padding-bottom:90px;}
.boat-slips-page .bs-hero-inner{max-width:600px;}
.boat-slips-page .bs-hero h1{font-size:clamp(44px,6vw,72px);color:var(--bs-white);line-height:1;}
.boat-slips-page .bs-tagline{margin-top:18px;font-size:22px;font-weight:600;letter-spacing:.5px;}
.boat-slips-page .bs-tagline .dot{color:#7fd1b3;}
.boat-slips-page .bs-hero p{margin-top:22px;font-size:18px;color:#eaeef6;max-width:480px;}
.boat-slips-page .bs-hero .bs-btn{margin-top:34px;}

/* ---------- INTRO / SPLIT ---------- */
.boat-slips-page .bs-split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;}
.boat-slips-page .bs-split .bs-copy{padding:90px 70px;display:flex;flex-direction:column;justify-content:center;align-items:stretch;text-align:left;justify-self:center;max-width:660px;margin:0 auto;}
.boat-slips-page .bs-split .bs-media{min-height:520px;}
.boat-slips-page .bs-split .bs-media img{width:100%;height:100%;min-height:520px;object-fit:cover;}

/* ---------- RATES ---------- */
.boat-slips-page .bs-rates{padding:96px 0;background:var(--bs-bg-soft);}
.boat-slips-page .bs-rates-head{text-align:center;max-width:760px;margin:0 auto 18px;}
.boat-slips-page .bs-divider{display:flex;align-items:center;justify-content:center;gap:14px;margin:14px 0 60px;color:var(--bs-green);}
.boat-slips-page .bs-divider span{height:1px;width:90px;background:var(--bs-green);opacity:.6;}
.boat-slips-page .bs-anchor{font-style:normal;font-size:20px;line-height:1;}
.boat-slips-page .bs-rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1180px;margin:0 auto;}
.boat-slips-page .bs-rate-card{background:var(--bs-white);border:1px solid var(--bs-line);box-shadow:0 18px 40px rgba(21,35,74,.06);}
.boat-slips-page .bs-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;
	padding:20px 24px;min-height:76px;border-bottom:3px solid var(--bs-green);}
.boat-slips-page .bs-rate-card h3{font-size:20px;color:var(--bs-navy);white-space:nowrap;}
.boat-slips-page .bs-season{font-weight:700;font-size:13px;color:var(--bs-green);letter-spacing:.3px;white-space:nowrap;}
.boat-slips-page .bs-rate-card table{width:100%;border-collapse:collapse;}
.boat-slips-page .bs-rate-card thead th{background:var(--bs-navy);color:var(--bs-white);text-align:left;font-size:13px;
	letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:14px 28px;}
.boat-slips-page .bs-rate-card thead th:last-child{text-align:right;}
.boat-slips-page .bs-rate-card tbody td{padding:16px 28px;font-size:17px;border-bottom:1px solid var(--bs-line);}
.boat-slips-page .bs-rate-card tbody td:last-child{text-align:right;font-weight:700;color:var(--bs-navy);}
.boat-slips-page .bs-rate-card tbody tr:nth-child(even){background:#fafbfc;}
.boat-slips-page .bs-rate-card tbody tr:last-child td{border-bottom:0;}

/* Requirements note */
.boat-slips-page .bs-note{max-width:1180px;margin:46px auto 0;background:var(--bs-white);border-left:4px solid var(--bs-green);
	display:flex;gap:24px;align-items:flex-start;padding:30px 34px;box-shadow:0 10px 28px rgba(21,35,74,.05);}
.boat-slips-page .bs-note-icon{flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:var(--bs-navy);color:#7fd1b3;
	display:flex;align-items:center;justify-content:center;font-size:24px;}
.boat-slips-page .bs-note p{font-size:16px;color:#4a4f5c;line-height:1.7;margin:0;}
.boat-slips-page .bs-note strong{color:var(--bs-navy);}

/* ---------- GALLERY ---------- */
.boat-slips-page .bs-gallery{padding:90px 0;}
.boat-slips-page .bs-gal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.boat-slips-page .bs-gal-grid img{width:100%;height:300px;object-fit:cover;border-radius:6px;}

/* ---------- CONTACT CTA ---------- */
.boat-slips-page .bs-cta{position:relative;color:var(--bs-white);background:var(--bs-navy);background-size:cover;background-position:center;text-align:center;}
.boat-slips-page .bs-cta::before{content:"";position:absolute;inset:0;background:rgba(15,25,54,.78);}
.boat-slips-page .bs-cta .container{position:relative;z-index:2;padding:96px 24px;}
.boat-slips-page .bs-cta h2{color:var(--bs-white);font-size:clamp(30px,4vw,44px);}
.boat-slips-page .bs-cta .bs-divider{margin:18px auto 26px;}
.boat-slips-page .bs-cta p{font-size:19px;color:#dde3f0;max-width:620px;margin:0 auto;}
.boat-slips-page .bs-phone{margin-top:26px;font-size:34px;font-weight:700;color:var(--bs-white);
	display:inline-flex;align-items:center;gap:14px;text-decoration:none;}
.boat-slips-page .bs-cta .bs-phone img.bs-phone-ico{width:22px;height:22px;min-width:0;object-fit:contain;display:inline-block;flex:0 0 auto;}
.boat-slips-page .bs-cta .bs-btn{margin-top:34px;}

/* ---------- DISCLAIMER ---------- */
.boat-slips-page .bs-disclaimer{margin:0;padding:18px 24px 30px;text-align:center;font-size:13px;font-style:italic;color:#8a8f99;background:var(--bs-white);}

/* Neutralize the theme footer's overlap (margin-top:-380px) on this template,
   which otherwise paints the footer on top of the disclaimer. */
.page-template-page-boat-slips .site-footer{margin-top:0;padding-top:70px;}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1024px){
	.boat-slips-page .bs-split{grid-template-columns:1fr;}
	.boat-slips-page .bs-split .bs-copy{padding:64px 24px;max-width:none;}
	.boat-slips-page .bs-split .bs-media{min-height:340px;order:-1;}
	.boat-slips-page .bs-split .bs-media img{min-height:340px;}
}
@media (max-width:820px){
	.boat-slips-page .bs-rate-grid{grid-template-columns:1fr;}
	.boat-slips-page .bs-gal-grid{grid-template-columns:1fr;}
	.boat-slips-page .bs-gal-grid img{height:240px;}
}
@media (max-width:540px){
	.boat-slips-page .bs-rate-card thead th,
	.boat-slips-page .bs-rate-card tbody td{padding-left:18px;padding-right:18px;}
	.boat-slips-page .bs-card-top{flex-direction:column;align-items:flex-start;gap:6px;min-height:0;}
	.boat-slips-page .bs-rate-card h3{white-space:normal;font-size:18px;}
	.boat-slips-page .bs-note{flex-direction:column;}
}
