@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--pink:#eb699a;--pink-deep:#ae245a;--green:#426b32;--ink:#223d2b;--paper:#fffdf8;--soft:#f0f3e9;--line:#dce2d3;--accent:#426b32}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c62d70;outline-offset:5px}.design-bar{background:#202621;color:white;padding:12px 4%;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;letter-spacing:.08em}.design-bar nav{display:flex;gap:8px}.design-bar button{cursor:pointer;border:1px solid #747d74;background:transparent;color:white;border-radius:25px;padding:10px 16px;font-size:12px;letter-spacing:0}.design-bar button[aria-pressed=true]{background:#f7d3e0;color:#28252a;border-color:#f7d3e0}.design-bar small{font-size:11px;white-space:nowrap}.announcement{background:var(--pink);padding:10px 5%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;color:#422236}.announcement span{letter-spacing:0;font-style:italic}header{padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fffdf8}.brand{height:100px;width:146px;display:flex;align-items:center;justify-content:center}.brand img{height:100%;width:100%;object-fit:contain}header nav{display:flex;gap:35px;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--accent);color:#fff;border:1px solid var(--accent);padding:18px 24px;border-radius:4px;font-weight:600;font-size:13px;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);filter:brightness(1.08)}header .button{padding:15px 20px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.hero-copy{padding:72px 8% 55px 10%;align-self:center}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700;line-height:1.7}.eyebrow span{color:var(--pink-deep);font-size:18px;margin-right:8px}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-.045em;margin:23px 0}h1{font-size:clamp(48px,4.9vw,78px)}h2{font-size:clamp(38px,4vw,58px)}em{color:var(--pink-deep);font-weight:400}.intro{font-size:15px;line-height:1.9;max-width:390px;color:#5e6b60}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px}.text-link{font-size:12px;border-bottom:1px solid;padding:8px 0}.hero-note{display:flex;align-items:center;gap:15px;margin-top:38px}.hero-note p{font-size:11px;line-height:1.8;color:#687362}.hero-note strong{font-weight:500;color:var(--ink)}.heart{font-size:40px;color:var(--pink-deep)}.hero-visual{position:relative;overflow:hidden;min-height:640px}.hero-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-visual:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(23,40,23,.42))}.image-caption{position:absolute;z-index:1;bottom:38px;left:38px;color:white}.image-caption span{font-size:9px;letter-spacing:.18em}.image-caption strong{display:block;font:400 27px/1.25 'Playfair Display',Georgia,serif;margin-top:12px}.round-label{position:absolute;z-index:2;top:30px;right:28px;background:var(--pink);border:1px solid white;outline:8px solid #ffffff33;border-radius:50%;width:104px;height:104px;text-align:center;padding:20px 5px;color:#4a2636;font-size:9px;letter-spacing:.07em;transform:rotate(10deg)}.round-label span{font-size:22px}.service-strip{display:flex;gap:35px;justify-content:center;align-items:center;background:var(--soft);padding:26px 4%;font-size:12px}.service-strip span:first-child{font:italic 23px Georgia;margin-right:25px}.service-strip b{color:var(--pink-deep);font-size:20px}.section{padding:90px 7%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.section-heading>p{max-width:330px;font-size:14px;line-height:1.9;color:#63705f}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{position:relative;padding:35px 28px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);transition:background .2s}.service-grid article:hover{background:var(--soft)}.service-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f7e6ed;color:var(--pink-deep)}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.number{position:absolute;right:25px;top:40px;font-size:11px;color:#84917e}.service-grid h3{font:500 23px/1.25 'Playfair Display',Georgia,serif;margin:24px 0 12px}.service-grid p{font-size:13px;line-height:1.7;color:#657060;min-height:44px}.service-grid a{font-size:11px;font-weight:700;display:inline-block;margin-top:12px}.approach{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--soft);align-items:center}.care-art{display:flex;align-items:center;justify-content:center;aspect-ratio:1;background:repeating-linear-gradient(97deg,#dbc8af22 0,#e2d5c033 2px,#f4e6cd44 4px,#e8dac555 7px);border-radius:50% 50% 8px 8px}.care-ring{border:1px solid #67815a77;border-radius:50%;width:82%;aspect-ratio:1;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#fffdf8aa}.care-ring>span{color:var(--pink-deep);font-size:65px;line-height:1}.care-ring p{font:italic 35px/1.25 'Playfair Display',Georgia;margin:20px 0}.care-ring small{font-size:9px;letter-spacing:.18em}.body-copy{font-size:14px;line-height:1.9;color:#63705f}.steps{margin-top:28px}.steps>div{display:flex;gap:20px;padding:16px 0;border-top:1px solid #ccd6c5}.steps b{font-size:11px;padding-top:4px;color:var(--pink-deep)}.steps p{margin:0;font-size:12px;line-height:1.7}.steps strong,.steps span{display:block}.steps span{color:#657060}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#fff8fa}.contact>div>p:not(.eyebrow){font-size:14px;line-height:1.9}.phone{font-size:31px;font-weight:600;display:block;margin:25px 0;color:var(--pink-deep)}.contact-actions{display:flex;gap:12px}.outline{background:transparent;color:var(--accent)}form{background:white;padding:34px;border:1px solid #eadde2;border-radius:6px;align-self:center;box-shadow:0 10px 40px #4d26300a}form h3{font:400 26px 'Playfair Display',Georgia;margin:0 0 25px}label{display:block;font-size:11px;font-weight:700;margin:17px 0 8px}label span{font-weight:400;color:#71806f}input,select,textarea{display:block;width:100%;padding:13px;border:1px solid #d9ded4;background:#fffefa;border-radius:3px;font-size:13px;color:var(--ink)}textarea{resize:vertical}form .button{width:100%;margin-top:20px}.form-note,#form-status{font-size:10px;line-height:1.8;color:#697565}#sms-link{font-size:13px;text-decoration:underline;font-weight:600}footer{background:var(--pink);padding:45px 7% 20px;display:grid;grid-template-columns:1fr 1fr;color:#462734}.footer-brand{font:italic 35px Georgia}.footer-brand span{font-style:normal}.footer-brand b{font-size:20px}footer p{font-size:10px;line-height:1.9;letter-spacing:.08em}footer nav{display:flex;align-items:center;justify-content:flex-end;gap:30px;font-size:12px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #51243833;margin-top:30px;padding-top:20px;font-size:10px}
/* Second direction: warm wood, sheltered cottage shapes and garden greens. */
body.wood{--paper:#faf4e9;--soft:#efe3d1;--ink:#443426;--green:#557044;--accent:#526a3a;--line:#ddcdb5;--pink:#efa2b9;--pink-deep:#a43560}.wood header{background:#faf4e9}.wood .hero{padding:30px 5% 65px;gap:6%;grid-template-columns:1fr 1fr;background:repeating-linear-gradient(2deg,#ac825a08 0 2px,transparent 2px 11px)}.wood .hero-copy{padding:25px 0 25px 5%}.wood h1{font-size:clamp(48px,5vw,76px)}.wood .hero-visual{border-radius:47% 47% 4px 4px;min-height:610px}.wood .round-label{top:auto;bottom:30px;right:25px}.wood .image-caption{display:none}.wood .service-strip{background:#70523c;color:white}.wood .service-strip b{color:#f4a8c1}.wood .service-grid{gap:20px;border:0}.wood .service-grid article{border:1px solid #dac6aa;border-radius:12px 12px 3px 3px;background:#fffbf4}.wood .care-art{border-radius:8px;background:repeating-linear-gradient(94deg,#d4b48a44 0,#ad805522 1px,#ebd5b755 4px,#dfc49e44 10px)}.wood .contact{background:#f6e5e8}.wood footer{background:#eaa0b6}.wood .button{border-radius:30px}
/* Third direction: pink editorial masthead and full-width photographic opening. */
body.rose{--paper:#fffafc;--soft:#f9e8ef;--ink:#3e3b34;--accent:#ab2e60;--pink:#ef8db0;--pink-deep:#a82459;--line:#e9d6df}.rose header{background:#fbe5ed}.rose .announcement{background:#a82b5d;color:#fff}.rose .hero{position:relative;min-height:690px;display:flex;align-items:center;isolation:isolate;padding:55px 7%}.rose .hero-visual{position:absolute;inset:0;z-index:-2;min-height:100%}.rose .hero-visual:after{inset:0;background:linear-gradient(90deg,#fffafcf5 0%,#fffafced 30%,#fffafc44 65%,transparent)}.rose .hero-copy{padding:35px 0;max-width:620px;align-self:auto}.rose .image-caption,.rose .round-label{display:none}.rose h1{font-size:clamp(52px,6vw,86px)}.rose .service-strip{background:#a82b5d;color:#fff}.rose .service-strip b{color:#f9b1cc}.rose .service-grid article{padding:32px}.rose .service-grid h3{font-family:'Manrope',Arial;font-size:19px;font-weight:600}.rose .care-art{background:#f0d4dc;border-radius:12px}.rose .care-ring{border-color:#d195ad}.rose .contact{background:#f6edf0}.rose footer{background:#a82b5d;color:white}.rose .button{border-radius:0}
@media(min-width:1600px){header,.hero,.service-strip,.section,footer{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}.hero{padding:0}.hero-copy{padding-left:max(10%,calc((100vw - 1400px)/2))}}
@media(max-width:1000px){.design-bar{flex-wrap:wrap;justify-content:center}.design-bar>span,.design-bar>small{display:none}header nav{gap:18px}.hero-copy{padding:45px 8%}.hero,.hero-visual{min-height:570px}.hero-actions{gap:12px}.service-strip{gap:18px}.section{padding:65px 5%}.service-grid article{padding:25px 20px}.contact{gap:6%}.wood .hero-visual{min-height:550px}.care-ring p{font-size:28px}footer nav{gap:20px}}
@media(max-width:700px){.design-bar{padding:10px 5px}.design-bar nav{gap:5px;width:100%;justify-content:center}.design-bar button{font-size:10px;padding:9px 10px}.announcement{font-size:8px;letter-spacing:.08em;padding:10px 5%}.announcement span{display:none}header{padding:8px 5%;position:relative}.brand{height:80px;width:104px}.header-cta{margin-left:auto}header .button{font-size:10px;padding:12px}.menu{display:block;border:0;background:none;font-size:23px;color:var(--ink);padding:8px}header nav{display:none;position:absolute;top:96px;left:0;right:0;background:var(--paper);padding:24px;z-index:10;box-shadow:0 12px 20px #0001}header nav.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 6%}.hero h1{font-size:53px}.hero-visual{min-height:380px}.intro{font-size:14px}.hero-actions .button{font-size:12px}.hero-note{margin-top:22px}.round-label{width:90px;height:90px;padding-top:15px}.service-strip{flex-wrap:wrap;gap:15px;font-size:10px;padding:25px 6%}.service-strip span:first-child{width:100%;text-align:center;margin:0}.section{padding:55px 6%}.section-heading{display:block}.section-heading>p{max-width:none}.service-grid{grid-template-columns:1fr 1fr}.service-grid article{padding:23px 15px}.service-grid h3{font-size:21px}.service-grid p{font-size:12px;min-height:60px}.service-grid a{font-size:10px}.number{right:15px;top:30px}.approach,.contact{grid-template-columns:1fr;gap:35px}.care-art{max-width:400px;width:100%;margin:auto}.care-ring p{font-size:33px}form{padding:25px}footer{grid-template-columns:1fr;padding:35px 6% 20px}footer nav{flex-wrap:wrap;justify-content:flex-start;gap:20px;margin-top:20px}.footer-bottom{font-size:9px;gap:15px}.wood .hero{padding:20px 6% 40px;grid-template-columns:1fr;gap:20px}.wood .hero-copy{padding:20px 0}.wood .hero-visual{min-height:380px}.wood .service-grid{gap:12px}.rose .hero{min-height:690px;padding:40px 6%;align-items:flex-start}.rose .hero-copy{padding:20px 0}.rose .hero-visual:after{background:linear-gradient(#fffafcf7 0%,#fffafceb 45%,#fffafc22 90%)}.rose .hero-visual img{object-position:65% center}.rose h1{font-size:57px}.rose .service-grid article{padding:22px 15px}.rose .service-grid h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Editable vector web logo */
.brand{width:270px;height:90px}.brand img{width:100%;height:auto}.wood .brand,.rose .brand{background:none}@media(max-width:1000px){.brand{width:225px}}@media(max-width:700px){.brand{width:190px;height:74px}header{gap:8px}.header-cta{font-size:9px!important;gap:8px!important;padding:10px!important}.menu{padding:5px}header nav{top:90px}}
