@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
:root{font-family:'Manrope','Noto Sans KR',sans-serif;color:#17222f;background:#fff;font-synthesis:none;--accent:#1559ec;--muted:#66717e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header{max-width:1440px;margin:auto;padding:30px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce3ec}.logo{font-weight:800;font-size:27px;letter-spacing:-1.8px;white-space:nowrap}.logo span{font-weight:400}.logo i{font-size:12px;font-style:normal;vertical-align:top;margin:4px}nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:600}.nav-contact{padding:12px 19px;border:1px solid #ccd5e2;border-radius:30px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;line-height:1.8}.intro{font-size:16px;color:var(--muted);line-height:1.95}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,4.5vw,68px);line-height:1.3;letter-spacing:-3.5px;font-weight:700}h1 em{font-style:normal;color:var(--accent)}h2{font-size:clamp(28px,3vw,43px);line-height:1.45;letter-spacing:-2px}h3{letter-spacing:-.6px}.hero,.work,.studio,.contact,footer{max-width:1440px;margin:auto;padding:85px 5%}.hero{position:relative}.hero-copy{position:relative;z-index:2}.hero-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px;line-height:1.9}.primary{display:inline-flex;background:var(--accent);color:#fff;padding:19px 24px;border-radius:5px;font-size:13px;gap:42px;margin-top:18px}.primary span{font-size:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px;gap:25px}.section-heading h2{margin:0}.section-heading>p,.section-note{font-size:13px;color:var(--muted);line-height:1.9}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 28px}.project{border:0;padding:0;background:transparent;text-align:left;color:inherit;cursor:pointer;min-width:0}.project-image{position:relative;overflow:hidden;background:#e6eaf0;aspect-ratio:1.52;display:flex;align-items:center;justify-content:center}.project-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.project:hover img{transform:scale(1.035)}.project-open{position:absolute;right:18px;bottom:18px;background:white;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;color:#111}.project-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}.project-meta h3{font-size:22px;margin:0}.project-meta>span{font-size:9px;letter-spacing:1px}.project>p{font-size:12px;color:var(--muted);margin:9px 0 0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service{border-top:1px solid #cdd4dc;padding-top:22px}.service>span{font-size:11px;color:var(--accent)}.service h3{font-size:24px;margin:26px 0 15px}.service p{font-size:13px;line-height:1.95;color:var(--muted)}.service small{font-size:10px;color:var(--muted)}.contact{background:#1559ec;color:white;padding-top:75px;padding-bottom:75px}.contact h2{font-size:44px;margin:20px 0}.contact p:not(.eyebrow){font-size:13px;opacity:.75}.contact-link{border-bottom:1px solid #ffffff65;display:flex;align-items:center;justify-content:space-between;padding:22px 0 15px;margin-top:35px;font-size:clamp(19px,3vw,38px);letter-spacing:-1px}.contact-link span{font-size:42px}footer{display:flex;align-items:center;justify-content:space-between;padding-top:35px;padding-bottom:70px;gap:20px}footer p,footer small{font-size:10px;color:var(--muted);margin:0}.switcher{position:fixed;z-index:10;bottom:20px;left:50%;transform:translateX(-50%);background:#fff;box-shadow:0 5px 30px #0002;border:1px solid #ddd;display:flex;border-radius:50px;padding:5px;color:#111}.switcher a{padding:9px 15px;font-size:11px;border-radius:25px}.switcher [aria-current]{background:#17222f;color:#fff}dialog{width:min(860px,92vw);max-height:90vh;border:0;padding:35px;background:#fff;color:#17222f}dialog::backdrop{background:#101720cc;backdrop-filter:blur(6px)}dialog img{width:100%;max-height:50vh;object-fit:contain;background:#eff0f1;margin-bottom:25px}dialog h2{margin-bottom:10px}dialog p{font-size:14px;line-height:1.8}dialog small,.tech{color:#66717e;font-size:11px}.close-dialog{position:sticky;top:0;float:right;z-index:2;background:#fff;border:1px solid #ddd;border-radius:50%;width:38px;height:38px;cursor:pointer}.status-dot{display:inline-block;width:6px;height:6px;background:#1559ec;border-radius:50%;margin-right:6px}
/* A — clear blue */
.design-a .hero{padding-top:110px;padding-bottom:25px;min-height:640px;overflow:hidden}.design-a .hero-copy{width:65%}.design-a .hero h1{margin:28px 0}.design-a .hero-bottom{margin-top:100px;border-top:1px solid #dce3ec;padding-top:20px}.a-art{position:absolute;right:3%;top:65px;width:40%;height:410px;background:radial-gradient(ellipse,#e2edff 0%,#f7faff 55%,transparent 70%);display:grid;place-items:center}.glass{width:215px;height:245px;border-radius:65px;background:linear-gradient(135deg,#4684ff,#0840c7 70%);box-shadow:inset 2px 2px 8px #ffffff99,16px 30px 45px #174dd344;transform:rotate(-15deg);font-size:200px;font-weight:800;color:#e9f3ff;line-height:1;display:flex;justify-content:center;align-items:center;letter-spacing:-25px;padding-right:26px}.glass>span{font-size:23px;align-self:flex-end;margin-bottom:52px;color:#9bf6fa}.orbit{position:absolute;border:1px solid #b7cfff;border-radius:50%;width:390px;height:170px;transform:rotate(-32deg)}.orbit-two{transform:rotate(38deg);width:370px}.art-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-around;font-size:8px;letter-spacing:1px;color:#6280af}.design-a .studio{background:#f4f7fb}.design-a .work{padding-top:70px}
/* B — deep focus */
.design-b{background:#111310;color:#f4f5ef;--accent:#c0f870;--muted:#999e92}.design-b header{border-color:#353a30}.design-b .nav-contact{background:var(--accent);color:#111;border:0}.design-b .hero{padding-top:45px;padding-bottom:35px}.hero-top{display:flex;justify-content:space-between;font-size:12px;line-height:1.9}.design-b h1{font-size:clamp(80px,14vw,205px);font-weight:800;line-height:.86;letter-spacing:-11px;margin:35px 0 35px;position:relative}.design-b h1>span{color:var(--accent);margin-left:14%}.design-b h1>i{font-size:clamp(110px,18vw,250px);font-style:normal;color:var(--accent);position:absolute;right:5%;bottom:-5px;font-weight:400}.design-b .hero-bottom{margin-top:45px}.design-b .hero-bottom p{letter-spacing:0;color:#b5bbaf;font-size:13px}.design-b .hero-bottom a{border-bottom:1px solid #7a826e;padding-bottom:8px}.design-b .work{border-top:1px solid #353a30;padding-top:50px}.design-b .section-heading h2{font-size:24px;letter-spacing:-.8px}.design-b .section-heading h2>span{color:var(--accent);font-size:12px;vertical-align:top;margin-left:12px}.design-b .project-grid{gap:65px 30px;align-items:start}.design-b .project:nth-child(even){margin-top:95px}.design-b .project-image{aspect-ratio:1.3;background:#272b25;padding:22px}.design-b .project-meta>span{color:var(--accent)}.design-b .studio h2{font-size:45px;margin:25px 0 55px}.design-b .studio h2>span{color:#8d9681}.design-b .service{border-color:#454b3e}.design-b .contact{background:var(--accent);color:#14180e}.design-b .contact-link{border-color:#516b36}.design-b .contact h2{font-size:53px}.design-b footer{border-top:1px solid #343a2d}
/* C — studio notes */
.design-c{background:#f5f1e8;color:#302e29;--accent:#da4c2b;--muted:#797568;font-family:'DM Sans','Noto Sans KR',sans-serif}.design-c header{border-color:#d9d3c7}.design-c .nav-contact{border-color:#b7afa0;border-radius:0}.design-c .hero{min-height:680px;padding-top:105px;padding-bottom:22px;overflow:hidden}.design-c .hero-copy{width:62%}.design-c h1{font-size:clamp(37px,4.5vw,65px);font-weight:500;line-height:1.4;letter-spacing:-3px;margin-top:25px}.design-c h1 em{color:inherit}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid #302e29;padding:12px 0;margin-top:12px}.c-collage{position:absolute;top:60px;right:4%;width:40%;height:440px}.paper{position:absolute;width:75%;padding:12px 12px 20px;background:#fff;box-shadow:0 9px 25px #493c2622}.paper img{width:100%;height:220px;object-fit:contain;background:#f2f2f0}.paper span{font-size:7px;letter-spacing:1.5px;display:block;margin-top:13px}.paper-one{transform:rotate(-9deg);left:0;top:15px}.paper-two{transform:rotate(9deg);width:65%;right:0;top:140px}.paper-two img{height:200px}.star{position:absolute;right:5px;top:-4px;font-size:100px;color:var(--accent);line-height:1}.hand-note{position:absolute;bottom:-5px;left:0;font:italic 23px Georgia,serif;transform:rotate(-8deg);color:#857d6d}.design-c .hero-bottom{margin-top:130px;border-top:1px solid #d9d3c7;padding-top:20px;font-size:9px}.design-c .studio{border-top:1px solid #d9d3c7;border-bottom:1px solid #d9d3c7}.studio-statement{display:flex;justify-content:space-between;gap:30px;margin-top:30px;margin-bottom:40px}.studio-statement p{font-size:13px;line-height:2;color:var(--muted)}.design-c .service{border-color:#d9d3c7}.design-c .service h3{font-family:Georgia,serif;font-weight:400;font-size:26px}.design-c .project-grid{gap:50px 45px}.design-c .project:nth-child(even){margin-top:65px}.design-c .project-image{background:#e9e3d8;padding:25px;aspect-ratio:1.4}.design-c .project-meta>span{color:var(--accent)}.design-c .contact{background:#e9e3d7;color:#302e29}.design-c .contact .eyebrow{color:var(--accent)}.design-c .contact-link{border-color:#b8ad9c}.design-c .contact-link span{color:var(--accent)}
/* comparison page */
.chooser{background:#f5f6f8}.chooser main{max-width:1440px;margin:auto;padding:45px 5%}.chooser .eyebrow{margin-top:75px;color:#7a8393}.chooser h1{font-size:52px;letter-spacing:-2.8px;margin:20px 0}.directions{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}.direction{padding:28px;min-height:440px;display:flex;flex-direction:column;transition:transform .25s}.direction:hover{transform:translateY(-7px)}.direction small{font-size:9px;letter-spacing:1.2px}.direction strong{font-size:27px;margin-top:28px;letter-spacing:-1px}.direction strong>span{display:block;font-size:12px;font-weight:400;letter-spacing:0;margin-top:9px}.direction .mini-art{height:180px;position:relative;display:flex;align-items:center}.mini-art b{font-size:43px;line-height:1;letter-spacing:-2px}.mini-art i{font-size:90px;position:absolute;right:0;font-style:normal}.direction p{font-size:11px;margin-top:auto}.direction>span{font-size:12px;border-top:1px solid #8885;padding-top:18px;margin-top:10px}.blue{background:#e3edff;color:#1358d8}.black{background:#151811;color:#c0f870}.black .mini-art b{font-size:58px}.black .mini-art b>span{font-size:28px;margin-left:12px}.cream{background:#eee5d7;color:#3c352b}.cream .mini-art b{font-family:Georgia,serif;font-weight:400;font-size:42px;letter-spacing:-1px}.cream .mini-art i{color:#da4c2b;font-size:90px}.chooser footer{padding:40px 0;font-size:10px;color:#7a8393}
@media(min-width:1500px){.design-a .hero,.design-c .hero{min-height:710px}.a-art{right:6%}.design-a .hero-bottom{margin-top:135px}}
@media(max-width:760px){header{padding:22px 6%}.logo{font-size:23px}nav{gap:17px;font-size:11px}nav>a:nth-child(2){display:none}.nav-contact{padding:9px 12px}.hero,.work,.studio,.contact{padding:55px 6%}h1{letter-spacing:-2px}.eyebrow{font-size:9px;letter-spacing:1px}.intro{font-size:13px}.design-a .hero,.design-c .hero{padding-top:50px}.design-a .hero-copy,.design-c .hero-copy{width:100%}.design-a h1{font-size:39px}.a-art{position:relative;top:auto;right:auto;width:100%;height:300px;margin:25px 0 0}.glass{width:155px;height:175px;font-size:140px;border-radius:45px;letter-spacing:-18px;padding-right:18px}.glass>span{font-size:16px;margin-bottom:35px}.orbit{width:290px;height:130px}.orbit-two{width:270px}.design-a .hero-bottom,.design-c .hero-bottom{margin-top:35px;font-size:8px;letter-spacing:0}.section-heading{align-items:start;flex-direction:column;gap:15px}.section-heading .section-note{font-size:11px}.project-grid{gap:35px 17px}.project-meta{align-items:start;flex-direction:column;gap:7px;margin-top:12px}.project-meta h3{font-size:18px}.project-meta>span{font-size:8px}.project>p{font-size:10px;line-height:1.7}.services{grid-template-columns:1fr;gap:35px}.service h3{margin-top:17px}.contact h2,.design-b .contact h2{font-size:34px}.contact-link{font-size:19px}.contact-link span{font-size:28px}footer{padding:30px 6% 85px;flex-wrap:wrap}footer p{display:none}.design-b .hero-top p{font-size:9px}.design-b h1{font-size:clamp(70px,17vw,130px);letter-spacing:-5px;margin-top:40px}.design-b h1>i{font-size:130px;right:0}.design-b .hero-bottom{align-items:end;gap:20px}.design-b .hero-bottom p{font-size:11px}.design-b .hero-bottom a{font-size:8px}.design-b .section-heading h2{font-size:21px}.design-b .project-grid{grid-template-columns:1fr;gap:35px}.design-b .project:nth-child(even),.design-c .project:nth-child(even){margin-top:0}.design-b .project-image{aspect-ratio:1.5}.design-b .studio h2{font-size:29px}.c-collage{position:relative;top:auto;right:auto;width:100%;height:340px;margin-top:35px}.paper{width:65%}.paper img{height:165px}.paper-two{width:57%;top:110px}.paper-two img{height:155px}.star{font-size:80px}.hand-note{font-size:19px;bottom:0}.studio-statement{flex-direction:column;gap:0}.design-c .project-grid{grid-template-columns:1fr}.design-c .project-image{aspect-ratio:1.5}.chooser main{padding:30px 6%}.chooser .eyebrow{margin-top:50px}.chooser h1{font-size:35px;letter-spacing:-2px}.chooser .intro{font-size:12px}.directions{grid-template-columns:1fr;gap:20px;margin-top:30px}.direction{min-height:370px}.direction .mini-art{height:150px}dialog{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* Contemporary device mockups, composed in CSS from existing screen areas. */
.project-image{padding:0!important;background:linear-gradient(140deg,#edf1f6,#dfe7ed)}
.device-scene{position:relative;width:100%;height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;padding:8% 10% 12%;isolation:isolate;background:radial-gradient(ellipse at 50% 35%,#ffffff85,transparent 65%)}
.desktop{width:94%;position:relative;filter:drop-shadow(0 15px 12px #28394b22);margin-top:-5%}
.desktop-bezel{background:#17191b;padding:5px;border-radius:10px 10px 0 0;overflow:hidden;border:1px solid #555;aspect-ratio:1.78}
.desktop-chin{height:12px;background:linear-gradient(#d5d9db,#bbc1c4);border-radius:0 0 5px 5px;border:1px solid #aeb4b7}
.desktop-neck{width:16%;height:24px;background:linear-gradient(90deg,#b8bfc4,#e9edef,#b8bfc4);margin:auto;clip-path:polygon(20% 0,80% 0,100% 100%,0 100%)}
.desktop-foot{width:31%;height:4px;margin:auto;background:linear-gradient(#eef1f3,#aeb6be);border-radius:50% 50% 2px 2px;box-shadow:0 4px 7px #0002}
.screen-clip{position:relative;overflow:hidden;width:100%;aspect-ratio:var(--cw)/var(--ch);background:#fff}
.screen-clip img{position:absolute!important;width:calc(800 / var(--cw) * 100%)!important;max-width:none!important;height:auto!important;left:calc(-1 * var(--cx) / var(--cw) * 100%);top:calc(-1 * var(--cy) / var(--ch) * 100%);object-fit:initial!important;transform:none!important}
.iphone{position:absolute;right:7%;bottom:10%;width:22%;background:#111315;padding:4px;border-radius:20px;box-shadow:0 0 0 1px #a8adb4,0 1px 0 2px #494f55,7px 12px 20px #17242e38;overflow:hidden;aspect-ratio: .48;z-index:2}
.iphone .screen-clip{height:100%;aspect-ratio:auto;border-radius:16px;overflow:hidden;border-top:14px solid #fff;border-bottom:12px solid #fff}
.island{position:absolute;z-index:3;top:8px;left:32%;width:36%;height:8px;border-radius:10px;background:#111315}
.home-indicator{position:absolute;bottom:9px;left:36%;width:28%;height:3px;background:#222;border-radius:4px;z-index:3}
.app-scene{padding:8% 15%;gap:6%;align-items:center;background:radial-gradient(ellipse at 50% 10%,#d6d7ff,#b6c9e3)}
.app-scene .iphone{position:relative;inset:auto;width:29%;flex:none;transform:translateY(5%) rotate(-6deg)}
.app-scene .iphone:nth-child(2){transform:translateY(-4%);z-index:4}.app-scene .iphone:nth-child(3){transform:translateY(5%) rotate(6deg)}
.app-scene .iphone .screen-clip{border-color:#a2caff}
.rebuilt-screen{height:100%;background:#fff;color:#152236;font-family:Arial,sans-serif;display:flex;flex-direction:column}
.rebuilt-nav{display:flex;align-items:center;justify-content:space-between;padding:3% 4%;font-weight:bold;font-size:clamp(7px,1.1vw,14px)}
.rebuilt-nav span{font-size:5px;font-weight:400}
.rebuilt-hero{position:relative;flex:1;min-height:0;background:#172b3c;overflow:hidden}.rebuilt-hero>img{position:absolute;width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;filter:brightness(.6)}
.rebuilt-hero>div{position:relative;color:#fff;height:100%;padding:6% 6%;display:flex;flex-direction:column;justify-content:center;gap:7px}
.rebuilt-hero small{font-size:7px;letter-spacing:2px}.rebuilt-hero strong{font-size:clamp(13px,2vw,26px);letter-spacing:-1px}.rebuilt-hero span{font-size:7px}
.rebuilt-bottom{display:flex;justify-content:space-between;padding:3% 5%;font-size:7px}.rebuilt-bottom span{font-size:6px}
.study-label{position:absolute;bottom:3%;left:0;right:0;text-align:center;font-size:7px;letter-spacing:1.3px;color:#566579}
.candidate-label{display:block;font-size:10px;line-height:1.7;margin-top:8px;color:var(--muted)}
.design-b .device-scene{background:radial-gradient(ellipse at 50% 40%,#3b4435,#252c21)}.design-b .study-label{color:#aebda5}.design-b .app-scene{background:radial-gradient(ellipse,#554f7b,#252c21)}
.design-c .device-scene{background:radial-gradient(ellipse,#f3eee5,#d7cebf)}
.paper .device-scene{height:220px;padding:10% 8%}.paper-two .device-scene{height:200px;padding:12% 8%}.paper .device-scene span{margin:0}.paper .iphone{border-radius:13px;padding:3px}.paper .iphone .screen-clip{border-radius:9px}.paper .island{height:5px;top:5px}.paper .home-indicator{height:2px;bottom:7px}
.detail-mockup{aspect-ratio:1.6;background:#e6edf3;margin-bottom:25px}.detail-mockup>.device-scene{height:100%}.detail-mockup .screen-clip img{margin:0}.detail-mockup .iphone{max-width:145px}.detail-mockup .desktop{max-width:550px}.detail-mockup .app-scene .iphone{max-width:150px}
@media(max-width:760px){.desktop-bezel{padding:3px;border-radius:6px 6px 0 0}.desktop-chin{height:7px}.desktop-neck{height:14px}.desktop-foot{height:3px}.device-scene{min-height:100px;padding:8% 9% 13%}.iphone{padding:2px;border-radius:10px}.iphone .screen-clip{border-radius:8px;border-top-width:9px;border-bottom-width:7px}.island{top:5px;height:5px}.home-indicator{bottom:5px;height:2px}.study-label{font-size:5px;letter-spacing:.5px}.rebuilt-nav{font-size:7px}.rebuilt-nav span{font-size:3px}.rebuilt-hero>div{gap:3px}.rebuilt-hero strong{font-size:13px}.rebuilt-hero span{font-size:5px}.rebuilt-hero small{font-size:4px}.rebuilt-bottom{font-size:4px}.rebuilt-bottom span{font-size:4px}.paper .device-scene{height:165px}.paper-two .device-scene{height:155px}.design-c .project .rebuilt-hero strong,.design-b .project .rebuilt-hero strong{font-size:22px}.design-c .project .rebuilt-nav,.design-b .project .rebuilt-nav{font-size:11px}}
.screen-clip img{top:0!important;margin-top:calc(-1 * var(--cy) / var(--cw) * 100%)!important;margin-bottom:0!important}
.iphone{border:3px solid #16191d;background:#fff;padding:14px 2px 18px}
.iphone .screen-clip{height:auto!important;aspect-ratio:var(--cw)/var(--ch)!important;border:0!important;border-radius:4px}
.island{top:5px}.home-indicator{bottom:5px}.app-scene .iphone{padding-top:14px;padding-bottom:18px;background:#a2caff}.paper .iphone{padding:12px 2px 15px;border-width:2px}.paper .iphone .screen-clip{border-radius:4px}.paper .island{top:4px}
@media(max-width:760px){.iphone{border-width:2px;padding:9px 1px 12px}.island{top:3px;height:4px}.home-indicator{bottom:4px}.app-scene .iphone{padding-top:9px;padding-bottom:12px}.paper .iphone{padding:9px 1px 12px}.paper .island{top:3px}}
.desktop-bezel>.reconstructed-capture{width:100%!important;height:100%!important;object-fit:cover!important;object-position:top;display:block;transform:none!important}
.capture-phone>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:top;transform:none!important;margin:0!important;border-radius:4px}
/* Two distinct directions: A service-led, B project-led. */
.directions{grid-template-columns:1fr 1fr;max-width:1000px}
.design-a .studio{padding-top:55px;padding-bottom:60px}.design-a .studio .section-heading h2{font-size:34px}.design-a .services{gap:40px}.design-a .a-featured{margin-bottom:45px}.a-featured .project{display:grid;grid-template-columns:1.5fr 1fr;gap:0 55px;width:100%;align-items:center;background:#eef4fe;padding:35px}.a-featured .project-image{grid-row:1/5;aspect-ratio:1.7}.a-featured .project-meta{display:flex;flex-direction:column-reverse;align-items:start;margin-top:0;gap:18px}.a-featured .project-meta h3{font-size:40px}.a-featured .project-meta>span{color:#1559ec;letter-spacing:2px}.a-featured .project>p{font-size:15px;line-height:1.9;align-self:start}.a-featured .candidate-label{align-self:start;margin:0}.a-featured .project-open{bottom:12px;right:12px}
.design-b .hero{padding-bottom:70px}.design-b .work{padding-top:65px}.design-b .section-heading{margin-bottom:60px}.b-case{display:grid;grid-template-columns:.7fr 1.3fr;gap:7%;align-items:center;padding:55px 0 70px;border-top:1px solid #394032}.b-case:nth-child(even){grid-template-columns:1.3fr .7fr}.b-case:nth-child(even) .b-case-copy{order:2}.b-case .project{margin:0!important;width:100%}.b-case .project-image{aspect-ratio:1.38;padding:0}.b-case .project-meta,.b-case .project>p,.b-case .candidate-label{display:none}.case-index{font-size:10px;letter-spacing:1.5px;color:#b8ef6f}.b-case-copy h3{font-size:clamp(30px,3.5vw,48px);line-height:1.22;margin:25px 0;letter-spacing:-2px}.b-case-copy>p{font-size:14px;line-height:2;color:#b9c0b1}.case-tech{display:block;font-size:10px;line-height:1.9;color:#8f9a83}.case-detail{background:transparent;color:#c0f870;border:0;border-bottom:1px solid #667a50;padding:12px 0;margin-top:35px;cursor:pointer;font-size:12px}.design-b .studio{display:grid;grid-template-columns:1fr 1fr;gap:20px 60px;padding-top:65px;background:#1a1f16}.design-b .studio>.eyebrow{grid-column:1/-1}.design-b .studio h2{font-size:37px;margin:0}.design-b .studio .services{grid-template-columns:1fr;gap:25px}.design-b .studio .service h3{margin:15px 0 10px}.design-b .studio .service p{margin-bottom:10px}
.engineering{max-width:1440px;margin:auto;padding:75px 5%;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.engineering h2{font-size:33px}.engineering>div>p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted)}.engineering-project{position:relative;display:flex;gap:25px;border:1px solid #d7e1ee;padding:35px;background:#f8fafe;align-items:center}.engineering-symbol{color:#1559ec;background:#e9f0ff;font-size:35px;font-weight:600;padding:30px 15px;border-radius:8px}.scope-label{font-size:9px;letter-spacing:1px;color:#1559ec}.engineering-project h3{font-size:24px;margin:15px 0 12px}.engineering-project h3 small{font-size:11px;font-weight:400;margin-left:5px}.engineering-project p{font-size:12px;color:var(--muted)}.scope-tags{display:flex;gap:7px;flex-wrap:wrap}.scope-tags span{font-size:9px;padding:5px 8px;border:1px solid #d7e1ee;border-radius:3px}.scope-note{display:block;font-size:10px;color:var(--muted);margin-top:18px}.engineering-number{position:absolute;top:15px;right:17px;font-size:10px;color:var(--muted)}.design-b .engineering{display:block}.design-b .engineering>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:25px;flex-wrap:wrap}.design-b .engineering h2{font-size:32px;margin:0}.design-b .engineering-project{background:transparent;border-color:#414a35;gap:40px;padding:30px 40px}.design-b .engineering-project h3{font-size:33px}.design-b .engineering-symbol{color:#c0f870;background:#252e1b}.design-b .scope-label{color:#c0f870}.design-b .scope-tags span{border-color:#414a35}.design-b .engineering-number{font-size:34px;right:35px;top:35px}
.contact{background:#f0f5ff!important;color:#17222f!important;padding-top:80px!important;padding-bottom:80px!important}.contact-heading{margin-bottom:45px}.contact-heading .eyebrow{color:#1559ec}.contact-heading h2{font-size:43px!important}.contact-heading>p:last-child{opacity:1!important;color:#66717e}.contact-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:9%}.contact form{min-width:0}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact label{display:block;font-size:11px;font-weight:600;margin-bottom:22px}.contact label>span{color:#1559ec}.contact input,.contact textarea{display:block;width:100%;margin-top:10px;border:0;border-bottom:1px solid #bdcbe0;background:transparent;color:inherit;padding:11px 0;font:inherit;font-weight:400;font-size:13px;line-height:1.7;border-radius:0}.contact textarea{resize:vertical;min-height:120px}.contact input:focus,.contact textarea:focus{outline:0;border-bottom:2px solid #1559ec}.contact input::placeholder,.contact textarea::placeholder{color:#8592a5}.contact .form-note{font-size:10px!important;line-height:1.8;opacity:1!important;color:#66717e}.send-inquiry{display:flex;justify-content:space-between;width:100%;border:0;background:#1559ec;color:white;padding:18px 22px;font-size:13px;cursor:pointer}.send-inquiry span{font-size:19px}.contact-details{border-left:1px solid #d2dded;padding-left:40px}.contact-details>.eyebrow{color:#1559ec;font-size:9px}.contact-details dl{margin:35px 0}.contact-details dt{font-size:9px;letter-spacing:1.5px;color:#7c899c;margin:25px 0 10px}.contact-details dd{margin:0;font-size:17px;line-height:1.8;letter-spacing:-.4px;overflow-wrap:anywhere}.map-link{font-size:10px;border-bottom:1px solid #9eafc7;padding-bottom:8px}.contact .contact-signoff{font-size:14px!important;line-height:1.9;margin-top:55px;color:#66717e;opacity:1!important}.contact #form-status{font-size:11px!important;line-height:1.9;opacity:1!important}.design-b .contact{background:#c0f870!important;color:#17220c!important}.design-b .contact-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;flex-wrap:wrap}.design-b .contact-heading>.eyebrow{width:100%;color:#365314}.design-b .contact-heading h2{font-size:53px!important;margin:0}.design-b .contact-layout{grid-template-columns:.7fr 1.3fr}.design-b .contact-details{order:-1;border:0;padding:0}.design-b .contact-details>.eyebrow{color:#365314}.design-b .contact-details dt{color:#526c33}.design-b .contact input,.design-b .contact textarea{border-color:#729b45}.design-b .contact input::placeholder,.design-b .contact textarea::placeholder{color:#617b44}.design-b .send-inquiry{background:#18250e;color:#c0f870}.design-b .contact label>span{color:#365314}.design-b .contact .form-note,.design-b .contact .contact-signoff,.design-b .contact-heading>p:last-child{color:#4c6631}.design-b .contact .map-link{border-color:#729b45}
@media(max-width:760px){.directions{grid-template-columns:1fr}.a-featured .project{display:block;padding:17px}.a-featured .project-meta{margin-top:20px;gap:10px}.a-featured .project-meta h3{font-size:28px}.a-featured .project>p{font-size:12px;margin:15px 0}.a-featured .candidate-label{font-size:9px}.design-a .studio .section-heading h2{font-size:29px}.design-a .studio .services{grid-template-columns:1fr}.b-case,.b-case:nth-child(even){grid-template-columns:1fr;gap:25px;padding:35px 0 40px}.b-case:nth-child(even) .b-case-copy{order:0}.b-case-copy h3{font-size:32px;margin:18px 0}.b-case-copy>p{font-size:12px}.case-detail{margin-top:12px}.design-b .studio{display:block}.design-b .studio h2{font-size:29px;margin:25px 0 40px}.engineering{grid-template-columns:1fr;padding:55px 6%;gap:20px}.engineering h2{font-size:29px}.engineering-project{padding:25px 18px;gap:18px}.engineering-symbol{font-size:24px;padding:25px 10px}.engineering-project h3{font-size:21px}.engineering-project h3 small{display:block;margin:7px 0 0}.design-b .engineering>div{display:block}.design-b .engineering h2{font-size:28px;margin-bottom:20px}.design-b .engineering-project{padding:25px 18px;gap:18px}.design-b .engineering-project h3{font-size:23px}.design-b .engineering-number{font-size:14px;top:15px;right:15px}.contact{padding:55px 6%!important}.contact-heading h2,.design-b .contact-heading h2{font-size:33px!important}.contact-layout,.design-b .contact-layout{grid-template-columns:1fr;gap:45px}.form-pair{gap:18px}.contact-details{padding:0;border:0;border-top:1px solid #d2dded;padding-top:30px}.contact-details dd{font-size:17px}.contact .contact-signoff{margin-top:30px}.design-b .contact-details{order:0}.design-b .contact-heading{display:block}.design-b .contact-heading h2{margin:20px 0}.design-b .contact-layout{gap:25px}.contact-heading{margin-bottom:30px}}
/* B: unified work grid and quieter contact section. */
.design-b .b-unified-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 28px;align-items:start}.design-b .b-unified-grid .project{margin:0!important}.design-b .b-unified-grid .project-image{aspect-ratio:1.4}.functional-visual{position:relative;padding:8%!important;display:grid;place-items:center;background:#20281d!important}.cms-preview{width:100%;height:100%;display:flex;border:1px solid #4c5941;border-radius:8px;overflow:hidden;background:#171c14;box-shadow:0 15px 25px #0003}.cms-sidebar{width:30%;background:#10150e;padding:18px 12px;display:flex;flex-direction:column;gap:19px;border-right:1px solid #303c28}.cms-sidebar b{font-size:10px;letter-spacing:.8px;color:#c0f870;margin-bottom:10px}.cms-sidebar span{font-size:8px;color:#899d78}.cms-content{flex:1;padding:22px 18px;position:relative}.cms-content small{font-size:6px;letter-spacing:1px;color:#849674}.cms-content strong{display:block;font-size:20px;line-height:1.6;margin:17px 0;color:#e2e9dc;font-weight:500;letter-spacing:-1px}.cms-lines{display:grid;gap:10px}.cms-lines i{display:block;height:7px;border-radius:3px;background:#2e3926}.cms-lines i:nth-child(2){width:80%}.cms-lines i:nth-child(3){width:65%}.cms-code{position:absolute;bottom:15px;font-size:9px;color:#9dbb80;letter-spacing:1px}.functional-badge{position:absolute;bottom:12px;right:14px;background:#34442a;color:#c0f870;font-size:8px;letter-spacing:1px;padding:6px 9px;border-radius:3px}.functional-card .scope-note{font-size:9px;margin-top:9px}.design-b .contact{background:#1a1f17!important;color:#e5ebdf!important;border-top:1px solid #3a4532}.design-b .contact-heading>.eyebrow,.design-b .contact-details>.eyebrow{color:#b3d78e}.design-b .contact-heading>p:last-child,.design-b .contact .form-note,.design-b .contact .contact-signoff{color:#97a68a}.design-b .contact label{color:#cbd5c1}.design-b .contact label>span{color:#a8d17e}.design-b .contact input,.design-b .contact textarea{border-color:#48543e;color:#edf2e7}.design-b .contact input::placeholder,.design-b .contact textarea::placeholder{color:#7c8a70}.design-b .contact input:focus,.design-b .contact textarea:focus{border-color:#b5e583}.design-b .contact-details dt{color:#819374}.design-b .contact .map-link{border-color:#536448;color:#bfceaF}.design-b .send-inquiry{background:#b6dd8c;color:#15210d}.design-b .contact #form-status{color:#b6cd9f}
@media(max-width:760px){.design-b .b-unified-grid{grid-template-columns:1fr;gap:38px}.cms-sidebar{padding:18px 10px;gap:17px}.cms-content{padding:18px 15px}.cms-content strong{font-size:20px}.cms-code{bottom:12px}.functional-badge{font-size:7px}.functional-card .scope-note{line-height:1.8}}
.design-a .functional-visual{background:#e9eff8!important}.design-a .cms-preview{background:#fff;border-color:#ced9e7}.design-a .cms-sidebar{background:#eff4fb;border-color:#d3dfec}.design-a .cms-sidebar b{color:#1559ec}.design-a .cms-sidebar span{color:#73849d}.design-a .cms-content small,.design-a .cms-code{color:#6a7f9b}.design-a .cms-content strong{color:#203653}.design-a .cms-lines i{background:#e0e8f3}.design-a .functional-badge{background:#d7e5fb;color:#1559ec}
/* B contact: electric lime accents around a distinct charcoal panel. */
.design-b .contact{position:relative;background:#232429!important;border-top:8px solid #c0f870;box-shadow:inset 0 1px 0 #ffffff0a;margin-top:35px;overflow:hidden}.design-b .contact::before{content:'↗';position:absolute;right:5%;top:27px;font-size:165px;line-height:1;color:#c0f870;font-family:Arial,sans-serif;pointer-events:none}.design-b .contact-heading{padding-right:155px}.design-b .contact-heading h2{color:#f2f3ed}.design-b .contact-heading>.eyebrow{color:#c0f870;letter-spacing:2px}.design-b .contact-heading>p:last-child{color:#a7a9a4;max-width:280px;line-height:1.9}.design-b .contact-layout{padding-top:35px;border-top:1px solid #48494b}.design-b .contact-details>.eyebrow{color:#c0f870}.design-b .contact label{color:#e0e1dc}.design-b .contact label>span{color:#c0f870}.design-b .contact input,.design-b .contact textarea{border-color:#54555a}.design-b .contact input::placeholder,.design-b .contact textarea::placeholder{color:#92949c}.design-b .contact input:focus,.design-b .contact textarea:focus{border-color:#c0f870}.design-b .contact-details dt{color:#9b9da6}.design-b .contact-details dd{color:#f0f1eb}.design-b .contact .map-link{color:#c0f870;border-color:#788b5b}.design-b .contact .contact-signoff,.design-b .contact .form-note{color:#a1a39d}.design-b .send-inquiry{background:#c0f870;color:#142008;transition:background .2s,transform .2s}.design-b .send-inquiry:hover{background:#d0ff90;transform:translateY(-2px)}.design-b .send-inquiry:focus-visible{outline-color:#c0f870}.design-b .contact #form-status{color:#c0f870}
@media(max-width:760px){.design-b .contact{margin-top:20px;border-top-width:6px}.design-b .contact::before{font-size:90px;right:6%;top:35px}.design-b .contact-heading{padding-right:65px}.design-b .contact-heading h2{font-size:30px!important}.design-b .contact-heading>.eyebrow{font-size:8px;letter-spacing:1px}.design-b .contact-heading>p:last-child{font-size:11px}.design-b .contact-layout{padding-top:25px}}
/* Compact, expandable portfolio shared by A and B. */
#portfolio .project-grid,.design-b #portfolio .b-unified-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px;align-items:start}#portfolio .project[hidden],.portfolio-more[hidden]{display:none!important}#portfolio .project{margin:0!important;min-width:0}#portfolio .project-image,.design-b #portfolio .project-image{aspect-ratio:1.4}#portfolio .project-meta{gap:10px;margin-top:16px;align-items:start}#portfolio .project-meta h3{font-size:18px;line-height:1.5}#portfolio .project-meta>span{font-size:7px;margin-top:6px}#portfolio .project>p{font-size:11px;line-height:1.8}#portfolio .candidate-label,#portfolio .scope-note{font-size:9px;line-height:1.8;margin-top:8px}.portfolio-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 28px;gap:20px}.portfolio-filters{display:flex;gap:7px;flex-wrap:wrap}.portfolio-filters button{font:inherit;font-size:11px;padding:9px 15px;border:1px solid #d7e1ee;border-radius:25px;background:transparent;color:#68768a;cursor:pointer}.portfolio-filters button span{font-size:8px;margin-left:4px}.portfolio-filters button[aria-pressed=true]{background:#1559ec;color:white;border-color:#1559ec}.portfolio-count{font-size:8px;letter-spacing:1px;color:var(--muted);white-space:nowrap}.portfolio-more{display:block;margin:40px auto 0;padding:13px 30px;font:inherit;font-size:12px;background:transparent;border:1px solid #c6d1e1;color:inherit;cursor:pointer;border-radius:25px}.design-b .portfolio-filters button{border-color:#3c4732;color:#a5b49a}.design-b .portfolio-filters button[aria-pressed=true]{background:#c0f870;border-color:#c0f870;color:#17210e}.design-b .portfolio-more{border-color:#52633f;color:#c0f870}.cms-content strong{font-size:16px!important}.cms-sidebar{padding:14px 8px;gap:13px}.cms-sidebar b{font-size:8px}.cms-sidebar span{font-size:6px}.cms-content{padding:15px 12px}.cms-content small{font-size:5px}.cms-code{font-size:7px}.cms-lines{gap:7px}.cms-lines i{height:5px}.functional-badge{font-size:6px;padding:4px 7px}
@media(min-width:761px) and (max-width:1050px){#portfolio .project-meta{flex-direction:column;gap:3px}#portfolio .project-meta h3{font-size:16px}#portfolio .project-meta>span{margin:0}.cms-content strong{font-size:13px!important}.cms-sidebar{gap:10px}.cms-content{padding:10px 8px}.cms-code{font-size:5px;bottom:9px}}
@media(max-width:760px){#portfolio .project-grid,.design-b #portfolio .b-unified-grid{grid-template-columns:1fr;gap:35px}#portfolio .project-meta{flex-direction:row;align-items:center}#portfolio .project-meta h3{font-size:21px}#portfolio .project-meta>span{font-size:8px;margin:0}.portfolio-toolbar{align-items:start;flex-direction:column;gap:12px}.portfolio-filters{gap:6px}.portfolio-filters button{font-size:10px;padding:8px 13px}.cms-content strong{font-size:21px!important}.cms-sidebar{padding:18px 10px;gap:18px}.cms-sidebar b{font-size:10px}.cms-sidebar span{font-size:8px}.cms-content{padding:20px 16px}.cms-content small{font-size:7px}.cms-code{font-size:9px}.functional-badge{font-size:7px}}
.system-art{width:100%;height:100%;position:relative;padding:28px 25px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(140deg,#eaf1fc,#f5f8fd);color:#1e385c;overflow:hidden}.system-kicker{font-size:8px;letter-spacing:1.3px;color:#6083ae}.system-art>strong{font-size:24px;line-height:1.5;letter-spacing:-1px;max-width:88%;position:relative;z-index:1;margin:18px 0}.system-rule{width:35px;height:3px;background:#1559ec;margin-bottom:15px}.system-scope{font-size:10px;line-height:1.8;position:relative;z-index:1}.system-foot{font-size:7px;letter-spacing:1px;margin-top:23px;color:#7791af}.system-brace{position:absolute;right:10px;bottom:-12px;font-size:100px;line-height:1;color:#d9e5f5;letter-spacing:-15px}.design-b .system-art{background:linear-gradient(140deg,#253020,#182013);color:#e1ecd7}.design-b .system-kicker,.design-b .system-foot{color:#99b181}.design-b .system-rule{background:#c0f870}.design-b .system-brace{color:#33422b}
@media(max-width:1050px) and (min-width:761px){.system-art{padding:16px}.system-art>strong{font-size:18px;margin:12px 0}.system-foot{margin-top:14px}.system-scope{font-size:8px}}
/* Stronger filter and project-count typography. */
.portfolio-filters button{font-size:13px;font-weight:600;padding:10px 17px}.portfolio-filters button span{font-size:12px;font-weight:700;margin-left:7px;font-variant-numeric:tabular-nums}.portfolio-count{font-size:13px;font-weight:700;letter-spacing:1px;color:#526780;font-variant-numeric:tabular-nums}.design-b .portfolio-count{color:#b9c9a7}.portfolio-more{font-weight:600}#portfolio .project-meta h3{font-weight:700}#portfolio .project>p{font-weight:500}#portfolio .project-meta>span{font-weight:600}#portfolio .candidate-label{font-weight:500}.design-b .portfolio-filters button{font-weight:600}
@media(max-width:760px){.portfolio-filters button{font-size:12px;padding:9px 13px}.portfolio-filters button span{font-size:12px;margin-left:5px}.portfolio-count{font-size:13px;letter-spacing:.7px}}
/* Align button text and arrow on the same vertical center. */
.primary,.send-inquiry{align-items:center;line-height:1.5}
.primary>span,.send-inquiry>span{display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}
/* Gentle motion for each direction's hero symbol. */
@keyframes aqua-float{
    0%,100%{transform:translateY(0) rotate(-15deg)}
    50%{transform:translateY(-16px) rotate(-11deg)}
}
@keyframes aqua-orbit-drift{
    0%,100%{transform:rotate(-32deg) translateY(0)}
    50%{transform:rotate(-26deg) translateY(5px)}
}
@keyframes aqua-arrow-launch{
    0%,55%,100%{transform:translate(0,0);opacity:1}
    70%{transform:translate(13px,-13px);opacity:1}
    82%{transform:translate(18px,-18px);opacity:.55}
    83%{transform:translate(-10px,10px);opacity:0}
    95%{transform:translate(0,0);opacity:1}
}
@media(prefers-reduced-motion:no-preference){
    .design-a .glass{animation:aqua-float 6s ease-in-out infinite}
    .design-a .orbit-one{animation:aqua-orbit-drift 9s ease-in-out infinite}
    .design-b .hero h1>i{display:inline-block;animation:aqua-arrow-launch 5.5s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center}
}
@media(prefers-reduced-motion:reduce){
    .design-a .glass,.design-a .orbit-one,.design-b .hero h1>i{animation:none!important}
}
/* Quicker hero cue and restrained one-time scroll reveals. */
@media(prefers-reduced-motion:no-preference){
    .design-b .hero h1>i{animation-duration:2.8s}
    .reveal-pending{opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease;transition-delay:var(--reveal-delay,0ms)}
    .reveal-pending.is-revealed{opacity:1;transform:translateY(0)}
}
@media(prefers-reduced-motion:reduce){
    .reveal-pending{opacity:1!important;transform:none!important;transition:none!important}
}
.logo .brand-dot{display:inline-block;width:7px;height:7px;margin:0 0 4px 5px;border-radius:50%;background:#68dce9;vertical-align:baseline}
.design-b .logo .brand-dot{background:#c0f870}
.logo .brand-dot{margin-bottom:0;vertical-align:baseline;transform:translateY(1px)}
@media(max-width:760px){
    body>header,#app>header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);box-shadow:0 3px 16px #142b4910}
    .design-b #app>header{background:rgba(17,19,16,.97);border-bottom-color:#3b4533;box-shadow:0 3px 16px #0003}
    html{scroll-padding-top:92px}
    section[id]{scroll-margin-top:8px}
    dialog{z-index:40}
}
@media(max-width:760px){
    header nav>a:first-child{display:none}
    header nav>a:nth-child(2){display:inline-block}
}
.grecaptcha-badge{visibility:hidden;}
.contact .captcha-notice{font-size:11px!important;line-height:1.7;margin:10px 0 0;color:#66717e;opacity:1!important;}
.design-b .contact .captcha-notice{color:#a1a39d;}
