@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#18221f;--orange:#ff652e;--paper:#fafbf9;--line:#dce0dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}header{max-width:1440px;margin:auto;min-height:106px;padding:24px 6%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-family:'Manrope',sans-serif;font-weight:800;font-size:43px;letter-spacing:-3px;line-height:.9;position:relative}.brand span{display:block;font-size:14px;letter-spacing:2px;font-weight:600;margin-top:8px}.brand i{font-size:12px;position:absolute;top:0;right:-16px;font-style:normal;letter-spacing:0}nav{display:flex;gap:35px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:#c84112}.button{background:var(--ink);color:white;padding:17px 25px;display:inline-flex;gap:38px;align-items:center;font-size:14px;font-weight:600;border-radius:5px;transition:background .2s,transform .2s}.button:hover{background:#354a40;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.button.small{padding:13px 19px;gap:26px}.hero{max-width:1440px;margin:auto;padding:48px 6% 65px;display:grid;grid-template-columns:1.08fr 1fr;gap:7%;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 24px}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;line-height:1.08;margin:0;letter-spacing:-2px}h1{font-size:clamp(56px,6.2vw,89px);font-weight:750}em{font-family:Georgia,serif;font-weight:400;color:var(--orange);letter-spacing:-3px}h1 em{white-space:nowrap}.intro{max-width:440px;font-size:17px;line-height:1.7;color:#59615d;margin:28px 0}.hero-note{display:flex;gap:23px;font-size:12px;font-weight:700;letter-spacing:1.2px;margin-top:40px}.hero-visual{min-width:0}.image-wrap{height:550px;border-radius:140px 8px 8px 8px;background:var(--orange);overflow:hidden;position:relative}.image-wrap img{width:100%;height:100%;object-fit:cover}.visual-type{padding:100px 38px;font-size:50px;line-height:1.05;font-weight:700;letter-spacing:-2px}.visual-type em{color:#fff}.image-caption{display:flex;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:1.5px;padding-top:17px}.service-strip{display:flex;justify-content:center;align-items:center;gap:35px;background:var(--ink);color:white;padding:24px;font-size:14px;font-weight:500;flex-wrap:wrap}.service-strip b{color:var(--orange);font-size:25px}.section{padding:100px max(6%,calc((100% - 1268px)/2))}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:48px}h2{font-size:clamp(38px,4vw,56px);font-weight:650}.section-heading>p{max-width:330px;color:#616962;margin:0 0 4px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.services article{border:1px solid var(--line);padding:30px 28px 24px;border-radius:8px;position:relative;display:flex;flex-direction:column;min-height:345px;background:white}.service-number{font-size:12px;color:#717971;letter-spacing:1px}.service-icon{position:absolute;right:28px;top:18px;font-size:37px;color:var(--orange)}h3{font-size:23px;line-height:1.25;letter-spacing:-.7px}.services h3{margin-top:32px}.services p{font-size:16px;color:#616962;margin:18px 0 25px}.tags{font-size:12px;letter-spacing:1px;font-weight:700;border-top:1px solid var(--line);padding-top:18px;margin-top:auto}.services article.orange{background:var(--orange);border-color:var(--orange)}.orange .service-icon,.orange p,.orange .service-number{color:#18221f}.orange .tags{border-color:#cf4d20}.about{background:#edf0eb;display:grid;grid-template-columns:1fr 1fr;gap:10%}.about h2{line-height:1.15}.about-copy p{color:#616962}.about-copy .large{font-size:24px;line-height:1.5;color:var(--ink);margin-top:0}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid #9ba59a;padding:18px 0 14px;margin-top:18px;font-size:14px;font-weight:600}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.steps article{border-top:1px solid #9ca79e;padding-top:22px}.steps span{font-size:12px;letter-spacing:1.5px;color:#b83d13;font-weight:700}.steps h3{margin:27px 0 17px}.steps p{color:#616962;font-size:16px}.contact{background:var(--ink);color:#fff;display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.contact h2{font-size:clamp(38px,4.6vw,65px);line-height:1.12}.contact p:not(.eyebrow){color:#c2cbc5;margin-top:28px}.contact-details{padding:36px 0 36px 45px;border-left:1px solid #4b5650}.contact-label{font-size:12px;letter-spacing:1.8px;color:#b9c6bc;display:block;margin-bottom:14px}.contact-details h3{margin-bottom:34px}.contact address{font-style:normal;font-size:17px;line-height:1.9}footer{padding:35px 6%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer .brand{font-size:30px}footer .brand span{font-size:12px}footer>span,footer>a:last-child{font-size:12px;color:#59615d}a:focus-visible{outline:3px solid #e4491e;outline-offset:5px}@media(min-width:1600px){.section{padding-left:calc((100% - 1268px)/2);padding-right:calc((100% - 1268px)/2)}}@media(max-width:950px){header{padding:24px 5%}nav{gap:18px}.hero{gap:5%;padding-left:5%;padding-right:5%}h1{font-size:58px}.image-wrap{height:490px}.hero-note{flex-direction:column;gap:6px}.services{grid-template-columns:repeat(2,1fr)}.section{padding:75px 5%}.service-strip{gap:18px;font-size:12px}.steps{gap:23px}.about{gap:7%}}@media(max-width:650px){header{min-height:90px;flex-wrap:wrap;gap:22px}header .brand{font-size:35px}header .brand span{font-size:12px}nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;font-size:13px}.button.small{font-size:12px}.hero{grid-template-columns:1fr;padding-top:30px;gap:35px}h1{font-size:clamp(49px,12vw,73px)}.intro{font-size:16px}.hero-note{flex-direction:row;font-size:12px;gap:18px;margin-top:30px}.image-wrap{height:400px;border-top-left-radius:100px}.service-strip{gap:10px 18px}.service-strip b{display:none}.service-strip span{font-size:12px}.section{padding:60px 6%}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:22px}.eyebrow{font-size:12px}h2{font-size:38px}.services{grid-template-columns:1fr}.services article{min-height:300px}.tags{font-size:12px}.about,.contact{grid-template-columns:1fr;gap:30px}.about-copy .large{font-size:22px}.steps{grid-template-columns:1fr;gap:24px}.steps h3{margin-top:18px}.contact-details{border-left:0;border-top:1px solid #4b5650;padding:30px 0 0}footer{flex-wrap:wrap}footer>span{order:3;width:100%;font-size:12px}em{letter-spacing:-2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.email{display:block;color:#ff936c;font-size:clamp(17px,2vw,25px);margin-bottom:35px;overflow-wrap:anywhere}.email:hover{text-decoration:underline}

