:root{--cream: #FAF7F4;--warm-white: #FDFBF9;--gold: #C4996C;--gold-light: #F2E8DB;--rose: #C4949B;--rose-light: #F5EAEC;--lavender: #9B8EAF;--teal: #8AACAD;--teal-light: #E6F0F0;--charcoal: #3A3535;--warm-gray: #7A7170;--stone: #A09590;--stone-light: #DDD5CF;--font-serif: "Cormorant Garamond", Georgia, serif;--font-sans: "Nunito Sans", -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-serif);color:var(--charcoal);background:var(--warm-white);line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--font-serif);font-weight:300;line-height:1.2}.label{font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--stone)}.body-text{font-family:var(--font-sans)}.container{max-width:1100px;margin:0 auto;padding:0 20px}.container--narrow{max-width:680px;margin:0 auto;padding:0 20px}.container--form{max-width:520px;margin:0 auto;padding:0 20px}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:14px 20px;transition:all .4s ease}.nav--scrolled{background:#fdfbf9f7;backdrop-filter:blur(12px);border-bottom:1px solid var(--stone-light);padding:8px 20px}.nav__inner{max-width:1100px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.nav__logo{height:44px;transition:height .4s ease}.nav--scrolled .nav__logo{height:36px}.nav__links{display:flex;gap:28px;align-items:center}.nav__link{font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--warm-gray);text-decoration:none;padding-bottom:3px;border-bottom:1.5px solid transparent;transition:all .3s ease}.nav__link:hover,.nav__link--active{color:var(--gold);border-bottom-color:var(--gold)}.nav__toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--charcoal)}@media(max-width:640px){.nav__toggle{display:block}.nav__links{display:none;position:absolute;top:100%;left:0;right:0;background:#fdfbf9fa;backdrop-filter:blur(12px);flex-direction:column;padding:20px;gap:20px;border-bottom:1px solid var(--stone-light)}.nav__links--open{display:flex}}.hero{min-height:85vh;display:flex;align-items:center;background:var(--cream);padding:90px 20px 50px}.hero__inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:48px;width:100%}.hero__text{flex:1 1 360px;min-width:280px}.hero__photo{flex:1 1 300px;max-width:420px}.hero__photo-frame{border-radius:4px 4px 200px;overflow:hidden;box-shadow:0 20px 60px #3a35351f;border:6px solid var(--warm-white);position:relative}.hero__photo-accent{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--rose),var(--lavender))}h1.hero__headline{font-size:clamp(32px,5vw,52px);margin-bottom:12px}.hero__sub{font-family:var(--font-sans);font-size:clamp(13px,1.5vw,15px);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}.divider{width:40px;height:1.5px;background:var(--gold);opacity:.5;margin-bottom:24px}.divider--center{margin-left:auto;margin-right:auto}.section{padding:56px 20px}.section--cream{background:var(--cream)}.section--white{background:var(--warm-white)}.section--gold-gradient{background:linear-gradient(180deg,var(--gold-light) 0%,var(--warm-white) 100%)}.section--cream-gradient{background:linear-gradient(180deg,var(--cream) 0%,var(--warm-white) 100%)}.section--rose-gradient{background:linear-gradient(180deg,var(--rose-light) 0%,var(--warm-white) 100%)}.section--hero-pad{padding-top:105px}.btn{font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;border:none;padding:15px 36px;cursor:pointer;border-radius:2px;transition:all .3s ease;text-decoration:none;display:inline-block}.btn--primary{background:var(--gold);color:#fff;box-shadow:0 2px 12px #c4996c40}.btn--primary:hover{background:#b8894f}.btn--outline{background:none;color:var(--gold);border:1.5px solid var(--gold);font-weight:500;padding:11px 28px}.btn--outline:hover{background:var(--gold-light)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.service-card{background:var(--warm-white);padding:24px 20px;text-align:center;box-shadow:0 2px 12px #0000000a}.service-card--rose{border-top:3px solid var(--rose)}.service-card--lavender{border-top:3px solid var(--lavender)}.service-card--teal{border-top:3px solid var(--teal)}.service-card__name{font-family:var(--font-sans);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--stone);margin-bottom:8px}.service-card__price{font-size:30px;font-weight:300;margin-bottom:3px}.service-card__duration{font-family:var(--font-sans);font-size:13px;color:var(--warm-gray)}.insurance-callout{margin-top:24px;padding:20px 24px;background:var(--teal-light);border-left:3px solid var(--teal);border-radius:2px}.insurance-callout p{font-family:var(--font-sans);font-size:14px;line-height:1.7;margin:0}.about-header{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}.about-photo{flex:0 0 auto;width:clamp(180px,28vw,280px)}.about-photo__frame{border-radius:140px 4px 4px;overflow:hidden;box-shadow:0 16px 48px #3a35351a;border:5px solid var(--warm-white)}.about-text{flex:1 1 300px}.specialization-quote{border-left:3px solid var(--rose);padding-left:24px;font-style:italic}.faq-item{border-bottom:1px solid var(--stone-light)}.faq-item__trigger{width:100%;padding:20px 0;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:16px}.faq-item__question{font-family:var(--font-serif);font-size:17px;font-weight:400;color:var(--charcoal);line-height:1.4}.faq-item__icon{font-family:var(--font-sans);font-size:20px;color:var(--gold);flex-shrink:0;transition:transform .2s ease}.faq-item--open .faq-item__icon{transform:rotate(45deg)}.faq-item__answer{display:none;padding-bottom:20px;font-family:var(--font-sans);font-size:14px;color:var(--warm-gray);line-height:1.8}.faq-item--open .faq-item__answer{display:block}.form-label{font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);display:block;margin-bottom:7px}.form-input,.form-textarea{width:100%;padding:13px 14px;border:1px solid var(--stone-light);background:var(--warm-white);font-family:var(--font-sans);font-size:14px;color:var(--charcoal);outline:none;border-radius:2px;transition:border-color .3s ease}.form-input:focus,.form-textarea:focus{border-color:var(--gold)}.form-textarea{min-height:80px;resize:vertical}.form-group{margin-bottom:18px}.form-consent{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.form-consent input[type=checkbox]{margin-top:3px;accent-color:var(--gold)}.form-consent span{font-family:var(--font-sans);font-size:12px;color:var(--warm-gray);line-height:1.6}.form-disclaimer{font-family:var(--font-sans);font-size:11px;color:var(--stone);line-height:1.7;margin-top:18px;text-align:center}.confirmation{background:var(--teal-light);border:1px solid var(--teal);padding:32px;text-align:center;border-radius:2px}.footer{background:var(--charcoal);color:var(--stone-light);padding:40px 20px;font-family:var(--font-sans);font-size:13px}.footer__inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px}.footer a{color:inherit;text-decoration:none}.footer a:hover{text-decoration:underline;text-underline-offset:3px}.crisis-banner{background:var(--teal-light);padding:12px 20px;text-align:center;font-family:var(--font-sans);font-size:13px;color:var(--charcoal)}.text-center{text-align:center}.text-gold{color:var(--gold)}.text-warm-gray{color:var(--warm-gray)}.text-stone{color:var(--stone)}.text-italic{font-style:italic}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.prose{font-size:17px;line-height:1.9;font-weight:300}.prose p+p{margin-top:18px}.contact-link{color:var(--warm-gray);text-decoration:none;border-bottom:1px solid var(--stone-light)}.contact-link:hover{color:var(--gold);border-bottom-color:var(--gold)}
