:root{--ink:#11191d;--muted:#5b666b;--accent:#ff6f69;--paper:#f8f8f5;--line:#dfe2df;--about-blue:#25415a;--divider:#052224}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}
a{color:inherit;text-decoration:none}
.page{min-height:100vh}
.section-divider{height:clamp(64px,7vw,104px);background:var(--divider)}
.nav{height:84px;padding:0 clamp(28px,5vw,82px);display:flex;align-items:center;justify-content:space-between;background:rgba(248,248,245,.97);position:relative;z-index:20;border-bottom:1px solid rgba(17,25,29,.06)}
.brand{display:inline-flex;align-items:center;color:var(--ink)}
.brand-mark{display:none}
.brand-name{position:relative;display:grid;place-items:center;min-width:178px;padding:7px 17px 12px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;border-left:1.5px solid currentColor;font:700 27px/.95 "Bodoni 72","Didot","Bodoni MT","Times New Roman",serif;letter-spacing:-.035em}
.brand-name:before,.brand-name:after{content:"";position:absolute;bottom:0;width:47px;height:1.5px;background:currentColor}
.brand-name:before{left:0}.brand-name:after{right:0}
.brand-name small{position:absolute;bottom:-3px;left:50%;transform:translateX(-50%);display:block;padding:0 8px;background:var(--paper);color:currentColor;font:600 7.5px/1 Manrope,sans-serif;letter-spacing:.38em;white-space:nowrap}
nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:600}
nav a{position:relative;padding:32px 0}
nav a:hover,nav .active{color:var(--accent)}
nav .active:after{content:"";position:absolute;left:0;right:0;bottom:22px;height:2px;background:var(--accent)}
.nav-button,.primary{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border-radius:9px;padding:13px 19px;font-size:13px;font-weight:700;box-shadow:0 8px 24px rgba(255,111,105,.22)}
.menu{display:none;border:0;background:none;font:600 14px "DM Sans";color:var(--ink)}
.hero{position:relative;min-height:calc(100vh - 84px);overflow:hidden;background:var(--paper);isolation:isolate}
.portrait{position:absolute;inset:0;overflow:hidden;z-index:-2}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:72% 43%;display:block}
.blend{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--paper) 0%,rgba(248,248,245,.99) 34%,rgba(248,248,245,.9) 47%,rgba(248,248,245,.42) 65%,rgba(248,248,245,.08) 82%)}
.copy{position:relative;z-index:3;width:min(750px,59vw);padding:clamp(72px,9vh,108px) 0 58px clamp(28px,7vw,118px)}
.kicker{margin:0 0 22px;color:var(--accent);font:700 14px Manrope;letter-spacing:.15em;line-height:1.4}
h1{max-width:650px;margin:0;font:800 clamp(3.45rem,5.55vw,6.15rem)/.98 Manrope;letter-spacing:-.058em}
.lead{max-width:575px;margin:26px 0 0;color:var(--muted);font-size:17px;line-height:1.72}
.actions{display:flex;gap:13px;margin-top:31px}
.primary,.secondary{padding:15px 24px;font-size:14px;font-weight:700;border-radius:9px}
.secondary{background:#fff;border:1px solid var(--line)}
.identity{display:grid;grid-template-columns:35px auto;gap:14px;align-items:center;margin-top:43px;max-width:420px}
.identity .line{height:2px;background:var(--accent)}
.identity div{display:flex;flex-direction:column;white-space:nowrap}
.identity strong{font:700 14px Manrope}
.identity small{color:#707b80;font-size:11px}
.proof{padding:29px clamp(28px,6vw,96px);display:grid;grid-template-columns:repeat(4,1fr);gap:32px;background:#fff;border-bottom:1px solid var(--line)}
.proof div{display:flex;flex-direction:column;padding-left:18px;border-left:2px solid var(--accent)}
.proof strong{font:700 17px Manrope;letter-spacing:-.02em}
.proof span{margin-top:3px;color:#5f6a6f;font-size:14px;font-weight:500;line-height:1.35}
.services{padding:clamp(90px,10vw,155px) clamp(28px,6vw,96px);background:#eef3f5}
.services-intro{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(470px,1.25fr);column-gap:8vw;align-items:start;margin-bottom:72px}
.section-label{grid-column:1;color:var(--accent);font:700 16px/1.35 Manrope;letter-spacing:.13em;margin:9px 0 0}
.services-intro h2{grid-column:2;font:700 clamp(2.8rem,4.8vw,5.35rem)/1.05 Manrope;letter-spacing:-.055em;margin:0}
.services-intro>p:last-child{grid-column:2;color:var(--muted);max-width:680px;margin:28px 0 0;font-size:18px;line-height:1.7}
.service-list{border-top:1px solid #bdc4c2}
.service-list article{display:grid;grid-template-columns:90px minmax(0,1fr) 42px;gap:24px;padding:35px 8px 36px;border-bottom:1px solid var(--line);align-items:start;transition:background .2s ease,padding .2s ease}
.service-list article:hover{background:#fafaf8;padding-left:22px;padding-right:22px}
.service-no{color:var(--accent);font:700 12px Manrope;padding-top:7px}
.service-copy{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(300px,1fr);gap:25px 6vw;align-items:start}
.service-copy h3{font:700 clamp(1.6rem,2.4vw,2.6rem)/1.15 Manrope;letter-spacing:-.04em}
.service-copy>p{color:var(--muted);font-size:16px;line-height:1.72;margin:3px 0 0}
.service-scope{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.service-scope span{padding:7px 12px;border:1px solid var(--line);border-radius:30px;color:#697478;font-size:12px}
.service-arrow{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--accent);font-size:17px}
.service-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.service-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 55px rgba(25,45,54,.08)}
.service-card figure{position:relative;margin:0;height:440px;overflow:hidden;background:#dfe5e6}
.service-card figure img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.service-card:first-child figure img{object-position:center 44%}
.service-card:nth-child(2) figure img{object-position:center 38%}
.service-card figcaption{position:absolute;left:17px;bottom:16px;padding:9px 12px;border-radius:7px;background:rgba(15,25,29,.72);backdrop-filter:blur(8px);color:#fff;font:700 10px Manrope;letter-spacing:.12em}
.service-card figcaption span{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:7px}
.card-body{padding:30px 32px 34px;display:grid;grid-template-columns:43px 1fr}
.card-body .service-no{grid-row:1/4}
.card-body h3{font:700 clamp(1.65rem,2.25vw,2.5rem)/1.14 Manrope;letter-spacing:-.04em;margin:0}
.card-body>p{grid-column:2;color:var(--muted);font-size:16px;line-height:1.7;margin:17px 0 21px}
.card-body .service-scope{grid-column:2}
.service-card-wide{grid-column:1/-1;display:grid;grid-template-columns:1.4fr .72fr}
.dual-media{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
.service-card-wide figure{height:100%;min-height:520px}
.service-card-wide figure:first-child img{object-position:center 35%}
.service-card-wide figure:last-child img{object-position:center 35%}
.service-card-wide .card-body{align-content:center;padding:45px}
@media(max-width:960px){nav,.nav-button{display:none}.menu{display:block}.nav.open nav{display:flex;position:absolute;top:84px;left:0;right:0;padding:22px 28px;background:var(--paper);flex-direction:column;align-items:flex-start;gap:4px;border-bottom:1px solid var(--line)}.nav.open nav a{padding:9px 0}.nav.open nav .active:after{bottom:4px}.hero{min-height:900px}.portrait{inset:40% 0 0;height:auto}.portrait img{object-position:50% 42%}.blend{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 39%,rgba(248,248,245,.97) 47%,rgba(248,248,245,.58) 66%,rgba(248,248,245,.08) 88%)}.copy{width:auto;max-width:720px;padding:58px clamp(28px,8vw,75px) 75px}}
@media(max-width:960px){.proof{grid-template-columns:1fr 1fr}.services-intro{grid-template-columns:1fr}.section-label,.services-intro h2,.services-intro>p:last-child{grid-column:1}.section-label{margin-bottom:22px}.service-copy{grid-template-columns:1fr}.service-scope{grid-column:1}}
@media(max-width:960px){.service-cards{grid-template-columns:1fr}.service-card-wide{grid-column:1;display:block}.dual-media{min-height:0}.service-card-wide figure{min-height:440px}.service-card-wide .card-body{padding:32px}}
@media(max-width:600px){.section-label{font-size:14px;letter-spacing:.11em}.section-divider{height:68px}.nav{height:72px;padding:0 20px}.brand-name{min-width:146px;padding:6px 12px 11px;font-size:23px}.brand-name:before,.brand-name:after{width:37px}.brand-name small{font-size:6.5px;letter-spacing:.34em}.hero{min-height:940px}.portrait{inset:48% 0 0;height:auto}.portrait img{object-position:50% 42%}.blend{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 46%,rgba(248,248,245,.96) 54%,rgba(248,248,245,.5) 72%,rgba(248,248,245,.06) 94%)}.copy{padding:42px 22px 70px}.kicker{font-size:13px;line-height:1.45;margin-bottom:17px}h1{font-size:clamp(2.65rem,12vw,3.25rem)}.lead{font-size:16px;line-height:1.58}.actions{align-items:flex-start;flex-direction:column}.identity{grid-template-columns:28px 1fr;margin-top:30px}.identity strong{font-size:15px}.identity small{font-size:12px}.proof{grid-template-columns:1fr 1fr;padding:26px 22px;gap:22px 12px}.proof strong{font-size:15px}.proof span{font-size:13px}.services{padding:78px 18px}.services-intro{margin-bottom:48px}.services-intro h2{font-size:2.65rem}.services-intro>p:last-child{font-size:16px}.service-card figure{height:350px}.card-body{padding:25px 22px 28px;grid-template-columns:32px 1fr}.card-body h3{font-size:1.75rem}.dual-media{grid-template-columns:1fr}.service-card-wide figure{height:350px;min-height:350px}.service-card-wide .card-body{padding:25px 22px 28px}.service-scope{gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
