/* Scoped Free Pass page additions. Shared design and CTA motion stay unchanged. */
body.df-wordpress-site .free-pass-page .pass-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,90px);align-items:start}
body.df-wordpress-site .free-pass-page .pass-intro>h2{font-size:clamp(35px,3.8vw,54px);line-height:1.08;margin-bottom:32px}
body.df-wordpress-site .free-pass-page .pass-steps{list-style:none;margin:0;padding:0}
body.df-wordpress-site .free-pass-page .pass-steps>li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:17px;margin-bottom:27px}
body.df-wordpress-site .free-pass-page .pass-step-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;border:1px solid #6b2635;color:var(--red);background:#1a0b10}
body.df-wordpress-site .free-pass-page .pass-steps h3{font-size:17px;line-height:1.35;margin:1px 0 7px}
body.df-wordpress-site .free-pass-page .pass-steps p{font-size:13px;line-height:1.8;margin:0;max-width:none}
body.df-wordpress-site .free-pass-page .pass-policies{margin-top:36px;border-top:1px solid #3b2a31}
body.df-wordpress-site .free-pass-page .pass-policies details{border-bottom:1px solid #3b2a31}
body.df-wordpress-site .free-pass-page .pass-policies summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:19px 0;font-size:13px;font-weight:700;line-height:1.5}
body.df-wordpress-site .free-pass-page .pass-policies summary::-webkit-details-marker{display:none}
body.df-wordpress-site .free-pass-page .pass-policies summary:after{content:"+";font-size:22px;font-weight:400;color:var(--red);flex:none}
body.df-wordpress-site .free-pass-page .pass-policies details[open]>summary:after{content:"−"}
body.df-wordpress-site .free-pass-page .pass-policies summary:focus-visible{outline:2px solid var(--red);outline-offset:4px;border-radius:3px}
body.df-wordpress-site .free-pass-page .pass-policy-body{padding:0 0 22px;color:#c9bdc3;font-size:12px;line-height:1.85}
body.df-wordpress-site .free-pass-page .pass-policy-body ul{padding-left:19px;margin:0}
body.df-wordpress-site .free-pass-page .pass-policy-body li{padding:0 0 8px 4px}
body.df-wordpress-site .free-pass-page .pass-policy-body li::marker{color:var(--red)}
body.df-wordpress-site .free-pass-page .pass-policy-body strong{color:#fff}
body.df-wordpress-site .free-pass-page .pass-policy-body p{font-size:12px;line-height:1.85;margin:12px 0 0;max-width:none}
body.df-wordpress-site .free-pass-page .pass-policy-body .pass-age-note{margin-top:10px;padding:12px 15px;background:#130d10;border-left:2px solid #682537}
body.df-wordpress-site .free-pass-page .pass-hours{margin:0}
body.df-wordpress-site .free-pass-page .pass-hours>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:6px 0}
body.df-wordpress-site .free-pass-page .pass-hours dd{margin:0;color:#fff;white-space:nowrap}
body.df-wordpress-site .free-pass-page .pass-club-links a{color:#fff;text-decoration:underline;text-underline-offset:4px}
body.df-wordpress-site .free-pass-page .pass-rates{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}
body.df-wordpress-site .free-pass-page .pass-rates>div{background:#151014;border:1px solid #3c2933;padding:15px;border-radius:8px}
body.df-wordpress-site .free-pass-page .pass-rates span{display:block;font-size:11px;margin-bottom:5px}
body.df-wordpress-site .free-pass-page .pass-rates strong{display:block;font-size:27px;font-weight:700}
body.df-wordpress-site .free-pass-page .pass-rates small{font-size:10px;font-weight:400;color:#c9bdc3;white-space:nowrap}
body.df-wordpress-site .free-pass-page .pass-form{position:sticky;top:100px;background:linear-gradient(145deg,#1b1017 0%,#100c0f 50%);border-color:#60313f;padding:clamp(25px,3vw,44px)}
body.df-wordpress-site .free-pass-page .pass-form h2{font-size:clamp(26px,3vw,38px);line-height:1.15}
body.df-wordpress-site .free-pass-page .pass-form-intro{font-size:13px;color:#c9bdc3;margin-top:12px}
body.df-wordpress-site .free-pass-page .pass-form .form-grid{margin-top:28px;gap:22px 16px}
body.df-wordpress-site .free-pass-page .pass-form .cta{margin-top:30px;min-height:54px}
body.df-wordpress-site .free-pass-page .pass-eligibility{font-size:11px;line-height:1.8;color:#c9bdc3;margin:17px 0 0}
body.df-wordpress-site .free-pass-page .pass-form .form-foot{margin-top:14px}
body.df-wordpress-site .free-pass-page .pass-amenities{padding-top:65px;border-top:1px solid #2d2026;overflow:hidden}
body.df-wordpress-site .free-pass-page .pass-gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
body.df-wordpress-site .free-pass-page .pass-gallery-heading h2{font-size:clamp(40px,4.6vw,67px);line-height:1.05}
body.df-wordpress-site .free-pass-page .pass-gallery-heading p{font-size:14px;line-height:1.8;color:var(--muted);max-width:550px;margin:20px 0 0}
body.df-wordpress-site .free-pass-page .pass-gallery-controls{display:flex;gap:10px;flex:none}
body.df-wordpress-site .free-pass-page .pass-gallery-controls[hidden]{display:none}
body.df-wordpress-site .free-pass-page .pass-gallery-controls button{border:1px solid #67404e;background:#160e12;border-radius:50%;width:46px;height:46px;font-size:23px;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
body.df-wordpress-site .free-pass-page .pass-gallery-controls button:hover,body.df-wordpress-site .free-pass-page .pass-gallery-controls button:focus-visible{border-color:var(--red);background:#38101c;box-shadow:inset 0 0 16px #e71b4644}
body.df-wordpress-site .free-pass-page .pass-gallery-controls button:disabled{opacity:.35;cursor:default}
body.df-wordpress-site .free-pass-page .pass-amenity-rail{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(240px,27vw,370px);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:3px 2px 22px;margin:0;list-style:none;scrollbar-width:thin;scrollbar-color:#70223a #110c0f}
body.df-wordpress-site .free-pass-page .pass-amenity{min-width:0;scroll-snap-align:start;border:1px solid #47303b;border-radius:17px;overflow:hidden;background:#0c090b;transition:border-color .25s}
body.df-wordpress-site .free-pass-page .pass-amenity>a{position:relative;display:block;height:400px;overflow:hidden;color:#fff}
body.df-wordpress-site .free-pass-page .pass-amenity img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
body.df-wordpress-site .free-pass-page .pass-amenity>a:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000f 0%,#000c 25%,#0002 70%);pointer-events:none}
body.df-wordpress-site .free-pass-page .pass-amenity>a>div{position:absolute;inset:auto 23px 25px;z-index:1}
body.df-wordpress-site .free-pass-page .pass-amenity h3{font-size:25px;line-height:1.15}
body.df-wordpress-site .free-pass-page .pass-amenity p{font-size:12px;line-height:1.7;margin:12px 0 18px;color:#e0d9dd}
body.df-wordpress-site .free-pass-page .pass-discover{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#ff6b85}
body.df-wordpress-site .free-pass-page .pass-amenity:hover,body.df-wordpress-site .free-pass-page .pass-amenity:focus-within{border-color:var(--red)}
body.df-wordpress-site .free-pass-page .pass-amenity:hover img{transform:scale(1.04)}
body.df-wordpress-site .free-pass-page .pass-amenity>a:focus-visible{outline:2px solid var(--red);outline-offset:-5px}
body.df-wordpress-site .free-pass-page .pass-gallery-note{font-size:11px;line-height:1.8;color:#bfb1ba;margin-top:14px;max-width:800px}
@media(min-width:1500px){body.df-wordpress-site .free-pass-page .pass-amenity-rail{grid-auto-columns:calc((100% - 60px)/4)}}
@media(max-width:900px){body.df-wordpress-site .free-pass-page .pass-layout{grid-template-columns:1fr;gap:40px}body.df-wordpress-site .free-pass-page .pass-form{position:static;order:-1}body.df-wordpress-site .free-pass-page .pass-intro>h2{font-size:40px}body.df-wordpress-site .free-pass-page .pass-amenity-rail{grid-auto-columns:min(72vw,330px)}body.df-wordpress-site .free-pass-page .pass-policies{margin-top:28px}}
@media(max-width:540px){body.df-wordpress-site .free-pass-page .pass-gallery-heading{align-items:center}body.df-wordpress-site .free-pass-page .pass-gallery-controls{gap:6px}body.df-wordpress-site .free-pass-page .pass-gallery-controls button{width:38px;height:38px}body.df-wordpress-site .free-pass-page .pass-gallery-heading h2{font-size:38px}body.df-wordpress-site .free-pass-page .pass-gallery-heading p{font-size:12px}body.df-wordpress-site .free-pass-page .pass-amenity>a{height:365px}body.df-wordpress-site .free-pass-page .pass-rates{grid-template-columns:1fr 1fr}body.df-wordpress-site .free-pass-page .pass-rates strong{font-size:25px}body.df-wordpress-site .free-pass-page .pass-rates small{display:block}}
@media(prefers-reduced-motion:reduce){body.df-wordpress-site .free-pass-page .pass-amenity img,body.df-wordpress-site .free-pass-page .pass-amenity,body.df-wordpress-site .free-pass-page .pass-gallery-controls button{transition:none}body.df-wordpress-site .free-pass-page .pass-amenity:hover img{transform:none}}
