.site-header nav{gap:22px}
.nav-menu{position:relative}
.nav-menu summary{cursor:pointer;list-style:none}
.nav-menu summary::-webkit-details-marker{display:none}
.nav-menu summary:after{content:'⌄';padding-left:7px;color:#8b9a92}
.nav-dropdown{position:absolute;z-index:20;top:calc(100% + 14px);left:-18px;min-width:190px;padding:9px;background:#fbfaf6;border:1px solid #deddd5;box-shadow:0 14px 30px #172f311a;display:grid;gap:2px}
.nav-dropdown a{padding:9px 10px;white-space:nowrap;font-size:11px}
.nav-dropdown a:hover{background:#e9eee7;color:#1d5451}
.directory-main{padding-bottom:48px}
.directory-hero{padding:75px max(6.5%,calc((100% - 1120px)/2)) 40px;background:#eef0e9}
.directory-hero h1{max-width:900px;font:500 clamp(38px,5vw,62px)/1.08 'Playfair Display',serif;letter-spacing:-.04em;margin:0 0 17px}
.directory-hero>p:last-child{max-width:760px;color:#65756f;font-size:14px;line-height:1.85;margin:0}
.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding-top:40px;padding-bottom:35px}
.directory-card{display:flex;min-height:170px;flex-direction:column;align-items:flex-start;padding:20px;background:#fff;border:1px solid #e5e4dd;transition:transform .2s,border-color .2s}
.directory-card:hover{transform:translateY(-3px);border-color:#9db4a9}
.directory-kicker{font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:#819087}
.directory-card h2{font:500 22px/1.2 'Playfair Display',serif;margin:9px 0}
.directory-card p{font-size:11px;line-height:1.65;color:#718079;margin:0 0 17px}
.directory-arrow{font-size:10px;color:#365c52;margin-top:auto;border-bottom:1px solid #aebeb2;padding-bottom:3px}
.directory-footer-links{display:flex;flex-wrap:wrap;gap:9px;padding:25px 0 40px;border-top:1px solid #deddd5}
.directory-footer-links a,.directory-context a{font-size:10px;color:#365c52;border:1px solid #d7ddd5;padding:8px 11px}
.directory-footer-links a:hover,.directory-context a:hover{background:#e9eee7}
.directory-context{padding:28px 0 36px;border-top:1px solid #deddd5}
.directory-context>div{display:flex;flex-wrap:wrap;gap:8px}
.directory-context .eyebrow{margin-bottom:12px}
.video-navigation{margin-top:12px;padding:48px 0 64px;border-top:1px solid #deddd5}
.video-navigation>h2{font:500 36px/1.15 'Playfair Display',serif;margin:0 0 30px}
.video-navigation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,5vw,64px)}
.video-navigation-grid>div{display:flex;flex-direction:column;align-items:stretch;gap:11px}
.video-navigation-grid h3{font:500 19px 'Playfair Display',serif;margin:0 0 7px}
.video-navigation-grid a{display:block;width:fit-content;max-width:100%;font-size:11px;line-height:1.5;color:#48645b;border:1px solid #d7ddd5;background:#fdfcf8;padding:9px 12px}
.video-navigation-grid a:hover{color:#a66d43;background:#eef0e9}
.video-site-footer{display:grid;grid-template-columns:1fr;align-items:start;justify-content:stretch;gap:22px;min-height:0;padding:38px 6.5% 32px;border-top:1px solid #deddd5;background:#f0efe8}
.video-site-footer nav{display:grid;grid-template-columns:repeat(4,minmax(125px,1fr));gap:12px 16px;justify-content:stretch}
.video-site-footer nav a{display:flex;align-items:center;min-height:40px;padding:9px 12px;border:1px solid #d7ddd5;background:#fbfaf6;font-size:11px;color:#48645b}
.video-site-footer nav a:hover{color:#a66d43;background:#fff}
.video-site-footer>span{font-size:10px;padding-top:4px}
.portal-footer{display:block;min-height:0;padding:42px 6.5% 30px;border-top:1px solid #deddd5;background:#f0efe8;color:#66756f}
.portal-footer-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:25px}
.portal-footer-brand>span{font-size:10px}
.portal-footer-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:28px;padding:25px 0;border-top:1px solid #deddd5;border-bottom:1px solid #deddd5}
.portal-footer-groups section{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.portal-footer-groups h3{font:500 17px 'Playfair Display',serif;color:#253e3a;margin:0 0 4px}
.portal-footer-groups a{font-size:10px;line-height:1.5;color:#536b62;border-bottom:1px solid transparent;padding-bottom:2px}
.portal-footer-groups a:hover{color:#a66d43;border-color:#c5b29e}
.portal-footer-note{font-size:9px;margin:18px 0 0;color:#86918b}
.water-sports-content{padding:38px 0 52px}
.water-sports-intro{max-width:860px;padding:25px 28px;margin-bottom:34px;background:#eef0e9;border-left:3px solid #739589}
.water-sports-intro h2{font:500 30px/1.2 'Playfair Display',serif;margin:0 0 12px;color:#253e3a}
.water-sports-intro p{max-width:740px;font-size:13px;line-height:1.8;color:#65756f;margin:0}
.water-sports-index{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 38px;padding:20px 0;border-top:1px solid #deddd5;border-bottom:1px solid #deddd5}
.water-sports-index a{font-size:10px;line-height:1.4;color:#365c52;border:1px solid #d7ddd5;background:#fdfcf8;padding:9px 12px}
.water-sports-index a:hover{background:#e9eee7}
.water-sports-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.water-sport-card{position:relative;min-height:178px;padding:23px 21px 20px;background:#fff;border:1px solid #e5e4dd;scroll-margin-top:30px}
.water-sport-number{font-size:9px;letter-spacing:.14em;color:#819087}
.water-sport-card h2{font:500 23px/1.2 'Playfair Display',serif;color:#253e3a;margin:12px 0 9px}
.water-sport-card p{font-size:11px;line-height:1.7;color:#718079;margin:0}
.water-sports-related{display:flex;flex-wrap:wrap;gap:9px;margin-top:38px;padding-top:25px;border-top:1px solid #deddd5}
.water-sports-related a{font-size:10px;color:#365c52;border:1px solid #d7ddd5;padding:9px 12px}
.water-sports-related a:hover{background:#e9eee7}
@media(max-width:760px){.site-header nav{gap:11px}.site-header nav>a:not(.nav-cta){display:none}.nav-menu{font-size:10px}.nav-dropdown{left:auto;right:-30px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:25px}.directory-card{min-height:155px;padding:15px}.directory-card h2{font-size:19px}.directory-hero{padding:53px 6% 30px}}
@media(max-width:760px){.water-sports-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.water-sports-content{padding:28px 0 40px}.water-sports-intro{padding:21px;margin-bottom:27px}}
@media(max-width:760px){.video-navigation{padding:38px 0 48px}.video-navigation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.video-site-footer nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(max-width:480px){.directory-grid{grid-template-columns:1fr}.directory-card{min-height:0}.nav-cta{display:inline-block!important}.directory-footer-links{gap:6px}.video-navigation-grid{grid-template-columns:1fr;gap:26px}.video-navigation>h2{font-size:29px}.video-site-footer{gap:18px;padding:30px 6% 26px}.video-site-footer nav{grid-template-columns:1fr 1fr;gap:8px}.video-site-footer nav a{min-height:42px;padding:9px;font-size:10px}.portal-footer{padding:31px 6% 24px}.portal-footer-brand{align-items:flex-start;flex-direction:column;gap:12px;padding-bottom:18px}.portal-footer-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 18px;padding:22px 0}.portal-footer-groups section{gap:9px}.portal-footer-groups h3{font-size:15px}}
@media(max-width:480px){.water-sports-grid{grid-template-columns:1fr}.water-sport-card{min-height:0;padding:20px}.water-sports-index{gap:7px;margin-bottom:28px}.water-sports-index a{padding:8px 10px}.water-sports-intro h2{font-size:26px}}
