:root{--navy:#0f2d3a;--teal:#0e7c7b;--gold:#c9a968;--ivory:#f8f6f1;--grey:#e6e6e1;font-family:'Liberation Sans',Arial,sans-serif;color:var(--navy);background:var(--ivory);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0}a{color:inherit}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:6px}.skip{position:fixed;top:-100px;left:20px;padding:15px;background:var(--ivory);z-index:10}.skip:focus{top:12px}.header{max-width:1600px;margin:auto;min-height:124px;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #0f2d3a24;gap:35px}.brand{display:block;flex-shrink:0}.full-logo{display:block;width:300px;height:auto}.small-logo{display:none}nav{display:flex;align-items:center;gap:38px}nav a{text-decoration:none;font-size:15px;padding:12px 0;border-bottom:1px solid transparent}nav a:hover{border-bottom-color:var(--teal)}nav .nav-contact{display:flex;gap:26px;border-bottom-color:var(--gold)}.menu-toggle{display:none}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.22fr 1fr;min-height:640px;padding:65px 5% 70px;gap:32px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:600;line-height:1.7;margin:0 0 32px}.hero h1{font-size:clamp(34px,4.2vw,66px);line-height:1.17;letter-spacing:-.042em;font-weight:500;margin:0 0 30px}.hero h1 span{color:var(--teal)}.hero-intro{font-size:18px;line-height:1.65;max-width:500px;margin:0 0 34px}.button{display:inline-flex;gap:35px;align-items:center;padding:18px 23px;background:var(--navy);color:var(--ivory);text-decoration:none;font-size:15px;border:1px solid var(--navy);transition:background .2s}.button:hover{background:var(--teal)}.text-link{display:block;width:fit-content;margin-top:24px;font-size:14px;text-decoration:none;border-bottom:1px solid #0f2d3a44;padding-bottom:5px}.text-link span{margin-left:16px}.hero-art{height:510px;position:relative;overflow:hidden;background:var(--ivory)}.hero-image{width:100%;height:100%;object-fit:contain}.hero-art.has-photo .hero-image{object-fit:cover}.image-caption{display:none}.intro-strip{max-width:1600px;margin:auto;background:var(--navy);color:var(--ivory);padding:36px 5%;display:grid;grid-template-columns:1fr 1fr;gap:90px}.intro-strip p{margin:0;font-size:17px;line-height:1.65;max-width:565px}.intro-strip strong{font-weight:400;color:var(--gold)}.section{padding:100px 5%;max-width:1600px;margin:auto}.section-heading h2,.about h2,.contact h2{font-size:clamp(34px,3.6vw,53px);line-height:1.14;letter-spacing:-.035em;font-weight:400;margin:0 0 30px}.section-heading>p:not(.eyebrow){font-size:16px;line-height:1.7;max-width:370px}.expertise{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.expertise-list article{display:grid;grid-template-columns:40px 1fr;gap:24px;padding:29px 0;border-top:1px solid #0f2d3a33}.expertise-list article:first-child{padding-top:0;border-top:0}.number{font-size:13px;padding-top:9px;color:var(--teal)}h3{font-size:32px;letter-spacing:-.02em;font-weight:400;margin:0 0 17px}.expertise-list p{font-size:17px;line-height:1.65;margin:0 0 19px}.expertise-list .small{font-size:13px;line-height:1.8;color:var(--teal);margin:0}.experience{background:#fff;display:grid;grid-template-columns:.83fr 1.17fr;gap:75px;border-top:1px solid var(--grey)}.experience .section-heading{align-self:start;position:sticky;top:45px}.case{padding:0 0 42px;margin:0 0 44px;border-bottom:1px solid #0f2d3a40}.case:last-child{margin:0}.case-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.12em;margin-bottom:22px}.case-sector{color:var(--teal)}.case-index{color:var(--navy)}.case h3{font-size:32px;line-height:1.15;margin-bottom:20px}.case>p{line-height:1.65;font-size:16px}.metrics{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:30px}.metrics strong{display:block;font-size:clamp(22px,2.4vw,36px);font-weight:400;letter-spacing:-.045em;color:var(--teal);margin-bottom:9px;white-space:nowrap}.metrics span{font-size:13px;line-height:1.5;display:block}.case .metric-note{font-size:12px;line-height:1.65;margin:18px 0 23px}details{border-top:1px solid var(--grey)}summary{padding:20px 0 0;list-style:none;cursor:pointer;font-size:14px;display:flex;justify-content:space-between;align-items:center}summary::-webkit-details-marker{display:none}summary span{font-size:25px;font-weight:300;line-height:1}details[open] summary span{transform:rotate(45deg)}.case-detail{padding:8px 0 0}.case-detail h4{font-size:16px;font-weight:600;margin:24px 0 9px}.case-detail p{font-size:16px;line-height:1.7;margin:0}.case-detail .source{font-size:12px;line-height:1.6;margin-top:25px;border-left:2px solid var(--gold);padding-left:15px}.about{display:grid;grid-template-columns:.83fr 1.17fr;gap:75px}.about-label img{width:145px;height:auto;margin:70px 0 0 10px}.about p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:650px}.about .lead{font-size:22px!important;line-height:1.55!important}.about .signature{margin-top:33px;font-size:23px!important}.signature span{display:block;font-size:12px;letter-spacing:.12em;color:var(--teal);margin-top:6px}.contact{background:var(--navy);color:var(--ivory)}.contact>.eyebrow{color:var(--gold)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px}.contact-grid>div>p{font-size:18px;line-height:1.7;max-width:460px;margin-top:0}.email{display:flex;justify-content:space-between;gap:15px;text-decoration:none;font-size:clamp(20px,2.3vw,34px);border-bottom:1px solid var(--gold);padding:12px 0 20px;max-width:470px}.email:hover{color:var(--gold)}.contact-grid .contact-name{font-size:14px;margin:22px 0 0}footer{max-width:1600px;margin:auto;display:flex;justify-content:space-between;gap:25px;align-items:center;padding:32px 5%;font-size:12px;line-height:1.7}footer p{margin:0;letter-spacing:.08em}footer a{text-decoration:none}@media(min-width:1600px){body{background:#edece7}main,.header,footer{background:var(--ivory)}}@media(max-width:1100px){nav{gap:22px}.header{gap:20px}.hero{gap:20px;min-height:580px}.hero-art{height:450px}.expertise{gap:55px}.experience,.about{gap:40px;grid-template-columns:.7fr 1fr}.metrics{gap:12px}.metrics strong{font-size:26px}}@media(max-width:800px){.header{min-height:100px;padding:15px 6%;position:relative}.full-logo{display:none}.small-logo{display:block;width:58px;height:auto}.menu-toggle{display:flex;gap:20px;align-items:center;background:none;border:0;padding:14px 0;color:var(--navy);font-size:16px}.menu-toggle span{font-size:23px}nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--ivory);padding:22px 6% 30px;z-index:4;border-bottom:1px solid var(--grey)}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}nav a{padding:13px 0}.hero{padding:50px 6% 55px;display:block}.hero h1{font-size:clamp(30px,6.9vw,55px);margin-bottom:26px}.eyebrow{margin-bottom:24px}.hero-intro{font-size:17px;max-width:560px}.hero-art{height:350px;margin-top:44px}.intro-strip{grid-template-columns:1fr;gap:20px;padding:35px 6%}.section{padding:65px 6%}.expertise,.experience,.about{display:block}.expertise-list{margin-top:42px}.experience .section-heading{position:static}.section-heading>p:not(.eyebrow){max-width:550px}.case-list{margin-top:45px}.case h3{font-size:31px}.metrics strong{font-size:clamp(23px,4.8vw,36px)}.about-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.about-label img{width:65px;margin:0}.about-label .eyebrow{margin:0}.about h2{margin-top:22px}.contact-grid{display:block}.contact-grid>div{margin-top:35px}.email{font-size:26px}.contact h2{font-size:38px}footer{padding:30px 6%;flex-wrap:wrap;gap:16px}footer p{order:3;width:100%;font-size:11px}}@media(max-width:390px){.hero h1{font-size:29px}.metrics{gap:10px}.metrics strong{font-size:22px}.metrics span{font-size:12px}.email{font-size:23px}.hero-art{height:290px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Offerings follow the existing editorial grid and brand palette. */
.offerings{border-top:1px solid #0f2d3a24}.offering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:70px;row-gap:48px;margin-top:48px}.offering{display:flex;flex-direction:column;border-top:1px solid #0f2d3a33;padding-top:24px}.offering .number{padding:0;margin-bottom:20px}.offering h3{font-size:30px;line-height:1.2;max-width:520px}.offering>p{font-size:17px;line-height:1.7;margin:0 0 26px;max-width:600px}.offering-actions{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.offering-actions a{font-size:14px;line-height:1.5;text-decoration:none;border-bottom:1px solid #0f2d3a44;padding-bottom:4px}.offering-actions a:hover{color:var(--teal);border-color:var(--teal)}.offering-actions .offering-enquiry{font-size:15px;border-color:var(--gold)}.offering-actions span{margin-left:12px}@media(max-width:1100px){.full-logo{width:260px}.offering-grid{column-gap:40px}}@media(max-width:800px){.offering-grid{grid-template-columns:1fr;gap:36px;margin-top:36px}.offering h3{font-size:28px}.offering>p{max-width:none}}
