/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--teal:#103d43;--orange:#f7941d;--green:#70bd44;--blue:#238fca;--cream:#fbf7ee;--mint:#eef7f1;--ink:#173f43;--muted:#617476;--line:#dce5df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400}p{margin:0}.topbar{background:var(--teal);color:#dce9e8;justify-content:space-between;align-items:center;height:34px;padding:0 max(6vw,24px);font-size:11px;display:flex}.topbar a{text-underline-offset:3px;text-decoration:underline}.site-header{z-index:10;background:#fff;border-bottom:1px solid #e8ece8;justify-content:space-between;align-items:center;height:86px;padding:0 max(6vw,24px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;display:flex}.brand>span:last-child{grid-template-columns:auto auto;column-gap:4px;line-height:1;display:grid}.brand strong{color:var(--orange);letter-spacing:.08em;font-size:12px}.brand em{color:var(--green);letter-spacing:.06em;font-size:12px;font-style:normal;font-weight:800}.brand small{color:var(--blue);grid-column:1/-1;margin-top:4px;font-size:10px}.brand-symbol{width:37px;height:32px;display:block;position:relative}.brand-symbol:before,.brand-symbol:after,.brand-symbol i,.brand-symbol b{content:"";border-radius:50%;position:absolute}.brand-symbol:before{background:var(--blue);width:20px;height:20px;top:7px;left:3px}.brand-symbol:after{background:var(--orange);width:22px;height:22px;top:7px;right:1px}.brand-symbol i{background:#f8b92c;width:17px;height:17px;top:0;left:10px}.brand-symbol b{background:var(--green);border:3px solid #fff;width:28px;height:10px;bottom:0;left:4px}.site-header nav{color:#26484c;align-items:center;gap:34px;font-size:13px;font-weight:600;display:flex}.site-header nav a:not(.nav-cta):hover{color:var(--orange)}.nav-cta{background:var(--teal);color:#fff;border-radius:999px;padding:13px 21px}.eyebrow{letter-spacing:.2em;color:#4f8a55;margin-bottom:22px;font-size:11px;font-weight:800}.hero{background:linear-gradient(90deg,#fff 0% 45%,#f5f4ed 100%);grid-template-columns:52% 48%;min-height:640px;display:grid}.hero-copy{z-index:2;padding:95px 4vw 70px max(7vw,34px)}.hero h1{max-width:680px;font-size:clamp(54px,5vw,78px);line-height:.98}.intro{color:var(--muted);max-width:660px;margin-top:30px;font-size:16px;line-height:1.75}.actions{gap:14px;margin-top:30px;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;padding:15px 22px;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-1px)}.primary{background:var(--orange);color:#fff;box-shadow:0 8px 20px #dc842d33}.secondary{background:#fff;border:1px solid #cad7d4}.trust-row{color:#4c696c;flex-wrap:wrap;gap:27px;margin-top:45px;font-size:11px;display:flex}.trust-row span:before{content:"✓";color:var(--green);margin-right:7px;font-weight:700}.image-placeholder{color:#66807c;background:linear-gradient(135deg,#dbe9e2,#f5eee0);flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:210px;display:flex;position:relative;overflow:hidden}.image-placeholder:after{content:"";background:#fff5;border-radius:50% 50% 0 0;width:65%;height:65%;position:absolute;bottom:-25%;right:-15%;transform:rotate(-10deg)}.placeholder-mark{z-index:1;border:2px solid #75938b;border-radius:5px;width:44px;height:36px;position:relative}.placeholder-mark span:first-child{background:var(--orange);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:6px}.placeholder-mark span:last-child{background:linear-gradient(135deg,#0000 35%,#75938b 36% 56%,#0000 57%),linear-gradient(45deg,#0000 34%,#89aa9f 35% 59%,#0000 60%);height:15px;position:absolute;bottom:5px;left:5px;right:5px}.image-placeholder small{z-index:1;letter-spacing:.14em;text-transform:uppercase;font-size:10px}.hero-image{min-height:640px}.support-strip{background:var(--cream);grid-template-columns:1fr .85fr;gap:12vw;padding:76px max(7vw,34px);display:grid}.support-strip h2{max-width:620px;font-size:42px;line-height:1.05}.support-strip>div:last-child{padding-top:30px}.support-strip>div:last-child p{color:var(--muted);margin-bottom:22px;font-size:14px;line-height:1.8}.text-link{text-transform:uppercase;letter-spacing:.12em;color:#23758b;font-size:10px;font-weight:800}.services-section{padding:100px max(7vw,34px)}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:45px;display:flex}.section-heading h2{max-width:690px;font-size:50px;line-height:1}.service-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.service-card{border:1px solid var(--line);background:#fff;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 12px 28px #2f58580c}.service-card .image-placeholder{height:230px}.service-content{padding:24px 24px 28px}.service-content h3{font-size:22px;line-height:1.05}.service-content p{color:var(--muted);min-height:60px;margin:12px 0 25px;font-size:12px;line-height:1.65}.card-number{background:var(--teal);color:#fff;border:3px solid #fff;border-radius:50%;place-items:center;width:39px;height:39px;font-size:9px;display:grid;position:absolute;top:205px;right:14px}.story-section{background:var(--mint);grid-template-columns:1fr 1fr;align-items:center;gap:9vw;padding:110px max(7vw,34px);display:grid}.story-visual{max-width:560px;position:relative}.story-visual>.image-placeholder{border-radius:44% 44% 14px 14px;height:500px}.story-note{background:var(--blue);color:#fff;border-radius:9px;width:245px;padding:17px 21px;font-family:Georgia,serif;font-size:18px;line-height:1.1;position:absolute;bottom:40px;right:-35px;box-shadow:0 12px 25px #0b43552c}.story-note span{letter-spacing:.14em;margin-bottom:8px;font-family:Arial;font-size:8px;display:block}.story-copy h2{margin-bottom:25px;font-size:48px;line-height:1.03}.story-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:14px;font-size:14px;line-height:1.8}.dark{background:var(--teal);color:#fff;margin-top:12px}.process-section{background:var(--cream);padding:105px max(7vw,34px)}.center-heading{text-align:center}.center-heading h2{max-width:700px;margin:auto;font-size:48px;line-height:1.03}.steps{grid-template-columns:repeat(3,1fr);margin-top:70px;display:grid}.steps article{border-left:1px solid #d8ddd6;min-height:180px;padding:0 40px 20px}.steps article:last-child{border-right:1px solid #d8ddd6}.steps span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;margin-bottom:25px;font-size:9px;display:grid}.steps h3{font-size:20px}.steps p{color:var(--muted);margin-top:18px;font-size:12px;line-height:1.7}.cta-section{color:#fff;height:500px;position:relative;overflow:hidden}.cta-image{background:linear-gradient(120deg,#b7d4c9,#dfd6c5);height:100%}.cta-overlay{background:linear-gradient(90deg,#073f48ed 0%,#0a4850bd 48%,#0000 85%);position:absolute;inset:0}.cta-copy{max-width:600px;position:absolute;top:50%;left:max(7vw,34px);transform:translateY(-50%)}.cta-copy .eyebrow{color:#cae2d3}.cta-copy h2{font-size:50px;line-height:1.02}.cta-copy>p:not(.eyebrow){max-width:510px;margin:20px 0 25px;font-size:13px;line-height:1.7}.light{color:var(--teal);background:#fff}footer{color:#d2dfe0;background:#0c343c;padding:70px max(7vw,34px) 28px}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:9vw;display:grid}.footer-brand p{color:#adc0c2;max-width:390px;margin-top:24px;font-size:12px;line-height:1.7}.footer-grid h4{text-transform:uppercase;letter-spacing:.16em;color:#fff;margin:5px 0 22px;font-size:10px}.footer-grid>div:not(:first-child){flex-direction:column;gap:13px;font-size:11px;display:flex}.footer-grid span{color:#8fa6a8}.copyright{color:#789296;border-top:1px solid #305058;justify-content:space-between;margin-top:55px;padding-top:25px;font-size:9px;display:flex}.story-copy strong{color:var(--ink);font-weight:700}.story-copy .story-closing{border-left:3px solid var(--orange);margin-top:20px;padding-left:18px;font-family:Georgia,Times New Roman,serif;color:var(--ink)!important;font-size:18px!important;line-height:1.5!important}.story-copy{max-width:680px}.photo-frame{background:#e5eee8;position:relative;overflow:hidden}.photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.homepage-mother-photo{border-radius:44% 44% 14px 14px;height:500px}.homepage-mother-photo img{object-position:52% 42%}.interior-photo{height:100%;min-height:530px}.interior-photo img{object-position:center 35%}.interior-photo.selfie-photo img{object-position:50% 50%}.story-garden-photo{border-radius:48% 48% 16px 16px;min-height:620px}.story-garden-photo img{object-position:52% 40%}.homepage-hero-photo img{object-position:92% center}.service-card .service-photo{height:230px}.service-photo img{object-position:center 46%}.consultation-photo img{object-position:center center}@media (width<=900px){.site-header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding-top:70px}.hero-image{min-height:390px}.support-strip,.story-section{grid-template-columns:1fr;gap:50px}.service-grid{grid-template-columns:repeat(2,1fr)}.story-note{right:15px}.steps article{padding:0 25px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:35px}}@media (width<=620px){.topbar{font-size:9px}.site-header{height:74px}.site-header .nav-cta{padding:11px 16px}.hero h1{font-size:50px}.actions{flex-direction:column;align-items:flex-start}.trust-row{flex-direction:column;gap:14px}.support-strip h2,.section-heading h2,.story-copy h2,.center-heading h2,.cta-copy h2{font-size:38px}.section-heading{flex-direction:column;align-items:flex-start;gap:25px}.service-grid{grid-template-columns:1fr}.service-card .image-placeholder{height:245px}.story-section{padding-top:75px}.story-visual>.image-placeholder{height:410px}.story-note{width:210px}.steps{grid-template-columns:1fr;gap:35px}.steps article,.steps article:last-child{border-left:1px solid #d8ddd6;border-right:0}.cta-section{height:560px}.cta-overlay{background:#073f48df}.footer-grid{grid-template-columns:1fr}.copyright{flex-direction:column;gap:15px}}.interior-hero{background:var(--cream);grid-template-columns:55% 45%;min-height:530px;display:grid}.interior-hero>div:first-child{padding:105px 7vw 80px}.interior-hero h1,.contact-intro h1{max-width:760px;font-size:clamp(50px,5vw,74px);line-height:1}.interior-hero>div:first-child>p:not(.eyebrow){color:var(--muted);max-width:680px;margin-top:28px;font-size:16px;line-height:1.8}.interior-hero>.image-placeholder{height:100%;min-height:530px}.services-directory{padding:100px max(7vw,34px)}.comparison-section{background:var(--mint);grid-template-columns:.8fr 1.2fr;align-items:center;gap:8vw;padding:95px max(7vw,34px);display:grid}.comparison-section h2,.detail-split h2,.feature-band h2,.next-service h2,.story-long h2,.values-section h2{font-size:46px;line-height:1.05}.comparison-section>div:first-child>p:last-child,.detail-split>div:first-child>p,.feature-band>div>p:not(.eyebrow),.next-service>p:not(.eyebrow){color:var(--muted);margin-top:22px;font-size:14px;line-height:1.8}.mini-steps{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mini-steps article{background:#fff;border-radius:14px;min-height:190px;padding:28px}.mini-steps span,.value-grid span{color:var(--green);font-size:10px;font-weight:800}.mini-steps h3,.value-grid h3{margin:24px 0 12px;font-size:23px}.mini-steps p,.value-grid p{color:var(--muted);font-size:12px;line-height:1.7}.detail-split{grid-template-columns:1fr 1.08fr;align-items:start;gap:5.5vw;padding:100px max(7vw,34px);display:grid}.detail-split>div:first-child>p{margin-top:20px}.detail-split .button{margin-top:28px}.check-panel{background:var(--cream);border:1px solid #eee5d5;border-radius:22px;padding:42px}.check-panel h3{margin-bottom:24px;font-size:30px}.check-panel ul{margin:0;padding:0;list-style:none}.check-panel li{border-bottom:1px solid #dedfd8;padding:15px 0;font-size:14px}.check-panel li:before{content:"✓";color:var(--green);margin-right:12px;font-weight:800}.check-panel>p{color:var(--muted);margin-top:22px;font-size:12px;line-height:1.7}.feature-band{background:var(--mint);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.feature-band>.image-placeholder{min-height:460px}.feature-band>div{padding:90px 8vw}.feature-band>div>p:last-child{margin-top:22px}.next-service{text-align:center;padding:100px max(7vw,34px)}.next-service>p:not(.eyebrow){max-width:650px;margin:22px auto}.next-service>div{justify-content:center;gap:12px;margin-top:30px;display:flex}.story-long{grid-template-columns:1.1fr .7fr;gap:9vw;padding:110px max(7vw,34px);display:grid}.story-long>div>p{color:var(--muted);margin-top:20px;font-size:15px;line-height:1.9}.story-long strong{color:var(--ink)}.story-long blockquote{border-left:3px solid var(--orange);margin:34px 0 0;padding:10px 0 10px 25px;font-family:Georgia,serif;font-size:24px;line-height:1.45}.story-long>.image-placeholder{border-radius:48% 48% 16px 16px;min-height:620px}.values-section{background:var(--cream);padding:100px max(7vw,34px)}.value-grid{grid-template-columns:repeat(3,1fr);gap:26px;margin-top:65px;display:grid}.value-grid article{border:1px solid var(--line);background:#fff;border-radius:16px;min-height:240px;padding:36px}.contact-page{background:var(--cream);grid-template-columns:.8fr 1.2fr;gap:8vw;padding:95px max(7vw,34px);display:grid}.contact-intro>p:not(.eyebrow){color:var(--muted);margin:28px 0 40px;font-size:15px;line-height:1.8}.contact-notes{gap:22px;display:grid}.contact-notes>div{grid-template-columns:38px 1fr;gap:12px;display:grid}.contact-notes span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:31px;height:31px;font-size:9px;display:grid}.contact-notes p{color:var(--muted);font-size:12px;line-height:1.6}.contact-notes strong{color:var(--ink);font-size:14px}.consult-form{background:#fff;border:1px solid #e5e8e2;border-radius:22px;grid-template-columns:1fr 1fr;gap:22px;padding:42px;display:grid;box-shadow:0 18px 40px #345f4c0b}.consult-form label{letter-spacing:.04em;flex-direction:column;gap:9px;font-size:11px;font-weight:800;display:flex}.consult-form input,.consult-form select,.consult-form textarea{font:inherit;letter-spacing:0;color:var(--ink);background:#fff;border:1px solid #ccd7d3;border-radius:9px;width:100%;padding:14px;font-weight:400}.consult-form textarea{resize:vertical}.consult-form .full{grid-column:1/-1}.consult-form button{cursor:pointer;border:0}.form-note{color:var(--muted);text-align:center;line-height:1.5;font-size:10px!important;font-weight:400!important}@media (width<=900px){.interior-hero,.detail-split,.feature-band,.story-long,.contact-page,.comparison-section{grid-template-columns:1fr}.interior-hero>div:first-child{padding:75px 7vw}.interior-hero>.image-placeholder,.interior-hero>.interior-photo{min-height:460px}.mini-steps{grid-template-columns:1fr 1fr 1fr}.story-long>.image-placeholder,.story-long>.story-garden-photo{min-height:520px}.value-grid{grid-template-columns:1fr 1fr}}@media (width<=620px){.interior-hero h1,.contact-intro h1{font-size:44px}.comparison-section h2,.detail-split h2,.feature-band h2,.next-service h2,.story-long h2,.values-section h2{font-size:36px}.mini-steps,.value-grid{grid-template-columns:1fr}.detail-split,.story-long,.contact-page,.comparison-section{padding-top:75px;padding-bottom:75px}.feature-band>div{padding:70px 7vw}.next-service>div{flex-direction:column;align-items:center}.consult-form{grid-template-columns:1fr;padding:26px}.consult-form label{grid-column:1/-1}.homepage-mother-photo{height:410px}.interior-hero>.interior-photo{min-height:420px}.story-long>.story-garden-photo{min-height:440px}}.top-actions{gap:22px;display:flex}.top-actions a:first-child{color:#fff;font-weight:700}.nav-group{position:relative}.nav-group summary{cursor:pointer;font-weight:600;list-style:none}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:"⌄";color:#6c8688;margin-left:6px;font-size:11px}.nav-group[open] summary{color:var(--orange)}.nav-menu{z-index:30;background:#fff;border:1px solid #e3e9e5;border-radius:14px;width:330px;padding:12px;display:grid;position:absolute;top:34px;left:-24px;box-shadow:0 20px 50px #193f4126}.services-nav .nav-menu{width:310px}.nav-menu a{border-radius:9px;flex-direction:column;padding:12px 14px;font-size:12px;line-height:1.25;display:flex!important}.nav-menu a:hover{background:var(--cream)}.nav-menu strong{color:var(--ink);font-size:13px}.nav-menu small{color:var(--muted);margin-top:4px;font-weight:400}.home-promise{background:var(--mint);grid-template-columns:1fr .9fr;align-items:center;gap:10vw;padding:100px max(7vw,34px);display:grid}.home-promise h2,.confidence-section h2,.career-callout h2,.truth-panel h2,.cost-note h2{font-size:48px;line-height:1.05}.home-promise>div:first-child>p:not(.eyebrow),.confidence-section>div>p:not(.eyebrow),.career-callout>div>p:not(.eyebrow),.truth-panel p:not(.eyebrow),.cost-note p:not(.eyebrow){color:var(--muted);margin:22px 0 28px;font-size:14px;line-height:1.8}.promise-principles{gap:16px;display:grid}.promise-principles article{background:#fff;border:1px solid #dbe8df;border-radius:14px;grid-template-columns:54px 1fr;gap:18px;padding:24px;display:grid}.promise-principles span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:48px;height:48px;font-family:Georgia,serif;font-size:20px;display:grid}.promise-principles article:nth-child(2) span{background:var(--orange)}.promise-principles article:nth-child(3) span{background:var(--blue)}.promise-principles h3{font-size:23px}.promise-principles p{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.6}.confidence-section{grid-template-columns:1fr .7fr;align-items:center;gap:9vw;padding:100px max(7vw,34px);display:grid}.confidence-section aside{background:var(--teal);color:#fff;border-radius:22px;padding:48px}.confidence-section aside>span{color:#79c56b;font:72px/1 Georgia}.confidence-section blockquote{margin:0;font:30px/1.35 Georgia}.confidence-section aside p{color:#aac1c1;margin-top:20px;font-size:11px}.career-callout{background:var(--cream);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.career-callout>div{padding:95px max(7vw,34px)}.career-callout>.image-placeholder{min-height:460px}.faq-section{background:#fff;padding:90px max(14vw,40px)}.faq-section details{border-bottom:1px solid #dfe6e1}.faq-section summary{cursor:pointer;align-items:center;gap:20px;padding:25px 0;font-family:Georgia,serif;font-size:23px;list-style:none;display:flex}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary:after{content:"+";color:var(--orange);margin-left:auto;font-family:Arial}.faq-section details[open] summary:after{content:"−"}.faq-section summary span{color:var(--green);font-family:Arial;font-size:10px;font-weight:800}.faq-section details>p{color:var(--muted);max-width:850px;padding:0 0 28px 38px;font-size:14px;line-height:1.8}.truth-panel,.cost-note{background:var(--mint);padding:100px max(14vw,40px)}.truth-panel>div,.cost-note>div{text-align:center;max-width:850px;margin:auto}.cost-note{background:var(--cream)}.mobile-nav{display:none;position:relative}.mobile-nav summary{background:var(--teal);color:#fff;cursor:pointer;border-radius:999px;padding:11px 16px;font-size:12px;font-weight:700;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav>div{border:1px solid var(--line);background:#fff;border-radius:14px;width:245px;padding:10px;display:grid;position:absolute;top:48px;right:0;box-shadow:0 18px 45px #183d4026}.mobile-nav a{border-radius:8px;padding:11px 12px;font-size:12px;font-weight:700}.mobile-nav a:hover{background:var(--cream)}@media (width<=1080px){.site-header nav{gap:20px}.nav-menu{left:auto;right:-80px}}@media (width<=900px){.nav-group,.top-actions a:first-child,.site-header>nav{display:none}.mobile-nav{display:block}.home-promise,.confidence-section,.career-callout{grid-template-columns:1fr}.career-callout>.image-placeholder{min-height:380px}}@media (width<=620px){.top-actions{gap:8px}.top-actions a{font-size:9px}.home-promise,.confidence-section{padding:75px 7vw}.home-promise h2,.confidence-section h2,.career-callout h2,.truth-panel h2,.cost-note h2{font-size:36px}.confidence-section aside{padding:32px}.career-callout>div{padding:75px 7vw}.faq-section{padding:70px 7vw}.faq-section summary{font-size:19px}.truth-panel,.cost-note{padding:75px 7vw}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}

