@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--ink:#222325;--silver:#b3b3b3;--paper:#f5f4f2;--mist:#e8e7e5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}.topline{background:#242426;color:#dedede;font-size:10px;letter-spacing:2px;padding:10px 6%;display:flex;justify-content:space-between}.topline span{color:#a9a9a9}header{height:94px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:#f8f8f7;border-bottom:1px solid #ddd}.brand{display:flex;align-items:center;gap:10px}.monogram{font-family:Georgia,serif;font-size:42px;letter-spacing:-7px;padding-right:8px}.brandtext{font-size:10px;line-height:1.15;letter-spacing:1.7px;font-weight:800}.brandtext small{display:block;font-size:8px;color:#888;margin-top:5px;letter-spacing:2px}nav{display:flex;gap:32px}nav a,.navcta{font-size:11px;font-weight:800;letter-spacing:1.5px}.navcta{border-bottom:1px solid #222;padding-bottom:7px}.navcta span{margin-left:16px}.hero{padding:80px 6% 90px;display:grid;grid-template-columns:1.15fr .85fr;gap:5%;align-items:center;min-height:620px;background:linear-gradient(110deg,#f7f6f4 20%,#e7e6e4)}.kicker{font-size:11px;font-weight:800;letter-spacing:2.5px;display:flex;align-items:center;gap:14px}.line{display:inline-block;width:30px;height:1px;background:#222}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:-3px}h1{font-size:clamp(48px,5.5vw,92px);line-height:1.07;margin:32px 0}h1 em,h2 em{font-style:normal;color:#8b8b8b}.hero p{font-size:16px;line-height:1.9;color:#656565;max-width:550px}.buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:19px 22px;font-size:11px;font-weight:800;letter-spacing:1.2px}.button.dark{background:#242426;color:white}.button.outline{border:1px solid #888}.hero-art{padding:20px;min-height:390px;background:linear-gradient(145deg,#454547,#1b1b1d);box-shadow:18px 18px 0 #ccc}.art-frame{height:100%;min-height:350px;border:1px solid #777;display:flex;flex-direction:column;justify-content:space-between;color:white;padding:24px}.art-top,.art-bottom{font-size:10px;letter-spacing:2px}.art-mark{font:italic 145px Georgia,serif;text-align:center;letter-spacing:-30px;padding-right:30px;color:#f0f0f0;text-shadow:4px 4px #777}.art-bottom{display:flex;justify-content:space-between}.ticker{display:flex;justify-content:space-around;gap:18px;flex-wrap:wrap;background:#d6d5d3;padding:20px 6%;font-size:11px;font-weight:800;letter-spacing:2px}.diamond{color:#888}.services,.contact{padding:110px 6%}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.sectionhead h2,.contact h2{font-size:clamp(42px,4.4vw,68px);line-height:1.13;margin:23px 0 0}.sectionhead>p{max-width:310px;color:#777;line-height:1.8}.servicegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.servicegrid article{background:#fff;border:1px solid #e1e1e1;padding:32px;min-height:350px;display:flex;flex-direction:column}.number,.smallcap{font-size:10px;letter-spacing:2px;font-weight:800;color:#888}.serviceicon{font-size:38px;margin:40px 0 25px}.servicegrid h3{font-size:24px;letter-spacing:-1px}.servicegrid p{font-size:14px;line-height:1.8;color:#777}.servicegrid a{font-size:10px;font-weight:800;letter-spacing:1px;margin-top:auto;border-top:1px solid #ddd;padding-top:22px}.approach{background:linear-gradient(130deg,#262628,#454547);color:#fff;padding:100px 6% 55px}.kicker.light{color:#bbb}.approachgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.approach h2{font-size:clamp(50px,6vw,95px);line-height:1.03;margin:45px 0}.approach h2 em{color:#aaa}.approach p{color:#d3d3d3;line-height:2;font-size:17px}.rule{height:1px;background:#888;margin:45px 0 20px}.smallcap{color:#ccc}.chevrons{text-align:right;font-size:30px;color:#bbb;letter-spacing:5px}.contact{background:#e8e7e5}.contact p{color:#666;line-height:1.8;max-width:550px;margin:28px 0}.contactnote{font-size:12px;color:#777;margin-top:28px}footer{padding:34px 6%;background:#202022;color:#aaa;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:10px;letter-spacing:1px}.footbrand{font:italic 30px Georgia,serif;color:white}.footbrand span{font:700 9px DM Sans,Arial,sans-serif;letter-spacing:2px;margin-left:12px}@media(max-width:800px){nav{display:none}.hero,.approachgrid{grid-template-columns:1fr}.hero{padding-top:65px}.hero-art{min-height:260px}.art-frame{min-height:260px}.art-mark{font-size:95px}.servicegrid{grid-template-columns:1fr}.sectionhead{display:block}.topline span{display:none}footer{flex-wrap:wrap}.services,.contact{padding:75px 6%}h1,h2{letter-spacing:-2px}}
.brand-icon{width:56px;height:40px;object-fit:contain}.brandtext{font-size:13px;letter-spacing:2px}.brandtext small{font-size:8px}.art-mark img{display:block;width:min(75%,280px);height:170px;object-fit:contain;margin:auto;filter:invert(1)}.footbrand{display:flex;align-items:center;gap:12px}.footbrand img{width:53px;height:35px;filter:invert(1)}.footbrand span{margin-left:0}

/* Four service cards, responsive */
.servicegrid{grid-template-columns:repeat(4,minmax(0,1fr))}
.servicegrid article{padding:26px}
.servicegrid h3{font-size:22px}
@media(max-width:1050px){.servicegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.servicegrid{grid-template-columns:1fr}}

/* Enquiry form: email handoff until secure CRM backend is ready */
.enquiry{max-width:960px;margin-top:36px;background:#f8f8f7;border:1px solid #d3d1ce;padding:28px}.enquiry-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:28px}.enquiry-tabs button{background:#e8e7e5;border:1px solid #d4d3d0;color:#333;padding:15px 8px;font:800 10px DM Sans,Arial,sans-serif;letter-spacing:1px;cursor:pointer}.enquiry-tabs button.active{background:#242426;color:#fff}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.formgrid label{display:flex;flex-direction:column;gap:9px;font-size:10px;letter-spacing:1.4px;font-weight:800}.formgrid .full{grid-column:1/-1}.formgrid input,.formgrid textarea{width:100%;border:1px solid #c7c6c3;background:#fff;padding:14px;font:14px DM Sans,Arial,sans-serif;color:#222;letter-spacing:0;min-width:0}.formgrid textarea{resize:vertical}.consent{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.6;margin:23px 0;color:#555}.consent input{margin-top:3px}.enquiry button.button{border:0;cursor:pointer}.formstatus{font-size:12px!important;max-width:none!important;margin:16px 0 0!important}.contactnote a{text-decoration:underline}@media(max-width:700px){.enquiry-tabs,.formgrid{grid-template-columns:1fr 1fr}.enquiry{padding:16px}}@media(max-width:480px){.enquiry-tabs,.formgrid{grid-template-columns:1fr}}

/* Monochrome editorial photography for the four service cards */
.servicegrid .servicephoto{margin:22px -32px 25px;aspect-ratio:1.55;overflow:hidden;background:#d7d7d7}
.servicegrid .servicephoto img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(100%) contrast(1.07)}
@media(max-width:600px){.servicegrid .servicephoto{margin-left:-24px;margin-right:-24px}}
