@import url('https://api.fontshare.com/v2/css?f[]=sentient@300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=TASA+Orbiter:wght@400;500;600&display=swap');
:root{--plum:#625568;--deep:#443c49;--ivory:#fcfaf6;--gold:#8c7955;--gold-light:#b9a681;--ink:#453e47;--muted:#69636a;--line:#ded9d2;--soft:#efebe6;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'TASA Orbiter',Arial,sans-serif;font-size:17px;line-height:1.4}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Sentient,Georgia,serif;font-weight:300;line-height:1.2;letter-spacing:-.05em}h1{font-size:76px}h2{font-size:54px}h3{font-size:26px;letter-spacing:-.035em}em{font-style:normal;color:var(--gold)}p{line-height:1.45}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{width:calc(100% - 80px);max-width:1600px;margin:auto}.section{padding:68px 0 100px}.section-label{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:28px;margin-bottom:64px}.muted{background:var(--soft)}.dark{background:var(--deep);color:var(--ivory)}.dark p{color:#ded5df}.dark .section-label{color:#c4b8c7;border-color:#ffffff26}.button{display:inline-flex;padding:14px 17px;border-radius:3px;background:var(--plum);color:var(--ivory);font-size:14px;line-height:1.2;border:1px solid transparent;transition:background .3s,transform .3s;cursor:pointer}.button:hover{background:var(--deep);transform:translateY(-2px)}.dark .button,.photo-hero .button,.dark-header .button,.cta-strip .button{background:var(--ivory);color:var(--deep)}.dark .button:hover,.photo-hero .button:hover,.cta-strip .button:hover{background:#e8dfd0}.line-button{display:inline-block;border:0;border-bottom:1px solid var(--line);padding:20px 0 14px;font-size:16px;min-width:200px;border-radius:0!important;background:transparent!important;color:inherit!important}.line-button:hover{border-color:var(--gold)}.site-header{height:76px;width:100%;position:absolute;top:0;left:0;z-index:10}.header-row{height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px}.logo{justify-self:start;background:var(--ivory);padding:3px 10px;border-radius:2px}.logo img{width:155px;height:auto}.nav{display:flex;gap:30px;font-size:14px;align-items:center}.nav a{border-bottom:1px solid transparent;padding:8px 0}.nav a:hover,.nav a[aria-current]{border-color:var(--gold-light)}.header-contact{justify-self:end}.dark-header{color:var(--ivory)}.light-header{position:relative}.light-header .logo{padding-left:0}.menu-button{display:none}.photo-hero{height:100svh;min-height:700px;max-height:1050px;position:relative;background:var(--deep);color:var(--ivory);overflow:hidden}.hero-image{position:absolute;inset:0}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center top}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(48,38,54,.94) 0%,rgba(48,38,54,.76) 32%,rgba(48,38,54,.05) 68%),linear-gradient(0deg,rgba(48,38,54,.9),transparent 42%)}.hero-content{height:100%;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding-top:164px;padding-bottom:40px}.hero-intro{max-width:475px}.hero-intro .section-label{border:0;padding:0;margin-bottom:28px;color:#e0d8dd}.hero-intro p{margin-bottom:26px}.photo-hero h1{line-height:1.09;max-width:1100px}.photo-hero h1 em{color:#cec2b1}.services-hero .hero-content{padding-top:240px}.offset-copy{margin-left:25%;max-width:1000px}.reading-copy{font-size:36px;line-height:1.3;letter-spacing:-.04em}.offset-copy p{max-width:540px;margin-top:64px}.offset-copy .button{margin-top:48px}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:90px}.pillars>div{border-left:1px solid var(--line);padding-left:26px}.pillars h3{font-size:40px;margin-bottom:14px}.pillars p{font-size:14px;color:var(--muted)}.section-summary{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-top:40px;margin-bottom:60px}.section-summary p{max-width:490px}.image-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.image-card img,.family-photo{width:100%;height:auto;object-fit:contain}.image-card figure{overflow:hidden}.image-card h3{border-top:1px solid var(--line);padding-top:23px;margin-top:28px;transition:color .3s}.image-card p{font-size:15px;color:var(--muted);margin-top:12px}.image-card:hover h3{color:var(--gold)}.image-card figure{transition:transform .7s var(--ease)}.image-card:hover figure{transform:translateY(-5px)}.split-heading{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-bottom:90px}.split-heading>div{max-width:500px}.split-heading .button{margin-top:22px}.split-heading>p{max-width:500px;align-self:center}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:20%}.approach-tab{background:none;border:0;border-top:1px solid #ffffff24;color:var(--ivory);text-align:left;width:100%;padding:24px 0;font-family:Sentient,Georgia,serif;font-size:22px;cursor:pointer}.approach-tab.active{border-color:var(--gold-light)}.approach-tab:not(.active){color:#c8bdca}.approach-panel p{font-size:16px;padding-bottom:32px}.approach-images{align-self:center}.approach-image{animation:fade .6s var(--ease)}.care-feature{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.care-feature h3{font-size:36px;line-height:1.3}.care-feature p{margin-top:28px;max-width:560px}.care-feature .button{margin-top:32px}.cta-strip{background:var(--deep);color:var(--ivory);padding:44px 0;border-bottom:1px solid #ffffff26}.cta-strip .shell{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-strip h2{font-size:36px;letter-spacing:-.04em}footer{background:var(--deep);color:var(--ivory);padding:75px 0 24px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:60px}.footer-grid .section-label{border:0;padding:0;margin-bottom:30px;color:#bfb4c1}.footer-grid a:not(.button){display:block;margin-top:12px;font-size:15px}.footer-grid p{font-size:15px;color:#cfc6d2;margin-top:18px}.footer-message .button{margin-top:25px}.footer-message h3{font-size:28px}.footer-mark{display:block;width:200px;max-width:100%;padding:0;background:transparent;margin:60px 0 40px}.footer-mark img{width:100%;height:auto;filter:brightness(0) invert(1)}.footer-bottom{display:flex;justify-content:space-between;font-size:12px;border-top:1px solid #ffffff26;padding-top:25px;color:#cfc6d2}.about-hero{padding:158px 0 100px;text-align:center;min-height:790px}.about-hero .section-label{border:0;padding:0;margin-bottom:66px}.about-hero h1{font-size:56px;line-height:1.3;max-width:950px;margin:auto;letter-spacing:-.045em}.about-hero .line-button{margin-top:65px;min-width:280px;border-color:#ffffff26}.overview{display:grid;grid-template-columns:3.5fr 1fr;gap:8%;align-items:start;padding-top:35px}.overview p{max-width:600px;margin-top:55px}.overview .button{margin-top:38px}.overview figure{padding-top:0}.trust-band{padding:80px 0}.trust-words{display:flex;gap:30px;margin-top:60px;font-size:16px;color:var(--gold)}.trust-words span{border-top:1px solid #cfc6bc;padding-top:20px}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;margin-top:70px}.purpose-grid h2{font-size:36px}.purpose-grid p{margin-top:30px}.purpose-grid .section-label{margin-bottom:30px}.value-rows{margin-top:60px}.value-rows article{padding:32px 0;border-top:1px solid #d4cec6;display:grid;grid-template-columns:1fr 1fr;gap:8%}.value-rows h3{font-size:28px}.value-rows p{font-size:16px}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%}.service-intro{align-self:start;position:sticky;top:40px}.service-intro p{margin-top:30px;max-width:500px}.service-intro figure{margin-top:60px}.service-list article{padding:30px 0;border-top:1px solid #d4cec6;scroll-margin-top:30px}.service-list h3{font-size:30px}.service-list p{font-size:16px;margin-top:17px}.service-list .line-button{font-size:13px;min-width:0;color:var(--muted)!important}.three-statements{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.three-statements h3{font-size:32px}.three-statements p{margin-top:25px;color:var(--muted)}.service-wide{max-width:1000px;margin:80px auto 0}.contact-top{padding-top:100px;padding-bottom:150px}.contact-top h1{font-size:68px;margin-bottom:80px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-layout h2{font-size:36px}.contact-layout p{margin-top:30px;max-width:450px}.contact-options{display:grid;grid-template-columns:1fr 1fr;margin-top:65px;gap:25px}.contact-options>a{border-left:1px solid var(--line);padding:30px;min-width:0}.contact-options h3{font-size:25px;margin:42px 0 12px}.contact-options a>span:last-child{font-size:15px;overflow-wrap:anywhere}.contact-symbol{font-size:22px}.enquiry-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.enquiry-layout figure{margin-top:60px}.form-panel h2{font-size:36px}.form-panel>p{margin-top:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.field.full{grid-column:1/-1}.field label{display:block;font-size:13px;margin-bottom:8px}input,textarea,select{font:inherit;width:100%;border:0;border-bottom:1px solid #b8adb9;background:transparent;padding:12px 0;border-radius:0;color:var(--ink);font-size:15px}textarea{min-height:120px;resize:vertical}.form-note{font-size:13px;margin:25px 0}.form-status{font-size:14px;margin-top:20px}.btn{background:var(--plum);color:var(--ivory);border:0;padding:15px 22px;border-radius:3px;cursor:pointer;font-size:14px}.skip-link{position:fixed;left:15px;top:-80px;z-index:100;background:var(--ivory);color:var(--ink);padding:12px}.skip-link:focus{top:10px}:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}[hidden]{display:none!important}.reveal{opacity:1;transform:none}.motion .reveal.pending{opacity:0;transform:translateY(24px)}.motion .reveal{transition:opacity .9s var(--ease),transform 1s var(--ease)}.reading-copy .word{color:var(--ink);transition:color .3s}.reading-enabled .word{color:#bdb5bd}.reading-enabled .word.read{color:var(--ink)}@keyframes fade{from{opacity:0}to{opacity:1}}
@media(min-width:1500px){.hero-image img{object-position:center 18%}.photo-hero h1{font-size:90px}}
@media(max-width:1050px){.nav{gap:20px}.shell{width:calc(100% - 48px)}.hero-intro{max-width:380px}.hero-shade{background:linear-gradient(90deg,#302636e8,#30263690 44%,#30263610 75%),linear-gradient(0deg,#302636e8,transparent 40%)}.photo-hero h1{font-size:64px}.approach-grid{gap:10%}.about-hero h1{font-size:49px}.contact-layout{gap:40px}.contact-options>a{padding:20px}.image-cards{gap:22px}h2{font-size:46px}}
@media(max-width:700px){.shell{width:calc(100% - 40px)}.header-row{display:flex;justify-content:space-between;gap:12px}.logo img{width:130px}.header-contact{display:none}.menu-button{display:block;padding:9px 14px;background:none;color:inherit;border:1px solid currentColor;border-radius:2px;font-size:13px}.nav{display:none;position:absolute;top:76px;left:0;width:100%;padding:25px 20px;background:var(--deep);color:var(--ivory);border-bottom:1px solid #ffffff26}.nav.open{display:flex;flex-direction:column;align-items:start;gap:16px}.light-header .nav{background:var(--ivory);color:var(--ink)}.photo-hero{min-height:880px;height:auto;max-height:none;padding-top:76px}.hero-image{top:76px;height:auto;bottom:auto}.hero-image img{width:100%;height:auto;object-fit:contain}.hero-shade{top:76px;background:linear-gradient(0deg,var(--deep) 36%,transparent 80%)}.hero-content{padding-top:calc(68vw + 20px);padding-bottom:40px;gap:45px}.hero-intro{max-width:100%;order:2}.hero-intro .section-label{margin-bottom:18px}.photo-hero h1{font-size:clamp(42px,10.2vw,65px);order:1}.services-hero .hero-content{padding-top:calc(68vw + 20px)}.section{padding:48px 0 65px}.section-label{margin-bottom:40px;padding-top:22px}.offset-copy{margin-left:0}.reading-copy{font-size:29px;line-height:1.3}.offset-copy p{margin-top:35px}.offset-copy .button{margin-top:30px}.pillars{grid-template-columns:1fr 1fr;gap:35px 20px;margin-top:60px}.pillars>div{padding-left:15px}.pillars h3{font-size:30px}.pillars p{font-size:12px}h2{font-size:39px}.section-summary{display:block;margin:30px 0 40px}.section-summary .button{margin-top:25px}.image-cards{grid-template-columns:1fr;gap:40px}.image-card h3{margin-top:22px;padding-top:20px}.split-heading,.care-feature,.overview,.purpose-grid,.service-layout,.contact-layout,.enquiry-layout{grid-template-columns:1fr;gap:35px}.split-heading{margin-bottom:45px}.approach-grid{grid-template-columns:1fr;gap:40px}.approach-images{grid-row:1}.care-feature h3{font-size:30px}.cta-strip .shell{align-items:start;flex-direction:column;gap:26px}.cta-strip h2{font-size:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 24px}.footer-message{grid-column:1/-1}.footer-grid a:not(.button){font-size:13px;overflow-wrap:anywhere}.footer-mark{margin:45px 0 30px;width:180px;padding:0}.footer-bottom{flex-direction:column;gap:12px}.about-hero{padding:135px 0 70px;min-height:650px}.about-hero h1{font-size:36px;line-height:1.3}.about-hero .section-label{margin-bottom:45px}.about-hero .line-button{margin-top:40px}.overview{padding-top:0}.overview p{margin-top:30px}.overview figure{max-width:100%}.purpose-grid{margin-top:45px}.purpose-grid h2{font-size:31px}.value-rows article{grid-template-columns:1fr;gap:20px}.service-intro{position:static}.three-statements{grid-template-columns:1fr;gap:35px}.three-statements article{border-top:1px solid var(--line);padding-top:25px}.service-wide{margin-top:50px}.contact-top{padding-top:50px;padding-bottom:65px}.contact-top h1{font-size:54px;margin-bottom:45px}.contact-layout h2{font-size:32px}.contact-options{gap:15px;margin-top:35px}.contact-options>a{padding:15px}.contact-options h3{margin-top:20px}.form-grid{grid-template-columns:1fr}.field{grid-column:1/-1}.enquiry-layout figure{margin-top:35px}.trust-words{flex-direction:column;gap:20px;margin-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal.pending{opacity:1;transform:none}.reading-enabled .word{color:var(--ink)}.service-intro{position:static}}

.mobile-contact{display:none}.hero-intro,.photo-hero h1,.about-hero h1{animation:enter 1.1s var(--ease) both}.photo-hero h1{animation-delay:.15s}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:700px){.nav .mobile-contact{display:block}}

@media(min-width:701px){.home-hero .hero-image img{object-position:center top}.home-hero h1{font-size:64px}.home-hero .hero-intro{max-width:440px}}
