:root{--paper:#f5f6f1;--ink:#192d28;--green:#285441;--muted:#56665d;--line:#d4dcd2;--soft:#e8ede5;--white:#fff;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #91ad64;outline-offset:5px}::selection{background:#d1dfbf}button{color:inherit}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.skip{position:absolute;top:-100px;left:20px;z-index:10;background:var(--ink);color:white;padding:12px}.skip:focus{top:12px}.site-header{background:rgba(245,246,241,.97);position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:100px}.brand{display:inline-flex;align-items:center;gap:17px}.brand img{width:130px;height:47px;object-fit:contain;filter:brightness(0) saturate(100%);opacity:.85}.brand>span{border-left:1px solid #acb7aa;padding-left:16px;font-size:12px;letter-spacing:2px}nav{display:flex;gap:35px;align-items:center;font-size:13px}nav a{position:relative}nav a:hover{color:var(--green);text-decoration:underline;text-underline-offset:7px}.nav-contact{border:1px solid #b3c1b3;padding:10px 18px}.nav-contact span{margin-left:25px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;padding-top:66px;padding-bottom:24px}.hero-copy{padding:18px 0 25px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:500;display:flex;gap:10px;align-items:center;margin:0 0 24px}.dot{display:inline-block;width:6px;height:6px;background:#55734b;border-radius:50%;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(56px,6.6vw,89px);font-weight:400;letter-spacing:-5px;line-height:1.04;margin-bottom:30px}em{font-family:var(--serif);font-weight:400;color:var(--green)}.intro{max-width:370px;color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--green);color:white;border:1px solid var(--green);padding:15px 22px;font-size:12px;line-height:1.6;transition:background .2s,transform .2s}.button:hover{background:#173c2b;transform:translateY(-2px)}.text-link{display:block;width:fit-content;font-size:12px;margin-top:24px}.text-link span{margin-left:15px}.hero-art{min-height:530px;position:relative;overflow:hidden;background:linear-gradient(145deg,#e2e9dd,#cdd8c9 65%,#dfe5d9);isolation:isolate}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#7f967615 1px,transparent 1px),linear-gradient(90deg,#7f967615 1px,transparent 1px);background-size:49px 49px}.arch{position:absolute;width:69%;height:105%;border:1px solid #587552;border-radius:240px 240px 0 0;left:16%;top:18%;transform:rotate(25deg)}.arch-one{box-shadow:inset 20px 0 45px #6e8c631a}.arch-two{transform:translate(29px,13px) rotate(25deg)}.arch-three{transform:translate(58px,26px) rotate(25deg)}.art-orb{position:absolute;width:98px;height:98px;top:37%;left:38%;border-radius:50%;background:radial-gradient(circle at 30% 25%,#f4f5df,#a9bb99 65%,#758e6b);box-shadow:20px 35px 45px #38513520;z-index:-1}.art-top{position:absolute;top:25px;left:25px;font-size:9px;letter-spacing:1.6px}.art-bottom{position:absolute;bottom:26px;left:26px;font-size:12px;line-height:1.5}.art-cross{position:absolute;right:25px;bottom:25px;font-size:25px;color:#617b56}.hero-caption{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-size:10px;letter-spacing:.5px;color:var(--muted)}.principle-band{margin-top:60px;background:var(--soft)}.band-inner{display:flex;align-items:center;justify-content:space-between;padding-block:29px;gap:25px}.band-inner p{margin:0;font-size:17px;line-height:1.4}.band-inner>span{font-size:12px;color:var(--muted);border-left:1px solid #b8c7b2;padding-left:30px}.section{padding-top:105px;padding-bottom:105px}.section-heading{display:grid;grid-template-columns:1fr 2.1fr;gap:50px;margin-bottom:55px}.section-heading .eyebrow{margin-top:10px}h2{font-size:clamp(32px,3.6vw,47px);font-weight:400;letter-spacing:-1.8px;line-height:1.15;margin-bottom:25px}.section-heading p:not(.eyebrow){max-width:480px;color:var(--muted);font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:27px 24px 25px 0;display:flex;flex-direction:column}.service+.service{padding-left:24px;border-left:1px solid var(--line)}.service-top{display:flex;justify-content:space-between;color:#708168;font-size:11px;margin-bottom:35px}.service-symbol{font-size:24px;line-height:1}.service h3{font-weight:400;font-size:21px;letter-spacing:-.5px;line-height:1.25;margin-bottom:20px}.service p{color:var(--muted);font-size:12px;min-height:80px}.service ul{padding:0;list-style:none;font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 25px}.service li{padding-block:7px;border-top:1px solid var(--line)}.service-more{margin-top:auto;padding:10px 0 0;border:0;background:transparent;text-align:left;display:flex;justify-content:space-between;gap:8px;font-size:11px}.service-more:hover{text-decoration:underline}.outcomes-section{background:#e9eee5}.outcomes{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;padding-block:80px;align-items:center}.outcome-art{height:510px;background:#d7e0cf;position:relative;overflow:hidden}.outcome-art>div{width:250px;height:330px;border:1px solid #748f66;position:absolute;left:50%;top:45%;transform:translate(-50%,-50%) rotate(-22deg);border-radius:140px 140px 0 0;box-shadow:22px 22px 0 #c4d0b9,23px 23px 0 #748f66,45px 45px 0 #c4d0b9,46px 46px 0 #748f66,68px 68px 0 #c4d0b9,69px 69px 0 #748f66}.outcome-art>span{position:absolute;left:25px;bottom:25px;font-size:9px;letter-spacing:1.5px}.outcome-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;margin-bottom:28px}.outcome-item{display:flex;gap:22px;padding-top:16px;border-top:1px solid #cad5c3;margin-top:16px}.outcome-item>span{color:#708367;font-size:10px;padding-top:3px}.outcome-item h3{font-size:15px;font-weight:400;margin:0 0 5px}.outcome-item p{font-size:12px;color:var(--muted);margin:0}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.process-grid article{padding-top:22px;border-top:1px solid #9eaf98}.step{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted)}.process-grid h3{font-family:var(--serif);font-size:28px;font-weight:400;margin:30px 0 16px}.process-grid p{font-size:13px;color:var(--muted)}.about-section{background:#223f32;color:#f1f4ec;padding-block:90px}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.about-section .eyebrow{color:#bdcdb9}.about-section h2{font-size:43px;line-height:1.2}.about-section em{color:#c7d7b7}.about-copy{padding-top:40px}.about-copy p{color:#c4d0c5;font-size:13px}.about-copy .large-copy{font-size:21px;line-height:1.5;color:#f1f4ec;margin-bottom:26px}.about-note{margin-top:30px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:1px}.about-note .dot{background:#bed3aa}.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:90px}.faqs details{border-bottom:1px solid var(--line)}.faqs details:first-child{border-top:1px solid var(--line)}summary{list-style:none;padding:23px 0;display:flex;justify-content:space-between;gap:20px;font-size:14px;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{color:#69845e}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);padding-right:30px}.contact-section{background:#e6ecdf;padding-block:85px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-grid h2{font-size:49px}.contact-grid>div>p:not(.eyebrow){max-width:320px;color:var(--muted);font-size:14px}.contact-note{display:flex;align-items:center;gap:10px;font-size:11px;margin-top:40px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:11px;margin-bottom:18px}input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid #a8b69f;border-radius:0;background:transparent;padding:11px 0;color:var(--ink);font-size:14px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#72806a;opacity:1}.optional{color:var(--muted)}.form-disclosure{font-size:10px;color:var(--muted);line-height:1.6}.contact-grid .button{margin-top:10px}.copy-button{background:transparent;border:1px solid #a8b69f;font-size:12px;padding:8px 13px;margin-right:10px}.copy-button:hover{background:#d6e0cd}#form-status{font-size:12px;margin-top:15px}#enquiry-result{padding-top:15px}#enquiry-draft{font-size:12px}footer{padding:40px 0 20px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:35px}.footer-top p{font-size:12px;margin:0;color:var(--muted)}.footer-top>a:last-child{font-size:11px}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-top:20px;font-size:10px;color:var(--muted)}.footer-bottom button{background:none;border:0;padding:0;margin-left:20px;font-size:10px}.footer-bottom button:hover{text-decoration:underline}dialog{width:min(620px,calc(100% - 32px));max-height:85dvh;padding:35px;border:1px solid var(--line);background:var(--paper);color:var(--ink);overflow-y:auto}dialog::backdrop{background:#14291dc2;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.dialog-close{border:1px solid var(--line);background:transparent;width:35px;height:35px}.dialog-top .eyebrow{padding-top:9px}dialog h2{font-size:34px}#dialog-body{color:var(--muted);font-size:14px}#dialog-body h3{color:var(--ink);font-size:15px;font-weight:400;margin-top:25px}#dialog-body ul{padding-left:20px}#dialog-body li{margin-bottom:10px}.dialog-enquire{margin-top:20px}
@media(min-width:1450px){.hero{gap:75px}.hero-art{min-height:570px}}@media(max-width:1000px){.container{width:calc(100% - 56px)}h1{font-size:66px}.hero-art{min-height:490px}.hero{gap:25px}.service-grid{grid-template-columns:1fr 1fr}.service:nth-child(3){padding-left:0;border-left:0;border-top:1px solid var(--line)}.service:nth-child(4){border-top:1px solid var(--line)}.service{padding-right:30px}.service p{min-height:auto}.outcomes{gap:40px}.outcome-art{height:480px}.about-grid{gap:40px}.contact-grid{gap:45px}.band-inner>span{padding-left:18px}.process-grid{gap:20px}.faq-section{gap:45px}}@media(max-width:720px){html{scroll-padding-top:80px}.container{width:calc(100% - 40px)}.header-inner{min-height:79px}.brand img{width:106px;height:40px}.brand{gap:12px}.brand>span{padding-left:12px}.menu-toggle{display:flex;align-items:center;gap:15px;background:transparent;border:0;font-size:12px;min-height:44px}nav{display:none;position:absolute;top:79px;left:0;right:0;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);gap:0}nav.is-open{display:flex;flex-direction:column;align-items:stretch}nav a{padding:14px 0}.nav-contact{border:0}.hero{grid-template-columns:1fr;padding-top:30px;gap:20px}.hero-copy{padding-bottom:10px}.eyebrow{font-size:9px;letter-spacing:1.6px}h1{font-size:clamp(53px,12vw,80px);letter-spacing:-3px}.intro{font-size:15px;max-width:380px}.hero-art{min-height:360px}.hero-caption{gap:20px;font-size:9px}.hero-caption span{max-width:45%}.art-orb{top:30%}.principle-band{margin-top:35px}.band-inner{display:grid;grid-template-columns:1fr 1fr;gap:20px}.band-inner p{font-size:15px}.band-inner>span{padding-left:12px;font-size:11px}.section{padding-block:65px}.section-heading{grid-template-columns:1fr;gap:5px;margin-bottom:35px}.section-heading .eyebrow{margin-top:0}h2{font-size:36px}.service{padding:24px 20px 24px 0}.service+.service{padding-left:20px}.service:nth-child(3){padding-left:0}.service h3{font-size:20px}.service p{font-size:12px}.service li{font-size:10px}.service-more{font-size:10px}.service-top{margin-bottom:22px}.outcomes{grid-template-columns:1fr;padding-block:45px;gap:35px}.outcome-art{height:310px}.outcome-art>div{width:200px;height:260px}.outcome-copy h2{font-size:34px}.process-grid{grid-template-columns:1fr 1fr;gap:30px}.process-grid h3{margin-top:20px;font-size:26px}.about-section{padding-block:55px}.about-grid{grid-template-columns:1fr;gap:0}.about-section h2{font-size:34px}.about-copy{padding-top:10px}.about-copy .large-copy{font-size:20px}.faq-section{grid-template-columns:1fr;gap:15px}.contact-section{padding-block:55px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid h2{font-size:42px}.contact-note{margin-top:25px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top p{font-size:11px}.footer-bottom{flex-direction:column}.footer-bottom button{margin:0 20px 0 0}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:15px}input,textarea,select{font-size:16px}summary{min-height:60px}.service-more{min-height:44px}.footer-bottom button{min-height:36px}dialog{padding:24px}dialog h2{font-size:29px}}@media(max-width:380px){.service-grid{grid-template-columns:1fr}.service+.service{padding-left:0;border-left:0;border-top:1px solid var(--line)}.service ul{font-size:12px}.service-more{font-size:12px}.form-row{grid-template-columns:1fr;gap:0}.hero-art{min-height:300px}.process-grid{gap:18px}h1{font-size:51px}.eyebrow{letter-spacing:1px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-disclosure a,.legal-page a{text-decoration:underline;text-underline-offset:3px}.button:disabled{opacity:.6;cursor:wait;transform:none}.footer-bottom>div{display:flex;gap:20px;flex-wrap:wrap}.footer-bottom a:hover{text-decoration:underline}.legal-page{max-width:820px;padding-block:70px 100px}.legal-page h1{font-size:clamp(38px,6vw,65px);letter-spacing:-2px}.legal-page h2{font-size:25px;letter-spacing:-.6px;margin-top:40px}.legal-page p,.legal-page dd{font-size:14px;color:var(--muted)}.legal-updated{border-bottom:1px solid var(--line);padding-bottom:25px}.legal-identity{display:grid;grid-template-columns:1fr 2fr;gap:12px 25px;border-block:1px solid var(--line);padding-block:22px;font-size:13px}.legal-identity dd{margin:0}.legal-identity dt{font-weight:500}@media(max-width:550px){.legal-identity{grid-template-columns:1fr;gap:5px}.legal-identity dd{margin-bottom:15px}.legal-page{padding-top:45px}}
.privacy-settings{font:inherit!important;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;margin:0!important}.privacy-dialog{max-width:600px}.privacy-dialog>p{font-size:13px;color:var(--muted)}.privacy-summary{border-block:1px solid var(--line);padding:18px 0;margin:22px 0;font-size:13px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.privacy-summary>span{color:var(--green);font-size:11px}.privacy-summary>p{flex-basis:100%;color:var(--muted);margin:0;font-size:12px}.privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0 16px}.privacy-choice{background:var(--green);color:white;border:1px solid var(--green);padding:13px 15px;font-size:12px;min-height:46px}.privacy-choice:hover{background:#173c2b}.privacy-links{font-size:12px!important}.privacy-links a{text-decoration:underline;text-underline-offset:3px}.privacy-feedback:empty{display:none}@media(max-width:420px){.privacy-actions{grid-template-columns:1fr}.privacy-dialog{padding:22px}.privacy-dialog h2{font-size:29px}}

/* Tagline layout: keep the complete phrase readable on narrow screens. */
.hero h1{font-size:clamp(50px,6vw,80px)}@media(max-width:720px){.hero h1{font-size:clamp(39px,10.5vw,72px)}}

@media(max-width:380px){.brand img{width:94px}.brand{gap:8px}.brand>span{padding-left:8px;font-size:10px}.menu-toggle{gap:8px}}

/* Caption sits inside the open corridor between the diagonal line groups. */
.art-bottom{left:27%;bottom:22px;z-index:1;display:flex;gap:12px;white-space:nowrap;font-size:12px;line-height:1.65}
.art-orb{left:48%}
@media(max-width:720px){.art-bottom{left:24%;bottom:18px;font-size:11px;gap:8px}}
@media(max-width:380px){.art-bottom{left:22%;font-size:10px;gap:5px}}

.direct-contact{margin-top:20px;font-size:14px}.direct-contact a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
