@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#142f43;--paper:#f8fafb;--muted:#506373;--gold:#e7c58b;--line:#d8e1e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-underline-offset:5px}a:focus-visible,summary:focus-visible{outline:3px solid #be893a;outline-offset:6px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.05;letter-spacing:-.025em}h2{font-size:clamp(2.8rem,5vw,4rem);margin-bottom:26px}h3{font-size:1.3rem;line-height:1.4;font-weight:500}p{margin-bottom:22px}.header{display:flex;align-items:center;justify-content:space-between;max-width:1440px;margin:auto;padding:22px 5%;gap:30px;background:var(--paper)}.brand{text-decoration:none;font-family:Georgia,serif;font-size:1.45rem;line-height:1.2;display:flex;align-items:center;gap:14px}.brand small{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.65rem;letter-spacing:.2em;margin-top:7px}.mark{display:block;color:#aa7b37;font-size:3rem;line-height:.7;transform:rotate(180deg)}nav{display:flex;align-items:center;gap:30px}nav a{font-size:.9rem;text-decoration:none}nav a:hover,.text-link:hover{color:#956a30}.button{display:inline-block;padding:14px 26px;background:var(--ink);color:white;border-radius:3px;text-decoration:none;font-weight:600;font-size:.95rem;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#24495f}.button.small{padding:10px 22px}.button.gold{background:var(--gold);color:var(--ink)}.button.gold:hover{background:#f3d7a7}.hero{color:white;min-height:690px;background:radial-gradient(ellipse at 96% 20%,#7194a4 0,transparent 48%),radial-gradient(ellipse at 80% 90%,#305970 0,transparent 45%),#142f43;position:relative;overflow:hidden}.hero-inner{max-width:1440px;margin:auto;padding:80px 8% 55px;position:relative}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.18em;margin-bottom:22px}.hero .eyebrow{color:var(--gold)}h1{font-size:clamp(4.7rem,8.5vw,8.5rem);margin-bottom:30px}h1 em{font-weight:400;color:#e7c58b}.intro{max-width:480px;font-size:1.1rem;color:#e0e9ee;line-height:1.75}.quiet-link{display:inline-block;margin-left:24px;font-size:.9rem}.hero-note{display:flex;flex-direction:column;font-size:.82rem;margin-top:55px;color:#cfdae0;line-height:1.8}.hero-note span:first-child{font-size:.95rem;color:white}.side-note{position:absolute;right:5%;top:50%;writing-mode:vertical-rl;letter-spacing:.3em;font-size:.7rem;color:#d4e0e7}.intro-strip{padding:28px 8%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.intro-strip p{font-family:Georgia,serif;font-size:1.25rem;margin:0}.intro-strip span{font-size:.85rem;color:var(--muted)}.section{padding:100px 8%;max-width:1440px;margin:auto}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.about p:not(.eyebrow){color:var(--muted)}.portrait{min-height:460px;position:relative;background:#c7d6df}.portrait img{width:100%;height:460px;object-fit:cover;object-position:center 30%;display:block}.portrait-caption{background:var(--ink);color:white;padding:20px 25px;font-size:.8rem;letter-spacing:.13em;position:absolute;bottom:0;left:0;right:0}.portrait-caption span{display:block;letter-spacing:.05em;font-size:.75rem;color:#c7d6df}.no-photo{background:linear-gradient(145deg,#7294a5,#142f43);min-height:360px}.text-link{font-weight:600;font-size:.95rem}.services{background:#edf3f6;max-width:none}.section-heading{display:flex;gap:60px;justify-content:space-between;align-items:flex-end}.section-heading>p{max-width:330px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:25px}.cards article{padding:36px 30px;background:var(--paper);border:1px solid #dce5e9;display:flex;flex-direction:column}.number{font-family:Georgia,serif;color:#8b6a3d;font-size:1.7rem;display:block;margin-bottom:35px}.cards p{color:var(--muted);font-size:.95rem}.cards .card-bottom{font-size:.8rem;margin:auto 0 0;padding-top:25px;border-top:1px solid var(--line)}.specialties{margin-top:45px;display:grid;grid-template-columns:1fr 2fr;gap:40px}.tags{display:flex;flex-wrap:wrap;gap:9px}.tags span{font-size:.85rem;background:#dfe9ee;padding:7px 14px;border-radius:2px}.getting-started{display:grid;grid-template-columns:1fr 1fr;gap:100px}.getting-started>div>p:not(.eyebrow){max-width:400px;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:1.05rem}summary::-webkit-details-marker{display:none}summary::after{content:'+';font-size:1.4rem;line-height:1.4;font-weight:400}details[open] summary::after{content:'−'}details p{font-size:.95rem;color:var(--muted);margin:17px 0 8px}.contact{background:var(--ink);color:white;padding:85px 8%;display:grid;grid-template-columns:1.3fr 1fr;gap:80px}.contact .eyebrow{color:var(--gold)}.contact p{color:#d3dfe6}.contact-details{padding-top:35px}.contact address{font-size:1.2rem;font-style:normal;margin-bottom:20px}.contact-details>a{font-size:.9rem}.contact-divider{height:1px;background:#446070;margin:30px 0}.contact-details p:last-child{font-size:.9rem}footer{padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .brand{display:block;font-size:1.15rem}footer p,footer>a:last-child{font-size:.75rem;color:var(--muted);margin:0}@media(min-width:1441px){.services,.contact{padding-left:max(8%,calc((100vw - 1210px)/2));padding-right:max(8%,calc((100vw - 1210px)/2))}}@media(max-width:900px){.header{padding:20px 5%}nav{gap:16px}nav a{font-size:.8rem}.about{gap:40px}.section{padding:70px 6%}.getting-started{gap:40px}.cards{gap:12px}.cards article{padding:25px 20px}.intro-strip{flex-wrap:wrap}.intro-strip p{width:100%}.contact{padding:65px 6%;gap:40px}}@media(max-width:650px){html{scroll-padding-top:20px}.header{flex-direction:column;align-items:flex-start;gap:18px}.brand{font-size:1.25rem}nav{width:100%;justify-content:space-between;gap:8px}nav a{font-size:.75rem}nav .button.small{padding:8px 12px}.hero{min-height:0}.hero-inner{padding:55px 6% 40px}h1{font-size:4.9rem}.hero .eyebrow{font-size:.65rem;letter-spacing:.12em}.intro{font-size:1rem}.quiet-link{display:block;margin:20px 0 0}.side-note{display:none}.hero-note{margin-top:36px}.intro-strip{padding:24px 6%;gap:12px 25px}.intro-strip span{font-size:.8rem}.section{padding:55px 6%}.about,.getting-started{grid-template-columns:1fr;gap:38px}.portrait,.portrait img{height:390px;min-height:390px}.section-heading{display:block}.section-heading>p{max-width:none}.cards{grid-template-columns:1fr;gap:15px}.cards article{padding:28px}.number{margin-bottom:15px}.cards .card-bottom{padding-top:15px}.specialties{grid-template-columns:1fr;gap:10px}.contact{grid-template-columns:1fr;gap:10px;padding:55px 6%}.contact-details{padding-top:30px}footer{flex-direction:column;align-items:flex-start;padding:30px 6%;gap:22px}h2{font-size:3rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.insurance{border-top:1px solid var(--line);padding-top:35px}.insurance p,.coverage-note{font-size:.85rem;color:var(--muted)}.coverage-note{margin:18px 0 0}.gallery{padding-bottom:30px}.slideshow{max-width:980px;margin:25px auto 0}.slide{margin:0;background:#edf3f6}.slide[hidden]{display:none}.slide img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain}.slide img[hidden]{display:none}.image-error{padding:50px;text-align:center}.slide-controls{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.slide-controls button{font:inherit;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:3px;padding:9px 22px;cursor:pointer}.slide-controls button:hover{background:#edf3f6}.slide-controls button:focus-visible{outline:3px solid #be893a;outline-offset:3px}#slide-count{font-size:.85rem;color:var(--muted)}

