@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#173f86;--blue:#2453a0;--cream:#faf8f2;--peach:#ffd1b5;--pale:#e6edfa;--text:#344866}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}p{color:var(--text);margin:0 0 24px}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.09;letter-spacing:-.055em;margin:0 0 24px;font-weight:750}h1{font-size:clamp(46px,5.4vw,78px)}h2{font-size:clamp(35px,3.8vw,52px)}h3{font-size:26px;letter-spacing:-.035em}em{font-style:normal;color:#4672b9}img{max-width:100%;object-fit:cover;display:block}.shell{width:min(1240px,calc(100% - 96px));margin:auto}.topbar{background:var(--ink);color:white;text-align:center;font-size:12px;letter-spacing:.03em;padding:9px 48px;position:relative}.topbar a{position:absolute;right:48px}header{display:flex;align-items:center;justify-content:space-between;height:106px;gap:30px}.brand{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-size:27px;font-weight:800;letter-spacing:-1.2px;line-height:1}.brand>span>span{font-weight:500}.brand img{width:49px;height:auto}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav>a[aria-current]{text-decoration:underline;text-underline-offset:8px}.button{background:var(--ink);color:white;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:16px 25px;border-radius:40px;font:600 14px 'DM Sans',sans-serif;border:1px solid var(--ink);cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#2d5da7;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.secondary{background:transparent;color:var(--ink)}.secondary:hover{background:var(--pale)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;padding-top:55px;padding-bottom:85px;align-items:center}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:700;color:var(--ink);margin-bottom:23px}.dot{display:inline-block;background:#6d92bf;width:7px;height:7px;border-radius:50%;margin-right:6px}.hero-copy>p:not(.eyebrow){max-width:470px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 18px}.micro{font-size:12px!important;line-height:1.7}.hero-art{position:relative;height:590px}.hero-main{position:absolute;width:78%;height:91%;right:0;top:0;border-radius:180px 180px 20px 20px;object-position:45% 50%;z-index:1}.hero-small{position:absolute;bottom:0;left:-10px;width:45%;height:43%;border:8px solid var(--cream);border-radius:100px 100px 15px 15px;z-index:2;transform:rotate(-8deg)}.peach-orbit{position:absolute;inset:40px -20px 20px 30px;background:var(--peach);border-radius:50% 45% 40% 40%;transform:rotate(15deg)}.sticker{position:absolute;bottom:42px;right:-15px;z-index:3;background:var(--peach);color:var(--ink);padding:21px 25px;border-radius:16px;transform:rotate(7deg);font-size:17px;font-weight:700;line-height:1.3;box-shadow:0 5px 20px #173f8610}.sticker b{margin-left:20px;font-size:27px}.star{position:absolute;right:-22px;top:-28px;font-size:107px;line-height:1;color:var(--ink);z-index:2}.ribbon{display:flex;align-items:center;justify-content:center;gap:55px;background:var(--pale);border-top:1px solid #ccdaf2;border-bottom:1px solid #ccdaf2;padding:25px 20px;font-size:12px;letter-spacing:.18em;font-weight:700}.ribbon b{font-size:29px;font-weight:400}.section{padding-top:95px;padding-bottom:95px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:40px}.section-head>p{max-width:350px}.section-head h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-card{border-bottom:1px solid #bac9df;padding-bottom:27px}.service-card img{width:100%;height:290px;border-radius:15px}.service-card>div{position:relative;padding-top:28px}.service-card h3{font-size:27px;max-width:90%;margin-bottom:15px}.service-card p{font-size:15px;line-height:1.6;min-height:75px}.service-card:hover .text-link{text-decoration:underline}.text-link{font-size:13px;font-weight:700}.number{position:absolute;right:0;top:32px;font-size:11px}.blue-section{background:var(--pale);padding:85px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.split p{font-size:16px}.image-frame img{height:420px;width:100%;border-radius:20px 120px 20px 20px}.image-caption{display:block;font-size:12px;margin-top:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{padding-top:25px;border-top:1px solid #b5c5df}.steps article>span{display:inline-flex;width:45px;height:45px;border-radius:50%;background:var(--peach);align-items:center;justify-content:center;font-size:13px;margin-bottom:25px}.steps p{font-size:15px}.cta{background:var(--peach);padding:65px 30px;text-align:center;border-radius:22px;margin-bottom:90px;position:relative;overflow:hidden}.cta h2{font-size:58px}.cta p{max-width:470px;margin-left:auto;margin-right:auto}.cta:before,.cta:after{content:'✳';position:absolute;font-size:210px;opacity:.15;top:70px;left:-65px}.cta:after{left:auto;right:-65px;top:110px}footer{background:var(--ink);color:white;padding:65px 0 20px}footer p{color:#dbe5f6;font-size:14px;margin-top:25px}footer h3{font-size:16px;letter-spacing:0;margin-bottom:22px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}.footer-grid>div>a:not(.brand){font-size:14px;margin-bottom:10px}.footer-grid>div:not(:first-child)>a{display:block}.sun{color:var(--peach);font-size:40px;margin-left:10px}.footnote{border-top:1px solid #ffffff30;margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;font-size:11px;color:#dbe5f6}.page-heading{padding-top:65px;padding-bottom:65px}.page-heading>p:not(.eyebrow){max-width:620px}.page-heading h1{max-width:1000px}.compact{padding-top:25px}.service-hero{padding:50px 0 75px;display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}.service-hero h1{font-size:64px}.service-hero img{height:510px;width:100%;border-radius:150px 150px 20px 20px}.back{display:block;font-size:13px;margin-bottom:35px}.note{background:var(--pale);border-radius:15px;padding:28px;margin:30px 0;font-size:15px}.note p:last-child{margin-bottom:0}.team{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:45px}.team img{height:390px;width:100%;border-radius:15px;margin-bottom:30px;object-position:50% 30%}.team p{font-size:15px}.team .eyebrow{font-size:11px;margin-bottom:10px}.values{padding-left:35px;border-left:1px solid #b6c7e0}.values h3{font-size:23px}.faq{max-width:950px}.faq details{border-top:1px solid #bdcbe0;padding:23px 0}.faq details:last-child{border-bottom:1px solid #bdcbe0}.faq summary{list-style:none;display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:20px;font-weight:500}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:24px}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{max-width:780px;margin:20px 0 0;font-size:16px}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start}.contact-layout h2{font-size:34px}.contact-link{display:block;font-size:27px;font-weight:600}.email{display:block;margin:10px 0 25px;font-size:16px}.enquiry{background:white;padding:38px;border-radius:20px;border:1px solid #d9e0ec}.enquiry iframe{width:100%;height:840px;border:0;margin:20px 0}.enquiry .micro{margin-top:20px}.enquiry a:not(.button),.prose a{text-decoration:underline}.prose{max-width:800px;padding-bottom:95px}.prose h2{font-size:30px;margin-top:30px}.menu{display:none}.skip{position:absolute;left:15px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}:focus-visible{outline:3px solid #e69751;outline-offset:5px}
@media(min-width:1450px){.hero h1{font-size:80px}}@media(max-width:1050px){.shell{width:calc(100% - 56px)}nav{gap:17px}.hero{gap:22px}.hero-art{height:520px}.actions{gap:9px}.button{padding:14px 20px;gap:18px}.hero h1{font-size:59px}.ribbon{gap:30px}.split{gap:45px}.service-hero h1{font-size:52px}.service-card img{height:240px}}@media(max-width:900px){.shell{width:calc(100% - 40px)}.topbar{font-size:10px;padding:8px 10px}.topbar a{display:none}header{height:85px;position:relative;z-index:10}.brand{font-size:24px}.brand img{width:40px}.menu{display:block;border:1px solid #aabbda;background:transparent;border-radius:24px;padding:9px 16px;color:var(--ink);font:600 13px 'DM Sans',sans-serif}nav{display:none;position:absolute;left:-20px;right:-20px;top:85px;background:var(--cream);padding:20px;border-bottom:1px solid #bacbe2;box-shadow:0 12px 15px #173f8610}nav.open{display:flex;align-items:stretch;flex-direction:column;gap:20px}nav .button{align-self:start}.hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:45px;gap:30px}.hero h1{font-size:clamp(44px,10.5vw,67px)}.desktop{display:none}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-art{height:460px;margin:10px 15px 0}.hero-main{width:77%}.hero-small{width:45%}.star{font-size:80px;top:-10px;right:-10px}.sticker{right:-10px;font-size:14px;padding:18px}.ribbon{gap:18px;flex-wrap:wrap;padding:20px;font-size:10px}.ribbon b{font-size:18px}.ribbon span:last-child,.ribbon b:last-of-type{display:none}.section{padding-top:55px;padding-bottom:55px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:22px}.section-head>.button{margin-top:25px}.cards{grid-template-columns:1fr;gap:35px}.service-card{display:grid;grid-template-columns:38% 1fr;gap:20px}.service-card img{height:220px}.service-card>div{padding-top:7px}.service-card h3{font-size:24px}.service-card p{font-size:14px;min-height:0;margin-bottom:18px}.number{display:none}.split{grid-template-columns:1fr;gap:40px}.blue-section{padding:55px 0}.image-frame img{height:350px}.steps{grid-template-columns:1fr;gap:10px}.steps article{padding-top:20px}.steps article>span{margin-bottom:18px}.cta{padding:45px 25px;margin-bottom:55px}.cta h2{font-size:43px}.cta:before,.cta:after{font-size:150px;opacity:.07}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footnote{gap:15px;flex-wrap:wrap}.page-heading{padding:40px 0}.page-heading h1{font-size:46px}.service-hero{grid-template-columns:1fr;padding:30px 0 40px;gap:35px}.service-hero h1{font-size:48px}.service-hero img{height:400px}.team{grid-template-columns:1fr;gap:30px}.team img{height:360px}.values{padding-left:22px}.contact-layout{grid-template-columns:1fr;gap:25px}.enquiry{padding:25px}.email{font-size:15px}.compact{padding-top:15px}.faq summary{font-size:18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:900px){.peach-orbit{inset:40px 14px 20px 35px;transform:none} .hero-art{min-width:0}}
[hidden]{display:none!important}
/* A brighter Harbour Help palette: ocean blue, coral and lilac. */
:root{--ink:#173c85;--blue:#245ce2;--cream:#fffaf4;--peach:#ffb697;--pale:#e4e9ff;--text:#344467}
body{background:var(--cream)}.topbar{background:#164bc6}.hero{position:relative}.hero h1 em{color:#3260d9}.button{background:#2455d6;border-color:#2455d6}.button:hover{background:#1745bb}.button.secondary{background:transparent;color:#173c85;border-color:#8ca3dc}.button.secondary:hover{background:#e6ebff}.peach-orbit{background:linear-gradient(135deg,#ffc593 4%,#ff9a92 62%,#d7a3eb)}.sticker{background:#ffc35c}.star{color:#6b49ba}.ribbon{background:#2455d6;color:white;border:0}.ribbon b{color:#ffbb93}.blue-section{background:linear-gradient(115deg,#dfe8ff 0%,#e8e0fa 100%)}.service-card:nth-child(1) img{border-bottom:7px solid #5684e9}.service-card:nth-child(2) img{border-bottom:7px solid #b190df}.service-card:nth-child(3) img{border-bottom:7px solid #ffad86}.steps article>span{background:#d9e5ff;color:#234eaf}.steps article:nth-child(2)>span{background:#e8dcfa;color:#5d3b92}.steps article:nth-child(3)>span{background:#ffd7bc;color:#7a3e1e}.cta{background:linear-gradient(115deg,#ffc297,#ffaaa3 60%,#e6b5e9)}.cta .button{background:#173c85;border-color:#173c85}.cta:before,.cta:after{opacity:.16;color:#603e9b}footer{background:#163c91}.service-hero{position:relative}.service-hero img{box-shadow:14px 14px 0 #e6d7f7}.note{background:#e7e8ff}.enquiry{background:#f0edff;border-color:#d8cdf2}
/* Harbour collection: calm, professional colour and coastal patterns. */
:root{--ink:#16386e;--blue:#295ca3;--cream:#faf8f2;--peach:#efbc99;--pale:#e6edf7;--text:#40526b}body{background:var(--cream)}.topbar{background:#16386e}.brand,.hero h1{color:#16386e}.hero h1 em,em{color:#295ca3}.button{background:#214c8c;border-color:#214c8c}.button:hover{background:#173b72}.button.secondary{color:#16386e;border-color:#93a8c5;background:transparent}.button.secondary:hover{background:#e2eaf6}.peach-orbit{background:#edc7aa;background-image:repeating-radial-gradient(ellipse at 0 100%,transparent 0 19px,#ad775f22 20px 22px,transparent 23px 37px)}.star{color:#295ca3}.sticker{background:#f0c8a5;color:#16386e;box-shadow:0 8px 24px #16386e12}.ribbon{background:#173c75;color:#fffaf3;gap:48px}.ribbon b{color:#ecc3a4}.blue-section{background:#e6edf7;position:relative;overflow:hidden}.blue-section:after{content:'';position:absolute;right:-160px;bottom:-230px;width:490px;height:490px;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 23px,#3264a014 24px 26px,transparent 27px 45px);pointer-events:none}.blue-section>.shell{position:relative;z-index:1}.image-frame img{border-radius:110px 18px 110px 18px}.service-card:nth-child(1) img{border-color:#7f9fc7}.service-card:nth-child(2) img{border-color:#e2b18e}.service-card:nth-child(3) img{border-color:#9aafbd}.service-card img{border-radius:65px 16px 16px 16px}.service-card:nth-child(2) img{border-radius:16px 65px 16px 16px}.steps article>span{background:#e0e8f3;color:#244e86}.steps article:nth-child(2)>span{background:#f2ddc9;color:#6e4830}.steps article:nth-child(3)>span{background:#e0e7ec;color:#35536a}.cta{background:#e9c4a7;border-radius:65px 18px 65px 18px}.cta .button{background:#16386e;border-color:#16386e}.cta:before,.cta:after{content:'';width:280px;height:280px;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 19px,#7a4b3526 20px 22px,transparent 23px 37px);opacity:1;left:-150px;top:35px}.cta:after{left:auto;right:-150px;top:160px}footer{background:#16386e}footer p,.footnote{color:#e0ebe8}.service-hero img{box-shadow:14px 14px 0 #dce6f4}.note{background:#e6edf7}.enquiry{background:#edf2fa;border-color:#d2ddec}.page-heading{position:relative;padding-right:120px}.page-heading:after{content:'';position:absolute;right:15px;top:65px;width:90px;height:130px;background-image:radial-gradient(#809bc1 2px,transparent 2px);background-size:13px 13px;opacity:.65;pointer-events:none}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px;margin-bottom:25px}.profile-card{background:#fff;border:1px solid #dce3ed;border-radius:22px;overflow:hidden;box-shadow:0 10px 30px #16386e05}.portrait-wrap{position:relative;padding:20px 20px 0;background:#e3ebf6}.portrait-wrap img{width:100%;height:345px;border-radius:130px 130px 10px 10px;object-position:50% 28%}.profile-card:nth-child(2) .portrait-wrap{background:#f2dfcd}.role-pill{position:absolute;bottom:17px;left:38px;background:#fffaf3;padding:6px 16px;border-radius:30px;font-size:12px;font-weight:700}.profile-content{padding:30px}.profile-content h3{font-size:30px}.profile-content p{font-size:15px}.interest-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.interest-tags span{border:1px solid #d0dcec;padding:4px 12px;border-radius:30px;font-size:11px;color:#34577e}.download-note{font-size:11px;margin-left:12px;color:#536a6c}.team-link{display:block;margin-bottom:24px}.team-banner{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:50px;margin-top:90px;padding:50px;border-radius:22px;background:#e7edf6;background-image:radial-gradient(#7f9bc130 1.2px,transparent 1.2px);background-size:15px 15px}.team-banner h2{font-size:41px}.banner-faces{display:flex;gap:15px}.banner-faces img{width:calc(50% - 8px);height:240px;border-radius:100px 100px 12px 12px;object-position:50% 30%}.banner-faces img:nth-child(2){margin-top:50px}.team-banner p{max-width:430px}.team-intro{border-bottom:1px solid #d7e0ed}nav{gap:23px;font-size:13px}
@media(max-width:1050px) and (min-width:901px){header{gap:15px}.brand{font-size:23px}.brand img{width:36px}nav{gap:13px;font-size:12px}nav .button{padding:12px 16px;gap:12px}.profile-content{padding:24px}}
@media(max-width:900px){nav{gap:20px;font-size:14px}.page-heading{padding-right:0}.page-heading:after{width:55px;height:50px;right:0;top:10px;opacity:.3}.profile-grid{grid-template-columns:1fr;gap:28px}.portrait-wrap{padding:15px 15px 0}.portrait-wrap img{height:300px}.profile-content{padding:24px}.profile-content h3{font-size:27px}.download-note{display:block;margin:10px 0 0}.team-banner{grid-template-columns:1fr;gap:28px;padding:28px;margin-top:50px}.team-banner h2{font-size:35px}.banner-faces img{height:190px}.ribbon{gap:18px}.cta{border-radius:40px 14px 40px 14px}.image-frame img{border-radius:70px 14px 70px 14px}}
footer .brand{color:#fffaf3}

.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dcp-card-art{height:290px;border-radius:16px 65px 16px 16px;background:#173c75;color:#fff8ef;position:relative;overflow:hidden;display:flex;align-items:center;padding:35px;background-image:repeating-radial-gradient(circle at 100% 100%,transparent 0 30px,#aec7e329 31px 33px,transparent 34px 55px)}.dcp-card-art span{font:650 37px/1.1 Manrope,sans-serif;letter-spacing:-.04em}.dcp-art{height:510px;border-radius:150px 150px 20px 20px;position:relative;overflow:hidden;background:#173c75;color:#fff8ef;display:flex;align-items:center;justify-content:center;padding:35px}.dcp-art>div{position:relative;z-index:1}.dcp-art strong{display:block;font:650 48px/1.1 Manrope,sans-serif;letter-spacing:-.05em;margin-top:20px}.dcp-art>div>span{font-size:10px;letter-spacing:.13em;color:#efc3a0}.dcp-orbit{position:absolute;border:1px solid #9cb9dc70;border-radius:50%;width:420px;height:420px;right:-260px;bottom:-140px}.orbit-two{width:520px;height:520px;right:-310px;bottom:-190px}.orbit-three{width:620px;height:620px;right:-360px;bottom:-240px}
@media(max-width:1050px){.dcp-card-art{height:240px}}
@media(max-width:900px){.cards{grid-template-columns:1fr}.dcp-card-art{height:220px;padding:15px;border-radius:16px 45px 16px 16px}.dcp-card-art span{font-size:21px;overflow-wrap:anywhere}.dcp-art{height:380px}.dcp-art strong{font-size:42px}}
