/* TAO-Qi retreat overview: open image-and-type composition. */
.hub-header{background:#0a1c29;color:#f7f2e7;border-bottom:1px solid #bca06d}
.hub-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;padding-block:12px}
.hub-header a{text-decoration:none}
.hub-header .wordmark strong{font:400 1.65rem/1.2 Georgia,serif;color:#e8d3a9}
.hub-header .wordmark small{display:block;font-size:.875rem;margin-top:4px}
.hub-header nav{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:1rem}
.hub-header nav a{display:block;padding-block:8px}
.retreat-hub{--ink:#102b3a;--deep:#0a1c29;--paper:#faf7f0;--white:#fffdf7;--gold:#e4c893;--gold-dark:#806539;--muted:#52606a;--line:#d8ccb4;background:var(--paper);color:var(--ink)}
.retreat-hub [hidden]{display:none!important}
.retreat-hub .wrap{max-width:1120px}
.retreat-hub .hub-intro{padding-block:48px 64px}
.hub-intro>div{max-width:690px}
.hub-intro .eyebrow,.hub-section-heading .eyebrow{font-size:.875rem;color:var(--gold-dark);letter-spacing:.12em}
.hub-intro h1{font:400 clamp(2.5rem,5vw,4.25rem)/1.08 Georgia,serif;letter-spacing:-.04em;margin:16px 0 20px}
.hub-intro h1 em{color:var(--gold-dark);font-weight:400}
.hub-intro p:not(.eyebrow){font-size:1.125rem;color:var(--muted)}
.format-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px;margin-top:38px}
.format-choices>a{display:grid;grid-template-columns:1fr;align-content:start;gap:12px;min-width:0;padding:0 0 26px;border-bottom:1px solid #bcaa89;color:var(--ink);text-decoration:none;background:none}
.choice-art{position:relative;margin:0 0 8px;min-width:0}
.choice-art img{display:block;width:100%;height:230px;object-fit:cover;object-position:center;border-radius:2px}
.choice-art figcaption,.hub-retreat-card figcaption,.mini-feature figcaption{position:absolute;right:6px;bottom:6px;max-width:calc(100% - 12px);margin:0;padding:0;font:400 8px/1.25 Arial,sans-serif;letter-spacing:.025em;text-align:right;color:#fffdf7;text-shadow:0 1px 3px #000,0 0 5px #0009;pointer-events:none}
.format-choices .choice-duration{color:var(--gold-dark);font-size:.875rem;letter-spacing:.12em;text-transform:uppercase}
.format-choices strong{font:400 clamp(1.85rem,3vw,2.65rem)/1.14 Georgia,serif;letter-spacing:-.03em;overflow-wrap:normal}
.format-choices small{font-size:1rem;line-height:1.6;color:var(--muted);max-width:390px}
.format-choices .choice-action{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;margin-top:6px;font-size:1rem;color:var(--ink)}
.choice-action>span{font-size:1.4rem;color:var(--gold-dark);transition:transform .18s}
.format-choices>a:hover{border-color:var(--ink)}
.format-choices>a:hover .choice-action>span{transform:translateX(4px)}
.retreat-hub a:focus-visible,.retreat-hub summary:focus-visible{outline:2px solid #806539;outline-offset:6px}
.format-switcher{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-block:24px;border-bottom:1px solid var(--line)}
.back-to-choice{font-size:1rem;text-underline-offset:5px;white-space:nowrap}
.format-switcher nav{display:flex;gap:25px;flex-wrap:wrap}
.format-switcher nav a{display:block;font-size:1rem;padding:12px 0;text-decoration:none;border-bottom:2px solid transparent}
.format-switcher nav a[aria-current="true"]{border-color:#806539;color:var(--ink)}
.hub-section{padding-block:54px 70px;scroll-margin-top:24px}
.hub-section-heading{display:flex;align-items:end;justify-content:space-between;gap:48px;margin-bottom:40px}
.hub-section-heading h2{font:400 clamp(2.15rem,4vw,3.25rem)/1.12 Georgia,serif;letter-spacing:-.035em;margin-top:12px}
.hub-section-heading>p{max-width:440px;color:var(--muted);font-size:1rem}
.hub-section-heading>.text-link{font-size:1rem;max-width:260px;line-height:1.5;text-underline-offset:5px}
.hub-card-grid{display:flex;flex-direction:column;gap:0}
.hub-retreat-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:58px;padding:40px 0;border-top:1px solid var(--line);align-items:center;min-width:0}
.hub-retreat-card:nth-child(even){grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.hub-retreat-card:nth-child(even)>figure{order:2}
.hub-retreat-card>figure{position:relative;margin:0;min-width:0}
.hub-retreat-card img{display:block;width:100%;height:290px;object-fit:cover;border-radius:2px}
.hub-card-copy{min-width:0;padding:8px 0}
.hub-card-copy h3{font:400 clamp(1.8rem,3vw,2.6rem)/1.15 Georgia,serif;letter-spacing:-.03em;margin:14px 0 20px;overflow-wrap:anywhere}
.hub-card-copy p{font-size:1rem;color:var(--muted)}
.hub-card-copy .card-date,.card-date{font-size:.9375rem;color:var(--gold-dark);line-height:1.5}
.hub-card-copy .card-description{margin-bottom:24px}
.hub-date-list{list-style:none;margin:0 0 24px;padding:0;border-top:1px solid var(--line)}
.hub-date-list li{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 18px;padding:10px 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.5}
.hub-date-list time{color:var(--ink)}
.hub-date-list a{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#234657;font-size:.9375rem;text-underline-offset:5px;text-decoration-color:#ad8c50}
.retreat-hub .button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;max-width:100%;padding:13px 26px;border:1px solid #a58a59;border-radius:2px;box-shadow:none;background:var(--deep);color:#fffdf7;font:400 1.05rem/1.4 Georgia,serif;white-space:normal;text-align:center;text-decoration:none}
.retreat-hub .button:hover{background:#234657;color:#fffdf7}
.hub-card-copy .more-dates{font-size:.875rem;margin-top:16px}
.more-themes{margin-top:24px;border-block:1px solid var(--line)}
.more-themes summary{cursor:pointer;padding:24px 0;font-size:1rem}
.other-themes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 40px;padding-bottom:25px}
.other-themes a{display:block;padding:18px 0;border-top:1px solid var(--line);text-decoration:none}
.other-themes strong{display:block;font:400 1.35rem/1.3 Georgia,serif}
.other-themes span{display:block;font-size:.9375rem;color:var(--muted);margin-top:8px}
.hub-mini-section{padding-block:54px 70px;background:#f1ece2;border-bottom:1px solid var(--line)}
.mini-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:58px;align-items:center;border-top:1px solid #ccbea5;padding-top:35px}
.mini-feature figure{position:relative;margin:0;min-width:0}
.mini-feature img{display:block;width:100%;height:330px;object-fit:cover;border-radius:2px}
.mini-feature h3{font:400 clamp(2rem,3.4vw,2.8rem)/1.15 Georgia,serif;letter-spacing:-.025em;margin:15px 0 20px}
.mini-feature p{font-size:1rem}
.mini-feature .button{margin-top:25px}
.mini-feature .mini-note{font-size:.875rem;line-height:1.6;margin-top:20px;color:var(--muted)}
.hub-funding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px;padding-block:30px;border-block:1px solid var(--line)}
.hub-funding-grid h3{font:400 1.6rem/1.2 Georgia,serif;margin-bottom:20px}
.hub-link-list{display:flex;flex-direction:column;gap:5px;align-items:start}
.hub-link-list a{display:block;padding-block:10px;font-size:1rem;line-height:1.5;color:#234657;text-underline-offset:5px;text-decoration-color:#ad8c50}
.funding-disclaimer{font-size:.9375rem;line-height:1.6;color:var(--muted);margin-top:25px}
.retreat-hub footer{background:var(--deep);color:#f7f2e7;padding-block:32px;border-top:1px solid #bca06d}
.retreat-hub footer a{color:#e8d3a9}
.retreat-hub footer p{color:#d1d8db;font-size:1rem}
.retreat-hub .editorial-footer-nav{display:flex;flex-wrap:wrap;gap:24px;margin-top:20px}
.retreat-hub .editorial-footer-nav a{display:block;font-size:.875rem}
/* Existing embedded mini-retreat detail page. */
.mini-detail-shell{margin:0;background:#faf7f0}
.mini-detail-shell .mini-backbar{height:72px;box-sizing:border-box;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#0a1c29;color:#fffdf7;font:16px/1.4 Arial,sans-serif}
.mini-backbar a{color:inherit;text-underline-offset:4px}
.mini-detail-shell iframe{position:fixed;top:72px;left:0;border:0;width:100%;height:calc(100vh - 72px);height:calc(100dvh - 72px);background:#faf7f0}
@media(max-width:850px){
  .hub-header .wrap{flex-wrap:wrap;gap:14px}
  .hub-header nav{gap:12px 20px}
  .format-choices{gap:30px}
  .choice-art img{height:190px}
  .hub-section-heading{display:block}
  .hub-section-heading>.text-link{display:inline-block;margin-top:20px}
  .hub-section-heading>p{margin-top:20px}
  .hub-retreat-card,.hub-retreat-card:nth-child(even){gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hub-retreat-card img{height:260px}
  .mini-feature{gap:30px}
}
@media(max-width:600px){
  .retreat-hub .wrap{width:calc(100% - 40px)}
  .hub-header .wrap{min-height:62px;padding-block:10px;gap:12px}
  .hub-header .wordmark strong{font-size:1.35rem}
  .hub-header .wordmark small{display:none}
  .hub-header nav{font-size:.875rem;gap:8px 14px}
  .retreat-hub .hub-intro{padding-block:25px 38px}
  .hub-intro .eyebrow{font-size:.875rem;letter-spacing:.07em}
  .hub-intro h1{font-size:2.25rem;margin:13px 0 14px}
  .hub-intro p:not(.eyebrow){font-size:1rem}
  .format-choices{grid-template-columns:1fr;gap:0;margin-top:25px;border-top:1px solid #bcaa89}
  .format-choices>a{grid-template-columns:96px minmax(0,1fr);column-gap:20px;row-gap:8px;padding:23px 0;align-content:center}
  .choice-art{grid-column:1;grid-row:1 / 5;margin:0;align-self:center}
  .choice-art img{height:132px;object-position:60% center}
  .format-choices .choice-duration{grid-column:2;font-size:.875rem;letter-spacing:.06em;align-self:end}
  .format-choices strong{grid-column:2;font-size:1.75rem;line-height:1.15}
  .format-choices small{display:none}
  .format-choices .choice-action{grid-column:2;font-size:1rem;margin:0;min-height:44px;gap:10px}
  .format-switcher{display:block;padding-block:18px}
  .format-switcher nav{gap:22px;margin-top:12px}
  .format-switcher nav a{font-size:.9375rem}
  .hub-section{padding-block:34px 44px}
  .hub-section-heading{margin-bottom:24px}
  .hub-section-heading h2{font-size:2.2rem;overflow-wrap:anywhere}
  .hub-retreat-card,.hub-retreat-card:nth-child(even){grid-template-columns:1fr;gap:22px;padding-block:28px 34px}
  .hub-retreat-card:nth-child(even)>figure{order:0}
  .hub-retreat-card img{height:230px}
  .hub-card-copy{padding:0}
  .hub-card-copy h3{font-size:2rem;line-height:1.15}
  .hub-card-copy .button,.mini-feature .button{min-width:190px}
  .other-themes,.mini-feature,.hub-funding-grid{grid-template-columns:1fr}
  .hub-mini-section{padding-block:34px 44px}
  .mini-feature{gap:25px;padding-top:26px}
  .mini-feature img{height:240px}
  .hub-funding-grid{gap:32px;padding-block:26px}
  .mini-detail-shell .mini-backbar{padding:12px 16px;font-size:14px}
}
@media(max-width:360px){
  .format-choices>a{grid-template-columns:78px minmax(0,1fr);column-gap:16px}
  .format-choices strong{font-size:1.6rem}
  .choice-art img{height:130px}
}
@media(prefers-reduced-motion:reduce){.choice-action>span{transition:none}}
.day-participation{display:flex;align-items:center;gap:28px;margin:24px 0 40px;padding:24px 0 24px 24px;border-left:2px solid #977943;scroll-margin-top:110px}
.day-participation>div{flex:1;min-width:0}
.day-participation h3{margin:0 0 12px;font-size:clamp(1.6rem,3vw,2rem);line-height:1.2;color:#102d3a}
.day-participation p{max-width:760px;margin:0 0 12px;font-size:1rem;line-height:1.65}
.day-participation .eyebrow{font-size:.875rem;color:#856638}
.day-participation .button{flex-shrink:0;white-space:normal;text-align:center}
@media(max-width:760px){.day-participation{align-items:flex-start;flex-direction:column;gap:8px;padding-left:18px}.day-participation .button{max-width:100%}}
