:root{--green:#133f36;--deep:#0c2c26;--paper:#f7f6f1;--ink:#193a33;--muted:#65736c;--gold:#a48b56;--line:#d9dfd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}.header{height:108px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand-type{font-family:Georgia,serif;letter-spacing:7px;font-size:37px;line-height:1}.brand-type>span{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:2px;margin-top:9px}.header nav{display:flex;align-items:center;gap:31px;font-size:13px}.header nav a:hover{color:var(--gold)}.nav-cta{border-bottom:1px solid var(--green);padding:12px 0}.nav-cta span{margin-left:28px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:710px}.hero-copy{padding:76px 8% 25px 9.5%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;margin:0 0 30px}.eyebrow>span{display:inline-block;background:var(--gold);width:6px;height:6px;margin-right:8px;border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2px;line-height:1.12}h1{font-size:clamp(42px,4.3vw,73px);margin-bottom:26px}h1 em,h2 em{font-weight:400;color:#6e806a}h2{font-size:clamp(36px,3.4vw,54px);margin-bottom:28px}.intro{font-size:14px;max-width:390px;line-height:1.8;color:var(--muted);margin-bottom:30px}.button{border:0;background:var(--green);color:#fff;display:inline-flex;justify-content:space-between;align-items:center;gap:50px;padding:17px 23px;font-size:12px;cursor:pointer;transition:background .2s}.button:hover{background:#245c4c}.button span{font-size:20px;line-height:1}.hero-foot{display:flex;gap:25px;border-top:1px solid var(--line);width:100%;margin-top:auto;padding-top:23px;font-size:8px;letter-spacing:1.6px;color:var(--muted)}.hero-photo{position:relative;overflow:hidden;min-height:650px;background:#aab5b2}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:53% 50%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#102b25b8)}.photo-caption{position:absolute;bottom:43px;left:42px;z-index:1;color:white}.photo-caption>span{font-size:9px;letter-spacing:2.5px}.photo-caption p{font:28px/1.3 Georgia,serif;margin:15px 0 0}.scroll{position:absolute;z-index:2;bottom:46px;right:35px;border:1px solid #ffffff80;border-radius:100%;width:42px;height:42px;text-align:center;padding-top:7px;color:white}.section{padding:110px 8%}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-bottom:1px solid var(--line)}.about-copy{max-width:530px;color:var(--muted);font-size:14px}.large{font-size:22px;line-height:1.5;color:var(--ink);margin-bottom:25px}.text-link{display:inline-flex;gap:40px;font-size:12px;color:var(--green);border-bottom:1px solid var(--gold);padding:12px 0 9px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:47px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;color:var(--muted);max-width:290px;margin-bottom:5px}.services{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:70px 1fr 35px;gap:22px;border-bottom:1px solid var(--line);padding:31px 0}.number{font-size:12px;color:var(--gold);padding-top:9px}.service h3{font:28px/1.3 Georgia,serif;margin-bottom:12px;letter-spacing:-.6px}.service p{max-width:670px;color:var(--muted);font-size:14px;margin-bottom:15px}.service-tag{font-size:8px;letter-spacing:1.6px;color:#74816f}.service-arrow{font-size:27px;color:var(--gold)}.region{background:var(--green);color:white;display:grid;grid-template-columns:1fr 1fr;min-height:540px;align-items:center;overflow:hidden}.region-art{position:relative;max-width:620px;padding:10px 30px}.region-art svg{width:100%;stroke:#527265;stroke-width:.8;opacity:.8}.region-art .arc{stroke:#c5ac72;stroke-width:1.5}.region-art circle{fill:#c5ac72;stroke:none}.region-label{position:absolute;top:43%;left:69%;font-size:9px;letter-spacing:2px;color:#e2d2af}.region-label span{margin-left:8px}.region-copy{padding:65px 16% 65px 5%}.region .eyebrow{color:#c9bd9b}.region h2{font-size:46px;letter-spacing:-1.5px}.region h2 em{color:#bfcab1}.region p:not(.eyebrow){font-size:14px;color:#ccd7cf;max-width:460px}.region-details{display:flex;flex-wrap:wrap;gap:10px 18px;border-top:1px solid #ffffff30;padding-top:24px;margin-top:30px;font-size:9px;letter-spacing:.6px;color:#d7d7bd}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:60px}.steps article{border-top:1px solid var(--gold);padding-top:24px}.steps span{font-size:9px;letter-spacing:2px;color:#7b846e}.steps h3{font:26px Georgia,serif;margin:23px 0 18px}.steps p{color:var(--muted);font-size:14px}.principles{border-top:1px solid var(--line);margin-top:60px;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.principles p{font:22px Georgia,serif;margin:0}.principles>span:before{content:'✧';color:var(--gold);margin-right:12px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#eaece3}.contact-intro{font-size:14px;color:var(--muted);line-height:1.8}.email{font-size:clamp(13px,1.35vw,19px);border-bottom:1px solid var(--gold);display:inline-block;padding-bottom:10px;margin:16px 0 32px}address{font-style:normal;font-size:12px;color:var(--muted)}form{font-size:12px}label{display:block;margin-bottom:20px}input,select,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #a9b6a6;border-radius:0;color:var(--ink);padding:11px 0;font-size:14px;outline-offset:4px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-note,.privacy-note{font-size:10px;color:var(--muted);line-height:1.7}.privacy-note{margin-top:15px}.privacy-note a{text-decoration:underline}#form-status{font-size:12px;margin-top:15px}footer{padding:55px 5% 25px;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:30px;font-size:10px}footer p{margin:0 0 5px}footer .brand-type{font-size:29px}footer .brand-type>span{font-size:6px}.footer-small{color:var(--muted);font-size:9px;padding-top:9px}.scope{flex-basis:100%;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:9px;max-width:100%}.legal{max-width:850px;margin:auto;padding:70px 25px 100px}.legal h1{font-size:48px}.legal h2{font:25px Georgia,serif;margin-top:35px}.legal p,.legal li{font-size:14px;color:var(--muted)}@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero{min-height:850px}}@media(max-width:1000px){.header nav{gap:18px}.hero-copy{padding-top:55px}.hero{min-height:670px}h1{font-size:48px}.section{padding:80px 6%}.region h2{font-size:36px}.region-copy{padding-right:10%}.hero-foot{gap:15px;font-size:7px}.service{grid-template-columns:45px 1fr 25px}.steps{gap:25px}.contact{gap:6%}}@media(max-width:720px){html{scroll-padding-top:20px}.header{height:85px;padding:0 6%}.brand-type{font-size:30px}.brand-type>span{font-size:6.5px}.brand img{width:33px;height:40px}.menu-toggle{display:flex;gap:15px;background:transparent;border:1px solid var(--line);padding:8px 13px;color:var(--ink);font-size:12px}.header nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--paper);padding:20px 6% 28px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #0000000a}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:18px}.nav-cta{padding-top:0}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 7% 25px}.eyebrow{font-size:9px;margin-bottom:24px}h1{font-size:clamp(39px,8.8vw,59px);letter-spacing:-1.7px}.intro{max-width:470px;font-size:14px}.hero-foot{margin-top:35px;padding-top:18px;padding-bottom:0;font-size:7px;gap:25px}.hero-photo{min-height:390px}.hero-photo>img{object-position:50% 47%}.photo-caption{bottom:30px;left:7%}.photo-caption p{font-size:25px}.scroll{bottom:30px}.section{padding:65px 7%}.about{grid-template-columns:1fr;gap:10px}h2{font-size:37px;letter-spacing:-1.3px}.large{font-size:21px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:25px;max-width:100%}.service{grid-template-columns:26px 1fr 18px;gap:10px;padding:27px 0}.service h3{font-size:25px}.service p{font-size:13px}.service-tag{font-size:7px;letter-spacing:1px}.service-arrow{font-size:22px}.region{grid-template-columns:1fr}.region-copy{padding:0 7% 60px;order:0}.region-art{max-width:420px;margin:auto;width:100%;order:1;margin-top:-30px}.region-copy{padding-top:60px}.region-copy p{max-width:none!important}.steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps h3{margin:16px 0 12px}.steps p{margin-bottom:0}.principles{align-items:flex-start;flex-direction:column;gap:17px;margin-top:40px}.contact{grid-template-columns:1fr;gap:40px}.email{font-size:15px;overflow-wrap:anywhere}.form-row{gap:20px}footer{padding:40px 7% 25px;gap:25px}footer>div{flex-basis:100%}.legal h1{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Final typography and enquiry refinements */
.eyebrow{font-size:11px}.hero-foot{font-size:9px;letter-spacing:1.2px}.service-tag{font-size:10px;letter-spacing:1px}.region-details{font-size:11px}.steps span{font-size:10px}.form-note,.privacy-note{font-size:12px}.scope{font-size:11px}.footer-small{font-size:11px}footer{font-size:12px}.service-arrow{font-size:22px}.photo-caption>span{font-size:11px}.brand-type>span{font-size:9px;letter-spacing:1.7px}footer .brand-type>span{font-size:8px;letter-spacing:1.2px}[hidden]{display:none!important}#enquiry-ready{border-left:2px solid var(--gold);padding:2px 0 2px 18px;margin-top:24px}#form-status{font-size:14px;line-height:1.7;margin:8px 0}.enquiry-actions{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center}.copy-button{font-size:12px;color:var(--green);cursor:pointer;border:1px solid #aab6a6;background:transparent;padding:9px 15px}.copy-button:hover{background:#dce2d5}#copy-status{font-size:12px;margin:12px 0 4px}.copy-fallback{margin-top:20px}.copy-fallback textarea{font-size:12px}.legal a{text-decoration:underline;text-underline-offset:3px}@media(max-width:720px){.eyebrow{font-size:10px;letter-spacing:2px}.hero-foot{font-size:8px;letter-spacing:.8px;gap:12px}.service-tag{font-size:9px;letter-spacing:.8px}.brand-type>span{font-size:8px;letter-spacing:1.3px}.region-details{font-size:11px}.form-row{grid-template-columns:1fr;gap:0}.form-row label{margin-bottom:20px}}
.service-tag,.steps span{color:#5d6b58}.number{color:#867142}

/* Original Ivy identity, recovered from the company letterhead */
:root{--green:#123f35;--deep:#082f2e;--gold:#bd902b}.header{height:116px;background:#fff}.brand img.original-logo{width:225px;height:auto;display:block}.header nav{gap:25px}footer{background:#fff;border-top:4px solid var(--green);position:relative}footer:before{content:'';position:absolute;top:-4px;right:0;width:19%;height:4px;background:var(--gold)}footer .brand img.original-logo{width:190px;height:auto}.leadership{display:grid;grid-template-columns:.8fr 1fr;gap:11%;align-items:center;border-top:1px solid var(--line)}.leadership-photo{position:relative;background:#d9ddd8;max-width:390px;overflow:hidden}.leadership-photo>img{width:100%;height:510px;object-fit:cover;object-position:50% 20%;display:block}.leadership-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0b2d29d9)}.portrait-caption{position:absolute;left:28px;bottom:25px;z-index:1;color:#fff}.portrait-caption span{font-size:11px;letter-spacing:2px}.portrait-caption p{font:24px Georgia,serif;margin:8px 0 0}.leadership-copy>p:not(.eyebrow):not(.large){font-size:14px;line-height:1.85;color:var(--muted)}.leadership-copy h2{margin-bottom:24px}.leadership-copy .large{font-size:22px}.leadership-focus{display:flex;flex-wrap:wrap;gap:8px 18px;border-top:1px solid var(--line);padding-top:20px;margin-top:25px;font-size:11px;color:#5d6b58}.leadership-copy .text-link{margin-top:16px}@media(max-width:1100px) and (min-width:721px){.header{padding:0 4%}.header nav{gap:15px;font-size:12px}.brand img.original-logo{width:190px}.nav-cta span{margin-left:10px}.leadership{gap:7%}.leadership-photo>img{height:460px}}@media(max-width:850px) and (min-width:721px){.header nav{gap:12px;font-size:11px}.brand img.original-logo{width:170px}.leadership-photo>img{height:420px}}@media(max-width:720px){.header{height:95px}.header nav{top:95px}.brand img.original-logo{width:180px;height:auto}.leadership{grid-template-columns:1fr;gap:35px}.leadership-photo{max-width:360px;width:100%}.leadership-photo>img{height:430px}.leadership-copy h2{font-size:36px}.leadership-copy .large{font-size:21px}footer .brand img.original-logo{width:180px;height:auto}}

.email{max-width:100%}select{min-width:0} .service>div{min-width:0}

/* Wider portrait framing: show the full original image without cropping. */
.leadership-photo{padding:26px 30px 76px;background:#e1e3de}.leadership-photo>img{width:100%;height:500px;object-fit:contain;object-position:50% 50%}.leadership-photo:after{inset:60% 0 0}.portrait-caption{left:28px;bottom:24px}@media(max-width:1100px) and (min-width:721px){.leadership-photo{padding:22px 20px 76px}.leadership-photo>img{height:440px}}@media(max-width:850px) and (min-width:721px){.leadership-photo>img{height:390px}}@media(max-width:720px){.leadership-photo{padding:24px 24px 76px}.leadership-photo>img{height:400px}.portrait-caption{left:24px}}

.leadership-photo>img{width:100%;max-width:260px;height:auto;max-height:none;margin:0 auto;border-radius:24px 24px 0 0}@media(max-width:1100px) and (min-width:721px){.leadership-photo>img{height:auto;max-width:230px}}@media(max-width:850px) and (min-width:721px){.leadership-photo>img{height:auto}}@media(max-width:720px){.leadership-photo>img{height:auto;max-width:225px}}

/* Updated colour portrait supplied by the client; retain the full composition. */
.leadership-photo>img{width:100%;max-width:none;height:auto;max-height:none;border-radius:4px;object-fit:contain}.leadership-photo{padding:24px 28px 84px}.portrait-caption{bottom:22px}@media(max-width:1100px) and (min-width:721px){.leadership-photo>img{height:auto;max-width:none}.leadership-photo{padding:20px 20px 84px}}@media(max-width:720px){.leadership-photo>img{height:auto;max-width:none}.leadership-photo{padding:22px 22px 84px}}
