@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');:root{--ink:#1d2928;--paper:#fbfaf7;--rose:#bd927c;--muted:#596260;--line:#d9d9d1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--rose);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.05;letter-spacing:-.025em}h1{font-size:clamp(3.6rem,7vw,7rem);margin-bottom:28px}h2{font-size:clamp(2.8rem,4.5vw,4.8rem);margin-bottom:25px}h3{font-size:2rem}.eyebrow{font-size:14px;letter-spacing:.19em;font-weight:600;line-height:1.5;margin-bottom:24px}header{height:106px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper)}.brand{font-family:Georgia,serif;letter-spacing:.075em;font-size:35px;line-height:1;text-align:center}.brand span{display:block;font-family:Arial,sans-serif;font-size:12px;letter-spacing:.35em;margin-top:9px}nav{display:flex;gap:35px;align-items:center;font-size:14px}nav a:hover,.text-link:hover{color:var(--rose)}.nav-cta{border:1px solid var(--ink);padding:11px 24px}.menu{display:none}.hero{position:relative;min-height:680px;height:calc(100svh - 106px);max-height:950px;color:white;background:var(--ink)}.hero>img,.area-hero>img{width:100%;height:100%;position:absolute;object-fit:cover}.hero:after,.area-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,20,19,.65),rgba(9,20,19,.08)),linear-gradient(0deg,rgba(9,20,19,.45),transparent 30%)}.hero-content{position:relative;z-index:1;padding:110px 8% 90px;max-width:1150px}.hero-content>p:not(.eyebrow){font-size:20px}.hero h1{font-size:clamp(4rem,7.4vw,7.5rem)}.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-block;background:var(--ink);color:white;border:1px solid var(--ink);padding:17px 27px;font-size:14px;font-weight:500;cursor:pointer;text-align:center;transition:background .2s}.button:hover{background:#38504c}.button.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.button.light:hover{background:#e6ded7}.button.outline{background:transparent;border-color:#fff;color:#fff}.hero-foot{position:absolute;bottom:30px;left:8%;right:8%;z-index:1;display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.17em}.wrap{max-width:1450px;margin:auto;padding:110px 8%}.intro{display:grid;grid-template-columns:1fr 1fr;column-gap:90px}.intro>.eyebrow{grid-column:1/-1}.intro p,.about-strip p,.section-head>p{color:var(--muted);max-width:580px}.split-services{display:grid;grid-template-columns:1fr 1fr}.split-services>a{padding:85px 14%;background:var(--ink);color:var(--paper)}.split-services>a+ a{background:#e7ddd3;color:var(--ink)}.split-services h2{font-size:clamp(2.6rem,3.5vw,4rem)}.split-services p{max-width:380px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:6px;font-size:14px;font-weight:600;margin-top:20px}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}.section-head .text-link{margin-bottom:25px}.community-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.community img{height:350px;width:100%;object-fit:cover;display:block;transition:filter .2s}.community:hover img{filter:brightness(.85)}.community>div{padding-top:20px}.community span{font-family:Georgia,serif;font-size:27px}.community small{display:block;font-size:14px;color:var(--muted);margin-top:6px}.about-strip{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;border-top:1px solid var(--line)}.about-strip img{width:100%;height:620px;object-fit:cover;object-position:50% 25%}.valuation{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#ede8e1;max-width:none}.quick-form{align-self:center}.quick-form label{display:block;font-size:14px}.quick-form input{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:20px 0;width:100%;margin-bottom:24px}.quick-form small{display:block;font-size:14px;margin-top:16px;color:var(--muted)}footer{background:var(--ink);color:var(--paper);padding:80px 8% 35px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:40px}.footer-top h2{font-size:3rem;margin:0}.footer-bottom{border-top:1px solid #56615f;padding-top:35px;margin-top:65px;display:flex;justify-content:space-between;font-size:14px}.legal{font-size:12px;line-height:1.7;opacity:.7;max-width:1100px;margin:30px 0 0}.page-intro{padding-top:90px;padding-bottom:80px}.page-intro>p:not(.eyebrow){font-size:20px;max-width:700px;color:var(--muted)}.compact{padding-top:45px}.wide-photo{height:480px}.wide-photo img{width:100%;height:100%;object-fit:cover}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps article{border-top:1px solid var(--line);padding-top:28px}.steps p{color:var(--muted)}details{border-bottom:1px solid var(--line);padding:24px 0}summary{cursor:pointer;font-size:18px}details p{padding-top:20px;max-width:800px;color:var(--muted)}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);padding-top:60px}.credentials strong{display:block;font-family:Georgia,serif;font-size:32px;font-weight:400}.credentials span{display:block;font-size:14px;color:var(--muted);margin-top:10px}.area-hero{height:580px;position:relative;color:white}.area-hero>div{position:relative;z-index:1;padding:150px 8%}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-details{display:flex;flex-direction:column;gap:14px;margin-top:45px}.contact-details span{font-size:14px;color:var(--muted)}form label{display:block;font-size:14px;margin-bottom:22px}form input,form select,form textarea{display:block;width:100%;border:1px solid #b8bfba;border-radius:0;background:transparent;padding:12px;margin-top:8px;color:var(--ink)}form textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note,.optional,#form-status{font-size:14px;color:var(--muted)}@media(min-width:1500px){.hero-content{padding-top:145px}}@media(max-width:900px){nav{gap:20px}.wrap{padding:75px 6%}.intro,.about-strip,.valuation,.contact-layout{gap:40px}.community-grid{gap:18px}.community img{height:270px}.about-strip img{height:500px}.steps{grid-template-columns:1fr 1fr}.footer-top h2{font-size:2.4rem}.footer-top{flex-wrap:wrap}.hero-content{padding:100px 6%}.hero-foot{left:6%;right:6%}}@media(max-width:640px){header{height:85px;padding:0 6%}.brand{font-size:29px}.menu{display:block;border:0;background:transparent;padding:12px;font-size:14px}nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--paper);padding:30px 6%;z-index:10;flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{height:720px;min-height:0}.hero-content{padding-top:100px}.hero h1{font-size:3.8rem}.hero-content>p:not(.eyebrow){font-size:17px}.hero-foot{flex-direction:column;font-size:12px;gap:12px}.actions{align-items:stretch;flex-direction:column}.wrap{padding:65px 6%}.intro,.split-services,.about-strip,.valuation,.contact-layout{grid-template-columns:1fr;gap:30px}.intro h2{margin-bottom:0}.split-services>a{padding:65px 6%}.section-head{display:block}.community-grid{grid-template-columns:1fr;gap:35px}.community img{height:350px}.about-strip img{height:480px}.about-strip{border:0}.footer-top{display:block}.footer-top>.brand{display:inline-block;margin-bottom:30px}.footer-top .button{margin-top:25px}.footer-bottom{flex-direction:column;gap:15px}.steps,.credentials{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.wide-photo{height:320px}.area-hero{height:460px}.area-hero>div{padding:120px 6%}.page-intro h1{font-size:3.6rem}.compact{padding-top:30px}.eyebrow{font-size:12px}.contact-layout h1{font-size:3.4rem}.quick-form .button{width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.dogs-intro{background:#e7ddd3;max-width:none}.dog-profiles{display:grid;grid-template-columns:1fr 1fr;gap:80px}.dog-profiles article{border-top:1px solid var(--rose);padding-top:35px}.dog-profiles p{max-width:430px;color:var(--muted)}.about-strip img{object-position:50% 35%}@media(max-width:640px){.dog-profiles{grid-template-columns:1fr;gap:45px}}

