:root{--ink:#102d2a;--mint:#00a99d;--paper:#f7faf9;--muted:#526a67;--line:rgba(16,45,42,.2)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:35px}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,summary,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,summary:focus-visible{outline:3px solid #00857b;outline-offset:7px}
::selection{background:#102d2a;color:var(--mint)}
.wrap{max-width:1600px;margin:auto;padding:0 5%}
.hero{background:var(--mint);position:relative;overflow:hidden}
.nav{height:105px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}
.brand{font-size:29px;font-weight:750;letter-spacing:-1.5px;display:flex;align-items:center;gap:10px}
.mark{display:inline-grid;width:29px;height:29px;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(-8deg)}
.mark i{background:currentColor;border-radius:2px}
.mark i:nth-child(2){border-radius:2px 10px 2px 2px}
.mark i:nth-child(4){border-radius:2px 2px 10px 2px}
.navlinks{display:flex;align-items:center;gap:35px;font-size:14px}
.navlinks a{padding:10px 0}
.navlinks a:hover{text-decoration:underline;text-underline-offset:6px}
.pill{border:1px solid var(--ink);padding:12px 20px!important;border-radius:50px;display:inline-flex;align-items:center;gap:25px}
.eyebrow{text-transform:uppercase;font-size:12px;font-weight:600;letter-spacing:1.6px}
.hero-top{display:flex;justify-content:space-between;padding-top:47px;gap:20px}
.hero-top .eyebrow:last-child{color:#526a67}
.hero h1{font-size:clamp(68px,8.8vw,139px);line-height:.99;letter-spacing:-.075em;font-weight:500;margin:48px 0 37px;max-width:1200px}
.hero h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}
.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:60px;gap:30px}
.intro{margin:0;max-width:370px;font-size:18px;line-height:1.6}
.round-link{display:flex;align-items:center;gap:20px;font-size:14px}
.circle{height:55px;width:55px;border:1px solid var(--ink);border-radius:100%;display:grid;place-items:center;font-size:26px;transition:.2s}
.round-link:hover .circle{background:var(--ink);color:var(--mint);transform:translateY(3px)}
.hero-caption{display:flex;gap:50px;font-size:12px;letter-spacing:1px;text-transform:uppercase;border-top:1px solid var(--line);padding:21px 0}
.hero-caption span:last-child{margin-left:auto}
.services{padding-top:100px;padding-bottom:95px}
.section-head{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:51px}
.section-head .eyebrow{padding-top:12px}
.section-head h2{font-size:clamp(34px,4.1vw,62px);font-weight:400;letter-spacing:-.055em;line-height:1.08;margin:0;max-width:780px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.card{padding:30px;min-width:0;display:flex;flex-direction:column;position:relative}
.card+.card{border-left:1px solid var(--line)}
.card-top{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;letter-spacing:1px}
.service-symbol{height:160px;display:flex;align-items:center;font-size:87px;letter-spacing:-12px;font-family:monospace;font-weight:300}
.service-symbol svg{width:80px;height:80px;stroke:var(--ink);fill:none;stroke-width:1.3}
.card h3{font-weight:500;letter-spacing:-1px;font-size:30px;margin:7px 0 15px}
.card p{font-size:16px;line-height:1.65;color:var(--muted);max-width:320px;margin:0 0 30px}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}
.tags span{font-size:12px;border:1px solid var(--line);padding:7px 9px;border-radius:30px}
.card details{border-top:1px solid var(--line);margin-top:28px;padding-top:19px}
.card summary{font-size:14px;cursor:pointer;display:flex;justify-content:space-between;list-style:none}
.card summary::-webkit-details-marker{display:none}
.card summary:after{content:'+';font-size:20px;line-height:16px}
.card details[open] summary:after{content:'−'}
.card details p{font-size:14px;margin:18px 0 0}
.about{background:var(--ink);color:var(--paper);padding:90px 0}
.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:30px}
.about h2{font-size:clamp(40px,5vw,76px);font-weight:400;line-height:1.07;letter-spacing:-.06em;margin:0 0 30px;max-width:850px}
.about h2 span{color:var(--mint)}
.about p{font-size:18px;line-height:1.7;max-width:580px;color:#b9cfcc;margin:0}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:65px}
.principle{border-top:1px solid #38625d;padding-top:20px;font-size:16px}
.principle span{color:#9cac9f;font-size:12px;display:block;margin-bottom:12px}
.closing{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-top:70px;padding-bottom:65px}
.closing h2{font-size:clamp(38px,5.8vw,86px);font-weight:400;letter-spacing:-.06em;line-height:1.04;margin:18px 0 0}
.closing p{max-width:290px;font-size:16px;line-height:1.6;color:var(--muted)}
footer{border-top:1px solid var(--line);padding:25px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}
footer a:hover{text-decoration:underline}
.footer-brand{color:var(--ink);font-weight:bold;font-size:18px;letter-spacing:-.7px}
.nav a,.round-link{touch-action:manipulation}
@media(min-width:1600px){.hero h1{font-size:139px}
}
@media(max-width:850px){.navlinks{gap:22px}
.section-head,.about-grid{grid-template-columns:1fr;gap:25px}
.card{padding:23px}
.card h3{font-size:25px}
.tags{gap:5px}
.hero h1{font-size:10.7vw}
.hero-caption{gap:22px}
.service-symbol{height:130px}
.services{padding-top:65px;padding-bottom:65px}
.about{padding:65px 0}
}
@media(max-width:600px){.wrap{padding-left:6%;padding-right:6%}
.nav{height:85px}
.brand{font-size:24px}
.mark{width:24px;height:24px}
.navlinks{gap:18px}
.navlinks .pill{display:none}
.navlinks{font-size:13px}
.hero-top{padding-top:32px}
.hero-top .eyebrow:last-child{display:none}
.hero h1{font-size:14vw;line-height:1.06;margin:37px 0 28px;letter-spacing:-.07em}
.hero-bottom{align-items:flex-start;flex-direction:column;gap:28px;padding-bottom:35px}
.intro{font-size:16px;max-width:310px}
.circle{width:43px;height:43px;font-size:21px}
.round-link{gap:12px}
.hero-caption{font-size:10px;gap:18px;letter-spacing:.6px}
.hero-caption span:last-child{display:none}
.cards{grid-template-columns:1fr}
.card+.card{border-left:0;border-top:1px solid var(--line)}
.card{padding:27px}
.service-symbol{height:112px}
.service-symbol svg{width:65px;height:65px}
.card h3{font-size:30px}
.card p{max-width:none;margin-bottom:22px}
.section-head{margin-bottom:32px}
.about h2{font-size:45px}
.about p{font-size:16px}
.principles{gap:14px;margin-top:40px}
.principle{font-size:14px;line-height:1.5}
.closing{align-items:flex-start;flex-direction:column;padding-top:50px;padding-bottom:36px;gap:10px}
.closing h2{font-size:51px}
footer{flex-wrap:wrap;font-size:12px}
footer .footer-brand{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}