/* Editorial service images, retaining the existing page palette and content. */
.services{gap:28px 22px}
.services article.visual-service{padding:7px;overflow:hidden;border-radius:24px;background:#fff;border:1px solid #dce0dc;min-height:0;box-shadow:0 7px 24px #18221f08}
.service-art{position:relative;isolation:isolate;overflow:hidden;border-radius:18px;background:#18221f;aspect-ratio:3/4}
.service-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,12,10,.88) 0%,rgba(5,12,10,.6) 25%,rgba(5,12,10,.05) 62%,rgba(5,12,10,.1) 100%);z-index:1;pointer-events:none}
.service-art img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s ease}
.service-title{position:absolute;inset:25px 22px auto;z-index:2;color:white}
.services .service-number{font-size:12px;letter-spacing:1.5px;color:#fff;opacity:.85}
.services .service-title h3{font-size:clamp(24px,2.1vw,30px);line-height:1.17;letter-spacing:-.8px;margin-top:16px;color:#fff;text-wrap:balance}
.service-copy{padding:4px 19px 17px;display:flex;flex-direction:column;flex:1}
.services .service-copy p{font-size:16px;margin:18px 0 22px;color:#59615d}
.services .tags{font-size:12px;line-height:1.65;letter-spacing:.6px;padding-top:15px}
@media(hover:hover){.visual-service:hover .service-art img{transform:scale(1.045)}}
@media(max-width:950px){.services .service-title h3{font-size:29px}}
@media(max-width:650px){.services{gap:25px}.service-art{aspect-ratio:4/5}.service-title{inset:25px 23px auto}.services .service-title h3{font-size:30px}.service-copy{padding:5px 19px 20px}}
@media(prefers-reduced-motion:reduce){.service-art img{transition:none}.visual-service:hover .service-art img{transform:none}}
