@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#26251e;background:#f7f7f4;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f7f7f4;--surface: #ffffff;--surface-raised: #fafaf7;--line: #e6e5e0;--text: #26251e;--muted: #625f58;--accent: #f54e00;--accent-strong: #d04200;--accent-rgb: 245, 78, 0;--ink-rgb: 38, 37, 30;--heading-font: "Manrope", sans-serif;--content-width: 1120px}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:90px}body{min-width:320px;margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.7}body,button,input,textarea{font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.container{width:min(var(--content-width),calc(100% - 48px));margin-inline:auto}.site-header{position:sticky;z-index:20;top:0;display:flex;width:100%;height:78px;align-items:center;justify-content:space-between;gap:28px;padding-inline:max(24px,calc((100vw - var(--content-width)) / 2));border-bottom:1px solid var(--line);background:#0b1220e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;flex:0 0 auto;align-items:center;gap:11px;font-family:var(--heading-font);font-size:14px;font-weight:800;line-height:1.25}.brand small{display:block;margin-top:3px;color:var(--muted);font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;letter-spacing:.06em}.brand-image{display:block;width:320px;max-height:64px;flex:0 1 auto;object-fit:contain;object-position:left center}.main-nav,.header-actions{display:flex;align-items:center}.main-nav{gap:34px;margin-left:auto}.main-nav a{color:var(--muted);font-size:14px;transition:color .2s ease}.main-nav a:hover,.main-nav a:focus-visible{color:var(--accent)}.header-actions{gap:16px}.language-switcher{display:flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:999px}.language-switcher button{min-width:33px;padding:5px 7px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:11px;font-weight:700}.language-switcher button.active{background:#70dfc329;color:var(--accent)}.header-contact{padding:9px 16px;border:1px solid rgba(112,223,195,.55);border-radius:999px;color:var(--accent);font-size:13px;font-weight:700;transition:background .2s ease,color .2s ease}.header-contact:hover{background:var(--accent);color:var(--bg)}.hero{position:relative;overflow:hidden;padding:92px 0 88px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 82% 36%,rgba(37,113,119,.22),transparent 38%),var(--bg)}.hero-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(310px,.75fr);align-items:center;gap:clamp(44px,8vw,110px)}.hero-content{max-width:640px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 18px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.14em;line-height:1.5;text-transform:uppercase}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #70dfc31f}.hero h1,.section-heading h2,.contact-content h2{margin:0;font-family:var(--heading-font);font-weight:800;letter-spacing:-.045em;line-height:1.12}.hero h1{max-width:680px;font-size:clamp(42px,5.1vw,68px)}.hero-copy{max-width:620px;margin:24px 0 28px;color:var(--muted);font-size:17px;line-height:1.8}.btn-wrapper{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:9px;padding:11px 19px;border:1px solid transparent;border-radius:10px;font-size:14px;font-weight:700;transition:transform .2s ease,background .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent);color:#0b201e}.btn-primary:hover{background:#8cebd4}.btn-secondary{border-color:var(--line);background:#ffffff06;color:var(--text)}.btn-secondary:hover{border-color:#70dfc38c}.hero-proof{display:flex;flex-wrap:wrap;gap:9px;margin-top:35px}.hero-proof span{padding:7px 11px;border:1px solid var(--line);border-radius:999px;color:#c4d0dc;font-size:11px}.hero-portrait{position:relative;min-height:390px;margin:0;padding:18px;border:1px solid rgba(197,215,232,.16);border-radius:28px;background:radial-gradient(ellipse at 50% 42%,rgba(112,223,195,.11),transparent 55%),linear-gradient(145deg,#182a39,#101a27 76%);animation:portrait-frame-breathe 5.5s ease-in-out infinite}.hero-portrait:before{position:absolute;z-index:0;top:38px;right:12%;bottom:18px;left:12%;border:1px solid rgba(112,223,195,.11);border-radius:48% 48% 22px 22px/30% 30% 22px 22px;background:radial-gradient(ellipse at 50% 28%,rgba(112,223,195,.15),transparent 65%),linear-gradient(160deg,#70dfc309,#060d1633);content:""}.hero-portrait:after{position:absolute;z-index:1;top:-1px;right:-1px;bottom:-1px;left:-1px;padding:1px;border-radius:inherit;background:linear-gradient(112deg,transparent 38%,rgba(112,223,195,.92) 50%,transparent 62%);background-size:260% 260%;content:"";opacity:.2;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:portrait-frame-sweep 5.5s ease-in-out infinite}.hero-portrait>img{position:relative;z-index:1;display:block;width:92%;height:clamp(420px,36vw,480px);margin-inline:auto;border-radius:19px;object-fit:contain;object-position:center bottom;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%);filter:drop-shadow(0 14px 22px rgba(0,0,0,.3))}.portrait-glow{position:absolute;top:18%;right:-12%;width:65%;aspect-ratio:1;border-radius:50%;background:#70dfc329;filter:blur(70px)}.cert-badge{position:absolute;z-index:2;right:-18px;bottom:-70px;display:grid;width:min(300px,calc(100% + 38px));gap:7px;padding:9px;border:1px solid rgba(112,223,195,.24);border-radius:14px;background:#142237;box-shadow:0 18px 48px #00000052}.cert-badge-item{display:flex;min-width:0;align-items:center;gap:10px;padding:7px 9px;border-radius:9px}.cert-badge-item[href]{transition:background .2s ease}.cert-badge-item[href]:hover{background:#ffffff0f}.cert-badge img{width:38px;height:38px;flex:0 0 auto;border-radius:50%;background:#fff;object-fit:contain}.cert-badge strong,.cert-badge small{display:block}.cert-badge strong{font-size:12px}.cert-badge small{color:var(--muted);font-size:10px}.cert-link-icon{margin-left:auto;color:var(--accent)}.section{padding-block:92px}.section-heading{max-width:720px;margin-bottom:38px}.section-heading h2{font-size:clamp(32px,4vw,48px)}.section-heading>p:last-child{margin:17px 0 0;color:var(--muted)}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.focus-card,.capability-card{border:1px solid var(--line);border-radius:18px;background:var(--surface)}.focus-card{min-height:205px;padding:25px}.card-index{display:inline-block;margin-bottom:23px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.1em}.focus-card h3,.capability-card h3,.coffee-note h3,.approach-cards h3{margin:0;font-family:var(--heading-font);font-size:17px;font-weight:700;letter-spacing:-.02em}.focus-card p,.capability-card p,.coffee-note p,.approach-cards p{margin:9px 0 0;color:var(--muted);font-size:14px;line-height:1.75}.credentials-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:stretch;margin-top:56px}.credentials-row>div:first-child{padding:25px;border:1px solid var(--line);border-radius:18px;background:#ffffff05}.credentials-row .eyebrow{margin-bottom:14px}.credential{display:flex;align-items:center;gap:12px;padding-block:13px;border-top:1px solid var(--line)}.credential-icon{display:grid;width:31px;height:31px;flex:0 0 auto;place-items:center;border-radius:50%;background:#70dfc31f;color:var(--accent);font-weight:700}.credential strong,.credential small{display:block}.credential strong{font-size:13px}.credential small{color:var(--muted);font-size:11px}.credential>a{margin-left:auto;color:var(--accent)}.coffee-note{display:flex;align-items:flex-start;gap:18px;padding:28px;border:1px solid rgba(112,223,195,.16);border-radius:18px;background:linear-gradient(140deg,#70dfc314,#ffffff05)}.coffee-note>span{font-size:25px}.coffee-note h3{font-size:19px}.skills-section{border-block:1px solid var(--line);background:#0e1726}.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.capability-card{padding:27px}.capability-icon{display:grid;width:40px;height:40px;margin-bottom:23px;place-items:center;border:1px solid rgba(112,223,195,.2);border-radius:12px;background:#70dfc317;color:var(--accent);font-family:var(--heading-font);font-size:15px;font-weight:700}.capability-card h3{margin-top:20px;font-size:15px}.capability-card h3:first-of-type{margin-top:0}.capability-card p{margin-top:5px}.capability-card .muted-copy{margin-top:13px;font-size:12px}.approach-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:52px}.approach-layout .section-heading{margin:0}.approach-cards article{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:22px 0;border-top:1px solid var(--line)}.approach-cards article>span{color:var(--accent);font-size:12px;font-weight:700}.approach-cards p{margin-top:7px}.projects-section{position:relative;overflow:hidden;border-block:1px solid var(--line);background:radial-gradient(ellipse at 12% 48%,rgba(48,104,120,.13),transparent 38%),#0e1726}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:660px;gap:22px;align-items:stretch}.project-card{display:flex;min-width:0;height:100%;flex-direction:column;overflow:hidden;border:1px solid rgba(197,215,232,.13);border-radius:20px;background:linear-gradient(150deg,#1b2a3bf0,#0f1927fa);box-shadow:0 18px 48px #0000002e;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.project-card:hover{transform:translateY(-6px);border-color:#70dfc366;box-shadow:0 28px 70px #00000052,0 0 34px #70dfc312}.project-gallery{position:relative;display:grid;height:320px;flex:0 0 320px;overflow:hidden;isolation:isolate;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:10px;padding:20px;background:radial-gradient(ellipse at 52% 25%,rgba(112,223,195,.12),transparent 62%),linear-gradient(145deg,#121f2d,#0b1320 78%)}.project-gallery:before{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(202,219,235,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(202,219,235,.018) 1px,transparent 1px);background-size:30px 30px;content:""}.project-shot{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.62);border-radius:10px;background:#f4f6f9;box-shadow:0 10px 26px #00000047;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease}.project-shot img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .4s ease}.project-shot-1{z-index:1;grid-row:1 / 3;transform:perspective(1200px) rotateY(2deg)}.project-shot-2{transform:perspective(1100px) rotateY(-2deg) translateY(1px)}.project-shot-3{transform:perspective(1100px) rotateY(-2deg) translateY(-1px)}.project-shot-4{display:none}.project-card-1 .project-gallery{grid-template-columns:1.4fr .8fr}.project-card-1 .project-shot-1{grid-row:1 / 3}.project-card-1 .project-shot-2{grid-row:1}.project-card-1 .project-shot-3{grid-row:2}.project-card-1 .project-shot-4{position:absolute;right:5%;bottom:5%;z-index:2;display:block;width:31%;height:34%;border:3px solid #eaf0f5;border-radius:9px;transform:rotate(-2deg)}.project-card-1 .project-gallery,.project-card-2 .project-gallery{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);padding:18px 54px 48px}.project-carousel{position:absolute;top:17px;right:48px;bottom:47px;left:48px;display:grid;place-items:center}.project-carousel-stage{position:relative;width:auto;max-width:100%;height:100%;aspect-ratio:4 / 3;margin-inline:auto}.project-carousel .project-shot{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.78);border-radius:9px;background:#f4f6f9;box-shadow:0 15px 35px #00000052;transform:none;animation:carousel-slide-in .3s ease both}.project-carousel .project-shot img{object-fit:contain}.carousel-arrow{position:absolute;z-index:2;top:50%;display:grid;width:34px;height:34px;place-items:center;padding:0 0 3px;border:1px solid rgba(210,225,239,.16);border-radius:50%;background:#070e17b8;box-shadow:0 6px 18px #0003;color:#edf4fa;font-family:Arial,sans-serif;font-size:26px;line-height:1;transform:translateY(-50%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .2s ease,border-color .2s ease,color .2s ease}.carousel-arrow:hover,.carousel-arrow:focus-visible{border-color:#70dfc399;outline:none;background:#17343a;color:var(--accent)}.carousel-previous{left:12px}.carousel-next{right:12px}.carousel-dots{position:absolute;z-index:2;right:0;bottom:-30px;left:0;display:flex;justify-content:center;gap:7px}.carousel-dots button{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:#cbdae957;transition:width .2s ease,background .2s ease}.carousel-dots button:hover,.carousel-dots button:focus-visible{outline:2px solid rgba(112,223,195,.65);outline-offset:3px}.carousel-dots button.active{width:21px;background:var(--accent)}.project-card:hover .project-shot-1{transform:perspective(1200px) rotateY(0) translateY(-2px);box-shadow:0 17px 36px #0006}.project-card:hover .project-shot-2{transform:perspective(1100px) rotateY(0) translateY(-2px)}.project-card:hover .project-shot-3{transform:perspective(1100px) rotateY(0) translateY(0)}.project-card:hover .project-shot img{filter:saturate(1.04)}.project-copy{display:flex;min-height:0;flex:1;flex-direction:column;padding:25px 27px 28px}.project-type{margin:0 0 8px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.project-copy h3{margin:0;font-family:var(--heading-font);font-size:clamp(25px,2.5vw,32px);letter-spacing:-.04em}.project-description{min-height:76px;margin:12px 0 18px;color:var(--muted);font-size:13px;line-height:1.75}.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 auto;padding:0 0 22px;list-style:none}.project-tags li{padding:6px 9px;border:1px solid rgba(197,215,232,.12);border-radius:999px;background:#ffffff09;color:#c4d0dc;font-size:10px}.project-link{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;color:var(--accent);font-size:13px;font-weight:700;transition:gap .2s ease}.project-link:hover{gap:15px}.security-terminal{position:relative;z-index:1;width:min(100%,520px);grid-column:1 / -1;grid-row:1 / -1;align-self:center;margin:auto;overflow:hidden;border:1px solid rgba(166,185,255,.22);border-radius:13px;background:#0b111b;box-shadow:0 20px 55px #00000073,0 0 40px #5c73db1f;transform:perspective(1000px) rotateY(-3deg);transition:transform .4s ease,box-shadow .4s ease}.project-card:hover .security-terminal{transform:perspective(1000px) rotateY(0) translateY(-3px);box-shadow:0 24px 60px #00000080,0 0 48px #5c73db33}.terminal-top{display:flex;height:37px;align-items:center;gap:12px;padding-inline:13px;border-bottom:1px solid rgba(255,255,255,.08);background:#131c29;color:#9aabc1;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px}.terminal-lights{display:flex;gap:4px}.terminal-lights i{width:6px;height:6px;border-radius:50%;background:#f17878}.terminal-lights i:nth-child(2){background:#efc36f}.terminal-lights i:nth-child(3){background:#70dfc3}.terminal-lock{margin-left:auto;color:#70dfc3;font-size:8px}.terminal-body{padding:15px 17px 12px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.terminal-command{margin:0 0 11px;color:#d9e4ef;font-size:10px}.terminal-command b{margin-right:6px;color:#a7a0ff}.terminal-url{margin:0 0 12px;color:#a2b2c5;font-size:9px}.terminal-url strong{color:#dce7f4;font-weight:500}.terminal-result{display:grid;grid-template-columns:15px 1fr auto;align-items:center;gap:7px;padding:7px 0;border-top:1px solid rgba(255,255,255,.055);font-size:9px}.terminal-result>span{display:grid;width:13px;height:13px;place-items:center;border-radius:50%;background:#70dfc31f;color:#70dfc3;font-size:8px}.terminal-result.missing>span{background:#ffb9701f;color:#ffc275}.terminal-result code{overflow:hidden;color:#d9e4ef;text-overflow:ellipsis;white-space:nowrap}.terminal-result small{color:#8393a8;font-size:8px}.terminal-foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px;padding-top:9px;border-top:1px solid rgba(255,255,255,.09);color:#788ba2;font-size:7px;letter-spacing:.05em}.terminal-foot span:first-child{color:#70dfc3}.project-visual-security{place-items:center;padding:20px;background:radial-gradient(ellipse at 50% 55%,rgba(111,94,245,.19),transparent 60%),#0a101a}.project-visual-security:before{opacity:.62}.qa-placeholder{position:relative;z-index:1;display:grid;width:min(100%,520px);height:100%;min-height:225px;grid-column:1 / -1;grid-row:1 / -1;align-content:center;justify-items:center;gap:14px;margin:auto;padding:22px;border:1px dashed rgba(112,223,195,.28);border-radius:13px;background:linear-gradient(145deg,#70dfc30b,#a6b9ff0a)}.placeholder-slots{display:grid;width:100%;grid-template-columns:1.2fr .8fr;gap:10px}.placeholder-slot{display:grid;min-height:112px;align-content:center;justify-items:center;gap:7px;border:1px dashed rgba(197,215,232,.22);border-radius:9px;background:#070e174d;color:#8293a9}.placeholder-slot:first-child{min-height:145px}.placeholder-slot span{display:grid;width:27px;height:27px;place-items:center;border:1px solid rgba(112,223,195,.28);border-radius:50%;color:var(--accent);font-size:17px}.placeholder-slot small{font-size:9px}.placeholder-caption{color:#a0afc2;font-size:10px;letter-spacing:.05em}@keyframes carousel-slide-in{0%{opacity:.4;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.contact-section{padding-top:28px}.contact-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;padding:clamp(28px,5vw,58px);border:1px solid rgba(112,223,195,.2);border-radius:24px;background:radial-gradient(ellipse at 12% 20%,rgba(41,131,119,.16),transparent 45%),var(--surface)}.contact-content h2{font-size:clamp(34px,4vw,48px)}.contact-content>p:not(.eyebrow){color:var(--muted)}.contact-socials{display:grid;gap:9px;margin-top:30px}.contact-socials a{display:flex;align-items:center;gap:10px;color:#c7d2de;font-size:13px}.contact-socials a i{width:19px;color:var(--accent);font-size:17px}.contact-socials a span{margin-left:auto;color:var(--muted)}.contact-form{display:grid;align-content:center;gap:16px}.contact-form label{display:grid;gap:7px;color:#d7e0e9;font-size:12px;font-weight:600}.required-mark{color:var(--accent)}.field-error{color:#faa;font-size:12px;font-weight:500}.character-counter{justify-self:end;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}.input-field[aria-invalid=true]{border-color:#ff8080b3}.input-field{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;outline:none;background:#050a125c;color:var(--text);transition:border-color .2s ease}textarea.input-field{min-height:120px;resize:vertical}.contact-form .btn{justify-self:start}.contact-form button:disabled{cursor:wait;opacity:.7}.sending-overlay{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at center,#14323d85,#050a12db 68%);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);cursor:wait}.sending-dialog{position:relative;display:grid;width:min(360px,100%);justify-items:center;gap:12px;overflow:hidden;padding:26px 32px 28px;border:1px solid rgba(112,223,195,.25);border-radius:24px;background:radial-gradient(ellipse at 50% 30%,rgba(112,223,195,.11),transparent 55%),#101c2b;box-shadow:0 28px 90px #00000080,0 0 70px #42c5a614;color:var(--text);animation:loader-arrive .45s cubic-bezier(.2,.8,.2,1) both}.sending-dialog:after{position:absolute;right:-42px;bottom:-92px;width:190px;height:190px;border:1px solid rgba(112,223,195,.1);border-radius:50%;content:""}.sending-dialog p{margin:0;font-family:var(--heading-font);font-size:17px;font-weight:700}.loading-caption{color:var(--muted);font-size:12px}.mail-flight{position:relative;display:grid;width:176px;height:176px;margin-bottom:2px;place-items:center}.flight-orbit{position:absolute;display:block;border:1px solid rgba(112,223,195,.15);border-radius:50%;animation:orbit-spin 5s linear infinite}.flight-orbit i{position:absolute;top:50%;left:-4px;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px #70dfc3e6}.orbit-one{width:158px;height:158px}.orbit-two{width:122px;height:122px;border-style:dashed;animation-direction:reverse;animation-duration:8s}.orbit-two i{width:5px;height:5px;background:#a6b9ff;box-shadow:0 0 12px #a6b9ffe6}.mail-envelope{position:relative;z-index:1;display:grid;width:76px;height:62px;place-items:center;border:1px solid rgba(112,223,195,.45);border-radius:17px;background:linear-gradient(145deg,#183b43,#14263a 70%);box-shadow:0 10px 32px #00000047,0 0 25px #70dfc31f;animation:envelope-float 2.4s ease-in-out infinite}.mail-envelope svg{width:43px;height:36px;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mail-paper-plane{position:absolute;z-index:2;top:26px;right:14px;display:grid;width:37px;height:37px;place-items:center;border:1px solid rgba(112,223,195,.24);border-radius:12px;background:#172d3a;color:var(--accent);animation:plane-loop 2.8s ease-in-out infinite}.mail-paper-plane svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.flight-spark{position:absolute;z-index:2;color:var(--accent);animation:spark-twinkle 1.5s ease-in-out infinite}.spark-one{top:26px;left:27px;font-size:14px}.spark-two{right:25px;bottom:31px;color:#a6b9ff;font-size:18px;animation-delay:.55s}.loading-progress{display:flex;gap:7px;margin-top:4px}.loading-progress i{width:22px;height:3px;border-radius:99px;background:var(--accent);opacity:.2;animation:progress-glow 1.25s ease-in-out infinite}.loading-progress i:nth-child(2){animation-delay:.18s}.loading-progress i:nth-child(3){animation-delay:.36s}@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes portrait-frame-sweep{0%{background-position:120% 50%;opacity:.58}50%{background-position:-20% 50%;opacity:1}to{background-position:120% 50%;opacity:.58}}@keyframes portrait-frame-breathe{0%,to{box-shadow:0 0 rgba(var(--accent-rgb),0),inset 0 0 0 1px rgba(var(--accent-rgb),.12)}50%{box-shadow:0 0 28px rgba(var(--accent-rgb),.2),inset 0 0 0 1px rgba(var(--accent-rgb),.3)}}@keyframes envelope-float{0%,to{transform:translateY(4px) rotate(-3deg)}50%{transform:translateY(-5px) rotate(3deg)}}@keyframes plane-loop{0%,to{transform:translate(0) rotate(4deg)}50%{transform:translate(-13px,13px) rotate(-12deg)}}@keyframes spark-twinkle{0%,to{opacity:.35;transform:scale(.75)}50%{opacity:1;transform:scale(1.15)}}@keyframes progress-glow{0%,to{opacity:.2;transform:scaleX(.72)}50%{opacity:1;transform:scaleX(1)}}@keyframes loader-arrive{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.flash-messages{position:fixed;z-index:120;top:92px;right:24px;max-width:min(420px,calc(100vw - 48px));padding:13px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised);box-shadow:0 16px 45px #0000004d;font-size:14px;animation:loader-arrive .25s ease-out both}.flash-messages.success{border-color:#70dfc36b;color:var(--accent)}.flash-messages.error{border-color:#ff808059;color:#faa}.footer{padding-block:30px;border-top:1px solid var(--line)}.footer .container{display:flex;align-items:center;justify-content:space-between;gap:22px}.footer p{margin:0;color:var(--muted);font-size:11px}.footer-brand .brand-image{width:290px;max-height:58px}.back-top{color:var(--muted);font-size:12px}.back-top:hover{color:var(--accent)}@media(max-width:900px){.site-header{gap:16px;padding-inline:24px}.brand-image{width:250px;max-height:52px}.main-nav{gap:20px}.header-contact{display:none}.hero{padding-block:70px}.hero-layout{grid-template-columns:minmax(0,1fr) minmax(260px,.78fr);gap:36px}.hero-portrait{min-height:400px}.hero-portrait>img{width:92%;height:400px}.cert-badge{right:-8px;width:min(300px,calc(100% + 24px))}.approach-layout{gap:28px}.projects-grid{grid-auto-rows:660px}.project-gallery{height:300px;flex-basis:300px}.project-card-1 .project-gallery,.project-card-2 .project-gallery{padding:16px 48px 46px}.project-carousel{top:15px;right:43px;bottom:45px;left:43px}.carousel-previous{left:9px}.carousel-next{right:9px}}@media(max-width:640px){html{scroll-padding-top:112px}.container{width:min(100% - 36px,var(--content-width))}.site-header{height:auto;min-height:72px;flex-wrap:wrap;gap:0;padding:12px 18px 0}.brand{padding-bottom:10px}.brand-image{width:clamp(180px,48vw,230px);max-height:48px}.header-actions{margin-left:auto;padding-bottom:10px}.main-nav{order:3;width:calc(100% + 36px);justify-content:center;gap:clamp(20px,8vw,40px);margin-inline:-18px;padding:9px 15px 11px;border-top:1px solid var(--line)}.main-nav a{font-size:12px}.hero{padding-block:48px 58px}.hero-layout{grid-template-columns:1fr;gap:34px}.hero h1{font-size:clamp(39px,12vw,56px)}.hero-copy{margin-block:18px 23px;font-size:15px}.hero-portrait{width:min(100%,390px);min-height:360px;justify-self:center;padding:12px}.hero-portrait>img{width:92%;height:clamp(360px,112vw,430px)}.cert-badge{right:2px;bottom:-58px;width:min(300px,calc(100% - 24px));padding:7px}.cert-badge img{width:34px;height:34px}.section{padding-block:64px}.section-heading{margin-bottom:26px}.focus-grid,.capability-grid,.credentials-row,.projects-grid{grid-template-columns:1fr}.focus-card{min-height:auto}.card-index{margin-bottom:12px}.credentials-row{gap:14px;margin-top:34px}.approach-layout{grid-template-columns:1fr;gap:20px}.projects-grid{gap:16px}.projects-grid{grid-auto-rows:660px}.project-gallery,.project-card-1 .project-gallery{height:clamp(245px,72vw,320px);flex-basis:clamp(245px,72vw,320px);padding:12px;gap:7px}.project-card-1 .project-gallery,.project-card-2 .project-gallery{padding:12px 42px 43px}.project-carousel{top:12px;right:39px;bottom:42px;left:39px}.carousel-arrow{width:29px;height:29px;font-size:22px}.carousel-previous{left:6px}.carousel-next{right:6px}.project-copy{padding:21px}.project-description{min-height:0}.contact-section{padding-top:0}.contact-card{grid-template-columns:1fr;gap:28px;padding:25px 20px;border-radius:18px}.footer .container{flex-wrap:wrap}.footer p{order:3;width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bg)}.site-header{background:#f7f7f4eb}.main-nav a{color:#625f58}.main-nav a:hover,.main-nav a:focus-visible,.back-top:hover{color:var(--accent-strong)}.language-switcher{border-color:#cfcdc4}.language-switcher button.active{background:rgba(var(--accent-rgb),.1);color:var(--accent-strong)}.header-contact{border-color:rgba(var(--accent-rgb),.5);color:var(--accent-strong)}.header-contact:hover{background:var(--accent);color:#fff}.hero{background:radial-gradient(ellipse at 82% 36%,rgba(var(--accent-rgb),.07),transparent 38%),var(--bg)}.eyebrow,.card-index,.approach-cards article>span{color:var(--accent-strong)}.status-dot{background:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.12)}.hero-copy,.section-heading>p:last-child,.focus-card p,.capability-card p,.coffee-note p,.approach-cards p,.project-description,.contact-content>p:not(.eyebrow){color:var(--muted)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong)}.btn-secondary{border-color:#cfcdc4;background:#fff;color:var(--text)}.btn-secondary:hover{border-color:var(--accent)}.hero-proof span{border-color:#e6e5e0;color:#625f58}.hero-portrait{border-color:#e6e5e0;background:radial-gradient(ellipse at 50% 42%,rgba(var(--accent-rgb),.1),transparent 55%),linear-gradient(145deg,#fff,#efeee8 76%)}.hero-portrait:before{border-color:rgba(var(--accent-rgb),.13);background:radial-gradient(ellipse at 50% 28%,rgba(var(--accent-rgb),.11),transparent 65%),linear-gradient(160deg,#ffffff59,#e6e5e04d)}.hero-portrait:after{background:linear-gradient(112deg,transparent 38%,rgba(var(--accent-rgb),.72) 50%,transparent 62%)}.portrait-glow{background:rgba(var(--accent-rgb),.12)}.cert-badge{border-color:#e6e5e0;background:#fff;box-shadow:0 12px 32px rgba(var(--ink-rgb),.1)}.cert-badge-item[href]:hover{background:#fafaf7}.cert-link-icon,.credential>a{color:var(--accent-strong)}.focus-card,.capability-card{border-color:#e6e5e0;border-radius:12px;background:#fff}.focus-card{box-shadow:0 1px 2px rgba(var(--ink-rgb),.025)}.credentials-row>div:first-child{border-color:#e6e5e0;background:#fff}.credential-icon{background:rgba(var(--accent-rgb),.1);color:var(--accent-strong)}.coffee-note{border-color:#e6e5e0;border-radius:12px;background:linear-gradient(140deg,rgba(var(--accent-rgb),.055),#fff)}.skills-section{background:#fafaf7}.capability-icon{border-color:rgba(var(--accent-rgb),.2);background:rgba(var(--accent-rgb),.08);color:var(--accent-strong)}.approach-cards article{border-color:#e6e5e0}.projects-section{background:#fafaf7}.project-card{border-color:#e6e5e0;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(var(--ink-rgb),.035)}.project-card:hover{border-color:rgba(var(--accent-rgb),.38);box-shadow:0 12px 28px rgba(var(--ink-rgb),.08)}.project-gallery{background:radial-gradient(ellipse at 52% 25%,rgba(var(--accent-rgb),.08),transparent 62%),linear-gradient(145deg,#efeee8,#e6e5e0 78%)}.project-gallery:before{background-image:linear-gradient(rgba(var(--ink-rgb),.035) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--ink-rgb),.035) 1px,transparent 1px)}.carousel-arrow{border-color:#ffffffbf;background:#26251eb8;color:#fff}.carousel-arrow:hover,.carousel-arrow:focus-visible{border-color:var(--accent);background:#fff;color:var(--accent-strong)}.carousel-dots button{background:rgba(var(--ink-rgb),.28)}.carousel-dots button:hover,.carousel-dots button:focus-visible{outline-color:rgba(var(--accent-rgb),.65)}.project-type,.project-link{color:var(--accent-strong)}.project-tags li{border-color:#e6e5e0;background:#fafaf7;color:#625f58}.qa-placeholder{border-color:rgba(var(--accent-rgb),.3);background:linear-gradient(145deg,rgba(var(--accent-rgb),.045),#ffffffb8)}.placeholder-slot{border-color:#cfcdc4;background:#ffffffb3;color:#625f58}.placeholder-slot span{border-color:rgba(var(--accent-rgb),.3);color:var(--accent-strong)}.placeholder-caption{color:#625f58}.contact-card{border-color:#e6e5e0;border-radius:12px;background:radial-gradient(ellipse at 12% 20%,rgba(var(--accent-rgb),.07),transparent 45%),#fff}.contact-socials a{color:#625f58}.contact-socials a i,.required-mark{color:var(--accent-strong)}.contact-form label{color:#26251e}.input-field{border-color:#cfcdc4;background:#fff;color:var(--text)}.input-field:focus{border-color:var(--accent)}.field-error,.flash-messages.error{color:#a82643}.sending-overlay{background:#26251e52}.sending-dialog{border-color:#e6e5e0;background:#fff;box-shadow:0 20px 60px rgba(var(--ink-rgb),.2)}.sending-dialog:after,.flight-orbit{border-color:rgba(var(--accent-rgb),.17)}.flight-orbit i,.loading-progress i{background:var(--accent);box-shadow:0 0 12px rgba(var(--accent-rgb),.4)}.mail-envelope{border-color:rgba(var(--accent-rgb),.35);background:linear-gradient(145deg,#fff,#efeee8 70%);box-shadow:0 8px 22px rgba(var(--ink-rgb),.1)}.mail-envelope svg{stroke:var(--accent-strong)}.mail-paper-plane{border-color:rgba(var(--accent-rgb),.24);background:#fff;color:var(--accent-strong)}.flash-messages{border-color:#e6e5e0;background:#fff;box-shadow:0 12px 32px rgba(var(--ink-rgb),.12)}.flash-messages.success{border-color:#1f8a6559;color:#1f765a}.flash-messages.error{border-color:#cf2d564d}.footer{border-color:#e6e5e0}.footer p,.back-top{color:#625f58}.terminal-result>span{background:#1f8a6533;color:#7bd0ad}.hero-portrait>img{width:84%;border-radius:14px;-webkit-mask-image:none;mask-image:none;filter:none}.hero-portrait{border-color:#cfcdc4;animation-duration:4s}.hero-portrait:before{border-color:rgba(var(--accent-rgb),.36)}.hero-portrait:after{top:-2px;right:-2px;bottom:-2px;left:-2px;padding:2px;background:linear-gradient(112deg,rgba(var(--accent-rgb),.3),rgba(var(--accent-rgb),.3) 38%,#f54e00,rgba(var(--accent-rgb),.3) 62%,rgba(var(--accent-rgb),.3));background-size:260% 100%;filter:drop-shadow(0 0 5px rgba(var(--accent-rgb),.32));animation:portrait-frame-sweep 3.8s linear infinite}
