.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 32px}.portfolio-project{min-width:0;margin:0}.portfolio-stage{position:relative;display:block;width:100%;aspect-ratio:1.38;overflow:hidden;background:radial-gradient(ellipse at 55% 30%,#faf9f6,#deded8);border:1px solid #d4d6d4;isolation:isolate;text-align:left}.portfolio-project:nth-child(4n+2) .portfolio-stage,.portfolio-project:nth-child(4n+3) .portfolio-stage{background:radial-gradient(ellipse at 55% 30%,#edf6f7,#c5d6dc)}.portfolio-stage:after{content:"";position:absolute;top:72%;right:0;bottom:0;left:0;background:linear-gradient(#fff1,#fff5);border-top:1px solid #ffffff50;z-index:-1}.portfolio-stage-index{position:absolute;top:22px;left:24px;color:#51606a;font-size:11px;letter-spacing:.16em}.portfolio-laptop{position:absolute;width:81%;top:17%;left:14%;filter:drop-shadow(0 18px 12px #14233133);transition:transform .3s ease}.portfolio-laptop-screen{display:block;padding:2.5% 2.2% 3%;border-radius:12px 12px 3px 3px;background:#141619;border:1px solid #53585d;box-shadow:inset 0 0 0 2px #24272a}.portfolio-laptop-screen img{width:100%;height:auto;aspect-ratio:8/5;display:block;-o-object-fit:contain;object-fit:contain;background:#fff}.portfolio-laptop-base{display:block;position:relative;width:111%;margin-left:-5.5%;height:9px;background:linear-gradient(#e6e8eb,#8e959e 55%,#424950);border-radius:1px 1px 50% 50%/1px 1px 100% 100%}.portfolio-laptop-base:before{content:"";position:absolute;top:0;left:43%;width:14%;height:3px;background:#787f85;border-radius:0 0 5px 5px}.portfolio-phone{position:absolute;width:21%;left:6%;top:36%;padding:1.1%;background:#111418;border:1px solid #798087;border-radius:clamp(9px,1.6vw,20px);box-shadow:5px 12px 16px #14233155,inset 0 0 0 1px #454b51;transition:transform .3s ease}.portfolio-phone img{display:block;width:100%;height:auto;aspect-ratio:390/844;border-radius:clamp(5px,1vw,13px);-o-object-fit:contain;object-fit:contain;background:#fff}.portfolio-expand{position:absolute;top:22px;right:21px;display:flex;gap:8px;align-items:center;color:#273e49;font-size:11px}.portfolio-stage:hover .portfolio-laptop{transform:translateY(-4px)}.portfolio-stage:hover .portfolio-phone{transform:translateY(-6px)}.portfolio-stage:focus-visible{outline:3px solid #1689a6;outline-offset:5px}.portfolio-project figcaption{display:flex;justify-content:space-between;align-items:end;gap:16px;padding:23px 0 0}.portfolio-category{display:block;color:#337285;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px}.site-design .portfolio-project h3{font-size:clamp(22px,2.4vw,31px);line-height:1.15;margin:0}.portfolio-caption-note{font-size:9px;letter-spacing:.08em;color:#6b747b;flex-shrink:0;padding-bottom:4px}.portfolio-dialog{width:94vw;max-width:1100px;max-height:94dvh;overflow:auto;background:#f5f3ed;color:#15202c;padding:24px;border-radius:6px}.portfolio-device-tabs{display:flex;gap:10px}.portfolio-device-tabs button{display:flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #aab8bf;font-size:13px}.portfolio-device-tabs button[aria-pressed=true]{background:#132331;color:#fff}.portfolio-enlarged{background:#dce3e5;display:flex;justify-content:center;padding:12px;min-height:0}.portfolio-enlarged img{display:block;max-width:100%;max-height:65dvh;width:auto;height:auto;-o-object-fit:contain;object-fit:contain}.portfolio-page-intro{max-width:820px}.portfolio-page-intro p{margin:25px 0 0;max-width:650px;color:#c3d2dd}.portfolio-page-list{padding:75px 5% 90px;max-width:1556px;margin:auto}.portfolio-list-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #c9cece;font-size:12px;color:#53636c}@media (max-width:700px){.portfolio-grid{grid-template-columns:1fr;gap:36px}.portfolio-caption-note{font-size:8px}.portfolio-stage-index{top:16px;left:18px}.portfolio-expand{top:16px;right:16px}.portfolio-dialog{padding:20px}.portfolio-page-list{padding-block:45px 60px}}@media (prefers-reduced-motion:reduce){.portfolio-laptop,.portfolio-phone{transition:none}}.portfolio-viewport{overflow:hidden}.portfolio-track{display:flex;gap:32px;touch-action:pan-y pinch-zoom}.portfolio-track .portfolio-project{flex:0 0 calc((100% - 32px)/2);min-width:0}.portfolio-track img{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.portfolio-carousel-controls{display:flex;align-items:center;gap:24px;margin-top:30px;padding-top:22px;border-top:1px solid #c9cece}.portfolio-position{font-size:15px;font-weight:600;margin:0;color:#142838;font-variant-numeric:tabular-nums}.portfolio-position span{color:#737f87;font-weight:400}.portfolio-swipe-hint{font-size:12px;color:#53636c}.portfolio-arrows{display:flex;gap:10px;margin-left:auto}.portfolio-arrows button{display:grid;place-items:center;width:46px;height:46px;border:1px solid #9caeb7;background:transparent;color:#142838;transition:background .2s}.portfolio-arrows button:hover{background:#dcecf0}.portfolio-arrows button:focus-visible{outline:2px solid #1689a6;outline-offset:3px}@media (max-width:700px){.portfolio-track{gap:18px}.portfolio-track .portfolio-project{flex-basis:92%}.portfolio-caption-note{display:none}.portfolio-carousel-controls{gap:12px}.portfolio-swipe-hint{font-size:10px}}.portfolio-carousel-frame{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;gap:16px;align-items:center}.portfolio-side-arrow{display:grid;place-items:center;width:46px;height:46px;border:1px solid #9caeb7;background:#f5f3ed;color:#142838;margin-top:-80px}.portfolio-side-arrow:hover{background:#dcecf0}.portfolio-side-arrow:focus-visible{outline:2px solid #1689a6;outline-offset:3px}.portfolio-carousel-controls{margin-top:18px;padding-top:16px}@media (max-width:700px){.portfolio-carousel-frame{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.portfolio-side-arrow{width:36px;height:44px}.portfolio-track .portfolio-project{flex-basis:100%}.portfolio-track .portfolio-stage{aspect-ratio:1.38}.portfolio-track .portfolio-expand{font-size:9px;right:10px}.portfolio-track .portfolio-stage-index{left:10px}.portfolio-track .portfolio-project h3{font-size:20px}}.portfolio-hero-showcase .portfolio-track .portfolio-project{flex-basis:100%}.portfolio-hero-showcase .portfolio-carousel-frame{grid-template-columns:36px minmax(0,1fr) 36px;gap:10px}.portfolio-hero-showcase .portfolio-side-arrow{width:36px;height:44px;background:transparent;color:#d8f6fc;border-color:#536777}.portfolio-hero-showcase .portfolio-side-arrow:hover{background:#1e394b}.site-design .portfolio-hero-showcase .portfolio-project h3{color:#f5f3ed;font-size:25px}.portfolio-hero-showcase .portfolio-category{color:#75d3e5}.portfolio-hero-showcase .portfolio-caption-note{display:none}.portfolio-hero-showcase .portfolio-swipe-hint{color:#b8cbd8}.portfolio-hero-showcase .portfolio-carousel-controls{border-color:#334957}@media (max-width:450px){.portfolio-hero-showcase .portfolio-carousel-frame{gap:6px}.site-design .portfolio-hero-showcase .portfolio-project h3{font-size:21px}}.portfolio-visit{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:2px;white-space:nowrap}.portfolio-visit:hover{color:#1689a6}
