:root{--purple:#491c61;--ink:#29272c;--gray:#68646e;--line:#dedbe1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #a074bf;outline-offset:6px}header{max-width:1440px;margin:auto;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:24px;letter-spacing:5px}.wordmark span{display:block;font-family:Arial,sans-serif;font-size:12px;letter-spacing:1.5px;margin-top:3px}nav{display:flex;gap:32px;font-size:14px}nav a:hover{color:var(--purple)}main{max-width:1440px;margin:auto}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:660px}.intro{padding:65px 9% 65px 11%}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:bold;color:var(--purple);margin:0 0 26px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1}h1{font-size:clamp(42px,5vw,74px);letter-spacing:-2px;margin:0 0 28px}h1 em{color:var(--purple);font-weight:400}.lead{max-width:400px;color:var(--gray);margin-bottom:32px}.button{display:inline-block;background:var(--purple);color:#fff;padding:13px 24px;font-size:14px}.button:hover{background:#632780}.brandpanel{background:#f4f3f5;display:flex;flex-direction:column;justify-content:center;padding:55px 40px 20px}.brandpanel img{width:100%;height:auto;mix-blend-mode:multiply}.brandcaption{margin-top:auto;border-top:1px solid #cbc5cf;padding-top:18px;display:flex;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:1px;color:var(--gray)}.section{padding:80px 6%}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line)}h2{font-size:clamp(30px,3.4vw,46px);margin:0 0 25px}.large{font-size:22px;line-height:1.5;margin-top:0}.about p:not(.large):not(.eyebrow){color:var(--gray)}.services{background:#f4f3f5;padding-top:55px;padding-bottom:55px}.servicegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.servicegrid article{border-top:1px solid #bcb3c2;padding-top:20px}.servicegrid span{font-size:12px;color:var(--purple)}h3{font-size:27px}.servicegrid p{color:var(--gray);max-width:300px}.sectiontitle{display:flex;justify-content:space-between;align-items:end;gap:40px}.sectiontitle>p{color:var(--gray);max-width:240px}.portfolio-note{margin-top:25px;border:1px solid var(--line);border-left:5px solid var(--purple);padding:45px;background:linear-gradient(120deg,#f4f2f6,#fff)}.edition{font-size:12px;letter-spacing:2px;color:var(--purple)}.portfolio-note h3{font-size:34px;margin:22px 0}.portfolio-note p{max-width:620px;color:var(--gray)}.portfolio-note a{display:inline-block;color:var(--purple);border-bottom:1px solid;margin-top:12px}.contact{background:var(--purple);color:white;display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.contact .eyebrow{color:#d5badf}.contact p{color:#e0d0e8}.person{font-size:24px;margin:0 0 28px}.person span{display:block;font-size:14px;margin-top:6px}.contactdetails>a{display:block;width:fit-content;margin:12px 0;overflow-wrap:anywhere}.contactdetails .light{background:#fff;color:var(--purple);margin-top:28px}footer{max-width:1440px;margin:auto;padding:30px 6%;display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.5px}footer span:first-child{letter-spacing:3px}@media(max-width:760px){header{align-items:start;padding:22px 6%;flex-direction:column;gap:18px}nav{gap:24px}.hero,.about,.contact{grid-template-columns:1fr}.hero{min-height:0}.intro{padding:45px 6%}.brandpanel{padding:30px 6% 20px}.brandpanel img{max-width:460px;align-self:center}.brandcaption{margin-top:20px}.section{padding:50px 6%}.about,.contact{gap:25px}.servicegrid{grid-template-columns:1fr;gap:20px}.servicegrid p{max-width:none}.sectiontitle{display:block}.sectiontitle>p{max-width:none}.portfolio-note{padding:28px}.portfolio-note h3{font-size:28px}footer{flex-wrap:wrap}.wordmark{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(min-width:761px) and (max-width:1050px){.servicegrid{grid-template-columns:repeat(2,1fr)}}
