body.lpa-portfolio-page {
  margin:0;
  background:var(--lpa-bg);
  color:var(--lpa-text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body.lpa-portfolio-page *,body.lpa-portfolio-page *::before,body.lpa-portfolio-page *::after{box-sizing:border-box}
body.lpa-portfolio-page img{display:block;max-width:100%}
body.lpa-portfolio-page a{color:inherit;text-decoration:none}
body.lpa-portfolio-page button,body.lpa-portfolio-page input,body.lpa-portfolio-page select,body.lpa-portfolio-page textarea{font:inherit}
.lpa-nav__cta.is-active{background:#fff;color:#0b0c0e!important;border-color:#fff}

.lpa-page-hero{padding:190px 0 100px;border-bottom:1px solid var(--lpa-line);overflow:hidden;position:relative}
.lpa-page-hero::after{content:"";position:absolute;width:620px;height:620px;right:-250px;top:-170px;background:radial-gradient(circle,rgba(255,77,61,.14),transparent 70%);pointer-events:none}
.lpa-page-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:80px;align-items:end}
.lpa-page-hero h1,.lpa-about-hero h1,.lpa-contact-main h1{margin:0;font-weight:600;letter-spacing:-.06em;line-height:.92;font-size:clamp(66px,8vw,124px)}
.lpa-page-hero h1 em,.lpa-about-hero h1 em,.lpa-contact-main h1 em,.lpa-project-feature h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--lpa-accent-soft)}
.lpa-page-hero__lead{margin:0 0 8px;color:var(--lpa-muted);font-size:19px;line-height:1.72;max-width:540px}
.lpa-page-hero__mosaic{width:min(calc(100% - 48px),var(--lpa-max));margin:72px auto 0;display:grid;grid-template-columns:1.25fr .8fr .8fr;gap:14px;height:440px;position:relative;z-index:2}
.lpa-page-hero__mosaic>div{overflow:hidden;border:1px solid rgba(255,255,255,.1);background:var(--lpa-surface)}
.lpa-page-hero__mosaic img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .65s ease}
.lpa-page-hero__mosaic>div:hover img{transform:scale(1.02)}
.lpa-page-hero--simple{padding-bottom:130px}

.lpa-work-toolbar{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:44px}
.lpa-work-toolbar h2{margin:0;font-size:clamp(46px,5vw,78px);letter-spacing:-.05em;line-height:.95}
.lpa-work-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.lpa-work-filters button{border:1px solid var(--lpa-line);background:transparent;color:#a8abb1;padding:9px 13px;border-radius:999px;cursor:pointer;font-size:11px;letter-spacing:.08em;text-transform:uppercase;transition:.2s ease}
.lpa-work-filters button:hover,.lpa-work-filters button.is-active{background:#fff;color:#0a0b0d;border-color:#fff}
.lpa-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 18px}
.lpa-work-item{margin:0;min-width:0}
.lpa-work-item[hidden]{display:none!important}
.lpa-work-item__media{aspect-ratio:3/4;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:var(--lpa-surface)}
.lpa-work-item__image{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .3s ease}
.lpa-work-item:hover .lpa-work-item__image{transform:scale(1.025);filter:brightness(.94)}
.lpa-work-item figcaption{display:flex;justify-content:space-between;gap:16px;padding:13px 2px 0;align-items:baseline}
.lpa-work-item figcaption span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#d5d7da}
.lpa-work-item figcaption small{font-size:10px;color:#70747b;text-align:right}

.lpa-project-feature{padding:120px 0;background:#0e1013;border-top:1px solid var(--lpa-line);border-bottom:1px solid var(--lpa-line)}
.lpa-project-feature__grid{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr);gap:80px;align-items:center}
.lpa-project-feature h2{margin:0;font-size:clamp(62px,7vw,106px);letter-spacing:-.06em;line-height:.88;font-weight:600}
.lpa-project-feature__copy>p:not(.lpa-kicker){margin:32px 0;color:var(--lpa-muted);font-size:17px;line-height:1.72;max-width:560px}
.lpa-project-feature__pages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:center}
.lpa-project-feature__pages>div{aspect-ratio:3/4;overflow:hidden;background:#fff}
.lpa-project-feature__pages img{width:100%;height:100%;object-fit:cover;object-position:top center}
.lpa-project-feature__pages>div:nth-child(2){transform:translateY(26px)}

.lpa-service-detail-list{padding-top:44px}
.lpa-service-detail{display:grid;grid-template-columns:52px minmax(220px,.75fr) minmax(280px,1fr) minmax(260px,.72fr);gap:34px;padding:72px 0;border-bottom:1px solid var(--lpa-line);align-items:start}
.lpa-service-detail__num{color:var(--lpa-accent-soft);font-size:11px;letter-spacing:.12em;padding-top:7px}
.lpa-service-detail h2{margin:0;font-size:clamp(36px,4vw,62px);letter-spacing:-.045em;line-height:.96;font-weight:500}
.lpa-service-detail__content>p{margin:0 0 26px;color:var(--lpa-muted);font-size:16px;line-height:1.7}
.lpa-service-detail__content ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--lpa-line)}
.lpa-service-detail__content li{padding:10px 0;border-bottom:1px solid var(--lpa-line);color:#c7c9cd;font-size:13px}
.lpa-service-detail__content li::before{content:"↗";color:var(--lpa-accent);margin-right:10px}
.lpa-service-detail__media{aspect-ratio:4/5;overflow:hidden;background:var(--lpa-surface);border:1px solid rgba(255,255,255,.08)}
.lpa-service-detail__media img{width:100%;height:100%;object-fit:cover;object-position:top center}
.lpa-process-section{padding:130px 0;background:#0e1013;border-bottom:1px solid var(--lpa-line)}
.lpa-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--lpa-line);border-left:1px solid var(--lpa-line)}
.lpa-process-grid article{min-height:260px;padding:26px;border-right:1px solid var(--lpa-line);border-bottom:1px solid var(--lpa-line)}
.lpa-process-grid article>span,.lpa-capability-grid article>span{display:block;color:var(--lpa-accent-soft);font-size:10px;letter-spacing:.12em;margin-bottom:58px}
.lpa-process-grid h3,.lpa-capability-grid h3{margin:0 0 15px;font-size:25px;font-weight:500;letter-spacing:-.03em}
.lpa-process-grid p,.lpa-capability-grid p{margin:0;color:var(--lpa-muted);font-size:14px;line-height:1.65}

