@font-face{font-family:swiper-icons;src:url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);font-weight:400;font-style:normal}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}:root{--color-primary: #0ea5e9;--color-primary-hover: #38bdf8;--color-primary-muted: rgba(14, 165, 233, .12);--color-accent: #22d3ee;--sidebar-width: 280px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px;--font-body: "DM Sans", system-ui, sans-serif;--font-heading: "Outfit", system-ui, sans-serif;--transition: .25s cubic-bezier(.4, 0, .2, 1);--section-padding: clamp(3.5rem, 8vw, 5rem) 0;--bp-sm: 575px;--bp-md: 767px;--bp-lg: 991px;--bp-xl: 1199px;--card-cta-bg: #ffffff;--card-cta-text: #0f172a}[data-theme=light]{color-scheme:light;--color-bg: #f8fafc;--color-bg-elevated: #ffffff;--color-bg-muted: #f1f5f9;--color-bg-sidebar: #0b1220;--color-bg-sidebar-hover: #151f33;--color-text: #1e293b;--color-text-muted: #64748b;--color-text-light: #94a3b8;--color-text-inverse: #f8fafc;--color-border: #e2e8f0;--color-heading: #0f172a;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 4px 24px rgba(15, 23, 42, .08);--shadow-lg: 0 12px 40px rgba(15, 23, 42, .12);--scrollbar-thumb: rgba(14, 165, 233, .4);--scrollbar-thumb-hover: rgba(14, 165, 233, .65);--scrollbar-track: transparent;--color-toggle-bg: #ffffff;--color-toggle-border: #e2e8f0;--color-toggle-icon: #0f172a;--color-cert-panel: #0d1117;--color-cert-panel-border: #1e293b;--color-cert-panel-text: #e2e8f0;--color-cert-panel-muted: #94a3b8;--hero-overlay: linear-gradient( 135deg, rgba(248, 250, 252, .35) 0%, rgba(241, 245, 249, .15) 45%, rgba(226, 232, 240, .3) 100% );--hero-glow: radial-gradient(ellipse at 50% 40%, rgba(14, 165, 233, .12), transparent 65%);--hero-heading: #0f172a;--hero-tagline: #1e293b;--hero-accent: #0369a1;--hero-content-bg: rgba(255, 255, 255, .82);--hero-content-blur: 14px;--hero-content-border: rgba(255, 255, 255, .75);--hero-content-shadow: 0 12px 40px rgba(15, 23, 42, .1);--hero-content-padding: clamp(1.75rem, 4vw, 2.75rem) clamp(2rem, 5vw, 3.5rem);--hero-btn-outline-color: #0f172a;--hero-btn-outline-border: #0ea5e9;--hero-btn-outline-hover: rgba(14, 165, 233, .12);--hero-text-shadow: none;--hero-scroll-cue-color: #0f172a;--project-hero-bg: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 50%, #bae6fd 100%);--project-hero-text: #0f172a;--project-hero-muted: #475569}[data-theme=dark]{color-scheme:dark;--color-bg: #0b1120;--color-bg-elevated: #151f33;--color-bg-muted: #111827;--color-bg-sidebar: #070d18;--color-bg-sidebar-hover: #1a2744;--color-text: #e2e8f0;--color-text-muted: #94a3b8;--color-text-light: #64748b;--color-text-inverse: #f8fafc;--color-border: #1e293b;--color-heading: #f1f5f9;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);--shadow-md: 0 4px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .45);--scrollbar-thumb: rgba(14, 165, 233, .35);--scrollbar-thumb-hover: rgba(14, 165, 233, .55);--scrollbar-track: rgba(255, 255, 255, .03);--color-toggle-bg: #151f33;--color-toggle-border: #1e293b;--color-toggle-icon: #f8fafc;--color-cert-panel: #0d1117;--color-cert-panel-border: #1e293b;--color-cert-panel-text: #e2e8f0;--color-cert-panel-muted: #94a3b8;--hero-overlay: linear-gradient(135deg, rgba(11, 18, 32, .92), rgba(11, 18, 32, .75));--hero-glow: radial-gradient(ellipse at 30% 50%, rgba(14, 165, 233, .15), transparent 60%);--hero-heading: #ffffff;--hero-tagline: rgba(255, 255, 255, .85);--hero-accent: var(--color-accent);--hero-content-bg: transparent;--hero-content-blur: 0px;--hero-content-border: transparent;--hero-content-shadow: none;--hero-content-padding: 0;--hero-btn-outline-color: #ffffff;--hero-btn-outline-border: rgba(255, 255, 255, .5);--hero-btn-outline-hover: rgba(255, 255, 255, .1);--hero-text-shadow: none;--hero-scroll-cue-color: rgba(255, 255, 255, .88);--project-hero-bg: linear-gradient(135deg, #0b1220 0%, #0f2744 50%, #0c4a6e 100%);--project-hero-text: #ffffff;--project-hero-muted: rgba(255, 255, 255, .8)}@media(max-width:1199px){.page-shell{padding-top:4.25rem}.home-scroll .hero{padding-top:max(4.5rem,calc(3.5rem + env(safe-area-inset-top,0px)))}.home-scroll .hero,.home-scroll .section{scroll-margin-top:4.5rem}.sidebar{width:min(85vw,var(--sidebar-width));box-shadow:var(--shadow-lg)}.sidebar__nav a{min-height:44px;padding-block:.75rem}.sidebar__nav a span{font-size:.95rem}}@media(max-width:991px){.section-title{margin-bottom:2rem}.cert-list-header{flex-direction:column;align-items:flex-start}.cert-list-header__sub{display:block;margin:.35rem 0 0}.cert-detail-trophies__header{flex-direction:column;align-items:flex-start}.project-hero{padding:1.5rem 0 2rem}.project-hero__title{color:var(--project-hero-text)}.contact-form{padding:1.5rem}.project-info-card,.project-content-card{padding:1.25rem}}@media(max-width:767px){.about__details{grid-template-columns:1fr;gap:.35rem}.breadcrumbs{padding-block:.25rem}.breadcrumbs ol{flex-wrap:wrap;row-gap:.25rem}.cert-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.35rem;margin-inline:-.25rem;padding-inline:.25rem;scrollbar-width:none}.cert-tabs::-webkit-scrollbar{display:none}.cert-tabs__btn{flex-shrink:0;white-space:nowrap}.badges-grid{grid-template-columns:1fr}.project-gallery__thumb{flex:0 0 72px;height:52px}.footer__inner{flex-direction:column;align-items:flex-start}.swiper{padding-bottom:2.5rem!important}}@media(max-width:575px){.container{padding-inline:1rem}.theme-toggle,.mobile-toggle{width:40px;height:40px;font-size:1.05rem}.theme-toggle{top:max(.75rem,env(safe-area-inset-top,0px));right:calc(1.25rem + 40px + env(safe-area-inset-right,0px))}.mobile-toggle{top:max(.75rem,env(safe-area-inset-top,0px));right:max(.75rem,env(safe-area-inset-right,0px))}.page-shell{padding-top:3.75rem}.section-title h2:after{width:40px;height:3px}.hero{min-height:100svh;padding:1rem;padding-top:max(4.5rem,calc(3.5rem + env(safe-area-inset-top,0px)))}.hero h1{font-size:clamp(1.85rem,9vw,2.75rem)}.hero__tagline{font-size:clamp(1rem,4.5vw,1.25rem)}.hero__actions{flex-direction:column;width:100%;max-width:300px;margin-inline:auto}.hero__actions .btn{width:100%;justify-content:center}.btn{padding:.7rem 1.25rem;font-size:.9rem}.portfolio-filters{gap:.5rem;margin-bottom:1.75rem}.portfolio-filters button{padding:.5rem .9rem;font-size:.8125rem}.portfolio-grid,.cert-grid{grid-template-columns:1fr}.fact-card,.service-card{padding:1.5rem 1.25rem}.testimonial-card{padding:1.5rem 1.15rem}.sidebar{padding:1.25rem .875rem}.sidebar__avatar{width:88px;height:88px}.sidebar__name{font-size:1.15rem}.sidebar__social a{width:40px;height:40px}.cert-view{padding:1.15rem}.cert-view__recipient{flex-wrap:wrap}.thanks-card{padding:1.75rem 1.25rem;margin-inline:0;width:100%}.back-to-top{right:max(.75rem,env(safe-area-inset-right,0px));bottom:max(.75rem,env(safe-area-inset-bottom,0px));width:40px;height:40px;font-size:1.25rem}.project-gallery__hero-img{height:clamp(200px,56vw,320px)}}@media(hover:none)and (pointer:coarse){.portfolio-card:hover,.cert-card:hover,.service-card:hover,.fact-card:hover,.badge-card:hover,.btn--primary:hover,.btn--outline:hover{transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;width:100%}.visually-hidden{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:fixed;top:.75rem;left:.75rem;z-index:1100;padding:.625rem 1rem;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-weight:600;font-size:.875rem;transform:translateY(-200%);transition:transform var(--transition)}.skip-link:focus{transform:translateY(0);outline:2px solid var(--color-accent);outline-offset:2px}.page-loader{min-height:50vh;display:grid;place-items:center;padding:3rem}.page-loader__spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}body{margin:0;width:100%;min-height:100vh;overflow-x:hidden;font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);transition:background-color var(--transition),color var(--transition)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full);border:1px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-corner{background:transparent}.theme-toggle{position:fixed;top:max(1.25rem,env(safe-area-inset-top,0px));right:max(1.5rem,env(safe-area-inset-right,0px));z-index:1000;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-toggle-border);border-radius:var(--radius-full);background:var(--color-toggle-bg);color:var(--color-toggle-icon);font-size:1.15rem;box-shadow:var(--shadow-md);transition:background-color var(--transition),color var(--transition),border-color var(--transition),transform var(--transition)}.theme-toggle:hover{color:var(--color-primary);border-color:var(--color-primary);transform:scale(1.05)}@media(max-width:1199px){.theme-toggle{top:max(1rem,env(safe-area-inset-top,0px));right:calc(max(1rem,env(safe-area-inset-right,0px)) + 44px + .625rem)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-heading);line-height:1.25}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-hover)}img{max-width:100%;height:auto;display:block}picture{display:block;max-width:100%}ul{padding-left:1.25rem}button{font-family:inherit;cursor:pointer}.container{width:100%;max-width:100%;padding-inline:clamp(1.25rem,4vw,2.5rem);margin-inline:0}.section{padding:var(--section-padding);width:100%}.section--muted{background:var(--color-bg-muted)}.section-title{text-align:left;margin-bottom:3rem}.section-title h2{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;margin:0 0 1rem;position:relative;display:inline-block}.section-title h2:after{content:"";display:block;width:48px;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);margin:.75rem 0 0}.section-title p{max-width:720px;margin:0;color:var(--color-text-muted)}.fade-in{animation:fadeInUp .6s ease both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:.95rem;transition:all var(--transition)}.btn--primary{background:linear-gradient(135deg,var(--color-primary),#0284c7);color:#fff;box-shadow:0 4px 14px #0ea5e959}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0ea5e973;color:#fff}.btn--outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}.btn--outline:hover{background:#ffffff1a;border-color:#fff;color:#fff;transform:translateY(-2px)}.home-scroll{width:100%}.home-scroll .hero,.home-scroll .section{scroll-margin-top:5rem}.home-scroll .hero{min-height:100vh;min-height:100svh}#root{width:100%;min-height:100vh}.app-layout{min-height:100vh;width:100%;overflow-x:hidden}.app-main{margin-left:var(--sidebar-width);min-height:100vh;width:calc(100% - var(--sidebar-width));max-width:calc(100% - var(--sidebar-width));transition:margin var(--transition),width var(--transition);overflow-x:hidden;display:flex;flex-direction:column}.app-main__content{flex:1 0 auto;width:100%;display:flex;flex-direction:column;align-items:stretch}.page-shell{width:100%;flex:1 0 auto}.page-shell .section{width:100%}.app-main>.footer{flex-shrink:0;margin-top:auto}@media(max-width:1199px){.app-main{margin-left:0;width:100%;max-width:100%}}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:var(--color-bg-sidebar);color:var(--color-text-inverse);z-index:1000;display:flex;flex-direction:column;padding:1.5rem 1rem;overflow-y:auto;transition:transform var(--transition);border-right:1px solid rgba(255,255,255,.06);scrollbar-color:rgba(14,165,233,.35) rgba(255,255,255,.04)}.sidebar::-webkit-scrollbar-thumb{background:#0ea5e94d}.sidebar::-webkit-scrollbar-thumb:hover{background:#0ea5e98c}.sidebar::-webkit-scrollbar-track{background:#ffffff08}.sidebar--hidden{transform:translate(-100%)}@media(min-width:1200px){.sidebar,.sidebar--hidden{transform:translate(0)}.mobile-overlay{display:none}}.sidebar__profile{text-align:center;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar__avatar{width:110px;height:110px;border-radius:50%;object-fit:cover;margin:0 auto 1rem;border:3px solid rgba(14,165,233,.4);box-shadow:0 0 0 4px #0ea5e91a}.sidebar__name{font-family:var(--font-heading);font-size:1.35rem;font-weight:600;margin:0}.sidebar__name a{color:#fff}.sidebar__social{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.sidebar__social a{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#ffffff14;color:var(--color-text-light);font-size:1.1rem;transition:all var(--transition)}.sidebar__social a:hover{background:var(--color-primary);color:#fff}.sidebar__nav{list-style:none;padding:1.5rem 0 0;margin:0;flex:1}.sidebar__nav li{margin-bottom:.25rem}.sidebar__nav a{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-sm);color:var(--color-text-light);font-weight:500;transition:all var(--transition)}.sidebar__nav a i{font-size:1.2rem;width:1.25rem;text-align:center}.sidebar__nav a:hover,.sidebar__nav a.active{background:var(--color-bg-sidebar-hover);color:#fff}.sidebar__nav a.active{border-left:3px solid var(--color-primary);padding-left:calc(1rem - 3px)}.mobile-toggle{position:fixed;top:max(1rem,env(safe-area-inset-top,0px));right:max(1rem,env(safe-area-inset-right,0px));z-index:1001;width:44px;height:44px;border:none;border-radius:var(--radius-sm);background:var(--color-bg-sidebar);color:#fff;font-size:1.5rem;display:none;align-items:center;justify-content:center;box-shadow:var(--shadow-md)}@media(max-width:1199px){.mobile-toggle{display:flex}}.mobile-overlay{position:fixed;inset:0;background:#00000080;z-index:999;opacity:0;pointer-events:none;transition:opacity var(--transition)}.mobile-overlay--visible{opacity:1;pointer-events:auto}.hero{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;background:var(--color-bg);color:var(--hero-heading);padding:2rem;transition:color var(--transition);--hero-mouse-x: 50%;--hero-mouse-y: 50%;--hero-parallax-x: 0px;--hero-parallax-y: 0px}.hero__bg-layers{position:absolute;inset:0;z-index:0;transform:translate(var(--hero-parallax-x, 0px),var(--hero-parallax-y, 0px));will-change:transform}.hero__bg-layers:after{content:"";position:absolute;inset:0;background:var(--hero-overlay);z-index:1}.hero__bg-layer{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.08);transition:opacity 1.4s ease-in-out}.hero__bg-layer--active{opacity:1;animation:heroKenBurns 14s ease-in-out infinite alternate}@keyframes heroKenBurns{0%{transform:scale(1)}to{transform:scale(1.07)}}.hero__bg-loader{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;background:var(--color-bg-sidebar);transition:opacity .7s ease,visibility .7s ease}.hero__bg-loader--hidden{opacity:0;visibility:hidden;pointer-events:none}.hero__bg-loader__rings{position:relative;width:64px;height:64px}.hero__bg-loader__rings span{position:absolute;inset:0;border:3px solid transparent;border-top-color:var(--color-primary);border-radius:50%;animation:heroLoaderSpin 1.2s cubic-bezier(.5,0,.5,1) infinite}.hero__bg-loader__rings span:nth-child(2){inset:8px;border-top-color:var(--color-accent);animation-delay:-.2s}.hero__bg-loader__rings span:nth-child(3){inset:16px;border-top-color:#0ea5e959;animation-delay:-.4s}@keyframes heroLoaderSpin{to{transform:rotate(360deg)}}.hero__bg-loader__text{margin:0;font-size:.95rem;font-weight:500;color:#f8fafcbf;animation:heroLoaderPulse 1.5s ease-in-out infinite}@keyframes heroLoaderPulse{0%,to{opacity:.5}50%{opacity:1}}.hero__cursor-fx{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.hero__cursor-glow{position:absolute;left:var(--hero-mouse-x, 50%);top:var(--hero-mouse-y, 50%);width:min(420px,50vw);height:min(420px,50vw);transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(14,165,233,.28) 0%,rgba(34,211,238,.1) 38%,transparent 72%);filter:blur(10px)}.hero__cursor-ring{position:absolute;left:var(--hero-mouse-x, 50%);top:var(--hero-mouse-y, 50%);width:52px;height:52px;transform:translate(-50%,-50%);border:1px solid rgba(14,165,233,.55);border-radius:50%;box-shadow:0 0 0 1px #0ea5e926,0 0 24px #0ea5e94d}.hero__cursor-ring:after{content:"";position:absolute;inset:10px;border-radius:50%;border:1px solid rgba(34,211,238,.35)}.hero__cursor-particles{position:absolute;inset:0}.hero__cursor-particle{position:absolute;left:var(--hero-mouse-x, 50%);top:var(--hero-mouse-y, 50%);width:5px;height:5px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 10px var(--color-accent);opacity:.55;transform:translate(-50%,-50%) rotate(calc(var(--i) * 45deg)) translateY(calc(-36px - var(--i) * 5px));animation:heroParticleFloat 2.8s ease-in-out infinite;animation-delay:calc(var(--i) * -.32s)}@keyframes heroParticleFloat{0%,to{opacity:.15;transform:translate(-50%,-50%) rotate(calc(var(--i) * 45deg)) translateY(calc(-30px - var(--i) * 4px)) scale(.75)}50%{opacity:.95;transform:translate(-50%,-50%) rotate(calc(var(--i) * 45deg)) translateY(calc(-52px - var(--i) * 7px)) scale(1.15)}}.hero__cursor-grid{position:absolute;inset:-1px;background-image:linear-gradient(rgba(14,165,233,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(14,165,233,.05) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle 300px at var(--hero-mouse-x, 50%) var(--hero-mouse-y, 50%),black 0%,transparent 78%);-webkit-mask-image:radial-gradient(circle 300px at var(--hero-mouse-x, 50%) var(--hero-mouse-y, 50%),black 0%,transparent 78%)}@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.hero__cursor-fx{display:none}.hero__bg-layers{transform:none}}.hero:before{content:"";position:absolute;inset:0;background:var(--hero-glow);pointer-events:none;z-index:2}.hero__content{position:relative;z-index:3;padding:var(--hero-content-padding);border-radius:var(--radius-lg);background:var(--hero-content-bg);backdrop-filter:blur(var(--hero-content-blur));-webkit-backdrop-filter:blur(var(--hero-content-blur));border:1px solid var(--hero-content-border);box-shadow:var(--hero-content-shadow)}.hero h1{font-size:clamp(2.5rem,6vw,4rem);font-weight:700;color:var(--hero-heading);margin:0 0 1rem;letter-spacing:-.02em;text-shadow:var(--hero-text-shadow, none)}.hero__tagline{font-size:clamp(1.1rem,2.5vw,1.5rem);color:var(--hero-tagline);margin:0 0 2rem;text-shadow:var(--hero-text-shadow, none)}.hero .btn--outline{color:var(--hero-btn-outline-color);border-color:var(--hero-btn-outline-border)}.hero .btn--outline:hover{color:var(--hero-btn-outline-color);border-color:var(--hero-btn-outline-border);background:var(--hero-btn-outline-hover, rgba(255, 255, 255, .1))}.hero__actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.hero__typed{color:var(--hero-accent, var(--color-accent));font-weight:600}.hero__cursor{animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.hero__scroll-cue{position:absolute;bottom:max(1.25rem,env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem 1rem;border:none;background:transparent;color:var(--hero-scroll-cue-color, rgba(255, 255, 255, .88));cursor:pointer;transition:color var(--transition);font-family:inherit}.hero__scroll-cue:hover,.hero__scroll-cue:focus-visible{color:var(--hero-accent, var(--color-accent))}.hero__scroll-cue:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius-sm)}.hero__scroll-cue__label{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.9}.hero__scroll-cue__arrow{display:flex;font-size:1.75rem;line-height:1;animation:heroScrollBounce 2s ease-in-out infinite}.hero__scroll-cue__ring{position:absolute;top:calc(50% + .35rem);left:50%;width:46px;height:46px;border-radius:50%;border:2px solid currentColor;opacity:.3;transform:translate(-50%,-50%);animation:heroScrollRingPulse 2s ease-in-out infinite;pointer-events:none}@keyframes heroScrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}@keyframes heroScrollRingPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.18);opacity:.12}}@media(prefers-reduced-motion:reduce){.hero__scroll-cue__arrow,.hero__scroll-cue__ring{animation:none}}.home-intro{background:var(--color-bg-muted);text-align:center}.home-intro__header{max-width:820px;margin:0 auto 3rem}.home-intro__eyebrow{display:inline-block;font-size:.875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin:0 0 1rem}.home-intro__header h2{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;line-height:1.25;margin:0 0 1.25rem;color:var(--color-text)}.home-intro__summary{font-size:1.05rem;line-height:1.7;color:var(--color-text-muted);margin:0}.home-intro__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2.5rem}.home-intro__card{padding:1.5rem 1.25rem;border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border);text-align:left;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.home-intro__card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.home-intro__card-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-size:1.25rem;margin-bottom:1rem}.home-intro__card h3{font-size:1.1rem;margin:0 0 .5rem;color:var(--color-text)}.home-intro__card p{font-size:.9rem;line-height:1.55;color:var(--color-text-muted);margin:0}.home-intro__role{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;padding:2rem;border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid var(--color-border);margin-bottom:2.5rem;text-align:left}.home-intro__role-label,.home-intro__stack-label{font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin:0 0 .5rem}.home-intro__role-content h3{font-size:1.35rem;margin:0 0 .5rem;color:var(--color-text)}.home-intro__role-meta{color:var(--color-text-muted);margin:0 0 1.25rem;font-size:.95rem}.home-intro__role-meta i{margin-right:.35rem;color:var(--color-primary)}.home-intro__role-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.65rem}.home-intro__role-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.95rem;line-height:1.5;color:var(--color-text-muted)}.home-intro__role-list li i{color:var(--color-primary);flex-shrink:0;margin-top:.15rem}.home-intro__pills{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0 0 1.5rem}.home-intro__pills li{padding:.4rem .85rem;font-size:.85rem;font-weight:500;border-radius:var(--radius-full);background:var(--color-bg-muted);border:1px solid var(--color-border);color:var(--color-text)}.home-intro__actions{display:flex;flex-wrap:wrap;gap:.75rem}.home-intro__cta{font-size:1.05rem;color:var(--color-text-muted);margin:0}.home-intro__cta a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:3px}.home-intro__cta a:hover{color:var(--color-accent)}@media(max-width:991px){.home-intro__grid{grid-template-columns:repeat(2,1fr)}.home-intro__role{grid-template-columns:1fr}}@media(max-width:575px){.home-intro__grid{grid-template-columns:1fr}}.about__grid{display:grid;grid-template-columns:1fr 1.5fr;gap:2.5rem;align-items:start}.about__intro-secondary{color:var(--color-text-muted);max-width:720px;margin:-1.5rem 0 2.5rem}@media(max-width:991px){.about__grid{grid-template-columns:1fr}}.about__image{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.about__details{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 2rem;list-style:none;padding:0;margin:1.5rem 0}.about__details li{display:flex;gap:.5rem;align-items:baseline;font-size:.95rem}.about__details i{color:var(--color-primary);flex-shrink:0}.facts__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:clamp(1rem,2vw,1.5rem);width:100%}.fact-card{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:2rem 1.5rem;text-align:center;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform var(--transition),box-shadow var(--transition)}.fact-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.fact-card i{font-size:2rem;color:var(--color-primary);margin-bottom:.75rem;display:block}.fact-card__number{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--color-heading);display:block}.fact-card p{margin:.5rem 0 0;color:var(--color-text-muted);font-size:.9rem}.skills__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:767px){.skills__grid{grid-template-columns:1fr}}.skill-bar{margin-bottom:1.25rem}.skill-bar__header{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;font-weight:500}.skill-bar__track{height:8px;background:var(--color-border);border-radius:var(--radius-full);overflow:hidden}.skill-bar__fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);transition:width 1s ease}.resume__download{text-align:left;margin-bottom:2rem}.resume__grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}@media(max-width:991px){.resume__grid{grid-template-columns:1fr}}.resume__title{font-size:1.35rem;font-weight:700;margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-primary-muted)}.resume-item{padding:0 0 1.5rem 1.25rem;border-left:2px solid var(--color-primary);margin-bottom:1.5rem;position:relative}.resume-item:before{content:"";position:absolute;left:-7px;top:0;width:12px;height:12px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-bg)}.resume-item h4{margin:0 0 .25rem;font-size:1.05rem}.resume-item h5{margin:0 0 .5rem;font-size:.85rem;color:var(--color-primary);font-weight:600}.resume-item em{color:var(--color-text-muted);font-style:normal}.resume-item ul{margin:.5rem 0 0;color:var(--color-text-muted);font-size:.92rem}.portfolio-filters{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:.625rem;list-style:none;padding:0;margin:0 0 2.5rem}.portfolio-filters button{padding:.625rem 1.35rem;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-elevated);color:var(--color-text-muted);font-weight:600;font-size:.875rem;transition:all var(--transition)}.portfolio-filters button:hover,.portfolio-filters button.active{background:linear-gradient(135deg,var(--color-primary),#0284c7);border-color:transparent;color:#fff;box-shadow:0 4px 14px #0ea5e94d}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(1.25rem,2.5vw,1.75rem);width:100%}.portfolio-grid .portfolio-card{width:100%;max-width:none}.portfolio-empty{text-align:left;color:var(--color-text-muted);padding:2rem 0}.portfolio-card{display:flex;flex-direction:column;background:var(--color-bg-elevated);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);color:inherit;text-decoration:none}.portfolio-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:#0ea5e959;color:inherit}.portfolio-card__image-wrap{position:relative;overflow:hidden;aspect-ratio:16 / 10;background:var(--color-bg-muted)}.portfolio-card__image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.portfolio-card:hover .portfolio-card__image{transform:scale(1.06)}.portfolio-card__placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,var(--color-bg-muted),var(--color-border));color:var(--color-text-muted);font-size:2.5rem}.portfolio-card__badge{position:absolute;top:.875rem;left:.875rem;padding:.35rem .75rem;border-radius:var(--radius-full);background:#0b1220bf;backdrop-filter:blur(8px);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.portfolio-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(11,18,32,.88) 0%,rgba(11,18,32,.2) 55%,transparent 100%);display:flex;align-items:flex-end;justify-content:center;padding:1.25rem;opacity:1;transition:background var(--transition)}.portfolio-card:hover .portfolio-card__overlay{background:linear-gradient(to top,#0b1220eb,#0ea5e940)}.portfolio-card__cta{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:var(--radius-full);background:var(--card-cta-bg);color:var(--card-cta-text);font-size:.875rem;font-weight:600;transform:translateY(0);transition:transform var(--transition),background var(--transition),color var(--transition);box-shadow:0 2px 12px #0003}.portfolio-card:hover .portfolio-card__cta{background:var(--color-primary);color:#fff}.portfolio-card__body{padding:1.15rem 1.25rem 1.35rem}.portfolio-card__title{margin:0;font-size:1rem;font-weight:600;line-height:1.4;color:var(--color-heading)}.services__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(1.25rem,2.5vw,1.5rem);width:100%}.service-card{padding:2rem 1.5rem;background:var(--color-bg-elevated);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition)}.service-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.service-card__icon{width:56px;height:56px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-primary-muted);color:var(--color-primary);font-size:1.5rem;margin-bottom:1rem}.service-card h4{margin:0 0 .75rem;font-size:1.05rem}.service-card p{margin:0;color:var(--color-text-muted);font-size:.92rem}.testimonial-card{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:2rem;text-align:center;border:1px solid var(--color-border);height:100%}.testimonial-card__quote{font-style:italic;color:var(--color-text-muted);margin:0 0 1.5rem;position:relative}.testimonial-card__quote i{color:var(--color-primary);opacity:.4;font-size:1.5rem}.testimonial-card__img{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto .75rem;border:3px solid var(--color-primary-muted)}.testimonial-card h3{margin:0;font-size:1rem}.testimonial-card h4{margin:.25rem 0 0;font-size:.85rem;font-weight:400;color:var(--color-text-muted)}.contact__grid{display:grid;grid-template-columns:1fr 1.4fr;gap:2rem}@media(max-width:991px){.contact__grid{grid-template-columns:1fr}}.contact-info{display:flex;flex-direction:column;gap:1.5rem;font-style:normal}.contact-info__item{display:flex;gap:1rem;align-items:flex-start}.contact-info__item i{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-primary-muted);color:var(--color-primary);font-size:1.2rem;flex-shrink:0}.contact-info__item h3,.contact-info__item h4{margin:0 0 .25rem;font-size:1rem}.contact-info__item p{margin:0;color:var(--color-text-muted);font-size:.95rem}.contact-form{background:var(--color-bg-elevated);padding:2rem;border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:575px){.form-row{grid-template-columns:1fr}}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.4rem;font-weight:500;font-size:.9rem}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;font-size:.95rem;background:var(--color-bg);color:var(--color-text);transition:border-color var(--transition),box-shadow var(--transition)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-muted)}.contact-form__submit{width:100%;justify-content:center;text-align:center}.contact-form__error{margin:0 0 1rem;padding:.75rem 1rem;border-radius:var(--radius-sm);background:#ef44441a;border:1px solid rgba(239,68,68,.35);color:#ef4444;font-size:.9rem}.contact-aside{display:flex;flex-direction:column;gap:1.5rem}.contact-aside__intro h3{margin:0 0 .75rem;font-size:clamp(1.25rem,2.5vw,1.5rem);line-height:1.3}.contact-aside__intro p{margin:0;color:var(--color-text-muted);line-height:1.65}.contact-aside__badge{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:.85rem;padding:.35rem .75rem;border-radius:var(--radius-full);background:var(--color-primary-muted);color:var(--color-primary);font-size:.8rem;font-weight:600;letter-spacing:.02em}.contact-aside__badge i{font-size:.45rem;color:#22c55e}.contact-aside__help h4,.contact-aside__card h4{margin:0 0 .35rem;font-size:.95rem}.contact-aside__help ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.contact-aside__help li{display:flex;align-items:flex-start;gap:.5rem;color:var(--color-text-muted);font-size:.92rem;line-height:1.45}.contact-aside__help li i{color:var(--color-primary);margin-top:.15rem;flex-shrink:0}.contact-aside__highlights{display:flex;flex-direction:column;gap:.75rem}.contact-aside__card{display:flex;gap:.85rem;align-items:flex-start;padding:1rem 1.1rem;border-radius:var(--radius-md);background:var(--color-bg-elevated);border:1px solid var(--color-border)}.contact-aside__card>i{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-primary-muted);color:var(--color-primary);font-size:1.1rem;flex-shrink:0}.contact-aside__card p{margin:0;color:var(--color-text-muted);font-size:.88rem;line-height:1.5}.contact-aside__links{display:flex;flex-wrap:wrap;gap:.75rem}.contact-aside__btn-outline{color:var(--color-text);border-color:var(--color-border)}.contact-aside__btn-outline:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-muted)}.footer{background:var(--color-bg-sidebar);color:var(--color-text-light);padding:1.25rem 0;font-size:.9rem;width:100%}.footer .container{max-width:100%;width:100%}.footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.25rem}.footer__inner p{margin:0}.footer__sep{display:none}.footer a{color:var(--color-accent)}.back-to-top{position:fixed;right:1.25rem;bottom:1.25rem;width:44px;height:44px;border-radius:50%;border:none;background:var(--color-primary);color:#fff;display:grid;place-items:center;font-size:1.5rem;z-index:900;opacity:0;visibility:hidden;transition:all var(--transition);box-shadow:var(--shadow-md);padding:0}.back-to-top--visible{opacity:1;visibility:visible}.back-to-top:hover{background:var(--color-primary-hover);color:#fff;transform:translateY(-3px)}.breadcrumbs{padding:2rem 0;background:var(--color-bg-muted);border-bottom:1px solid var(--color-border)}.breadcrumbs__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.breadcrumbs h2{margin:0;font-size:1.5rem}.breadcrumbs ol{display:flex;gap:.5rem;list-style:none;padding:0;margin:0;font-size:.9rem;color:var(--color-text-muted)}.breadcrumbs ol li+li:before{content:"/";margin-right:.5rem;opacity:.5}.project-page{padding-bottom:4rem;width:100%}.project-hero{background:var(--project-hero-bg);color:var(--project-hero-text);padding:2rem 0 2.75rem;position:relative;overflow:hidden}.project-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(14,165,233,.2),transparent 50%),radial-gradient(circle at 80% 20%,rgba(34,211,238,.15),transparent 40%);pointer-events:none}.project-hero__inner{position:relative;z-index:1}.project-hero__back{display:inline-flex;align-items:center;gap:.5rem;color:var(--project-hero-muted);font-size:.9rem;font-weight:500;margin-bottom:1.25rem;transition:color var(--transition)}.project-hero__back:hover{color:#fff}.project-hero__badge{display:inline-block;padding:.4rem .9rem;border-radius:var(--radius-full);background:#0ea5e940;border:1px solid rgba(14,165,233,.4);color:#7dd3fc;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem}.project-hero__title{margin:0;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;color:var(--project-hero-text);max-width:800px;line-height:1.2}.project-page__body{margin-top:-1.5rem;position:relative;z-index:2}.project-page__grid{display:grid;grid-template-columns:1fr 340px;grid-template-areas:"gallery sidebar" "content sidebar";gap:1.75rem;align-items:start}.project-page__gallery-col{grid-area:gallery}.project-page__sidebar{grid-area:sidebar;position:sticky;top:1.5rem}.project-page__content{grid-area:content}@media(max-width:991px){.project-page__grid{grid-template-columns:1fr;grid-template-areas:"gallery" "sidebar" "content"}.project-page__sidebar{position:static}}.project-gallery{background:var(--color-bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);overflow:hidden}.project-gallery--empty{min-height:280px}.project-gallery__placeholder{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--color-text-muted);background:var(--color-bg-muted)}.project-gallery__placeholder i{font-size:2.5rem;opacity:.5}.project-gallery__main{position:relative;background:var(--color-bg-muted)}.project-gallery__hero-img{width:100%;height:clamp(240px,45vw,460px);object-fit:cover;object-position:top center;display:block}.project-gallery__counter{position:absolute;bottom:1rem;right:1rem;padding:.35rem .75rem;border-radius:var(--radius-full);background:#0009;backdrop-filter:blur(6px);color:#fff;font-size:.8rem;font-weight:600}.project-gallery__thumbs{display:flex;gap:.625rem;padding:.875rem;overflow-x:auto;background:var(--color-bg-muted);scrollbar-width:thin}.project-gallery__thumb{flex:0 0 88px;height:60px;padding:0;border:2px solid transparent;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;opacity:.65;transition:all var(--transition);background:none}.project-gallery__thumb img{width:100%;height:100%;object-fit:cover}.project-gallery__thumb:hover,.project-gallery__thumb--active{opacity:1;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-muted)}.project-info-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}.project-info-card h2,.project-info-card h3{margin:0 0 1.25rem;font-size:1.05rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.875rem;border-bottom:1px solid var(--color-border)}.project-info-card h3 i{color:var(--color-primary)}.project-info-card__list{margin:0}.project-info-card__row{padding:.75rem 0;border-bottom:1px solid var(--color-border)}.project-info-card__row:last-child{border-bottom:none;padding-bottom:0}.project-info-card__row dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:.25rem}.project-info-card__row dd{margin:0;font-size:.95rem;font-weight:500;color:var(--color-heading);word-break:break-word}.project-info-card__row dd a{display:inline-flex;align-items:center;gap:.35rem;font-weight:500}.project-info-card__row dd a i{font-size:.75rem;opacity:.7}.project-content-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(1.5rem,4vw,2.25rem);box-shadow:var(--shadow-sm)}.project-section+.project-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.project-section h2{font-size:clamp(1.25rem,3vw,1.6rem);margin:0 0 1rem;color:var(--color-heading)}.project-section p{color:var(--color-text-muted);margin:0 0 1rem;line-height:1.75}.project-section__list{color:var(--color-text-muted);margin:0;padding-left:1.25rem;line-height:1.75}.project-section__list li{margin-bottom:.5rem}.project-section__list li::marker{color:var(--color-primary)}.project-subsection{margin-top:1.25rem;padding:1rem 1.25rem;background:var(--color-bg-muted);border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.project-subsection h4{margin:0 0 .75rem;font-size:.95rem;color:var(--color-heading)}.thanks-page{min-height:60vh;display:grid;place-items:center;padding:3rem 1rem}.thanks-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2.5rem;max-width:520px;text-align:center;box-shadow:var(--shadow-md)}.thanks-card h1{margin:0 0 .75rem;font-size:1.5rem}.thanks-card p{color:var(--color-text-muted);margin:0 0 1.5rem}.swiper-pagination-bullet-active{background:var(--color-primary)!important}.certifications-page{width:100%}.cert-list-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem}.cert-list-header__count{margin:0;font-weight:600;color:var(--color-heading);display:flex;align-items:center;gap:.5rem}.cert-list-header__count i{color:var(--color-primary)}.cert-list-header__link{display:inline-flex;align-items:center;gap:.4rem;font-weight:500;font-size:.9rem}.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(1.25rem,2.5vw,1.75rem);width:100%}.cert-grid .cert-card{width:100%;max-width:none}.cert-card{display:flex;flex-direction:column;background:var(--color-bg-elevated);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);color:inherit;text-decoration:none}.cert-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:#0ea5e959;color:inherit}.cert-card__preview{position:relative;aspect-ratio:16 / 10;background:linear-gradient(135deg,#0a1628,#0f2744,#0c4a6e);display:grid;place-items:center;overflow:hidden}.cert-card__pattern{position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(14,165,233,.05) 10px,rgba(14,165,233,.05) 20px)}.cert-card__shield{position:relative;z-index:1;width:100px;height:110px;background:linear-gradient(180deg,#1e3a5f,#0f2744);clip-path:polygon(50% 0%,100% 20%,100% 70%,50% 100%,0% 70%,0% 20%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.5rem;box-shadow:0 8px 24px #0000004d}.cert-card__shield-ms{font-size:.55rem;color:#94a3b8;font-weight:600}.cert-card__shield-level{font-size:.65rem;font-weight:800;color:#38bdf8;letter-spacing:.04em;margin-top:.15rem}.cert-card__shield-stars{font-size:.55rem;color:#fbbf24;margin-top:.2rem}.cert-card__exam{position:absolute;top:.875rem;left:.875rem;padding:.35rem .75rem;border-radius:var(--radius-full);background:#00000080;backdrop-filter:blur(6px);color:#7dd3fc;font-size:.75rem;font-weight:700;z-index:2}.cert-card__status{position:absolute;top:.875rem;right:.875rem;padding:.35rem .75rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;text-transform:uppercase;z-index:2}.cert-card__status--active{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.35)}.cert-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(11,18,32,.9),transparent 60%);display:flex;align-items:flex-end;justify-content:center;padding:1.25rem;z-index:2}.cert-card__cta{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:var(--radius-full);background:var(--card-cta-bg);color:var(--card-cta-text);font-size:.875rem;font-weight:600;transition:background var(--transition),color var(--transition);box-shadow:0 2px 12px #0003}.cert-card:hover .cert-card__cta{background:var(--color-primary);color:#fff}.cert-card__body{padding:1.15rem 1.25rem 1.35rem}.cert-card__title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--color-heading);line-height:1.4}.cert-card__meta,.cert-card__trophies{margin:0;font-size:.85rem;color:var(--color-text-muted);display:flex;align-items:center;gap:.4rem}.cert-card__trophies{margin-top:.35rem;color:var(--color-primary);font-weight:500}.cert-detail-page{padding:0 0 4rem;width:100%}.cert-detail-page__back{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-weight:500;color:var(--color-text-muted);transition:color var(--transition)}.cert-detail-page__back:hover{color:var(--color-primary)}.cert-detail-trophies{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--color-border)}.cert-detail-trophies__header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:2rem}.cert-detail-trophies__header h2{margin:0 0 .5rem;font-size:clamp(1.25rem,3vw,1.6rem);display:flex;align-items:center;gap:.5rem}.cert-detail-trophies__header h2 i{color:var(--color-primary)}.cert-detail-trophies__header p{margin:0;color:var(--color-text-muted);max-width:560px}.cert-tabs{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start;margin-bottom:2.5rem}.cert-tabs__btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.35rem;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-elevated);color:var(--color-text-muted);font-weight:600;font-size:.9rem;transition:all var(--transition)}.cert-tabs__btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.cert-tabs__btn--active{background:linear-gradient(135deg,var(--color-primary),#0284c7);border-color:transparent;color:#fff;box-shadow:0 4px 14px #0ea5e959}.cert-tabs__count{display:inline-grid;place-items:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;border-radius:var(--radius-full);background:#fff3;font-size:.75rem}.cert-tabs__btn:not(.cert-tabs__btn--active) .cert-tabs__count{background:var(--color-primary-muted);color:var(--color-primary)}.cert-view{background:var(--color-cert-panel);border-radius:var(--radius-lg);border:1px solid var(--color-cert-panel-border);padding:clamp(1.5rem,4vw,2.5rem);color:var(--color-cert-panel-text)}.cert-view__header{margin-bottom:2rem}.cert-view__title{font-size:clamp(1.35rem,3vw,1.85rem);color:#f8fafc;margin:0 0 .75rem;font-weight:700}.cert-view__issued{color:#94a3b8;margin:0 0 1rem;font-size:.95rem}.cert-view__issued strong{color:#cbd5e1}.cert-view__recipient{display:flex;align-items:center;gap:.75rem}.cert-view__avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem}.cert-view__name{color:#38bdf8;font-weight:600;font-size:1rem}.cert-view__body{display:grid;grid-template-columns:1fr 280px;gap:1.75rem;align-items:start}@media(max-width:991px){.cert-view__body{grid-template-columns:1fr}}.cert-view__frame{background:linear-gradient(135deg,rgba(14,165,233,.08),transparent),repeating-linear-gradient(-45deg,transparent,transparent 8px,rgba(14,165,233,.04) 8px,rgba(14,165,233,.04) 16px),#0a1628;border-radius:var(--radius-md);padding:clamp(1rem,3vw,2rem);border:1px solid #1e3a5f}.cert-certificate{background:#1a2332;border-radius:var(--radius-sm);padding:clamp(1.25rem,3vw,2rem);text-align:center;border:1px solid #2d3748}.cert-certificate__ms-logo{display:flex;justify-content:center;gap:3px;margin-bottom:1.5rem}.cert-certificate__sq{width:12px;height:12px}.cert-certificate__sq--r{background:#f25022}.cert-certificate__sq--g{background:#7fba00}.cert-certificate__sq--b{background:#00a4ef}.cert-certificate__sq--y{background:#ffb900}.cert-certificate__name{font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:700;color:#f8fafc;margin:0 0 .5rem}.cert-certificate__subtitle{color:#94a3b8;margin:0 0 .5rem;font-size:.85rem}.cert-certificate__title{font-size:clamp(.95rem,2vw,1.15rem);font-weight:700;color:#f8fafc;margin:0 0 1.75rem;line-height:1.4}.cert-certificate__footer{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:end;text-align:left}@media(max-width:767px){.cert-certificate__footer{grid-template-columns:1fr;text-align:center;justify-items:center}}.cert-certificate__meta{font-size:.7rem;color:#64748b;line-height:1.6}.cert-certificate__meta p{margin:0}.cert-certificate__signature{text-align:center;font-size:.75rem;color:#94a3b8}.cert-certificate__sig-line{width:100px;height:1px;background:#475569;margin:0 auto .35rem}.cert-certificate__sig-role{font-size:.65rem;margin:0;color:#64748b}.ms-shield{width:90px;height:100px;background:linear-gradient(180deg,#1e3a5f,#0f2744);clip-path:polygon(50% 0%,100% 20%,100% 70%,50% 100%,0% 70%,0% 20%);display:grid;place-items:center;margin:0 auto}.ms-shield__inner{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.5rem}.ms-shield__brand{font-size:.45rem;color:#94a3b8;font-weight:600}.ms-shield__level{font-size:.4rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.ms-shield__type{font-size:.55rem;font-weight:800;color:#38bdf8;letter-spacing:.04em}.ms-shield__stars{font-size:.5rem;color:#fbbf24;margin-top:.15rem}.cert-sidebar{display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:1.25rem;background:var(--color-cert-panel);border-radius:var(--radius-md);border:1px solid var(--color-cert-panel-border)}.cert-sidebar .ms-shield{width:110px;height:120px}.cert-sidebar__badges{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.cert-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.cert-pill--active{background:#22c55e26;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.cert-pill--verify{background:#0ea5e926;color:#38bdf8;border:1px solid rgba(14,165,233,.3)}.cert-sidebar__details{width:100%;margin:0}.cert-sidebar__details div{padding:.65rem 0;border-bottom:1px solid var(--color-cert-panel-border)}.cert-sidebar__details div:last-child{border-bottom:none}.cert-sidebar__details dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:.2rem}.cert-sidebar__details dd{margin:0;font-size:.85rem;color:#e2e8f0;word-break:break-all}.cert-sidebar__link{display:inline-flex;align-items:center;gap:.4rem;color:#38bdf8!important;font-size:.9rem;font-weight:500}.cert-sidebar__link:hover{color:#7dd3fc!important}.cert-skills{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #1e293b}.cert-skills h3{color:#f8fafc;font-size:1rem;margin:0 0 1rem}.cert-skills ul{margin:0;padding-left:1.25rem;color:#94a3b8;line-height:1.8}.cert-skills li::marker{color:#38bdf8}.badges-intro{text-align:left;color:var(--color-text-muted);margin:-1rem 0 2rem}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1.25rem;width:100%}.badge-card{background:#0d1117;border:1px solid #1e293b;border-radius:var(--radius-md);padding:1.25rem;transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)}.badge-card:hover{transform:translateY(-4px);border-color:#334155;box-shadow:0 8px 24px #00000040}.cert-list-header__sub{font-weight:400;color:var(--color-text-muted);margin-left:.25rem}.achievements-tabs{margin-bottom:2rem}.achievements-loading{text-align:center;padding:3rem 1rem;color:var(--color-text-muted)}.achievements-loading__spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;margin:0 auto 1rem;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.achievements-error{text-align:center;padding:2rem;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);color:var(--color-text-muted)}.achievements-error p{margin:0 0 1rem}.achievements-empty{text-align:center;color:var(--color-text-muted);padding:2rem}.badge-card--link{text-decoration:none;color:inherit;display:block}.badge-card--link:hover{color:inherit}.badge-card__ms-icon{width:36px;height:36px;object-fit:contain}.badge-card__icon-wrap{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--radius-sm);background:#0ea5e91f;margin-bottom:.75rem;clip-path:none}.badge-card__status--badge{background:#0ea5e91f;border-color:#0ea5e940;color:#38bdf8}.badge-card__label{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:.35rem}.badge-card__title{font-size:.95rem;font-weight:600;color:#38bdf8;margin:0 0 .5rem;line-height:1.4}.badge-card__date{font-size:.8rem;color:#94a3b8;margin:0 0 1rem}.badge-card__status{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border-radius:var(--radius-full);background:#22c55e1f;border:1px solid rgba(34,197,94,.25);color:#4ade80;font-size:.72rem;font-weight:600}
