:root{--red:#eb1d25;--blue:#0866d5;--yellow:#ffcc14;--green:#068c4d;--gray:#7d8394;--navy:#082f79;--ink:#10203e;--muted:#52627d;--cream:#fffdf8;--line:#e9eaf0;--shadow:0 10px 30px rgba(18,45,85,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--cream);font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1,h2,.brand{font-family:Fredoka,Inter,Arial,sans-serif}a:focus-visible,button:focus-visible{outline:3px solid #075dd0;outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:99;background:#111;color:white;padding:12px;top:-80px;left:10px}.skip-link:focus{top:10px}
.red{--brick:var(--red);--dark:#ae0b10}.blue{--brick:var(--blue);--dark:#064d9f}.yellow{--brick:var(--yellow);--dark:#e5a902}.green{--brick:var(--green);--dark:#076638}.gray{--brick:#8993a4;--dark:#6b7485}
.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:83px;padding:14px max(5vw,calc((100vw - 1330px)/2));background:rgba(255,255,255,.96);box-shadow:0 2px 18px rgba(17,43,75,.075);backdrop-filter:blur(15px)}.brand{display:flex;align-items:center;gap:15px;color:var(--navy);font-size:clamp(21px,2vw,30px);font-weight:600;white-space:nowrap;line-height:1}.brand strong{font-weight:700}.logo-brick{position:relative;display:block;width:43px;height:29px;transform:rotate(-10deg);border-radius:5px;background:linear-gradient(145deg,#ff474b,var(--brick) 65%,var(--dark));box-shadow:inset 0 3px #fff6,0 4px 9px #202a3d3d}.logo-brick:before,.skill-brick:before,.floating-label:before,.card-top:before{content:"";position:absolute;top:-8px;left:12%;height:10px;width:17px;border-radius:4px 4px 1px 1px;background:var(--brick);box-shadow:20px 0 var(--brick);filter:brightness(1.13)}.site-nav{display:flex;align-items:center;gap:27px}.site-nav a{font-size:13px;font-weight:800;color:#254268;transition:color .2s}.site-nav a:hover{color:var(--blue)}.site-nav .nav-contact{padding:10px 17px;color:#fff;border-radius:9px;background:var(--blue);box-shadow:0 5px 10px #0866d526}.site-nav .nav-contact:hover{color:#fff;background:#074fab}.menu-toggle{display:none;border:1px solid #dce2ec;border-radius:8px;background:white;padding:8px 12px;color:#0c3879;font-weight:800}
.hero{position:relative;display:grid;grid-template-columns:49% 51%;align-items:center;min-height:580px;padding:62px max(5vw,calc((100vw - 1330px)/2)) 48px;overflow:hidden;background:radial-gradient(ellipse at 65% 40%,#fff 20%,#fff5e5 100%);border-bottom:1px solid #ece4d8}.hero-content{position:relative;z-index:4;max-width:625px}.eyebrow{display:inline-flex;align-items:center;gap:9px;letter-spacing:.095em;font-size:12px;font-weight:800;color:#073b83;margin-bottom:24px}.eyebrow-dot{width:9px;height:9px;background:var(--red);border-radius:3px;transform:rotate(18deg)}.hero h1{font-size:clamp(45px,4.65vw,75px);line-height:.99;color:#0b1633;margin-bottom:22px}.hero h1 span{color:var(--blue)}.hero-intro{font-size:clamp(15px,1.12vw,18px);line-height:1.6;max-width:570px;color:#2b3f60;margin-bottom:14px}.hero-intro strong{color:#0b367b}.hero-detail{max-width:565px;font-size:14px;color:#556580;line-height:1.65;margin-bottom:22px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:45px;padding:12px 17px;border-radius:9px;font-weight:800;font-size:13px;transition:transform .23s,box-shadow .23s;white-space:nowrap}.btn:hover{transform:translateY(-3px)}.btn-primary{color:white;background:linear-gradient(145deg,#ff3f42,#dd0712);box-shadow:inset 0 3px #fff5,0 7px 14px #e6111e33}.btn-secondary{background:white;color:#0c4393;border:1px solid #c9dafa;box-shadow:0 6px 12px #12325e12}.availability{display:flex;align-items:center;gap:8px;margin-top:20px;color:#306644;font-weight:700;font-size:11px;line-height:1.5}.availability span{color:#059451;font-size:10px}.hero-art{height:460px;min-width:0;position:relative;isolation:isolate}.hero-halo{position:absolute;z-index:-1;left:17%;top:0;width:75%;height:100%;background:radial-gradient(ellipse,#ffecc1 0,rgba(255,231,180,.28) 48%,transparent 72%)}.hero-figure{position:absolute;z-index:2;left:49%;bottom:-51px;height:520px;max-width:none;width:auto;transform:translateX(-43%);filter:drop-shadow(0 17px 8px #0b255b20);animation:float 5s ease-in-out infinite}.floating-label{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:13px;font-weight:800;white-space:nowrap;border-radius:8px;padding:10px 15px;background:linear-gradient(155deg,color-mix(in srgb,var(--brick),white 15%),var(--brick) 55%,var(--dark));box-shadow:inset 0 3px #fff5,0 7px 13px #1d2d4d24}.floating-label.yellow{color:#161b26}.floating-label.gray{color:#fff}.floating-label:before{top:-6px;width:11px;height:8px;left:17%;box-shadow:18px 0 var(--brick),36px 0 var(--brick)}.floating-label.left.top{left:0;top:30px}.floating-label.left.middle{left:-5%;top:177px}.floating-label.left.bottom{left:5%;top:326px}.floating-label.right.top{right:0;top:49px}.floating-label.right.middle{right:-2%;top:208px}.floating-label.right.bottom{right:0;top:356px}.hero-deco{position:absolute;width:100px;height:48px;border-radius:7px;background:var(--brick);opacity:.2;transform:rotate(-20deg)}.deco-a{left:-50px;top:155px}.deco-b{right:-45px;bottom:100px}
.section{padding:75px max(5vw,calc((100vw - 1330px)/2)) 82px}.section-heading{max-width:780px;margin-bottom:31px}.overline{font-size:12px;letter-spacing:.13em;font-weight:800;color:#0d62c4;margin-bottom:10px}.section-heading h2{font-size:clamp(32px,3.3vw,49px);margin-bottom:12px;color:#0a1b41}.section-heading h2 span{color:var(--blue)}.section-heading>p:last-child{font-size:15px;color:#50637d;max-width:710px}
.role-fit{background:#fff;border-bottom:1px solid var(--line)}.fit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.fit-card{border:1px solid #e7eaf0;box-shadow:var(--shadow);border-radius:13px;background:white;overflow:hidden;transition:transform .22s}.fit-card:hover,.project-card:hover{transform:translateY(-4px)}.card-top{height:56px;position:relative;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--brick),white 13%),var(--brick) 65%,var(--dark));color:#fff;padding:10px 20px;font-family:Fredoka,sans-serif;font-size:26px;font-weight:700}.card-top.yellow{color:#1c2430}.card-top:before{left:18px;top:-7px;box-shadow:24px 0 var(--brick),48px 0 var(--brick);width:13px;height:9px}.fit-body{padding:23px 20px 25px;min-height:229px}.fit-kicker{color:#0e68ce;font-size:10px;letter-spacing:.1em;font-weight:800;margin-bottom:7px}.fit-body h3{font-family:Fredoka,Inter,sans-serif;font-size:23px;color:#142c56;margin-bottom:11px}.fit-body>p:last-child{font-size:13px;line-height:1.62;color:#58687c}.role-note{font-size:14px;line-height:1.65;background:#f1f7ff;border-left:4px solid var(--blue);padding:17px 21px;border-radius:0 9px 9px 0;margin-top:22px;color:#335579}
.projects-section{background:#fffaf3}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{background:white;border:1px solid #e6e7eb;border-radius:14px;overflow:hidden;box-shadow:var(--shadow);transition:transform .22s}.project-photo{position:relative;overflow:hidden}.project-photo img{width:100%;height:215px;object-fit:cover;transition:transform .3s}.project-card:hover .project-photo img{transform:scale(1.035)}.project-number{position:absolute;top:14px;left:15px;background:#fff;padding:4px 12px;border-radius:7px;color:#0b438f;font-family:Fredoka,sans-serif;font-weight:700;box-shadow:0 3px 10px #0002}.project-content{padding:24px 23px 26px}.project-origin{font-size:10px;font-weight:800;letter-spacing:.1em;color:#0866cc;margin-bottom:8px}.project-content h3{font-family:Fredoka,sans-serif;font-size:24px;color:#0d2755;line-height:1.12;min-height:55px;margin-bottom:13px}.project-content>p:not(.project-origin){font-size:13px;line-height:1.65;color:#526480;min-height:106px}.pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:17px}.pills span{font-size:10px;font-weight:800;background:#eaf3ff;color:#0e54a2;padding:7px 9px;border-radius:18px}.pills span:nth-child(2){background:#fff1be;color:#7e5400}.pills span:nth-child(3){background:#e4f6ec;color:#076e41}.pills span:nth-child(4){background:#fce7e8;color:#a6192f}.illustration-note{color:#728198;font-size:11px;margin-top:16px}
.background-section{background:#fff;border-top:1px solid #fff;border-bottom:1px solid var(--line)}.background-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.background-card{display:flex;gap:19px;align-items:flex-start;border:1px solid #e5eaf0;border-radius:13px;padding:24px;background:#fff;box-shadow:0 7px 20px #1534620a}.background-card.featured{border-color:#b8d5fd;background:#f7faff}.background-mark{position:relative;background:var(--brick);color:#fff;width:52px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex:none;font-size:24px;box-shadow:inset 0 3px #fff5,0 5px 8px #0002}.background-mark.yellow{color:#0d1f3b}.timeline{font-size:10px;letter-spacing:.1em;font-weight:800;color:#1560bf;margin-bottom:5px}.background-card h3{font-family:Fredoka,sans-serif;color:#092d68;font-size:24px;margin-bottom:4px}.position{font-weight:800;font-size:12px;margin-bottom:11px}.background-card p:last-child{color:#56667d;font-size:13px;line-height:1.65}.mini-history{margin-top:17px;border:1px solid #dbe9fc;background:#f3f8ff;padding:15px 18px;border-radius:10px;font-size:12px;color:#395878;line-height:1.6}.mini-history strong{color:#133f7b}
.toolkit-section{background:#fffaf3}.toolkit-wrap{background:white;border:1px solid #e7e9ed;box-shadow:var(--shadow);padding:31px;border-radius:13px}.skill-list{display:flex;gap:20px 15px;flex-wrap:wrap;justify-content:center;padding-top:13px}.skill-brick{position:relative;display:inline-flex;min-width:114px;align-items:center;justify-content:center;min-height:53px;padding:12px 17px;border-radius:7px;background:linear-gradient(155deg,color-mix(in srgb,var(--brick),white 13%),var(--brick) 60%,var(--dark));box-shadow:inset 0 4px #fff5,inset 0 -3px #0002,0 7px 13px #102a5f22;color:#fff;font-size:13px;font-weight:800;transition:transform .22s}.skill-brick.yellow{color:#172036}.skill-brick:before{left:19px;top:-9px;width:15px;height:11px;box-shadow:24px 0 var(--brick),48px 0 var(--brick)}.skill-brick:hover{transform:translateY(-6px) rotate(-2deg)}.toolkit-footer{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:36px;padding-top:22px}.toolkit-footer p{font-size:13px;color:#53637a}.toolkit-footer strong{color:#10386f}
.contact-section{background:#fff;padding:70px max(5vw,calc((100vw - 1330px)/2))}.contact-card{padding:39px 46px;border-radius:18px;background:linear-gradient(115deg,#e6f3ff,#fff9e8);border:1px solid #d2e3fd;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-card h2{font-size:clamp(29px,3vw,43px);margin-bottom:11px}.contact-card h2 span{color:var(--blue)}.contact-card p:not(.overline){font-size:13px;color:#4c607c;line-height:1.6}.contact-location{margin-top:10px;font-size:11px!important;font-weight:700}.contact-actions{display:flex;flex-wrap:wrap;gap:10px}.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px max(5vw,calc((100vw - 1330px)/2));background:white;border-top:1px solid var(--line);color:#738094;font-size:11px}
.reveal{opacity:0;transform:translateY(19px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}@keyframes float{0%,100%{transform:translateX(-43%) translateY(0)}50%{transform:translateX(-43%) translateY(-8px)}}
@media(max-width:1190px){.site-header{padding-inline:28px}.site-nav{gap:17px}.hero,.section,.contact-section{padding-left:30px;padding-right:30px}.hero{grid-template-columns:52% 48%}.hero-art{height:430px}.hero-figure{height:475px;bottom:-28px}.floating-label{font-size:11px;padding:9px 11px}.floating-label.left.middle{left:-3%}.floating-label.right.middle{right:-1%}.project-photo img{height:190px}}
@media(max-width:980px){.hero{grid-template-columns:1fr;min-height:0;padding-top:55px}.hero-content{max-width:750px}.hero-art{width:min(100%,690px);height:465px;margin:8px auto 0}.hero-figure{height:485px;bottom:-35px}.floating-label.left.top{left:2%}.floating-label.left.middle{left:0}.floating-label.left.bottom{left:8%}.floating-label.right.top{right:2%}.floating-label.right.middle{right:0}.floating-label.right.bottom{right:4%}.fit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fit-body{min-height:185px}.projects-grid{gap:13px}.project-content{padding:20px 15px}.project-content h3{font-size:21px}.project-photo img{height:165px}.project-content>p:not(.project-origin){min-height:140px}.site-nav{gap:12px}}
@media(max-width:760px){.site-header{min-height:69px;padding:12px 18px;flex-wrap:wrap}.brand{font-size:22px}.menu-toggle{display:block}.site-nav{display:none;flex-basis:100%;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:7px 0 3px}.site-nav.open{display:flex}.site-nav a{padding:12px 9px;border-top:1px solid #eef1f5}.site-nav .nav-contact{padding:12px 14px;margin-top:5px;text-align:center}.hero,.section,.contact-section{padding-inline:20px}.hero{padding-top:45px}.hero h1{font-size:clamp(46px,7vw,60px)}.hero-art{height:420px}.hero-figure{height:430px}.floating-label{font-size:10px}.fit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.projects-grid{grid-template-columns:1fr;gap:19px}.project-photo img{height:255px}.project-content{padding:24px}.project-content h3{min-height:0}.project-content>p:not(.project-origin){min-height:0}.background-grid{grid-template-columns:1fr}.contact-card{padding:30px 24px;flex-direction:column;align-items:flex-start}.site-footer{padding-inline:20px;flex-direction:column;align-items:flex-start;gap:7px}}
@media(max-width:520px){.hero{padding-top:35px}.eyebrow{font-size:10px}.hero h1{font-size:clamp(41px,9.2vw,53px)}.hero-intro{font-size:14px}.hero-detail{font-size:12px}.availability{font-size:10px}.hero-actions{gap:8px}.btn{font-size:12px;padding:11px 12px}.hero-art{height:340px;margin-top:25px}.hero-figure{height:362px;bottom:-32px;left:46%}.floating-label{font-size:9px;padding:7px 8px;gap:5px}.floating-label:before{width:8px;height:6px;box-shadow:13px 0 var(--brick),26px 0 var(--brick)}.floating-label.left.top{left:0;top:10px}.floating-label.left.middle{left:0;top:125px}.floating-label.left.bottom{left:4%;top:243px}.floating-label.right.top{right:0;top:38px}.floating-label.right.middle{right:0;top:163px}.floating-label.right.bottom{right:0;top:265px}.section{padding-block:56px}.section-heading h2{font-size:35px}.section-heading>p:last-child{font-size:13px}.fit-grid{grid-template-columns:1fr}.fit-body{min-height:0;padding:20px}.card-top{height:48px}.role-note{font-size:12px}.project-photo img{height:220px}.toolkit-wrap{padding:25px 14px}.skill-list{gap:18px 12px}.skill-brick{min-width:104px;min-height:46px;font-size:11px;padding:10px}.toolkit-footer{flex-direction:column;gap:13px}.contact-section{padding-block:55px}.contact-actions{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-figure{animation:none}.reveal{opacity:1;transform:none;transition:none}*,*::before,*::after{transition-duration:.01ms!important}}
/* Keep the identity and mobile navigation toggle on the same header row. */
@media(max-width:520px){.site-header{gap:8px}.brand{font-size:19px;gap:9px}.logo-brick{width:35px;height:25px}.menu-toggle{font-size:12px;padding:7px 9px}}
