:root{--bg:#fff7f1;--surface:#fff;--surface-muted:#fff0e6;--surface-strong:#f5dfcf;--text:#5f5f5f;--text-h:#222;--muted:#717171;--border:#efd7c8;--border-strong:#d7b8a6;--accent:#86a97f;--accent-strong:#5f815a;--accent-soft:#86a97f29;--accent-bg:#86a97f29;--accent-border:#86a97f61;--primary-warm:#86a97f;--primary-warm-bg:#86a97f24;--secondary-warm:#f4b69b;--secondary-warm-bg:#f4b69b2e;--success-green:#5f815a;--success-green-bg:#86a97f29;--warning-yellow:#c68a2c;--warning-yellow-bg:#c68a2c1f;--danger:#c13515;--code-bg:#f4f1ec;--shadow:0 18px 42px #5f4b3e1a;--shadow-soft:0 8px 22px #5f4b3e12;--radius:18px;--radius-sm:999px;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--heading:var(--sans);--mono:ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;font:16px/1.6 var(--sans);letter-spacing:0;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;margin:0}#root{width:100%;min-height:100svh}h1,h2,h3{color:var(--text-h);font-family:var(--heading);letter-spacing:0;margin:0;line-height:1.12}h1{font-size:clamp(2.5rem,7vw,5.25rem);font-weight:760}h2{font-size:clamp(1.75rem,3vw,2.75rem);font-weight:720}h3{font-size:1.125rem;font-weight:700}p{margin:0}a{color:inherit}button,input,textarea,select{font:inherit}button{min-height:44px}code,.counter{color:var(--text-h);font-family:var(--mono);display:inline-flex}code{background:var(--code-bg);border-radius:4px;padding:4px 8px;font-size:.875rem;line-height:1.4}.navbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);z-index:100;background:#fff7f1e6;position:sticky;top:0}.nav-container{justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:0 auto;padding:14px 24px;display:flex}.nav-logo{color:var(--text-h);white-space:nowrap;align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand-logo{object-fit:cover;object-position:center;border-radius:50%;width:48px;height:48px;display:block}.brand-copy{flex-direction:column;line-height:1.15;display:flex}.brand-copy strong{color:var(--text-h);font-size:1rem}.brand-copy small{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:.62rem}.nav-menu{justify-content:flex-end;align-items:center;gap:6px;display:flex}.nav-link,.nav-cta{border-radius:var(--radius-sm);color:var(--muted);white-space:nowrap;align-items:center;min-height:40px;padding:8px 13px;font-size:.88rem;font-weight:650;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.nav-link:hover{background:var(--surface-muted);color:var(--text-h)}.nav-link.active{background:var(--accent-soft);color:var(--accent-strong)}.nav-cta{background:var(--accent);color:#fff;margin-left:6px;padding:8px 16px}.nav-cta:hover{background:var(--accent-strong)}@media (width<=820px){.nav-container{flex-direction:column;align-items:flex-start;gap:12px;padding:14px 18px}.nav-menu{flex-wrap:wrap;justify-content:flex-start;width:100%;padding-bottom:2px;overflow-x:visible}.brand-logo{width:44px;height:44px}.nav-link,.nav-cta{font-size:.82rem}}.home-page{width:100%;overflow:hidden}.section-kicker{color:var(--accent-strong);letter-spacing:0;text-transform:uppercase;margin-bottom:12px;font-size:.74rem;font-weight:800}.home-hero{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:36px;max-width:1240px;min-height:560px;margin:0 auto;padding:40px 32px 48px;display:grid}.home-hero-copy h1{max-width:760px;margin-bottom:14px;font-size:clamp(2.5rem,4.8vw,3.9rem);line-height:1.02}.home-hero-lead{color:var(--text);max-width:640px;margin-bottom:16px;font-size:.95rem;line-height:1.65}.home-hero-actions,.home-closing-actions{flex-wrap:wrap;gap:12px;display:flex}.home-trust-row{flex-wrap:wrap;gap:8px 14px;margin-top:14px;display:flex}.home-trust-row span{color:var(--muted);padding-left:17px;font-size:.88rem;font-weight:650;position:relative}.home-trust-row span+span:before{content:"|";color:var(--accent);margin:0 12px 0 4px;font-weight:400}.home-hero-visual{min-height:460px;font-family:Cormorant Garamond,serif;position:relative}.home-hero-visual img{box-shadow:var(--shadow);object-fit:cover;border-radius:36px 36px 36px 120px;width:100%;height:460px}.home-hero-note{box-shadow:var(--shadow-soft);background:#fffffff0;border:1px solid #fffc;border-radius:20px;flex-direction:column;gap:4px;max-width:310px;padding:20px 22px;display:flex;position:absolute;bottom:24px;left:-36px}.home-hero-note strong{color:var(--text-h);line-height:1.4}.home-hero-note span{color:var(--muted);font-size:.88rem}.home-services{background:#fff;padding:44px 32px 56px}.section-heading{justify-content:space-between;align-items:flex-end;max-width:1180px;margin:0 auto 24px;display:flex}.section-heading h2{max-width:620px;font-size:clamp(1.55rem,2.8vw,2.2rem)}.text-link{color:var(--accent-strong);cursor:pointer;background:0 0;border:0;min-height:auto;padding:6px 0;font-weight:750}.text-link:hover{color:var(--text-h)}.home-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1180px;margin:0 auto;display:grid}.home-service-card{background:var(--bg);border:1px solid var(--border);border-radius:22px;min-height:240px;padding:22px;transition:background .2s,border-color .2s,transform .2s}.home-service-card:hover{background:var(--surface-muted);border-color:var(--accent-border);transform:translateY(-3px)}.home-service-card>span{color:var(--accent-strong);margin-bottom:34px;font-size:.78rem;font-weight:800;display:block}.home-service-card h3{margin-bottom:12px}.home-service-card p{color:var(--text);font-size:.9rem;line-height:1.7}.home-process{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;max-width:1180px;margin:0 auto;padding:56px 32px;display:grid}.home-process-intro{align-self:start;position:sticky;top:110px}.home-process-intro h2{margin-bottom:12px;font-size:clamp(1.55rem,2.8vw,2.2rem)}.home-process-intro>p:not(.section-kicker){color:var(--text);max-width:480px;margin-bottom:18px;line-height:1.7}.home-process-list{border-top:1px solid var(--border)}.home-process-step{border-bottom:1px solid var(--border);grid-template-columns:42px 1fr;gap:18px;padding:22px 0;display:grid}.home-process-step>span{background:var(--accent-soft);color:var(--accent-strong);border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-weight:800;display:inline-flex}.home-process-step h3{margin:4px 0 8px}.home-process-step p{color:var(--text);line-height:1.7}.home-testimonial{text-align:center;background:#eef5eb;margin:0 auto;padding:56px max(32px,50vw - 460px)}.home-testimonial blockquote{color:var(--text-h);max-width:920px;margin:0 auto 22px;font-size:clamp(1.55rem,3.3vw,2.5rem);font-weight:600;line-height:1.35}.home-testimonial-source{color:var(--muted);margin-bottom:16px}.home-impact{max-width:1180px;margin:0 auto;padding:12px 32px 48px}.home-impact-header{margin-bottom:28px}.home-impact-header h2{font-size:clamp(1.55rem,2.8vw,2.2rem)}.home-impact-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.home-impact-card{background:var(--surface-soft);border:1px solid var(--border);text-align:center;border-radius:20px;padding:24px 20px}.home-impact-card strong{color:var(--accent-strong);margin-bottom:8px;font-size:1.2rem;display:block}.home-impact-card p{color:var(--text);margin:0;font-size:.9rem;line-height:1.6}.home-impact-copy{color:var(--text);text-align:center;max-width:820px;margin:0 auto;line-height:1.7}.home-closing{justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:0 auto;padding:48px 32px 56px;display:flex}.home-closing h2{margin-bottom:12px}.home-closing p:not(.section-kicker){color:var(--text);max-width:620px}@media (width<=980px){.home-hero{grid-template-columns:1fr .82fr;gap:42px}.home-hero-visual,.home-hero-visual img{height:440px;min-height:440px}.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-impact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.home-hero{grid-template-columns:1fr;min-height:auto;padding:54px 18px 64px}.home-hero-copy h1{font-size:clamp(2.35rem,12vw,3.4rem)}.home-hero-visual,.home-hero-visual img{height:auto;min-height:0}.home-hero-visual img{border-radius:28px 28px 28px 84px;max-height:390px}.home-hero-note{max-width:none;position:relative;bottom:16px;left:16px;right:16px}.home-services{padding:64px 18px}.section-heading,.home-closing{flex-direction:column;align-items:flex-start}.section-heading{gap:14px}.home-service-grid,.home-process{grid-template-columns:1fr}.home-process{gap:42px;padding:72px 18px}.home-process-intro{position:static}.home-testimonial{padding:72px 18px}.home-impact{padding:12px 18px 48px}.home-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-closing{padding:64px 18px 72px}}@media (width<=520px){.home-service-grid{grid-template-columns:1fr}.home-service-card{min-height:230px}.home-service-card>span{margin-bottom:34px}.home-impact-grid{grid-template-columns:1fr}}.contact-page{flex-direction:column;width:100%;min-height:calc(100vh - 72px);display:flex;overflow-x:hidden}.contact-hero{background:linear-gradient(120deg, #fff0e6eb, #86a97f29), var(--surface);border-bottom:1px solid var(--border);text-align:center;flex-shrink:0;padding:10px 16px 12px}.contact-hero h1{margin-bottom:4px;font-size:clamp(1.2rem,2.2vw,1.5rem)}.contact-hero p{color:var(--text);margin:0;font-size:.84rem}.contact-container{flex:1;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr);gap:10px;width:100%;max-width:1120px;margin:0 auto;padding:8px 20px 16px;display:grid}.contact-info-section{grid-template-columns:1fr;align-content:start;gap:8px;display:grid}.info-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);text-align:left;padding:10px 12px}.info-icon{background:var(--surface-muted);border:1px solid var(--border);color:var(--accent-strong);border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;margin-bottom:8px;font-size:.64rem;font-weight:800;display:inline-flex}.info-card h3{margin-bottom:4px;font-size:.9rem}.info-card p{color:var(--text);margin-bottom:6px;font-size:.8rem;line-height:1.45}.info-link{color:var(--accent-strong);font-size:.78rem;font-weight:760;text-decoration:none}.info-link:hover{color:var(--text-h)}.contact-form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);flex-direction:column;gap:6px;padding:12px;display:flex}.contact-form-section h2{margin-bottom:0;font-size:clamp(1.08rem,1.9vw,1.28rem)}.contact-form{gap:6px;margin-bottom:6px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-h);font-size:.8rem;font-weight:750}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);border-radius:10px;padding:9px 11px;font-size:.9rem}.form-group textarea{resize:none;min-height:70px}.form-submit-button{width:100%;margin-top:2px;padding:8px 12px}.contact-cta{border-top:1px solid var(--border);text-align:center;padding-top:6px}.contact-cta p{color:var(--text);margin-bottom:6px;font-size:.82rem;font-weight:650}@media (width<=900px){.contact-container{grid-template-columns:1fr}.contact-info-section{grid-template-columns:1fr 1fr}}@media (width<=620px){.contact-page{min-height:auto}.contact-hero{padding:18px 14px 16px}.contact-container{flex-direction:column;gap:10px;padding:14px 14px 18px;display:flex}.contact-info-section{grid-template-columns:1fr}.contact-form-section{padding:16px}}.booking-page{width:100%}.booking-paused{padding-bottom:72px}.booking-hero,.contact-hero{background:linear-gradient(120deg, #fff0e6eb, #86a97f29), var(--surface);border-bottom:1px solid var(--border);text-align:center;padding:68px 24px 54px}.booking-hero h1,.contact-hero h1{margin-bottom:12px}.booking-hero p,.contact-hero p{color:var(--text);font-size:.95rem}.progress-container{border-bottom:1px solid var(--border);z-index:50;background:#fff7f1eb;padding:22px 24px;position:sticky;top:69px}.progress-bar{background:var(--surface-strong);border-radius:999px;max-width:1180px;height:6px;margin:0 auto 16px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .25s}.progress-steps{justify-content:center;gap:14px;max-width:1180px;margin:0 auto;display:flex}.step{color:var(--muted);align-items:center;gap:8px;font-size:.82rem;font-weight:700;display:inline-flex}.step-number{background:var(--surface-muted);border:1px solid var(--border);color:var(--muted);border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;font-size:.78rem;display:inline-flex}.step-number.active{background:var(--accent);border-color:var(--accent);color:#fff}.booking-container{max-width:1180px;margin:0 auto;padding:56px 24px 72px}.booking-step{margin-bottom:54px}.booking-step h2{margin-bottom:10px;font-size:clamp(1.35rem,2.2vw,1.85rem)}.step-description{color:var(--text);margin-bottom:26px}.therapist-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.therapist-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);cursor:pointer;text-align:left;padding:24px;transition:border-color .2s,box-shadow .2s,transform .2s}.therapist-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow);transform:translateY(-2px)}.therapist-card.selected{background:var(--surface-muted);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.therapist-avatar{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:18px;font-weight:800;display:inline-flex}.therapist-name{margin-bottom:5px}.therapist-spec{color:var(--accent-strong);margin-bottom:12px;font-size:.9rem;font-weight:750}.therapist-bio{color:var(--text);margin-bottom:18px;font-size:.88rem;line-height:1.6}.select-button{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-h);cursor:pointer;background:0 0;padding:8px 14px;font-size:.9rem;font-weight:700}.therapist-card.selected .select-button{background:var(--accent);border-color:var(--accent);color:#fff}.date-time-container{grid-template-columns:.8fr 1.2fr;gap:22px;display:grid}.date-selector,.time-slots-container,.booking-form .form-group{flex-direction:column;gap:9px;display:flex}.date-selector label,.time-slots-label,.booking-form label{color:var(--text-h);font-size:.9rem;font-weight:750}.time-slots-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;display:grid}.time-slot{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-h);cursor:pointer;padding:11px 10px;font-size:.9rem;font-weight:700;transition:background .2s,border-color .2s,color .2s}.time-slot:hover:not(:disabled){background:var(--surface-muted);border-color:var(--accent-border)}.time-slot.selected{background:var(--accent);border-color:var(--accent);color:#fff}.time-slot:disabled{background:var(--code-bg);color:var(--muted);cursor:not-allowed;opacity:.72}.booking-form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:28px}.booking-summary{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:26px;padding:20px;display:grid}.summary-item{flex-direction:column;gap:4px;display:flex}.summary-label{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:.68rem;font-weight:800}.summary-value{color:var(--text-h);font-weight:750}.booking-form{gap:18px;display:grid}.booking-submit-button:disabled{cursor:not-allowed;opacity:.56}.help-section{background:var(--surface-muted);border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;padding:28px}.booking-paused-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);text-align:center;max-width:760px;margin:28px auto 0;padding:28px}.booking-paused-panel p{color:var(--text);margin-bottom:18px;line-height:1.75}.help-section p{color:var(--text);margin-bottom:16px}@media (width<=860px){.therapist-grid,.date-time-container{grid-template-columns:1fr}.progress-container{top:126px}}@media (width<=620px){.booking-hero,.contact-hero{padding:48px 18px 40px}.progress-steps{flex-wrap:nowrap}.progress-container,.booking-container{padding-left:18px;padding-right:18px}.progress-steps{justify-content:flex-start;overflow-x:auto}.booking-summary{grid-template-columns:1fr}.booking-form-card{padding:20px}}.testimonials-page{width:100%}.testimonials-hero{background:linear-gradient(120deg, #fff0e6eb, #86a97f29), var(--surface);border-bottom:1px solid var(--border);text-align:center;padding:48px 24px 36px}.testimonials-hero h1{margin-bottom:12px}.testimonials-hero p{color:var(--text);font-size:.95rem}.testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1180px;margin:0 auto;padding:28px 24px 44px;display:grid}.testimonial-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);flex-direction:column;justify-content:space-between;gap:16px;min-height:auto;padding:18px;display:flex}.testimonial-quote{color:var(--text-h);font-size:.94rem;line-height:1.7;position:relative}.testimonial-quote:before{color:var(--accent);content:open-quote;margin-right:2px;font-size:1.4rem;font-weight:800;line-height:0}.testimonial-quote:after{color:var(--accent);content:close-quote;font-size:1.4rem;font-weight:800;line-height:0}.testimonial-card h3{margin-bottom:4px}.testimonial-context{color:var(--accent-strong);font-size:.86rem;font-weight:700}@media (width<=840px){.testimonials-grid{grid-template-columns:1fr}}@media (width<=620px){.testimonials-hero{padding:48px 18px 40px}.testimonials-grid{padding:42px 18px 56px}}.services-page{width:100%}.services-hero{background:linear-gradient(120deg, #fff0e6eb, #86a97f29), var(--surface);border-bottom:1px solid var(--border);text-align:center;padding:48px 24px 36px}.services-hero h1{margin-bottom:12px}.services-hero p{color:var(--text);font-size:.95rem}.services-offered-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1180px;margin:0 auto;padding:28px 24px 16px;display:grid}.services-offered-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);min-height:auto;padding:18px}.services-offered-index{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:22px;font-size:.78rem;font-weight:800;display:inline-flex}.services-offered-card h3{margin-bottom:12px}.services-offered-card p{color:var(--text);line-height:1.7}.services-offered-cta{text-align:center;max-width:760px;margin:0 auto;padding:16px 24px 44px}.services-offered-cta h2{margin-bottom:10px}.services-offered-cta p{color:var(--text);margin-bottom:24px}.services-offered-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}@media (width<=980px){.services-offered-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.services-hero{padding:48px 18px 40px}.services-offered-grid{grid-template-columns:1fr;padding:42px 18px 24px}.services-offered-cta{padding:24px 18px 56px}}.about-page,.impact-page{width:100%}.about-hero,.impact-hero{border-bottom:1px solid var(--border);background:linear-gradient(120deg,#fff0e6f0,#86a97f2e);padding:48px max(24px,50vw - 540px)}.about-hero h1,.impact-hero h1{max-width:900px;margin-bottom:16px;font-size:clamp(2.45rem,5vw,4.1rem)}.about-hero>p:last-child,.impact-hero>p:last-child{color:var(--text);max-width:780px;font-size:.98rem;line-height:1.8}.about-story{grid-template-columns:.8fr 1.2fr;gap:36px;max-width:1080px;margin:0 auto;padding:48px 24px;display:grid}.about-story-copy{gap:16px;display:grid}.about-story-copy p{color:var(--text);font-size:.95rem;line-height:1.85}.team-section{background:#fff;padding:48px 24px 64px}.team-heading,.team-list{max-width:1080px;margin:0 auto}.team-heading{margin-bottom:28px}.team-list{border-top:1px solid var(--border)}.team-profile{border-bottom:1px solid var(--border);grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:32px;padding:24px 0;display:grid}.team-identity{align-items:center;gap:16px;display:flex}.team-avatar{background:var(--accent-soft);object-fit:cover;object-position:center top;border-radius:50%;flex:none;width:150px;height:150px;display:block}.team-identity h3{margin-bottom:5px}.team-identity p{color:var(--accent-strong);font-size:.9rem;font-weight:700}.team-details{gap:14px;display:grid}.team-details p{color:var(--text);line-height:1.75}.team-credentials{font-size:.9rem;font-weight:700;color:var(--text-h)!important}.founders-note{border-top:1px solid var(--border);background:linear-gradient(120deg,#fff0e6f0,#86a97f24);padding:48px 24px 64px}.founders-note-inner{text-align:center;max-width:820px;margin:0 auto}.founders-note h2{margin-bottom:18px}.founders-note p{color:var(--text);line-height:1.85}.founders-signoff{margin-top:18px;font-weight:800;color:var(--accent-strong)!important}@media (width<=760px){.about-hero,.impact-hero{padding:64px 18px}.about-hero h1,.impact-hero h1{font-size:clamp(1.85rem,7vw,2.6rem)}.about-story,.team-profile{grid-template-columns:1fr}.about-story{gap:30px;padding:68px 18px}.team-section{padding:64px 18px 76px}.team-profile{gap:24px}.team-identity{flex-direction:column;align-items:flex-start}.team-avatar{width:118px;height:118px}.founders-note{padding:64px 18px 76px}}body{margin:0}#root{width:100%}.app-main{min-height:calc(100vh - 146px)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(180deg, #fff0e6e6, #fff7f100 520px), var(--bg);color:var(--text);font-family:var(--sans);font-size:clamp(14px,1.5vw,15px);line-height:1.6;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1;width:100%}img{max-width:100%;height:auto;display:block}.app-footer{color:#ffffffbd;background:#334531;margin-top:0;padding:24px}.footer-inner{justify-content:space-between;align-items:flex-end;max-width:1180px;margin:0 auto;font-size:.8rem;display:flex}.footer-inner strong{color:#fff;margin-bottom:2px;font-size:1.05rem;display:block}.container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}.success-message{background:var(--success-green-bg);border-radius:var(--radius);color:var(--text-h);text-align:left;border:1px solid #13805f38;max-width:1180px;margin:16px auto 0;padding:12px 16px;font-weight:650}.error-message{background:var(--warning-yellow-bg);border-radius:var(--radius-sm);color:var(--text-h);text-align:left;border:1px solid #b7791f3d;padding:12px;font-size:.82rem}.cta-button,.cta-primary,.cta-primary-large,.form-submit-button,.booking-submit-button{background:var(--primary-warm);border:1px solid var(--primary-warm);border-radius:var(--radius-sm);color:#fff;cursor:pointer;justify-content:center;align-items:center;padding:10px 20px;font-size:.9rem;font-weight:700;text-decoration:none;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s;display:inline-flex}.cta-button:hover,.cta-primary:hover,.cta-primary-large:hover,.form-submit-button:hover,.booking-submit-button:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px);box-shadow:0 10px 24px #5f815a38}.cta-secondary,.cta-secondary-large{border:1px solid var(--border);color:var(--accent-strong);background:#fff8f3}.cta-secondary:hover,.cta-secondary-large:hover{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-strong)}.cta-primary-large,.cta-secondary-large{min-width:180px;padding:14px 26px}input,textarea,select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-h);width:100%;padding:12px 14px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}textarea{resize:vertical}@media (width<=768px){body{font-size:14px}.container{padding:0 18px}.cta-button,.cta-primary,.cta-secondary,.form-submit-button{width:100%}.footer-inner{flex-direction:column;align-items:flex-start;gap:20px}}
