:root{--red:#9d0b13;--ink:#342117;--cream:#f6f1e9;--line:#ded2c3;--muted:#795b44}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.06}h1{font-size:clamp(2.6rem,5vw,5.3rem);letter-spacing:-.04em;margin-bottom:24px}h2{font-size:clamp(2rem,3vw,3.2rem);letter-spacing:-.03em;margin-bottom:18px}h3{font-size:1.6rem;margin-bottom:12px}p{margin-bottom:20px}.eyebrow{font-size:.875rem;letter-spacing:.18em;color:var(--muted);line-height:1.7}.small{font-size:.875rem}.lead{font-size:1.3rem;max-width:850px;line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);border:1px solid var(--red);color:white;border-radius:30px;padding:13px 24px;text-decoration:none;font-weight:600;font-size:.9375rem;min-height:48px;transition:background .2s,transform .2s}.button:hover{background:#79060d;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--ink);border-color:#997354}.button.outline:hover{background:#eee3d5}.actions{display:flex;gap:14px;flex-wrap:wrap}.logo{text-decoration:none;display:flex;flex-direction:column;align-items:center;color:var(--red);width:154px;flex-shrink:0}.logo strong{font-family:Georgia,serif;font-weight:400;font-size:65px;line-height:.9;letter-spacing:-8px}.logo strong span{font-size:36px;letter-spacing:-4px}.logo small{letter-spacing:.34em;margin-top:12px;font-family:Georgia,serif;font-size:14px}header{display:flex;align-items:center;gap:28px;padding:28px 3%;border-bottom:1px solid #e9dfd3;background:rgba(246,241,233,.98);position:relative;z-index:5}nav{display:flex;gap:20px;align-items:center;flex:1;justify-content:center}nav a{font-size:.875rem;text-decoration:none;white-space:nowrap;padding:7px 0}nav a:hover,nav a[aria-current]{color:var(--red);border-bottom:1px solid var(--red)}header .button{white-space:nowrap;padding:11px 19px}.menu{display:none}.hero{position:relative;min-height:590px;overflow:hidden}.hero-image{position:absolute;inset:0 0 0 auto;width:64%;height:100%;object-fit:cover;object-position:center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f6f1e9 0%,rgba(246,241,233,.98) 27%,rgba(246,241,233,.82) 40%,transparent 62%);pointer-events:none}.hero-copy{position:relative;z-index:1;padding:60px 4% 34px;width:58%}.hero-copy h1{max-width:660px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:580px;margin-top:45px;font-size:.875rem;text-align:center;line-height:1.4}.benefits span{padding:8px 10px;border-right:1px solid var(--line)}.benefits span:last-child{border:0}.service-home{padding:26px 3% 34px}.cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.service-card{display:flex;flex-direction:column;text-decoration:none;border-radius:5px;overflow:hidden;background:#eee5d9;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 22px #34211717}.service-card img{width:100%;aspect-ratio:1.5;object-fit:cover}.service-card>div{padding:20px;display:flex;flex-direction:column;flex:1}.service-card h3{font-size:1.55rem}.service-card p{font-size:.875rem;line-height:1.4;margin-bottom:14px}.card-link{font-size:.875rem;color:var(--red);margin-top:auto;text-decoration:underline;text-underline-offset:4px}.insurance-band{display:grid;grid-template-columns:1fr 1.15fr;background:#fffaf4}.insurance-band>div{padding:42px 8%}.insurance-band>div:first-child{background:linear-gradient(120deg,#72080a,#ab1417);color:white}.insurance-band .eyebrow{color:#edccb2}.insurance-band>div:first-child .button{background:var(--cream);color:var(--ink);border-color:var(--cream)}.insurance-tags{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.insurance-tags span{border:1px solid var(--line);padding:8px 16px;border-radius:4px;color:var(--red);font-weight:600}.intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:45px 5%}.intro img{width:100%;height:375px;object-fit:cover;border-radius:6px}.intro p{max-width:530px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gallery img{width:100%;aspect-ratio:2.5;object-fit:cover}.visit-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:40px 4%;gap:0}.visit-grid>div{padding:10px 30px;border-right:1px solid var(--line)}.visit-grid>div:last-child{border:0}.visit-grid h2{font-size:2rem}footer{background:#eee4d8;padding:45px 5% 20px;display:grid;grid-template-columns:180px 1fr 1fr;gap:35px;align-items:start}footer>div{display:flex;flex-direction:column;gap:10px}footer a{font-size:.9375rem}.copyright{grid-column:1/-1;font-size:.875rem;border-top:1px solid #d7c8b8;padding-top:20px;margin:0;color:var(--muted)}.page-hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:370px;background:#eee5d9;align-items:center}.page-hero>div{padding:50px 8%}.page-hero h1{font-size:clamp(2.5rem,4.3vw,4.4rem)}.page-hero img{width:100%;height:370px;object-fit:cover}.page-content{max-width:1200px;margin:auto;padding:60px 5% 75px}.page-content>h2{margin-top:45px}.page-content .cards{margin-top:35px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:35px 0 45px}.steps>div{padding-top:20px;border-top:1px solid var(--line)}.steps span{color:var(--red);display:block;margin-bottom:15px;font-size:.875rem;letter-spacing:.14em}.steps p{color:#654e3f}details{border-top:1px solid var(--line);padding:20px 0}details:last-of-type{border-bottom:1px solid var(--line);margin-bottom:35px}summary{cursor:pointer;font-size:1.1rem;font-weight:600}details p{margin:16px 0 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.appointment-note{border-top:1px solid var(--line);margin-top:45px;padding-top:30px;max-width:750px}dialog{border:0;border-radius:12px;background:var(--cream);color:var(--ink);padding:45px;max-width:560px;width:calc(100% - 32px)}dialog::backdrop{background:#21120d99}.close{position:absolute;top:10px;right:15px;background:transparent;border:0;font-size:28px}.skip{position:absolute;left:20px;top:-80px;z-index:20;background:white;padding:15px}.skip:focus{top:10px}:focus-visible{outline:3px solid #b38332;outline-offset:4px}@media(min-width:1600px){body{max-width:1600px;margin:auto}}@media(max-width:1200px){header{gap:18px;flex-wrap:wrap}.logo{width:130px}.logo strong{font-size:56px}nav{gap:14px;order:3;width:100%}header>.button{margin-left:auto}.hero-copy{width:64%}.cards{gap:12px}.service-card>div{padding:16px}.service-card h3{font-size:1.35rem}}@media(max-width:760px){header{padding:20px;gap:12px}.logo{width:110px}.logo strong{font-size:48px}.logo small{font-size:12px;margin-top:8px}.menu{display:block;margin-left:auto;border:1px solid var(--line);padding:9px 12px;background:transparent;border-radius:5px;font-size:.875rem}header>.button{padding:9px 12px;min-height:42px;font-size:.875rem;margin-left:0}nav{display:none;flex-direction:column;align-items:stretch;gap:0;order:4}nav.open{display:flex}nav a{padding:12px;border-bottom:1px solid var(--line)}.hero{min-height:0;padding-bottom:0;display:flex;flex-direction:column}.hero-image{position:relative;order:2;width:100%;height:260px}.hero:after{display:none}.hero-copy{width:100%;padding:40px 6% 28px}.hero-copy h1{font-size:3.35rem}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.14em}.benefits{margin-top:30px;font-size:.8125rem}.benefits span{padding:7px 5px}.service-home{padding:22px 5%}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.service-card:last-child img{height:100%;aspect-ratio:1.3}.service-card>div{padding:18px 15px}.service-card h3{font-size:1.5rem}.insurance-band,.intro,.page-hero,.contact-grid{grid-template-columns:1fr}.insurance-band>div{padding:34px 6%}.intro{gap:26px;padding:32px 6%}.intro img{height:270px}.gallery{gap:4px}.gallery img{aspect-ratio:1.5}.visit-grid{grid-template-columns:1fr;padding:15px 6% 30px}.visit-grid>div{border-right:0;border-bottom:1px solid var(--line);padding:28px 0}.visit-grid>div:last-child{border:0}footer{grid-template-columns:1fr;gap:25px;padding:35px 6%}footer .logo{align-items:flex-start}.page-hero>div{padding:38px 6%}.page-hero h1{font-size:2.9rem;margin-bottom:0}.page-hero img{height:230px}.page-content{padding:35px 6% 50px}.lead{font-size:1.15rem}.steps{grid-template-columns:1fr;gap:12px}.contact-grid{gap:30px}dialog{padding:35px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Practice branding and verified contact details */
.logo{width:170px}.logo img{width:100%;height:auto;object-fit:contain}footer .logo{width:190px}.office-hours{font-size:.9375rem;margin:0 0 24px}.office-hours>div{display:flex;justify-content:space-between;gap:20px;padding:7px 0;border-bottom:1px solid var(--line)}.office-hours dt,.office-hours dd{margin:0}.office-hours dd{text-align:right;white-space:nowrap}.hours-heading{margin-top:40px}.visit-grid .office-hours{font-size:.875rem}@media(max-width:1200px){header .logo{width:150px}}@media(max-width:760px){header .logo{width:110px}footer .logo{width:170px}}

.header-phone{color:var(--red);font-size:.9375rem;font-weight:700;text-decoration:none;white-space:nowrap}.header-phone:hover{text-decoration:underline}header{gap:18px}.ppo-brands{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;margin:24px 0 28px}.ppo-brands span{font-size:1.35rem;font-weight:700}.ppo-brands .aetna{color:#7b3993}.ppo-brands .metlife{color:#17627a}.ppo-brands .cigna{color:#147da1}.ppo-brands .uhc{color:#183d79;font-family:Georgia,serif;font-size:1.2rem}.ppo-brands .more-plans{font-size:.875rem;font-weight:400;color:var(--muted)}.payment-label{font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:600;margin:0 0 12px}.insurance-band .insurance-tags{gap:8px;margin:12px 0 20px}.insurance-band .insurance-tags span{font-size:.875rem;padding:7px 12px}@media(min-width:1201px){header{flex-wrap:wrap}header nav{gap:15px}header .logo{width:150px}}@media(max-width:1200px){header .header-phone{margin-left:auto}header>.button{margin-left:0}}@media(max-width:760px){header{gap:10px}header .header-phone{order:5;width:100%;margin:6px 0 0;text-align:center;border-top:1px solid var(--line);padding-top:12px;font-size:1rem}header nav{order:6}}

.insurance-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0 28px}.insurance-logo{background:#fff;border:1px solid #e9e2d9;border-radius:5px;min-height:64px;padding:12px 10px;display:flex;align-items:center;justify-content:center}.insurance-logo img{max-width:100%;width:auto;height:auto;max-height:40px;object-fit:contain}.page-content>.insurance-logos{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:900px){.page-content>.insurance-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:400px){.insurance-logos,.page-content>.insurance-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}

.hero-image{object-position:75% center}.gallery img{aspect-ratio:2.1;object-fit:cover}.page-hero img[src="/assets/front-office-center.webp"]{object-position:75% center}@media(max-width:760px){.hero-image{height:auto;aspect-ratio:2.4;object-fit:cover;object-position:center}.gallery{grid-template-columns:1fr}.gallery img{aspect-ratio:2.1}}

.hero-image{width:100%;object-position:center center}.hero:after{background:linear-gradient(90deg,rgba(246,241,233,.98) 0%,rgba(246,241,233,.95) 25%,rgba(246,241,233,.78) 40%,rgba(246,241,233,.12) 62%,transparent 78%)}.center-gallery{display:block}.center-gallery img{width:100%;aspect-ratio:1536/498;object-fit:contain}@media(max-width:760px){.hero-image{width:100%;height:auto;aspect-ratio:1536/498;object-fit:contain}.hero:after{display:none}}

.hero-image{width:58%;object-fit:cover;object-position:center 25%}.hero:after{background:linear-gradient(90deg,#f6f1e9 0%,rgba(246,241,233,.98) 29%,rgba(246,241,233,.84) 40%,rgba(246,241,233,.12) 54%,transparent 65%)}@media(max-width:760px){.hero-image{width:100%;height:auto;aspect-ratio:1086/1124;object-fit:contain}.hero:after{display:none}}

.hero-image{width:64%;height:100%;object-fit:cover;object-position:center}.hero:after{background:linear-gradient(90deg,#f6f1e9 0%,rgba(246,241,233,.98) 27%,rgba(246,241,233,.82) 40%,transparent 62%)}@media(max-width:760px){.hero-image{width:100%;height:260px;aspect-ratio:auto;object-fit:cover;object-position:center}.hero:after{display:none}}

.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card:last-child{display:flex;grid-column:auto}.service-card:last-child img{width:100%;height:auto;aspect-ratio:1.5}@media(max-width:760px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

.hero-image{width:60%;object-fit:cover;object-position:center 30%}.hero:after{background:linear-gradient(90deg,#f6f1e9 0%,rgba(246,241,233,.98) 28%,rgba(246,241,233,.85) 39%,rgba(246,241,233,.18) 49%,transparent 59%)}@media(max-width:760px){.hero-image{width:100%;height:auto;aspect-ratio:1.41;object-fit:contain}.hero:after{display:none}}

.hero-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;max-width:500px;margin:0 0 26px;color:#5d3925;font-size:1rem;line-height:1.45}.hero-copy{width:52%;padding-right:3%}.hero-copy h1{font-size:clamp(2.6rem,4.6vw,5rem)}.hero-copy .benefits{background:rgba(246,241,233,.96);border-radius:5px;max-width:100%;padding:8px 0;color:#342117;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:30px;font-size:1rem}.hero-copy .benefits span{padding:8px 10px}.hero-copy .benefits span:nth-child(2){border-right:0}.hero-copy .benefits span:nth-child(3){border-right:1px solid var(--line)}@media(max-width:760px){.hero-copy{width:100%;padding:38px 6% 28px}.hero-copy h1{font-size:3rem}.hero-services{gap:8px 14px;font-size:1rem}.hero-copy .benefits{font-size:.9375rem}}

.hero-copy{width:58%;padding:60px 4% 34px}.hero-copy h1{font-size:clamp(2.6rem,5vw,5.3rem)}.hero-copy .benefits{background:transparent;border-radius:0;max-width:580px;padding:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:45px;font-size:.875rem}.hero-copy .benefits span{padding:8px 10px;border-right:1px solid var(--line)}.hero-copy .benefits span:last-child{border:0}.hero:after{background:linear-gradient(90deg,#f6f1e9 0%,rgba(246,241,233,.99) 30%,rgba(246,241,233,.96) 43%,rgba(246,241,233,.85) 52%,rgba(246,241,233,.5) 62%,rgba(246,241,233,.12) 77%,transparent 92%)}@media(max-width:760px){.hero-copy{width:100%;padding:40px 6% 28px}.hero-copy h1{font-size:3.35rem}.hero-copy .benefits{font-size:.8125rem;margin-top:30px}.hero-copy .benefits span{padding:7px 5px}.hero:after{display:none}}
