/* Focused homepage flyer and visit-section improvements. */
html body .astral-one #club-nights .row{grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 28px}
html body .astral-one #club-nights .featured-single-item{padding:0!important;margin:0;background:transparent!important;border:0!important}
html body .astral-one #club-nights .featured-single-item img{display:block;width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:contain;background:transparent!important;border-radius:12px;margin:0 0 16px!important}
html body .astral-one #club-nights .featured-single-item h3{font-size:25px;line-height:1.2;margin-bottom:10px}
html body .astral-one #club-nights .featured-single-item span{display:block;font-size:15px;line-height:1.6}
html body .astral-one #club-nights .featured-single-item .home-club-date{margin:0 0 6px;font-weight:600}
html body .astral-one #club-nights .home-club-empty{grid-column:1/-1;margin:0;line-height:1.7}
html body .astral-one .home-visit-panel{background:#5a171c;padding:40px 0}
html body .astral-one .home-visit-panel>.container{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
html body .astral-one .home-visit-photo{margin:0;position:relative;overflow:hidden;border-radius:8px;min-width:0}
html body .astral-one .home-visit-photo img{display:block;width:100%;height:290px;object-fit:cover;object-position:50% 64%}
html body .astral-one .home-visit-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#140e0ee6)}
html body .astral-one .home-visit-photo figcaption{position:absolute;z-index:1;left:28px;bottom:24px}
html body .astral-one .home-visit-photo h2{font-size:clamp(34px,3.2vw,48px)!important;line-height:1.04;margin:0!important;color:#f0ece3!important}
html body .astral-one .home-visit-info p{font-size:18px;line-height:1.7;margin:0 0 20px}
html body .astral-one .home-visit-info .home-visit-kicker{font:600 12px/1.5 Arial,sans-serif;letter-spacing:2px;color:#c7b9a8!important;margin-bottom:17px}
html body .astral-one .home-visit-phone{display:inline-block;font-size:24px;font-weight:600;margin-bottom:22px}
html body .astral-one .home-visit-info .one-hero-actions{margin:0;gap:22px}
@media(max-width:991px){html body .astral-one #club-nights .row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){html body .astral-one #club-nights .row{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}html body .astral-one #club-nights .featured-single-item h3{font-size:21px}html body .astral-one .home-visit-panel>.container{grid-template-columns:1fr;gap:26px}html body .astral-one .home-visit-panel{padding:30px 0}html body .astral-one .home-visit-photo img{height:260px}html body .astral-one .home-visit-info .one-hero-actions{flex-wrap:wrap}}

/* Leave room beneath the Club Nights and Private Events hero tiles. */
html body .astral-one .banner-area{padding-bottom:32px!important}
@media(max-width:700px){html body .astral-one .banner-area{padding-bottom:24px!important}}
html body .astral-one .top-music-playlist-area{padding-top:36px!important}
@media(max-width:700px){html body .astral-one .top-music-playlist-area{padding-top:28px!important}}

/* Match Upcoming Events card columns to the Club Nights grid. */
html body .astral-one .one-event-grid{gap:28px}

/* Keep Upcoming Events within the shared content width on wide screens. */
html body #main .astral-one .top-music-playlist-area>.container{box-sizing:border-box;width:100%;max-width:1200px!important;margin-inline:auto;padding-inline:32px!important}
@media(max-width:700px){html body #main .astral-one .top-music-playlist-area>.container{padding-inline:22px!important}}

/* Compact Upcoming Events without cropping flyer artwork or hiding actions. */
html body #main .astral-one .top-music-playlist-area{padding-block:28px 36px!important}
html body #main .astral-one .top-music-playlist-area .section-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin:0 0 10px!important}
html body #main .astral-one .top-music-playlist-area .section-title h2{margin:0}
html body #main .astral-one .top-music-playlist-area .section-title>a{margin:0;padding:8px 0}
html body #main .astral-one .top-music-playlist-area .home-plan-links{gap:6px 22px;margin:0 0 16px}
html body #main .astral-one .one-event-grid .top-music-playlist-single-item{display:flex;flex-direction:column;height:auto!important;min-height:0}
html body #main .astral-one .one-event-photo img{width:100%;height:auto!important;aspect-ratio:16/9;object-fit:contain}
html body #main .astral-one .one-event-grid .top-music-playlist-content{box-sizing:border-box;display:flex;flex-direction:column;flex:1 1 auto;height:auto!important;min-height:0;padding:20px!important}
html body #main .astral-one .one-event-grid .top-music-playlist-content>span{margin-bottom:10px;font-size:14px;line-height:1.5}
html body #main .astral-one .one-event-grid .top-music-playlist-content h3{margin:0 0 12px;font-size:27px;line-height:1.2}
html body #main .astral-one .one-event-grid .top-music-playlist-content p{margin:0;line-height:1.6}
html body #main .astral-one .one-event-grid .event-card-actions{padding-top:16px;gap:8px 16px}
@media(max-width:700px){html body #main .astral-one .top-music-playlist-area{padding-block:24px 28px!important}html body #main .astral-one .top-music-playlist-area .section-title{gap:4px 16px}html body #main .astral-one .one-event-grid .top-music-playlist-content{padding:18px!important}}

/* Give newsletter signup its own compact, readable card above the visit section. */
html body #main .astral-one .visit-updates{background:#211a1a;padding:32px 32px 0}
html body #main .astral-one .visit-updates>.visit-updates-inner{box-sizing:border-box;max-width:1136px;margin:auto;padding:30px 32px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr);gap:40px;align-items:center;background:#5a171c;border:1px solid #79504c;border-radius:8px}
html body #main .astral-one .newsletter-intro .eyebrow{font:600 11px/1.5 Arial,sans-serif;letter-spacing:2px;color:#ddc2aa!important;margin:0 0 12px}
html body #main .astral-one .newsletter-intro h2{font-size:clamp(32px,3vw,40px)!important;line-height:1.1!important;margin:0 0 14px!important}
html body #main .astral-one .newsletter-intro>p:last-child{font:16px/1.7 Arial,sans-serif;color:#e0cfc1;margin:0;max-width:32ch}
html body #main .astral-one .newsletter-form{padding:0!important;margin:0;display:grid;gap:16px;min-width:0;background:transparent!important;border:0!important;box-shadow:none!important}
html body #main .astral-one .newsletter-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:16px}
html body #main .astral-one .newsletter-form label{margin:0!important;color:#f0ece3!important;font:600 14px/1.5 Arial,sans-serif}
html body #main .astral-one .newsletter-fields label>span{color:#d8c2b0!important;font:400 12px/1.5 Arial,sans-serif!important}
html body #main .astral-one .newsletter-fields input{box-sizing:border-box;width:100%;height:48px;min-height:48px;padding:12px;margin:7px 0 0;background:#f0ece3!important;color:#211a1a!important;border:1px solid #f0ece3!important;border-radius:4px;font:16px/1.4 Arial,sans-serif;color-scheme:light}
html body #main .astral-one .newsletter-form .newsletter-consent{display:flex;align-items:flex-start;gap:10px;margin:0!important;font:400 14px/1.6 Arial,sans-serif!important;cursor:pointer}
html body #main .astral-one .newsletter-form .newsletter-consent>span{color:#f0ece3!important;font:400 14px/1.6 Arial,sans-serif!important;opacity:1}
html body #main .astral-one .newsletter-form .newsletter-consent input{flex:0 0 20px;box-sizing:border-box;width:20px!important;max-width:20px;height:20px!important;min-height:20px;margin:2px 0 0!important;padding:0!important;appearance:auto;color-scheme:light;accent-color:#ba4e3e;cursor:pointer}
html body #main .astral-one .newsletter-form .barn-btn{justify-self:start;min-height:44px;padding:12px 18px;gap:10px;background:#f0ece3!important;color:#351c1c!important;border:0;border-radius:4px;font:600 14px/1.4 Arial,sans-serif}
html body #main .astral-one .newsletter-form .barn-btn:hover{background:#dfd1be!important}
html body #main .astral-one .newsletter-form .form-note{font:12px/1.65 Arial,sans-serif!important;color:#ddc8b7!important;margin:0;max-width:68ch}
html body #main .astral-one .newsletter-form .form-note a{color:#f0ece3!important;text-decoration:underline!important;text-underline-offset:3px}
html body #main .astral-one .newsletter-form .form-status{font:14px/1.6 Arial,sans-serif;min-height:0;margin:0;color:#f0ece3}
html body #main .astral-one .newsletter-form :is(input,button):focus-visible{outline:2px solid #e4b37e!important;outline-offset:3px}
html body #main .astral-one .home-visit-panel{background:#211a1a;padding:28px 0 36px}
html body #main .astral-one .home-visit-panel>.container{box-sizing:border-box;width:100%;max-width:1200px;padding-inline:32px;gap:32px}
html body #main .astral-one .home-visit-phone{margin-bottom:18px}
@media(max-width:800px){html body #main .astral-one .visit-updates{padding:24px 22px 0}html body #main .astral-one .visit-updates>.visit-updates-inner{grid-template-columns:1fr;gap:24px;padding:26px}html body #main .astral-one .newsletter-intro>p:last-child{max-width:48ch}html body #main .astral-one .home-visit-panel>.container{padding-inline:22px;gap:26px}}
@media(max-width:600px){html body #main .astral-one .newsletter-fields{grid-template-columns:1fr;gap:14px}html body #main .astral-one .visit-updates>.visit-updates-inner{padding:24px 20px}html body #main .astral-one .newsletter-intro h2{font-size:32px!important}html body #main .astral-one .newsletter-form .barn-btn{width:100%;justify-content:center}html body #main .astral-one .home-visit-panel{padding-block:24px 30px}}
