:root{--navy:#082c40;--ink:#193747;--teal:#087a7f;--mint:#91d6ca;--paper:#f5f4ee;--muted:#526772;--line:#d5ddda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin:0 0 24px}h1,h2,h3{font-weight:400;line-height:1.12}h1{font-size:clamp(54px,5.7vw,80px);letter-spacing:-3.5px}h2{font-size:clamp(34px,3.3vw,46px);letter-spacing:-1.7px}h3{font-size:28px;letter-spacing:-.8px}em{font-style:normal;color:var(--teal)}.shell{width:min(1180px,calc(100% - 96px));margin:auto}.section{padding:82px 0}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:2px;color:var(--teal);margin-bottom:24px}.site-header{height:92px;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e6eae7}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:5px;line-height:1}.brand img{width:64px;height:64px}.brand>span{font-size:30px;font-weight:800;letter-spacing:1px}.brand small{display:block;font-size:8px;letter-spacing:3.2px;margin-top:7px}.header-inner nav{display:flex;align-items:center;gap:29px;font-size:13px}.header-inner nav>a{transition:color .2s}.header-inner nav>a:hover,.header-inner nav>[aria-current]{color:var(--teal)}.nav-enquire{padding:12px 20px;background:var(--navy);color:white!important}.nav-enquire:hover{background:#15506a}.menu-button{display:none}.hero{background:var(--navy);color:#fff}.hero-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:100px;align-items:center;padding-top:70px;padding-bottom:65px}.hero .eyebrow{color:var(--mint)}.hero em{color:var(--mint)}.hero-summary{max-width:510px;color:#d4e0e3;font-size:18px;line-height:1.7;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;border:1px solid transparent;font-size:13px;font-weight:600;transition:background .2s,transform .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-white{background:#fff;color:var(--navy)}.button-white:hover{background:#dceee8}.button-outline{border-color:#71949f;color:white}.button-outline:hover{background:#ffffff12}.button-navy{background:var(--navy);color:#fff}.button-navy:hover{background:#15506a}.hero-footnote{font-size:12px;color:#aec5cd;margin:25px 0 0}.hero-note{border-left:1px solid #537580;padding:14px 0 14px 38px}.note-label{font-size:9px;letter-spacing:1.8px;line-height:1.8;color:#a8c3cb;display:block;max-width:240px;margin-bottom:28px}.note-role{margin-bottom:23px}.note-role>span{font-size:25px;letter-spacing:-.5px}.note-role p{font-size:14px;color:#b9ced6;margin-top:9px;line-height:1.8}.hero-note>a{font-size:13px;display:inline-block;border-bottom:1px solid var(--mint);padding:5px 0}.intro-strip{background:var(--paper);padding:39px 0}.intro-strip .shell{display:grid;grid-template-columns:.8fr 1.1fr 1.5fr;gap:48px;align-items:center}.intro-strip p{font-size:14px;color:var(--muted);margin:0}.intro-strip p:first-child{font-size:12px;color:var(--teal);max-width:140px}.intro-strip h2{font-size:25px;letter-spacing:-.6px;line-height:1.3;margin:0}.section-heading{display:flex;align-items:start;gap:90px;margin-bottom:32px}.section-heading>.eyebrow{width:220px;padding-top:8px;flex-shrink:0}.section-heading h2{margin-bottom:0}.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.path-card{display:block;padding:38px 40px;background:#eaf0ec;border-top:3px solid var(--teal);transition:background .2s,transform .2s}.path-card:hover{background:#e0e9e3;transform:translateY(-3px)}.path-card h3{font-size:34px;line-height:1.2;letter-spacing:-1px}.path-card p{max-width:410px;font-size:15px;color:var(--muted)}.text-link{display:block;border-top:1px solid #b9ccc4;padding-top:19px;font-size:13px;font-weight:600}.dark-card{background:var(--navy);color:white;border-color:var(--mint)}.dark-card:hover{background:#123e50}.dark-card .eyebrow{color:var(--mint)}.dark-card p{color:#c2d4da}.dark-card .text-link{border-color:#4e7280}.about{background:var(--paper)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-copy .large-copy{font-size:23px;line-height:1.5;letter-spacing:-.4px;color:var(--ink)}.about-copy p{font-size:15px;color:var(--muted)}.signature{border-top:1px solid var(--line);padding-top:22px;font-size:14px;color:var(--teal)}.questions-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:90px}.faqs details{border-top:1px solid var(--line)}.faqs details:last-child{border-bottom:1px solid var(--line)}.faqs summary{cursor:pointer;font-size:16px;list-style:none;padding:22px 55px 22px 0;position:relative}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:'Read';position:absolute;right:0;font-size:10px;top:27px;color:var(--teal)}.faqs details[open] summary:after{content:'Close'}.faqs details[open] summary{color:var(--teal)}.faqs details p{font-size:14px;color:var(--muted);padding-right:20px}.contact{background:#eaf0ec}.booking-heading{display:flex;justify-content:space-between;gap:80px;align-items:end;margin-bottom:35px}.booking-heading h2{margin:0}.booking-heading>p{font-size:15px;color:var(--muted);max-width:410px;margin:0}.booking-layout{display:grid;grid-template-columns:1fr 1.3fr;background:#fff;border:1px solid #d5dfd9}.booking-context{padding:34px;border-right:1px solid var(--line)}.booking-label{font-size:9px;letter-spacing:2px;color:var(--teal)}.booking-context h3{margin:18px 0;font-size:27px}.booking-facts{display:flex;gap:22px;font-size:13px;color:var(--teal);margin-bottom:22px}.booking-context>p{font-size:14px;color:var(--muted);margin-bottom:16px}.booking-alternative{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.booking-alternative>span{display:block;font-size:9px;letter-spacing:1.6px;margin-bottom:7px}.booking-alternative a{font-size:13px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.inline-button{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:4px}.booking-privacy{font-size:11px;color:var(--muted);margin-top:18px}.booking-calendar{display:flex;flex-direction:column;min-width:0;padding:35px}#booking-start{margin:auto 0;padding:10px 0 20px}#booking-start h3{font-size:29px}#booking-start>p{font-size:14px;color:var(--muted)}#booking-start .eyebrow{font-size:9px;color:var(--teal)}#booking-start .booking-thirdparty{font-size:11px;margin:18px 0 0}.booking-fallback{font-size:11px;border-top:1px solid var(--line);padding-top:17px;text-align:center}.booking-fallback a{text-decoration:underline;text-underline-offset:3px}.booking-status{font-size:12px;color:var(--muted);text-align:center;margin:8px}.booking-status:empty{display:none}.booking-layout.is-open{grid-template-columns:280px 1fr}.booking-layout.is-open .booking-calendar{padding:0 0 20px}.booking-layout.is-open .booking-fallback{margin:0 20px}.calendly-container{height:780px;width:100%;min-width:0}.calendly-container iframe{width:100%;height:100%;border:0}[hidden]{display:none!important}button:disabled{opacity:.65;cursor:wait}footer{padding:40px 0 20px;background:var(--paper)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.footer-top p{font-size:13px;color:var(--muted);margin:0}.footer-top>a:not(.brand){font-size:12px;overflow-wrap:anywhere}.footer-top .brand img{mix-blend-mode:multiply}.footer-bottom{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}dialog{border:0;width:min(650px,calc(100% - 32px));max-height:85vh;padding:45px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#051e2cc9}dialog h2{font-size:30px}dialog p{font-size:14px;color:var(--muted)}dialog a{text-decoration:underline}.dialog-close{position:absolute;right:20px;top:15px;font-size:12px;border:0;background:none;text-decoration:underline}.skip-link{position:fixed;top:-100px;padding:12px;background:#fff;z-index:100}.skip-link:focus{top:10px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #1caaa2;outline-offset:5px}.inner-hero .hero-grid{grid-template-columns:1.2fr 1fr}.inner-hero h1{font-size:clamp(48px,5vw,68px);margin-bottom:0}.inner-intro>p{color:#cedfe3;font-size:18px;max-width:420px}.back-link{display:block;font-size:12px;color:#bdced4;margin-top:22px;text-decoration:underline;text-underline-offset:5px}.process-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.process-note{font-size:15px;max-width:380px;color:var(--muted)}.process-list article{display:flex;gap:26px;border-top:1px solid var(--line);padding:26px 0}.process-list article>span{color:var(--teal);font-size:12px}.process-list h3{font-size:23px;margin-bottom:13px}.process-list p{color:var(--muted);font-size:15px;margin:0}@media(max-width:1050px){.shell{width:calc(100% - 56px)}.hero-grid{gap:50px}.header-inner nav{gap:18px;font-size:12px}.about-grid,.questions-grid,.process-grid{gap:50px}.intro-strip .shell{gap:30px}.section-heading{gap:50px}.booking-context,.booking-calendar{padding:28px}}@media(max-width:760px){html{scroll-padding-top:80px}.shell{width:calc(100% - 40px)}.site-header{height:80px}.brand img{width:54px;height:54px}.brand>span{font-size:27px}.brand small{font-size:7px;letter-spacing:2.8px}.menu-button{display:flex;gap:14px;align-items:center;border:0;padding:12px 0 12px 12px;background:none;color:var(--navy);font-size:13px}.menu-lines{width:18px;height:10px;border-top:1px solid;border-bottom:1px solid}.header-inner nav{display:none;position:absolute;top:79px;left:0;right:0;padding:16px 20px 24px;background:#fff;border-bottom:1px solid var(--line);font-size:15px;box-shadow:0 15px 30px #082c4012}.header-inner nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header-inner nav a{padding:13px 0}.header-inner nav .nav-enquire{padding:13px;margin-top:10px;text-align:center}.hero-grid,.inner-hero .hero-grid{grid-template-columns:1fr;gap:35px;padding-top:45px;padding-bottom:37px}h1{font-size:56px;letter-spacing:-2.5px}.hero-summary{font-size:16px;margin:24px 0}.hero .eyebrow{font-size:9px}.hero-actions{gap:10px}.button{padding:13px 18px;font-size:12px}.hero-footnote{font-size:11px;margin-top:20px}.hero-note{border-left:0;border-top:1px solid #537580;padding:25px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.note-label{display:none}.note-role{margin:0}.note-role>span{font-size:20px}.note-role p{font-size:12px;margin-bottom:0}.hero-note>a{grid-column:1/-1;justify-self:start;font-size:12px}.intro-strip{padding:30px 0}.intro-strip .shell{grid-template-columns:1fr;gap:12px}.intro-strip p:first-child{max-width:none;font-size:11px}.intro-strip h2{font-size:25px}.intro-strip p{font-size:14px}.section{padding:54px 0}h2{font-size:35px;letter-spacing:-1.1px}.section-heading{display:block;margin-bottom:25px}.section-heading>.eyebrow{padding:0;margin-bottom:18px}.path-grid,.about-grid,.questions-grid,.process-grid{grid-template-columns:1fr;gap:24px}.path-card{padding:28px}.path-card h3{font-size:30px}.path-card p{font-size:14px}.about-grid{gap:5px}.about-copy .large-copy{font-size:21px}.questions-grid{gap:10px}.faqs summary{font-size:15px}.booking-heading{display:block;margin-bottom:25px}.booking-heading>p{margin-top:20px;font-size:14px}.booking-layout,.booking-layout.is-open{grid-template-columns:1fr}.booking-context{border-right:0;border-bottom:1px solid var(--line);padding:25px}.booking-calendar{padding:25px}.booking-context h3{font-size:25px}.booking-calendar h3{font-size:25px!important}.calendly-container{height:990px}.footer-top{align-items:start;flex-direction:column;gap:20px}.footer-bottom{font-size:10px}dialog{padding:45px 25px 25px}.inner-hero h1{font-size:49px;letter-spacing:-2px}.inner-intro>p{font-size:16px}.process-grid{gap:20px}.process-list article{gap:20px}.eyebrow{margin-bottom:20px}}@media(max-width:360px){h1{font-size:49px}.hero-actions .button{width:100%}.inner-hero h1{font-size:44px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* A short, one-time entrance as each section reaches the viewport. */
.scroll-reveal{transition:opacity .65s ease,translate .65s cubic-bezier(.22,.61,.36,1),background .2s,transform .2s}
.reveal-pending{opacity:0;translate:0 24px}
.reveal-visible{opacity:1;translate:0 0}
.path-grid>.scroll-reveal:nth-child(2),.about-grid>.scroll-reveal:nth-child(2),.questions-grid>.scroll-reveal:nth-child(2){transition-delay:90ms}
.process-list>.scroll-reveal:nth-child(2){transition-delay:60ms}
.process-list>.scroll-reveal:nth-child(3){transition-delay:120ms}
.reveal-immediate{opacity:1!important;translate:none!important;transition:none!important}
@media(max-width:760px){.reveal-pending{translate:0 16px}.scroll-reveal{transition-duration:.5s}.path-grid>.scroll-reveal:nth-child(2),.about-grid>.scroll-reveal:nth-child(2),.questions-grid>.scroll-reveal:nth-child(2),.process-list>.scroll-reveal{transition-delay:0s}}
@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1!important;translate:none!important;transition:none!important}}
@media print{.scroll-reveal{opacity:1!important;translate:none!important}}
/* Consistent brand sizing and final responsive polish. */
.brand{flex-shrink:0}.brand img{width:240px;height:90px;object-fit:contain}.footer-top .brand img{mix-blend-mode:normal}.header-inner nav{gap:22px}.footer-bottom{gap:18px;flex-wrap:wrap}button:focus-visible,input:focus-visible{outline:3px solid var(--teal);outline-offset:4px}h1,h2,h3{overflow-wrap:break-word}@media(max-width:1050px){.brand img{width:210px;height:79px}.header-inner nav{gap:15px}}@media(max-width:760px){.brand img{width:205px;height:77px}.footer-top .brand{margin-left:-16px}.footer-bottom{line-height:1.7}.button,.menu-button{min-height:44px}}

.staff-shortcut{position:fixed;right:20px;bottom:20px;z-index:40;background:#082c40;color:#fff!important;border:1px solid #91d6ca;border-radius:5px;padding:12px 18px;box-shadow:0 6px 25px #082c4033;font:600 13px Arial;text-decoration:none}.staff-shortcut:focus-visible{outline:3px solid #23b0a6;outline-offset:3px}
