.chatbot-trigger{position:fixed;bottom:1.5rem;right:1.5rem;width:56px;height:56px;border-radius:50%;background:var(--color-accent);color:var(--color-bg);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0003;transition:transform .2s,background .2s;z-index:100}.chatbot-trigger:hover{background:var(--color-accent-hover);transform:scale(1.05)}.header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:.75rem 2rem;background:var(--color-bg);border-bottom:1px solid var(--color-border);z-index:50}.logo{display:flex;align-items:center;text-decoration:none}.logo img{height:48px;width:auto}.nav{display:flex;gap:2rem}.nav a{color:var(--color-text-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s}.nav a:hover{color:var(--color-text)}.header-right{display:flex;align-items:center;gap:1.5rem}.header-phone{color:var(--color-text);font-weight:600;text-decoration:none}.header-phone:hover{color:var(--color-text-muted)}.header-cta{padding:.5rem 1.25rem;background:var(--color-accent);color:var(--color-bg);font-weight:600;font-size:.9rem;text-decoration:none;border-radius:6px;transition:background .2s}.header-cta:hover{background:var(--color-accent-hover);color:var(--color-bg)}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.menu-toggle span{width:22px;height:2px;background:var(--color-text)}@media(max-width:768px){.header{padding:.75rem 1.25rem}.header-right{display:none}.nav{position:fixed;top:65px;left:0;right:0;flex-direction:column;background:var(--color-bg);padding:1.5rem;gap:1rem;transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .2s,opacity .2s;border-bottom:1px solid var(--color-border)}.nav-open{transform:translateY(0);opacity:1;pointer-events:auto}.menu-toggle{display:flex}}.hero{min-height:85vh;display:flex;align-items:center;padding:4rem 2rem 5rem;background:var(--color-bg);position:relative}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--color-surface) 0%,var(--color-bg) 100%);opacity:.5;pointer-events:none}.hero-content{max-width:720px;position:relative}.hero-subtitle{display:block;font-family:var(--font-sans);font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:.75rem}.hero h1{font-family:var(--font-serif);font-size:clamp(2.75rem,6vw,4.5rem);font-weight:400;line-height:1.1;margin:0 0 1.5rem;color:var(--color-text)}.hero-description{font-size:1.2rem;color:var(--color-text-muted);line-height:1.7;margin:0 0 2rem;max-width:560px}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-stats{display:flex;gap:3rem;margin-top:1rem;padding-top:2rem;border-top:1px solid var(--color-border)}.hero-stat{display:flex;flex-direction:column;gap:.25rem}.hero-stat-value{font-family:var(--font-serif);font-size:1.75rem;font-weight:400;color:var(--color-text)}.hero-stat-label{font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.btn{display:inline-flex;align-items:center;padding:.875rem 1.75rem;font-size:.95rem;font-weight:600;text-decoration:none;border-radius:6px;transition:background .2s,transform .2s,border-color .2s}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-hover);color:var(--color-bg);transform:translateY(-1px)}.btn-secondary{background:transparent;color:var(--color-text);border:2px solid var(--color-border)}.btn-secondary:hover{border-color:var(--color-text);color:var(--color-text)}.section{padding:4rem 2rem;max-width:1200px;margin:0 auto}.section h2{font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:400;margin:0 0 1rem;text-align:center}.services .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-muted);margin-bottom:.5rem;text-align:center}.services h2{margin-bottom:.5rem}.services-intro{max-width:560px;margin:0 auto 2.5rem;text-align:center;color:var(--color-text-muted);line-height:1.6}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.service-card{padding:1.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;transition:border-color .2s,box-shadow .2s}.service-card:hover{border-color:var(--color-text-muted);box-shadow:0 4px 20px #0000000f}.service-card h3{font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.service-card p{margin:0;color:var(--color-text-muted);font-size:.95rem;line-height:1.5}.why-choose{background:var(--color-surface)}.section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-muted);margin-bottom:.5rem}.why-intro{max-width:640px;margin:0 auto 2.5rem;text-align:center;color:var(--color-text-muted);line-height:1.6}.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.why-card{padding:1.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;transition:border-color .2s,box-shadow .2s}.why-card:hover{border-color:var(--color-text-muted);box-shadow:0 4px 20px #0000000f}.why-card h3{font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.why-card p{margin:0;font-size:.95rem;color:var(--color-text-muted);line-height:1.5}.schedule-section{background:var(--color-surface)}.schedule-section .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-muted);margin-bottom:.5rem;text-align:center}.schedule-section h2{margin-bottom:2rem}.schedule-placeholder{text-align:center;padding:3rem;background:var(--color-bg);border:2px dashed var(--color-border);border-radius:8px}.schedule-placeholder p{margin:0 0 .5rem;color:var(--color-text-muted)}.schedule-phone{font-size:1.5rem;font-weight:600;color:var(--color-text);text-decoration:none}.schedule-phone:hover{text-decoration:underline}.schedule-note{margin-top:1rem!important;font-size:.85rem;opacity:.8;color:var(--color-text-muted)}.schedule-note code{background:var(--color-surface-elevated);padding:.2em .4em;border-radius:4px}.schedule-btn{display:inline-block;margin-top:1rem}.schedule-embed{border-radius:8px;overflow:hidden;border:1px solid var(--color-border)}.schedule-embed iframe{display:block}.testimonials{background:var(--color-bg)}.testimonials .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-muted);margin-bottom:.5rem;text-align:center}.testimonials h2{margin-bottom:2rem}.testimonials-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem;margin:0 -2rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.testimonials-scroll::-webkit-scrollbar{height:6px}.testimonials-scroll::-webkit-scrollbar-track{background:var(--color-surface);border-radius:3px}.testimonials-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.testimonials-grid{display:flex;gap:1.5rem;padding:0 2rem}.testimonial-card{flex:0 0 min(320px,85vw);padding:1.75rem;scroll-snap-align:start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;margin:0;transition:border-color .2s,box-shadow .2s}.testimonial-card:hover{border-color:var(--color-text-muted);box-shadow:0 4px 20px #0000000f}.testimonial-card p{margin:0 0 1rem;font-size:1rem;line-height:1.6;color:var(--color-text)}.testimonial-card footer{display:flex;flex-direction:column;gap:.25rem}.testimonial-card cite{font-style:normal;font-weight:600;color:var(--color-text)}.testimonial-card span{font-size:.85rem;color:var(--color-text-muted)}.contact{background:var(--color-surface)}.contact .section-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-muted);margin-bottom:.5rem;text-align:center}.contact h2{margin-bottom:2rem}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.contact-form-wrapper h3{font-size:1rem;margin:0 0 1rem;color:var(--color-text-muted)}.contact-info{display:flex;flex-direction:column;gap:1.5rem}@media(max-width:768px){.contact-layout{grid-template-columns:1fr}}.contact-item h3{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 .5rem}.contact-item a,.contact-item p{margin:0;color:var(--color-text);font-size:1rem}.contact-item a:hover{color:var(--color-text-muted)}.contact-form{display:flex;flex-direction:column;gap:1rem;max-width:400px}.contact-form input,.contact-form textarea{padding:.75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-family:inherit;font-size:.95rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--color-text-muted)}.contact-form textarea{resize:vertical;min-height:100px}.contact-form--success{text-align:center;padding:2rem}.contact-form--success p{margin:0;color:var(--color-text-muted)}.contact-form-error{margin:0!important;padding:.75rem;background:#0000000d;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.9rem}.cta-section{padding:4rem 2rem;background:var(--color-text);color:var(--color-bg);text-align:center}.cta-content{max-width:640px;margin:0 auto}.cta-section h2{font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:400;margin:0 0 .75rem}.cta-section p{margin:0 0 1.5rem;color:#ffffffd9;font-size:1.1rem}.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.cta-section .btn-primary{background:var(--color-bg);color:var(--color-text)}.cta-section .btn-primary:hover{background:var(--color-surface-elevated);color:var(--color-text)}.cta-section .btn-secondary{border-color:#ffffff80;color:var(--color-bg)}.cta-section .btn-secondary:hover{border-color:var(--color-bg);color:var(--color-bg)}.chatbot-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:flex-end;justify-content:flex-end;padding:1rem;z-index:200}.chatbot-panel{width:100%;max-width:380px;max-height:500px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;box-shadow:0 20px 50px #00000026;display:flex;flex-direction:column}.chatbot-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.chatbot-header h3{margin:0;font-size:1rem}.chatbot-header button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px}.chatbot-header button:hover{color:var(--color-text)}.chatbot-messages{flex:1;overflow-y:auto;padding:1rem;min-height:200px;max-height:320px}.chatbot-msg{margin-bottom:.75rem;padding:.75rem 1rem;border-radius:10px;font-size:.9rem;line-height:1.4}.chatbot-msg--user{background:var(--color-accent);color:var(--color-bg);margin-left:2rem}.chatbot-msg--bot{background:var(--color-surface);border:1px solid var(--color-border);margin-right:2rem}.chatbot-input{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--color-border)}.chatbot-input input{flex:1;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.9rem}.chatbot-input input::placeholder{color:var(--color-text-muted)}.chatbot-input button{padding:.75rem 1rem;background:var(--color-accent);color:var(--color-bg);border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:.9rem}.chatbot-input button:hover{background:var(--color-accent-hover)}.footer{background:var(--color-text);color:var(--color-bg);padding:3rem 2rem 1.5rem}.footer-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.2)}.footer-logo{height:40px;width:auto;filter:brightness(0) invert(1);margin-bottom:.75rem}.footer-brand p{margin:0;font-size:.9rem;color:#fffc;line-height:1.5}.footer h4{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin:0 0 1rem;color:#ffffffe6}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:.5rem}.footer a{color:#fffc;text-decoration:none;font-size:.9rem}.footer a:hover{color:var(--color-bg)}.footer-hours p,.footer-contact a{margin:0 0 .5rem;font-size:.9rem;display:block}.footer-hours p{color:#fffc}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:1.5rem;text-align:center}.footer-bottom p{margin:0;font-size:.85rem;color:#fff9}@media(max-width:768px){.footer-grid{grid-template-columns:1fr;text-align:center}.footer-logo{margin-left:auto;margin-right:auto}}:root{--color-bg: #ffffff;--color-surface: #fafafa;--color-surface-elevated: #f5f5f5;--color-border: #e5e5e5;--color-text: #0a0a0a;--color-text-muted: #525252;--color-accent: #0a0a0a;--color-accent-hover: #262626;--font-sans: "DM Sans", system-ui, sans-serif;--font-serif: "Instrument Serif", Georgia, serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}