.hero-inner{padding-right:52%}.hero-slideshow{position:absolute;top:90px;right:6%;width:40%;max-width:540px;margin:0;border:1px solid #7894a5;border-radius:5px;overflow:hidden;background:#102b3d;box-shadow:0 20px 60px #06172440}.hero-slideshow .slide{background:#102b3d}.hero-slideshow .slide img{height:350px;width:100%;object-fit:contain}.hero-slideshow .slide-controls{padding:14px 16px;gap:8px}.hero-slideshow .slide-controls button{color:white;border-color:#597486;font-size:.8rem;padding:7px 12px}.hero-slideshow .slide-controls button:hover{background:#294b60}.hero-slideshow [data-count]{color:#d8e5ed;font-size:.8rem}.hero-slideshow .image-error{font-size:.9rem;padding:55px 25px;min-height:350px;align-content:center}.hero-inner h1{font-size:clamp(4.5rem,7.5vw,7.6rem)}[data-count]{font-size:.85rem;color:var(--muted)}
@media(max-width:1000px){.hero-inner{padding-left:6%;padding-right:50%}.hero-inner h1{font-size:clamp(3.7rem,7vw,5.4rem)}.hero-slideshow{right:4%;width:43%;top:95px}.hero-slideshow .slide img{height:300px}.hero-slideshow .slide-controls{padding:12px 8px}.hero-slideshow .slide-controls button{padding:7px 8px}}
@media(max-width:750px){.hero-inner{padding:50px 6% 32px}.hero-inner h1{font-size:clamp(4.5rem,12vw,6rem)}.hero-slideshow{position:relative;top:auto;right:auto;width:88%;max-width:540px;margin:0 auto 36px}.hero-slideshow .slide img{height:300px}.hero-slideshow .slide-controls{padding:14px 16px}}

.about .portrait{min-height:0;height:auto;background:#e8edf0}.about .portrait img{height:auto;width:100%;object-fit:contain;object-position:center;display:block}.about .portrait-caption{position:static}.about .portrait.no-photo{min-height:0}



.brand-logo{display:block;width:56px;height:56px;object-fit:contain;flex-shrink:0}@media(max-width:650px){.brand-logo{width:48px;height:48px}}

.brand-logo{width:68px;height:52px}@media(max-width:650px){.brand-logo{width:60px;height:46px}}

.brand-logo{width:70px;height:36px;object-fit:contain}@media(max-width:650px){.brand-logo{width:58px;height:30px}}

.slide-controls .icon-control{display:inline-grid;place-items:center;width:42px;height:42px;padding:0}.slide-controls .icon-control svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
