
    :root{color-scheme:light;--ink:#142f2b;--deep:#0c211e;--paper:#f8f6f0;--white:#fffdf7;--gold:#d5b979;--gold-dark:#796236;--muted:#596862;--line:#d9ded3;--serif:Georgia,'Times New Roman',serif;--sans:Inter,'Helvetica Neue',Arial,sans-serif;--max:1180px}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:100px}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.75;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}
    a,button,summary{-webkit-tap-highlight-color:transparent}
    a:focus-visible,summary:focus-visible{outline:3px solid #ac7827;outline-offset:6px}
    ::selection{background:#d5b979;color:var(--deep)}
    img{display:block;max-width:100%}
    h1,h2,h3,p{margin:0}
    h1,h2,h3{font-weight:400}
    p+p{margin-top:1.2rem}
    h1,h2,.serif{font-family:var(--serif)}
    h2{font-size:clamp(2.4rem,4.5vw,4.15rem);line-height:1.1;letter-spacing:-.035em}
    em{font-family:var(--serif);font-weight:400}
    .wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}
    .eyebrow{display:block;font-size:.8rem;line-height:1.5;font-weight:600;letter-spacing:.17em;text-transform:uppercase}
    .section{padding-block:112px}
    .skip{position:absolute;top:-100px;left:20px;padding:10px 20px;background:var(--white);color:var(--ink);z-index:100}
    .skip:focus{top:15px}
    .site-header{position:absolute;inset:0 0 auto;z-index:10;color:var(--white);border-bottom:1px solid #ffffff24}
    .header-inner{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:32px}
    .wordmark{text-decoration:none;line-height:1.15;white-space:nowrap}
    .wordmark strong{font-family:var(--serif);font-size:1.95rem;letter-spacing:-.045em;font-weight:400}
    .wordmark small{display:block;font-size:.75rem;font-weight:500;letter-spacing:.17em;text-transform:uppercase;margin-top:6px}
    nav{display:flex;align-items:center;gap:30px;font-size:.9rem}
    nav a{text-decoration:none;padding-block:10px}
    nav a:hover{color:var(--gold)}
    .nav-book{border-bottom:1px solid var(--gold)}
    .hero{position:relative;min-height:min(880px,100svh);color:var(--white);background:var(--deep);isolation:isolate;display:grid;align-items:center;padding:170px 0 108px;overflow:hidden}
    .hero-picture{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center}
    .hero:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(10,32,28,.95) 0%,rgba(10,32,28,.78) 33%,rgba(10,32,28,.22) 69%,rgba(10,32,28,.07) 100%)}
    .hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(9,29,25,.63),transparent 40%)}
    .hero-copy{max-width:620px}
    .hero .eyebrow{color:var(--gold);margin-bottom:30px}
    h1{font-size:clamp(4.3rem,7.5vw,7rem);line-height:.99;letter-spacing:-.052em;margin-left:-.05em}
    h1 em{color:#e2ca94}
    .hero-lead{max-width:430px;margin-top:30px;font-size:1.1rem;line-height:1.7;color:#edf0e8}
    .retreat-support{background:#e9ece3;border-bottom:1px solid var(--line)}
    .support-inner{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:center;padding-block:32px}
    .retreat-support h2{font-family:var(--sans);font-size:1.25rem;font-weight:600;letter-spacing:0;line-height:1.4}
    .retreat-support p{font-size:1rem;line-height:1.6;margin-top:7px}
    .retreat-support .support-terms{color:var(--muted);font-size:.875rem;margin-top:10px;max-width:790px}
    .retreat-support .button{background:var(--ink);color:var(--white);white-space:nowrap}
    .retreat-support .button:hover{background:#285048}
    .hero-meta{display:flex;flex-wrap:wrap;gap:8px 25px;font-size:.875rem;margin-top:25px;color:#e5e9e0}
    .hero-meta span+span{position:relative}
    .hero-meta span+span:before{content:'';position:absolute;left:-13px;top:10px;height:8px;border-left:1px solid #d5b97980}
    .actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:35px}
    .button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:56px;padding:15px 25px;background:var(--gold);color:var(--deep);text-decoration:none;font-size:.95rem;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s}
    .button:hover{background:#e5ce9a;transform:translateY(-2px)}
    .button .arrow{font-size:1.3rem;font-weight:400;line-height:1}
    .text-link{font-size:.9rem;text-decoration:none;border-bottom:1px solid currentColor;padding-block:5px}
    .hero-caption{position:absolute;left:max(48px,calc((100vw - 1180px)/2));bottom:22px;font-size:.75rem;letter-spacing:.08em;color:#fff;max-width:285px;text-align:left;text-shadow:0 1px 5px #000}
    .facts{background:var(--ink);color:var(--white)}
    .facts-inner{display:grid;grid-template-columns:1fr 1fr 1.2fr;padding-block:28px}
    .fact{padding:0 36px;border-left:1px solid #d5b97940}
    .fact:first-child{padding-left:0;border-left:0}
    .fact:last-child{padding-right:0}
    .fact .eyebrow{color:#c2cfc6;font-size:.75rem;letter-spacing:.1em;margin-bottom:6px}
    .fact strong{font-weight:400;font-size:1.05rem}
    .intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:start}
    .intro .eyebrow,.section-head .eyebrow,.schedule-head .eyebrow,.booking .eyebrow{color:var(--gold-dark);margin-bottom:23px}
    .intro-copy{padding-top:37px;max-width:570px;color:var(--muted);font-size:1.08rem}
    .intro-copy .opening{font-family:var(--serif);font-size:1.55rem;line-height:1.5;color:var(--ink);margin-bottom:23px}
    .pullquote{margin:32px 0 0;padding-left:22px;border-left:1px solid #a58950;color:var(--ink)}
    .pullquote strong{display:block;font-weight:500}
    .pullquote span{display:block;font-size:.95rem;margin-top:4px;color:var(--muted)}
    .practice{padding-top:20px}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:54px}
    .section-head h2{max-width:650px}
    .section-head>p{max-width:310px;color:var(--muted);font-size:1rem}
    .practice-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:70px}
    .practice-item{display:grid;grid-template-columns:38px 1fr;gap:15px;padding:30px 0 32px;border-top:1px solid var(--line)}
    .practice-number{font-size:.85rem;color:var(--gold-dark);padding-top:5px;letter-spacing:.04em}
    .practice-item h3{font-family:var(--serif);font-size:1.65rem;line-height:1.25;letter-spacing:-.02em;margin-bottom:12px}
    .practice-item p{font-size:1rem;color:var(--muted);line-height:1.7;max-width:440px}
    .stillness{position:relative;padding:92px 0 99px;color:var(--white);background:var(--ink);overflow:hidden}
    .stillness-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}
    .stillness .eyebrow{color:var(--gold);margin-bottom:24px}
    .stillness h2{font-size:clamp(2.5rem,4.7vw,4.4rem)}
    .stillness h2 em{color:#ddc38c}
    .stillness p{font-size:1.1rem;color:#d3ded4;max-width:440px}
    .schedule{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px}
    .schedule-head p{margin-top:25px;color:var(--muted);max-width:300px}
    .days{border-top:1px solid var(--line)}
    .day{padding:29px 0 32px;border-bottom:1px solid var(--line)}
    .day-date{display:flex;justify-content:space-between;gap:20px;align-items:baseline;color:var(--gold-dark);font-size:.9rem;margin-bottom:17px}
    .day h3{font-family:var(--serif);font-size:1.95rem;line-height:1.2;margin-bottom:13px}
    .day p{color:var(--muted);max-width:530px}
    .participation{padding-top:0}
    .format-row{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line);padding-top:40px}
    .format-row h3{font-family:var(--serif);font-size:2rem;margin-bottom:12px}
    .format-row p{max-width:470px;color:var(--muted)}
    .format-row .format-kicker{font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:13px}
    .retreat-dates{padding-top:0}
    .date-list{border-top:1px solid var(--line)}
    .retreat-date{display:grid;grid-template-columns:210px 1fr auto;gap:36px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}
    .retreat-date time{font-size:1.1rem;font-weight:500;line-height:1.5}
    .retreat-date time small{display:block;font-size:.875rem;color:var(--muted);font-weight:400;margin-top:4px}
    .retreat-date h3{font-family:var(--serif);font-size:1.7rem;line-height:1.25}
    .retreat-date p{font-size:.95rem;color:var(--muted);margin-top:7px}
    .retreat-date .text-link{white-space:nowrap;font-weight:600}
    .date-note{margin-top:25px;color:var(--muted);font-size:.95rem;max-width:740px}
    .booking{background:#e9ece3;padding-block:92px}
    .booking-intro{display:flex;align-items:end;justify-content:space-between;gap:65px}
    .booking-intro h2{max-width:560px}
    .booking-intro>p{max-width:330px;color:var(--muted)}
    .prices{display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:48px;padding:30px 0;border-top:1px solid #c2cabc;border-bottom:1px solid #c2cabc}
    .price{padding:0 35px;border-left:1px solid #c2cabc}
    .price:first-child{padding-left:0;border-left:0}
    .price:last-child{padding-right:0}
    .price-name{font-size:.9rem;display:block;color:#42594f;margin-bottom:13px}
    .price-value{font-family:var(--serif);font-size:3.4rem;letter-spacing:-.055em;line-height:1.1;display:block;margin-bottom:14px}
    .price-value small{font-size:1.3rem;letter-spacing:0}
    .price p{font-size:.9rem;color:var(--muted);line-height:1.65;max-width:245px}
    .booking-actions{display:flex;justify-content:space-between;gap:35px;align-items:start;padding-top:32px}
    .booking-actions .button{background:var(--ink);color:var(--white);flex-shrink:0}
    .booking-actions .button:hover{background:#285048}
    .booking-actions p{max-width:535px;font-size:.875rem;color:var(--muted)}
    .funding-check{padding:27px 0 0;display:flex;align-items:center;justify-content:space-between;gap:30px}
    .funding-check strong{display:block;font-size:1.05rem;line-height:1.5}
    .funding-check p{font-size:.95rem;color:var(--muted);margin-top:5px;max-width:700px}
    .funding-check .text-link{flex-shrink:0;font-weight:600}
    .insurance{margin-top:28px}
    details{border-bottom:1px solid var(--line)}
    summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;font-size:1.05rem;font-weight:500}
    summary::-webkit-details-marker{display:none}
    summary:after{content:'+';font-size:1.5rem;font-weight:400;color:var(--gold-dark);flex-shrink:0;line-height:1}
    details[open] summary:after{content:'−'}
    .details-copy{padding:0 0 27px;color:var(--muted);max-width:800px}
    .details-copy p{font-size:.95rem}
    .details-copy strong{color:var(--ink);font-weight:600}
    .insurance details{border-color:#c2cabc}
    .insurance .details-copy{max-width:950px}
    .programs{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:24px}
    .programs a{font-size:.9rem}
    .preparation{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px}
    .preparation .eyebrow{color:var(--gold-dark);margin-bottom:22px}
    .preparation .questions{border-top:1px solid var(--line)}
    .closing{border-top:1px solid var(--line);padding:44px 0 52px;display:flex;justify-content:space-between;gap:60px}
    .closing .signature{font-family:var(--serif);font-size:1.8rem;font-style:italic;line-height:1.3}
    .closing .signature span{display:block;font-family:var(--sans);font-size:.85rem;font-style:normal;margin-top:9px;color:var(--muted)}
    .health-note{max-width:570px;font-size:.85rem;color:var(--muted)}
    footer{background:var(--deep);color:#d4dfd5;padding:44px 0 29px}
    .footer-top{display:flex;justify-content:space-between;gap:45px}
    .footer-contact{text-align:right;font-size:.9rem}
    .footer-contact a{display:inline-block;margin-left:18px}
    .footer-bottom{margin-top:37px;padding-top:22px;border-top:1px solid #ffffff1f;display:flex;justify-content:space-between;gap:25px;font-size:.8rem;color:#acbeb1}
    .footer-links{display:flex;gap:23px}
    .footer-links a{text-decoration:none}
    @media(min-width:1000px) and (prefers-reduced-motion:no-preference){.hero-copy{animation:arrive 1s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
    @media(min-width:1700px){.hero-picture{object-position:center 58%}.hero{min-height:880px}}
    @media(max-width:1000px){.wrap{width:calc(100% - 64px)}.intro,.schedule,.preparation{gap:48px}.stillness-inner{gap:45px}.practice-grid,.format-row{column-gap:40px}.hero{min-height:790px}.hero:before{background:linear-gradient(90deg,#0a201cf2 0%,#0a201cbf 38%,#0a201c26 100%)}.section{padding-block:85px}.practice{padding-top:10px}.participation{padding-top:0}.booking-intro{gap:40px}.price{padding-inline:24px}}
    @media(max-width:720px){html{scroll-padding-top:24px}.wrap{width:calc(100% - 40px)}.header-inner{min-height:87px;gap:18px}.wordmark strong{font-size:1.65rem}.wordmark small{font-size:.6rem;letter-spacing:.13em}nav{gap:18px;font-size:.8rem}nav a:first-child{display:none}.hero{min-height:850px;min-height:min(930px,110svh);padding:155px 0 300px;align-items:start}.hero-picture{object-position:72% center}.hero:before{background:linear-gradient(180deg,#0a201ce6 0%,#0a201ccc 32%,#0a201c40 65%,#0a201c26 100%)}.hero:after{background:linear-gradient(0deg,#091d1999,transparent 50%)}h1{font-size:clamp(3.5rem,14vw,5.5rem);line-height:1.01}.hero .eyebrow{font-size:.75rem;margin-bottom:23px;letter-spacing:.13em}.hero-lead{font-size:1rem;max-width:360px;margin-top:23px}.hero-meta{font-size:.8rem;margin-top:20px;gap:5px 23px}.actions{margin-top:27px;gap:18px}.button{font-size:.875rem;min-height:54px;padding:14px 20px;gap:24px}.text-link{font-size:.85rem}.hero-caption{bottom:17px;right:20px;font-size:.7rem}.facts-inner{grid-template-columns:1fr 1fr;padding-block:23px;gap:18px 0}.fact{padding:0 17px}.fact:nth-child(2){padding-right:0}.fact:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid #d5b97930;padding:16px 0 0}.fact .eyebrow{font-size:.7rem}.fact strong{font-size:.875rem}.section{padding-block:68px}h2{font-size:clamp(2.3rem,8.5vw,3.25rem)}.intro,.schedule,.preparation{grid-template-columns:1fr;gap:30px}.intro-copy{padding-top:0;font-size:1rem}.intro-copy .opening{font-size:1.35rem}.intro h2{max-width:430px}.section-head{display:block;margin-bottom:35px}.section-head>p{max-width:440px;margin-top:23px}.practice{padding-top:0}.practice-grid{grid-template-columns:1fr}.practice-item{padding-block:23px;grid-template-columns:28px 1fr;gap:12px}.practice-item h3{font-size:1.5rem}.practice-item p{font-size:.95rem}.stillness{padding-block:65px}.stillness-inner{grid-template-columns:1fr;gap:27px}.stillness h2{font-size:2.65rem}.stillness p{font-size:1rem;max-width:500px}.schedule-head p{max-width:490px;margin-top:20px}.day{padding-block:24px}.day-date{font-size:.8rem}.day h3{font-size:1.7rem}.format-row{grid-template-columns:1fr;gap:35px;padding-top:30px}.format-row h3{font-size:1.8rem}.participation{padding-top:0}.booking{padding-block:65px}.booking-intro{display:block}.booking-intro>p{max-width:490px;margin-top:24px}.prices{grid-template-columns:1fr;padding:0;margin-top:33px}.price{display:grid;grid-template-columns:1fr auto;gap:6px 20px;border:0;border-top:1px solid #c2cabc;padding:22px 0}.price:first-child{border-top:0}.price-name{margin:0;align-self:center;font-size:.9rem}.price-value{grid-column:2;grid-row:1/3;margin:0;font-size:2.7rem;align-self:center;white-space:nowrap}.price p{grid-column:1;max-width:270px;font-size:.85rem}.booking-actions{display:block;padding-top:27px}.booking-actions .button{width:100%;margin-bottom:22px}.booking-actions p{font-size:.85rem}.programs{grid-template-columns:1fr;gap:23px}.insurance{margin-top:15px}summary{font-size:1rem;line-height:1.45;padding-block:20px}.details-copy p{font-size:.9rem}.preparation{gap:31px}.closing{display:block;padding-top:33px;padding-bottom:39px}.health-note{margin-top:25px;font-size:.8rem}.footer-top,.footer-bottom{display:block}.footer-contact{text-align:left;margin-top:28px;font-size:.85rem}.footer-contact a{margin:10px 18px 0 0}.footer-bottom{font-size:.75rem;margin-top:27px}.footer-links{margin-top:15px;gap:20px}}
    @media(max-width:380px){nav{gap:13px}.wordmark strong{font-size:1.5rem}.hero{padding-top:135px;min-height:850px;padding-bottom:285px}.hero-meta{display:block}.hero-meta span{display:block}.hero-meta span+span:before{display:none}.actions{align-items:start;gap:15px}.hero .button{width:100%}.price{gap:6px 12px}.price-value{font-size:2.35rem}.day-date{flex-direction:column;gap:3px}}
    @media(max-width:720px){.wordmark small{font-size:.75rem;letter-spacing:.1em}nav{font-size:.875rem}.hero-caption{left:20px;right:auto;font-size:.75rem}.fact .eyebrow{font-size:.75rem}}
    @media(max-width:720px){.support-inner{grid-template-columns:1fr;gap:21px;padding-block:27px}.retreat-support h2{font-size:1.15rem}.retreat-support p{font-size:.95rem}.retreat-support .support-terms{font-size:.875rem}.retreat-support .button{justify-self:start;white-space:normal}.funding-check{display:block;padding-top:23px}.funding-check .text-link{display:inline-block;margin-top:16px}.funding-check strong{font-size:1rem}}
    @media(max-width:1000px){.retreat-date{grid-template-columns:175px 1fr auto;gap:24px}}
    @media(max-width:720px){.retreat-dates{padding-top:0}.retreat-date{grid-template-columns:1fr;gap:14px;padding-block:25px}.retreat-date time small{display:inline;margin-left:8px}.retreat-date h3{font-size:1.55rem}.retreat-date .text-link{justify-self:start;font-size:.95rem}.date-note{font-size:.875rem}}
    @media(max-width:480px){nav a:nth-child(2){display:none}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
    @media print{.site-header,nav,.hero-caption,.actions,.booking-actions,footer{display:none}.hero{min-height:0;padding:35px 0;color:var(--ink);background:#fff}.hero-picture,.hero:before,.hero:after{display:none}.hero h1 em,.hero-lead,.hero-meta,.hero .eyebrow{color:var(--ink)}.section,.booking,.stillness{padding-block:30px}.wrap{width:100%}h1{font-size:3rem}h2{font-size:2rem}.facts,.stillness{color:var(--ink);background:#fff}.stillness p,.stillness .eyebrow,.stillness h2 em{color:var(--ink)}details:not([open]) .details-copy{display:block}.hero,.section,.practice-item,.day,.price{break-inside:avoid}}
  
.catalog-header{position:relative;background:var(--ink)}
.catalog-header nav{gap:25px}.catalog-header .header-inner{min-height:95px}
.catalog-hero{background:var(--ink);color:var(--white);display:grid;grid-template-columns:1.05fr 1fr;min-height:640px}
.catalog-copy{padding:80px max(40px,calc((100vw - 1180px)/2));padding-right:60px;display:flex;flex-direction:column;justify-content:center}
.catalog-copy .eyebrow{color:var(--gold);margin-bottom:25px}
.catalog-copy h1{font-size:clamp(3.15rem,5.3vw,5.4rem);line-height:1.03;max-width:630px}
.catalog-copy .hero-lead{max-width:520px}.catalog-copy .hero-meta{font-size:.9rem}
.catalog-visual{position:relative;margin:0;min-width:0;overflow:hidden;background:var(--deep)}
.catalog-visual img{height:100%;width:100%;object-fit:cover}
.catalog-visual figcaption{position:absolute;right:20px;bottom:15px;color:white;font-size:.75rem;background:#142f2bd9;padding:5px 10px;max-width:90%}
.catalog-hero.poster .catalog-visual img{object-fit:contain}
.breadcrumb{padding-block:25px;font-size:.85rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:10px}
.breadcrumb a{text-decoration:none}.breadcrumb span[aria-hidden]{color:var(--gold-dark)}
.topic-row{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;padding-block:52px;border-top:1px solid var(--line)}
.topic-row:nth-child(even) .topic-image{order:2}.topic-row:nth-child(even) .topic-copy{order:1}
.topic-image{height:360px;width:100%;object-fit:cover}
.topic-copy .eyebrow{color:var(--gold-dark);margin-bottom:15px}.topic-copy h3{font-family:var(--serif);font-size:clamp(2rem,3.4vw,3rem);line-height:1.13;letter-spacing:-.03em}
.topic-copy p{color:var(--muted);margin-top:20px;max-width:550px}.topic-copy .topic-dates{font-size:.9rem;color:var(--ink)}
.jump-links{display:flex;flex-wrap:wrap;gap:13px;padding:8px 0 38px;font-size:1rem}
.jump-links .topic-choice{display:inline-flex;align-items:center;gap:13px;min-height:66px;padding:11px 23px 11px 12px;border:1px solid #bba37280;border-radius:999px;background:linear-gradient(150deg,#fffdf9,#eeefe7);color:var(--ink);text-decoration:none;box-shadow:0 4px 14px #142f2b07,inset 0 1px 0 #ffffff;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s}
.topic-choice-number{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid #bba37270;border-radius:50%;font-size:.75rem;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--gold-dark)}
.topic-choice-label{font-family:var(--serif);font-size:1.15rem;line-height:1.25;letter-spacing:-.012em}
.jump-links .topic-choice:hover,.jump-links .topic-choice:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--white);box-shadow:0 7px 18px #142f2b1a;transform:translateY(-2px)}
.topic-choice:hover .topic-choice-number,.topic-choice:focus-visible .topic-choice-number{color:var(--gold);border-color:#d5b97970}
.topic-choice:active{transform:translateY(0)}
.button.retreat-button{min-height:62px;gap:24px;padding:9px 10px 9px 25px;border:1px solid #d5b97955;border-radius:999px;background:var(--ink);color:var(--white);box-shadow:0 5px 14px #142f2b12;line-height:1.3;transition:background .2s,box-shadow .2s,transform .2s}
.retreat-button .button-arrow{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--gold);color:var(--deep);font-size:1.3rem;font-weight:400;transition:transform .2s,background .2s}
.button.retreat-button:hover{background:#254c43;color:var(--white);box-shadow:0 8px 22px #142f2b22;transform:translateY(-2px)}
.retreat-button:hover .button-arrow{transform:rotate(-8deg);background:#e7cf99}
.button.retreat-button:active{transform:translateY(0)}
.retreat-hub .button{border-radius:999px}
.program-note{padding:25px 30px;background:#e9ece3;border-left:2px solid var(--gold-dark);margin-top:32px}
.program-note p{font-size:.95rem;color:var(--muted)}
.reading-layout{display:grid;grid-template-columns:260px minmax(0,760px);gap:80px;align-items:start}
.reading-aside{position:sticky;top:35px}.reading-aside .eyebrow{color:var(--gold-dark);margin-bottom:20px}
.reading-aside p{font-size:.95rem;color:var(--muted);margin-top:20px}.reading-aside .button{margin-top:25px;font-size:.875rem;line-height:1.4;width:100%;gap:15px}
.reading-aside .text-link{display:inline-block;margin-top:20px}
.long-copy h2,.long-copy h3{font-family:var(--serif);font-size:2rem;line-height:1.2;letter-spacing:-.025em;margin:46px 0 22px}
.long-copy h2:first-child,.long-copy h3:first-child{margin-top:0}
.long-copy p,.long-copy li{color:var(--muted);font-size:1.03rem}
.long-copy ul{padding-left:22px;margin:20px 0 25px}.long-copy li{padding-left:5px;margin-top:9px}.long-copy li::marker{color:var(--gold-dark)}
.long-copy .date-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.program-status{font-size:.9rem;color:var(--muted);margin-top:20px}.program-status strong{color:var(--ink)}
.seminar-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}
.seminar-item{border-top:1px solid var(--line);padding:34px 0 40px}.seminar-item h3{font-family:var(--serif);font-size:2rem;line-height:1.2;margin:14px 0}.seminar-item p{color:var(--muted)}.seminar-item .eyebrow{color:var(--gold-dark)}.seminar-item .text-link{display:inline-block;margin-top:20px}
.all-dates .retreat-date{grid-template-columns:205px 1fr auto}.all-dates .retreat-date h3{font-size:1.5rem}
.all-dates .date-links{display:flex;gap:18px;flex-wrap:wrap}.all-dates .retreat-date time{font-size:1rem}
.editorial-footer-nav{display:flex;gap:22px;flex-wrap:wrap;font-size:.875rem;margin-top:26px}
.source-link{font-size:.85rem;color:var(--muted);display:inline-block;margin-top:24px}
.support-compact .support-inner{padding-block:28px}.support-compact h2{font-size:1.2rem}
@media(max-width:1050px){.catalog-copy{padding:55px 38px}.catalog-copy h1{font-size:3.5rem}.topic-row{gap:35px}.reading-layout{grid-template-columns:220px 1fr;gap:45px}.catalog-header nav{gap:18px}.catalog-hero{min-height:590px}}
@media(max-width:720px){.catalog-header .header-inner{flex-wrap:wrap;gap:12px;padding-block:18px}.catalog-header nav{width:100%;justify-content:space-between;gap:12px}.catalog-header nav a:first-child{display:block}.catalog-hero{display:flex;flex-direction:column;min-height:0}.catalog-copy{padding:52px 20px 50px}.catalog-copy h1{font-size:clamp(3rem,11.8vw,4rem)}.catalog-copy .hero-lead{max-width:100%;font-size:1rem}.catalog-visual{height:330px}.catalog-visual img{height:100%;width:100%}.catalog-hero.poster .catalog-visual{height:auto}.catalog-hero.poster .catalog-visual img{height:auto}.topic-row{grid-template-columns:1fr;gap:28px;padding-block:35px}.topic-row:nth-child(even) .topic-image,.topic-row:nth-child(even) .topic-copy{order:initial}.topic-image{height:275px}.topic-copy h3{font-size:2.25rem}.topic-copy .actions{margin-top:23px}.reading-layout{display:block}.reading-aside{position:static;padding-bottom:36px;border-bottom:1px solid var(--line);margin-bottom:36px}.reading-aside .button{width:auto}.long-copy h2,.long-copy h3{font-size:1.75rem;margin-top:35px}.long-copy p,.long-copy li{font-size:1rem}.seminar-grid{grid-template-columns:1fr}.all-dates .retreat-date{grid-template-columns:1fr;gap:14px;padding-block:25px}.all-dates .retreat-date time{font-size:.9rem;color:var(--gold-dark)}.all-dates .date-links{margin-top:4px}.breadcrumb{padding-block:20px}.program-note{padding:23px}.reading-aside .text-link{margin-left:20px}.jump-links{font-size:.85rem;gap:10px 23px}.support-inner{grid-template-columns:1fr;gap:20px}.retreat-support .button{white-space:normal}.support-inner .button{justify-self:start}.catalog-copy .actions .button{max-width:100%}}
@media(max-width:720px){.jump-links{gap:10px;padding-bottom:29px}.jump-links .topic-choice{flex:1 1 calc(50% - 10px);min-width:0;min-height:62px;padding:14px 13px;justify-content:center;text-align:center}.topic-choice-number{display:none}.topic-choice-label{font-size:1.0625rem}.button.retreat-button{min-height:60px;max-width:100%;gap:22px;padding:9px 9px 9px 23px}.retreat-button .button-arrow{width:38px;height:38px;flex-basis:38px}}
@media(prefers-reduced-motion:reduce){.jump-links .topic-choice,.button.retreat-button,.retreat-button .button-arrow{transition:none;transform:none}}
