:root{--plum:#5b365d;--plum2:#351d3b;--coral:#ef6a5b;--lav:#d9cdf1;--cream:#f7f1e9;--paper:#fffdf8;--ink:#33283a;--muted:#7b717e;--line:#ddd5dc;--yellow:#f4dc6b;--shadow:0 24px 70px rgba(64,39,66,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:3px}button,input,select{font:inherit}.icon{width:1.2em;height:1.2em;flex:none}.shell{width:min(1160px,calc(100% - 44px));margin:auto}.narrow{width:min(850px,calc(100% - 44px))}.skip-link{position:fixed;z-index:99;top:0;left:10px;padding:10px;background:var(--yellow);clip-path:inset(100%)}.skip-link:focus{top:10px;clip-path:none}.site-header{color:white;background:var(--plum);border-bottom:1px solid rgba(255,255,255,.15)}.header-inner{min-height:79px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;color:white;text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--coral);border-radius:50%}.brand-mark .icon{width:24px;height:24px}.brand>span:last-child{display:grid;line-height:1.02}.brand strong{font-size:13px}.brand b{color:var(--yellow);font-size:9px;letter-spacing:.17em;text-transform:uppercase}.site-header nav{display:flex;gap:30px}.site-header nav a{color:#d1c3d4;font-size:12px;font-weight:750;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--yellow)}.header-cta{display:flex;align-items:center;gap:8px;color:var(--yellow);font-size:12px;font-weight:850}
.hero{overflow:hidden;color:white;background:radial-gradient(circle at 10% 88%,rgba(244,220,107,.1) 0 130px,transparent 132px),linear-gradient(110deg,var(--plum) 0 67%,#704c72 67%)}.hero-grid{min-height:635px;display:grid;grid-template-columns:1fr .92fr;align-items:center;gap:85px;padding-block:70px 80px}.kicker,.chapter{margin:0 0 14px;color:var(--yellow);font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.kicker.plum,.chapter{color:#714b73}h1,h2,h3,p{margin-top:0}.hero h1,.subhero h1,.not-found h1{margin-bottom:24px;font:500 clamp(55px,6.7vw,86px)/.94 Georgia,serif;letter-spacing:-.055em}.hero h1 em,.subhero h1 em{color:var(--yellow);font-style:italic}.hero-grid>div:first-child>p:not(.kicker){max-width:580px;margin-bottom:29px;color:#dfd1e1;font-size:18px}.button{display:inline-flex;min-height:50px;align-items:center;gap:9px;padding:12px 22px;text-decoration:none;font-size:13px;font-weight:850}.button.coral{color:white;background:var(--coral);box-shadow:8px 8px 0 var(--yellow)}.hero-facts{display:flex;gap:30px;margin-top:38px}.hero-facts span{display:grid}.hero-facts b{color:var(--yellow);font:500 22px Georgia,serif}.hero-facts small{color:#b49db7;font-size:8px}.hero-calendar{position:relative;padding:29px;color:var(--ink);background:var(--paper);box-shadow:13px 13px 0 var(--coral);transform:rotate(1deg)}.calendar-head{display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:2px solid var(--plum);font-size:8px;font-weight:900;letter-spacing:.1em}.calendar-head b{color:var(--coral)}.calendar-line{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;margin:34px 0}.calendar-line article{display:grid;text-align:center}.calendar-line i{color:var(--plum);font:600 20px Georgia,serif}.calendar-line b{font-size:9px}.calendar-line small{color:var(--muted);font-size:7px}.calendar-line>span{height:2px;background:var(--lav)}.calendar-line .birth i{color:var(--coral)}.calendar-total{display:flex;align-items:center;gap:13px;padding:17px;background:#eee8f2}.calendar-total strong{color:var(--plum);font:500 43px Georgia,serif}.calendar-total span{color:var(--muted);font-size:9px}.circle-note{position:absolute;right:-27px;bottom:-35px;width:85px;height:85px;display:grid;place-items:center;color:var(--plum);background:var(--yellow);border-radius:50%;font:600 20px/1 Georgia,serif;text-align:center;transform:rotate(-8deg)}.circle-note small{font:8px sans-serif}.trust-strip{color:white;background:#724d74}.trust-strip>div{min-height:90px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:20px}.trust-strip span{display:flex;align-items:center;gap:8px;color:#d5c8d7;font-size:9px}.trust-strip b{color:white}.trust-strip .icon{color:var(--yellow)}
.calculator-section{padding:105px 0 115px}.section-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:70px;margin-bottom:43px}.section-heading h2{margin:0;font:500 clamp(42px,5vw,63px)/1 Georgia,serif;letter-spacing:-.05em}.section-heading>p{max-width:470px;margin:0;color:var(--muted);font-size:14px}.calculator-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.input-card,.result-card{padding:31px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.card-head span{color:#774f79;font-size:8px;font-weight:900;letter-spacing:.14em}.card-head b{font-size:17px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:11px}.field{display:grid;gap:7px;margin-bottom:18px}.field>span{color:var(--muted);font-size:9px;font-weight:750}.field>span i{font-weight:400}.field input,.field select,.unit-input{width:100%;min-height:53px;color:var(--ink);background:#f2edf3;border:1px solid var(--line);border-radius:5px;outline:0}.field input,.field select{padding:0 12px;font-size:11px;font-weight:700}.unit-input{display:flex;align-items:center;padding:0 12px}.unit-input input{min-width:0;border:0;background:transparent;font-size:17px}.unit-input b{color:var(--plum);font-size:9px}.field input:focus,.field select:focus,.unit-input:focus-within{border-color:var(--plum);box-shadow:0 0 0 3px rgba(91,54,93,.12)}.form-error{min-height:18px;margin:2px 0;color:#a3392e;font-size:9px;font-weight:750}.privacy-note{display:flex;gap:7px;margin:14px 0 0;color:var(--muted);font-size:8px}.result-card{color:white;background:var(--plum);border-color:var(--plum)}.card-head.inverse span{color:var(--yellow)}.total-result{display:grid;padding-bottom:23px;border-bottom:1px solid rgba(255,255,255,.15)}.total-result span{color:#c0aec2;font-size:8px;text-transform:uppercase}.total-result strong{margin:3px 0;color:var(--yellow);font:500 47px Georgia,serif}.total-result small{color:#ad99b0}.payment-list{margin:14px 0}.payment-list>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}.payment-list dt{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 9px;font-size:10px}.payment-list dt i{grid-row:1/3;width:27px;height:27px;display:grid;place-items:center;color:var(--plum);background:var(--yellow);border-radius:50%;font-style:normal;font-weight:850}.payment-list dt small{color:#a994ac;font-size:7px}.payment-list dd{margin:0;font-weight:850}.result-note{display:flex;gap:8px;margin:15px 0 0;padding:13px;color:#6e5930;background:#fff0b8;font-size:8px}.period-card{margin-top:20px;padding:31px;background:var(--paper);border:1px solid var(--line)}.period-top{display:flex;justify-content:space-between;align-items:end}.period-top h2{margin:0;font:500 32px Georgia,serif}.period-top>b{color:var(--coral);font:500 28px Georgia,serif}.period-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:start;margin:35px 0 23px}.period-track article{display:grid;justify-items:center}.period-track i{width:15px;height:15px;background:var(--plum);border-radius:50%;outline:4px solid var(--lav)}.period-track .birth-point i{background:var(--coral);outline-color:#ffd8d2}.period-track strong{margin-top:9px;font-size:10px}.period-track article span{color:var(--muted);font-size:7px}.period-track>b{position:relative;height:3px;margin-top:6px;background:var(--lav)}.period-track>b.post{background:#f5b2aa}.period-track>b span{position:absolute;top:-20px;left:50%;color:var(--muted);font-size:7px;transform:translateX(-50%)}.period-card>p{margin:0;color:var(--muted);font-size:9px}
.explain-section{padding:105px 0 115px;color:white;background:var(--plum2)}.inverse-heading h2{color:white}.inverse-heading>a{display:flex;align-items:center;gap:8px;color:var(--yellow);font-size:12px;font-weight:850}.explain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.explain-grid article{min-height:235px;padding:27px;background:#44274a;border:1px solid #644769}.explain-grid article>span{color:var(--yellow);font-size:9px}.explain-grid h3{margin:65px 0 9px;font:500 24px Georgia,serif}.explain-grid p{color:#ad99b0;font-size:10px}
.subhero{padding:100px 0 95px;color:white;background:var(--plum)}.subhero.compact{padding-block:72px}.subhero>div>p:last-child{color:#d8cbd9;font-size:18px}.prose{max-width:870px;padding-block:85px 115px}.prose section{margin-bottom:70px}.prose h2,.legal h2{margin-bottom:17px;font:500 40px/1.08 Georgia,serif;letter-spacing:-.04em}.prose p,.prose li,.legal p{color:var(--muted);font-size:17px;line-height:1.75}.formula{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:25px 0;padding:22px;color:white;background:var(--plum);text-align:center}.formula i{color:#c8b7ca}.formula strong{color:var(--yellow)}.sources{padding:29px;background:#f0e7f1}.sources li{font-size:13px}.sources a,.legal a{color:#714b73;font-weight:750}.faq-list{max-width:900px;padding-block:75px 110px}.faq-list details{border-top:1px solid var(--line);background:var(--paper)}.faq-list summary{position:relative;padding:24px 52px 24px 6px;cursor:pointer;list-style:none;font:500 23px Georgia,serif}.faq-list summary:after{position:absolute;right:15px;color:var(--coral);content:"+"}.faq-list details[open] summary:after{content:"−"}.faq-list details>div{max-width:760px;padding:0 52px 25px 6px;color:var(--muted)}.legal{max-width:800px;padding-block:80px 110px}.legal section{margin-bottom:44px}.legal h2{font-size:29px}.legal p{font-size:16px}.not-found{min-height:620px;display:grid;place-items:center;padding:80px 0;color:white;background:var(--plum);text-align:center}.not-found span{color:var(--yellow);font-size:9px}.not-found h1{margin-top:16px}
.site-footer{color:#b6a8ba;background:#170d1b}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:70px;padding-block:65px 50px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-grid p{margin:10px 0 0;color:#746478;font-size:11px}.footer-grid>div>b{color:var(--yellow);font-size:9px}.footer-grid a:not(.brand){font-size:11px;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;padding-block:18px;color:#66566a;border-top:1px solid #342438;font-size:9px}
@media(max-width:720px){.shell,.narrow{width:min(100% - 30px,1160px)}.header-inner{min-height:68px}.site-header nav{display:none}.header-cta{font-size:0}.hero-grid{min-height:auto;grid-template-columns:1fr;gap:45px;padding-block:55px 70px}.hero h1,.subhero h1{font-size:49px}.hero-grid>div:first-child>p:not(.kicker){font-size:16px}.hero-calendar{padding:22px;box-shadow:8px 8px 0 var(--coral)}.circle-note{right:-5px}.trust-strip>div{grid-template-columns:1fr;gap:10px;padding-block:18px}.calculator-section{padding-block:72px 82px}.section-heading{grid-template-columns:1fr;gap:17px}.section-heading h2{font-size:43px}.calculator-grid{grid-template-columns:1fr}.input-card,.result-card,.period-card{padding:23px}.field-pair{grid-template-columns:1fr}.period-top{align-items:flex-start;flex-direction:column}.period-track{grid-template-columns:1fr}.period-track>b{width:3px;height:42px;margin:5px auto}.period-track>b span{top:50%;left:12px;white-space:nowrap;transform:translateY(-50%)}.explain-section{padding-block:75px 82px}.explain-grid{grid-template-columns:1fr}.subhero{padding-block:70px}.prose{padding-block:65px 90px}.prose h2{font-size:34px}.formula{grid-template-columns:1fr}.faq-list{padding-block:55px 80px}.footer-grid{grid-template-columns:1fr 1fr;gap:38px 25px}.footer-grid>div:first-child{grid-column:1/-1}}@media(max-width:420px){.hero h1,.subhero h1{font-size:43px}.hero-facts{flex-direction:column;gap:8px}.calendar-line{grid-template-columns:1fr}.calendar-line>span{width:2px;height:18px;margin:auto}.total-result strong{font-size:39px}.footer-bottom{flex-direction:column;gap:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