.dogs-photo{padding-top:60px;padding-bottom:0}.dogs-photo img{display:block;width:100%;height:auto}.dog-profiles{padding-top:65px}

/* Botanical refinement */
:root{--ink:#203a2f;--paper:#faf9f3;--rose:#b69372;--muted:#536357;--line:#d3dacb;--leaf:#647958;--garden:#e5eadf}
header{border-bottom:1px solid var(--line)}.brand{color:var(--ink)}footer .brand{color:var(--paper)}.button:hover{background:#3f5c45}.nav-cta{border-color:var(--leaf)}.hero:after,.area-hero:after{background:linear-gradient(90deg,rgba(15,39,25,.68),rgba(20,40,27,.08)),linear-gradient(0deg,rgba(15,39,25,.45),transparent 35%)}.hero-content .eyebrow{color:#e2e8d3}.hero-foot{border-top:1px solid rgba(237,240,220,.35);padding-top:22px}.botanical-intro>.eyebrow:before{content:'❧';display:inline-block;font-family:Georgia,serif;font-size:32px;line-height:1;color:var(--leaf);margin-right:16px;vertical-align:middle}.split-services>a{background:#203a2f}.split-services>a+a{background:var(--garden)}.split-services .eyebrow{color:#d0d9bb}.split-services>a+a .eyebrow{color:#50663e}.community img{border-radius:48% 48% 0 0 / 16% 16% 0 0}.community span{color:var(--ink)}.community>div{border-bottom:1px solid var(--line);padding-bottom:20px}.about-strip{border-color:var(--line)}.valuation{background:var(--garden);border-top:1px solid #c3ceba;border-bottom:1px solid #c3ceba}.quick-form small{color:#4f6047}.eyebrow{color:var(--leaf)}.hero .eyebrow,.area-hero .eyebrow{color:#e2e8d3}.dogs-intro{background:var(--garden);border-bottom:1px solid var(--line)}.dog-profiles article{border-color:var(--leaf)}.dogs-photo img{border-radius:3px}.botanical-signature{font-family:Georgia,serif;font-size:54px;text-align:center;color:#bac8a0;margin-bottom:40px;line-height:1}.footer-top{padding-top:30px;border-top:1px solid #5e725b}.footer-bottom{border-color:#5e725b}.steps article{border-top:2px solid #9ead8a}.credentials{background:#edf0e7}.form-note{color:#536357}form input,form select,form textarea{border-color:#a4b19a}.page-intro> .eyebrow{color:#647958}@media(max-width:640px){.community img{border-radius:40% 40% 0 0 / 12% 12% 0 0}.botanical-signature{margin-bottom:28px}.hero-foot{padding-top:18px}}

/* New England hydrangea garden */
:root{--ink:#263f3b;--paper:#fbfaf4;--rose:#ae8c70;--muted:#52615c;--line:#d1dcd7;--leaf:#526f57;--garden:#e8eee6;--hydrangea:#6d91b8;--hydrangea-pale:#e9eff5}
.skip-link{position:absolute;top:8px;left:8px;z-index:30;padding:12px 18px;background:white;color:var(--ink);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;padding:18px 6%;font-size:14px;background:var(--paper)}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.hydrangea-hero:after{background:linear-gradient(90deg,rgba(15,37,27,.76),rgba(15,37,27,.25) 66%,rgba(15,37,27,.09)),linear-gradient(0deg,rgba(15,37,27,.6),transparent 35%)}.hydrangea-hero>img{object-position:50% 58%}.hero-content{padding-top:95px}.hero-foot{background:transparent}
.botanical-intro{position:relative;padding-bottom:170px;background-image:url('/images/hydrangea-botanical.webp');background-size:470px auto;background-repeat:no-repeat;background-position:right -90px bottom -60px}.botanical-intro>.eyebrow:before{content:none}.botanical-intro>div{position:relative;z-index:1}
.hydrangea-heading{background-color:#f1f4ee;background-image:url('/images/hydrangea-botanical.webp');background-repeat:no-repeat;background-size:570px auto;background-position:right -155px bottom -20px;max-width:none;min-height:450px;padding-right:33%}.hydrangea-heading h1{position:relative;z-index:1}.hydrangea-heading p{position:relative;z-index:1}
.valuation{background-color:var(--hydrangea-pale);background-image:url('/images/hydrangea-botanical.webp');background-repeat:no-repeat;background-size:370px auto;background-position:left -145px bottom -80px;padding-bottom:130px}.split-services>a+a{background:#e8eef3}.split-services>a+a .eyebrow{color:#486783}.community>div{border-bottom:2px solid #a5bdd0}.community small{color:#506571}.text-link{border-color:#829bae}.nav-cta:hover{color:#36536c;border-color:#6d91b8}.quick-form input{border-color:#687f92}.steps article{border-color:#99b2c4}
footer{position:relative;overflow:hidden;padding-top:0;background:#213c34}.hydrangea-border{height:230px;margin:0 -9.5% 35px;overflow:hidden;pointer-events:none;display:flex;justify-content:center;background:#fbfaf4}.hydrangea-border img{display:block;width:100%;max-width:1200px;height:auto;object-fit:contain;align-self:center}.footer-top{position:relative;border-top:none;padding-top:0}.footer-bottom{position:relative}.footer-top .button.light{background:#edf2f7}.about-strip img{border:1px solid #cbd9d1}.dogs-intro{background-color:#eef2e9}.dog-profiles article{border-top:2px solid #a2bcd0}
@media(max-width:900px){.hydrangea-heading{background-size:430px auto;background-position:right -150px bottom -10px;padding-right:25%}.hero-content{padding-top:90px}.botanical-intro{padding-bottom:160px}}
@media(max-width:640px){.hero-content{padding-top:85px}.hydrangea-hero>img{object-position:42% center}.hydrangea-heading{min-height:0;padding-right:6%;padding-bottom:155px;background-size:380px auto;background-position:right -90px bottom -25px}.hydrangea-heading h1{font-size:3.3rem}.botanical-intro{padding-bottom:150px;background-size:350px auto;background-position:right -85px bottom -25px}.valuation{padding-bottom:135px;background-position:left -90px bottom -45px;background-size:320px auto}.hydrangea-border{height:140px;margin-bottom:35px}.hydrangea-border img{width:165%;max-width:none;flex-shrink:0}.footer-top h2{font-size:2.5rem}}

/* Compact Bruce and Gigi portrait */
.dogs-photo img{width:100%;max-width:660px;height:auto;margin-inline:auto}.dogs-photo{padding-top:42px}.dog-profiles{width:calc(100% - 12%);max-width:660px;padding:40px 0 75px;gap:45px}@media(max-width:640px){.dogs-photo img{width:88%;max-width:360px}.dogs-photo{padding-top:32px}.dog-profiles{padding-top:30px;gap:30px}}

/* Clear brokerage identification, fair housing, and accessible navigation */
.brokerage-name{display:block;font-family:Georgia,serif;font-size:34px;font-weight:400;line-height:1.2;letter-spacing:.025em;margin:0 0 14px;color:inherit}.brokerage-contact{font-size:18px;line-height:1.6;margin:0 0 14px;overflow-wrap:anywhere}.licensee-name{font-size:14px;margin-bottom:0}.footer-bottom{align-items:start;gap:30px}.brokerage-details{min-width:0}.fair-housing{border-top:1px solid #71877a;padding-top:26px;margin-top:28px;max-width:1050px}.fair-housing h2{font-family:'DM Sans',Arial,sans-serif;font-size:20px;letter-spacing:.025em;font-weight:600;margin-bottom:12px}.fair-housing p{font-size:14px;margin:0}.fair-housing a,.inquiry-notice a,.consumer-information a,.form-note a{text-decoration:underline;text-underline-offset:3px}.legal{opacity:1;color:#cdd8d0}.about-strip .about-brokerage{font-size:clamp(42px,4.5vw,64px);color:var(--ink);margin-bottom:12px}.about-strip .brokerage-contact{font-size:22px;color:var(--ink);margin-bottom:30px}.page-intro h1.agent-name{font-size:20px;line-height:1.2;letter-spacing:0;margin-bottom:20px}.contact-details .brokerage-name{font-size:32px;margin:0}.inquiry-notice{font-size:14px;padding:18px;border-left:3px solid var(--leaf);background:var(--garden)}.consumer-information h3{font-size:27px;margin-top:34px}.consumer-information p{max-width:850px}.contact-layout>*{min-width:0}.contact-details a{overflow-wrap:anywhere}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#84705a}footer a:focus-visible,.hero a:focus-visible{outline-color:#e9d6a8}
@media(max-width:900px){header{height:auto;min-height:85px;position:relative;flex-wrap:wrap;padding:18px 6%}.menu{display:none}.js .menu{display:block;border:0;background:transparent;padding:12px;font-size:14px}.menu:after{content:none}header nav{display:flex;position:static;width:100%;padding:22px 0 0;flex-direction:column;align-items:stretch;gap:20px;background:var(--paper);z-index:10}.js header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px 6%;border-bottom:1px solid var(--line)}.js header nav.open{display:flex}.about-strip .brokerage-contact{font-size:17px}}
