/* Shared local-site system for all internal pages. */
:root{--page-cream:#f7f6f1}
.site-header{position:sticky;top:0;z-index:10}
.page-nav{min-height:78px}
.page-nav .brand-logo{flex-basis:210px;width:210px;height:78px}
.page-nav .brand-logo img{width:210px;height:auto;transform:none}
.page-nav nav{gap:20px}
.page-nav nav a{font-size:17px;font-weight:500}
.page-main{overflow:hidden}
.page-hero{position:relative;padding:92px 0 78px;background:linear-gradient(118deg,#061e30,#0b2e4d 55%,#027898);color:#fff}
.page-hero.page-hero-photo{background-image:linear-gradient(90deg,#061e30f5 0%,#061e30ce 42%,#061e3066 66%,#061e3015 100%),var(--page-hero-image);background-position:center;background-size:cover}
.page-hero:after{content:"";position:absolute;width:540px;height:540px;right:-180px;top:-270px;border:1px solid #ffffff27;border-radius:50%;box-shadow:-44px 38px 0 -1px #ffffff12,-87px 76px 0 -1px #ffffff0b}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{max-width:900px;font-size:clamp(3.6rem,7vw,6.6rem);color:#fff}
.page-hero p:not(.eyebrow){max-width:720px;font-size:1.28rem;line-height:1.3}
.page-hero .eyebrow{color:#9af0ed}
.page-section{padding:82px 0}
.page-section.alt{background:var(--page-cream)}
.page-section.navy{background:var(--navy);color:#dff7f6}
.page-section h2{font-size:clamp(2.8rem,5vw,4.5rem);margin-bottom:18px}
.page-section.navy h2{color:#fff}
.page-section p,.page-section li{font-size:1.15rem}
.lede-wide{max-width:780px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:start}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.info-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.info-card h3{font-size:2rem;margin-bottom:10px}
.info-card p{margin:0}
.service-callout{padding:34px;background:linear-gradient(130deg,#e8f8f7,#f8fbfa);border-left:5px solid var(--teal);border-radius:var(--radius)}
.service-callout h2{margin:0 0 10px}
.service-callout p{margin:0 0 20px}
.boating-education-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.boating-education-actions .button{margin:0}.boating-education-actions .text-link{font-weight:600}
.list-check{padding-left:20px}
.list-check li{margin:8px 0}
.rate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rate{padding:27px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.rate b{display:block;color:var(--blue);font:600 .9rem "Barlow Condensed",sans-serif;letter-spacing:.09em}
.rate strong{display:block;margin:10px 0;font:700 3rem/.9 "Barlow Condensed",sans-serif;color:var(--navy)}
.rate p{margin:0}
.faq-stack details{border-bottom:1px solid var(--line);padding:17px 3px}
.faq-stack summary{color:var(--navy);font:600 1.45rem/1.1 "Barlow Condensed",sans-serif;cursor:pointer}
.faq-stack details p{max-width:800px}
.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.guide-card{display:block;padding:31px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);color:var(--navy);text-decoration:none}
.guide-card:hover{border-color:var(--teal);transform:translateY(-2px)}
.guide-card span{color:var(--blue);font:600 .85rem "Barlow Condensed",sans-serif;letter-spacing:.11em}
.guide-card h2{font-size:2.45rem;margin:8px 0 12px}
.guide-card p{margin:0}
.content-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.content-nav a{padding:9px 14px;border:1px solid #ffffff55;border-radius:999px;color:#fff;text-decoration:none;font:600 .95rem "Barlow Condensed",sans-serif}
.page-photo{width:100%;min-height:340px;object-fit:cover;border-radius:var(--radius);display:block}
.location-map{min-height:340px;overflow:hidden;border-radius:var(--radius);background:#e7f2f2}.location-map iframe{display:block;width:100%;height:100%;min-height:340px;border:0}
.notice{padding:20px 23px;border-left:5px solid var(--sun);background:#fff5dc;border-radius:var(--radius)}
.site-footer{padding:50px 0;background:var(--deep);color:#d6e4e8}
.footer-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px}
.footer-links a{color:#fff}
.footer-note{font-size:.95rem}
.booking-options{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.booking-options a{display:block;padding:30px;background:#fff;border-radius:var(--radius);color:var(--navy);text-decoration:none}
.booking-options h2{font-size:2.5rem;margin:10px 0}
.booking-options span{font:600 .85rem "Barlow Condensed",sans-serif;color:var(--blue);letter-spacing:.1em}
.booking-options p{margin:0 0 20px}
.booking-options a:hover{background:#effbfa}
.announcement{background:var(--deep)}
.page-nav .nav-more{position:relative;margin:0}
.nav-more summary{list-style:none;color:var(--navy);cursor:pointer;font:500 17px "Alumni Sans",sans-serif}
.nav-more summary::-webkit-details-marker{display:none}
.nav-more summary:after{content:"⌄";color:var(--teal);margin-left:5px}
.nav-more[open] summary:after{content:"⌃"}
.nav-more-menu{position:absolute;right:0;top:32px;width:230px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 30px #0020351f}
.page-nav nav .nav-more-menu a{display:block;padding:10px;font-size:16px}
.nav-more-menu a:hover{background:#edf9f8}
.site-footer .footer-brand{width:210px;height:auto}
.site-footer .footer-brand img{width:210px;height:auto}
.site-footer .footer-links{max-width:800px}

/* Shared footer: one consistent closing experience across every production page. */
.site-footer{padding:clamp(54px,7vw,92px) 0 24px!important;background:#061e30!important;color:#d7e8e9!important}
.site-footer .footer-wrap{display:block}
.site-footer .footer-top{display:flex;align-items:center;justify-content:space-between;gap:42px;padding-bottom:44px;border-bottom:1px solid #ffffff2b}
.site-footer .footer-brand{display:inline-flex;width:250px;height:auto;margin:0!important}
.site-footer .footer-brand img{width:250px;height:auto;filter:brightness(0) invert(1) grayscale(1) contrast(1.2)}
.site-footer .footer-intro p{max-width:410px;margin:13px 0 0;color:#bdd2d5;font-size:1.1rem;line-height:1.35}
.site-footer .footer-quick-links{display:flex;gap:13px;flex-wrap:wrap;justify-content:flex-end}
.site-footer .footer-quick-links a{display:flex;align-items:center;gap:9px;color:#eef9f8;text-decoration:none;font:600 .96rem/1 "Alumni Sans",Arial,sans-serif}
.site-footer .footer-quick-links span{display:grid;width:42px;height:42px;place-items:center;border:1px solid #9cd5d2aa;border-radius:50%;color:#62ddd7;font:600 1.12rem/1 Arial,sans-serif;transition:background .2s,border-color .2s,color .2s}
.site-footer .footer-quick-links a:hover span{background:var(--teal);border-color:var(--teal);color:var(--deep)}
.site-footer .footer-columns{display:grid;grid-template-columns:.9fr .9fr 1.2fr 1.25fr;gap:28px;padding:48px 0 46px}
.site-footer .footer-columns section{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.site-footer .footer-columns h2{margin:0 0 5px;color:#61ddd7;font:600 1.35rem/1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.site-footer .footer-columns>a,.site-footer .footer-columns section>a{color:#eff7f7;text-decoration:none;font-size:1.02rem;line-height:1.3}
.site-footer .footer-columns section:not(.footer-cta)>a:hover,.site-footer .footer-bottom a:hover{color:#62ddd7}
.site-footer .footer-cta{padding:0 0 0 35px;border-left:1px solid #ffffff2b}
.site-footer .footer-kicker{margin:0!important;color:var(--sun)!important;font:600 .9rem/1 "Barlow Condensed",Arial,sans-serif!important;letter-spacing:.11em;text-transform:uppercase}
.site-footer .footer-cta h2{margin:6px 0 9px;color:#fff;font-size:2.25rem;letter-spacing:0}
.site-footer .footer-cta>p:not(.footer-kicker){margin:0 0 18px;color:#bdd2d5;font-size:1.02rem;line-height:1.35}
.site-footer .footer-cta .button{min-width:190px;background:var(--sun);border-color:var(--sun);color:var(--deep);font-weight:600}
.site-footer .footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding-top:22px;border-top:1px solid #ffffff2b;color:#a8c1c4;font-size:.92rem}
.site-footer .footer-bottom p{margin:0;text-align:center}
.site-footer .footer-bottom>div{display:flex;justify-content:flex-end;gap:18px}
.site-footer .footer-bottom a{color:#d7e8e9;text-decoration:none}
.site-footer .footer-back-top{font-weight:600}
@media(max-width:850px){.site-footer .footer-top{align-items:flex-start;flex-direction:column}.site-footer .footer-quick-links{justify-content:flex-start}.site-footer .footer-columns{grid-template-columns:repeat(2,1fr)}.site-footer .footer-cta{padding-left:25px}.site-footer .footer-bottom{grid-template-columns:1fr}.site-footer .footer-bottom p{text-align:left}.site-footer .footer-bottom>div{justify-content:flex-start}}
@media(max-width:560px){.site-footer{padding-top:52px!important}.site-footer .footer-brand,.site-footer .footer-brand img{width:218px}.site-footer .footer-quick-links{display:grid;grid-template-columns:1fr}.site-footer .footer-columns{grid-template-columns:1fr;gap:32px;padding:38px 0}.site-footer .footer-cta{padding:27px 0 0;border-top:1px solid #ffffff2b;border-left:0}.site-footer .footer-bottom>div{flex-direction:column;gap:8px}}

/* Shared geo-page introduction: photo first, then the useful planning copy. */
.page-main article[data-location-template="complete"] .location-detail-section .split{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:clamp(42px,7vw,100px);align-items:center}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.page-photo{order:-1;width:min(100%,510px);min-height:unset!important;aspect-ratio:1;border-radius:50%!important;object-fit:cover;justify-self:center}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.holmes-beach-detail-photo{object-position:left center}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.anna-maria-island-detail-photo{object-position:center center}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.bradenton-detail-photo{object-position:center center}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.longboat-key-detail-photo{object-position:center center}
@media(max-width:850px){.page-main article[data-location-template="complete"] .location-detail-section .split{grid-template-columns:1fr;gap:32px}.page-main article[data-location-template="complete"] .location-detail-section .split>img.page-photo{width:min(82vw,440px)}}
@media(max-width:560px){.page-main article[data-location-template="complete"] .location-detail-section .split>img.page-photo{width:min(88vw,360px)}}

/* Final geo-hero sizing: preserve the complete photo rather than cropping it with cover. */
.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-color:#061e30!important;background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,right center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-position:center,right center!important;background-size:100% 100%,auto 100%!important}}

/* Final geo-hero sizing: preserve the complete photo rather than cropping it with cover. */
.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-color:#061e30!important;background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,right center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-position:center,right center!important;background-size:100% 100%,auto 100%!important}}

/* Final geo-hero sizing: preserve the complete photo rather than cropping it with cover. */
.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-color:#061e30!important;background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,right center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-position:center,right center!important;background-size:100% 100%,auto 100%!important}}

/* Geo pages use CSS background heroes. Override the legacy image-element hero rule. */
.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-color:#061e30!important;background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,right center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right[style*="--page-hero-image"]{background-position:center,right center!important;background-size:100% 100%,auto 100%!important}}

/* Shared location-page planning finish: one consistent next step for every area. */
.location-plan-cta{padding:clamp(62px,8vw,112px) 0;text-align:center;background:radial-gradient(circle at 12% 20%,#59ded7 0,transparent 27%),linear-gradient(105deg,#00aeae 0%,#058aa2 46%,#075375 100%);color:#e8ffff}
.location-plan-cta .wrap{max-width:850px}
.location-plan-kicker{margin:0 0 11px;color:#063b52;font:600 .88rem/1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.location-plan-cta h2{margin:0;color:#fff;font-size:clamp(3rem,5.6vw,5.3rem);line-height:.92}
.location-plan-cta p:not(.location-plan-kicker){max-width:520px;margin:14px auto 25px;color:#e9ffff;font-size:1.2rem;line-height:1.35}
.location-plan-cta .button{border-color:var(--sun);border-radius:999px;background:var(--sun);color:var(--deep);box-shadow:0 5px 0 #06324b3d}
.location-plan-cta .button:hover{background:#ffc65a;border-color:#ffc65a;transform:translateY(-2px)}

/* One service-choice treatment across every location landing page. */
.location-service-treatment{padding:85px 0;background:#f7f6f1 url("assets/map-bkgd.png") center top/auto no-repeat;text-align:center}
.location-service-treatment>.wrap>h2{margin:10px 0 35px;background:linear-gradient(to bottom,var(--navy) 0 49%,var(--teal) 51% 100%);-webkit-background-clip:text;background-clip:text;color:transparent;font:700 clamp(3.7rem,5.6vw,5.9rem)/.88 "Barlow Condensed",Arial,sans-serif;text-transform:uppercase}
.location-service-treatment .choose-intro{max-width:650px;margin:-12px auto 35px;color:var(--ink);font:400 1.15rem/1.45 "Alumni Sans",Arial,sans-serif;letter-spacing:0;text-transform:none}
.location-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.location-service-card{position:relative;isolation:isolate;display:block;min-height:410px;overflow:hidden;border-radius:3px;color:#fff;text-decoration:none;background:#061e30}
.location-service-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.location-service-card:nth-child(1)>img{object-position:center bottom}
.location-service-card:nth-child(2)>img{object-position:86% center}
.location-service-card:nth-child(3)>img{inset:-24% -10% auto;width:120%;height:140%;object-position:center top}
.location-service-card:hover>img{transform:scale(1.045)}
.location-service-shade{position:absolute;inset:0;background:linear-gradient(0deg,#061e30f5 2%,#061e30a6 35%,#061e3010 73%)}
.location-service-copy{position:absolute;inset:auto 0 0;padding:28px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.location-service-copy small,.location-service-copy b{font:600 .9rem/1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.location-service-copy strong{font:600 2rem/.9 "Barlow Condensed",Arial,sans-serif;text-transform:uppercase;white-space:nowrap}
.location-service-copy em{font-style:normal;font-size:1.1rem;line-height:1.25;color:#efffff}
.location-service-copy b{margin-top:11px;color:var(--sun)}
@media(max-width:850px){.location-service-treatment{padding:70px 24px}.location-service-grid{grid-template-columns:1fr}.location-service-card{min-height:350px}.location-service-copy strong{white-space:normal;font-size:1.8rem}.location-service-treatment .choose-intro{font-size:1.1rem}}

/* Location heroes mirror the homepage's photographic treatment, not a flat color panel. */
.page-hero.page-hero-photo:after{display:none}
.page-hero.page-hero-photo{min-height:480px;display:flex;align-items:center}
@media(max-width:800px){.page-hero.page-hero-photo{min-height:430px}}

/* Homepage-equivalent CTA system for every internal-page hero. */
.page-hero .content-nav{gap:14px;margin-top:30px}
.page-hero .hero-cta-primary,.page-hero .hero-cta-secondary{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:2px solid transparent;border-radius:999px;font-family:"Barlow Condensed",Arial,sans-serif;font-size:1rem;font-weight:600;text-decoration:none;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
.page-hero .hero-cta-primary{order:-1;padding:13px 20px;border-color:#ffbf40;background:linear-gradient(135deg,#ffd15a 0%,var(--sun) 55%,var(--orange) 100%);box-shadow:0 5px 0 #0623392e;color:var(--deep);letter-spacing:.04em;line-height:1.1}
.page-hero .hero-cta-primary:hover{background:linear-gradient(135deg,#ffe084 0%,#ffbd3c 55%,#f58a2b 100%);box-shadow:0 8px 0 #06233920;transform:translateY(-2px)}
.page-hero .hero-cta-secondary{padding:11px 18px;border-color:#fff;color:#fff;background:#ffffff0a;box-shadow:0 3px 0 #061e3026;letter-spacing:.06em;line-height:1.05}
.page-hero .hero-cta-secondary:hover{border-color:#bdf5f1;background:#ffffff1d;box-shadow:0 6px 0 #061e3040;color:#fff;transform:translateY(-2px)}
.page-hero .hero-cta-primary:focus-visible,.page-hero .hero-cta-secondary:focus-visible{outline:3px solid #9af0ed;outline-offset:3px}
@media(max-width:560px){.page-hero .content-nav{gap:10px}.page-hero .hero-cta-primary,.page-hero .hero-cta-secondary{width:100%;min-height:48px}}
@media(max-width:850px){.page-nav nav{display:none}
.page-nav .brand-logo{flex-basis:180px;width:180px}
.page-nav .brand-logo img{width:180px}
.split,.card-grid,.rate-grid,.guide-grid,.booking-options{grid-template-columns:1fr}
.page-section{padding:60px 0}
.page-hero{padding:72px 0 58px}
.page-hero h1{font-size:4rem}
}

/* Keep supplied service imagery in the visible hero, above the shared fallback. */
.page-hero.page-hero-photo{background-color:#061e30!important;background-image:linear-gradient(90deg,#061e30f5 0%,#061e30ce 42%,#061e3066 66%,#061e3015 100%),var(--page-hero-image)!important;background-position:center!important;background-size:cover!important}
.page-hero.page-hero-photo:after{display:none!important}
.page-hero.page-hero-photo{isolation:isolate;overflow:hidden;background-image:none!important}
.page-hero.page-hero-photo>.page-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.page-hero.page-hero-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061e30f5 0%,#061e30ce 42%,#061e3066 66%,#061e3015 100%);z-index:1}
.page-hero.page-hero-photo>.wrap{position:relative;z-index:2}

/* Hero imagery will carry the visual interest. Remove the temporary decorative
   circle device from every shared page hero, including text-only placeholders. */
.page-hero:after{display:none!important}

/* Homepage pricing-card treatment, carried into each service page without
   changing the service-specific rates or requirement copy. */
.page-section#rates{background:#f7f6f1!important}
.page-section#rates .rate-grid{gap:18px;margin-top:34px}
.page-section#rates .rate{position:relative;display:flex;min-height:286px;padding:30px 28px 26px;flex-direction:column;border:1px solid transparent;border-radius:4px;background:#fff;box-shadow:0 14px 34px #0b2e4d1a;transition:border-color .2s,box-shadow .2s,transform .2s}
.page-section#rates .rate:hover{border-color:var(--teal);box-shadow:0 20px 42px #00b2b11f;transform:translateY(-3px)}
.page-section#rates .rate>b{font:600 1.35rem/1 "Barlow Condensed",sans-serif;letter-spacing:0;color:var(--teal);text-transform:uppercase}
.page-section#rates .rate>strong{margin:18px 0 13px;padding-bottom:15px;border-bottom:1px solid #d6e5e7;font:700 3.15rem/.9 "Barlow Condensed",sans-serif;color:var(--navy)}
.page-section#rates .rate>p{margin:0;color:#52666e;font-size:1.05rem;line-height:1.42}
.page-section#rates .footer-note{max-width:980px;margin:25px 0 0;color:#52666e;line-height:1.45}
.page-section#rates .notice{margin-top:22px;border-left-color:var(--teal);box-shadow:0 8px 24px #0b2e4d0b}
@media(max-width:850px){.page-section#rates .rate{min-height:0}.page-section#rates .rate-grid{gap:14px}}

/* Service-rate cards intentionally mirror the homepage booking-card hierarchy. */
.page-section#rates>.wrap>p.eyebrow,.page-section#rates>.wrap>h2{text-align:center}
.page-section#rates>.wrap>h2{margin-bottom:0}
.page-section#rates .rate{min-height:385px;padding:38px 32px 30px;border-top:6px solid var(--teal);box-shadow:0 14px 34px #0b2e4d1a}
.page-section#rates .rate>b{font-size:1.55rem}
.page-section#rates .rate>strong{margin:26px 0 16px;padding-bottom:18px;font-size:3.2rem}
.page-section#rates .rate>p{margin:0 0 14px}
.page-section#rates .rate ul{margin:0 0 18px;padding:0;list-style:none;color:#52666e;line-height:1.42}
.page-section#rates .rate li{position:relative;padding-left:20px}
.page-section#rates .rate li:before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:700}
.page-section#rates .rate .text-button{width:100%;margin-top:auto;padding:13px;border:0;border-radius:999px;background:var(--teal);color:#fff;text-align:center}
.page-section#rates .rate .text-button:hover{background:var(--navy)}

/* Final homepage card measurements — no top stripe, no forced card height. */
.page-section#rates{padding:95px 0!important;text-align:center}
.page-section#rates> .wrap>h2{font-size:clamp(3.5rem,5vw,5.2rem)!important}
.page-section#rates .rate-grid{gap:18px!important;margin-top:36px!important;text-align:left}
.page-section#rates .rate{min-height:0!important;padding:26px 28px 24px!important;border:1px solid transparent!important;border-top:1px solid transparent!important;border-radius:4px!important;background:#fff!important;box-shadow:0 14px 34px #0b2e4d1a!important}
.page-section#rates .rate>b{font:600 1.55rem "Barlow Condensed",sans-serif!important;letter-spacing:0!important;color:var(--teal)!important;text-transform:uppercase}
.page-section#rates .rate>strong{margin:12px 0 8px!important;padding-bottom:10px!important;border-bottom:1px solid #d6e5e7!important;font:700 3.2rem/.9 "Barlow Condensed",sans-serif!important;color:var(--navy)!important}
.page-section#rates .rate>strong small{font:500 1rem "Alumni Sans",sans-serif;color:#6b7980;text-transform:none}
.page-section#rates .rate>p{min-height:0!important;margin:0 0 8px!important;padding-left:0!important;color:var(--ink)!important;font-size:1.08rem!important;line-height:1.4!important}
.page-section#rates .rate ul{margin:0 0 14px!important;padding:0!important;list-style:none!important;color:#52666e!important;line-height:1.42!important}
.page-section#rates .rate .text-button{display:block!important;width:100%!important;margin-top:0!important;padding:13px!important;border:0!important;border-radius:999px!important;background:var(--teal)!important;color:#fff!important;text-align:center!important}
@media(max-width:800px){.page-section#rates{padding:65px 0!important}}

/* Match the homepage hero canvas on the three primary service pages. */
.page-hero.primary-service-hero{display:flex;min-height:650px!important;padding:0!important;align-items:stretch}
.page-hero.primary-service-hero>.wrap{display:flex;align-self:stretch;flex-direction:column;justify-content:center;padding:105px 0 66px}
@media(max-width:800px){.page-hero.primary-service-hero{min-height:590px!important}.page-hero.primary-service-hero>.wrap{padding:85px 0 50px}}

/* The original boat-party photo stays intact: give it a dedicated right-side
   canvas and preserve navy negative space for the boat-rental message. */
.page-hero.page-hero-photo.boat-rentals-hero{background:#061e30!important}
.page-hero.page-hero-photo.boat-rentals-hero>.page-hero-image{inset:auto -140px -60px auto!important;width:auto!important;height:calc(100% + 120px)!important;object-fit:contain!important;object-position:right center!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .45) 13%,#000 31%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .45) 13%,#000 31%,#000 100%)}
.page-hero.page-hero-photo.boat-rentals-hero:before{background:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%)!important}
@media(max-width:800px){.page-hero.page-hero-photo.boat-rentals-hero>.page-hero-image{right:-230px!important;bottom:0!important;height:100%!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .45) 15%,#000 36%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .45) 15%,#000 36%,#000 100%)}.page-hero.page-hero-photo.boat-rentals-hero:before{background:linear-gradient(90deg,#061e30fa 0%,#061e30dc 48%,rgb(6 30 48 / .48) 71%,transparent 100%)!important}}

/* Shared service-hero treatment: keep the original photo fully intact at right,
   then let its left edge taper naturally into navy behind the message. */
.page-hero.page-hero-photo.hero-photo-right{background-color:#061e30!important;background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,right center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
.page-hero.page-hero-photo.hero-photo-right.hero-holmes-beach{background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,left center!important;background-size:100% 100%,120% auto!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right.hero-holmes-beach{background-position:center,62% center!important;background-size:100% 100%,cover!important}}
.page-hero.page-hero-photo.hero-photo-right.hero-bradenton-beach{background-position:center,calc(100% + 154px) center!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right.hero-bradenton-beach{background-position:center,right center!important}}
.page-hero.page-hero-photo.hero-photo-right.hero-bradenton{background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image),url("assets/internal/hero-bradenton-left-extended.png")!important;background-position:center,calc(100% + 148px) center,calc(100% + 148px) center!important;background-size:100% 100%,auto 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right.hero-bradenton{background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,right center!important;background-size:100% 100%,auto 100%!important}}
.page-hero.page-hero-photo.hero-photo-right.hero-palma-sola-bay{background-image:linear-gradient(90deg,rgb(6 30 48 / .92) 0%,rgb(6 30 48 / .84) 35%,rgb(6 30 48 / .62) 52%,rgb(6 30 48 / .27) 70%,transparent 100%),var(--page-hero-image)!important}
.page-hero.page-hero-photo.hero-photo-right.hero-longboat-key{background-position:center,calc(100% + 148px) center!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right.hero-longboat-key{background-position:center,right center!important}}
.page-hero.page-hero-photo.hero-photo-right.hero-longboat-key.hero-longboat-key-sunset{background-image:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%),var(--page-hero-image)!important;background-position:center,calc(100% + 148px) center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right.hero-longboat-key.hero-longboat-key-sunset{background-position:center,right center!important}}
.page-hero.page-hero-photo.hero-photo-right.hero-siesta-key{background-image:linear-gradient(90deg,#061e30 0%,#061e30f2 34%,rgb(6 30 48 / .78) 44%,rgb(6 30 48 / .38) 57%,rgb(6 30 48 / .10) 70%,transparent 100%),var(--page-hero-image)!important;background-position:center,calc(100% + 208px) center!important;background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right.hero-siesta-key{background-position:center,right center!important}}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.cortez-detail-photo{object-position:52% center}
.page-main article[data-location-template="complete"] .location-detail-section .split>img.sarasota-detail-photo{object-position:18% center}

/* Image descriptions stay in the static page source even when the hero is painted as a CSS background. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Clear launch guidance for visitors planning a day trip to Anna Maria Island. */
.visitor-launch-note{padding:44px 0;background:var(--navy)}
.visitor-launch-note .wrap{display:grid;grid-template-columns:1.1fr 1.35fr auto;gap:28px;align-items:center}
.visitor-launch-note h2{margin:0;color:#fff;font-size:clamp(2rem,3.4vw,3.3rem);line-height:.94}
.visitor-launch-note p{margin:0;color:#fff;font-size:1.12rem;line-height:1.4}
.visitor-launch-note .eyebrow,.visitor-launch-note .eyebrow.teal{color:#6de4e6}
.visitor-launch-note .button{white-space:nowrap;background:var(--sun);border-color:var(--sun);color:var(--deep)}
@media(max-width:800px){.visitor-launch-note{padding:34px 24px}.visitor-launch-note .wrap{grid-template-columns:1fr;gap:14px}.visitor-launch-note .button{justify-self:start}}
.page-hero.page-hero-photo.hero-photo-right>.page-hero-image{inset:0 0 0 auto!important;width:min(86vw,1800px)!important;height:100%!important;object-fit:cover!important;object-position:62% center!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .44) 13%,#000 31%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .44) 13%,#000 31%,#000 100%)}
.page-hero.page-hero-photo.hero-photo-right:before{background:linear-gradient(90deg,#061e30 0%,#061e30f7 35%,rgb(6 30 48 / .88) 45%,rgb(6 30 48 / .50) 59%,rgb(6 30 48 / .16) 76%,transparent 100%)!important}
.page-hero.page-hero-photo.guided-tours-hero>.page-hero-image{right:-208px!important;object-position:68% center!important}
.page-hero.page-hero-photo.jet-ski-rentals-hero>.page-hero-image{top:-96px!important;right:-208px!important;bottom:auto!important;height:calc(100% + 96px)!important;object-position:71% center!important}
@media(max-width:800px){.page-hero.page-hero-photo.hero-photo-right>.page-hero-image{width:100%!important;right:0!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .45) 18%,#000 40%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgb(0 0 0 / .45) 18%,#000 40%,#000 100%)}.page-hero.page-hero-photo.hero-photo-right:before{background:linear-gradient(90deg,#061e30fa 0%,#061e30dc 48%,rgb(6 30 48 / .48) 71%,transparent 100%)!important}}
@media(max-width:800px){.page-hero.page-hero-photo.jet-ski-rentals-hero>.page-hero-image{top:0!important;bottom:0!important;height:100%!important}}

:root{--page-cream:#f7f6f1}
.site-header{position:sticky;top:0;z-index:10}
.page-nav{min-height:78px}
.page-nav .brand-logo{flex-basis:210px;width:210px;height:78px}
.page-nav .brand-logo img{width:210px;height:auto;transform:none}
.page-nav nav{gap:20px}
.page-nav nav a{font-size:17px;font-weight:500}
.page-main{overflow:hidden}
.page-hero{position:relative;padding:92px 0 78px;background:linear-gradient(118deg,#061e30,#0b2e4d 55%,#027898);color:#fff}
.page-hero:after{content:"";position:absolute;width:540px;height:540px;right:-180px;top:-270px;border:1px solid #ffffff27;border-radius:50%;box-shadow:-44px 38px 0 -1px #ffffff12,-87px 76px 0 -1px #ffffff0b}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{max-width:900px;font-size:clamp(3.6rem,7vw,6.6rem);color:#fff}
.page-hero p:not(.eyebrow){max-width:720px;font-size:1.28rem;line-height:1.3}
.page-hero .eyebrow{color:#9af0ed}
.page-section{padding:82px 0}
.page-section.alt{background:var(--page-cream)}
.page-section.navy{background:var(--navy);color:#dff7f6}
.page-section h2{font-size:clamp(2.8rem,5vw,4.5rem);margin-bottom:18px}
.page-section.navy h2{color:#fff}
.page-section p,.page-section li{font-size:1.15rem}
.lede-wide{max-width:780px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:start}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.info-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.info-card h3{font-size:2rem;margin-bottom:10px}
.info-card p{margin:0}
.service-callout{padding:34px;background:linear-gradient(130deg,#e8f8f7,#f8fbfa);border-left:5px solid var(--teal);border-radius:var(--radius)}
.service-callout h2{margin:0 0 10px}
.service-callout p{margin:0 0 20px}
.list-check{padding-left:20px}
.list-check li{margin:8px 0}
.rate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rate{padding:27px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.rate b{display:block;color:var(--blue);font:600 .9rem "Barlow Condensed",sans-serif;letter-spacing:.09em}
.rate strong{display:block;margin:10px 0;font:700 3rem/.9 "Barlow Condensed",sans-serif;color:var(--navy)}
.rate p{margin:0}
.faq-stack details{border-bottom:1px solid var(--line);padding:17px 3px}
.faq-stack summary{color:var(--navy);font:600 1.45rem/1.1 "Barlow Condensed",sans-serif;cursor:pointer}
.faq-stack details p{max-width:800px}
.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.guide-card{display:block;padding:31px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);color:var(--navy);text-decoration:none}
.guide-card:hover{border-color:var(--teal);transform:translateY(-2px)}
.guide-card span{color:var(--blue);font:600 .85rem "Barlow Condensed",sans-serif;letter-spacing:.11em}
.guide-card h2{font-size:2.45rem;margin:8px 0 12px}
.guide-card p{margin:0}
.content-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.content-nav a{padding:9px 14px;border:1px solid #ffffff55;border-radius:999px;color:#fff;text-decoration:none;font:600 .95rem "Barlow Condensed",sans-serif}
.page-photo{width:100%;min-height:340px;object-fit:cover;border-radius:var(--radius);display:block}
.notice{padding:20px 23px;border-left:5px solid var(--sun);background:#fff5dc;border-radius:var(--radius)}
.site-footer{padding:50px 0;background:var(--deep);color:#d6e4e8}
.footer-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px}
.footer-links a{color:#fff}
.footer-note{font-size:.95rem}
.booking-options{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.booking-options a{display:block;padding:30px;background:#fff;border-radius:var(--radius);color:var(--navy);text-decoration:none}
.booking-options h2{font-size:2.5rem;margin:10px 0}
.booking-options span{font:600 .85rem "Barlow Condensed",sans-serif;color:var(--blue);letter-spacing:.1em}
.booking-options p{margin:0 0 20px}
.booking-options a:hover{background:#effbfa}
.announcement{background:var(--deep)}
.page-nav .nav-more{position:relative;margin:0}
.nav-more summary{list-style:none;color:var(--navy);cursor:pointer;font:500 17px "Alumni Sans",sans-serif}
.nav-more summary::-webkit-details-marker{display:none}
.nav-more summary:after{content:"⌄";color:var(--teal);margin-left:5px}
.nav-more[open] summary:after{content:"⌃"}
.nav-more-menu{position:absolute;right:0;top:32px;width:230px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 30px #0020351f}
.page-nav nav .nav-more-menu a{display:block;padding:10px;font-size:16px}
.nav-more-menu a:hover{background:#edf9f8}
.plan-nav{background:#edf9f8;border-bottom:1px solid var(--line)}
.plan-nav-inner{min-height:43px;display:flex;align-items:center;gap:18px;overflow-x:auto;white-space:nowrap}
.plan-nav strong{font:600 .92rem "Barlow Condensed",sans-serif;letter-spacing:.1em;color:var(--blue);text-transform:uppercase}
.plan-nav a{color:var(--navy);font-size:1rem;font-weight:500;text-decoration:none}
.plan-nav a:hover{color:var(--blue);text-decoration:underline}
.site-footer .footer-brand{width:210px;height:auto}
.site-footer .footer-brand img{width:210px;height:auto}
.site-footer .footer-links{max-width:800px}
@media(max-width:850px){.page-nav nav{display:none}
.page-nav .brand-logo{flex-basis:180px;width:180px}
.page-nav .brand-logo img{width:180px}
.plan-nav-inner{gap:14px}
.plan-nav strong{display:none}
.split,.card-grid,.rate-grid,.guide-grid,.booking-options{grid-template-columns:1fr}
.page-section{padding:60px 0}
.page-hero{padding:72px 0 58px}
.page-hero h1{font-size:4rem}
}

:root{--page-cream:#f7f6f1}
.site-header{position:sticky;top:0;z-index:10}
.page-nav{min-height:78px}
.page-nav .brand-logo{flex-basis:210px;width:210px;height:78px}
.page-nav .brand-logo img{width:210px;height:auto;transform:none}
.page-nav nav{gap:20px}
.page-nav nav a{font-size:17px;font-weight:500}
.page-main{overflow:hidden}
.page-hero{position:relative;padding:92px 0 78px;background:linear-gradient(118deg,#061e30,#0b2e4d 55%,#027898);color:#fff}
.page-hero:after{content:"";position:absolute;width:540px;height:540px;right:-180px;top:-270px;border:1px solid #ffffff27;border-radius:50%;box-shadow:-44px 38px 0 -1px #ffffff12,-87px 76px 0 -1px #ffffff0b}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{max-width:900px;font-size:clamp(3.6rem,7vw,6.6rem);color:#fff}
.page-hero p:not(.eyebrow){max-width:720px;font-size:1.28rem;line-height:1.3}
.page-hero .eyebrow{color:#9af0ed}
.page-section{padding:82px 0}
.page-section.alt{background:var(--page-cream)}
.page-section.navy{background:var(--navy);color:#dff7f6}
.page-section h2{font-size:clamp(2.8rem,5vw,4.5rem);margin-bottom:18px}
.page-section.navy h2{color:#fff}
.page-section p,.page-section li{font-size:1.15rem}
.lede-wide{max-width:780px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:start}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.info-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.info-card h3{font-size:2rem;margin-bottom:10px}
.info-card p{margin:0}
.service-callout{padding:34px;background:linear-gradient(130deg,#e8f8f7,#f8fbfa);border-left:5px solid var(--teal);border-radius:var(--radius)}
.service-callout h2{margin:0 0 10px}
.service-callout p{margin:0 0 20px}
.list-check{padding-left:20px}
.list-check li{margin:8px 0}
.rate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rate{padding:27px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.rate b{display:block;color:var(--blue);font:600 .9rem "Barlow Condensed",sans-serif;letter-spacing:.09em}
.rate strong{display:block;margin:10px 0;font:700 3rem/.9 "Barlow Condensed",sans-serif;color:var(--navy)}
.rate p{margin:0}
.faq-stack details{border-bottom:1px solid var(--line);padding:17px 3px}
.faq-stack summary{color:var(--navy);font:600 1.45rem/1.1 "Barlow Condensed",sans-serif;cursor:pointer}
.faq-stack details p{max-width:800px}
.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.guide-card{display:block;padding:31px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);color:var(--navy);text-decoration:none}
.guide-card:hover{border-color:var(--teal);transform:translateY(-2px)}
.guide-card span{color:var(--blue);font:600 .85rem "Barlow Condensed",sans-serif;letter-spacing:.11em}
.guide-card h2{font-size:2.45rem;margin:8px 0 12px}
.guide-card p{margin:0}
.content-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.content-nav a{padding:9px 14px;border:1px solid #ffffff55;border-radius:999px;color:#fff;text-decoration:none;font:600 .95rem "Barlow Condensed",sans-serif}
.page-photo{width:100%;min-height:340px;object-fit:cover;border-radius:var(--radius);display:block}
.notice{padding:20px 23px;border-left:5px solid var(--sun);background:#fff5dc;border-radius:var(--radius)}
.site-footer{padding:50px 0;background:var(--deep);color:#d6e4e8}
.footer-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px}
.footer-links a{color:#fff}
.footer-note{font-size:.95rem}
.booking-options{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.booking-options a{display:block;padding:30px;background:#fff;border-radius:var(--radius);color:var(--navy);text-decoration:none}
.booking-options h2{font-size:2.5rem;margin:10px 0}
.booking-options span{font:600 .85rem "Barlow Condensed",sans-serif;color:var(--blue);letter-spacing:.1em}
.booking-options p{margin:0 0 20px}
.booking-options a:hover{background:#effbfa}
.announcement{background:var(--deep)}
.page-nav .nav-more{position:relative;margin:0}
.nav-more summary{list-style:none;color:var(--navy);cursor:pointer;font:500 17px "Alumni Sans",sans-serif}
.nav-more summary::-webkit-details-marker{display:none}
.nav-more summary:after{content:"⌄";color:var(--teal);margin-left:5px}
.nav-more[open] summary:after{content:"⌃"}
.nav-more-menu{position:absolute;right:0;top:32px;width:230px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 30px #0020351f}
.page-nav nav .nav-more-menu a{display:block;padding:10px;font-size:16px}
.nav-more-menu a:hover{background:#edf9f8}
.site-footer .footer-brand{width:210px;height:auto}
.site-footer .footer-brand img{width:210px;height:auto}
.site-footer .footer-links{max-width:800px}
.nav-menu{position:relative}
.nav-menu summary{list-style:none;color:var(--navy);cursor:pointer;font:500 17px "Alumni Sans",sans-serif}
.nav-menu summary::-webkit-details-marker{display:none}
.nav-menu summary:after{content:"⌄";color:var(--teal);margin-left:5px}
.nav-menu-panel{position:absolute;top:31px;left:-14px;width:250px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 30px #0020351f}
.page-nav .nav-menu-panel a{display:block;padding:10px;font-size:16px}
.nav-menu-panel a:hover{background:#edf9f8}
.mobile-nav{display:none}
.mobile-nav summary{cursor:pointer;color:var(--navy);font:600 1.15rem "Barlow Condensed",sans-serif;text-transform:uppercase}
.mobile-nav-panel{padding:14px 24px 22px;background:#fff;border-bottom:1px solid var(--line)}
.mobile-nav-panel a{display:block;padding:10px 0;color:var(--navy);font-weight:600;text-decoration:none}
@media(max-width:850px){.desktop-nav{display:none}
.page-nav .brand-logo{flex-basis:180px;width:180px}
.page-nav .brand-logo img{width:180px}
.mobile-nav{display:block;padding:11px 24px;background:#fff;border-bottom:1px solid var(--line)}
.split,.card-grid,.rate-grid,.guide-grid,.booking-options{grid-template-columns:1fr}
.page-section{padding:60px 0}
.page-hero{padding:72px 0 58px}
.page-hero h1{font-size:4rem}
}

/* Softer policy reminder across all pricing areas. */
.page-section#rates .notice{padding:11px 14px!important;border:1px solid rgb(0 178 177 / .38)!important;border-left:1px solid rgb(0 178 177 / .38)!important;border-radius:var(--radius)!important;background:rgb(0 178 177 / .10)!important;box-shadow:none!important;color:#365f67!important;font-weight:400!important}
.page-section#rates .notice strong{font-weight:600!important;color:var(--navy)!important}
.page-section#rates .notice .text-link{font-weight:600!important;color:var(--blue)!important;text-transform:none!important;letter-spacing:0!important}
.page-section#rates .notice{white-space:nowrap;font-size:.95rem}
.page-section#rates .notice>span{display:inline-block;white-space:nowrap}
@media(max-width:800px){.page-section#rates .notice,.page-section#rates .notice>span{white-space:normal}}

/* Center the complete pricing treatment. */
.page-section#rates,.page-section#rates .footer-note,.page-section#rates .notice{text-align:center!important}
.page-section#rates .footer-note{font-weight:400!important}
.page-section#rates .rate ul{display:block!important;text-align:left!important}

.page-section#rates .rate,.page-section#rates .rate>b,.page-section#rates .rate>strong,.page-section#rates .rate>p,.page-section#rates .rate>ul,.page-section#rates .rate li{text-align:left!important}
.page-section#rates .footer-note,.page-section#rates .notice{margin-left:auto!important;margin-right:auto!important;text-align:center!important}

@media (hover:hover) and (min-width:801px){.page-section#rates .rate{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.page-section#rates .rate:hover{border-color:var(--teal)!important;box-shadow:0 0 28px rgb(0 178 177 / .50)!important;transform:translateY(-3px)}}

/* Exact homepage pricing-card padding for the primary service pages. */
:root{--pricing-card-padding:26px 28px 24px}
.page-section#rates .rate{padding:var(--pricing-card-padding)!important}

/* Footer declarations sit last so they win over legacy page-footer rules above. */
.site-footer{padding:clamp(54px,7vw,92px) 0 24px!important;background:#061e30!important;color:#d7e8e9!important}
.site-footer .footer-wrap{display:block}
.site-footer .footer-top{display:flex;align-items:center;justify-content:space-between;gap:42px;padding-bottom:44px;border-bottom:1px solid #ffffff2b}
.site-footer .footer-brand,.site-footer .footer-brand img{width:250px;height:auto}
.site-footer .footer-brand{display:inline-flex;margin:0!important}
.site-footer .footer-brand img{filter:brightness(0) invert(1) grayscale(1) contrast(1.2)}
.site-footer .footer-intro p{max-width:410px;margin:13px 0 0;color:#bdd2d5;font-size:1.1rem;line-height:1.35}
.site-footer .footer-quick-links{display:flex;gap:13px;flex-wrap:wrap;justify-content:flex-end}
.site-footer .footer-quick-links a{display:flex;align-items:center;gap:9px;color:#eef9f8;text-decoration:none;font:600 .96rem/1 "Alumni Sans",Arial,sans-serif}
.site-footer .footer-quick-links span{display:grid;width:42px;height:42px;place-items:center;border:1px solid #9cd5d2aa;border-radius:50%;color:#62ddd7;font:600 1.12rem/1 Arial,sans-serif;transition:background .2s,border-color .2s,color .2s}
.site-footer .footer-quick-links a:hover span{background:var(--teal);border-color:var(--teal);color:var(--deep)}
.site-footer .footer-columns{display:grid;grid-template-columns:.9fr .9fr 1.2fr 1.25fr;gap:28px;padding:48px 0 46px}
.site-footer .footer-columns section{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.site-footer .footer-columns h2{margin:0 0 5px;color:#61ddd7;font:600 1.35rem/1 "Barlow Condensed",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.site-footer .footer-columns section>a{color:#eff7f7;text-decoration:none;font-size:1.02rem;line-height:1.3}
.site-footer .footer-columns section:not(.footer-cta)>a:hover,.site-footer .footer-bottom a:hover{color:#62ddd7}
.site-footer .footer-cta{padding:0 0 0 35px;border-left:1px solid #ffffff2b}
.site-footer .footer-kicker{margin:0!important;color:var(--sun)!important;font:600 .9rem/1 "Barlow Condensed",Arial,sans-serif!important;letter-spacing:.11em;text-transform:uppercase}
.site-footer .footer-cta h2{margin:6px 0 9px;color:#fff;font-size:2.25rem;letter-spacing:0}
.site-footer .footer-cta>p:not(.footer-kicker){margin:0 0 18px;color:#bdd2d5;font-size:1.02rem;line-height:1.35}
.site-footer .footer-cta .button{min-width:190px;background:var(--sun);border-color:var(--sun);color:var(--deep);font-weight:600}
.site-footer .footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding-top:22px;border-top:1px solid #ffffff2b;color:#a8c1c4;font-size:.92rem}
.site-footer .footer-bottom p{margin:0;text-align:center}
.site-footer .footer-bottom>div{display:flex;justify-content:flex-end;gap:18px}
.site-footer .footer-bottom a{color:#d7e8e9;text-decoration:none}
.site-footer .footer-back-top{font-weight:600}
@media(max-width:850px){.site-footer .footer-top{align-items:flex-start;flex-direction:column}.site-footer .footer-quick-links{justify-content:flex-start}.site-footer .footer-columns{grid-template-columns:repeat(2,1fr)}.site-footer .footer-cta{padding-left:25px}.site-footer .footer-bottom{grid-template-columns:1fr}.site-footer .footer-bottom p{text-align:left}.site-footer .footer-bottom>div{justify-content:flex-start}}
@media(max-width:560px){.site-footer{padding-top:52px!important}.site-footer .footer-brand,.site-footer .footer-brand img{width:218px}.site-footer .footer-quick-links{display:grid;grid-template-columns:1fr}.site-footer .footer-columns{grid-template-columns:1fr;gap:32px;padding:38px 0}.site-footer .footer-cta{padding:27px 0 0;border-top:1px solid #ffffff2b;border-left:0}.site-footer .footer-bottom>div{flex-direction:column;gap:8px}}
