:root{--navy:#102a49;--navy-deep:#0b2039;--cream:#fbf9f4;--paper:#fffefa;--gold:#b98732;--muted:#576472;--line:#dcd7cc;--teal:#2b6b70;--serif:Georgia,"Times New Roman",serif;--sans:"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--navy);font-family:var(--sans);margin:0;font-size:16px;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}button{font:inherit}.container{width:min(1200px,100% - 64px);margin-inline:auto}.skip-link{z-index:20;background:#fff;padding:1rem;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.site-header{z-index:10;background:#fbf9f4f5;border-bottom:1px solid #e8e4da;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:2rem;height:100px;display:flex}.brand{flex:none;width:245px;display:block}.brand img{width:100%;height:auto}.nav{align-items:center;gap:2.35rem;font-size:.91rem;font-weight:600;display:flex}.nav a{white-space:nowrap;text-decoration:none}.nav a:hover,.text-link:hover{color:var(--gold)}.nav-contact{border:1px solid var(--navy);border-radius:100px;padding:.72rem 1.3rem}.nav-contact span{margin-left:.5rem}.nav-contact:hover{background:var(--navy);color:#fff!important}.menu-toggle,.mobile-nav{display:none}.hero{background:radial-gradient(circle at 82% 20%,#f5efe2 0,transparent 43%),var(--cream);padding:90px 0 134px;position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.12fr .88fr;align-items:center;gap:8%;display:grid}.eyebrow{color:var(--gold);letter-spacing:.2em;margin:0 0 1.5rem;font-size:.76rem;font-weight:700;line-height:1.5}.eyebrow-line{background:var(--gold);vertical-align:middle;width:29px;height:1px;margin-right:.7rem;display:inline-block}.hero h1,h2{font-family:var(--serif);letter-spacing:-.047em;margin:0;font-weight:400;line-height:1.06}.hero h1{max-width:690px;font-size:clamp(3.6rem,5.4vw,5.7rem)}.hero h1 em,h2 em{color:var(--gold);font-weight:400}.hero-lede{color:#35485a;max-width:630px;margin:2rem 0 2.1rem;font-size:1.18rem;line-height:1.75}.hero-actions{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.button{border-radius:3px;justify-content:center;align-items:center;gap:1.8rem;min-height:53px;padding:.85rem 1.35rem;font-size:.91rem;font-weight:700;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--gold);color:#fff}.button-primary:hover{background:#946d29}.text-link{border-bottom:1px solid var(--gold);padding-bottom:.25rem;font-size:.92rem;font-weight:700;text-decoration:none}.text-link span{margin-left:.5rem}.hero-panel{background:var(--navy);color:#fff;max-width:470px;margin:0 auto;padding:2.2rem 2.5rem 1.6rem;transform:rotate(1deg);box-shadow:28px 28px #e9dfce}.panel-top{color:#e0b465;letter-spacing:.2em;border-bottom:1px solid #4e6279;justify-content:space-between;align-items:center;padding-bottom:1.5rem;font-size:.75rem;font-weight:700;display:flex}.panel-star{font-size:2.1rem;line-height:1}.approach-list{margin:1.1rem 0 1.2rem;padding:0;list-style:none}.approach-list li{border-bottom:1px solid #40546d;gap:1.4rem;padding:1.45rem 0;display:flex}.approach-number{font-family:var(--serif);color:#d5a650;font-size:1.45rem}.approach-list strong{font-family:var(--serif);font-size:1.55rem;font-weight:400;line-height:1.2;display:block}.approach-list small{color:#d3dce5;margin-top:.35rem;font-size:.88rem;line-height:1.55;display:block}.panel-footer{color:#e6bd74;font-family:var(--serif);justify-content:space-between;font-size:1.1rem;font-style:italic;display:flex}.hero-sweep{pointer-events:none;width:100%;height:100px;position:absolute;bottom:-8px;left:0}.section{padding:110px 0}.section-heading{grid-template-columns:1fr .42fr;align-items:end;gap:5rem;margin-bottom:2.9rem;display:grid}.section h2,.contact h2{font-size:clamp(2.75rem,4vw,4.4rem)}.section-heading>p{color:var(--muted);margin:0 0 .2rem;font-size:1.06rem;line-height:1.7}.service-grid{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.service-card{border:1px solid #e9e5dc;border-top:5px solid var(--accent);background:#fff;flex-direction:column;min-height:454px;padding:2rem 1.65rem 1.75rem;transition:transform .2s,box-shadow .2s;display:flex}.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #102a4915}.strategy{--accent:#193b5c}.digital{--accent:#bc8735}.automation{--accent:#2b7170}.customer{--accent:#bf7167}.service-icon{background:color-mix(in srgb,var(--accent) 12%,white);width:49px;height:49px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:1.7rem;font-size:1.75rem;line-height:1;display:grid}.card-index{letter-spacing:.13em;color:var(--accent);margin:0 0 .9rem;font-size:.7rem;font-weight:800;line-height:1.4}.service-card h3{font:400 1.75rem/1.15 var(--serif);letter-spacing:-.03em;margin:0 0 1rem}.service-card>p:not(.card-index){color:#52606e;margin:0;font-size:.92rem;line-height:1.65}.service-card ul{margin:auto 0 0;padding:1.2rem 0 0;list-style:none}.service-card li{border-top:1px solid #e6e5e0;padding:.55rem 0;font-size:.85rem;font-weight:600}.services-note{color:var(--muted);text-align:center;margin:2rem 0 0;font-size:.88rem}.process{background:#eaf0ef}.process-grid{grid-template-columns:.75fr 1.25fr;align-items:start;gap:6%;display:grid}.process-grid>div:first-child>p:not(.eyebrow){color:#405362;max-width:500px;margin:1.7rem 0 2rem;font-size:1.08rem;line-height:1.8}.process-steps{border-top:1px solid #b6c8c8}.process-steps>div{border-bottom:1px solid #b6c8c8;grid-template-columns:65px 1fr;gap:1.5rem;padding:1.45rem 0;display:grid}.process-steps span{font:italic 1.65rem var(--serif);color:var(--teal)}.process-steps h3{font:400 1.55rem var(--serif);margin:0 0 .4rem}.process-steps p{color:#52626b;margin:0;font-size:.94rem}.about{background:var(--paper)}.about-grid{grid-template-columns:.78fr 1fr;align-items:center;gap:12%;display:grid}.about-mark{background:var(--navy);color:#fff;flex-direction:column;justify-content:center;align-items:center;height:460px;display:flex;position:relative;overflow:hidden}.about-mark:before,.about-mark:after{content:"";border:1px solid #d3a54d;border-radius:50%;width:180%;height:150px;position:absolute;bottom:7%;left:-35%;transform:rotate(-11deg)}.about-mark:after{border-color:#5d7790;bottom:12%}.about-large{font:400 clamp(5rem,11vw,9rem)/1 var(--serif);letter-spacing:-.11em;z-index:1}.about-rule{background:var(--gold);z-index:1;width:60px;height:2px;margin:1.2rem 0}.about-mark>span:last-child{text-align:center;letter-spacing:.2em;z-index:1;font-size:.8rem;line-height:1.7}.about-grid>div:last-child>p:not(.eyebrow){color:#4b5a67;font-size:1.06rem;line-height:1.75}.values{flex-wrap:wrap;gap:.6rem;margin-top:1.7rem;display:flex}.values span{border:1px solid #d5d3cb;border-radius:20px;padding:.35rem .8rem;font-size:.8rem;font-weight:700}.contact{background:var(--navy);color:#fff;padding:95px 0}.contact-inner{grid-template-columns:1fr .7fr;align-items:center;gap:12%;display:grid}.contact h2 em{color:#e4b464}.contact-inner>div:first-child>p:not(.eyebrow){color:#d9e1e8;max-width:560px;margin:1.7rem 0 0;font-size:1.06rem;line-height:1.75}.contact-card{background:#173453;border:1px solid #607186;padding:2rem 2.2rem}.contact-spark{color:#e3b15f;font-size:2rem}.contact-card h3{font:400 1.85rem var(--serif);margin:.7rem 0}.contact-card p{color:#dde4eb;margin:0 0 1.8rem}.draft-label{color:#e0b465;letter-spacing:.14em;border-top:1px solid #607186;padding-top:1rem;font-size:.72rem;font-weight:700;display:inline-block}.footer{color:#c0cbd5;background:#081a2d;padding:30px 0}.footer-inner{justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-brand{font:400 1.9rem var(--serif);color:#fff;letter-spacing:-.05em;white-space:nowrap}.footer-brand span{font:600 .62rem var(--sans);letter-spacing:.18em;margin-left:.5rem}.footer p{margin:0;font-size:.76rem}@media (width<=1050px){.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:390px}.section-heading{grid-template-columns:1fr .7fr}.hero-grid{gap:4%}.hero h1{font-size:clamp(3.5rem,6vw,5rem)}}@media (width<=760px){.container{width:min(100% - 40px,600px)}.header-inner{height:77px}.brand{width:191px}.nav{display:none}.menu-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:8px;display:flex}.menu-toggle span{background:var(--navy);width:100%;height:2px}.mobile-nav:not([hidden]){border-top:1px solid var(--line);background:var(--cream);flex-direction:column;padding:1rem 20px 1.4rem;display:flex}.mobile-nav a{border-bottom:1px solid var(--line);padding:.72rem 0;font-weight:700;text-decoration:none}.hero{padding:65px 0 100px}.hero-grid,.section-heading,.process-grid,.about-grid,.contact-inner{grid-template-columns:1fr;gap:2.5rem}.hero h1{font-size:clamp(3.45rem,12vw,5rem)}.hero-lede{font-size:1.07rem}.hero-panel{width:min(100% - 24px,470px);margin:1rem 24px 0 0;transform:rotate(0);box-shadow:16px 16px #e9dfce}.hero-sweep{height:60px}.intro-inner{padding:1.2rem 0;display:block}.intro-inner p:last-child{margin-top:.4rem}.section{padding:75px 0}.section-heading{margin-bottom:2rem}.section-heading>p{max-width:500px}.about-mark{height:300px}.contact{padding:75px 0}.footer-inner{display:block}.footer-inner p{margin-top:.55rem}}@media (width<=520px){.hero-actions{flex-direction:column;align-items:flex-start;gap:1.5rem}.hero-panel{padding:1.6rem 1.4rem}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.service-card ul{margin-top:1.3rem}.section h2,.contact h2{font-size:clamp(2.6rem,10vw,3.3rem)}.process-steps>div{grid-template-columns:40px 1fr;gap:1rem}.footer-brand span{margin:.2rem 0 0;display:block}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}.services-intro{color:var(--muted);font-size:1.06rem;line-height:1.7}.services-intro p{margin:0 0 1rem}.services-intro .review-caption{margin:.65rem 0 0;font-size:.94rem}.section-heading:has(.services-intro){grid-template-columns:1fr .8fr;align-items:start;gap:4rem}.working-principles{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.principle{background:var(--paper);border:1px solid #cfdbd9;border-top:3px solid var(--teal);padding:1.7rem}.principle h3{font:400 1.6rem/1.2 var(--serif);letter-spacing:-.02em;margin:0 0 1rem}.principle p{color:#405362;margin:0;font-size:1rem;line-height:1.7}.principle:nth-child(2){border-top-color:var(--gold)}.principle:nth-child(3){border-top-color:var(--navy)}.principle:nth-child(4){border-top-color:var(--teal)}@media (width<=1050px){.process-grid{grid-template-columns:1fr;gap:2.5rem}}@media (width<=760px){.section-heading:has(.services-intro){grid-template-columns:1fr;gap:2rem}}@media (width<=520px){.working-principles{grid-template-columns:1fr}.principle{padding:1.5rem}}@media (width>=521px){.service-grid{row-gap:0}.service-card{grid-row:span 5;grid-template-rows:subgrid;row-gap:0;display:grid}.service-card .service-icon,.service-card .card-index,.service-card h3,.service-card>p:not(.card-index){align-self:start}.service-card ul{align-self:end;margin:0;padding-top:1.2rem}}@media (width>=521px) and (width<=1050px){.service-grid{row-gap:13px}.service-card{row-gap:0}}.about-photos{min-width:0}.founders-photo{background:var(--navy);color:#fff;margin:0}.founders-photo>img{object-fit:cover;object-position:46% 42%;width:100%;height:400px}.founders-photo figcaption{padding:.9rem 1.2rem;font-size:.94rem}.caven-story{align-items:center;gap:1.2rem;margin-top:1.5rem;display:flex}.caven-story>img{object-fit:cover;object-position:50% 25%;border:3px solid #e9dfce;border-radius:50%;flex:none;width:120px;height:120px}.caven-story p{color:#4b5a67;margin:0;font-size:.94rem;line-height:1.6}.caven-story strong{color:var(--navy);margin-bottom:.3rem;display:block}@media (width<=760px){.founders-photo>img{height:360px}}@media (width<=520px){.founders-photo>img{height:320px}.caven-story{gap:1rem}.caven-story>img{width:100px;height:100px}}.business-review{border-top:1px solid var(--line);background:#f2eee5}.review-grid{grid-template-columns:1fr 1fr;align-items:center;gap:5%;display:grid}.review-copy p:not(.eyebrow){color:#405362;font-size:1rem;line-height:1.75}.review-copy .review-lede{margin:1.5rem 0;font-size:1.12rem}.review-copy h3{font:400 1.45rem/1.25 var(--serif);margin:1.6rem 0 .5rem}.review-copy h3+p{margin:0}.review-copy .button{margin-top:1.6rem}.review-copy .review-direct{margin:1rem 0 0;font-size:.94rem}.review-preview{min-width:0;margin:0}.review-preview img{width:100%;height:auto}.review-preview figcaption{color:var(--muted);margin:1rem 0;font-size:.88rem;line-height:1.6}.review-preview .text-link{display:inline-block}@media (width<=900px){.review-grid{grid-template-columns:1fr;gap:2.5rem}.review-preview{max-width:700px}}.footer-inner{align-items:flex-start}.footer-details{text-align:right;max-width:720px}.footer-details p{margin:0;font-size:.875rem;line-height:1.7}.footer-details p+p{margin-top:.35rem}@media (width<=760px){.footer-details{text-align:left;margin-top:1rem}}.contact-email{margin-top:2rem}.contact-email>span,.contact-email small{color:#d9e1e8;font-size:.94rem;display:block}.contact-email a{color:#e4b464;text-underline-offset:5px;overflow-wrap:anywhere;margin:.3rem 0;font-size:1.25rem;display:inline-block}.contact-inner>div:first-child>.callback-copy{margin-top:1.4rem;font-size:1rem}.enquiry-form h3{margin:0 0 1rem}.enquiry-form .form-preview{background:#233f5d;border-left:3px solid #e4b464;margin:0 0 1.4rem;padding:.7rem .85rem;font-size:.94rem}.form-fields{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.enquiry-form label{color:#fff;font-size:1rem;font-weight:600;display:block}.enquiry-form label span{color:#cbd6e0;font-size:.875rem;font-weight:400}.enquiry-form input:not([type=checkbox]),.enquiry-form textarea{width:100%;font:400 1rem/1.5 var(--sans);color:var(--navy);background:#fffefa;border:1px solid #aab9c7;border-radius:3px;margin:.4rem 0 0;padding:.7rem .8rem;display:block}.enquiry-form textarea{resize:vertical;min-height:130px}.enquiry-form .form-check{align-items:center;gap:.65rem;margin:1.2rem 0;font-weight:400;display:flex}.form-check input{width:19px;height:19px;accent-color:var(--gold)}#callback-time-field{margin-bottom:1rem}.enquiry-form .button{border:0;margin-top:1.3rem}.enquiry-form .button:disabled{opacity:.55;cursor:not-allowed;transform:none}@media (width<=760px){.contact-inner{grid-template-columns:1fr;gap:2.5rem}}@media (width<=520px){.form-fields{grid-template-columns:1fr}.enquiry-form{padding:1.5rem}}.contact-disclosure{min-width:0}.contact-disclosure>summary{cursor:pointer;border:0;list-style:none}.contact-disclosure>summary::-webkit-details-marker{display:none}.contact-disclosure[open]>summary{margin-bottom:1.5rem}.contact-disclosure .enquiry-form{margin:0}.contact{padding:60px 0}.contact-inner{grid-template-columns:1.35fr 1fr;align-items:center;gap:2rem 8%}.contact-inner>div:first-child>p:not(.eyebrow){max-width:660px;margin-top:1.25rem}.contact h2{font-size:clamp(2.4rem,3.5vw,3.8rem)}.contact .eyebrow{margin-bottom:1rem}.contact-actions .contact-email{margin-top:0}.contact-actions .callback-copy{color:#d9e1e8;margin:1rem 0 1.25rem;font-size:1rem;line-height:1.65}.contact-open{cursor:pointer;border:0}.contact-inner>.enquiry-form{grid-column:1/-1;width:100%;max-width:850px;margin:0 auto}.enquiry-form[hidden]{display:none}@media (width<=760px){.contact{padding:45px 0}.contact-inner{grid-template-columns:1fr;gap:1.5rem}}.values-block{margin-top:1.8rem}.values-block h3{font:400 1.45rem/1.3 var(--serif);margin:0 0 1.2rem}.values{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1.7rem;margin-top:0;display:grid}.value-item{min-width:0}.values .value-item span{background:var(--value-tint);border:1px solid var(--value-colour);color:#18243a;padding:.35rem .85rem;font-size:.875rem;display:inline-block}.value-item p{color:#4b5a67;margin:.55rem 0 0;font-size:1rem;line-height:1.6}.value-approachable{--value-colour:#d87a72;--value-tint:#f7e4e3}.value-practical{--value-colour:#b8862f;--value-tint:#f1e7d5}.value-collaborative{--value-colour:#2b5d66;--value-tint:#d5dfe0}.value-innovative{--value-colour:#18243a;--value-tint:#d1d3d8}@media (width<=520px){.values{grid-template-columns:1fr;gap:1.1rem}}.form-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-turnstile{min-height:65px;margin-top:1.2rem}.form-status{margin:1rem 0 0;font-size:1rem}.form-status:empty{display:none}.form-status-sent{color:#e4b464}.form-status-error{color:#f3b8b1}
