.group-single-hero{position:relative;min-height:300px;background-size:cover;background-position:center;display:flex;align-items:flex-end}.group-single-hero-overlay{width:100%;background:linear-gradient(to top,rgb(0 0 0 / .7) 0%,transparent 100%);padding:3rem 1.5rem 2rem;text-align:center}.group-single-hero .group-single-title{color:#fff;margin:0 0 .5rem;font-size:2.5rem}.group-single-hero .group-single-schedule{color:rgb(255 255 255 / .9);margin:0;font-size:1.125rem}.group-single-header{max-width:1200px;margin:0 auto;text-align:center}.group-single-header .group-single-title{margin:0 0 .5rem;font-size:2.25rem;color:var(--base-900,#171717)}.group-single-header .group-single-schedule{margin:0;color:var(--base-600,#525252);font-size:1.125rem}.group-single-content{max-width:1200px;margin:0 auto}.group-single-grid{display:grid;grid-template-columns:1fr 320px;gap:3rem}@media (max-width:768px){.group-single-grid{grid-template-columns:1fr;gap:2rem}}.group-single-main{min-width:0}.group-video-embed{margin-bottom:2rem;border-radius:.75rem;overflow:hidden}.group-video-embed iframe{width:100%;aspect-ratio:16/9}.group-single-description{margin-bottom:2rem}.group-leaders-section{margin-bottom:2rem}.group-leaders-section h2{margin:0 0 1rem;font-size:1.25rem}.group-leaders-list{display:flex;flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none}.group-leader-item{margin:0}.group-leader-link{display:flex;flex-direction:row;align-items:center;gap:.75rem;min-height:3rem;text-decoration:none;color:inherit}.group-leader-link:hover .group-leader-name{color:var(--primary,#0F1FFF);text-decoration:underline}.group-leader-photo{flex:0 0 3rem;width:3rem;height:3rem;border-radius:50%;object-fit:cover}.group-leader-placeholder{display:flex;align-items:center;justify-content:center;background:var(--base-200,#e5e5e5);font-size:1.5rem;font-weight:600;color:var(--base-500,#737373)}.group-leader-name{font-size:.9375rem;font-weight:600;color:var(--base-900,#171717)}.group-map-section h2{margin:0 0 1rem;font-size:1.25rem}.group-single-map{width:100%;height:300px;border-radius:.75rem;overflow:hidden;background:var(--base-100,#f5f5f5);margin-bottom:1rem}.group-address{margin:0 0 .75rem;color:var(--base-600,#525252)}.group-directions-btn{display:inline-block;padding:.625rem 1.25rem;background:var(--primary,#0F1FFF);color:#fff;border-radius:.5rem;text-decoration:none;font-weight:500;font-size:.9375rem}.group-directions-btn:hover{background:var(--primary-dark,#0a15b3);color:#fff}.group-single-sidebar{display:flex;flex-direction:column;gap:1.5rem}.group-join-btn{display:block;text-align:center;padding:1rem 1.5rem;background:var(--primary,#0F1FFF);color:#fff;border-radius:.5rem;text-decoration:none;font-weight:600;font-size:1rem;transition:background-color 0.15s}.group-join-btn:hover{background:var(--primary-dark,#0a15b3);color:#fff}.group-info-card{background:var(--base-50,#fafafa);border:1px solid var(--base-200,#e5e5e5);border-radius:.75rem;padding:1.25rem}.group-info-card h3{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--base-500,#737373);text-transform:uppercase;letter-spacing:.05em}.group-info-row{display:flex;gap:.5rem;margin-bottom:.5rem;font-size:.9375rem}.group-info-row:last-child{margin-bottom:0}.group-info-row strong{color:var(--base-700,#404040);min-width:60px}.group-info-row span{color:var(--base-900,#171717)}.group-attributes{display:flex;flex-wrap:wrap;gap:.375rem;list-style:none;margin:.75rem 0 0;padding:0}.group-attribute-pill{padding:.25rem .625rem;background:var(--base-100,#f5f5f5);border:1px solid var(--base-200,#e5e5e5);border-radius:9999px;color:var(--base-700,#404040);font-size:.875rem;font-weight:600;letter-spacing:.025em}.group-info-card p{margin:0 0 .375rem;color:var(--base-700,#404040);font-size:.9375rem}.group-info-card p:last-child{margin-bottom:0}.group-single-tabs-container{max-width:1200px;margin:0 auto}.group-single-tabs{margin:1rem auto 0}.group-single-panel a:focus-visible,.group-membership-button:focus-visible{outline:3px solid var(--primary,#0F1FFF);outline-offset:2px}.group-members-panel-content{max-width:1200px;margin:0 auto}.group-members-panel-content h2{margin:0 0 1rem;color:var(--base-900,#171717);font-size:1.25rem}.group-members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.group-member-card{display:flex;flex-direction:column;align-items:center;padding:1rem;background:var(--base-50,#fafafa);border:1px solid var(--base-200,#e5e5e5);border-radius:.75rem;color:inherit;text-align:center;text-decoration:none;transition:box-shadow 0.15s,transform 0.15s}.group-member-card:hover,.group-member-card:focus-visible{box-shadow:0 4px 12px rgb(0 0 0 / .08);transform:translateY(-2px)}.group-member-photo{display:flex;width:80px;height:80px;align-items:center;justify-content:center;margin-bottom:.75rem;border-radius:50%;object-fit:cover}.group-member-placeholder{background:var(--base-200,#e5e5e5);color:var(--base-500,#737373);font-size:1.5rem;font-weight:600}.group-member-name{color:var(--base-900,#171717);font-size:.875rem;font-weight:500;line-height:1.3}.group-leader-badge{display:inline-block;margin-top:.5rem;color:var(--base-700,#404040);font-size:.8em;font-weight:700}.group-members-empty,.group-members-error{margin:0;color:var(--base-600,#525252)}.group-membership-actions{display:flex;flex-direction:column;gap:.5rem}.group-membership-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1.25rem;border:1px solid var(--primary,#0F1FFF);border-radius:.5rem;cursor:pointer;font:inherit;font-weight:600;text-align:center;text-decoration:none;transition:background-color 0.15s,color 0.15s}.group-membership-button--join{background:var(--global-palette-btn-bg,var(--primary,#0F1FFF));border-color:var(--global-palette-btn-bg,var(--primary,#0F1FFF));color:var(--global-palette-btn,#fff)}.group-membership-button--join:hover{background:var(--global-palette-btn-bg-hover,var(--primary-dark,#0a15b3));border-color:var(--global-palette-btn-bg-hover,var(--primary-dark,#0a15b3))}.group-membership-button--leave{background:#fff0;color:var(--primary,#0F1FFF)}.group-membership-button--leave:hover{background:var(--base-100,#f5f5f5)}.group-membership-button:disabled{cursor:progress;opacity:.65}.group-membership-status:empty{display:none}@media (max-width:480px){.group-members-panel-content{padding-right:1rem;padding-left:1rem}.group-member-card{padding:.875rem}}@media (prefers-reduced-motion:reduce){.group-member-card{transition:none}}