:root{--cream:#f7f3ee;--cream-dark:#ede7dc;--cream-darker:#e0d8cc;--white:#fff;--ink:#1c1917;--ink-soft:#44403c;--ink-muted:#78716c;--ink-faint:#a8a29e;--sage:#6b8f71;--sage-dark:#4e6e54;--sage-light:#a8c5ad;--sage-pale:#e8f0e9;--clay:#c07a52;--clay-dark:#9b5e38;--clay-light:#e8b99a;--clay-pale:#faf0eb;--sky:#5b8db8;--sky-dark:#3d6e96;--sky-light:#8fb3d4;--sky-pale:#ebf3fa;--blush:#c47b87;--blush-dark:#a55d6a;--blush-light:#dfa9b2;--blush-pale:#faebee;--gold:#b5873a;--gold-dark:#8e6520;--gold-light:#d4b06a;--gold-pale:#faf3e0;--plum:#7b5ea7;--plum-dark:#5c4188;--plum-light:#a98fcc;--plum-pale:#f0ebfa;--success:#4caf50;--warning:#ff9800;--error:#f44336;--info:var(--sky);--text-xs:0.68rem;--text-sm:0.78rem;--text-base:0.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:4px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-xl:32px;--radius-2xl:48px;--radius-pill:999px;--shadow-xs:0 1px 4px rgba(28,25,23,.05);--shadow-sm:0 2px 8px rgba(28,25,23,.06);--shadow-soft:0 2px 16px rgba(28,25,23,.07);--shadow-card:0 4px 32px rgba(28,25,23,.1);--shadow-hover:0 8px 48px rgba(28,25,23,.15);--shadow-modal:0 20px 80px rgba(28,25,23,.25);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-bounce:cubic-bezier(0.34,1.56,0.64,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--transition-fast:0.15s var(--ease-out);--transition-base:0.25s var(--ease-out);--transition-slow:0.4s var(--ease-out);--container-max:1180px;--container-pad:clamp(20px,5vw,60px);--section-pad:90px;--navbar-h:72px;--niche-mental-color:var(--sage);--niche-mental-pale:var(--sage-pale);--niche-couples-color:var(--blush);--niche-couples-pale:var(--blush-pale);--niche-life-color:var(--gold);--niche-life-pale:var(--gold-pale);--niche-business-color:var(--plum);--niche-business-pale:var(--plum-pale);--niche-astro-color:var(--gold);--niche-astro-pale:var(--gold-pale);--niche-fr-color:var(--sky);--niche-fr-pale:var(--sky-pale)}@font-face{font-family:Playfair Display Fallback;src:local("Georgia"),local("Times New Roman");size-adjust:105%;ascent-override:93%;descent-override:22%;line-gap-override:0%}@font-face{font-family:DM Sans Fallback;src:local("Arial"),local("Helvetica Neue"),local("Liberation Sans");size-adjust:100%;ascent-override:90%;descent-override:22%;line-gap-override:0%}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;text-size-adjust:100%;-webkit-text-size-adjust:100%}body{font-family:var(--font-body),"DM Sans Fallback",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);background-color:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;min-height:100vh}main{padding-top:var(--navbar-h)}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ol,ul{list-style:none}button{cursor:pointer;border:none;background:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-display),"Playfair Display Fallback",Georgia,"Times New Roman",serif;line-height:1.15;letter-spacing:-.02em;color:var(--ink)}h1{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:700;letter-spacing:-.03em}h2{font-size:clamp(1.8rem,3.5vw,2.8rem)}h2,h3{font-weight:600}h3{font-size:clamp(1.2rem,2vw,1.6rem)}h4{font-size:clamp(1rem,1.5vw,1.2rem);font-weight:600}p{color:var(--ink-soft);line-height:1.75}h1 em,h2 em,h3 em,h4 em{font-style:italic;color:var(--sage)}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad)}.section{padding:var(--section-pad) 0}.section--alt{background:var(--white)}.section--dark{background:var(--ink);color:var(--white)}.section--sage{background:var(--sage)}.section--cream{background:var(--cream)}.section--cream-dark{background:var(--cream-dark)}.section-header{text-align:center;max-width:640px;margin:0 auto var(--space-16)}.section-eyebrow{display:block;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--sage);margin-bottom:var(--space-3)}.section-title{margin-bottom:var(--space-4)}.section-desc{font-size:var(--text-md);color:var(--ink-soft);line-height:1.75}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-base);font-weight:500;line-height:1;padding:13px 26px;border-radius:var(--radius-pill);border:1.5px solid transparent;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;text-decoration:none}.btn--primary{background:var(--sage);color:var(--white);border-color:var(--sage);box-shadow:0 4px 18px rgba(107,143,113,.32)}.btn--primary:hover{background:var(--sage-dark);border-color:var(--sage-dark);transform:translateY(-2px);box-shadow:0 8px 28px rgba(107,143,113,.4)}.btn--secondary{background:transparent;color:var(--ink-soft);border-color:var(--cream-darker)}.btn--secondary:hover{border-color:var(--sage);color:var(--sage);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--sage);border-color:transparent;padding-left:0;padding-right:0;border-radius:0;border-bottom:1.5px solid var(--sage);padding-bottom:2px}.btn--ghost:hover{color:var(--sage-dark);border-color:var(--sage-dark)}.btn--dark{background:var(--ink);color:var(--white);border-color:var(--ink)}.btn--dark:hover{background:var(--ink-soft);border-color:var(--ink-soft);transform:translateY(-2px);box-shadow:0 8px 28px rgba(28,25,23,.25)}.btn--white{background:var(--white);color:var(--sage);border-color:var(--white)}.btn--white:hover{background:var(--cream);transform:translateY(-2px)}.btn--sm{font-size:var(--text-sm);padding:9px 18px}.btn--lg{font-size:var(--text-md);padding:16px 34px}.btn--icon{width:40px;height:40px;padding:0;border-radius:var(--radius-md)}.tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;padding:3px 9px;border-radius:var(--radius-pill);white-space:nowrap;letter-spacing:.02em}.tag--mental{background:var(--sage-pale);color:var(--sage-dark)}.tag--couples{background:var(--blush-pale);color:var(--blush-dark)}.tag--life{background:var(--gold-pale);color:var(--gold-dark)}.tag--business{background:var(--plum-pale);color:var(--plum-dark)}.tag--astro{background:var(--gold-pale);color:var(--gold-dark)}.tag--fr{background:var(--sky-pale);color:var(--sky-dark)}.tag--popular,.tag--service{background:var(--clay-pale);color:var(--clay-dark)}.tag--new{background:var(--sage-pale);color:var(--sage-dark)}.card{background:var(--white);border:.5px solid rgba(28,25,23,.08);border-radius:var(--radius-lg);padding:var(--space-8);transition:all var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:transparent}.card--flat{box-shadow:none;border:.5px solid var(--cream-dark)}.card--flat:hover{border-color:var(--sage-light);box-shadow:var(--shadow-soft)}.input{width:100%;padding:13px 16px;border-radius:var(--radius-md);border:1.5px solid var(--cream-darker);background:var(--white);font-family:var(--font-body);font-size:var(--text-base);color:var(--ink);transition:border-color var(--transition-fast);outline:none}.input::placeholder{color:var(--ink-faint)}.input:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(107,143,113,.12)}.input--pill{border-radius:var(--radius-pill);padding:13px 20px}.personal-city-input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid hsla(39,46%,61%,.25);background:#0b0f1e;font-family:var(--font-mono);font-size:14px;color:#e8dcc8;outline:none;transition:border-color .2s}.personal-city-input::placeholder{color:hsla(38,41%,85%,.35)}.personal-city-input:focus{border-color:hsla(39,46%,61%,.5);box-shadow:0 0 0 3px hsla(39,46%,61%,.08)}.divider{height:1px;background:var(--cream-dark);border:none;margin:var(--space-8) 0}.divider--dark{background:hsla(0,0%,100%,.08)}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:var(--space-6)}.grid-2,.grid-3{display:grid;gap:var(--space-6)}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:var(--space-6)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-6);gap:var(--space-6)}.eyebrow-badge{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--sage-pale);border:1px solid var(--sage-light);color:var(--sage);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;padding:6px 14px;border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase}.eyebrow-badge__dot{width:6px;height:6px;background:var(--sage);border-radius:50%;animation:pulseDot 2s infinite;flex-shrink:0}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.score-bar{height:6px;background:var(--cream-dark);overflow:hidden}.score-bar,.score-bar__fill{border-radius:var(--radius-pill)}.score-bar__fill{height:100%;background:linear-gradient(90deg,var(--sage),var(--sage-light));transition:width 1s var(--ease-out)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--ink-muted);margin-bottom:var(--space-6);flex-wrap:wrap}.breadcrumb a{color:var(--ink-muted);transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--sage)}.breadcrumb__sep{color:var(--ink-faint);font-size:.7rem}.breadcrumb__current{color:var(--ink-soft)}.quote-block{display:flex;gap:var(--space-4);align-items:flex-start}.quote-block__bar{width:3px;min-height:56px;background:var(--sage);border-radius:2px;flex-shrink:0;margin-top:3px}.quote-block__text{font-family:var(--font-display);font-size:var(--text-lg);font-style:italic;color:var(--ink);line-height:1.6;margin-bottom:var(--space-2)}.quote-block__author{font-size:var(--text-sm);color:var(--ink-muted);font-weight:500}.stat-block{display:flex;flex-direction:column;gap:2px}.stat-block__num{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;color:var(--ink);line-height:1}.stat-block__label{font-size:var(--text-xs);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-mono)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(0deg)}}@keyframes floatAlt{0%,to{transform:translateY(0) rotate(1.5deg)}50%{transform:translateY(-8px) rotate(0deg)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.animate-in{animation:fadeInUp .6s var(--ease-out) both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}@media (max-width:1024px){:root{--section-pad:70px}.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){:root{--section-pad:56px}.grid-2,.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr 1fr}}@media (max-width:480px){.grid-4{grid-template-columns:1fr}}.site-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.site-logo__img{width:36px;height:36px;object-fit:contain;border-radius:var(--radius-md);flex-shrink:0}.site-logo__text{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1}.site-logo__text span{color:var(--sage)}.site-logo--lg .site-logo__img{width:44px;height:44px}.site-logo--lg .site-logo__text{font-size:1.4rem}.site-logo--white .site-logo__text{color:var(--white)}.site-logo--white .site-logo__text span{color:var(--sage-light)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--cream-darker);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}::selection{background:var(--sage-pale);color:var(--sage-dark)}:focus-visible{outline:2px solid var(--sage);outline-offset:2px;border-radius:var(--radius-sm)}.section--dark :focus-visible{outline-color:var(--sage-light)}.prose{font-size:var(--text-md);line-height:1.8;color:var(--ink-soft);max-width:72ch}.prose h2{font-size:clamp(1.4rem,2.5vw,1.9rem);margin-top:var(--space-10);margin-bottom:var(--space-4)}.prose h3{font-size:clamp(1.1rem,1.8vw,1.4rem);margin-top:var(--space-8);margin-bottom:var(--space-3)}.prose p{margin-bottom:var(--space-5);text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto}.prose ol,.prose ul{list-style:disc;padding-left:var(--space-6);margin-bottom:var(--space-5)}.prose ol{list-style:decimal}.prose li{margin-bottom:var(--space-2)}.prose a{color:var(--sage);text-decoration:underline;text-underline-offset:3px}.prose a:hover{color:var(--sage-dark)}.prose strong{font-family:var(--font-display);font-weight:700;font-style:italic;color:var(--gold-dark);letter-spacing:-.01em}.prose em{font-style:italic;color:inherit}.prose blockquote{border-left:3px solid var(--sage);padding-left:var(--space-5);margin:var(--space-8) 0;font-family:var(--font-display);font-style:italic;font-size:var(--text-lg);color:var(--ink)}.prose code{font-family:var(--font-mono);font-size:.85em;background:var(--cream-dark);padding:2px 6px;border-radius:var(--radius-sm)}.prose img{width:100%;border-radius:var(--radius-lg);margin:var(--space-8) 0}.prose hr{border:none;border-top:1px solid var(--cream-dark);margin:var(--space-10) 0}.tool-disclaimer{font-size:var(--text-xs);color:var(--ink-faint);font-style:italic;line-height:1.6;padding:var(--space-3) var(--space-4);background:var(--cream);border-radius:var(--radius-md);border:.5px solid var(--cream-dark);margin-top:var(--space-5)}.fr-badge{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--white);border:1px solid rgba(91,141,184,.25);border-radius:var(--radius-pill);padding:6px 14px;font-size:var(--text-xs);font-weight:500;color:var(--sky);font-family:var(--font-mono)}.niche-tabs{justify-content:center;flex-wrap:wrap;margin-bottom:var(--space-12)}.niche-tab,.niche-tabs{display:flex;gap:var(--space-2)}.niche-tab{align-items:center;padding:9px 20px;border-radius:var(--radius-pill);border:1.5px solid var(--cream-dark);background:var(--white);font-size:var(--text-base);font-weight:500;color:var(--ink-soft);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-body)}.niche-tab:hover{border-color:var(--sage);color:var(--sage);transform:translateY(-1px)}.niche-tab.active{background:var(--sage);border-color:var(--sage);color:var(--white);box-shadow:0 4px 16px rgba(107,143,113,.28)}.step-circle{width:48px;height:48px;border-radius:50%;background:var(--white);border:1.5px solid var(--cream-dark);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--sage);margin:0 auto var(--space-5);flex-shrink:0;box-shadow:var(--shadow-soft);position:relative;z-index:1}.js-reveal [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;will-change:opacity,transform}.js-reveal [data-reveal].is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}:root{--transition-fast:0.01ms var(--ease-out);--transition-base:0.01ms var(--ease-out);--transition-slow:0.01ms var(--ease-out)}}