/* Book Club layout only; shared buttons use the approved Figma state tokens.
 * Widths intentionally inherit Phlox .aux-fold. */
.aca-hero{background:var(--aca-primary);position:relative;isolation:isolate;overflow:hidden;color:#fff}
.aca-club .aca-hero-image{position:absolute;inset-block:0;inset-inline-end:0;width:77%;height:100%;object-fit:cover;z-index:-2}
.aca-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,68,74,0) 0%,rgba(3,68,74,.063) 35%,rgba(3,68,74,.941) 65%,#03444a 100%);z-index:-1}
.aca-hero-inner{padding-block:26px 36px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-height:385px}
.aca-hero-history .aca-hero-inner{min-height:300px}
.aca-breadcrumb{font-size:13px;color:#c2d3d3}
.aca-club .aca-breadcrumb a{color:inherit}
.aca-hero-copy{width:480px;max-width:100%;display:grid;gap:4px}
.aca-hero-copy>p:not(.aca-eyebrow){font-size:15px;line-height:1.85}
.aca-club .aca-eyebrow{font-size:26px;line-height:1.85}
.aca-meta{display:flex;gap:18px;font-size:13px;flex-wrap:wrap}
.aca-meta>span{display:flex;align-items:center;gap:8px}
.aca-club .aca-shell{padding-block:32px 48px}
.aca-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,29.333%);gap:32px;align-items:start;direction:ltr}
.aca-layout>*{direction:rtl}
.aca-main{display:flex;flex-direction:column;gap:4rem}
.aca-club .aca-small{font-size:12px;line-height:1.85;color:var(--aca-muted)}
.aca-current{padding:20px;background:var(--aca-paper);border-radius:12px;gap:16px;scroll-margin-top:110px}
.aca-current-body{display:flex;flex-direction:row-reverse;align-items:center;gap:28px}
.aca-main-cover{flex:0 0 27.7%;max-width:215px}
.aca-club .aca-cover{width:100%;aspect-ratio:2/3;object-fit:contain;border-radius:2px;filter:drop-shadow(0 4px 4px rgba(24,52,56,.15))}
.aca-current-details{flex:1;display:grid;gap:12px}
.aca-featured{background:var(--aca-tint);padding:16px;border-radius:8px;display:grid;gap:2px}
.aca-author{font-weight:700;color:var(--aca-primary)}
.aca-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.aca-facilitator{flex-direction:row-reverse;align-items:start;gap:28px}
.aca-facilitator>div:last-child{flex:1}
.aca-portrait{flex:0 0 36.8%;max-width:300px}
.aca-portrait img{width:100%;aspect-ratio:300/195;object-fit:cover;border-radius:8px}
.aca-schedule-layout{display:flex;align-items:stretch;gap:20px}
.aca-schedule-image{flex:0 0 28.8%;position:relative;overflow:hidden;border-radius:8px}
.aca-schedule-image img{position:absolute;inset:0;width:100%;height:100%;border-radius:8px;object-fit:cover}
.aca-club .aca-schedule{width:100%;height:324px;flex:1;table-layout:fixed;border:1px solid var(--aca-line);border-collapse:separate;border-spacing:0;border-radius:8px;overflow:hidden;margin:0;font-size:13px;line-height:1.85}
.aca-club .aca-schedule :is(th,td){color:var(--aca-ink);background:transparent;text-align:right;border:0;padding:4px 12px;vertical-align:middle;font-weight:400;overflow-wrap:anywhere}
.aca-schedule thead{background:var(--aca-tint)}
.aca-club .aca-schedule thead th{font-weight:700}
.aca-schedule th:first-child{width:64px}
.aca-schedule :is(th,td):last-child{width:130px}
.aca-schedule tbody tr{background:#fff}
.aca-schedule tbody tr:nth-child(odd){background:var(--aca-paper)}
.aca-location{display:flex;align-items:center;flex-direction:row-reverse;gap:28px}
.aca-location>div:last-child{flex:1}
.aca-location address{font-style:normal;color:var(--aca-muted);margin:4px 0 12px}
.aca-venue-image{flex:0 0 39.2%}
.aca-venue-image img{border-radius:8px;aspect-ratio:320/185;object-fit:cover}
.aca-previous{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.aca-course-card{border:1px solid var(--aca-line);border-radius:12px;background:#fff;padding:20px;display:flex;flex-direction:column;gap:12px}
.aca-card-compact{padding:10px;border-radius:8px}
.aca-card-book{display:flex;align-items:center;gap:8px;flex:1}
.aca-club .aca-card-book>.aca-cover{flex:0 0 48px;width:48px;height:77px;object-fit:contain}
.aca-card-book>div{flex:1}
.aca-club .aca-card-book h3{font-size:16px;line-height:1.5}
.aca-card-book p{color:var(--aca-muted);font-size:14px}
.aca-card-book .aca-small{font-size:12px;margin-top:8px}
.aca-registration{position:sticky;top:100px;scroll-margin-top:110px;padding:24px;border:1px solid var(--aca-line);border-radius:12px;display:flex;flex-direction:column;gap:16px;background:#fff}
.aca-registration>h2{padding-bottom:16px;border-bottom:1px solid var(--aca-line)}
.aca-registration-book{display:flex;flex-direction:row-reverse;align-items:center;gap:28px}
.aca-registration-book>div:last-child{flex:1;min-width:0;text-align:right;display:grid;gap:4px}
.aca-club .aca-registration-book>.aca-cover{flex:0 0 96px;width:96px;height:144px}
.aca-registration-book p{font-size:13px;color:var(--aca-muted)}
.aca-panel-meta{flex-direction:column;gap:10px}
.aca-price{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;border-top:1px solid var(--aca-line);padding-top:16px;font-size:13px}
.aca-price>span{color:var(--aca-muted)}
.aca-registration-status{font-size:13px;color:var(--aca-primary);text-align:center}
.aca-participation{background:var(--aca-paper);padding:14px;border-radius:8px;font-size:13px}
.aca-faq{margin-top:32px;gap:10px}
.aca-faq details{border:1px solid var(--aca-line);border-radius:8px;padding:10px 16px}
.aca-faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;min-height:28px;font-size:15px}
.aca-faq summary::-webkit-details-marker{display:none}
.aca-faq summary>span{margin-inline-start:auto;flex:none}
.aca-faq details .aca-rich{font-size:13px;padding-top:6px}
.aca-faq .aca-faq-minus,.aca-faq details[open] .aca-faq-plus{display:none}
.aca-faq details[open] .aca-faq-minus{display:block}
.aca-archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.aca-card-metadata{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--aca-line);padding-top:12px;gap:8px}
.aca-card-metadata .aca-tile{font-size:12px;padding:4px 0}
.aca-invitation{margin-top:32px;background:var(--aca-paper);border-radius:12px;display:flex;gap:28px;align-items:center;padding:24px}
.aca-invitation>div:nth-child(2){flex:1}
.aca-invitation-cover{width:80px;flex:none}
.aca-invitation p{color:var(--aca-muted)}
.aca-pagination{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:24px}
.aca-pagination .page-numbers{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;border:1px solid var(--aca-line);border-radius:8px}
.aca-pagination .current{background:var(--aca-primary);color:#fff}
.aca-empty{padding:32px;border:1px solid var(--aca-line);border-radius:12px;color:var(--aca-muted)}
@media(min-width:1600px){.aca-main-cover{max-width:260px}.aca-hero-copy{width:520px}}
@media(max-width:1100px){.aca-layout{grid-template-columns:minmax(0,1fr) minmax(260px,31%);gap:24px}.aca-registration{padding:18px}.aca-registration-book{gap:20px}.aca-club .aca-registration-book>.aca-cover{flex-basis:70px;width:70px;height:105px}.aca-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.aca-previous{grid-template-columns:repeat(2,minmax(0,1fr))}.aca-archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.aca-card-metadata{grid-template-columns:1fr}.aca-current-body{gap:18px}}
@media(max-width:900px){.aca-layout{grid-template-columns:minmax(0,1fr)}.aca-registration{position:static;grid-row:1}.aca-registration-book{justify-content:flex-start}.aca-registration .aca-panel-meta{flex-direction:row;flex-wrap:wrap}.aca-registration>.aca-button{align-self:flex-start;min-width:220px}.aca-hero-copy{width:65%}.aca-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aca-card-metadata{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.aca-club h1{font-size:28px}.aca-club .aca-eyebrow{font-size:20px}.aca-club h2{font-size:18px}.aca-club .aca-hero-inner{min-height:0;padding-block:20px 28px;gap:14px}.aca-hero-history .aca-hero-inner{min-height:0}.aca-hero-copy{width:100%}.aca-hero::before{background:rgba(3,68,74,.88)}.aca-club .aca-hero-image{width:100%}.aca-hero-copy>p:not(.aca-eyebrow){font-size:14px}.aca-meta{gap:10px 16px}.aca-club .aca-shell{padding-block:24px 32px}.aca-current{padding:16px}.aca-current-body{flex-direction:column;align-items:stretch;gap:16px}.aca-main-cover{width:130px;max-width:42%;flex:auto;align-self:center}.aca-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.aca-facilitator{flex-direction:column;gap:16px}.aca-portrait{width:100%;max-width:300px;flex:auto}.aca-section-heading{align-items:flex-start;flex-wrap:wrap;gap:4px 12px}.aca-section-heading h2{flex:1 1 190px}.aca-schedule-layout{flex-direction:column;align-items:stretch}.aca-schedule-image{display:none}.aca-club .aca-schedule{height:auto}.aca-club .aca-schedule :is(th,td){padding:6px;font-size:12px}.aca-schedule th:first-child{width:42px}.aca-schedule :is(th,td):last-child{width:90px}.aca-location{flex-direction:column;align-items:stretch;gap:16px}.aca-venue-image{flex:auto}.aca-previous{grid-template-columns:1fr 1fr}.aca-club .aca-card-compact .aca-card-book{align-items:flex-start;flex-direction:column}.aca-registration{padding:20px;gap:14px}.aca-registration>.aca-button{width:100%;min-width:0}.aca-archive-grid{gap:12px}.aca-course-card{padding:14px}.aca-archive-grid .aca-card-book{flex-direction:column;align-items:flex-start}.aca-card-metadata{grid-template-columns:1fr}.aca-invitation{flex-wrap:wrap;gap:16px;padding:20px}.aca-invitation>div:nth-child(2){flex-basis:calc(100% - 96px)}.aca-invitation>.aca-button{width:100%}.aca-club .aca-invitation h3{font-size:16px}.aca-breadcrumb{font-size:12px}.aca-faq summary{font-size:14px}}
@media(max-width:360px){.aca-archive-grid{grid-template-columns:1fr}.aca-archive-grid .aca-card-book{flex-direction:row;align-items:center}.aca-card-metadata{grid-template-columns:1fr 1fr}.aca-tiles{grid-template-columns:1fr}.aca-previous{grid-template-columns:1fr}.aca-club .aca-card-compact .aca-card-book{flex-direction:row}.aca-club .aca-button{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.aca-club *{scroll-behavior:auto;transition:none;animation:none}}


/* Real editorial content: preserve supplied photography and sparse-data balance. */
.aca-club .aca-local-note{padding:8px 20px;background:#fff6e8;color:#674a27;text-align:center;font-size:12px;line-height:1.8}
.aca-club .aca-cover-fallback{background:var(--aca-primary);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;padding:12%;border:1px solid rgba(255,255,255,.2);box-shadow:inset 5px 0 rgba(255,255,255,.12);overflow:hidden;filter:none}
.aca-cover-fallback strong{font-size:clamp(14px,2vw,24px);line-height:1.8;color:#fff}
.aca-cover-fallback small{font-size:11px;color:#d7e8e7}
.aca-cover-fallback .aca-icon{width:30px;height:30px;filter:brightness(0) invert(1);opacity:.75}
.aca-registration .aca-cover-fallback{padding:8px;gap:8px}
.aca-registration .aca-cover-fallback strong{font-size:13px}
.aca-registration .aca-cover-fallback small{font-size:9px}
.aca-card-book>.aca-cover-fallback{padding:5px;gap:4px}
.aca-card-book>.aca-cover-fallback strong{font-size:9px;line-height:1.6}
.aca-card-book>.aca-cover-fallback small,.aca-card-book>.aca-cover-fallback>span{display:none}
.aca-facilitator-mark{flex:0 0 120px;aspect-ratio:1;border-radius:50%;background:var(--aca-tint);display:grid;place-items:center}
.aca-facilitator-mark .aca-icon{width:48px;height:48px}
.aca-facilitator:not(:has(.aca-portrait)){padding:24px;background:var(--aca-paper);border-radius:12px;align-items:center}
.aca-club .aca-schedule{height:auto;min-height:260px}
.aca-testimonial{display:flex;flex-direction:row;align-items:center;gap:32px;padding:24px;background:var(--aca-paper);border-radius:12px}
.aca-testimonial-copy{flex:1;min-width:0;display:grid;gap:12px}
.aca-club .aca-testimonial-video{display:block;flex:0 0 auto;width:216px;max-width:100%;height:auto;aspect-ratio:9/16;max-height:440px;background:#182f32;border-radius:12px}




@media(max-width:900px){.aca-hero-real .aca-hero-copy,.aca-testimonial{gap:20px}}
@media(max-width:600px){.aca-hero-real .aca-hero-copy,.aca-testimonial{flex-direction:column;padding:20px;align-items:stretch}.aca-club .aca-testimonial-video{width:100%;max-width:240px;align-self:center;max-height:none}.aca-facilitator-mark{flex:0 0 auto;width:72px}.aca-facilitator-mark .aca-icon{width:32px;height:32px}.aca-club .aca-schedule{min-height:0}.aca-cover-fallback strong{font-size:17px}.aca-facilitator:not(:has(.aca-portrait)){padding:20px;align-items:flex-start}}
/* Phlox's overflow-x:hidden creates an unintended scroll container for sticky. */
#inner-body:has(> .aca-club){overflow-x:clip;overflow-y:visible}

.aca-club-map{width:55%;height:260px;flex:none;border:1px solid var(--aca-line);border-radius:12px;background:var(--aca-tint)}
.aca-location-details{min-width:0}
.aca-location-details address{line-height:1.9;overflow-wrap:anywhere;color:var(--aca-ink)}
.aca-club-directions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-block:12px}
.aca-club-directions>h3{font-size:15px}
.aca-club-directions nav{display:flex;gap:10px;direction:ltr}
.aca-club-directions :is(a,button){display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--aca-paper);transition:background .18s,transform .18s}
.aca-club-directions a img{width:40px;height:40px;border-radius:9px;object-fit:contain}
.aca-club-directions :is(a,button):hover{background:var(--aca-tint);transform:translateY(-2px)}
.aca-club-directions :is(a,button):focus-visible{outline:2px solid var(--aca-primary);outline-offset:3px}
@media(max-width:600px){.aca-club-map{width:100%;height:230px}.aca-club-directions{gap:12px}}
@media(prefers-reduced-motion:reduce){.aca-club-directions :is(a,button){transition:none}.aca-club-directions :is(a,button):hover{transform:none}}

.aca-club-directions button{border:0;cursor:pointer;padding:0}
.aca-club-directions button img{width:24px;height:24px}
.aca-club-directions button[hidden]{display:none}

/* Keep the optional bookstore link with its book artwork on every viewport. */
.aca-main-cover{display:flex;flex-direction:column;align-items:center;gap:16px}
.aca-main-cover>.aca-text-link{justify-content:center;text-align:center;flex-wrap:wrap;line-height:1.8}