.lpa-about-hero{padding:170px 0 115px;border-bottom:1px solid var(--lpa-line);position:relative;overflow:hidden}
.lpa-about-hero__grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:clamp(60px,9vw,150px);align-items:center}
.lpa-about-hero__portrait{position:relative;max-width:510px}
.lpa-about-hero__portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(100%) contrast(1.06)}
.lpa-about-hero__portrait>span{position:absolute;left:-22px;bottom:38px;padding:13px 16px;background:var(--lpa-accent);font-size:10px;font-weight:800;letter-spacing:.18em}
.lpa-about-hero__lead{margin:34px 0 0;max-width:680px;color:var(--lpa-muted);font-size:20px;line-height:1.72}
.lpa-about-story__grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:100px}
.lpa-about-story h2{margin:0;font-size:clamp(48px,5vw,78px);letter-spacing:-.05em;line-height:.95}
.lpa-about-story__text{max-width:700px}
.lpa-about-story__text p{margin:0 0 26px;color:#b9bcc1;font-size:18px;line-height:1.8}
.lpa-about-capabilities{padding:120px 0;background:#0e1013;border-bottom:1px solid var(--lpa-line)}
.lpa-capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--lpa-line);border-left:1px solid var(--lpa-line)}
.lpa-capability-grid article{min-height:270px;padding:26px;border-right:1px solid var(--lpa-line);border-bottom:1px solid var(--lpa-line)}
.lpa-about-samples{padding:70px 0 120px;background:#0e1013}
.lpa-about-samples__grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;align-items:start}
.lpa-about-samples__grid>div{overflow:hidden;border:1px solid rgba(255,255,255,.08);height:460px}
.lpa-about-samples__grid>div:nth-child(2){margin-top:50px}
.lpa-about-samples__grid img{width:100%;height:100%;object-fit:cover;object-position:top center}

