:root{--color-cream: #edebe5;--color-cream-deep: #e3dfd6;--color-white: #ffffff;--color-taupe: #b0a397;--color-taupe-deep: #8a7a6a;--color-text: #5c5a5a;--color-heading: #3e3a36;--color-rule: #d8d2c8}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:1.15rem;line-height:1.7;color:var(--color-text);background:var(--color-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}header{background:var(--color-cream);color:var(--color-heading);padding:1.75rem 0;position:sticky;top:0;z-index:100;border-bottom:1px solid var(--color-rule)}nav{max-width:1200px;margin:0 auto;padding:0 2.5rem;display:flex;justify-content:space-between;align-items:center}.logo{font-family:League Gothic,Helvetica Neue,sans-serif;font-size:1.65rem;font-weight:400;letter-spacing:.05em;color:var(--color-heading);text-transform:uppercase;white-space:nowrap}.nav-links{display:flex;gap:1.75rem;list-style:none}.nav-links a{color:var(--color-heading);text-decoration:none;font-family:Cormorant Garamond,serif;font-size:1.05rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;transition:color .3s}.nav-links a:hover{color:var(--color-taupe-deep)}.hero{background:var(--color-cream);color:var(--color-heading);padding:9rem 2rem;text-align:center}.hero h1{font-family:League Gothic,Helvetica Neue,sans-serif;font-weight:400;font-size:5rem;line-height:1.05;letter-spacing:.02em;text-transform:uppercase;color:var(--color-heading);margin-bottom:1.5rem;max-width:900px;margin-left:auto;margin-right:auto}.hero-beach{display:block;width:100%;max-width:900px;height:420px;object-fit:cover;object-position:center 40%;margin:3rem auto 0}.hero p{font-family:Cormorant Garamond,serif;font-style:italic;font-size:1.5rem;line-height:1.5;color:var(--color-text);max-width:700px;margin:0 auto}.container{max-width:1100px;margin:0 auto;padding:6rem 2.5rem}.section{margin-bottom:4rem}h2{font-family:League Gothic,Helvetica Neue,sans-serif;font-weight:400;color:var(--color-heading);font-size:3rem;line-height:1.1;letter-spacing:.03em;text-transform:uppercase;margin-bottom:2.5rem;text-align:center}h3{font-family:Cormorant Garamond,serif;color:var(--color-heading);font-size:1.65rem;font-weight:500;font-style:italic;letter-spacing:.01em;margin-top:2.5rem;margin-bottom:1rem}p{margin-bottom:1.25rem;line-height:1.8}ul{margin-left:1.5rem;margin-bottom:1.5rem;list-style:none}.about-content ul li,.insurance-list~ul li,ul:not(.nav-links):not(.insurance-list) li{margin-bottom:.65rem;position:relative;padding-left:1.25rem}.about-content ul li:before,ul:not(.nav-links):not(.insurance-list) li:before{content:"";position:absolute;left:0;top:.85em;width:.4rem;height:1px;background:var(--color-taupe)}.nav-links li{padding-left:0;margin-bottom:0}strong{color:var(--color-heading);font-weight:600}.highlight{background:var(--color-cream-deep);padding:2.25rem 2.5rem;border-left:2px solid var(--color-taupe);margin:2.5rem 0}.highlight p{margin-bottom:0;font-style:italic;font-size:1.2rem}.intro-section{background:var(--color-cream);padding:0}.intro-section+.intro-section,.intro-section+div>.section{border-top:1px solid var(--color-rule)}.about-content{max-width:760px;margin:0 auto}.about-layout{display:grid;grid-template-columns:minmax(260px,1fr) 1.6fr;gap:4rem;align-items:start;max-width:1100px;margin:0 auto}.about-layout .about-content{margin:0;max-width:none}.about-portrait{position:sticky;top:7rem}.about-portrait img{display:block;width:100%;height:auto;border:1px solid var(--color-rule);filter:saturate(.9)}@media(max-width:768px){.about-layout{grid-template-columns:1fr;gap:2.5rem}.about-portrait{position:static;max-width:360px;margin:0 auto}}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:3rem}.couples-therapy-column{display:flex;flex-direction:column;gap:1.5rem}.above-card-img{width:100%;height:200px;object-fit:cover;object-position:center;display:block}.service-card{background:var(--color-white);padding:2.25rem;border:1px solid var(--color-rule);border-radius:0;box-shadow:none;transition:border-color .3s,transform .3s}.service-card:hover{border-color:var(--color-taupe);transform:translateY(-2px)}.service-card-img{display:block;width:calc(100% + 4.5rem);margin:-2.25rem -2.25rem 1.75rem;height:200px;object-fit:cover;object-position:center}.service-card h3{color:var(--color-heading);margin-top:0;margin-bottom:1rem;font-style:italic;font-size:1.5rem}.section-img{display:block;width:100%;height:360px;object-fit:cover;object-position:center;margin-bottom:3rem}.insurance-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:2rem 0}.insurance-item{background:var(--color-white);padding:1.25rem 1rem;border:1px solid var(--color-rule);text-align:center;font-family:Cormorant Garamond,serif;font-size:1.05rem;letter-spacing:.04em;color:var(--color-heading)}.cta-section{background:var(--color-cream-deep);color:var(--color-heading);padding:7rem 2rem;text-align:center}.cta-section h2{color:var(--color-heading);margin-bottom:1.5rem}.cta-section p{font-size:1.3rem;font-style:italic;margin-bottom:.5rem}.btn{display:inline-block;margin-top:2rem;padding:1.1rem 2.75rem;background:var(--color-taupe-deep);color:var(--color-cream);text-decoration:none;border:1px solid var(--color-taupe-deep);border-radius:0;font-family:Cormorant Garamond,serif;font-weight:500;font-size:1rem;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s}.btn:hover{background:transparent;color:var(--color-taupe-deep)}footer{background:var(--color-heading);color:var(--color-cream);padding:3rem 2rem;text-align:center;font-family:Cormorant Garamond,serif}footer strong{color:var(--color-cream)}.footer-content{max-width:1200px;margin:0 auto}.footer-info{margin-bottom:1rem}.footer-info p{margin-bottom:.4rem;font-size:1rem;letter-spacing:.02em}.mt-1{margin-top:1.5rem}.mt-2{margin-top:2rem}.cta-subtext{margin-top:2.5rem;font-size:.95rem;font-style:italic;color:var(--color-text);opacity:.85}.copyright{margin-top:1.5rem;font-size:.85rem;letter-spacing:.06em;opacity:.7}@media(max-width:768px){.hero{padding:5rem 1.5rem}.hero h1{font-size:3rem}.hero p{font-size:1.2rem}nav{flex-direction:column;gap:1rem}.nav-links{flex-direction:column;gap:.75rem;text-align:center}h2{font-size:2.2rem}.container{padding:4rem 1.5rem}}
