500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0d2033;--gold:#b88c46;--ink:#152b40;--muted:#596776;--paper:#f4f6f7}*{box-sizing:border-box}body{margin:0;font:16px/1.7 'Segoe UI',Arial,sans-serif;color:var(--ink);background:white}h1,h2,h3,.brand{font-family:'Segoe UI',Arial,sans-serif;line-height:1.12}h1{font-size:clamp(2.6rem,5.7vw,5.6rem);font-weight:500;letter-spacing:-.045em;margin:18px 0 26px}h2{font-size:clamp(2rem,3.3vw,3.2rem);font-weight:500;letter-spacing:-.035em;margin:12px 0 25px}h3{font-size:1.55rem;font-weight:600}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}img{max-width:100%;display:block;object-fit:cover}.wrap{max-width:1280px;margin:auto;padding:0 6%}.top{background:var(--navy);color:#ccd5df;font-size:.8rem;letter-spacing:.08em;padding:9px 0}.top .wrap{display:flex;justify-content:space-between}header{background:white;border-bottom:1px solid #e7ebee}header .wrap{height:98px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:1.05rem;font-weight:800;letter-spacing:.07em;display:flex;align-items:center;gap:12px}.mark{border:2px solid var(--gold);padding:7px;color:var(--navy);font-size:1.4rem}.brand small{display:block;font-size:.65rem;color:var(--muted);margin-top:6px;letter-spacing:.2em}nav{display:flex;gap:26px;align-items:center;font-size:.9rem}nav a[aria-current=page]{color:#876020}.btn{display:inline-flex;padding:13px 24px;background:var(--gold);color:var(--navy);border:1px solid var(--gold);font-weight:700;font-size:.9rem;justify-content:center;cursor:pointer}.btn:hover{background:#cca460;text-decoration:none}.btn.outline{background:transparent;color:inherit;border-color:#9caab6}.actions{display:flex;gap:14px;flex-wrap:wrap}.eyebrow{text-transform:uppercase;font-size:.8rem;letter-spacing:.18em;font-weight:700;color:#977036}.hero{background:var(--navy);color:white;display:grid;grid-template-columns:1.1fr 1fr;min-height:650px}.hero-copy{padding:85px max(35px,calc((100vw - 1126px)/2));padding-right:45px}.hero .eyebrow{color:#d5ac70}.hero p{color:#d0d9e2;max-width:540px;font-size:1.08rem}.hero-image{position:relative;overflow:hidden}.hero-image img{width:100%;height:100%;min-height:500px}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0d203333,transparent)}.caption{position:absolute;bottom:22px;left:25px;background:#0d2033dc;padding:7px 14px;color:#e1e7ed;font-size:.8rem;z-index:1}.strip{background:var(--paper);border-bottom:1px solid #e1e5e9}.strip .wrap{display:flex;justify-content:space-between;padding-top:21px;padding-bottom:21px;font-size:.9rem}.strip span{color:var(--muted)}section{padding:90px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.lead{color:var(--muted);font-size:1.08rem}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:35px}.section-head h2{margin-bottom:0;max-width:650px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border:1px solid #dce2e7;background:white}.card img{width:100%;height:245px}.card-body{padding:27px}.card p{color:var(--muted)}.number{color:#95703b;font-size:.8rem;letter-spacing:.1em}.textlink{font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:4px;font-size:.9rem}.light{background:var(--paper)}.dark{background:var(--navy);color:white}.dark p{color:#c5d0db}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:42px}.step{border-top:1px solid #718091;padding-top:20px}.step h3{margin-top:15px}.step .number{color:#d5ac70}.banner{padding:60px 0;background:#eaf0f3}.banner .wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.banner h2{margin:8px 0 15px}.banner p{margin:0;color:var(--muted)}footer{background:#091725;color:#becbd6;padding:55px 0 25px}footer .columns{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}footer .brand{color:white}footer a{display:block;margin:9px 0;font-size:.9rem}footer h3{font-size:1rem;color:white}footer .bottom{margin-top:40px;padding-top:20px;border-top:1px solid #304051;display:flex;justify-content:space-between;font-size:.8rem}.pagehero{background:var(--navy);color:white;padding:70px 0}.pagehero h1{max-width:850px;font-size:clamp(2.7rem,5vw,4.7rem)}.pagehero p{max-width:750px;color:#c7d3de;font-size:1.1rem}.pagehero .eyebrow{color:#d5ac70}.wideimg{width:100%;height:420px}.list{list-style:none;padding:0;margin:0}.list li{border-bottom:1px solid #dfe5e9;padding:16px 0}.list li:before{content:'•';color:var(--gold);margin-right:15px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.value{padding:25px;border-top:2px solid var(--gold);background:var(--paper)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.filter{border:1px solid #c5cdd5;background:white;color:var(--navy);padding:10px 18px;cursor:pointer}.filter.active{background:var(--navy);color:white}.notice{padding:17px 21px;background:#eef2f5;border-left:3px solid var(--gold);font-size:.9rem;color:var(--muted);margin:20px 0}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;font-size:.9rem;font-weight:600;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #bdc7d1;background:white;color:var(--ink)}.full{grid-column:1/-1}.contact{padding:35px;background:var(--paper)}.contact dt{font-weight:700;margin-top:20px}.contact dd{margin:4px 0;color:var(--muted)}.menu{display:none}details{border-bottom:1px solid #dce2e7;padding:20px 0}summary{cursor:pointer;font-weight:700}.mobile-note{font-size:.85rem;color:var(--muted)}[hidden]{display:none!important}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:10;background:white;padding:15px}
@media(max-width:900px){header .wrap{height:80px}.menu{display:block;border:1px solid #ccd3da;background:white;padding:8px 13px}nav{display:none;position:absolute;top:116px;left:0;right:0;background:white;padding:25px;z-index:5;box-shadow:0 12px 20px #0002}nav.open{display:flex;flex-direction:column;align-items:stretch}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 6%}.hero-image{height:320px}.hero-image img{min-height:0}.cards{grid-template-columns:1fr 1fr}.split{gap:35px}.steps{grid-template-columns:1fr 1fr}.top .wrap span:last-child{display:none}section{padding:60px 0}}
@media(max-width:600px){.cards,.split,.values,.formgrid{grid-template-columns:1fr}.section-head,.banner .wrap{align-items:start;flex-direction:column}.strip .wrap{gap:10px;flex-wrap:wrap}.strip span{display:none}footer .columns{grid-template-columns:1fr;gap:20px}footer .bottom{flex-direction:column;gap:12px}.hero h1{font-size:2.8rem}.hero-image{height:250px}.card img{height:230px}.wideimg{height:280px}.steps{gap:24px}.steps p{font-size:.95rem}.brand{font-size:.9rem}.contact{padding:25px}.full{grid-column:auto}}
@media(prefers-reduced-motion:no-preference){.card{transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #0d203312}}

/* Reference-inspired corporate redesign */
:root{--navy:#2f3640;--gold:#00b8d9;--ink:#2f3640;--muted:#5a6572;--paper:#f5f6f8}body{font-family:'Segoe UI',Arial,sans-serif}h1,h2,h3{font-family:'Segoe UI',Arial,sans-serif}h2{font-weight:750;letter-spacing:-.025em}.top{font-size:.8rem;letter-spacing:.04em}header .wrap{height:96px}.mark{background:var(--navy);color:white;border-color:var(--gold);padding:8px 12px}.brand{letter-spacing:.03em}nav a[aria-current=page]{color:#007b91}nav a:hover{color:#007b91}.eyebrow,.number{color:#007e94}.btn{color:white;background:#008ba5;border-color:#008ba5;border-radius:2px;padding:13px 25px}.btn:hover{background:#006c80}.textlink{border-color:#008ba5}.slideshow{position:relative;background:var(--navy);color:white}.slide{min-height:650px;display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(19,26,34,.84),rgba(19,26,34,.38)),var(--slide-image);background-size:cover;background-position:center}.slide-inner{width:100%;padding-top:75px;padding-bottom:115px}.slide h1{font-size:clamp(2.7rem,4.6vw,4.65rem);font-weight:800;letter-spacing:-.025em;max-width:920px}.slide p{max-width:690px;color:#eef3f5;font-size:1.1rem;margin:25px 0 32px}.slide .eyebrow,.dark .eyebrow{color:#6de2f7}.slide .outline{background:transparent;border-color:#d8e0e5;color:white}.slider-controls{position:absolute;bottom:24px;left:6%;right:6%;display:flex;justify-content:center;align-items:center;gap:18px}.slider-controls button{color:white;background:#2f3640bb;border:1px solid #a4bac6;padding:7px 12px;font-size:.8rem;cursor:pointer}.slider-dots{display:flex;gap:9px}.slider-dots button{width:12px;height:12px;border-radius:50%;padding:0;background:transparent}.slider-dots button[aria-pressed=true]{background:#00b8d9;border-color:#00b8d9}.intro-image{position:relative}.intro-image img{height:380px;width:100%}.image-badge{position:absolute;bottom:0;right:0;padding:22px 28px;background:#008ba5;color:white;font-size:.85rem}.image-badge strong{font-size:1.2rem}.center-head{text-align:center;max-width:850px;margin:0 auto 45px}.center-head h2{margin-top:12px}.center-head p{color:var(--muted)}.center-head:after{content:'';display:block;width:55px;height:3px;background:#00b8d9;margin:22px auto}.dark .center-head p{color:#d1d8df}.reasons{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.reasons article{text-align:center}.reasons h3{font-size:1.2rem}.reasons p{color:var(--muted)}.reason-no{display:inline-flex;width:55px;height:55px;border:2px solid #008ba5;align-items:center;justify-content:center;border-radius:50%;color:#007e94;font-weight:700}.card{border:0}.card-body{background:var(--navy);color:white;border-top:3px solid #00b8d9;padding:27px}.card-body h3{color:#73e6fa}.card-body p{color:#d9e0e7}.card-body .number{color:#c3d0db}.card-body .textlink{color:white}.card img{height:235px}.gallery .card-body{padding:22px}.gallery h3{font-size:1.25rem}.filters{justify-content:center}.filter.active{background:#008ba5;border-color:#008ba5}.pagehero{background:linear-gradient(110deg,#252c35,#354858);padding:65px 0}.pagehero h1{font-weight:800}.pagehero .eyebrow{color:#73e6fa}.banner{background:#008ba5;color:white}.banner .eyebrow{color:white}.banner p{color:#edf8fa}.banner .btn{background:var(--navy);border-color:var(--navy)}footer{background:#252c35}.value{border-top-color:#008ba5}.notice{border-color:#008ba5}details summary{background:#2f3640;color:white;padding:16px 20px}details{padding:0 0 12px;border:0}details p{padding:5px 20px}section{padding:75px 0}.mobile-note a{text-decoration:underline}.step .number{color:#73e6fa}
@media(max-width:900px){nav{top:132px}.reasons{grid-template-columns:1fr 1fr}.slide{min-height:600px}.slide h1{font-size:3.2rem}}
@media(max-width:600px){header .wrap{height:80px}nav{top:116px}.slide{min-height:570px}.slide h1{font-size:2.65rem}.slide-inner{padding-top:55px;padding-bottom:95px}.slide p{font-size:1rem}.slider-controls{gap:10px;left:4%;right:4%}.slider-controls button{font-size:.75rem}.intro-image img{height:280px}.reasons{grid-template-columns:1fr}.center-head{text-align:left}.center-head:after{margin-left:0}.brand{font-size:.88rem}}

/* Expanded corporate sections */
.wrap{max-width:1240px}.center-head h2{font-size:clamp(1.9rem,3vw,2.7rem)}section{padding:82px 0}.service-six{row-gap:32px}.service-six .card-body{min-height:225px}.service-six h3{font-size:1.3rem}.team-layout{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:stretch}.team-layout>img{width:100%;height:100%;min-height:470px;object-fit:cover}.team-roles{display:grid;gap:15px}.team-roles article{padding:20px 25px;background:white;border-left:3px solid #008ba5}.team-roles h3{font-size:1.15rem;margin:10px 0}.team-roles p{margin:0;color:var(--muted)}.quote-card{padding:30px;border:1px solid #e0e5ea;background:#f8fafb}.quote-mark{font:70px/1 Georgia,serif;color:#008ba5}.quote-card p{font-size:1.08rem;color:var(--muted)}.quote-card strong,.quote-card>span:last-child{display:block}.quote-card>span:last-child{font-size:.9rem;color:var(--muted);margin-top:5px}.faq-photo{width:100%;height:250px;object-fit:cover;margin:25px 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}.metrics strong{display:block;font-size:2.7rem;color:#76e8fb}.metrics span{display:block;margin-top:12px;color:#d2dce5}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.photo-grid figure{margin:0;background:white}.photo-grid img{width:100%;height:245px;transition:filter .2s}.photo-grid a:hover img{filter:brightness(.8)}.photo-grid figcaption{padding:15px 20px;font-weight:600}.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.partner-grid div{border:1px solid #d7dfe5;padding:26px;text-align:center;color:#526575;background:white}.contact-strip{background:#008ba5;color:white;padding:32px 0}.contact-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.contact-strip strong,.contact-strip span,.contact-strip a{display:block}.contact-strip strong{font-size:1.1rem;margin-bottom:7px}.contact-strip a{text-decoration:underline}.article-content{max-width:850px;margin:auto}.article-content>img{width:100%;height:400px;object-fit:cover}.article-content p{line-height:1.9}.nav-pages{position:relative;padding:0;font-size:.9rem}.nav-pages summary{padding:0;background:none;color:var(--ink)}.nav-pages>div{position:absolute;top:30px;right:0;background:white;padding:18px;min-width:170px;z-index:10;box-shadow:0 8px 25px #0002}.nav-pages a{display:block;margin:10px 0}.brand small{letter-spacing:.04em;font-size:.6rem}nav{gap:19px}
@media(max-width:900px){.team-layout{grid-template-columns:1fr}.team-layout>img{height:350px;min-height:0}.photo-grid,.partner-grid{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr 1fr}.nav-pages>div{position:static;box-shadow:none}}
@media(max-width:600px){.photo-grid,.partner-grid,.contact-strip .wrap{grid-template-columns:1fr}.metrics strong{font-size:2rem}.service-six .card-body{min-height:0}.photo-grid img{height:260px}.article-content>img{height:250px}section{padding:55px 0}}

.brand-logo{width:235px;height:66px;object-fit:contain}.footer-wordmark{font-family:'Segoe UI',Arial,sans-serif;font-size:1.6rem;font-weight:800;letter-spacing:.1em;color:white}.board-feature{display:grid;grid-template-columns:minmax(240px,380px) 1fr;gap:65px;align-items:center}.board-feature>img{width:100%;height:440px;object-fit:cover;object-position:center 20%;border-bottom:5px solid #00b8d9}.board-feature h3{font-size:2rem}.team-specialisms{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.team-specialisms>div{padding:25px;background:white;border-top:3px solid #00b8d9}.team-specialisms strong,.team-specialisms span{display:block}.team-specialisms span{color:var(--muted);font-size:.9rem;margin-top:7px}.demo-label{font-size:.85rem!important;color:#687686}.dark .demo-label{color:#c5d5df}.partner-grid strong{display:block;font-family:'Segoe UI',Arial,sans-serif;font-size:1.1rem;letter-spacing:.04em;color:#2f3640}.partner-grid span{font-size:.85rem;margin-top:8px;display:block}.top .wrap{gap:20px}.top a{color:inherit}.top .wrap span:last-child{font-size:.8rem}header .wrap{max-width:1400px;padding-left:4%;padding-right:4%}@media(max-width:900px){.board-feature{gap:30px}.brand-logo{width:200px}}@media(max-width:600px){.board-feature,.team-specialisms{grid-template-columns:1fr}.board-feature>img{height:420px}.brand-logo{width:185px;height:55px}}

.director-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.director-card{background:white;border:1px solid #dce4e9;overflow:hidden}.director-card>img{display:block;width:100%;height:380px;object-fit:cover;object-position:center 20%}.director-copy{padding:26px;border-top:4px solid #00b8d9}.director-copy h3{font-size:1.55rem;margin:12px 0}.director-copy p{color:var(--muted)}.director-tagline{font-weight:600}.board-link{text-align:center;margin-top:35px}.profile-note{font-size:.85rem;color:var(--muted);margin-top:25px}.top .wrap{align-items:center}.brand-logo{max-width:100%}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #008ba5;outline-offset:4px}@media(max-width:900px){.director-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.director-card>img{height:370px}}@media(max-width:600px){.director-grid{grid-template-columns:1fr}.director-card>img{height:440px}}

.capability-grid .card-body{min-height:285px;display:flex;flex-direction:column}.capability-grid h3{font-size:1.3rem;line-height:1.3}.capability-grid p{font-size:1rem;margin-bottom:22px}.capability-grid .textlink{align-self:flex-start;margin-top:auto}.capability-grid .card img{height:255px}.gallery-note{margin-top:25px;text-align:center}@media(max-width:600px){.capability-grid .card-body{min-height:0}}

/* CEO editorial layout and team refinement */
.ceo-layout{display:grid;grid-template-columns:minmax(250px,370px) minmax(0,1fr);gap:70px;align-items:start}.ceo-portrait{background:#2f3640;color:white}.ceo-portrait img{width:100%;height:440px;object-fit:cover;object-position:center 20%}.ceo-portrait>div{padding:25px;border-top:4px solid #00b8d9}.ceo-portrait strong{font-size:1.25rem;display:block}.ceo-portrait span{display:block;color:#d5e3ec;margin-top:6px}.ceo-letter p{line-height:1.85}.ceo-letter blockquote{margin:30px 0;padding:20px 0 20px 25px;border-left:4px solid #00b8d9;font-family:'Segoe UI',Arial,sans-serif;font-size:1.4rem;font-weight:600;line-height:1.5;color:#2f3640}.ceo-signature{font-family:Georgia,serif;font-size:1.75rem;font-style:italic;margin-bottom:0}.ceo-title{color:var(--muted);margin-top:0}.team-philosophy{max-width:1000px}.director-copy .eyebrow{font-size:.75rem;letter-spacing:.08em}.director-grid .director-copy p{font-size:1rem}.service-six .card-body{min-height:270px}.service-six .card img{height:250px}.director-card{transition:box-shadow .2s}.director-card:hover{box-shadow:0 12px 30px #24384a12}@media(max-width:900px){.ceo-layout{gap:35px}}@media(max-width:600px){.ceo-layout{grid-template-columns:1fr}.ceo-portrait img{height:440px}.ceo-letter blockquote{font-size:1.2rem}.service-six .card-body{min-height:0}}

.expanded-footer{padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr .85fr;gap:38px}.expanded-footer h3{font-size:1.15rem;margin:0 0 25px;position:relative;padding-bottom:14px}.expanded-footer h3:after{content:'';width:35px;height:3px;background:#00b8d9;position:absolute;left:0;bottom:0}.footer-about p{font-size:.95rem;line-height:1.85;color:#c3ccd5}.footer-about .footer-wordmark{font-size:1.45rem;margin-bottom:18px}.footer-contact{margin-top:23px;border-top:1px solid #40505f;padding-top:14px}.footer-contact span{display:block;font-size:.9rem;margin-top:10px}.expanded-footer .footer-article{padding:0 0 18px;margin:0 0 19px;border-bottom:1px solid #40505f;line-height:1.5;font-size:.95rem;color:#edf2f6}.footer-article span{display:block;font-size:.8rem;color:#a7bac8;margin-top:8px}.footer-service-line{margin-top:40px;border-top:1px solid #40505f;padding-top:22px;display:flex;gap:25px;flex-wrap:wrap;align-items:center}.footer-service-line span{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#7bdcea}.footer-service-line a{margin:0}.expanded-footer .bottom{margin-top:25px}.expanded-footer a:hover{color:#7bdcea}@media(max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}}@media(max-width:600px){.footer-grid{grid-template-columns:1fr;gap:32px}.expanded-footer{padding-top:50px}.footer-service-line{gap:15px}.footer-about{max-width:100%}}

.developer-credit{font-size:.78rem;color:#a6b5c2}.developer-credit strong{font-weight:500;color:#bdc9d3}.expanded-footer .bottom{gap:15px;flex-wrap:wrap}@media(max-width:600px){.developer-credit{line-height:1.6}}

/* Portrait frame crops the unused lower area of John’s source image. */
.john-portrait{height:380px;overflow:hidden;background:#2f3640}.john-portrait>img{display:block;width:100%;height:149%;object-fit:cover;object-position:center top}@media(max-width:900px){.john-portrait{height:370px}}@media(max-width:600px){.john-portrait{height:440px}}

.team-email a{color:#007f96;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.team-email{margin:12px 0}
