.portfolio-page{--stroke:var(--line);--card-radius:8px;--card-border:#e5ebf2;--card-shadow:0 4px 6px rgba(16,44,78,.04);--card-gap:10px;color:var(--ink);font-size:14px}
.portfolio-header{position:absolute;background:transparent;color:var(--ink)}
.portfolio-header .main-nav .active{position:relative;color:var(--blue)}
.portfolio-header .main-nav .active:after{content:"";position:absolute;left:0;right:0;bottom:-13px;height:2px;background:var(--blue)}

.portfolio-hero{min-height:clamp(520px,50.8vw,760px);padding-top:70px;background:#f7f9fb;border-bottom:1px solid var(--stroke)}
.portfolio-hero-grid{min-height:100%;display:grid;grid-template-columns:minmax(300px,38%) minmax(0,1fr);gap:18px;align-items:center;padding-inline:var(--section-inset);padding-bottom:28px}
.portfolio-hero-copy{padding-top:56px;max-width:min(420px,100%)}
.portfolio-hero-copy>small{font-size:11px;color:var(--blue);font-weight:600}
.portfolio-hero-copy h1{font-size:clamp(43px,4.45vw,66px);line-height:1.12;letter-spacing:-.052em;margin:13px 0 0;font-weight:600}
.portfolio-hero-copy h1 strong{color:var(--blue);font-weight:600}
.portfolio-hero-copy>i,.portfolio-intro>i{display:block;width:29px;height:2px;background:var(--blue);margin:15px 0 14px}
.portfolio-hero-copy p{font-size:14px;line-height:1.55;color:#32475c;margin:0;max-width:440px}
.portfolio-hero-copy>a{min-height:36px;padding:0 15px;margin-top:19px;display:inline-flex;align-items:center;gap:12px;border-radius:4px;background:var(--blue);border:1px solid var(--blue);color:#fff;font-size:11px;font-weight:600;box-shadow:0 6px 12px rgba(0,94,234,.16)}
.portfolio-hero-copy>a span{font-size:12px}

.portfolio-domain-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--card-gap);padding:56px 0 0;align-self:stretch}
.portfolio-domain-cards article{position:relative;overflow:hidden;border-radius:var(--card-radius);padding:16px 14px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(260px,20vw,300px);background-image:linear-gradient(0deg,rgba(2,15,31,.92) 0%,rgba(2,15,31,.45) 38%,transparent 68%),var(--photo);background-size:cover;background-position:center;box-shadow:var(--card-shadow)}
.portfolio-domain-cards article>img{width:24px;height:24px;margin-bottom:12px;filter:brightness(0) invert(1)}
.portfolio-domain-cards h2{font-size:13px;margin:0 0 6px;letter-spacing:-.02em;font-weight:600;line-height:1.3}
.portfolio-domain-cards p{font-size:11px;line-height:1.45;margin:0;color:rgba(255,255,255,.9)}

.portfolio-section{border-bottom:1px solid var(--stroke)}
.portfolio-split{display:grid;grid-template-columns:var(--info-rail) minmax(0,1fr);padding-inline:var(--section-inset)}
.portfolio-intro{border-right:1px solid var(--stroke);padding:18px 18px 16px 0}
.portfolio-intro small{font-size:11px;color:var(--blue);font-weight:600}
.portfolio-intro h2{font-size:27px;line-height:1.14;letter-spacing:-.04em;margin:14px 0 0}
.portfolio-intro p{font-size:13px;line-height:1.62;color:#273a50;margin:0 0 9px}
.portfolio-intro a{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:11px;font-weight:600;margin-top:5px}
.portfolio-intro a span{font-size:14px;margin-left:7px}

.featured-section{min-height:360px;background:#fff}
.featured-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--card-gap);padding:34px 0 16px}
.featured-grid>article{min-height:clamp(300px,24vw,360px);border:1px solid var(--card-border);border-radius:var(--card-radius);background:#fff;overflow:hidden;box-shadow:var(--card-shadow);display:flex;flex-direction:column}
.featured-photo{flex:1.35;min-height:190px;background:var(--photo) center/cover no-repeat;border-bottom:1px solid #eef2f6}
.featured-photo-contain{background-size:contain;background-color:#f8fafc}
.featured-media{flex:1.35;min-height:190px;position:relative;overflow:hidden;background:#0a1624;border-bottom:1px solid #eef2f6}
.featured-video{display:block;width:100%;height:100%;min-height:190px;object-fit:cover}
.featured-body{flex:1;padding:20px 18px 18px;display:flex;flex-direction:column;align-items:flex-start;min-height:118px}
.featured-body>small{font-size:10px;color:var(--blue);font-weight:600;margin-bottom:8px;letter-spacing:.04em}
.featured-body h3{font-size:15px;line-height:1.25;margin:0 0 8px;font-weight:600;color:#081b31;overflow-wrap:anywhere}
.featured-body>p{font-size:12px;line-height:1.55;color:#526274;margin:0 0 10px}
.project-tags{display:flex;flex-wrap:wrap;gap:6px}
.project-tags span{padding:4px 8px;border:1px solid #d9e3ed;border-radius:4px;background:#fbfcfe;font-size:10px;color:#263a50;line-height:1.3}
.featured-body>a{margin-top:auto;display:inline-flex;align-items:center;gap:10px;color:var(--blue);font-size:11px;font-weight:600}
.featured-body>a b{font-size:14px;font-weight:500}

.domains-section{min-height:200px;background:#f7f9fc}
.domains-section .portfolio-intro{padding-top:18px}
.domain-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:12px 0 16px}
.domain-grid article{text-align:center;border:1px solid var(--card-border);border-radius:var(--card-radius);background:#fff;padding:18px 12px 16px;box-shadow:var(--card-shadow);display:flex;flex-direction:column;align-items:center}
.domain-grid img{width:30px;height:30px;margin:0 0 12px;filter:brightness(0) saturate(100%) invert(26%) sepia(98%) saturate(2327%) hue-rotate(207deg) brightness(94%)}
.domain-grid h3{font-size:13px;line-height:1.25;margin:0 0 8px;font-weight:600;color:#081b31}
.domain-grid p{font-size:11px;line-height:1.55;color:#526274;margin:0}

.work-process-section{min-height:220px;background:#fff}
.work-process-section .portfolio-intro{padding-top:18px}
.work-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:34px 0 16px 18px}
.work-steps:before{content:"";position:absolute;left:10%;right:8%;top:72px;border-top:1px dashed rgba(8,101,217,.32)}
.work-steps article{text-align:center;position:relative;z-index:1;padding:0 10px}
.work-steps article>div{width:52px;height:52px;border:1px solid #d9e3ee;border-radius:50%;background:#f8fafc;margin:0 auto 14px;display:grid;place-items:center;box-shadow:var(--card-shadow)}
.work-steps img{width:26px;height:26px;filter:brightness(0) saturate(100%) invert(26%) sepia(98%) saturate(2327%) hue-rotate(207deg) brightness(94%)}
.work-steps h3{font-size:13px;line-height:1.25;margin:0 0 8px;font-weight:600;color:#081b31}
.work-steps p{font-size:11px;line-height:1.55;color:#526274;margin:0}

.case-section{min-height:220px;background:#f7f9fc}
.case-section .portfolio-intro{padding-top:18px}
.case-panel{min-height:170px;margin:12px 0 16px;border-radius:var(--card-radius);display:grid;grid-template-columns:repeat(4,1fr);align-items:center;overflow:hidden;color:#fff;background:radial-gradient(circle at 50% 130%,rgba(0,103,255,.3),transparent 38%),linear-gradient(135deg,#041426,#082542);position:relative;box-shadow:0 8px 20px rgba(5,23,44,.12)}
.case-panel:before{content:"";position:absolute;inset:58% 0 0;background-image:linear-gradient(rgba(23,105,191,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(23,105,191,.15) 1px,transparent 1px);background-size:34px 18px;transform:perspective(230px) rotateX(50deg);transform-origin:bottom}
.case-panel>div{text-align:center;position:relative;z-index:1;min-height:96px;border-left:1px solid rgba(8,112,237,.45);display:flex;flex-direction:column;justify-content:center;padding:12px 8px}
.case-panel>div:first-child{border-left:0}
.case-panel strong{font-size:24px;line-height:1;margin-bottom:10px;font-weight:600;letter-spacing:-.04em}
.case-panel span{font-size:11px;line-height:1.45;font-weight:500}

.portfolio-page footer{padding:31px 0 15px}
.portfolio-page footer .footer-grid{padding:0 var(--section-inset);gap:20px}
.portfolio-page footer .footer-bottom{padding:12px var(--section-inset) 0;margin-top:25px}

@media(min-width:821px) and (max-width:1199px){
  .portfolio-hero-grid{grid-template-columns:1fr}
  .portfolio-domain-cards{padding-top:24px}
  .domain-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(min-width:1400px){
  .portfolio-hero-copy h1{font-size:clamp(48px,4.2vw,66px)}
  .portfolio-hero-copy p{font-size:14px;max-width:440px}
  .portfolio-domain-cards h2{font-size:14px}
  .portfolio-domain-cards p{font-size:12px}
  .portfolio-intro h2{font-size:35px}
  .portfolio-intro p{font-size:14px}
  .featured-body h3{font-size:17px}
  .featured-body>p{font-size:13px}
  .domain-grid h3{font-size:14px}
  .domain-grid p{font-size:12px}
  .work-steps h3{font-size:14px}
  .work-steps p{font-size:12px}
  .case-panel strong{font-size:31px}
  .case-panel span{font-size:11px}
  .featured-grid>article{min-height:360px}
  .featured-photo{min-height:205px}
  .portfolio-domain-cards article{min-height:300px}
}

@media(max-width:820px){
  .portfolio-header .main-nav{background:#f7fafc;font-size:23px}
  .portfolio-header .main-nav .active:after{display:none}
  .portfolio-hero{min-height:0;padding-top:66px;padding-bottom:0}
  .portfolio-hero-grid{display:block;padding-inline:0}
  .portfolio-hero-copy{padding:55px var(--section-inset) 30px;max-width:none}
  .portfolio-hero-copy h1{font-size:clamp(36px,10vw,48px)}
  .portfolio-hero-copy p{font-size:13px;max-width:100%}
  .portfolio-hero-copy p br{display:none}
  .portfolio-domain-cards{grid-template-columns:1fr 1fr;padding:0 var(--section-inset) 45px;gap:12px}
  .portfolio-domain-cards article{min-height:240px}
  .portfolio-section{min-height:0;height:auto}
  .portfolio-split{display:block;padding-inline:0}
  .portfolio-intro{border-right:0;padding:55px var(--section-inset) 30px}
  .portfolio-intro h2{font-size:30px}
  .portfolio-intro p{font-size:13px;max-width:100%}
  .featured-grid{grid-template-columns:1fr 1fr;padding:0 var(--section-inset) 55px;gap:12px}
  .featured-grid>article{min-height:320px}
  .featured-body h3{font-size:14px}
  .featured-body>p{font-size:12px}
  .domain-grid{grid-template-columns:1fr 1fr;padding:0 var(--section-inset) 55px;gap:12px}
  .domain-grid h3{font-size:13px}
  .domain-grid p{font-size:12px}
  .work-steps{grid-template-columns:1fr 1fr;padding:0 var(--section-inset) 55px;gap:28px 12px}
  .work-steps:before{display:none}
  .work-steps article:last-child{grid-column:1/-1}
  .work-steps h3{font-size:13px}
  .work-steps p{font-size:12px}
  .case-panel{min-height:360px;margin:0 var(--section-inset) 55px;grid-template-columns:1fr 1fr;padding:25px}
  .case-panel>div:nth-child(3){border-left:0}
  .case-panel strong{font-size:28px}
  .portfolio-page footer .footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:540px){
  .portfolio-hero-copy h1{font-size:36px}
  .portfolio-domain-cards,.featured-grid,.domain-grid,.work-steps,.case-panel{grid-template-columns:1fr}
  .portfolio-domain-cards article{min-height:220px}
  .featured-grid>article{min-height:340px}
  .work-steps article:last-child{grid-column:auto}
  .case-panel>div{border-left:0;border-top:1px solid rgba(8,112,237,.45)}
  .case-panel>div:first-child{border-top:0}
}
