/* Activities first, practical information second. */
.page-home .hero,.page-home .hero-inner{min-height:625px}.page-home .hero-inner{padding-top:40px}.page-home .hero-stamp{bottom:95px}
.home-directions{padding-top:65px;padding-bottom:65px;scroll-margin-top:25px}.home-directions h2{font-size:52px}.home-directions h2 em{display:inline-block}
.home-direction-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.home-direction{min-width:0;display:block;background:#191916;border:1px solid #514636;transition:border-color .2s,transform .2s,background .2s}
.home-direction-photo{height:175px;position:relative;overflow:hidden;background:#28241e}.home-direction-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 32%;transition:transform .45s}.home-direction[data-preview=gym] .home-direction-photo>img{object-position:center 22%}
.home-image-note{position:absolute;bottom:7px;left:10px;color:#fff;font-size:8px;letter-spacing:.5px;text-shadow:0 1px 5px #000;background:#0008;padding:3px 5px}
.home-direction-copy{padding:20px 18px}.home-direction h3{font:600 26px/1.2 var(--display);color:#f3eee3}.home-direction p{font-size:12px;font-weight:600;line-height:1.7;margin-top:8px;color:#c1b6a4}
.home-direction-compact{display:flex;align-items:center;min-height:140px}.home-direction-compact>img{width:70px;height:100%;min-height:140px;align-self:stretch;object-fit:cover;opacity:.8}.home-direction-compact .home-direction-copy{padding:16px 12px}.home-direction-compact h3{font-size:23px}
.home-catalog-link{border:1px solid #a86b3b;background:linear-gradient(135deg,#71341480,#241b12b3),url('assets/grunge-texture.webp') center/400px;padding:25px 20px;display:flex;flex-direction:column;justify-content:center;gap:12px;transition:background-color .2s,border-color .2s}.home-catalog-link strong{font:600 italic 29px/1.15 var(--display)}.home-catalog-link span{font-size:12px;color:#d9c9b2;line-height:1.7}
@media(hover:hover){.home-direction:hover{border-color:var(--orange);transform:translateY(-3px)}.home-direction:hover .home-direction-photo>img{transform:scale(1.04)}.home-catalog-link:hover{border-color:var(--orange);background-color:#693515}.essentials-links a:hover strong{color:#ab3e10}}
.home-essentials{background:#dedbd2 url('assets/grunge-texture.webp') center/750px;background-blend-mode:screen;color:#25221c;padding:38px 0 42px;border-block:1px solid #efe5d3}
.essentials-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:25px}.essentials-heading h2{font-size:31px;letter-spacing:-.5px}.essentials-heading h2 em{color:#a83e12}.essentials-heading p{font-size:13px;color:#645d51}
.essentials-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.essentials-links a{border-top:1px solid #b5a58d;padding-top:18px;min-height:85px;display:block}.essentials-links strong{font:600 25px/1.25 var(--display);transition:color .2s}.essentials-links span{display:block;font-size:12px;font-weight:600;line-height:1.75;color:#625a4d;margin-top:8px}
.home-essentials a:focus-visible{outline-color:#943a0f}.page-home #club{padding-top:65px;padding-bottom:65px}.page-home .home-address{padding-block:22px}
/* First-visit logo introduction, with an independent CSS escape hatch. */
.site-intro{display:none;position:fixed;inset:0;z-index:1000;background:radial-gradient(ellipse at 50% 40%,#58301870,transparent 62%),#10100f url('assets/grunge-texture.webp') center/750px;color:#f4ecda;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none}
.intro-pending .site-intro{display:flex;opacity:1;visibility:visible;pointer-events:auto;animation:intro-safety 0s 2.6s forwards}.intro-finished .site-intro{display:flex;visibility:visible;animation:intro-exit .3s both;pointer-events:none}
.intro-content{display:flex;flex-direction:column;align-items:center;transform:rotate(-2deg);animation:intro-arrive .6s both}.intro-content img{width:140px;height:140px;object-fit:contain;filter:drop-shadow(0 0 35px #ff772b22)}
.intro-content strong{font:600 italic 68px/1.05 var(--display);margin-top:19px;letter-spacing:2px}.intro-content>span{font:800 10px/1.5 var(--body);letter-spacing:3px;margin-top:17px;color:#caba9f}
.intro-brush{width:215px;height:13px;background:var(--orange);mask:url('assets/brush-stroke.png') center/100% 100%;-webkit-mask:url('assets/brush-stroke.png') center/100% 100%;margin-top:28px;transform-origin:left;animation:ink-draw .8s .1s both}
.intro-skip{position:absolute;bottom:max(30px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);border:0;border-bottom:1px solid #877555;background:transparent;color:#cabb9f;font:600 12px var(--body);min-height:44px;padding:12px 15px}
.intro-pending .hero *{animation-play-state:paused!important}
@keyframes intro-arrive{from{opacity:0;transform:translateY(12px) rotate(-2deg) scale(.96)}to{opacity:1;transform:translateY(0) rotate(-2deg) scale(1)}}
@keyframes ink-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes intro-exit{from{opacity:1}to{opacity:0;visibility:hidden}}
@keyframes intro-safety{to{visibility:hidden;opacity:0;pointer-events:none}}
@media(max-width:1000px){.home-direction-grid{gap:17px;grid-template-columns:repeat(2,minmax(0,1fr))}.home-direction-photo{height:205px}.home-direction-compact>img{width:85px}.home-direction-compact h3{font-size:26px}.essentials-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 30px}.essentials-heading{display:block}.essentials-heading p{margin-top:10px}}
@media(max-width:600px){.page-home .hero,.page-home .hero-inner{min-height:535px}.page-home .hero-inner{padding-top:31px;padding-bottom:40px}.page-home .hero-stamp{display:none}.page-home .hero-bottom-note{bottom:20px;font-size:7px}.page-home .photo-label{bottom:42px;font-size:7px}.page-home .hero-photo img{object-position:60% center}.page-home .hero-actions{margin-top:24px}.home-directions{padding-top:42px;padding-bottom:40px}.home-directions .section-top{gap:16px;margin-bottom:23px}.home-directions h2{font-size:39px}.home-directions .section-top>p{font-size:14px}.home-directions .section-top>p br{display:none}.home-direction-grid{gap:13px}.home-direction-photo{height:135px}.home-direction-copy{padding:15px 12px}.home-direction h3{font-size:23px;line-height:1.25}.home-direction p{font-size:12px;line-height:1.65;margin-top:7px}.home-direction-compact{min-height:145px;display:block;position:relative;isolation:isolate;overflow:hidden}.home-direction-compact>img{position:absolute;inset:0;width:100%;height:100%;z-index:-2;opacity:.17}.home-direction-compact:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#17151077,#171510bb);z-index:-1}.home-direction-compact .home-direction-copy{padding:19px 12px}.home-direction-compact h3{font-size:23px}.home-catalog-link{padding:19px 12px;min-height:145px;gap:9px}.home-catalog-link strong{font-size:23px}.home-catalog-link span{font-size:12px;line-height:1.65}.home-image-note{font-size:7px;left:4px;bottom:4px;padding:2px 4px}.home-essentials{padding:30px 0}.essentials-heading h2{font-size:29px;line-height:1.2}.essentials-links{gap:17px 20px}.essentials-links a{padding-top:15px}.essentials-links strong{font-size:22px}.essentials-links span{font-size:12px}.page-home #club{padding-top:43px;padding-bottom:45px}.intro-content img{width:125px;height:125px}.intro-content strong{font-size:58px}}
@media(max-width:360px){.page-home .hero,.page-home .hero-inner{min-height:520px}.home-directions h2{font-size:34px}.home-direction h3,.home-direction-compact h3{font-size:21px}.home-direction-copy{padding:14px 10px}.home-direction-photo{height:120px}.home-direction-grid{gap:10px}.essentials-links strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.site-intro,.intro-pending .site-intro{display:none!important}.home-direction,.home-direction img,.home-catalog-link{transition:none!important}.home-direction:hover{transform:none}}
.home-directions h2 em{margin-left:.15em}
.intro-content img{border-radius:50%}
@media(max-width:600px){.home-directions h2 em{display:block;margin-left:0;margin-top:4px}}
@media(max-width:360px){.home-direction h3,.home-direction-compact h3{font-size:20px;letter-spacing:-.3px}.home-direction-copy{padding-inline:8px}}
