@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--paper:#f4eee5;--cream:#fbf8f2;--ink:#252b26;--muted:#5e655b;--line:#d9d5c9;--olive:#606e59;--rust:#a46348;--sand:#e6d8c3;--sage:#dce1d7;--font: 'DM Sans',Arial,sans-serif;--display:'DM Serif Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.65 var(--font)}button,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--display);line-height:1.08;letter-spacing:-.03em}h1{font-size:clamp(3.4rem,5.9vw,6.8rem)}h2{font-size:clamp(2.75rem,4.3vw,5.1rem)}h3{font-family:var(--display);font-size:2rem;line-height:1.16}em{font-weight:400;color:var(--rust)}button:focus-visible,a:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a46348;outline-offset:4px}.skip-link{position:absolute;top:-100px;left:1rem;z-index:100;background:white;padding:1rem}.skip-link:focus{top:1rem}.site-header{height:78px;display:flex;align-items:center;gap:3rem;padding:0 clamp(1.3rem,4vw,5rem);border-bottom:1px solid var(--line);background:var(--cream);position:relative;z-index:3}.brand{text-decoration:none;font-weight:700;letter-spacing:-.06em;font-size:1.45rem;white-space:nowrap;display:inline-flex;align-items:center}.brand-dot{color:var(--rust)}.brand-mark{position:relative;width:27px;height:24px;margin-right:9px}.brand-mark i{position:absolute;width:17px;height:17px;border:2px solid var(--rust);border-radius:50%;top:3px;left:0}.brand-mark i+ i{left:9px;border-color:var(--olive)}nav{display:flex;gap:2rem;margin:auto}nav a,.footer-links a{text-decoration:none;font-size:.85rem;font-weight:600}nav a:hover,.footer-links a:hover{text-decoration:underline}.header-cta{font-size:.84rem;text-decoration:none;font-weight:700;border-bottom:1px solid var(--rust);padding-bottom:3px}.section{padding:clamp(5rem,9vw,9rem) clamp(1.3rem,6vw,7rem)}.eyebrow,.overline,.path-num,.lens-index,.practice-kicker{font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--rust)}.eyebrow{margin-bottom:1.5rem}.section-intro{max-width:760px;margin-bottom:3rem}.section-intro>p:last-child{max-width:690px;font-size:1.12rem;color:var(--muted)}.lead{font-size:clamp(1.08rem,1.45vw,1.33rem);max-width:540px;color:#4a5149;line-height:1.55}.button{display:inline-flex;align-items:center;justify-content:center;gap:2.2rem;text-decoration:none;border:1px solid var(--ink);padding:1rem 1.3rem;min-height:50px;font-size:.86rem;font-weight:700;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:#fff}.primary:hover{background:#4c5c4c}.actions{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;margin:2.5rem 0}.text-link{text-decoration:none;font-weight:700;font-size:.85rem;border-bottom:1px solid;padding-bottom:4px}.hero{min-height:720px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5%;background:var(--paper);padding-top:4rem;padding-bottom:4rem}.hero-copy{max-width:730px}.hero-copy h1{margin-bottom:1.7rem}.hero-caption{font-size:.78rem;letter-spacing:.08em;color:var(--muted);margin-top:5rem}.hero-art{height:600px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;border:1px solid #d9d1c2;background:radial-gradient(circle at 50% 48%,#faf7ef 0%,#eee6d9 67%,#e9dfd0 100%);border-radius:50% 50% 4px 4px / 43% 43% 4px 4px;padding:2rem}.orbit{position:absolute;border:1px solid #c8c2b1;border-radius:50%;width:86%;height:70%;transform:rotate(32deg)}.orbit-b{transform:rotate(-32deg)}.energy-stage{position:relative;width:100%;min-height:280px;display:flex;align-items:center;justify-content:center}.energy{width:38%;min-width:120px;max-width:200px;border:0;background:none;z-index:1;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:0;transition:transform .3s}.energy-m{transform:translateX(17%)}.energy-f{transform:translateX(-17%)}.energy:hover,.energy[aria-expanded=true]{z-index:4;transform:translateX(0) scale(1.04)}.energy-disc{display:block;width:clamp(100px,12vw,180px);aspect-ratio:1;border-radius:50%;box-shadow:inset -15px -20px 28px #71594230,0 10px 35px #57433320;animation:breathe 7s ease-in-out infinite alternate}.energy-m .energy-disc{background:radial-gradient(circle at 28% 25%,#e8b787,#a86d4d 78%)}.energy-f .energy-disc{background:radial-gradient(circle at 28% 24%,#d3daca,#748872 80%)}.energy-label{display:block;font-size:.8rem;font-weight:700;line-height:1.3;text-align:center}.energy-label small{display:block;font-weight:400;color:var(--muted)}.union{border:1px solid #d2c4ab;background:#f5eadd;border-radius:50%;height:132px;width:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:22%;left:50%;transform:translateX(-50%);z-index:2;color:var(--ink);font-weight:700;font-size:.85rem;box-shadow:0 15px 35px #755a3b24;transition:transform .25s,background .25s}.union:hover,.union[aria-expanded=true]{transform:translateX(-50%) scale(1.06);background:#eee0c8}.union-symbol{font-size:1.7rem;line-height:1;color:var(--rust)}.union small{font-size:.64rem;color:var(--muted);font-weight:400}.energy-reveal{z-index:2;position:relative;background:#fbf9f2e8;max-width:420px;width:100%;min-height:135px;padding:1.1rem 1.35rem;border:1px solid #ddd2bd;font-size:.85rem;line-height:1.5;margin-top:1.5rem}.energy-reveal p{margin:0}.energy-reveal ul{margin:.45rem 0 0;padding-left:1.1rem}.energy-reveal li+li{margin-top:.25rem}.art-foot{font-size:.7rem;color:var(--muted);z-index:2;position:relative;margin:1.1rem 0 0;text-align:center}@keyframes breathe{to{transform:translateY(-7px) scale(1.05)}}.concepts{background:var(--cream)}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.concept-card{padding:clamp(2rem,4vw,4.5rem);background:#e9e0d0}.concept-card.feminine{background:#e0e6dc}.card-top{display:flex;align-items:center;gap:.8rem;margin-bottom:2rem}.small-disc{width:26px;height:26px;border-radius:50%;background:#aa785d}.small-disc.f{background:#829680}.concept-card h3{font-size:clamp(2rem,3vw,3rem);max-width:360px}.concept-card>p{max-width:520px}.concept-card dl{margin:2rem 0;border-top:1px solid #8b887d60}.concept-card dl div{display:grid;grid-template-columns:140px 1fr;gap:1rem;border-bottom:1px solid #8b887d60;padding:.8rem 0;font-size:.88rem}.concept-card dt{font-weight:700}.concept-card dd{margin:0}.example{font-size:.87rem}.example b{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.2rem}.reflection{font-family:var(--display);font-size:1.45rem;margin:2rem 0 0;border-top:1px solid #8b887d60;padding-top:1.2rem}.union-section{display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:center;background:#e5e6dc;overflow:hidden}.union-content{max-width:720px}.union-content blockquote{font:clamp(1.4rem,2.2vw,2.3rem)/1.38 var(--display);margin:2rem 0;padding-left:1.3rem;border-left:3px solid var(--rust)}.mode-controls{display:flex;gap:.4rem;margin:2rem 0 1rem}.mode{background:transparent;border:1px solid #8c9285;color:var(--ink);padding:.65rem 1rem;font-size:.8rem;font-weight:700}.mode.active{background:var(--ink);color:white}.muted{color:var(--muted)}.union-content .muted{font-size:.87rem;margin-top:1.5rem}.union-drawing{height:430px;position:relative;display:grid;place-items:center}.loop{width:290px;height:290px;position:absolute;border-radius:50%;border:32px solid #b8785666;transform:translateX(-24%)}.loop-two{border-color:#82947e99;transform:translateX(24%)}.union-drawing span{z-index:1;font:italic 1.8rem/1.1 var(--display);text-align:center}.map-section{background:#faf8f2}.lens-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.lens-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;text-align:left;padding:1.1rem 1rem;font-weight:700;font-size:1rem;color:var(--muted)}.lens-tabs button small{display:block;font-weight:400;font-size:.73rem}.lens-tabs button[aria-selected=true]{border-color:var(--rust);color:var(--ink)}.lens-panel{display:flex;gap:2rem;background:#eee9de;padding:1.7rem 2rem;margin-top:1rem}.lens-panel p{margin:0;max-width:720px}.lens-index{min-width:95px}.map-context,.map-note{color:var(--muted);font-size:.82rem}.map-subtitle{font-size:clamp(2rem,3vw,3rem);margin:5rem 0 .4rem}.map-pairs{margin-top:2rem;border-top:1px solid var(--line)}.map-pairs details{border-bottom:1px solid var(--line)}.map-pairs summary{list-style:none;display:grid;grid-template-columns:2.4rem 1fr 1fr 1.5rem;align-items:center;gap:1rem;cursor:pointer;padding:1.5rem .6rem}.map-pairs summary::-webkit-details-marker{display:none}.pair-number{color:var(--rust);font-size:.72rem}.pair-name{font:clamp(1.15rem,2vw,1.75rem) var(--display)}.pair-plus{text-align:right;font-size:1.5rem;color:var(--rust)}details[open] .pair-plus{transform:rotate(45deg)}.pair-body{padding:0 3.5rem 2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.pair-body h4{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.6rem}.pair-body p{font-size:.88rem;margin:.4rem 0}.pair-body .pair-summary{grid-column:1/-1;border-top:1px solid var(--line);padding-top:1rem}.map-thought{font:italic clamp(1.4rem,2.5vw,2.4rem)/1.4 var(--display);text-align:center;max-width:800px;margin:6rem auto 0;color:var(--olive)}.paths-section{background:#efe7d9}.paths-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#b5ad9e;border:1px solid #b5ad9e}.paths-grid article{padding:clamp(2rem,4vw,4rem);background:#efe7d9}.paths-grid h3{font-size:clamp(2rem,3vw,3.2rem);margin-top:2rem}.paths-grid p{max-width:480px}.illustration{border-top:1px solid #c2b9a9;padding-top:1.3rem;margin-top:2rem;font-size:.88rem}.illustration b{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.67rem;margin-bottom:.7rem}.practice-section{background:#566852;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.practice-section em{color:#e2c6a5}.practice-section .eyebrow,.practice-kicker{color:#e0bd9e}.practice-side p:not(.eyebrow){max-width:420px}.practice-progress{margin-top:5rem;max-width:320px;font-size:.75rem}.progress-track{height:2px;background:#ffffff61;margin-top:1rem}.progress-track span{display:block;background:#dfb995;height:100%;width:20%;transition:width .25s}.practice-card{background:#f8f5ec;color:var(--ink);padding:clamp(1.6rem,4vw,3.5rem);min-height:420px}.practice-card h3{min-height:90px;font-size:clamp(1.6rem,2.3vw,2.4rem)}.practice-card label{font-size:.77rem;font-weight:700;display:block;margin-bottom:.55rem}.practice-card label span{font-weight:400;color:var(--muted)}textarea{display:block;width:100%;resize:vertical;border:1px solid #bebdb4;border-radius:0;background:#fff;padding:.8rem;min-height:100px;color:var(--ink)}.privacy-note{font-size:.7rem;color:var(--muted);margin:.5rem 0 1.7rem}.practice-actions,.practice-finish{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.text-button{background:none;border:0;text-decoration:underline;text-underline-offset:4px;padding:.7rem;color:inherit;font-size:.84rem;font-weight:700}.practice-finish[hidden],.quiz-section[hidden]{display:none}.quiz-section{background:var(--cream)}.quiz-options{display:grid;gap:.6rem}.quiz-options button{background:white;border:1px solid var(--line);padding:1rem;text-align:left}.quiz-options button:hover{border-color:var(--rust)}.guide-section{background:#d9c3ab;min-height:540px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.guide-section>*{position:relative;z-index:1}.guide-ornament{position:absolute;z-index:0;color:#b67f5d70;font-size:37rem;line-height:1;right:-4rem;top:-12rem}.guide-section p:not(.eyebrow){max-width:520px}.coming-soon{border:1px solid var(--ink);font-size:.78rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;padding:.95rem 1.7rem;margin:1.3rem 0;display:flex;align-items:center;gap:.8rem}.status-dot{width:8px;height:8px;background:var(--olive);border-radius:50%}.guide-foot{font-size:.72rem}.about-section{display:grid;grid-template-columns:1.08fr .92fr;gap:7%;align-items:center;background:#f8f6ef}.about-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}.about-copy{max-width:530px}.about-copy p:not(.eyebrow){font-size:1.05rem}.about-copy .draft-note{font-size:.72rem!important;color:var(--muted);letter-spacing:.04em;margin-top:2rem}.work-section{background:#ebeae1}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.work-card{padding:clamp(2rem,4vw,4rem);background:#f8f5ed;text-decoration:none;min-height:360px;display:flex;flex-direction:column;transition:background .2s,transform .2s}.work-card:hover{background:#e1dfd2;transform:translateY(-3px)}.work-card>span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rust);font-weight:700}.work-card h3{font-size:clamp(2rem,3vw,3.3rem);margin:2rem 0 1rem}.work-card p{max-width:360px;color:var(--muted)}.work-card strong{font-size:.8rem;margin-top:auto;border-bottom:1px solid;align-self:flex-start}.couples-note{margin:2rem 0 0;font-size:.82rem;color:var(--muted)}footer{background:#272e28;color:#edece3;padding:4rem clamp(1.3rem,6vw,7rem) 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem}.footer-main p{font-size:.8rem;color:#c4cbbf}.footer-links{display:flex;gap:2rem;justify-content:flex-end}.footer-end{grid-column:1/-1;font-size:.7rem;color:#b3bdb0;border-top:1px solid #596159;padding-top:1.5rem;margin:0}
@media(max-width:1000px){.site-header{gap:1.5rem}.site-header nav{gap:1rem}.hero{grid-template-columns:1fr}.hero-art{max-width:640px;width:100%;margin:auto}.hero-caption{margin-top:2rem}.union-section{gap:1rem}.union-drawing{transform:scale(.75)}}@media(max-width:700px){body{font-size:15px}.site-header{height:auto;min-height:66px;padding:1rem 1.3rem;flex-wrap:wrap;justify-content:space-between}.site-header nav{order:3;width:100%;overflow-x:auto;margin:0;justify-content:space-between;gap:1rem;white-space:nowrap}.site-header nav a{font-size:.75rem}.header-cta{font-size:.75rem}.section{padding:5rem 1.3rem}.hero{padding-top:4.5rem;min-height:auto;gap:1rem}.hero h1{font-size:clamp(3rem,10vw,4.4rem)}.hero-art{height:580px;border-radius:44% 44% 4px 4px / 20% 20% 4px 4px}.energy-stage{min-height:280px;display:block}.energy{position:absolute;width:100%;max-width:none;height:110px;flex-direction:row;gap:1rem}.energy-m{top:0;left:0;transform:translate(0,19%)}.energy-f{bottom:0;left:0;transform:translate(0,-19%)}.energy:hover,.energy[aria-expanded=true]{transform:scale(1.02)}.energy-disc{height:100px;width:100px;flex-shrink:0}.energy-label{text-align:left}.energy-f{flex-direction:row-reverse}.energy-f .energy-label{text-align:right}.union{height:110px;width:110px;top:50%;transform:translate(-50%,-50%)}.union:hover,.union[aria-expanded=true]{transform:translate(-50%,-50%) scale(1.04)}.energy-reveal{min-height:144px;margin-top:.6rem}.concept-grid,.paths-grid,.work-grid,.practice-section,.about-section,.union-section{grid-template-columns:1fr}.concept-card{padding:2rem}.concept-card dl div{grid-template-columns:1fr;gap:0}.union-drawing{height:220px;transform:scale(.65);margin:-1rem 0}.union-content blockquote{font-size:1.55rem}.lens-panel{display:block;padding:1.4rem}.lens-tabs button{font-size:.84rem;padding:1rem .4rem}.lens-tabs button small{font-size:.65rem}.map-pairs summary{grid-template-columns:1.5rem 1fr 1fr 1rem;gap:.3rem}.pair-body{padding:0 1rem 1rem;gap:.6rem}.pair-name{font-size:1.1rem}.practice-section{gap:2rem}.practice-progress{margin-top:2rem}.about-photo{order:2}.about-photo img{aspect-ratio:1}.footer-links{justify-content:flex-start}footer{grid-template-columns:1fr;gap:1rem}.footer-end{grid-column:1}.guide-ornament{font-size:28rem;right:-8rem;top:0}}@media(max-width:370px){.header-cta{display:none}.hero-art{padding:.8rem}.energy-disc{width:85px;height:85px}.energy-reveal{font-size:.78rem}.pair-name{font-size:1rem}.section{padding-left:1rem;padding-right:1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.energy-m,.energy-f{transform:none}.energy-m:hover,.energy-f:hover{transform:none}}

[hidden]{display:none!important}
@media(max-width:700px){.energy-stage{min-height:345px}.energy-m,.energy-f{transform:none}.energy-m{top:0}.energy-f{bottom:0}.energy:hover,.energy[aria-expanded=true]{transform:none}.union{top:50%}}

/* Hero review: keep the reveal card in flow and depict two forces meeting. */
.union-symbol{display:block;width:27px;height:27px;color:var(--rust);flex:none}
.hero-art{height:auto;min-height:600px;overflow:hidden;justify-content:center;gap:0;padding:2.1rem;isolation:isolate}
.energy-stage{min-height:285px;display:grid;grid-template-columns:1fr 1fr;align-items:center;justify-items:center}
.energy,.energy-m,.energy-f{position:relative;top:auto;bottom:auto;left:auto;width:100%;max-width:none;height:auto;min-width:0;display:flex;flex-direction:column;gap:.7rem;transform:none!important;z-index:1}
.energy:hover,.energy[aria-expanded=true]{transform:none!important}
.energy-disc{width:clamp(104px,12vw,155px);height:auto;flex:none;animation:none;will-change:transform}
.energy-m .energy-disc{animation:meet-m 7s ease-in-out infinite}
.energy-f .energy-disc{animation:meet-f 7s ease-in-out infinite}
.energy-label,.energy-f .energy-label{text-align:center;font-size:.8rem;min-height:2.9em}
.union{top:40%;height:116px;width:116px;transform:translate(-50%,-50%);animation:union-meet 7s ease-in-out infinite;z-index:3;gap:3px}
.union:hover,.union[aria-expanded=true]{transform:translate(-50%,-50%);background:#f5eadd}
.energy-reveal{position:relative;z-index:2;flex:0 0 auto;min-height:0;height:auto;margin:1.1rem 0 0;padding:1.1rem 1.25rem;background:#fbf9f2f5}
.art-foot{flex:0 0 auto;margin:1rem 0 0;line-height:1.55;z-index:2}
@keyframes meet-m{0%,14%,84%,100%{transform:translateX(0) scale(1)}42%,58%{transform:translateX(39px) scale(.93)}}
@keyframes meet-f{0%,14%,84%,100%{transform:translateX(0) scale(1)}42%,58%{transform:translateX(-39px) scale(.93)}}
@keyframes union-meet{0%,20%,80%,100%{box-shadow:0 15px 35px #755a3b24}48%,56%{box-shadow:0 0 0 10px #a4634820,0 15px 35px #755a3b24}}
@media(max-width:700px){.hero-art{height:auto;min-height:0;padding:2rem 1.1rem 1.6rem;justify-content:flex-start;gap:0}.energy-stage{min-height:245px;display:grid;grid-template-columns:1fr 1fr}.energy,.energy-f{position:relative;flex-direction:column;width:100%;height:auto;gap:.75rem}.energy-disc{height:auto;width:clamp(92px,27vw,110px)}.energy-label,.energy-f .energy-label{text-align:center;font-size:.76rem}.energy-label small{font-size:.67rem}.union{top:37%;width:95px;height:95px;font-size:.75rem}.union-symbol{height:21px;width:21px}.union small{font-size:.59rem}.energy-reveal{margin-top:1rem;min-height:0;height:auto;padding:1rem;font-size:.82rem}.art-foot{margin:1rem 0 0;font-size:.66rem}.orbit{height:45%;top:8%}}
@media(max-width:370px){.hero-art{padding:1.5rem .8rem 1.35rem}.energy-stage{min-height:230px}.union{width:87px;height:87px}.energy-disc{width:90px}}
@media(prefers-reduced-motion:reduce){.energy-m .energy-disc,.energy-f .energy-disc,.union{animation:none!important;will-change:auto}}

.guide-ornament{width:min(35vw,370px);height:min(35vw,370px);right:-3rem;top:50%;transform:translateY(-50%);color:#b67f5d55;pointer-events:none}
@media(max-width:700px){.guide-ornament{width:280px;height:280px;right:-5rem;top:50%;transform:translateY(-50%);opacity:.4}}

.social-links{display:flex;flex-wrap:wrap;gap:.45rem 1.25rem;align-content:start;font-size:.78rem;line-height:1.5}.social-links span{flex-basis:100%;color:#c4cbbf;text-transform:uppercase;letter-spacing:.14em;font-size:.67rem;font-weight:700}.social-links a{color:#edece3;text-underline-offset:3px}.social-inline,.person-social{font-size:.85rem;margin:1rem 0 1.5rem}.social-inline a,.person-social a{text-underline-offset:3px}.person-social{margin-top:1.3rem}.footer-end{margin-top:1.3rem}
@media(max-width:700px){.social-links{gap:.7rem 1rem}.social-links a{flex-basis:100%}}
