:root{--ink:#123e54;--teal:#006b91;--dark-teal:#004e73;--coral:#dd783d;--cream:#f4f9f8;--pale:#e7f4ef;--line:#d4e5e9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;background:#fff}.shell{width:min(1120px,calc(100% - 48px));margin:auto}.site-header{height:78px;display:flex;align-items:center;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e5eef0}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;line-height:1}.brand-mark{width:36px;height:36px;background:var(--teal);color:white;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:400}.brand strong{font-family:"Playfair Display",serif;font-size:20px;display:block}.brand small{font-size:8px;letter-spacing:2.4px;font-weight:700;color:var(--teal);display:block;margin-top:5px}.main-nav{display:flex;gap:30px;margin-left:auto}.main-nav a{color:#456576;text-decoration:none;font-size:14px;font-weight:600;padding:29px 0 26px;border-bottom:3px solid transparent}.main-nav a:hover,.main-nav .active{color:var(--teal);border-color:var(--coral)}.button{display:inline-flex;justify-content:center;gap:24px;align-items:center;background:var(--teal);color:white;text-decoration:none;border:0;border-radius:4px;padding:15px 20px;font:700 14px "DM Sans";cursor:pointer;transition:.2s}.button:hover{background:var(--dark-teal);transform:translateY(-1px)}.button span{font-size:19px;line-height:12px}.button-small{padding:12px 15px;font-size:13px;gap:12px}.menu-button{display:none}.hero{background:var(--cream);min-height:570px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:570px;align-items:center;gap:35px}.eyebrow{color:var(--teal);font-size:11px;font-weight:700;letter-spacing:1.7px;margin:0 0 17px;display:flex;align-items:center;gap:9px}.eyebrow span{display:inline-block;width:24px;height:2px;background:var(--coral)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Playfair Display",serif;line-height:1.12}h1{font-size:54px;letter-spacing:-1.4px;max-width:600px;margin-bottom:21px}h1 em{color:var(--teal);font-style:italic}.hero-text{font-size:17px;line-height:1.65;color:#506e7a;max-width:530px;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:25px}.text-link{color:var(--teal);font-size:14px;font-weight:700;text-decoration:none}.text-link span{font-size:18px;margin-left:5px}.hero-notes{display:flex;gap:19px;flex-wrap:wrap;margin-top:35px;font-size:12px;font-weight:600;color:#456576}.hero-art{height:465px;position:relative;background:#deefeb;border-radius:47% 47% 5% 5%;overflow:hidden;margin-top:55px}.sun{position:absolute;width:210px;height:210px;border-radius:50%;background:#f2bd83;right:34px;top:40px}.leaf{position:absolute;border-radius:80% 0 80% 0;background:#80afa0;transform:rotate(20deg)}.leaf-one{width:140px;height:220px;left:-40px;top:25px}.leaf-two{width:100px;height:160px;right:-25px;bottom:5px;transform:rotate(175deg);background:#4f9086}.art-card{position:absolute;background:#fff;border-radius:9px;box-shadow:0 15px 30px #2d675422}.card-back{width:128px;height:110px;bottom:42px;left:28px}.card-front{width:160px;padding:19px;bottom:25px;right:20px;display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.4}.card-front span{color:var(--coral);font-size:20px}.clinician,.patient{position:absolute;bottom:45px}.clinician{width:196px;height:320px;left:155px}.head,.p-head{position:absolute;border-radius:50%;background:#b87955}.head{width:74px;height:87px;left:62px;top:30px}.hair{width:87px;height:75px;border-radius:50% 50% 33% 33%;background:#2c3434;position:absolute;left:55px;top:18px}.body{position:absolute;width:180px;height:220px;bottom:0;left:8px;border-radius:85px 85px 0 0;background:#df8e77}.coat{position:absolute;width:160px;height:170px;bottom:0;left:20px;background:#f5f7f4;clip-path:polygon(18% 0,45% 20%,55% 20%,82% 0,100% 100%,0 100%)}.stethoscope{position:absolute;width:45px;height:63px;border:3px solid #375c5b;border-top:0;border-radius:0 0 50% 50%;left:77px;top:128px}.patient{width:160px;height:240px;right:75px}.p-head{width:64px;height:74px;left:44px;top:22px;background:#8d593e}.p-hair{position:absolute;width:76px;height:65px;top:12px;left:37px;background:#2a2420;border-radius:48% 52% 45% 40%}.p-body{position:absolute;width:160px;height:176px;bottom:0;background:#246a70;border-radius:80px 80px 0 0}.intro{padding:105px 0}.centered{justify-content:center}.intro h2,.section-heading h2,.visit h2,.appointment h2{font-size:40px;letter-spacing:-.8px;margin-bottom:14px;text-align:center}.section-lead{color:#506e7a;text-align:center;line-height:1.65;max-width:620px;margin:0 auto 48px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.feature-grid article{border:1px solid var(--line);padding:30px 27px}.icon,.service-icon{display:grid;place-items:center;color:var(--teal);background:var(--pale);width:45px;height:45px;border-radius:50%;font-size:24px}.feature-grid h3,.service-card h3{font-family:"Playfair Display",serif;font-size:21px;margin:22px 0 10px}.feature-grid p,.service-card p{color:#506e7a;font-size:14px;line-height:1.65;margin-bottom:0}.services-section{background:#f2f7f4;padding:98px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-heading h2{text-align:left;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{background:#fff;padding:28px;min-height:252px;display:flex;flex-direction:column;border:1px solid transparent}.service-card:hover{border-color:#bcdbd3}.service-card h3{margin:20px 0 9px}.service-card a{margin-top:auto;color:var(--teal);font-size:13px;font-weight:700;text-decoration:none;padding-top:19px}.accent-card{background:var(--teal)}.accent-card .service-icon{background:#4b948f;color:#fff}.accent-card h3,.accent-card p,.accent-card a{color:#fff}.visit{padding:108px 0;display:grid;grid-template-columns:1fr 1fr;gap:98px;align-items:center}.visit-art{height:405px;background:#d9ebe5;position:relative;overflow:hidden}.visit-window{width:150px;height:160px;position:absolute;top:54px;left:70px;background:#f6e4c9;border:13px solid #fff}.visit-window:before,.visit-window:after{content:"";position:absolute;background:#fff}.visit-window:before{height:100%;width:8px;left:58px}.visit-window:after{width:100%;height:8px;top:65px}.visit-plant{position:absolute;color:#508a72;font-size:155px;left:18px;bottom:35px}.visit-table{position:absolute;background:#a76c4f;width:275px;height:23px;right:-10px;bottom:105px}.visit-person{position:absolute;width:140px;height:205px;border-radius:75px 75px 0 0;background:#e98f75;right:95px;bottom:0}.visit-copy h2{text-align:left}.visit-copy>p:not(.eyebrow){color:#506e7a;line-height:1.65}.visit ol{list-style:none;padding:4px 0 0;margin:27px 0 0}.visit li{display:flex;gap:18px;padding:16px 0;border-top:1px solid var(--line)}.visit li b{color:var(--coral);font-size:12px}.visit li span{display:grid;font-size:13px;color:#526e7b;gap:4px}.visit li strong{color:var(--ink);font-size:15px}.appointment{background:var(--teal);color:white;padding:81px 0}.appointment-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.appointment .eyebrow{color:#e0f1ef}.appointment .eyebrow span{background:#ffb47b}.appointment h2{text-align:left;font-size:39px}.appointment-grid>div>p:not(.eyebrow){color:#deeff5;line-height:1.65;max-width:450px}.contact-line{display:flex;gap:12px;margin-top:30px;font-size:26px}.contact-line span{font-size:13px;display:grid;gap:3px}.contact-line a{color:white;text-decoration:none;font-weight:700}.appointment form{background:#fff;color:var(--ink);padding:29px;display:grid;gap:15px}.appointment label{font-size:12px;font-weight:700;display:grid;gap:7px}.appointment input,.appointment select{padding:12px;border:1px solid #d4e5e9;border-radius:3px;font:14px "DM Sans";color:var(--ink);background:#fff}.appointment button{margin-top:6px}.form-message{margin:0;font-size:13px;color:var(--teal);font-weight:700;min-height:15px}footer{background:#073e57;color:#deeff5;padding:47px 0 17px}.footer-wrap{display:grid;grid-template-columns:1.5fr 1fr 1fr;align-items:center}.footer-wrap .brand{color:#fff}.footer-wrap .brand small{color:#b6dec9}.footer-wrap p{font-size:13px;line-height:1.7;margin:0}.footer-wrap a:not(.brand){color:#deeff5;text-decoration:none}.copyright{font-size:11px;border-top:1px solid #326477;margin-top:40px;padding-top:17px;color:#bbd4de}@media(max-width:800px){.main-nav,.header-button{display:none}.menu-button{display:block;margin-left:auto;border:0;background:none;font-size:25px;color:var(--teal)}.main-nav.open{display:flex;position:absolute;top:77px;left:0;right:0;background:#fff;flex-direction:column;gap:0;padding:12px 24px;border-bottom:1px solid var(--line)}.main-nav.open a{padding:13px 0;border:0}.hero-grid,.visit,.appointment-grid{grid-template-columns:1fr;gap:35px}.hero-grid{padding-top:56px}.hero-art{margin:0;height:400px}.feature-grid,.service-grid{grid-template-columns:repeat(2,1fr)}.visit{gap:45px}.visit-art{max-width:500px;width:100%}.footer-wrap{gap:25px;grid-template-columns:1fr 1fr}.footer-wrap .brand{grid-column:1/-1}}@media(max-width:520px){.shell{width:min(100% - 32px,1120px)}.hero-grid{min-height:0}.hero h1{font-size:40px}.hero-art{height:320px}.clinician{left:55px;transform:scale(.82);transform-origin:bottom}.patient{right:15px;transform:scale(.78);transform-origin:bottom}.feature-grid,.service-grid{grid-template-columns:1fr}.intro,.services-section,.visit{padding:70px 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-notes{display:grid;gap:10px}.section-heading{align-items:start;flex-direction:column;gap:15px}.intro h2,.section-heading h2,.visit h2,.appointment h2{font-size:33px}.appointment{padding:65px 0}.appointment-grid{gap:35px}.footer-wrap{grid-template-columns:1fr}.footer-wrap .brand{grid-column:auto}}
