@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--orange:#ff6500;--ink:#111417;--paper:#f0f4f5;--muted:#596166;--line:#ccd2d4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bd4300;outline-offset:5px}.skip{position:absolute;top:-80px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}header{padding:28px 4%;display:flex;justify-content:space-between;align-items:center}.brand{display:inline-flex;align-items:center;gap:9px;font-size:34px;letter-spacing:-2px;font-weight:700}.brand .light{font-weight:400}nav{display:flex;align-items:center;gap:35px;font-size:14px}.nav-cta{background:var(--ink);color:white;border-radius:40px;padding:17px 23px;display:flex;gap:35px}.hero{padding:42px 4% 0}.hero-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;margin-bottom:36px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:500}h1{font-size:clamp(64px,9.9vw,160px);letter-spacing:-.065em;line-height:1.06}.orange{color:var(--orange)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;padding:37px 0 43px}.hero-bottom p{font-size:20px;line-height:1.5}.hero-note{font-size:12px;letter-spacing:1px;line-height:1.7}.round-link{border:1px solid var(--line);width:52px;height:52px;display:grid;place-items:center;border-radius:50%;font-size:24px;margin-left:auto;margin-right:25%}.art-panel{height:520px;position:relative;overflow:hidden;background:#e3e9eb;border-radius:5px}.art-panel>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.art-caption{position:absolute;left:30px;right:30px;bottom:24px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px}.section{padding:110px 4%}.eyebrow{font-size:12px;font-weight:500;letter-spacing:1.3px;margin-bottom:28px}.intro{display:grid;grid-template-columns:1fr 2fr;gap:35px;border-bottom:1px solid var(--line)}h2{font-size:clamp(36px,4.2vw,68px);line-height:1.13;letter-spacing:-.045em}.intro p{max-width:650px;line-height:1.7;margin-top:30px;font-size:20px}.intro p.muted{margin-top:18px}.muted{color:var(--muted)}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:58px}.section-heading>p{line-height:1.6;color:var(--muted)}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;padding:30px 0;gap:30px;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-no{font-size:14px;color:var(--muted);width:7%}summary h3{font-size:clamp(26px,3.5vw,50px);letter-spacing:-.04em}.expand{margin-left:auto;width:26px;height:26px;position:relative}.expand:before,.expand:after{content:'';position:absolute;background:var(--ink);top:12px;width:22px;height:2px}.expand:after{transform:rotate(90deg)}details[open] .expand:after{transform:rotate(0)}details[open] summary h3{color:#b94700}.service-body{margin-left:calc(7% + 30px);padding:0 0 34px;display:flex;justify-content:space-between;gap:50px}.service-body p{max-width:530px;line-height:1.7;color:var(--muted)}.tags{display:flex;gap:7px;align-items:flex-start;flex-wrap:wrap;max-width:360px}.tags span{border:1px solid var(--line);border-radius:50px;padding:8px 13px;font-size:12px}.approach{background:var(--ink);color:var(--paper);padding:100px 4%}.approach .section-heading>p{color:#adb4b8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.steps article{border-top:1px solid #44494d;padding-top:25px}.steps article>span{color:#ff8b3e;font-size:12px;letter-spacing:1px}.steps h3{font-size:28px;margin:30px 0 18px;letter-spacing:-1px}.steps p{color:#adb4b8;line-height:1.7;max-width:340px}.principle{display:flex;align-items:center;gap:25px;border-top:1px solid #44494d;margin-top:72px;padding-top:38px;font-size:24px;line-height:1.4;letter-spacing:-.5px}.principle span{color:#adb4b8}.contact{padding-top:112px;padding-bottom:95px}.contact h2{font-size:clamp(46px,7.5vw,115px)}.contact h2>span{color:#b94700}.contact-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:46px}.contact p{line-height:1.7;color:var(--muted)}.primary{border:0;border-radius:40px;background:var(--orange);color:var(--ink);padding:19px 25px;font-weight:600;display:inline-flex;align-items:center;gap:45px;min-height:58px}.primary:hover{background:#ff7c26}.nav-cta:hover{background:#353b40}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:35px 4%;font-size:14px}footer>span{color:var(--muted)}dialog{border:0;border-radius:14px;padding:42px;background:var(--paper);color:var(--ink);width:min(570px,92vw);max-height:90vh}dialog::backdrop{background:#111417b8;backdrop-filter:blur(5px)}dialog h2{font-size:40px}dialog>p{line-height:1.6;margin:20px 0;color:var(--muted)}.close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:30px}form label{display:block;margin:20px 0;font-size:14px}input,textarea{display:block;width:100%;padding:14px;margin-top:8px;border:1px solid #a4adb1;border-radius:8px;background:white;color:var(--ink)}textarea{resize:vertical}.form-note{font-size:13px;line-height:1.5;margin:15px 0 0;color:var(--muted)}@media(min-width:1700px){body{max-width:1800px;margin:auto}}@media(max-width:760px){header{padding:22px 5%}.brand{font-size:28px}.brand img{width:36px;height:36px}nav{gap:15px}nav>a:not(.nav-cta){display:none}.nav-cta{padding:13px 18px;gap:20px}.hero{padding:35px 5% 0}.hero-top{margin-bottom:28px}.hero-top span:last-child{display:none}h1{font-size:clamp(51px,10.5vw,80px)}.hero-bottom{padding:26px 0 30px}.hero-bottom p{font-size:16px}.hero-note{display:none}.round-link{margin-right:0;margin-left:15px;flex-shrink:0}.art-panel{height:360px}.art-panel>img{object-fit:cover}.art-caption{left:17px;right:17px;font-size:10px}.section{padding:65px 5%}.intro{grid-template-columns:1fr;gap:0}.intro p{font-size:17px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:23px}.service-body{display:block;margin-left:0}.service-body .tags{margin-top:18px}summary{gap:18px;padding:23px 0}.service-no{width:20px}.approach{padding:65px 5%}.steps{grid-template-columns:1fr;gap:32px}.steps h3{margin-top:20px}.steps p{max-width:none}.principle{margin-top:40px;font-size:20px;align-items:flex-start;gap:14px}.principle img{width:40px;height:40px}.contact-bottom{display:block}.contact-bottom .primary{margin-top:25px}footer{padding:25px 5%;flex-wrap:wrap;gap:25px}footer .brand{width:100%}footer>span{font-size:12px}dialog{padding:34px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.contact-actions{display:flex;align-items:flex-start;flex-direction:column;gap:15px}.email-link{font-size:16px;text-decoration:underline;text-underline-offset:5px}.brief-secondary{border:0;background:none;color:var(--muted);padding:8px 0;text-align:left;font-size:14px}
/* Statamic CMS Bard typography helpers */
h1 p, h2 p { margin: 0; font: inherit; display: inline; }
h1 strong, .orange { color: var(--orange); font-weight: inherit; }
h2 strong, h2 em, h2 span { color: #b94700; font-style: normal; font-weight: inherit; }
.hero-subtitle p { font-size: 20px; line-height: 1.5; margin: 0; }
.intro-body p { max-width: 650px; line-height: 1.7; margin-top: 30px; font-size: 20px; }
.intro-body p:nth-child(n+2) { margin-top: 18px; color: var(--muted); }
.service-text p { max-width: 530px; line-height: 1.7; color: var(--muted); margin: 0; }
.step-desc p { color: #adb4b8; line-height: 1.7; max-width: 340px; margin: 0; }
.principle-content p { margin: 0; font: inherit; }
.principle-content span, .principle-content em, .principle-content i { color: #adb4b8; font-style: normal; }
.form-note.success { color: #057a55; font-weight: 500; }
.form-note.error { color: #e02424; font-weight: 500; }
