:root{--ink:#0b0b0b;--paper:#eeeae1;--cream:#f7f4ed;--border:#aaa79f;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.grain{pointer-events:none;position:fixed;inset:0;z-index:50;opacity:.105;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}::selection{background:#c9c4b7;color:#000}.announcement{font-size:9px;letter-spacing:2.4px;text-align:center;background:#e7e4db;color:#141414;padding:9px 15px;font-weight:600}.announcement span{margin:0 20px}.header{height:84px;border-bottom:1px solid #333;display:flex;align-items:center;justify-content:space-between;padding:0 5.2%;background:#0a0a0a;position:relative;z-index:20}.brand{display:flex;gap:13px;align-items:center;font-size:11px;letter-spacing:2.3px;font-weight:600}.brand img{width:57px;height:57px;object-fit:cover}.brand i{font-style:normal;color:#888}.nav{display:flex;gap:37px;font-size:11px;color:#d2cfc8}.nav a:hover,.text-link:hover,.footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:6px}.nav-cta{border:1px solid #a5a29b;padding:13px 16px;font-size:10px;letter-spacing:1.3px}.nav-cta span{margin-left:16px}.menu-toggle{display:none;border:0;background:none;color:#fff;font-size:24px}.hero-grid{display:grid;grid-template-columns:54% 46%;min-height:665px}.hero-copy{padding:105px 8% 36px 10%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-kicker{font-size:10px;letter-spacing:2.4px;font-weight:600}.star{font-size:19px;margin-right:10px}.hero h1,h2,.quote-section blockquote{font-family:var(--serif);font-weight:400}.hero h1{font-size:clamp(65px,7.9vw,116px);line-height:.99;letter-spacing:-3px;margin:55px 0 25px;white-space:nowrap}.hero h1 em,h2 em,blockquote em{font-weight:400;color:#9f9b93}.hero-copy>p{max-width:420px;color:#c1bdb5;line-height:1.85;font-size:14px}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:38px}.button{display:inline-flex;justify-content:space-between;align-items:center;border:1px solid currentColor;padding:20px 23px;min-width:215px;font-size:10px;font-weight:700;letter-spacing:1.4px;transition:transform .2s,background .2s}.button:hover,.outline-button:hover{transform:translateY(-3px)}.button-light{background:#ece8df;color:#121212;border-color:#ece8df}.button-dark{background:#0b0b0b;color:white;border-color:#0b0b0b}.button-outline{color:#0b0b0b;background:transparent}.text-link{font-size:10px;letter-spacing:1.3px;font-weight:600;white-space:nowrap}.text-link span{padding-left:9px}.hero-bottom{margin-top:auto;width:100%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.6px;color:#a8a49d}.hero-art{position:relative;overflow:hidden;min-height:665px;background:radial-gradient(ellipse at 50% 48%,#242320 0%,#141413 50%,#0c0c0c 78%);border-left:1px solid #292827}.halo{position:absolute;border:1px solid #6a655d;border-radius:50%;left:50%;top:47%;transform:translate(-50%,-50%);opacity:.5}.halo1{width:510px;height:510px}.halo2{width:650px;height:650px;opacity:.3}.orbit{position:absolute;left:50%;top:46%;border:1px solid #777269;border-radius:50%;transform:translate(-50%,-50%) rotate(-31deg);opacity:.45}.orbit-one{width:660px;height:260px}.orbit-two{width:285px;height:660px;transform:translate(-50%,-50%) rotate(-45deg);opacity:.2}.moon{position:absolute;top:18%;right:19%;width:90px;height:90px;border-radius:50%;border:1px solid #aaa69f;box-shadow:inset -27px 0 0 -14px #c6c0b4;transform:rotate(-21deg);opacity:.8}.tiny-spark{position:absolute;color:#e7e4db;font-size:26px}.s1{left:14%;top:17%}.s2{right:16%;bottom:26%}.s3{left:22%;bottom:20%}.tarot-card{width:min(315px,65%);height:455px;position:absolute;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-8deg);background:#e7e2d8;color:#111;box-shadow:18px 28px 42px #000b;padding:12px}.card-inner{border:1px solid #292722;width:100%;height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.card-inner:before{content:'';position:absolute;inset:7px;border:1px solid #aaa59c}.card-number{position:absolute;top:26px;font-family:var(--serif);font-size:21px;letter-spacing:4px}.card-eye{width:83%;height:auto}.card-title{font-family:var(--serif);font-size:35px;letter-spacing:5px;margin-top:22px}.card-footer{font-size:8px;letter-spacing:2px;position:absolute;bottom:25px}.card-footer span{margin:0 13px}.art-label{position:absolute;bottom:28px;left:9%;right:9%;display:flex;justify-content:space-between;color:#a6a29b;font-size:9px;letter-spacing:2px}.marquee{background:#eae6dc;color:#141414;overflow:hidden;padding:19px 0;border-top:1px solid #eae6dc}.marquee div{white-space:nowrap;text-align:center;font-size:11px;font-weight:600;letter-spacing:2.8px}.marquee span{font-size:22px;margin:0 28px;vertical-align:middle}.section-pad{padding:115px 8%}.intro{background:#eeeae1;color:#111;display:grid;grid-template-columns:42% 58%;gap:5%;align-items:center}.intro-art{min-height:470px;position:relative;border:1px solid #aaa59c;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle,#e8e2d6,#ede9df)}.sun-drawing{position:relative;display:grid;place-items:center;width:280px;height:280px;border:1px solid #666;border-radius:50%}.sun-drawing:before,.sun-drawing:after{content:'';position:absolute;inset:24px;border:1px solid #666;border-radius:50%}.sun-drawing:after{inset:68px}.sun-rays{position:absolute;inset:-85px;border:1px dashed #777;border-radius:50%;opacity:.65}.sun-core{font-size:95px;font-family:Georgia}.vert-note{position:absolute;left:15px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:2px;bottom:25px}.corners{position:absolute;right:20px;top:20px}.intro-text{padding:20px 4% 20px 8%}.section-kicker span{margin-left:10px;color:#aaa}.intro h2,.section-top h2,.process h2,.faq h2{font-size:clamp(55px,6vw,90px);line-height:1.06;letter-spacing:-2px;margin:30px 0}.intro p{font-size:15px;line-height:1.9;max-width:545px;color:#4b4842}.intro p em{font-weight:600}.underlined{display:inline-block;margin-top:24px;font-size:11px;font-weight:700;letter-spacing:1.6px;padding-bottom:10px;border-bottom:1px solid #111}.underlined span{margin-left:45px}.readings{background:#111;color:#eeeae1}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:43px}.section-top h2{margin-bottom:0}.section-top>p{color:#b7b3ac;font-size:14px;line-height:1.8;max-width:300px}.reading-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.reading-card{position:relative;padding:25px 24px 24px;background:#191919;border:1px solid #464440;display:flex;flex-direction:column;min-height:465px;transition:background .2s}.reading-card:hover{background:#222}.reading-card.featured{background:#e9e5db;color:#101010;border-color:#e9e5db}.reading-card.featured .reading-details{border-color:#b7b2a8;color:#77736b}.tag{position:absolute;right:0;top:0;background:#111;color:white;font-size:8px;letter-spacing:1.6px;padding:8px 11px}.reading-num{font-size:10px;letter-spacing:2px;display:flex;justify-content:space-between}.reading-visual{height:170px;display:flex;align-items:center;justify-content:center}.reading-visual svg{width:130px;fill:none;stroke:currentColor;stroke-width:1.1}.reading-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.reading-heading h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:0}.reading-heading span{font-family:var(--serif);font-size:27px}.reading-card>p{font-size:12px;line-height:1.7;color:inherit;opacity:.74;min-height:62px}.reading-details{font-size:8px;letter-spacing:.8px;color:#aaa59e;padding:14px 0;border-top:1px solid #494742;margin-top:auto}.outline-button{width:100%;border:1px solid currentColor;color:inherit;background:transparent;padding:17px 12px;display:flex;justify-content:space-between;font-weight:700;font-size:9px;letter-spacing:1.1px;transition:transform .2s}.readings-note{font-size:11px;color:#99958e;margin:30px 0 0;line-height:1.8}.quote-section{text-align:center;background:#24221f;padding:115px 20px 65px;border-block:1px solid #49443d}.quote-stars{font-size:24px;letter-spacing:20px;color:#b4afa7}.quote-section blockquote{font-size:clamp(36px,5.4vw,75px);line-height:1.28;margin:35px auto 85px}.quote-bottom{font-size:9px;letter-spacing:1.8px;color:#aaa59d}.quote-bottom span{margin:0 40px}.process{background:#eeeae1;color:#111}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid #aaa}.steps>div{padding:28px 36px 10px 0;border-right:1px solid #aaa;min-height:230px}.steps>div+div{padding-left:36px}.steps>div:last-child{border-right:0}.step-no{font-size:11px;letter-spacing:1px}.steps h3{font-family:var(--serif);font-size:35px;font-weight:400;margin:45px 0 10px}.steps p{font-size:13px;line-height:1.8;color:#5a564f}.faq{background:#111;display:grid;grid-template-columns:40% 60%;gap:4%}.faq>div:first-child>p{font-size:14px;color:#a9a59e;max-width:330px;line-height:1.9}.faq-symbol{font-size:140px;color:#77736c;margin-top:24px;font-family:Georgia}.accordion{padding-right:6%}.accordion details{border-bottom:1px solid #5a5751}.accordion details:first-child{border-top:1px solid #5a5751}.accordion summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:25px;padding:26px 0;display:flex;justify-content:space-between;gap:20px}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font:300 22px var(--sans)}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{font-size:13px;line-height:1.9;color:#b1ada6;max-width:580px;margin:0 0 25px}.final-cta{text-align:center;padding:105px 20px 90px;background:#eae6dc;color:#111;position:relative}.final-icon{font-size:32px;margin-bottom:25px}.final-cta h2{font-size:clamp(65px,8vw,115px);line-height:1;margin:30px 0;font-family:var(--serif);font-weight:400;letter-spacing:-2px}.final-cta p{font-size:14px;color:#615c54;margin-bottom:37px}.final-stars{margin-top:45px;letter-spacing:10px}.footer{padding:65px 8% 25px;background:#0a0a0a;display:grid;grid-template-columns:1fr 1fr;gap:20px}.footer-brand img{width:155px}.footer-brand p{max-width:250px;font-size:12px;color:#aaa;line-height:1.8;margin:0}.footer-links{display:flex;justify-content:flex-end;gap:25px;align-items:start;font-size:10px;letter-spacing:1px}.footer-bottom{grid-column:1/-1;border-top:1px solid #383633;padding-top:25px;margin-top:45px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;color:#9b978f}dialog{border:none;padding:0;width:min(540px,calc(100% - 30px));max-height:90vh;background:#f0ece3;color:#111;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.modal-header{display:flex;justify-content:space-between;align-items:center;background:#111;color:#fff;padding:15px 25px;font-size:10px;letter-spacing:1.8px}.close-modal{font-size:28px;background:none;color:white;border:none}.modal-body{padding:28px 34px 35px}.modal-body h2{font-family:var(--serif);font-size:50px;margin:4px 0 10px;font-weight:400}.modal-lede{font-size:13px;color:#5c574f}.modal-lede strong{color:#111}.modal-lede span{font-weight:700;color:#111;margin-left:6px}form label{display:block;font-size:11px;font-weight:600;letter-spacing:.5px;margin-top:16px}form input,form textarea,.booking-result textarea{width:100%;display:block;border:1px solid #bbb6ab;background:transparent;border-radius:0;padding:12px;margin-top:7px;color:#111;font-size:13px;resize:vertical}form .checkbox{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5}form .checkbox input{width:auto;margin:3px 0}form button{margin-top:20px;width:100%}.booking-result p{font-size:13px;line-height:1.7}.booking-result textarea{background:#fff;min-height:160px}.result-actions{display:flex;gap:10px;margin-top:15px}.result-actions .button{min-width:0;flex:1;padding:15px}.small-note{font-size:11px!important;color:#666}.booking-result[hidden]{display:none}#booking-form[hidden]{display:none}
@media(max-width:1150px){.nav{gap:20px}.reading-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:clamp(55px,7vw,90px)}.hero-copy{padding-top:110px}.hero-grid{grid-template-columns:52% 48%}.hero-bottom{margin-top:75px}}
@media(max-width:760px){.announcement{font-size:8px;letter-spacing:1px}.announcement span{margin:0 8px}.header{height:74px;padding:0 5%}.brand img{width:52px;height:52px}.brand span{font-size:9px;letter-spacing:1.1px}.menu-toggle{display:block}.nav-cta{margin-left:auto;margin-right:15px;padding:10px;font-size:8px}.nav-cta span{display:none}.nav{display:none;position:absolute;top:73px;left:0;right:0;background:#171717;padding:25px;flex-direction:column;gap:22px;border-bottom:1px solid #555}.nav.open{display:flex}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:75px 7% 25px}.hero h1{font-size:clamp(60px,11vw,85px);margin:40px 0 20px;white-space:normal}.hero-copy>p{font-size:14px}.hero-actions{gap:22px;flex-wrap:wrap}.hero-bottom{margin-top:65px}.hero-art{min-height:550px;border-left:none;border-top:1px solid #333}.tarot-card{height:390px;width:275px}.halo1{width:390px;height:390px}.halo2{width:500px;height:500px}.section-pad{padding:80px 7%}.intro{grid-template-columns:1fr;gap:40px}.intro-art{min-height:340px}.intro-text{padding:0}.sun-drawing{width:190px;height:190px}.sun-rays{inset:-45px}.section-top{display:block}.section-top>p{margin-top:25px}.reading-grid{grid-template-columns:1fr 1fr}.reading-card{min-height:435px;padding:21px 17px}.reading-visual{height:120px}.reading-visual svg{width:110px}.reading-heading h3{font-size:26px}.reading-heading span{font-size:24px}.quote-section{padding:85px 20px 60px}.quote-section blockquote{margin-bottom:60px}.steps{grid-template-columns:1fr}.steps>div,.steps>div+div{border-right:0;border-bottom:1px solid #aaa;padding:25px 0;min-height:0}.steps h3{margin:18px 0 8px}.faq{grid-template-columns:1fr}.faq-symbol{display:none}.accordion{padding:0}.footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start;flex-wrap:wrap;margin-top:25px}.footer-bottom{gap:16px;flex-wrap:wrap}.final-cta h2{font-size:70px}}
@media(max-width:490px){.brand span{display:none}.hero h1{font-size:61px;letter-spacing:-2px}.eyebrow{font-size:8px;letter-spacing:1.5px}.hero-bottom{font-size:8px}.reading-grid{grid-template-columns:1fr}.reading-card{min-height:405px}.reading-visual{height:125px}.reading-card>p{min-height:0}.reading-heading h3{font-size:33px}.modal-body{padding:25px 20px}.result-actions{flex-direction:column}.marquee div{font-size:9px}.footer-links{gap:17px}.quote-bottom span{margin:0 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Readability refinements */
.hero h1,h2,.quote-section blockquote{font-weight:500;letter-spacing:-.025em}
.hero h1{white-space:normal;line-height:1.02}
.intro h2,.section-top h2,.process h2,.faq h2{line-height:1.1}
.brand img{object-fit:contain;background:#000}
.footer-brand img{height:auto;object-fit:contain}

/* Social profile links */
.footer-social{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;padding:22px 0;border-top:1px solid rgba(255,255,255,.15)}
.footer-social span{font-size:10px;letter-spacing:2px;color:#b8b3a9;margin-right:10px}
.footer-social a{color:#fff;font-size:13px;text-decoration:none;transition:opacity .2s}
.footer-social a:hover,.footer-social a:focus-visible{opacity:.7;text-decoration:underline;text-underline-offset:5px}

/* About Jennifer editorial portrait */
.intro-portrait{background:#171717;border-color:#77736c;min-height:520px}
.intro-portrait img{display:block;width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center 42%;filter:contrast(1.04)}
@media(max-width:760px){.intro-portrait,.intro-portrait img{min-height:400px;max-height:560px}.intro-portrait img{object-position:center 35%}}

/* Larger, responsive header logo */
.header{height:100px}
.brand img{width:82px;height:82px;object-fit:contain}
@media(max-width:760px){.header{height:86px}.brand img{width:68px;height:68px}.nav{top:85px}}
@media(max-width:490px){.header{height:82px}.brand img{width:64px;height:64px}.nav{top:81px}}

/* Scroll-responsive hero tarot card: background celestial artwork remains still. */
.hero-art .tarot-card {
  transform: translate(-50%, -50%) rotate(var(--tarot-scroll-angle, -8deg));
  will-change: transform;
}
@media (prefers-reduced-motion: reduce) {
  .hero-art .tarot-card { transform: translate(-50%, -50%) rotate(-8deg); will-change: auto; }
}