/* real photo inside a placeholder frame: keep the frame's size and shape,
   drop the grey gradient and the decorative blob. The frame is position:relative
   and sized by min-height, so the photo is pinned to its edges rather than
   sized by content (it is a flex container, so height:100% would not resolve). */
.image-placeholder.has-photo{background:none;gap:0;padding:0}
.image-placeholder.has-photo:after{display:none}
.image-placeholder.has-photo>img{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;display:block}

/* Our Story leads with a portrait selfie. The default 530px hero frame makes it
   tower over the copy beside it, so this page gets a shorter frame. */
.interior-hero.story-hero{min-height:0}
.interior-hero.story-hero>.interior-photo{min-height:0;max-height:none;align-self:center;justify-self:center;width:min(340px,80%);height:auto;aspect-ratio:4/5;border-radius:20px;overflow:hidden;box-shadow:0 18px 40px #193f411f}

/* ---- breadcrumb, related-services block and mobile request bar ---- */
.breadcrumb{align-items:center;gap:8px;margin-bottom:26px;font-size:12px;display:flex;flex-wrap:wrap}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--ink);text-decoration:underline}
.breadcrumb span[aria-hidden]{color:#b9c6be}
.breadcrumb [aria-current]{color:var(--ink);font-weight:600}

.related-block{background:var(--mint);grid-template-columns:1fr .8fr;align-items:start;gap:9vw;padding:90px max(7vw,34px);display:grid}
.related-block h2{font-size:36px;line-height:1.1}
.related-block>div:first-child>p{color:var(--muted);margin-top:20px;font-size:14px;line-height:1.8}
.related-links{flex-direction:column;gap:0;display:flex}
.related-links a{color:var(--ink);border-bottom:1px solid #d3e3d9;padding:15px 0;font-size:15px;text-decoration:none}
.related-links a:hover{color:var(--orange)}
.related-links a.all{color:var(--orange);border-bottom:0;padding-top:22px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

.faq-section .center-heading{margin-bottom:34px}

.sticky-cta{display:none}
@media (max-width:860px){
  .related-block{grid-template-columns:1fr;gap:34px;padding-top:60px;padding-bottom:60px}
  .sticky-cta{z-index:60;margin:0 16px;gap:10px;display:flex;position:fixed;bottom:12px;left:0;right:0}
  .sticky-cta a{flex:1 1 0;text-align:center;border-radius:999px;padding:15px 0;font-size:15px;font-weight:700;text-decoration:none;box-shadow:0 6px 24px #193f4133}
  .sticky-call{background:var(--teal);color:#fff}
  .sticky-request{background:var(--orange);color:#fff}
  body:has(.sticky-cta){padding-bottom:92px}
  body:has(.sticky-cta):after{content:"";position:fixed;left:0;right:0;bottom:0;height:86px;pointer-events:none;background:linear-gradient(180deg,#fbf7ee00,#fbf7eee6 45%,#fbf7ee);z-index:55}
}

/* hero photo crop guard: the expanded service pages have much taller heroes,
   and a 16:9 photo stretched down a narrow column loses most of its width.
   Cap the photo and centre it so the crop stays reasonable. */
.interior-hero>.image-placeholder{align-self:center;height:100%;max-height:415px}

/* real logo mark replaces the CSS-drawn placeholder symbol */
.brand-mark{width:58px;height:41px;display:block;flex:0 0 auto;object-fit:contain}
.footer-brand .brand-mark{width:65px;height:46px}
@media (width<=620px){.brand-mark{width:51px;height:36px}}

/* privacy / terms / accessibility */
.legal-wrap{max-width:820px;margin:0 auto;padding:80px max(7vw,26px) 20px}
.legal-block{margin-bottom:46px}
.legal-block h2{color:var(--ink);margin-bottom:16px;font-size:26px;line-height:1.2}
.legal-block p{color:var(--muted);margin-top:14px;font-size:15px;line-height:1.85}
@media (width<=620px){.legal-wrap{padding-top:52px}.legal-block h2{font-size:22px}}

/* overflow-wrap guard: on very small screens a single long word at heading
   size (for example "understanding." at 44px) is wider than the text column
   and pushes the page sideways. Let long words break instead. */
h1,h2,h3,p,li,a{overflow-wrap:break-word}
@media (width<=380px){
  .interior-hero h1,.contact-intro h1{font-size:36px}
  .hero h1{font-size:40px}
  .detail-split h2,.feature-band h2,.next-service h2,.story-long h2,.values-section h2,
  .support-strip h2,.center-heading h2,.story-copy h2,.cta-copy h2,.related-block h2{font-size:31px}
}

/* grid blowout guard: a grid item's automatic minimum size is its min-content
   width, so one long word can push a single-column mobile grid wider than the
   screen. overflow-wrap:break-word does not change that; min-width:0 does. */
.contact-page>*,.detail-split>*,.feature-band>*,.interior-hero>*,.related-block>*,
.comparison-section>*,.story-long>*,.services-section>*,.support-strip>*,
.home-promise>*,.story-section>*,.contact-notes>div>*{min-width:0}

/* focal points: these photos have their subject high in the frame, so the
   default centre crop was cutting the tops of heads off. */
.consultation-photo img{object-position:center 22%}
.career-callout .image-placeholder.has-photo>img{object-position:center 26%}
.interior-hero>.image-placeholder.has-photo>img{object-position:86% 38%}

/* the support strip had a heading and then a large empty block of cream */
.support-strip .strip-photo{border-radius:18px;overflow:hidden;margin-top:34px;height:250px;max-width:430px}
@media (width<=860px){.support-strip .strip-photo{height:200px;max-width:none}}

/* two-column checklist: with 8 to 13 items the panel ran far below the text
   column beside it, leaving a large empty block under the heading. */
.check-panel ul{columns:2;column-gap:30px}
.check-panel li{break-inside:avoid;-webkit-column-break-inside:avoid}
.check-panel>p{margin-top:20px}
@media (width<=1080px){.check-panel ul{columns:1}}

/* The 'may include' list used to sit in a tall narrow panel beside the text,
   which wasted the space to its left and ran far past it. It is now a
   full-width horizontal band, which suits a long list far better. */
.intro-band{background:#fff;padding:88px max(7vw,34px)}
.intro-band .center-heading{margin-bottom:8px}
.intro-copy{text-align:center;max-width:820px;margin:0 auto}
.intro-copy p{color:var(--muted);margin-top:18px;font-size:15px;line-height:1.85}
.intro-copy .button{margin-top:32px}

.include-band{background:var(--cream);padding:78px max(7vw,34px)}
.include-list{columns:3;column-gap:48px;list-style:none;max-width:1180px;margin:40px auto 0;padding:0}
.include-list li{break-inside:avoid;-webkit-column-break-inside:avoid;border-bottom:1px solid #e5dcc9;padding:14px 0;font-size:14px;line-height:1.55}
.include-list li:before{content:"\2713";color:var(--green);margin-right:11px;font-weight:800}
.include-note{color:var(--muted);text-align:center;max-width:780px;margin:34px auto 0;font-size:13px;line-height:1.8}
@media (width<=1000px){.include-list{columns:2}}
@media (width<=640px){.include-list{columns:1}.intro-band,.include-band{padding-top:58px;padding-bottom:58px}}


/* HERO ONLY — APPROVED PRODUCTION PASS */
.hero{position:relative!important;display:block!important;min-height:640px!important;overflow:hidden!important;background:#fff!important;isolation:isolate}
.hero .hero-copy{position:relative!important;z-index:3!important;width:min(54%,820px)!important;max-width:820px!important;padding:82px 0 72px max(7vw,34px)!important}
.hero .hero-image{position:absolute!important;z-index:0!important;inset:0 0 0 auto!important;width:67%!important;height:100%!important;min-height:0!important;border-radius:0!important}
.hero .hero-image img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:0!important}
.hero:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(90deg,#fff 0%,#fff 33%,rgba(255,255,255,.98) 41%,rgba(255,255,255,.91) 49%,rgba(255,255,255,.68) 57%,rgba(255,255,255,.30) 66%,rgba(255,255,255,0) 76%)}
.interior-hero{position:relative!important;display:block!important;min-height:600px!important;overflow:hidden!important;background:#fff!important;isolation:isolate}
.interior-hero>div:first-child{position:relative!important;z-index:3!important;width:min(46%,660px)!important;max-width:660px!important;padding:68px 0 68px max(7vw,34px)!important}
.interior-hero>.image-placeholder,.interior-hero>.interior-photo{position:absolute!important;z-index:0!important;inset:0 0 0 auto!important;width:70%!important;height:100%!important;min-height:0!important;max-height:none!important;align-self:auto!important;justify-self:auto!important;aspect-ratio:auto!important;border-radius:0!important;box-shadow:none!important}
.interior-hero>.image-placeholder img,.interior-hero>.interior-photo img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:0!important}
.interior-hero:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(90deg,#fff 0%,#fff 27%,rgba(255,255,255,.97) 36%,rgba(255,255,255,.88) 45%,rgba(255,255,255,.50) 54%,rgba(255,255,255,.12) 61%,rgba(255,255,255,0) 66%)}
.interior-hero h1{font-size:clamp(42px,3.9vw,60px)!important;max-width:620px!important}
.interior-hero>div:first-child>p:not(.eyebrow){max-width:560px!important}
.interior-hero.hero-long>div:first-child{width:min(45%,640px)!important;max-width:640px!important}
.interior-hero.hero-long h1{font-size:clamp(40px,3.6vw,54px)!important;line-height:1.02!important;max-width:600px!important}
.interior-hero.hero-xlong>div:first-child{width:min(44%,620px)!important;max-width:620px!important;padding-top:58px!important;padding-bottom:58px!important}
.interior-hero.hero-xlong h1{font-size:clamp(36px,3.2vw,48px)!important;line-height:1.04!important;max-width:580px!important}
.interior-hero.hero-xlong>div:first-child>p:not(.eyebrow){max-width:585px!important;margin-top:16px!important;font-size:15px!important;line-height:1.68!important}
.interior-hero.story-hero>div:first-child{width:min(46%,660px)!important;max-width:660px!important}
.interior-hero.story-hero>.interior-photo{width:61%!important}
@media(max-width:900px){.hero,.interior-hero{min-height:0!important;display:block!important}.hero .hero-copy,.interior-hero>div:first-child,.interior-hero.hero-long>div:first-child,.interior-hero.hero-xlong>div:first-child,.interior-hero.story-hero>div:first-child{width:100%!important;max-width:none!important;padding:54px 24px 40px!important}.hero .hero-image,.interior-hero>.image-placeholder,.interior-hero>.interior-photo,.interior-hero.story-hero>.interior-photo{position:relative!important;inset:auto!important;width:100%!important;height:380px!important;min-height:380px!important}.hero:after,.interior-hero:after{display:none!important}.interior-hero.hero-long h1,.interior-hero.hero-xlong h1{font-size:44px!important}}

/* published contact details: phone in the desktop header (mobile gets the
   sticky call button instead), phone/email/service area in the footer. */
.nav-phone{color:var(--teal);font-weight:800;letter-spacing:.01em;white-space:nowrap}
.nav-phone:hover{color:var(--orange)}
.footer-contact{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px}
.footer-contact a{color:#fff;font-weight:700;text-underline-offset:3px;text-decoration:underline}
.footer-contact a:hover{color:var(--orange)}
.footer-areas{color:#adc0c2;max-width:430px;margin-top:16px;font-size:11px;line-height:1.75}
.footer-areas strong{color:#d2dfe0;font-weight:700}
.contact-direct{border:1px solid #e0e6df;background:#fff;border-radius:14px;margin:0 0 34px;padding:22px 24px}
.contact-direct p{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.6}
.contact-direct .tel{color:var(--teal);font-family:Georgia,serif;font-size:27px;letter-spacing:-.02em;display:block}
.contact-direct .tel:hover{color:var(--orange)}
.contact-direct .mail{color:#23758b;margin-top:10px;font-size:13px;font-weight:700;display:inline-block;text-underline-offset:3px;text-decoration:underline}
@media (width<=620px){.contact-direct .tel{font-size:23px}}

/* Paying for Care ended on three cream bands in a row. cost-note is used on
   that page alone, so giving it white breaks the run without touching others. */
.cost-note{background:#fff;border-top:1px solid var(--line)}


/* Hero crops: the fade sits over the left of the photograph, so a subject on
   the left of the frame gets washed out. These pull the crop across until the
   older adult sits in the clear part rather than under the veil. */
.interior-hero img[src*="planning-table"]{object-position:30% 38%!important}
.interior-hero img[src*="family-embrace"]{object-position:100% 38%!important}
.interior-hero img[src*="puzzle-together"]{object-position:72% 40%!important}

/* ---- homepage polish ---- */

/* The support strip photo was 250px tall in a 430px box, marooned in a large
   field of cream. It now fills its column. */
.support-strip .strip-photo{height:400px;max-width:none}
@media (width<=860px){.support-strip .strip-photo{height:230px}}

/* "Finding care should feel clear and personal" was three columns divided by
   hairlines, which read as unfinished rather than airy. Same card treatment
   the mini-steps and promise principles already use. */
.process-section .steps{gap:22px;margin-top:54px}
.process-section .steps article{background:#fff;border:1px solid var(--line);border-left:1px solid var(--line);border-right:1px solid var(--line);border-radius:16px;min-height:0;padding:34px 30px 30px;box-shadow:0 10px 26px #2f58580a}
.process-section .steps article:last-child{border-right:1px solid var(--line)}
.process-section .steps span{margin-bottom:22px}
.process-section .steps p{margin-top:14px}

/* The pull quote filled its panel rather than standing out in it: smaller
   quote mark, smaller line, and an orange rule to set it apart. */
.confidence-section aside{padding:42px 44px}
.confidence-section aside>span{font:56px/.7 Georgia;display:block;margin-bottom:10px}
.confidence-section blockquote{border-left:3px solid var(--orange);padding-left:22px;font:26px/1.42 Georgia}
.confidence-section aside p{margin-top:20px;padding-left:25px}

/* The careers band and the closing call to action met with no gap at all, so
   the cream and the dark photograph read as one conjoined block. */
.career-callout{padding-bottom:72px}
@media (width<=620px){.career-callout{padding-bottom:48px}}

/* The oversized opening quote had no partner, and the line itself carries no
   quotation marks, so the mark read as an orphan rather than an ornament.
   Pairing it closes the figure. */
.confidence-section aside .q-close{color:#79c56b;font:56px/.2 Georgia;display:block;text-align:right;margin-top:14px}

/* HCO licence number in the footer. Every competitor publishes theirs and a
   careful family looks for it, so it sits on every page rather than buried. */
.copyright .hco{color:#9fb6b8}
.copyright .hco strong{color:#d2dfe0;font-weight:700;letter-spacing:.02em}
@media (width<=620px){.copyright .hco{margin-top:4px}}

/* Terms of use: date line, lists, and conspicuous disclaimer blocks. */
.legal-date{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;margin-bottom:18px}
.legal-intro{padding-bottom:34px;border-bottom:1px solid var(--line)}
.legal-block a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.legal-block a:hover{color:var(--teal)}
.legal-block ul{color:var(--muted);margin:14px 0 0;padding:0;list-style:none;font-size:15px;line-height:1.85}
.legal-block ul li{position:relative;padding-left:20px;margin-top:9px}
.legal-block ul li:before{content:"";position:absolute;left:0;top:12px;width:6px;height:6px;border-radius:50%;background:var(--green)}
.legal-emphasis{background:var(--mint);border-left:3px solid var(--orange);border-radius:0 12px 12px 0;padding:26px 28px}
.legal-emphasis h2{margin-bottom:12px}
.legal-emphasis p strong{color:var(--ink);font-weight:700}

/* Contact form: optional SMS consent. Unchecked by default; never required.
   Scoped under .consult-form so it outranks `.consult-form label`. */
.consult-form .consent-check{flex-direction:row;align-items:flex-start;gap:12px;background:var(--mint);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-top:4px;cursor:pointer;letter-spacing:0;font-weight:400}
.consult-form .consent-check input[type=checkbox]{flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;padding:0;accent-color:var(--green);cursor:pointer;border-radius:4px}
.consult-form .consent-check span{color:var(--muted);font-size:13px;font-weight:400;line-height:1.65;letter-spacing:0}
.consult-form .consent-check strong{color:var(--ink);font-weight:700}
.consult-form .consent-check a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}

/* Caregiver application: fieldsets, radio rows, availability grid, file input.
   Scoped under .consult-form so they outrank `.consult-form label`. */
.consult-form fieldset{border:0;margin:0;padding:0;min-width:0}
.consult-form legend{color:var(--ink);letter-spacing:.04em;padding:0 0 10px;font-size:11px;font-weight:800}
.consult-form .radio-row{display:flex;flex-wrap:wrap;gap:10px}
.consult-form .check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.consult-form .radio-opt,.consult-form .check-opt{flex-direction:row;align-items:center;gap:9px;border:1px solid #ccd7d3;border-radius:9px;padding:11px 14px;cursor:pointer;letter-spacing:0;font-weight:400;background:#fff}
.consult-form .radio-opt input,.consult-form .check-opt input{width:18px;height:18px;flex:0 0 auto;margin:0;padding:0;accent-color:var(--green);cursor:pointer}
.consult-form .radio-opt span,.consult-form .check-opt span{color:var(--ink);font-size:13px;font-weight:400;letter-spacing:0}
.consult-form .radio-opt:has(input:checked),.consult-form .check-opt:has(input:checked){border-color:var(--green);background:var(--mint)}
.consult-form input[type=file]{padding:11px;font-size:13px;background:#fff}
.consult-form input[type=file]::file-selector-button{font:inherit;margin-right:12px;padding:7px 13px;border:1px solid #ccd7d3;border-radius:7px;background:var(--mint);color:var(--ink);cursor:pointer}
@media (max-width:620px){.consult-form .check-grid{grid-template-columns:1fr}}