.lpa-contact-main{padding:180px 0 110px;min-height:calc(100vh - 1px)}
.lpa-contact-main__grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(360px,1.18fr);gap:clamp(70px,10vw,160px);align-items:start}
.lpa-contact-intro{position:sticky;top:145px}
.lpa-contact-intro>p:not(.lpa-kicker){margin:32px 0;color:var(--lpa-muted);font-size:18px;line-height:1.75;max-width:570px}
.lpa-contact-direct{padding-top:28px;border-top:1px solid var(--lpa-line);display:flex;flex-direction:column;gap:8px}
.lpa-contact-direct span,.lpa-contact-socials>p{color:#777b82;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.lpa-contact-direct a{font-size:18px;word-break:break-all}
.lpa-contact-direct a:hover{text-decoration:underline;text-decoration-color:var(--lpa-accent);text-underline-offset:5px}
.lpa-contact-socials{margin-top:34px}
.lpa-contact-socials .lpa-social{margin-top:12px}
.lpa-contact-panel{padding:34px;background:#0e1013;border:1px solid var(--lpa-line)}
.lpa-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}
.lpa-contact-form label{display:flex;flex-direction:column;gap:9px;color:#a8abb1;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.lpa-contact-form input,.lpa-contact-form select,.lpa-contact-form textarea{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.2);border-radius:0;background:#0a0b0d;color:#fff;padding:14px 13px;outline:none;text-transform:none;letter-spacing:normal;font-size:15px;transition:border-color .2s ease,background .2s ease}
.lpa-contact-form select{cursor:pointer}
.lpa-contact-form textarea{resize:vertical;min-height:190px}
.lpa-contact-form input:focus,.lpa-contact-form select:focus,.lpa-contact-form textarea:focus{border-color:var(--lpa-accent);background:#0c0e11}
.lpa-contact-form__message{grid-column:1/-1}
.lpa-contact-form .lpa-button{grid-column:1/-1;justify-self:start;border:0;cursor:pointer}
.lpa-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.lpa-form-status{padding:14px 16px;margin-bottom:22px;border:1px solid var(--lpa-line);font-size:13px;line-height:1.5}
.lpa-form-status--success{border-color:rgba(124,255,159,.35);background:rgba(124,255,159,.06)}
.lpa-form-status--error{border-color:rgba(255,77,61,.35);background:rgba(255,77,61,.06)}

@media(max-width:1050px){
  .lpa-page-hero__grid,.lpa-about-story__grid{grid-template-columns:1fr;gap:34px}
  .lpa-page-hero__lead{max-width:720px}
  .lpa-page-hero__mosaic{height:390px}
  .lpa-work-toolbar{align-items:flex-start;flex-direction:column}
  .lpa-work-filters{justify-content:flex-start}
  .lpa-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lpa-project-feature__grid{grid-template-columns:1fr;gap:56px}
  .lpa-service-detail{grid-template-columns:50px minmax(230px,.8fr) 1.2fr}
  .lpa-service-detail__media{grid-column:2/-1;aspect-ratio:16/7;height:380px}
  .lpa-process-grid,.lpa-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lpa-about-hero__grid{grid-template-columns:minmax(280px,.7fr) 1.3fr;gap:60px}
  .lpa-contact-main__grid{grid-template-columns:1fr;gap:60px}
  .lpa-contact-intro{position:static;max-width:820px}
}

@media(max-width:780px){
  .lpa-page-hero{padding:135px 0 76px}
  .lpa-page-hero h1,.lpa-about-hero h1,.lpa-contact-main h1{font-size:clamp(52px,15vw,78px)}
  .lpa-page-hero__lead{font-size:17px}
  .lpa-page-hero__mosaic{width:calc(100% - 32px);margin-top:50px;height:auto;grid-template-columns:1fr 1fr}
  .lpa-page-hero__mosaic>div{height:300px}.lpa-page-hero__mosaic>div:first-child{grid-column:1/-1;height:420px}
  .lpa-work-grid{gap:32px 12px}
  .lpa-work-item figcaption{flex-direction:column;gap:5px}
  .lpa-work-item figcaption small{text-align:left}
  .lpa-project-feature{padding:90px 0}
  .lpa-project-feature__pages{gap:6px}
  .lpa-service-detail{grid-template-columns:38px 1fr;gap:18px;padding:54px 0}
  .lpa-service-detail__content{grid-column:2}.lpa-service-detail__media{grid-column:2;height:340px}
  .lpa-process-section,.lpa-about-capabilities{padding:90px 0}
  .lpa-about-hero{padding:130px 0 85px}
  .lpa-about-hero__grid{grid-template-columns:1fr;gap:50px}
  .lpa-about-hero__portrait{max-width:410px}
  .lpa-about-hero__portrait>span{left:-8px}
  .lpa-about-story__text p{font-size:16px}
  .lpa-about-samples__grid{grid-template-columns:1fr 1fr}.lpa-about-samples__grid>div{height:360px}.lpa-about-samples__grid>div:last-child{grid-column:1/-1;width:50%;justify-self:center}.lpa-about-samples__grid>div:nth-child(2){margin-top:24px}
  .lpa-contact-main{padding:130px 0 80px}
  .lpa-contact-panel{padding:25px 20px}
}

@media(max-width:560px){
  .lpa-page-hero__mosaic{grid-template-columns:1fr}.lpa-page-hero__mosaic>div,.lpa-page-hero__mosaic>div:first-child{grid-column:auto;height:350px}
  .lpa-work-grid{grid-template-columns:1fr}.lpa-work-item__media{aspect-ratio:4/5}
  .lpa-project-feature__pages{grid-template-columns:1fr 1fr}.lpa-project-feature__pages>div:last-child{display:none}.lpa-project-feature__pages>div:nth-child(2){transform:translateY(18px)}
  .lpa-process-grid,.lpa-capability-grid{grid-template-columns:1fr}
  .lpa-service-detail{grid-template-columns:30px 1fr}.lpa-service-detail__media{height:300px}
  .lpa-about-samples__grid{grid-template-columns:1fr}.lpa-about-samples__grid>div,.lpa-about-samples__grid>div:last-child{grid-column:auto;width:100%;height:400px}.lpa-about-samples__grid>div:nth-child(2){margin-top:0}
  .lpa-contact-form{grid-template-columns:1fr}.lpa-contact-form__message,.lpa-contact-form .lpa-button{grid-column:auto}.lpa-contact-form .lpa-button{width:100%}
}
