@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;450;500;550;600;650&display=swap');

:root{color-scheme:dark;--ink:#0b192b;--ink-light:#13263d;--white:#f9fbff;--paper:#f4f7fc;--gold:#dcc591;--gold-light:#eddbb5;--muted:#b6c2d1;--line:#ffffff24;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;font-family:var(--sans);font-size:16px;background:var(--ink);color:var(--white)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}button,select,input{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}button,a,select,summary,input{touch-action:manipulation}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #609adb;outline-offset:5px}p{margin:0 0 1.25rem;line-height:1.75}h1,h2,h3{margin:0;font-family:var(--serif);font-weight:400;line-height:1.04}h1,h2{letter-spacing:-.035em}em{font-weight:400;color:var(--gold)}.wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:10;padding:14px;background:var(--gold);color:var(--ink)}.skip-link:focus{transform:translateY(0)}.site-header{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:28px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px;font-size:1rem;letter-spacing:.13em;white-space:nowrap}.brand-mark{color:var(--gold);font-size:2.4rem;font-weight:400}.brand small{display:block;margin-top:6px;font-size:.75rem;letter-spacing:.125em;color:var(--muted)}.site-header nav{display:flex;gap:28px;font-size:.875rem;color:#d1d9e4}.site-header nav a:hover{color:var(--gold)}.header-book{border-bottom:1px solid #b9a777;padding:10px 0;display:flex;gap:24px;align-items:center;color:var(--gold);font-size:.875rem}.header-book span{font-size:1.3rem}.hero{display:grid;grid-template-columns:1.16fr .84fr;gap:70px;align-items:center;padding-top:62px;padding-bottom:55px}.eyebrow{font-family:var(--sans);font-size:.75rem;font-weight:550;letter-spacing:.16em;line-height:1.7;color:var(--gold);margin-bottom:22px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.short-rule{width:28px;height:1px;background:var(--gold)}h1{font-size:clamp(3.5rem,5.8vw,5.8rem);line-height:1.015}.hero-intro{font-size:1.0625rem;color:#ccd5e1;max-width:470px;margin:28px 0 30px;line-height:1.8}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 23px;border:1px solid transparent;font-size:.875rem;font-weight:550;border-radius:3px;transition:background .18s,color .18s,transform .18s}.button span{font-size:1.3rem;line-height:1}.button:hover{transform:translateY(-2px)}.button:disabled:hover{transform:none}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:var(--gold-light)}.hero-note{font-size:.875rem;color:var(--muted);margin-top:19px;margin-bottom:0}.hero-note span{padding:0 5px}.hero-art{position:relative;max-width:445px;justify-self:end;width:100%;padding:0 14px}.art-frame{border-radius:48% 48% 3px 3px;overflow:hidden;aspect-ratio:3/3.75;background:#142338;outline:1px solid #b4a1775e;outline-offset:10px}.art-frame img{width:100%;height:100%;object-fit:cover;display:block}.art-caption{display:flex;justify-content:center;align-items:center;gap:10px;font-family:var(--serif);font-size:1.125rem;font-style:italic;color:#c1cbd8;margin:26px -14px 0}.art-caption span{font-size:1.3rem;color:var(--gold)}.availability-band{border-block:1px solid var(--line)}.availability-inner{min-height:83px;display:flex;justify-content:space-between;align-items:center;gap:20px}.availability-inner p{margin:0;font-size:.875rem}.availability-inner p:first-child{letter-spacing:.1em;font-size:.75rem;font-weight:550}.small-star{color:var(--gold);padding-right:12px;font-size:1.1rem}.muted{color:var(--muted);padding-left:12px}.band-end{color:var(--muted)}.readings-section{background:var(--paper);color:var(--ink);padding:88px 0 34px;scroll-margin-top:0;color-scheme:light}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:52px}.readings-section .eyebrow{color:#637187;margin-bottom:16px}.section-heading h2,.about-section h2,.faq-section h2{font-size:clamp(2.7rem,4.1vw,4.1rem)}.section-heading em{color:#66768c}.section-heading>p{font-size:1rem;line-height:1.8;color:#5b6676;margin-bottom:3px}.reading-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.reading-card{position:relative;background:#fff;border:1px solid #ccd5e2;padding:30px 22px 22px;display:flex;flex-direction:column;border-radius:4px}.reading-card.featured{border:1.5px solid #183854;background:#eaf0f8}.reading-card .card-duration{font-size:.75rem;letter-spacing:.13em;color:#576578;font-weight:600;margin-bottom:19px}.reading-card h3{font-size:1.9rem;line-height:1.02;min-height:62px;letter-spacing:-.025em}.card-description{font-size:1rem;color:#5c6777;line-height:1.65;min-height:106px;margin:20px 0 14px}.price{font-family:var(--serif);font-size:3rem;line-height:1.2;letter-spacing:-.025em;margin:7px 0 19px}.price span{font-family:var(--sans);font-size:.75rem;color:#68778c;letter-spacing:.06em;margin-left:5px}.card-details{padding:18px 0 20px;margin:0 0 13px;list-style:none;border-top:1px solid #d5dde7;color:#4b5b70;font-size:.875rem;line-height:1.65}.card-details li{display:flex;gap:8px;margin-bottom:8px}.card-details li::before{content:'·';color:#617b9b}.reading-card .button{margin-top:auto;gap:10px;padding-inline:15px;width:100%;font-size:.875rem}.button-outline{background:transparent;border:1px solid #aebdcd;color:var(--ink)}.button-outline:hover{background:#e5edf7}.button-ink{color:var(--white);background:var(--ink)}.button-ink:hover{background:#223d5f}.recommendation{position:absolute;top:0;left:16px;right:16px;transform:translateY(-50%);background:var(--ink);color:#fff;text-align:center;font-size:.75rem;line-height:1.4;letter-spacing:.09em;padding:7px 8px;border-radius:2px}.booking-state{font-size:.875rem;color:#57687f;text-align:center;margin:28px 0 0}.session-notes{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 40px;padding-top:30px;margin-top:30px;border-top:1px solid #d5dde7;font-size:.875rem;color:#536178}.session-notes span::before{content:'✧';margin-right:10px;color:#708299}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:100px}.signature{font-family:var(--serif);font-style:italic;font-size:2rem;color:var(--gold);margin-top:38px}.about-copy{color:#bfcbd9;padding-top:8px}.about-copy .lead{font-family:var(--serif);font-size:1.9rem;line-height:1.35;color:var(--white);margin-bottom:24px}.about-copy>p{font-size:1rem;line-height:1.85}.about-footnote{display:flex;gap:20px;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin-top:28px}.about-footnote>span{font-size:2rem;color:var(--gold)}.about-footnote p{margin:0;font-size:.875rem;line-height:1.55}.process-section{background:#102239;border-block:1px solid var(--line);padding-block:62px 70px}.process-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:46px}.process-heading .eyebrow{margin:0}.process-heading h2{font-size:2.6rem}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px}.step-number{display:block;font-family:var(--serif);font-size:1.125rem;color:var(--gold);border-top:1px solid #ffffff29;padding-top:20px;margin-bottom:20px}.process-grid h3{font-size:1.7rem;margin-bottom:16px}.process-grid p{font-size:1rem;color:#bdc9d7;margin:0;line-height:1.75}.faq-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;padding-block:100px 70px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;font-size:1rem;line-height:1.55;cursor:pointer;padding:22px 0}summary::-webkit-details-marker{display:none}summary span{font-size:1.5rem;color:var(--gold);font-weight:400;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{font-size:1rem;color:#bfcbd9;margin-bottom:25px;line-height:1.8}.closing-section{text-align:center;padding:40px 0 85px}.closing-star{display:block;font-size:2rem;color:var(--gold);margin-bottom:26px}.closing-section .eyebrow{margin-bottom:16px}.closing-section h2{font-size:clamp(3.3rem,5.5vw,5.2rem)}.closing-section>p:not(.eyebrow){font-family:var(--serif);font-size:1.5rem;color:#bac6d6;margin:24px 0}.site-footer{border-top:1px solid var(--line);padding-block:28px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.75rem;color:#aab9ca}.site-footer p{margin:0}.footer-brand{letter-spacing:.13em;font-size:.875rem;color:#e2e8f0}.booking-dialog{border:1px solid #9caac140;border-radius:8px;background:var(--ink);color:var(--white);width:min(520px,calc(100% - 32px));padding:40px;max-height:90dvh;overflow-y:auto;box-shadow:0 24px 100px #0008}.booking-dialog::backdrop{background:#020915c9;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:13px;right:15px;width:40px;height:40px;border:0;background:transparent;color:var(--muted);font-size:1.8rem;border-radius:5px}.dialog-close:hover{background:#ffffff16}.booking-dialog .eyebrow{font-size:.75rem;margin-bottom:13px}.booking-dialog h2{font-size:3rem}.booking-dialog>p:not(.eyebrow){font-size:1rem;color:var(--muted);margin:13px 0 28px}.field-label{display:block;font-size:.875rem;color:#d2dbe7;margin-bottom:10px;font-weight:500}select{width:100%;min-height:50px;color:#f3f6fb;border:1px solid #69809a;background:#13263d;border-radius:3px;padding:10px 12px;font-size:.875rem}.format-fieldset{border:0;margin:24px 0;padding:0;min-width:0}.format-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.format-options label{display:flex;align-items:center;gap:9px;min-height:49px;padding:10px 13px;border:1px solid #506580;border-radius:3px;cursor:pointer;font-size:.875rem}.format-options label:has(input:checked){border-color:var(--gold);background:#dcc59113}.format-options input{accent-color:var(--gold);width:17px;height:17px;margin:0;flex-shrink:0}.booking-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:21px;border-block:1px solid var(--line)}.booking-summary div{display:flex;flex-direction:column;gap:5px}.booking-summary strong{font-weight:500}.booking-summary span{font-size:.875rem;color:var(--muted)}.booking-summary>strong{font-family:var(--serif);font-size:2.4rem}.schedule-note{font-size:.875rem;line-height:1.65;color:var(--muted);margin:20px 0 15px}.calendar-notice{font-size:.875rem;line-height:1.65;color:#e9d6ae;background:#dcc59112;border:1px solid #dcc5913f;border-radius:4px;padding:14px;margin-bottom:20px}.continue-button{width:100%;justify-content:center}.continue-button:disabled{background:#475669;color:#d7deea;opacity:.8}.checkout-note{font-size:.75rem;color:var(--muted);text-align:center;line-height:1.6;margin:13px 0 0}.dialog-open{overflow:hidden}[hidden]{display:none!important}
@media(min-width:1500px){.hero{padding-top:72px;padding-bottom:66px}.hero-art{max-width:460px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.site-header nav{gap:18px}.hero{gap:42px}.reading-grid{gap:12px}.reading-card{padding-inline:18px}.reading-card h3{font-size:1.75rem}.reading-card .button{font-size:.8125rem;padding-inline:12px}.card-description{min-height:132px}.card-details{min-height:113px}.about-section,.faq-section{gap:60px}}
@media(max-width:960px){.site-header nav{display:none}.hero{grid-template-columns:1.1fr .9fr;gap:36px}.hero-art{padding-inline:8px}.hero-intro{font-size:1rem}h1{font-size:3.9rem}.hero-note{max-width:260px;line-height:1.8}.art-caption{font-size:1rem}.band-end{display:none}.section-heading{gap:30px}.section-heading>p{max-width:275px;font-size:.9375rem}.reading-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.reading-card{padding:28px}.reading-card h3{min-height:0;font-size:2rem}.card-description{min-height:56px;margin-block:18px}.card-details{min-height:0}.reading-card .button{font-size:.875rem;padding-inline:18px}.about-section{gap:45px}.about-section h2,.faq-section h2{font-size:3rem}.process-grid{gap:28px}.faq-section{grid-template-columns:.85fr 1.15fr;gap:50px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{min-height:91px;gap:12px}.brand{gap:10px;font-size:.875rem;letter-spacing:.12em}.brand-mark{font-size:1.8rem}.brand small{font-size:.75rem;letter-spacing:.02em;margin-top:4px}.header-book{font-size:.875rem;gap:8px;max-width:99px;line-height:1.4}.header-book span{display:none}.hero{grid-template-columns:1fr;padding-top:43px;padding-bottom:36px;gap:36px}.hero-copy{text-align:left}.hero .eyebrow{font-size:.75rem;margin-bottom:23px}h1{font-size:clamp(3.45rem,11vw,5.2rem)}.hero-intro{font-size:1rem;max-width:500px;line-height:1.8;margin-top:23px;margin-bottom:25px}.hero-note{max-width:none;font-size:.875rem;margin-top:16px}.hero .button{min-width:238px}.hero-art{width:min(390px,88%);justify-self:center;padding-inline:8px;margin-top:12px}.art-frame{aspect-ratio:1/1.05;border-radius:48% 48% 3px 3px}.art-frame img{object-position:center 57%}.art-caption{margin-top:23px;font-size:1.125rem}.availability-inner{min-height:98px;justify-content:center;flex-direction:column;gap:6px;padding-block:18px}.availability-inner p{font-size:.875rem}.availability-inner p:first-child{font-size:.75rem}.muted{padding-left:5px}.readings-section{padding-top:58px}.section-heading{display:block;margin-bottom:42px}.section-heading h2{font-size:3.15rem}.section-heading>p{max-width:none;font-size:1rem;margin-top:25px}.section-heading>p br{display:none}.reading-grid{grid-template-columns:1fr;gap:26px}.reading-card{padding:26px}.reading-card h3{font-size:2.1rem}.reading-card .card-duration{margin-bottom:15px}.card-description{min-height:0;margin:15px 0}.price{margin-top:0;margin-bottom:15px}.card-details{padding-block:16px 8px;margin-bottom:14px}.reading-card .button{min-height:53px}.session-notes{display:grid;gap:12px;justify-content:start;padding-top:25px}.booking-state{text-align:left}.about-section{grid-template-columns:1fr;padding-block:62px;gap:24px}.about-section h2,.faq-section h2{font-size:3.2rem}.signature{margin-top:24px;margin-bottom:0}.about-copy .lead{font-size:1.8rem}.process-section{padding-block:44px 48px}.process-heading{display:block;margin-bottom:30px}.process-heading .eyebrow{margin-bottom:16px}.process-heading h2{font-size:2.75rem}.process-grid{grid-template-columns:1fr;gap:25px}.step-number{margin-bottom:13px}.process-grid h3{font-size:1.8rem;margin-bottom:10px}.faq-section{grid-template-columns:1fr;gap:32px;padding-block:64px 40px}.faq-section .eyebrow{margin-bottom:17px}.closing-section{padding-block:28px 64px}.closing-section h2{font-size:3.8rem}.site-footer{flex-wrap:wrap;justify-content:flex-start;gap:12px 24px;padding-block:25px}.site-footer .footer-brand{width:100%}.booking-dialog{padding:34px 23px 24px}.booking-dialog h2{font-size:2.8rem}.booking-dialog select{font-size:.875rem}.format-options label{padding-inline:10px}.booking-summary strong{font-size:.9375rem}.booking-summary>strong{font-size:2.2rem}}
.center-discovery{display:inline-block;font-size:.875rem;color:var(--gold);line-height:1.6;margin-top:14px;border-bottom:1px solid #dcc59150;padding-bottom:3px}.center-discovery:hover{color:var(--gold-light)}.center-section{background:#e6edf6;color:var(--ink);padding-block:64px;border-top:1px solid #cbd6e4;color-scheme:light}.center-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:85px;align-items:center}.center-section .eyebrow{color:#526780;margin-bottom:18px}.center-copy h2{font-size:clamp(2.75rem,4.1vw,4rem)}.center-copy em{color:#526b87}.center-copy>p:not(.eyebrow){max-width:510px;margin-block:22px;font-size:1rem;color:#4d5d70}.center-button{border-color:#8296af}.center-details{border-left:1px solid #b6c6d9;padding-left:40px}.center-label{font-size:.75rem;letter-spacing:.12em;color:#506680;font-weight:600}.center-hours{margin:0}.center-hours>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #bfcddd}.center-hours dt{font-family:var(--serif);font-size:1.75rem;line-height:1.2}.center-hours dd{margin:0;font-size:1rem;align-self:center;color:#334b65;white-space:nowrap}.center-timezone{font-size:.875rem;color:#50637a;margin:17px 0}.center-policy{font-size:.9375rem;line-height:1.75;color:#4d5d70;margin:0}.faq-list a,.booking-state a{text-decoration:underline;text-underline-offset:4px}.faq-list a{color:var(--gold)}
@media(max-width:960px){.center-layout{gap:40px}.center-details{padding-left:28px}}
@media(max-width:700px){.center-section{padding-block:48px}.center-layout{grid-template-columns:1fr;gap:30px}.center-details{padding-left:0;border-left:0;border-top:1px solid #b6c6d9;padding-top:25px}.center-copy h2{font-size:3.15rem}.center-button{width:100%;max-width:350px}.center-discovery{max-width:100%}.availability-inner p:first-child{letter-spacing:.07em}}
h1,h2,h3{overflow-wrap:break-word}
@media(max-width:1150px){.reading-card .button{font-size:.875rem}}
@media(max-width:700px){.brand{white-space:normal;min-width:0}.header-book{flex-shrink:0}}
@media(max-width:380px){.brand small{display:none}.header-book{max-width:92px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover{transform:none}}

.availability-secondary{padding-bottom:20px}.availability-secondary .center-discovery{margin-top:0}@media(max-width:700px){.availability-secondary{text-align:center;padding-bottom:20px}}

.about-section{grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.about-portrait{width:100%;max-width:440px;border:1px solid #dcc59150;border-radius:4px;overflow:hidden}.about-portrait img{display:block;width:100%;height:auto}.about-content .signature{margin:18px 0 24px}.about-content .about-copy{padding-top:0}@media(max-width:960px){.about-section{gap:40px}}@media(max-width:700px){.about-section{grid-template-columns:1fr;gap:36px}.about-portrait{max-width:390px;justify-self:center}}
