@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400&family=Raleway:wght@400;500;600;700&display=swap');
/* Tokens, logo, typography and component proportions from the local Belgi theme. */
:root{--paper:#fcf5ef;--white:#fffaf6;--ink:#302329;--muted:#70615e;--rose:#b87775;--plum:#754d55;--line:#dfcec5;--blue:#416a8d;--orange:#ad5534;--serif:'Lora',Georgia,serif;--sans:'Raleway',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.8 var(--sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{background:none;border:0;color:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--plum);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2}h1{font-size:clamp(42px,4.8vw,66px);letter-spacing:-1.6px}h2{font-size:38px;letter-spacing:-.7px}h3{font-size:26px}em{color:var(--rose);font-weight:400}svg{display:block}[hidden]{display:none!important}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:#925d62}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:16px;z-index:20;background:white;padding:12px}.skip-link:focus{top:12px}.site-header{border-bottom:1px solid #eadfd8}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:112px;padding-block:10px}.brand{width:200px;flex-shrink:0}.brand img{width:100%;height:auto;max-height:92px;object-fit:contain;display:block}.site-header nav{display:flex;gap:30px}.site-header nav a{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.site-header nav a:hover{color:var(--plum)}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;padding-block:55px 48px}.hero .eyebrow{margin-bottom:22px}.hero-intro{color:var(--muted);font-size:16px;max-width:470px;margin:22px 0 28px;line-height:1.85}.hero-art{width:100%;max-width:340px;height:auto;justify-self:center}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:50px;padding:14px 25px;border-radius:999px;font:600 11px/1.5 var(--sans);letter-spacing:1px;text-transform:uppercase;transition:background .18s;color:#fff;background:var(--rose);border:1px solid transparent}.button:hover{background:#9f615f}.button:disabled{opacity:.65}.button span{font-size:18px;line-height:1}.full{width:100%;justify-content:space-between;margin-top:8px}.small-link{font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#cbbab0;padding:0;color:var(--plum)}.calculator-section{padding-bottom:66px;scroll-margin-top:20px}.calculator-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:26px;align-items:start}.form-card,.result-area{border:1px solid #eadfd8;background:var(--white);border-radius:14px;padding:28px;min-width:0}.card-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.card-heading h2{font-size:28px}.field{margin-bottom:18px}.field label{display:block;font-size:12px;font-weight:600;margin-bottom:6px}.field input{display:block;width:100%;min-width:0;min-height:48px;border:1px solid #cdb8ad;border-radius:8px;background:#fffdfb;padding:12px;color:var(--ink);font-size:14px}.field input::placeholder{color:#95857f}.field input[aria-invalid=true]{border-color:#b34040;background:#fff4f2}.field-error{display:block;font-size:12px;line-height:1.5;color:#8b3030;margin-top:5px}.field-error:empty{display:none}.example-button{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:var(--plum);padding:13px 0 0;text-align:left;text-decoration:underline;text-decoration-color:#cbbab0;text-underline-offset:4px}.example-button:hover{color:#603d44;text-decoration-color:currentColor}.privacy{font-size:10px;color:var(--muted);padding-top:18px;line-height:1.6}.result-top{display:flex;justify-content:space-between;align-items:start;gap:12px}.result-top h2{font-size:27px;overflow-wrap:anywhere;margin:8px 0}.result-top p:not(.eyebrow){font-size:12px}.result-badge{font-size:10px;color:var(--plum);background:#f2e5dd;border-radius:20px;padding:4px 9px;white-space:nowrap}.result-actions{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap;margin-top:20px}.result-actions .button{min-height:44px;padding:12px 19px;font-size:10px;gap:9px}.secondary-button{background:transparent;border-color:var(--line);color:var(--plum)}.secondary-button:hover{background:#f2e5dd;border-color:var(--rose)}.pdf-button{background:var(--plum)}.pdf-button:hover{background:#603d44}.pdf-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#action-status{font-size:11px;color:var(--plum);width:100%;line-height:1.5}#action-status:empty{display:none}.matrix{position:relative;aspect-ratio:1;width:100%;max-width:515px;margin:16px auto}.matrix>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.geometry{fill:none;stroke:#c6aaa2;stroke-width:.28}.geometry.faint{stroke:#d6bdb0;stroke-width:.2}.matrix-node{position:absolute;width:8.5%;aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid #a6b8c3;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--white);padding:0}.matrix-node span{font-size:10px;color:var(--blue);line-height:1.15}.matrix-node strong{font:400 clamp(17px,1.9vw,25px)/1.15 var(--serif);color:var(--orange)}.matrix-node:hover:not(:disabled),.matrix-node[aria-pressed=true]{background:#f2e5dd;border-color:var(--rose)}.matrix.empty .geometry{opacity:.5}.matrix.empty .matrix-node{border-color:#dfcec5;background:#fcf5ef}.matrix.empty strong{color:#bfaba1}.map-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:10px}.map-legend span{display:flex;gap:6px;align-items:center}.blue-dot,.orange-dot{width:5px;height:5px;border-radius:50%;background:var(--blue);display:inline-block}.orange-dot{background:var(--orange)}.map-hint{font-size:11px;text-align:center;color:var(--muted);margin-top:10px}.map-hint:empty{display:none}.complete-reading{padding-bottom:58px}.reading-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:24px}.reading-heading>p{font-size:13px;color:var(--muted)}.reading-nav{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line);padding:20px 0 26px}.reading-nav a{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:11px;color:var(--plum);background:var(--white)}.reading-nav a:hover{background:#f2e5dd}.reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reading-card{padding:25px 28px;border:1px solid #eadfd8;border-radius:14px;background:var(--white);scroll-margin-top:28px;min-width:0}.reading-card-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:17px;padding-bottom:14px;border-bottom:1px solid #eadfd8}.reading-card-head h3{font-size:27px}.reading-arcana{font-size:10px;color:var(--blue);display:flex;align-items:center;gap:9px}.reading-arcana strong{font:400 33px var(--serif);color:var(--orange)}.detail-block{font-size:14px;line-height:1.85;color:var(--muted)}.reading-energy{margin-top:16px;padding-top:14px;border-top:1px solid #eadfd8}.detail-label{font-weight:600;color:var(--plum);font-size:10px;letter-spacing:1px;text-transform:uppercase;display:block;margin-bottom:5px}.pending-text{font-size:12px;color:#7f5a34}.back-link{display:inline-block;margin-top:25px}.method-section{padding-bottom:58px}.method-section details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.method-section summary{list-style:none;cursor:pointer;padding:22px 0;font:400 25px var(--serif);display:flex;justify-content:space-between;align-items:center}.method-section summary::-webkit-details-marker{display:none}.method-section summary:after{content:'+';color:var(--plum)}.method-section details[open] summary:after{content:'−'}.method-content{max-width:800px;padding:0 0 24px;color:var(--muted);font-size:14px}.method-content p{margin-top:15px}.method-note{font-size:12px}.alphabet{display:grid;grid-template-columns:repeat(9,1fr);gap:8px;margin:20px 0}.alphabet>div{text-align:center;border:1px solid var(--line);border-radius:6px;padding:8px 4px;font-size:11px}.alphabet b{display:block;color:var(--plum);font-size:14px}.site-footer{background:#efe2d9;padding:27px 0;color:#48353b;font-size:12px}.site-footer>.wrap{display:flex;justify-content:space-between;gap:20px}.site-footer a{text-decoration:underline;text-decoration-color:#cbbab0;text-underline-offset:4px}.noscript{text-align:center;padding:20px}
@media(max-width:950px){.hero{gap:35px}.calculator-layout{grid-template-columns:300px minmax(0,1fr);gap:20px}.form-card,.result-area{padding:23px}.result-top{flex-wrap:wrap}.matrix-node span{font-size:8px}.matrix-node strong{font-size:20px}.reading-card{padding:24px}}
@media(max-width:800px){.calculator-layout{grid-template-columns:1fr}.form-card form{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.full{grid-column:1/-1}.result-top{flex-wrap:nowrap}.matrix-node span{font-size:10px}.matrix-node strong{font-size:25px}.hero{gap:20px}.hero-art{max-width:260px}.hero h1{font-size:48px}.reading-heading{display:block}.reading-heading p{margin-top:12px}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:90px;gap:16px}.brand{width:150px}.site-header nav{gap:14px}.site-header nav a{font-size:9px;letter-spacing:.5px}.site-header nav a:last-child{display:none}.hero{grid-template-columns:1fr;text-align:center;gap:0;padding:32px 0 24px}.hero h1{font-size:clamp(37px,10vw,48px);line-height:1.14;letter-spacing:-1.1px}.hero .eyebrow{margin-bottom:18px}.hero-intro{font-size:14px;max-width:38ch;margin:20px auto 22px}.hero-art{max-width:210px;margin-top:18px}.hero .button{min-width:245px}.calculator-section{padding-bottom:42px}.form-card,.result-area{padding:23px 20px}.form-card form{display:block}.field input{font-size:16px}.result-top{flex-wrap:wrap}.result-top h2{font-size:25px}.result-badge{font-size:9px}.result-actions .button{font-size:9px;padding-inline:16px}.result-actions{gap:12px}.matrix{margin-block:18px}.matrix-node{width:9.4%}.matrix-node span{font-size:7px}.matrix-node strong{font-size:18px}.map-legend{font-size:9px;gap:10px}.map-hint{font-size:10px}.reading-heading h2{font-size:34px}.reading-grid{grid-template-columns:1fr;gap:16px}.reading-card{padding:22px}.reading-card-head h3{font-size:26px}.detail-block{font-size:14px}.reading-nav a{width:34px;height:34px}.complete-reading{padding-bottom:40px}.alphabet{grid-template-columns:repeat(3,1fr)}.method-section{padding-bottom:36px}.method-section summary{font-size:23px}.site-footer{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Diagram: emphasis follows the existing eight outer, eight middle and six base positions. */
.matrix{isolation:isolate;background:radial-gradient(circle at center,#fffaf6 0 19%,#f9f0e9 72%,#fffaf6 100%);border-radius:50%}
.matrix>svg{z-index:0;overflow:visible}.matrix .geometry{stroke-width:.24;stroke:#cfaea8}.matrix .geometry.outer{stroke:#dbc7bd;stroke-width:.21}.matrix .geometry.major{stroke:#bd8e8d;stroke-width:.38}.matrix .geometry.middle{stroke:#c5b1b5;stroke-width:.24}.matrix .geometry.inner{stroke:#cbb5a9;stroke-width:.26}.matrix .geometry.core{stroke:#bca1a0;stroke-width:.3}.matrix .geometry.axis{stroke:#d3c1b9;stroke-width:.18}.matrix-heart-ring{fill:#fff6ec;stroke:#d6c3b2;stroke-width:.25}.matrix-heart{fill:none;stroke:#b87775;stroke-width:.42;stroke-linecap:round}
.matrix-node{z-index:1;width:8.5%;border-width:1.2px;background:#fffaf6;box-shadow:0 4px 12px #30232914;transition:transform .18s,box-shadow .18s,background .18s}.matrix-node span{font:700 clamp(8px,.8vw,10px)/1.15 var(--sans);letter-spacing:.01em}.matrix-node strong{font-weight:500}.matrix:not(.empty) .matrix-node--base{background:#f9ecdb;border-color:#d4ad86}.matrix:not(.empty) .matrix-node--base span{color:#825541}.matrix:not(.empty) .matrix-node--base strong{color:#6d3c35}.matrix:not(.empty) .matrix-node--middle{background:#e7f0f4;border-color:#aac8d5}.matrix:not(.empty) .matrix-node--middle span{color:#3e6883}.matrix:not(.empty) .matrix-node--middle strong{color:#234e69}.matrix:not(.empty) .matrix-node--outer{background:#f3e4e3;border-color:#ccaaa8}.matrix:not(.empty) .matrix-node--outer span{color:#805059}.matrix:not(.empty) .matrix-node--outer strong{color:#7f4550}
.matrix:not(.empty) .matrix-node--cardinal{width:10%;border-color:transparent;box-shadow:0 5px 18px #48324430}.matrix:not(.empty) .matrix-node--cardinal span,.matrix:not(.empty) .matrix-node--cardinal strong{color:#fff}.matrix:not(.empty) .matrix-node--house-18{background:#805fc1}.matrix:not(.empty) .matrix-node--house-16{background:#7158ae}.matrix:not(.empty) .matrix-node--house-20{background:#b66561}.matrix:not(.empty) .matrix-node--house-14{background:#af765b}
.matrix .matrix-node:hover:not(:disabled){transform:translate(-50%,-50%) scale(1.08);box-shadow:0 6px 20px #30232930}.matrix .matrix-node[aria-pressed=true]{box-shadow:0 0 0 4px #fffaf6,0 0 0 7px #754d55,0 6px 19px #30232924}.matrix.empty{background:none}.matrix.empty .matrix-node{background:#fcf5ef;box-shadow:none;border-color:#dfcec5}.matrix.empty .matrix-node span{color:#416a8d}.matrix.empty .matrix-node strong{color:#bfaba1}.matrix.empty .matrix-heart-ring{opacity:.45}.matrix-node:focus-visible{outline:3px solid #754d55;outline-offset:4px}
@media(max-width:950px){.matrix-node{min-width:31px}.matrix:not(.empty) .matrix-node--cardinal{min-width:36px}}
@media(max-width:600px){.matrix-node{min-width:28px}.matrix:not(.empty) .matrix-node--cardinal{min-width:34px}.matrix-node span{font-size:7px}.matrix-node strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){.matrix-node{transition:none}}
.map-legend{align-items:center;gap:8px;text-align:center}.map-legend>span{display:inline;color:var(--rose);font-weight:700}
.calculator-layout:not(.has-result){display:flex;justify-content:center}.calculator-layout:not(.has-result) .form-card{width:min(100%,520px)}
.full{justify-content:center}
.field input:focus,.field input:focus-visible{outline:none;border-color:#9f737a;box-shadow:0 0 0 2px #754d5526}
.field input[aria-invalid=true]:focus,.field input[aria-invalid=true]:focus-visible{border-color:#b34040;box-shadow:0 0 0 2px #b3404026}
.reading-card{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.reading-card.is-selected{border-color:#b87775;background:#fffdfb;box-shadow:0 12px 30px #48353b1f,0 0 0 2px #b8777529}
.reading-nav a[aria-current=true]{border-color:var(--rose);background:#f2e5dd;color:var(--plum)}
@media(max-width:800px){.reading-nav a{width:44px;height:44px;font-size:12px}}
@media(max-width:680px){.reading-grid{grid-template-columns:1fr}}
@media(max-width:600px){
  .result-area{padding:22px 12px}
  .site-header nav a{display:inline-flex;align-items:center;min-height:44px;font-size:10px}
  .card-heading .small-link,.back-link{display:inline-flex;align-items:center;min-height:44px}
  .example-button{min-height:48px}
  .map-legend{font-size:10px;line-height:1.5}
  .map-hint{font-size:11px}
  .reading-nav{gap:8px}
  .reading-nav a{width:44px;height:44px;font-size:12px}
}
@media(max-width:360px){.hero-art{max-width:180px}.hero h1{font-size:clamp(34px,10vw,40px)}.result-actions .button{width:100%}}
@media(min-width:521px) and (max-width:600px){.form-card form{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.form-card .full{grid-column:1/-1}}
