:root{--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#86868b;--bg-white:#fff;--bg-light:#fbfbfd;--bg-alt:#f5f5f7;--bg-dark:#1d1d1f;--border:#e5e5e7;--border-strong:#d2d2d7;--accent:#0071e3;--accent-hover:#0077ed;--accent-soft:#0071e314;--success:#34c759;--warning:#ff9500;--font-main:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--max-width:1200px;--content-padding:clamp(20px, 5vw, 48px);--section-padding:clamp(60px, 10vh, 120px);--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-pill:980px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-main);color:var(--text-primary);background:var(--bg-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:17px;line-height:1.5}a{color:inherit;text-decoration:none;transition:color .2s}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img,video{max-width:100%;display:block}h1,h2,h3{color:var(--text-primary);letter-spacing:-.02em;font-weight:600;line-height:1.1}h1{font-size:clamp(36px,7vw,72px);font-weight:600}h2{font-size:clamp(28px,4.5vw,48px)}h3{letter-spacing:-.01em;font-size:clamp(18px,2vw,22px)}p{color:var(--text-secondary);line-height:1.6}em{color:var(--text-primary);font-style:italic;font-weight:500}code{background:var(--bg-alt);border-radius:4px;padding:1px 6px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:.9em}input,textarea,select{font-family:inherit;font-size:16px}.container{width:100%;max-width:var(--max-width);padding:0 var(--content-padding);margin:0 auto}.nav{z-index:1000;padding:0 var(--content-padding);-webkit-backdrop-filter:saturate(180%)blur(20px);background:#ffffffc7;border-bottom:1px solid #0000000a;justify-content:space-between;align-items:center;height:56px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{letter-spacing:-.3px;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:50vw;font-size:15px;font-weight:600;overflow:hidden}.nav-links{align-items:center;gap:36px;display:flex}.nav-link{color:var(--text-primary);opacity:.7;padding:6px 0;font-size:14px;font-weight:400;transition:opacity .2s}.nav-link:hover,.nav-link-active{opacity:1}.nav-cta{color:var(--bg-white);background:var(--text-primary);border-radius:var(--radius-pill);padding:8px 18px;font-size:14px;font-weight:500;transition:background .2s,transform .2s}.nav-cta:hover{background:#333;transform:scale(1.02)}.nav-toggle{flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:6px;display:none}.nav-toggle span{background:var(--text-primary);border-radius:2px;height:2px;transition:transform .2s,opacity .2s;display:block}.page-fade{animation:.4s fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.footer{background:var(--bg-light);padding:32px var(--content-padding);border-top:1px solid var(--border);text-align:center}.footer-copy{color:var(--text-tertiary);font-size:13px}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:13px;font-weight:500;display:inline-block}.link-text{color:var(--accent);margin-top:8px;font-size:15px;font-weight:500;transition:transform .2s;display:inline-block}.link-text:hover{color:var(--accent-hover);transform:translate(2px)}.section{padding:var(--section-padding) var(--content-padding)}.section-white{background:var(--bg-white)}.section-light{background:var(--bg-light)}.section-alt{background:var(--bg-alt)}.section-tight{padding-top:clamp(40px,6vh,80px);padding-bottom:clamp(40px,6vh,80px)}.section-row{max-width:var(--max-width);align-items:center;gap:clamp(40px,6vw,96px);margin:0 auto;display:flex}.section-row>*{flex:1}.section-row.section-reverse{flex-direction:row-reverse}.section-content{max-width:560px}.section-content h2{margin-bottom:20px}.section-content p{margin-bottom:14px;font-size:clamp(16px,2vw,19px)}.section-head{text-align:center;max-width:720px;margin:0 auto clamp(40px,6vh,72px)}.section-head h2{margin-bottom:16px}.section-lede{color:var(--text-secondary);max-width:560px;margin:0 auto 28px;font-size:clamp(16px,2vw,19px)}.cta-button{color:var(--bg-white);background:var(--accent);border-radius:var(--radius-pill);padding:14px 28px;font-size:16px;font-weight:500;transition:background .2s,transform .15s;display:inline-block}.cta-button:hover{background:var(--accent-hover);transform:scale(1.02)}.cta-button:disabled{opacity:.4;cursor:not-allowed;transform:none}.cta-large{padding:16px 36px;font-size:17px}.section-cta{background:var(--bg-dark);color:var(--bg-white);padding:clamp(80px, 12vh, 140px) var(--content-padding)}.section-cta h2{color:var(--bg-white);margin-bottom:16px;font-size:clamp(32px,5vw,56px)}.section-cta .section-lede{color:#ffffffbf}.section-head-cta{margin-bottom:0}.cta-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.cta-lede{color:#ffffffbf;max-width:520px;margin:0 auto 32px;font-size:clamp(16px,2vw,19px)}.section-cta .link-text{color:#ffffffe6;font-size:15px}.section-cta .link-text:hover{color:#fff}.tier-grid{max-width:var(--max-width);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin:0 auto;display:grid}.tier-grid-large{gap:32px}.tier-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-primary);flex-direction:column;gap:12px;padding:32px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.tier-card:hover{border-color:var(--border-strong)}.tier-card-large{background:var(--bg-light);padding:40px}.tier-level{letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-size:12px;font-weight:600}.tier-title{margin:4px 0;font-size:26px}.tier-desc{color:var(--text-secondary);margin-bottom:8px;font-size:15px;line-height:1.5}.tier-features{flex-direction:column;flex:1;gap:8px;margin-top:12px;margin-bottom:12px;list-style:none;display:flex}.tier-features li{color:var(--text-secondary);padding-left:22px;font-size:14px;position:relative}.tier-features li:before{content:"✓";color:var(--success);font-weight:700;position:absolute;left:0}.tier-arrow{color:var(--accent);margin-top:auto;font-size:14px;font-weight:500}.how-steps{max-width:var(--max-width);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;margin:0 auto;list-style:none;display:grid}.how-step{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:16px;padding:32px;display:flex}.how-num{background:var(--bg-dark);width:40px;height:40px;color:var(--bg-white);border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:600;display:inline-flex}.how-step h3{font-size:19px}.how-step p{font-size:15px}.schedule-block{text-align:center;max-width:960px;margin-top:72px;margin-left:auto;margin-right:auto}.schedule-eyebrow{letter-spacing:1.4px;text-transform:uppercase;color:#ffffff8c;margin-bottom:8px;font-size:12px;font-weight:600}.schedule-sub{color:#ffffffbf;margin-bottom:24px;font-size:15px}.schedule-grid-wrap{border-radius:var(--radius-md);text-align:left;background:#fff;max-width:980px;margin:0 auto;padding:24px}.schedule-status{text-align:center;color:#ffffffbf;padding:12px 0;font-size:14px}.schedule-status-error{color:#ffb4a8}.schedule-status-error a{color:#fff;text-decoration:underline}.schedule-meta{color:var(--text-secondary);text-align:center;margin:0 0 16px;font-size:14px}.schedule-meta strong{color:#047857;font-weight:600}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.schedule-toolbar .schedule-meta{text-align:left;margin:0}.schedule-tz-picker{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:inline-flex}.schedule-tz-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:500}.schedule-tz-picker select{appearance:none;font:inherit;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M3 4.5l3 3 3-3' fill='none' stroke='%2364748b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") right 8px center no-repeat;padding:6px 32px 6px 10px;font-size:13px}.schedule-tz-picker select:hover{border-color:#94a3b8}.schedule-tz-picker select:focus-visible{outline-offset:1px;outline:2px solid #047857}.schedule-tz-note{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);background:#f1f5f9;margin:0 0 14px;padding:10px 12px;font-size:12px}.schedule-tz-note strong{color:var(--text-primary);font-weight:600}.schedule-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.schedule-grid{border-collapse:separate;border-spacing:0;width:100%;min-width:720px;font-size:13px}.schedule-corner,.schedule-hour-head{text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);text-align:center;background:0 0;padding:8px 6px;font-size:12px;font-weight:600}.schedule-corner{text-align:left;padding-left:12px}.schedule-day-head{text-align:center;vertical-align:bottom;border-bottom:1px solid var(--border);background:0 0;min-width:76px;padding:10px 8px 8px}.schedule-day-head-today{background:linear-gradient(#04785714,#0000 70%)}.schedule-day-weekday{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);font-size:11px;font-weight:600;display:block}.schedule-day-date{color:var(--text-primary);margin-top:2px;font-size:14px;font-weight:500;display:block}.schedule-time-cell{text-align:right;vertical-align:middle;white-space:nowrap;color:var(--text-tertiary);border-top:1px solid var(--border);background:0 0;padding:6px 12px;font-size:11px;font-weight:500}.schedule-time-cell-major{color:var(--text-secondary);border-top:1px solid #cbd5e1;font-weight:600}.schedule-time-source{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:400;display:block}.schedule-time-local{color:var(--text-primary);margin-top:1px;font-size:12px;font-weight:600;display:block}.schedule-slot-cell{text-align:center;border-top:1px solid var(--border);background:0 0;padding:4px}.schedule-slot-cell-major{border-top:1px solid #cbd5e1}.schedule-slot{border-radius:var(--radius-sm);cursor:default;border:1px solid #0000;justify-content:center;align-items:center;min-width:52px;padding:8px 10px;font-family:inherit;font-size:12px;font-weight:500;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.schedule-slot-free{color:#15803d;cursor:pointer;background:#dcfce7;border-color:#86efac;text-decoration:none}.schedule-slot-free:hover{background:#bbf7d0;border-color:#4ade80}.schedule-slot-free:active{background:#f3f4f6}.schedule-slot-busy{color:var(--text-tertiary);cursor:not-allowed;-webkit-user-select:none;user-select:none;background:#f1f5f9;border-color:#e2e8f0}.schedule-legend{color:var(--text-secondary);justify-content:center;gap:24px;margin-top:16px;font-size:12px;display:flex}.schedule-legend-item{align-items:center;gap:8px;display:inline-flex}.schedule-legend-swatch{pointer-events:none;min-width:28px;padding:4px 8px}.schedule-note{color:#ffffffb3;margin-top:18px;font-size:14px}.schedule-note a{color:#fff;border-bottom:1px solid #fff6;font-weight:500;transition:border-color .2s}.schedule-note a:hover{border-color:#fff}.hero{padding:calc(56px + var(--section-padding)) var(--content-padding) var(--section-padding);text-align:center;background:var(--bg-white);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.hero-content{width:100%;max-width:820px}.hero h1{margin-bottom:20px}.hero-subtitle{color:var(--text-secondary);max-width:640px;margin:0 auto 32px;font-size:clamp(17px,2.5vw,22px);line-height:1.45}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-bottom:20px;display:flex}.hero-secondary{color:var(--text-primary);border-radius:var(--radius-pill);padding:12px 20px;font-size:16px;font-weight:500;transition:background .2s}.hero-secondary:hover{background:var(--bg-alt)}.hero-image{width:100%;max-width:880px;margin-top:64px}.hero-video{border-radius:var(--radius-lg);aspect-ratio:16/9;object-fit:cover;background:linear-gradient(135deg,#1d1d1f 0%,#2d2d2f 100%);width:100%;box-shadow:0 20px 60px #00000026}.hero-video-caption{color:var(--text-tertiary);margin-top:12px;font-size:13px}.portrait-card{aspect-ratio:4/5;border-radius:var(--radius-lg);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-direction:column;justify-content:flex-end;width:100%;max-width:420px;padding:32px;display:flex;box-shadow:0 20px 60px #667eea40}.portrait-initials{color:#fffffff2;letter-spacing:-.04em;margin-bottom:24px;font-size:120px;font-weight:600;line-height:1}.portrait-meta{color:#fffffff2;flex-direction:column;display:flex}.portrait-meta strong{font-size:22px;font-weight:600}.portrait-meta span{opacity:.85;font-size:14px}.method-card{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-width:420px;padding:36px;box-shadow:0 8px 30px #0000000f}.method-pill{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-pill);margin-bottom:24px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-block}.method-list{flex-direction:column;gap:14px;list-style:none;display:flex}.method-list li{color:var(--text-primary);padding-left:28px;font-size:16px;position:relative}.method-list li:before{content:"→";color:var(--accent);font-weight:600;position:absolute;left:0}.page-hero{padding:calc(56px + var(--section-padding)) var(--content-padding) clamp(40px, 6vh, 72px);text-align:center;background:var(--bg-light)}.page-hero .container{max-width:760px}.page-hero h1{margin-bottom:20px}.page-lede{color:var(--text-secondary);max-width:600px;margin:0 auto;font-size:clamp(17px,2.4vw,21px)}.page-hero .eyebrow{margin-bottom:16px}.page-hero .eyebrow a{color:inherit}.about-prose{max-width:760px;margin:0 auto}.about-prose h2{margin-top:48px;margin-bottom:20px;font-size:clamp(24px,3.5vw,36px)}.about-prose h2:first-child{margin-top:0}.about-prose p{margin-bottom:18px;font-size:clamp(16px,2vw,19px)}.timeline{flex-direction:column;gap:14px;margin:24px 0;padding-left:0;list-style:none;display:flex}.timeline-item{background:var(--bg-light);border-radius:var(--radius-md);align-items:baseline;gap:24px;padding:14px 20px;display:flex}.timeline-year{color:var(--accent);min-width:60px;font-size:16px;font-weight:600}.timeline-label{color:var(--text-primary);font-size:15px}.beliefs-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:24px;display:grid}.belief-card{background:var(--bg-light);border-radius:var(--radius-md);border-left:3px solid var(--accent);padding:24px}.belief-card h3{margin-bottom:8px;font-size:17px}.belief-card p{color:var(--text-secondary);font-size:15px}.detail-grid{max-width:var(--max-width);grid-template-columns:2fr 1fr;align-items:start;gap:clamp(32px,5vw,64px);margin:0 auto;display:grid}.detail-main h2{margin-top:40px;margin-bottom:16px;font-size:clamp(22px,3vw,32px)}.detail-main h2:first-child{margin-top:0}.detail-main p{margin-bottom:16px;font-size:clamp(16px,2vw,18px)}.check-list{flex-direction:column;gap:12px;list-style:none;display:flex}.check-list li{color:var(--text-primary);padding-left:32px;font-size:16px;line-height:1.5;position:relative}.check-list li:before{content:"✓";background:var(--success);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:flex;position:absolute;top:0;left:0}.detail-side{position:sticky;top:80px}.price-card{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;padding:32px}.price-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:8px;font-size:12px;font-weight:600}.price-amount{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:4px;font-size:36px;font-weight:600}.price-sub{color:var(--text-secondary);margin-bottom:24px;font-size:14px}.price-card .cta-button{width:100%;margin-bottom:12px}.price-note{color:var(--text-tertiary);font-size:13px}.page-content{padding-top:56px}.dashboard-header{background:var(--bg-light);padding:48px var(--content-padding) 36px;border-bottom:1px solid var(--border)}.dashboard-greeting{letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(28px,4vw,40px);font-weight:600}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:32px 0;display:grid}.stat-card{background:var(--bg-light);border-radius:var(--radius-md);flex-direction:column;gap:2px;padding:20px 24px;display:flex}.stat-number{color:var(--text-primary);letter-spacing:-.03em;font-size:40px;font-weight:600;line-height:1}.stat-label{color:var(--text-secondary);margin-top:4px;font-size:14px}.stat-action{color:var(--accent);margin-top:12px;font-size:13px;font-weight:500;text-decoration:none}.stat-action:hover{text-decoration:underline}.dashboard-section{margin-bottom:48px}.dashboard-section-title{letter-spacing:-.01em;margin-bottom:16px;padding-top:8px;font-size:clamp(18px,2.5vw,22px);font-weight:600}.dashboard-empty{background:var(--bg-light);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;color:var(--text-secondary);padding:32px}.dashboard-empty p{margin:0}.dashboard-empty p:first-child{color:var(--text-primary);margin-bottom:6px;font-weight:500}.booking-list{flex-direction:column;gap:10px;display:flex}.booking-item{background:var(--bg-light);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.booking-item-date{flex-direction:column;gap:2px;display:flex}.booking-item-day{color:var(--text-primary);font-size:15px;font-weight:600}.booking-item-time{color:var(--text-secondary);font-size:13px}.booking-item-status{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:600}.booking-item-status-confirmed{color:#15803d;background:#dcfce7}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:720px;margin:0 auto;display:grid}.pricing-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:24px;padding:36px;display:flex}.pricing-card-featured{border-color:var(--text-primary);background:var(--bg-dark);color:#fff}.pricing-card-featured .pricing-label,.pricing-card-featured .pricing-amount,.pricing-card-featured .pricing-period,.pricing-card-featured .pricing-desc,.pricing-card-featured .pricing-features li{color:#fff}.pricing-card-featured .pricing-desc{color:#ffffffa6}.pricing-card-featured .pricing-features li:before{background:#ffffff80}.pricing-card-featured .pricing-features li{color:#fffc}.pricing-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-size:13px;font-weight:700}.pricing-card-featured .pricing-label{color:#ffffff8c}.pricing-price{align-items:baseline;gap:6px;margin-top:8px;display:flex}.pricing-amount{font-size:3rem;font-weight:700;line-height:1}.pricing-period{color:var(--text-secondary);font-size:16px}.pricing-card-featured .pricing-period{color:#ffffff8c}.pricing-desc{color:var(--text-secondary);margin:0;font-size:15px;line-height:1.5}.pricing-features{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.pricing-features li{color:var(--text-primary);padding-left:20px;font-size:15px;position:relative}.pricing-features li:before{content:"";background:var(--text-primary);border-radius:50%;width:6px;height:6px;position:absolute;top:7px;left:0}.pricing-cta{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-white);color:var(--text-primary);cursor:pointer;margin-top:auto;padding:14px 24px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,border-color .15s}.pricing-cta:hover:not(:disabled){background:var(--bg-light);border-color:var(--text-primary)}.pricing-cta:disabled{opacity:.5;cursor:not-allowed}.pricing-cta-primary{color:var(--text-primary);background:#fff}.pricing-footer{text-align:center;color:var(--text-secondary);margin-top:32px;font-size:14px}.pricing-footer a{color:var(--text-primary);font-weight:600;text-decoration:none}.pricing-footer a:hover{text-decoration:underline}@media (width<=900px){.detail-grid{grid-template-columns:1fr}.detail-side{position:static}.section-row{text-align:center;flex-direction:column}.section-row.section-reverse{flex-direction:column}.section-content{max-width:100%}.section-image{justify-content:center;width:100%;display:flex}.method-card,.portrait-card{max-width:100%}.timeline-item{flex-direction:column;gap:4px}}@media (width<=720px){.nav{height:52px}.nav-links{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:12px var(--content-padding) 24px;background:#fffffffa;flex-direction:column;gap:0;transition:transform .25s;position:fixed;top:52px;left:0;right:0;transform:translateY(-110%)}.nav-links-open{transform:translateY(0)}.nav-link{border-bottom:1px solid var(--border);width:100%;padding:14px 0;font-size:16px}.nav-toggle{display:flex}.nav-cta{padding:7px 14px;font-size:13px}.hero{padding-top:calc(52px + var(--section-padding));min-height:auto}.hero-actions{flex-direction:column;width:100%}.hero-actions .cta-button,.hero-actions .hero-secondary{text-align:center;width:100%}.hero-video{border-radius:var(--radius-md)}.section{padding:clamp(48px, 8vh, 80px) var(--content-padding)}.cta-button,.cta-large{text-align:center;width:100%}}@media (width<=640px){.pricing-card{padding:24px}}
