/* EDIT: Site colors and shared layout settings. No external fonts or libraries. */
:root{--ink:#172f36;--muted:#50636a;--cyan:#26cddd;--green:#20dca3;--teal:#087783;--line:#dce6e8;--wash:#f3f8f9;--width:1100px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.7}a{color:var(--teal);text-underline-offset:.25em}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid var(--teal);outline-offset:6px}.wrap{width:min(var(--width),calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-100px;background:white;padding:10px;z-index:10}.skip-link:focus{top:1rem}.site-header{border-top:5px solid var(--cyan);border-bottom:1px solid var(--line)}.header-inner{max-width:1280px;margin:auto;padding:22px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-size:23px;font-weight:700;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.wordmark span{color:var(--teal)}nav{display:flex;gap:30px;font-size:15px}nav a{color:var(--ink);text-decoration:none}nav a:hover{text-decoration:underline}.hero{text-align:center;padding:28px 24px 0;overflow:hidden}.hero-logo{display:block;width:min(950px,145%);max-width:none;height:auto;margin:0 auto 0;position:relative;left:50%;transform:translateX(-50%);margin-left:0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:var(--teal);margin:0 0 14px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(2.2rem,4.9vw,4.1rem);line-height:1.12;letter-spacing:-.045em;font-weight:600;margin-bottom:32px}h2{font-size:clamp(2rem,3.2vw,2.8rem);letter-spacing:-.035em;line-height:1.2;font-weight:600}.hero-rule{width:75px;height:5px;background:linear-gradient(90deg,var(--cyan) 50%,var(--green) 50%);margin:0 auto}.introduction{padding-top:46px;padding-bottom:64px;max-width:900px;text-align:center}.lead{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.6}.service-intro{font-size:16px;color:var(--muted);margin-bottom:15px}.services{padding:0;margin:0;list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 24px}.services li{font-size:16px;padding:0}.services li::before{content:"•";color:var(--teal);margin-right:9px}.experience{padding-top:25px;padding-bottom:85px}.section-heading{margin-bottom:38px}.section-heading h2{margin-bottom:0}.case{display:grid;grid-template-columns:1fr 2fr;gap:65px;border-top:1px solid var(--line);padding:38px 0 40px}.number{display:block;color:var(--teal);font-size:14px;font-weight:700;margin-bottom:12px}.case h3{font-size:27px;line-height:1.25;letter-spacing:-.025em;margin-bottom:9px}.case-title p{color:var(--muted);font-size:15px;line-height:1.5}.case h4{font-size:14px;margin:0 0 6px;color:var(--teal)}.case-copy p{margin-bottom:23px}.case-copy p:last-child{margin-bottom:0}.contact{background:var(--ink);color:white;border-top:5px solid var(--green);padding:58px 0}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;flex-wrap:wrap}.contact .eyebrow{color:var(--green)}.contact h2{margin-bottom:16px}.contact p:last-child{margin-bottom:0;color:#cee0e4}.contact a{color:#fff}.email{font-size:clamp(1.1rem,2.2vw,1.5rem)}.social{display:flex;gap:26px;margin-top:16px;font-size:15px}.social a{color:var(--cyan)}.footer{display:flex;justify-content:space-between;padding-top:24px;padding-bottom:24px;font-size:14px;color:var(--muted)}.footer p{margin-bottom:0}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header-inner{padding:17px 20px}.wordmark{font-size:21px}nav{gap:17px;font-size:14px}.hero{padding-top:26px}.hero-logo{width:170%;margin-bottom:15px}.hero .eyebrow{font-size:10px;letter-spacing:.12em}h1{font-size:clamp(2rem,7.8vw,3.2rem)}.introduction{padding-top:32px;padding-bottom:42px}.case{grid-template-columns:1fr;gap:14px;padding:28px 0}.case-title p{margin-bottom:0}.number{margin-bottom:8px}.case h3{font-size:25px}.experience{padding-bottom:40px}.contact-inner{display:block}.contact-links{margin-top:28px}.contact{padding:40px 0}.services li{font-size:16px}.section-heading{margin-bottom:26px}}
@media(max-width:370px){.header-inner{align-items:flex-start;flex-direction:column;gap:7px}.email{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
