@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--green:#153c32;--ink:#202d28;--muted:#646c66;--border:#dce2de;--paper:#fff;--accent:#b09b59;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff;font-synthesis:none;letter-spacing:0}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%}[hidden]{display:none!important}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible{outline:3px solid #b49a4f;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400}h1{font-size:44px;line-height:1.1}h2{font-size:38px;line-height:1.2}h3{font-size:20px;font-weight:500}p{line-height:1.7}html{scroll-behavior:smooth;scroll-padding-top:100px}.announcement{background:var(--green);color:#fff;font-size:10px;text-align:center;padding:10px 20px}.announcement span{margin-left:25px;opacity:.8;font-size:11px}.site-header{height:94px;display:flex;align-items:center;gap:40px;padding:0 5%;background:white;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand span{font:26px Georgia,serif}.brand small{display:block;font:9px 'DM Sans',sans-serif;margin-top:6px}.site-header nav{display:flex;gap:32px;margin-left:auto;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid transparent;padding:15px 22px;border-radius:4px;font-size:13px;font-weight:600;min-height:48px;line-height:1.3}.primary{background:var(--green);color:#fff}.primary:hover{background:#245747}.light{background:white;color:var(--green)}.secondary{background:white;border-color:var(--border);color:var(--green)}.text-link{font-size:13px;text-decoration:underline;text-underline-offset:5px}.hero{position:relative;min-height:570px;display:flex;align-items:center;background:var(--green) url('../assets/astrology-editorial.png') center/cover no-repeat;color:white}.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,37,29,.88),rgba(9,37,29,.1) 78%)}.hero-content{position:relative;width:min(620px,100%);padding:56px 0 48px;margin-left:7%}.eyebrow{font-size:10px;font-weight:600;margin-bottom:20px;color:#647969}.hero .eyebrow{color:#d8ceac}.hero h1{font-size:72px;margin-bottom:16px}.hero-subtitle{font:36px/1.25 Georgia,serif;margin-bottom:24px}.hero-description{max-width:400px;font-size:14px;color:#e1e8e3}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:32px}.hero-footnote{font-size:11px;color:#d4ddce;margin-top:38px}.section{padding:75px 7%;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:36px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{display:flex;flex-direction:column;background:#f1f5f0;padding:26px;border-radius:4px;min-width:0;transition:transform .2s}.service-card:hover{transform:translateY(-4px)}.service-number{font-size:9px;color:#586c5a}.service-mark{height:64px;width:64px;object-fit:contain;margin:32px 0 25px}.service-symbol{height:64px;display:block;font:64px/1 Georgia,serif;margin:32px 0 25px;color:#9a6576}.service-card h3{font:23px/1.25 Georgia,serif}.service-card p{font-size:12px;color:#636c66;flex:1}.service-link{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #d4ded3;padding-top:20px;margin-top:12px;font-size:11px;font-weight:600}.rose{background:#faf0f2}.blue{background:#eef3f7}.blue .service-symbol{color:#467a8a}.gold{background:#f7f4e8}.gold .service-symbol{color:#987f35}.about{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:10%;align-items:center;background:#f5f7f5}.about>img{width:100%;height:450px;object-fit:cover;object-position:center 24%;border-radius:4px}.about p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:480px}.about .button{margin-top:12px}.journey{text-align:center}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px;text-align:left;margin-top:45px}.steps span{font:36px Georgia,serif;color:#96a692}.steps h3{margin:20px 0 12px}.steps p{font-size:13px;color:var(--muted)}.faq{background:#f5f7f5;display:grid;grid-template-columns:1fr 1.3fr;gap:10%}details{border-bottom:1px solid var(--border);padding:20px 0}summary{font-size:15px;cursor:pointer;line-height:1.5}details p{font-size:13px;color:var(--muted);margin:15px 0 0}footer{background:#112e27;color:#f2f4ef;padding:50px 7% 25px;display:flex;flex-wrap:wrap;gap:28px;align-items:center}footer p{font-size:12px;margin:0}footer nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:20px;font-size:12px}footer>small{width:100%;font-size:10px;color:#b4c0b8;border-top:1px solid #395047;padding-top:22px}.workspace,.booking{min-height:650px}.workspace h1,.booking h1{margin-bottom:16px}.section-heading p{color:var(--muted);font-size:14px}.form-panel{max-width:440px;width:100%;padding:12px}.auth-intro{background:#edf3ec;padding:48px}.auth-intro p{font-size:14px;max-width:310px;color:var(--muted)}.auth-intro img{margin-top:30px}#authPanel{display:grid;grid-template-columns:1fr 1fr;gap:7%;max-width:1000px}.segmented{display:flex;border-bottom:1px solid var(--border);margin-bottom:30px}.segmented button{flex:1;background:none;border:0;border-bottom:2px solid transparent;padding:15px 5px;font-size:14px}.segmented .active{border-color:var(--green);color:var(--green)}label{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:500;margin-bottom:20px}input,textarea,select{width:100%;border:1px solid #cad4cd;border-radius:4px;padding:12px;background:#fff;color:var(--ink);min-width:0;min-height:46px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid #809b85;outline-offset:2px}.form-panel>.button{width:100%}.plain-button{background:none;border:0;color:var(--green);padding:15px 0;text-decoration:underline;text-underline-offset:4px;font-size:12px}.form-note{font-size:11px;color:var(--muted);line-height:1.6}.form-note a{text-decoration:underline}.account-tabs{display:flex;gap:30px;overflow-x:auto;border-bottom:1px solid var(--border);margin:25px 0 30px}.account-tabs button{flex-shrink:0;padding:16px 0;border:0;background:white;color:var(--muted);font-size:14px;border-bottom:2px solid transparent}.account-tabs button[aria-selected=true]{color:var(--green);border-color:var(--green)}.empty{padding:50px 20px;background:#f4f7f3;text-align:center;border-radius:4px}.empty h2{font-size:27px}.empty p{font-size:13px;color:var(--muted)}.record{padding:24px 0;border-bottom:1px solid var(--border);display:flex;gap:25px;justify-content:space-between;align-items:center}.record h3{font-size:18px;margin-bottom:10px}.record p{font-size:12px;color:var(--muted);margin-bottom:0}.badge{font-size:11px;padding:6px 9px;background:#eff3ef;border-radius:3px;white-space:nowrap}.verification{background:#fff7d9;padding:16px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:13px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:65px}.booking-summary{background:#f0f5ef;padding:28px;align-self:start;position:sticky;top:20px;border-radius:4px}.booking-summary h2{font-size:28px}.booking-summary ul{padding-left:18px;line-height:2.3;font-size:12px}.booking-summary p{font-size:12px;color:var(--muted)}.booking-summary .button{width:100%;gap:12px}.check-label{display:block;font-size:11px;line-height:1.6;margin:22px 0}.check-label input{width:16px;height:16px;min-height:0;vertical-align:middle;margin:0 5px 0 0}.check-label a{text-decoration:underline}fieldset{border:0;border-top:1px solid var(--border);padding:24px 0 0;margin:20px 0}legend{font:23px Georgia,serif;padding-right:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.legal{max-width:1050px;min-height:600px}.legal p{color:var(--muted)}#status{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#183b31;color:white;padding:16px 24px;width:max-content;max-width:calc(100% - 32px);border-radius:5px;z-index:50;box-shadow:0 8px 30px #0003;font-size:13px;line-height:1.5}#status.error{background:#823b42}.profile-form{max-width:750px}.danger-zone{margin-top:40px;border-top:1px solid var(--border);padding-top:20px}.danger-zone button{color:#8c343c}.receipt-row{min-width:0;overflow-wrap:anywhere}.mobile-bottom-nav{display:none}
@media(min-width:1600px){.hero{min-height:620px}.section{padding-left:max(7%,calc((100% - 1380px)/2));padding-right:max(7%,calc((100% - 1380px)/2))}}
@media(max-width:1000px){.site-header{gap:20px;padding:0 5%}.header-book{display:none}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about{gap:6%}.about>img{height:380px}.booking-layout{gap:30px;grid-template-columns:minmax(0,1fr) 290px}.section{padding:55px 5%}.hero-content{margin-left:5%}.hero h1{font-size:62px}}
@media(max-width:640px){.announcement{font-size:9px}.announcement span{display:none}.site-header{height:78px;gap:10px}.brand{gap:7px}.brand span{font-size:22px}.brand img{width:34px;height:34px}.site-header nav{gap:15px;font-size:12px}.site-header nav>a:first-child{display:none}.hero{min-height:550px;background-position:62% center}.hero::before{background:rgba(10,36,28,.62)}.hero-content{padding:45px 6%;margin:0}.hero h1{font-size:50px}.hero-subtitle{font-size:30px}.hero-description{font-size:13px;max-width:320px}.hero-actions{gap:22px;flex-wrap:wrap}.hero-actions .button{font-size:12px}.hero-footnote{font-size:10px}.section{padding:44px 6%}.section-heading{display:block}.section-heading>p{margin-top:20px}h1{font-size:35px}h2{font-size:31px}.service-grid{gap:12px}.service-card{padding:20px 15px}.service-card h3{font-size:21px}.service-card p{font-size:11px}.service-link{font-size:10px}.service-number{font-size:8px}.about{grid-template-columns:1fr;gap:30px}.about>img{height:340px}.steps{grid-template-columns:1fr;gap:30px}.steps>div{border-top:1px solid var(--border);padding-top:20px}.faq{grid-template-columns:1fr;gap:8px}footer{padding:38px 6%;gap:22px}footer nav{width:100%;margin:0;gap:18px}#authPanel{grid-template-columns:1fr;gap:20px}.auth-intro{padding:28px}.auth-intro h2{font-size:28px}.auth-intro img{display:none}.form-panel{padding:0;max-width:none}.booking-layout{grid-template-columns:1fr;gap:25px}.booking-summary{position:static}.account-tabs{gap:20px}.account-tabs button{font-size:12px}.record{flex-wrap:wrap;gap:12px}.form-grid{grid-template-columns:1fr 1fr;gap:0 12px}.verification{gap:10px}.workspace{min-height:650px}body.native-app{padding-top:env(safe-area-inset-top);padding-bottom:calc(65px + env(safe-area-inset-bottom))}body.native-app .announcement,body.native-app footer{display:none}body.native-app .mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;background:white;display:flex;justify-content:space-around;border-top:1px solid var(--border);padding:12px 8px calc(12px + env(safe-area-inset-bottom));z-index:30;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card{transition:none}}
.native-app .auth-intro{display:none}.native-app #authPanel{display:block}.native-app .workspace{padding-top:28px}.native-app .workspace h1{font-size:28px}.native-app .form-panel{max-width:520px;margin:auto}
