.PhotoView-Portal{direction:ltr;height:100%;left:0;overflow:hidden;position:fixed;top:0;touch-action:none;width:100%;z-index:2000}@keyframes PhotoView__rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes PhotoView__delayIn{0%,50%{opacity:0}to{opacity:1}}.PhotoView__Spinner{animation:PhotoView__delayIn .4s linear both}.PhotoView__Spinner svg{animation:PhotoView__rotate .6s linear infinite}.PhotoView__Photo{cursor:grab;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.PhotoView__Photo:active{cursor:grabbing}.PhotoView__icon{display:inline-block;left:0;position:absolute;top:0;transform:translate(-50%,-50%)}.PhotoView__PhotoBox,.PhotoView__PhotoWrap{direction:ltr;inset:0;position:absolute;touch-action:none;width:100%}.PhotoView__PhotoWrap{overflow:hidden;z-index:10}.PhotoView__PhotoBox{transform-origin:left top}@keyframes PhotoView__fade{0%{opacity:0}to{opacity:1}}.PhotoView-Slider__clean .PhotoView-Slider__ArrowLeft,.PhotoView-Slider__clean .PhotoView-Slider__ArrowRight,.PhotoView-Slider__clean .PhotoView-Slider__BannerWrap,.PhotoView-Slider__clean .PhotoView-Slider__Overlay,.PhotoView-Slider__willClose .PhotoView-Slider__BannerWrap:hover{opacity:0}.PhotoView-Slider__Backdrop{background:#000;height:100%;left:0;position:absolute;top:0;transition-property:background-color;width:100%;z-index:-1}.PhotoView-Slider__fadeIn{animation:PhotoView__fade linear both;opacity:0}.PhotoView-Slider__fadeOut{animation:PhotoView__fade linear reverse both;opacity:0}.PhotoView-Slider__BannerWrap{align-items:center;background-color:#00000080;color:#fff;display:flex;height:44px;justify-content:space-between;left:0;position:absolute;top:0;transition:opacity .2s ease-out;width:100%;z-index:20}.PhotoView-Slider__BannerWrap:hover{opacity:1}.PhotoView-Slider__Counter{font-size:14px;opacity:.75;padding:0 10px}.PhotoView-Slider__BannerRight{align-items:center;display:flex;height:100%}.PhotoView-Slider__toolbarIcon{fill:#fff;box-sizing:border-box;cursor:pointer;opacity:.75;padding:10px;transition:opacity .2s linear}.PhotoView-Slider__toolbarIcon:hover{opacity:1}.PhotoView-Slider__ArrowLeft,.PhotoView-Slider__ArrowRight{align-items:center;bottom:0;cursor:pointer;display:flex;height:100px;justify-content:center;margin:auto;opacity:.75;position:absolute;top:0;transition:opacity .2s linear;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:70px;z-index:20}.PhotoView-Slider__ArrowLeft:hover,.PhotoView-Slider__ArrowRight:hover{opacity:1}.PhotoView-Slider__ArrowLeft svg,.PhotoView-Slider__ArrowRight svg{fill:#fff;background:#0000004d;box-sizing:content-box;height:24px;padding:10px;width:24px}.PhotoView-Slider__ArrowLeft{left:0}.PhotoView-Slider__ArrowRight{right:0}/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-900:oklch(20.8% .042 265.755);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-2xl:40px;--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-border:var(--border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}html{scroll-behavior:smooth}body{background-color:var(--background);color:#17283a;background:#f4f1ea;min-width:320px;margin:0;font-family:DM Sans,sans-serif}:root[data-theme=dark] body{color:#f4f1ea;background:#0f2235}button:not(:disabled),a[href],[role=button]:not([aria-disabled=true]){cursor:pointer}}@layer components{:root{--ease-out:cubic-bezier(.23,1,.32,1);--ink:#17283a;--graphite:#0f2235;--paper:#f4f1ea;--slate:#62768a;--line:#c7d2dc}:root[data-theme=dark]{--ink:#f4f1ea;--slate:#aec0ce;--line:#415d76}*,:before,:after{box-sizing:border-box}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{border:0}.site-shell{background:var(--paper);overflow:hidden}.route-transition{min-height:100%;animation:page-enter .36s var(--ease-out)both}.route-loading{min-height:55vh;color:var(--navy-deep);letter-spacing:.08em;text-transform:uppercase;place-items:center;font:10px IBM Plex Mono,monospace;display:grid}.page-wrap{width:min(1240px,100% - 96px);margin:0 auto}.skip-link{z-index:50;background:var(--navy);color:var(--primary-foreground);transition:top .18s var(--ease-out);padding:12px 16px;font:600 12px IBM Plex Mono,monospace;position:fixed;top:-60px;left:24px}.skip-link:focus{top:16px}.site-header{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:box-shadow .22s var(--ease-out),background .22s var(--ease-out);background:#071928f7;border-bottom:0;position:sticky;top:0}.site-header--scrolled{box-shadow:0 12px 28px #03111f47}.reading-progress{pointer-events:none;background:#89b8d729;height:2px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.reading-progress>span{transform-origin:0;background:var(--navy-signal);will-change:transform;width:100%;height:100%;transition:transform 80ms linear;display:block;transform:scaleX(0)}[dir=rtl] .reading-progress>span{transform-origin:100%}.header-inner{justify-content:space-between;align-items:center;gap:30px;width:min(1350px,100% - 64px);min-height:72px;margin:0 auto;display:flex}.brand{color:#f5f7f8;background:0 0;align-items:center;gap:12px;padding:0;display:inline-flex}.brand-mark{object-fit:contain;filter:brightness(0)invert();width:32px;height:32px}.brand-wordmark{flex-direction:column;gap:2px;line-height:1;display:inline-flex}.brand-wordmark-main{color:#f5f7f8;letter-spacing:.12em;font:700 15px/1 Space Grotesk,sans-serif}.brand-wordmark-sub{color:#89b8d7;letter-spacing:.12em;font:8px/1.1 IBM Plex Mono,monospace}.brand:hover .brand-wordmark-main{color:#a9d8f3}.main-nav{isolation:isolate;border-left:0;align-items:center;gap:clamp(7px,1vw,15px);padding-left:0;display:flex;position:relative}.main-nav:before{display:none}.nav-link,.nav-cv{color:#b4c3ce;transition:color .18s var(--ease-out),transform .18s var(--ease-out),background .18s var(--ease-out),border-color .18s var(--ease-out);background:0 0;align-items:center;gap:8px;padding:9px 10px;font:500 12px DM Sans,sans-serif;display:inline-flex}.nav-link{position:relative}.nav-link:after{display:none}.nav-link:hover{color:#f5f7f8;transform:translateY(-1px)}.nav-link-contact{color:#e2edf4;border:1px solid #0000;margin-left:0;padding-inline:10px}.nav-link-contact:hover{background:#2f6b973d;border-color:#8dd0f26b}.nav-link.is-active{color:#f5f7f8;box-shadow:none;background:#3a7ba538;border:1px solid #8dd0f242;border-radius:7px;padding:9px 10px;font-weight:650}.nav-link.is-active:after{display:none}.nav-link:focus-visible,.nav-cv:focus-visible,.brand:focus-visible,.language-toggle:focus-visible,.theme-toggle:focus-visible,.menu-toggle:focus-visible,.button:focus-visible,.text-link:focus-visible,.home-index-row:focus-visible,.contact-links a:focus-visible,.footer-nav a:focus-visible,.footer-contact-list a:focus-visible,.whatsapp-float:focus-visible{outline:2px solid var(--navy-signal);outline-offset:4px}.nav-signal{background:var(--navy-signal);width:0;height:1px;transition:width .18s var(--ease-out);display:inline-block}.nav-link.is-active .nav-signal{background:#8dd0f2;width:11px;box-shadow:5px 0 0 -2px #8dd0f2}.nav-index{color:#9db2c4;font:10px IBM Plex Mono,monospace}.nav-link.is-active .nav-index{color:var(--navy)}.nav-cv{color:#e9f2f8;background:#2250756b;border:1px solid #69a7cf7a;border-radius:999px;gap:7px;padding:8px 14px}.nav-cv:hover{color:#fff;background:#2f6b9794;border-color:#8dd0f2}.language-menu{position:relative}.language-menu-trigger{color:#b4c3ce;letter-spacing:.05em;cursor:pointer;min-height:31px;transition:color .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out);background:#0d2b418c;border:1px solid #69a7cf3d;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font:600 10px IBM Plex Mono,monospace;display:inline-flex}.language-menu-trigger:hover,.language-menu-trigger:focus-visible,.language-menu.is-open .language-menu-trigger{color:#fff;background:#2f6b9780;border-color:#8dd0f2}.language-menu-trigger:focus-visible,.language-menu-options button:focus-visible{outline:2px solid var(--navy-signal);outline-offset:3px}.language-menu-trigger svg{transition:transform .18s var(--ease-out)}.language-menu.is-open .language-menu-trigger svg{transform:rotate(180deg)}.language-menu-options{z-index:4;opacity:0;visibility:hidden;pointer-events:none;transform-origin:100% 0;min-width:158px;transition:opacity .18s var(--ease-out),transform .18s var(--ease-out),visibility .18s var(--ease-out);top:calc(100% + 9px);background:#0b2235;border:1px solid #69a7cf4d;border-radius:8px;padding:6px;display:grid;position:absolute;inset-inline-end:0;transform:translateY(-5px)scale(.98);box-shadow:0 14px 28px #03111f57}.language-menu.is-open .language-menu-options{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.language-menu-options button{color:#c6d4dd;text-align:start;cursor:pointer;width:100%;min-height:32px;transition:color .16s var(--ease-out),background .16s var(--ease-out);background:0 0;grid-template-columns:26px 1fr;align-items:center;gap:8px;padding:0 8px;font:500 11px DM Sans,sans-serif;display:grid}.language-menu-options button:hover,.language-menu-options button.is-active{color:#f5f7f8;background:#2f6b9759}.language-menu-options .language-short{color:#8dd0f2;letter-spacing:.06em;font:600 9px IBM Plex Mono,monospace}.language-toggle{color:#7892a4;letter-spacing:.04em;transition:color .18s var(--ease-out);background:0 0;align-items:center;gap:3px;padding:8px 2px;font:600 10px IBM Plex Mono,monospace;display:inline-flex}.language-toggle.language-toggle-mobile{display:none}.language-toggle button{color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:0}.language-toggle button:focus-visible{outline:2px solid var(--navy-signal);outline-offset:3px}.language-toggle:hover,.language-toggle:focus-visible{color:#e9f2f8}.language-toggle .is-active{color:#8dd0f2}.language-slash{color:#526b7b}.theme-toggle{color:#b4c3ce;width:31px;height:31px;transition:color .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out);background:#0d2b418c;border:1px solid #69a7cf3d;border-radius:50%;place-items:center;padding:0;display:inline-grid}.theme-toggle:hover,.theme-toggle:focus-visible{color:#fff;background:#2f6b9780;border-color:#8dd0f2}.menu-toggle{color:#e9f2f8;background:0 0;padding:7px;display:none}.hero{background:var(--graphite);min-height:min(810px,100vh - 76px);color:var(--paper);flex-direction:column;display:flex;position:relative}.hero-grid{pointer-events:none;opacity:.32;background-image:linear-gradient(#f4f1ea14 1px,#0000 1px),linear-gradient(90deg,#f4f1ea14 1px,#0000 1px);background-size:92px 92px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 78%);mask-image:linear-gradient(90deg,#000,#0000 78%)}.hero-content{z-index:1;flex:1;grid-template-columns:minmax(0,1fr) minmax(350px,.9fr);align-items:center;gap:72px;padding-top:74px;padding-bottom:44px;display:grid;position:relative}.hero-copy{max-width:680px;animation:rise-in .68s var(--ease-out)both}.eyebrow,.section-code,.hero-kicker,.heading-micro{color:var(--slate);letter-spacing:.13em;text-transform:uppercase;margin:0;font:10px/1.4 IBM Plex Mono,monospace}.hero-eyebrow{color:var(--navy);align-items:center;gap:10px;margin-bottom:56px;display:flex}.status-dot{background:var(--navy);width:7px;height:7px;box-shadow:0 0 0 4px rgba(var(--navy-rgb),.12);border-radius:50%;display:inline-block}.hero-kicker{color:#b7c4d1;margin-bottom:20px}.hero-kicker span{color:var(--navy);margin:0 8px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space Grotesk,sans-serif}h1{max-width:720px;color:var(--paper);letter-spacing:-.065em;margin-bottom:22px;font-size:clamp(42px,5.5vw,78px);font-weight:520;line-height:.99}h1 em{color:var(--navy);font-style:normal}.hero-role{color:#d8e6ee;margin-bottom:15px;font:500 18px/1.4 Space Grotesk,sans-serif}.hero-intro{color:#b7c4d1;max-width:560px;margin-bottom:36px;font-size:16px;line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:16px 23px;display:flex}.button{cursor:pointer;min-height:47px;transition:transform .16s var(--ease-out),background .18s var(--ease-out),color .18s var(--ease-out);justify-content:center;align-items:center;gap:10px;padding:0 18px;font:600 12px DM Sans,sans-serif;display:inline-flex}.button:active{transform:scale(.97)}.button-primary{background:var(--navy-signal);color:var(--primary-foreground)}.button-primary:hover{background:var(--navy-deep)}.button-secondary{color:#d8e6ee;background:0 0;border:1px solid #d8e6ee6b}.button-secondary:hover{color:var(--paper);border-color:var(--navy-signal);background:rgba(var(--navy-rgb),.2)}.text-link{color:#d8e6ee;transition:color .18s var(--ease-out),border .18s var(--ease-out);border-bottom:1px solid #d8e6ee59;align-items:center;gap:7px;padding-bottom:5px;font:500 12px DM Sans,sans-serif;display:inline-flex}.text-link:hover{color:var(--navy);border-color:var(--navy)}.hero-visual{min-height:450px;animation:rise-in .8s .12s var(--ease-out)both;background:#162b43;border:1px solid #f4f1ea2b;position:relative;overflow:hidden}.hero-visual img{object-fit:cover;object-position:center top;opacity:1;mix-blend-mode:normal;width:100%;height:100%;min-height:450px;display:block}.accent-text{color:var(--navy)}.hero-visual-caption{color:#f4f1eab3;letter-spacing:.12em;font:9px IBM Plex Mono,monospace;position:absolute;top:18px;right:18px}.hero-bottom{color:#9eb6c7;align-items:center;gap:14px;padding-bottom:28px;display:flex}.section-code{color:#9eb6c7;white-space:nowrap}.scroll-line{background:#405a75;width:52px;height:1px}.hero-note{color:#9eb6c7;margin-left:auto;font:10px IBM Plex Mono,monospace}.section{padding:132px 0}.section-grid{grid-template-columns:130px minmax(0,1fr);gap:54px;display:grid}.section-aside{flex-direction:column;align-items:flex-start;gap:22px;display:flex}.aside-rule{background:var(--line);width:1px;height:120px;margin-left:4px}.about-content,.skills-content,.projects-content,.journey-content{min-width:0}.section-heading-row{justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px;display:flex}.heading-micro{color:#91a9bb}h2{letter-spacing:-.06em;max-width:780px;margin-bottom:46px;font-size:clamp(38px,4.7vw,65px);font-weight:510;line-height:1.03}.about-section{background:var(--paper)}.about-columns{grid-template-columns:minmax(0,1fr) minmax(290px,.75fr);align-items:start;gap:clamp(44px,7vw,108px);display:grid}.about-columns p{color:#516678;max-width:610px;font-size:16px;line-height:1.72}.about-columns .lead-copy{color:var(--ink);letter-spacing:-.025em;font:500 22px/1.42 Space Grotesk,sans-serif}.mini-facts{border-top:1px solid var(--line);flex-wrap:wrap;gap:27px;margin-top:43px;padding-top:21px;display:flex}.mini-facts div{flex-direction:column;gap:5px;display:flex}.mini-facts strong{color:var(--ink);letter-spacing:-.05em;font:600 25px Space Grotesk,sans-serif}.mini-facts span{color:#718597;letter-spacing:.05em;text-transform:uppercase;font:9px IBM Plex Mono,monospace}.about-figure{background:#e7ebf0;margin:0;padding:10px;position:relative;overflow:hidden}.about-figure:after{content:"";pointer-events:none;opacity:.6;background-image:linear-gradient(90deg,transparent 49.5%,rgba(var(--navy-rgb),.75)49.5%,rgba(var(--navy-rgb),.75)50.5%,transparent 50.5%),linear-gradient(rgba(var(--navy-rgb),.65)1px,transparent 1px);background-size:100% 100%,100% 27px;position:absolute;inset:10px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 30% 73%,#0000);mask-image:linear-gradient(90deg,#0000,#000 30% 73%,#0000)}.about-figure img{aspect-ratio:4/3;object-fit:cover;filter:saturate(.75);width:100%;display:block}.about-figure figcaption{color:#617989;letter-spacing:.03em;text-transform:uppercase;justify-content:space-between;gap:10px;padding:12px 4px 2px;font:9px IBM Plex Mono,monospace;display:flex}.skills-section{background:#e8ebf0}.skills-section h2{margin-bottom:39px}.skills-heading{margin-bottom:34px}.skills-page-section .skill-row{align-items:start}.skills-page-section .skill-icon{margin-top:1px}.skills-page-section .skill-tags{padding-top:1px}.skills-list{border-top:1px solid #c8d5df}.skill-row{transition:transform .2s var(--ease-out),background .2s var(--ease-out);border-bottom:1px solid #c8d5df;grid-template-columns:43px 44px minmax(0,1fr) minmax(180px,.48fr);align-items:center;gap:16px;padding:23px 0;display:grid}.skills-list--compact .skill-row{grid-template-columns:43px minmax(0,1fr) minmax(180px,.48fr)}.skill-row:hover{background:#f4f1ea6b;transform:translate(8px)}.skill-icon{width:39px;height:39px;color:var(--ink);border:1px solid #bdcddb;place-items:center;display:grid}.skill-number{color:#91a9bb;font:10px IBM Plex Mono,monospace}.skill-main h3{color:var(--ink);letter-spacing:-.025em;margin-bottom:5px;font-size:18px;font-weight:580}.skill-main p{color:#607086;max-width:580px;margin-bottom:0;font-size:13px;line-height:1.5}.skill-tags{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.skill-tags span,.stack-list span{color:#617989;background:#f4f1eaab;padding:6px 8px;font:9px IBM Plex Mono,monospace}.projects-section{background:var(--graphite);color:var(--paper)}.projects-section .section-code,.projects-section .eyebrow{color:#9eb6c7}.projects-section .heading-micro{color:#718597}.projects-section h2{color:var(--paper);margin-bottom:0}.projects-heading{justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:44px;display:flex}.projects-heading>p{color:#a9becd;max-width:280px;margin-bottom:5px;font-size:14px;line-height:1.55}.projects-list{border-top:1px solid #324863;flex-direction:column;gap:0;display:flex}.project-card{min-height:0;transition:transform .22s var(--ease-out),background .22s var(--ease-out),padding .22s var(--ease-out);background:0 0;border:0;border-bottom:1px solid #324863;grid-template-columns:60px minmax(200px,.9fr) minmax(0,1.1fr) minmax(180px,.72fr);align-items:center;gap:22px;padding:25px 0;display:grid}.project-card:hover{background:rgba(var(--navy-rgb),.05);border-color:#324863;padding-left:12px;transform:translate(8px)}.project-slate{background:0 0}.project-paper{color:var(--paper);background:0 0;border-color:#324863}.project-paper:hover{background:rgba(var(--navy-rgb),.05)}.project-topline{color:#a9becd;align-items:center;gap:11px;font:10px IBM Plex Mono,monospace;display:flex}.project-number{color:var(--navy)}.project-category{flex:1}.project-icon{color:var(--navy)}.project-paper .project-icon,.project-paper .project-category{color:#718597}.project-body{padding-top:0}.project-body h3{color:var(--paper);letter-spacing:-.05em;margin-bottom:12px;font-size:28px;font-weight:510;line-height:1.03}.project-paper .project-body h3{color:var(--ink)}.project-result{border-left:2px solid var(--navy-signal);color:var(--navy-signal);align-items:flex-start;gap:7px;margin-bottom:16px;padding-left:11px;font:600 14px/1.45 DM Sans,sans-serif;display:flex}.project-paper .project-result{color:var(--navy-deep)}.project-description{color:#c8d5df;margin-bottom:0;font-size:13px;line-height:1.6}.project-paper .project-description{color:#607086}.project-footer{border-top:0;justify-content:space-between;align-items:flex-end;gap:10px;padding-top:0;display:flex}.project-paper .project-footer{border-color:#0000}.stack-list{flex-wrap:wrap;gap:5px;display:flex}.project-arrow{color:#82919a;transition:transform .18s var(--ease-out);flex:none}.project-card:hover .project-arrow{color:var(--navy);transform:translate(4px)}.journey-section{background:var(--paper)}.journey-content h2{margin-bottom:55px}.timeline{border-top:1px solid var(--line)}.timeline-item{border-bottom:1px solid var(--line);grid-template-columns:27px 150px minmax(0,1fr) 120px;align-items:start;gap:16px;padding:24px 0;display:grid;position:relative}.timeline-marker{justify-content:center;height:100%;display:flex;position:relative}.timeline-marker:before{content:"";background:#c7d2dc;width:1px;height:calc(100% + 48px);position:absolute;top:-24px}.timeline-item:last-child .timeline-marker:before{height:24px}.timeline-marker span{z-index:1;border:2px solid var(--paper);background:#91a9bb;width:9px;height:9px;margin-top:3px;position:relative;box-shadow:0 0 0 1px #91a9bb}.timeline-item.is-current .timeline-marker span{background:var(--navy);box-shadow:0 0 0 1px var(--navy),0 0 0 5px rgba(var(--navy-rgb),.14)}.timeline-date{color:#6c8194;font:10px/1.4 IBM Plex Mono,monospace}.timeline-info h3{color:var(--ink);letter-spacing:-.025em;margin-bottom:7px;font-size:17px;font-weight:600}.timeline-info h3 span{color:var(--navy)}.timeline-info p{color:#5d7488;max-width:660px;margin-bottom:0;font-size:13px;line-height:1.55}.timeline-label{color:#637b8f;border:1px solid var(--line);justify-self:end;padding:6px 8px;font:9px IBM Plex Mono,monospace}.experience-item{align-items:start}.experience-item .timeline-date{padding-top:3px}.experience-contract{letter-spacing:.04em;text-transform:uppercase;margin:0 0 14px;color:var(--navy-deep)!important;font:11px/1.4 IBM Plex Mono,monospace!important}.experience-bullets{color:#5d7488;gap:7px;max-width:690px;margin:0 0 18px;padding:0;font-size:13px;line-height:1.55;list-style:none;display:grid}.experience-bullets li{padding-left:15px;position:relative}.experience-bullets li:before{content:"—";color:var(--navy-signal);font-family:IBM Plex Mono,monospace;position:absolute;left:0}.experience-environment{flex-wrap:wrap;align-items:center;gap:6px;max-width:720px;display:flex}.experience-environment>span{color:#637b8f;letter-spacing:.08em;text-transform:uppercase;margin-right:3px;font:9px IBM Plex Mono,monospace}.experience-environment b{border:1px solid rgba(var(--navy-rgb),.18);color:var(--navy-deep);padding:5px 7px;font:500 9px IBM Plex Mono,monospace}.experience-section{background:var(--paper);position:relative;overflow:hidden}.experience-section:before{content:"";pointer-events:none;opacity:.52;background-image:linear-gradient(rgba(var(--navy-rgb),.07)1px,transparent 1px),linear-gradient(90deg,transparent calc(50% - 1px),rgba(var(--navy-rgb),.1)50%,transparent calc(50% + 1px));background-size:100% 52px,100% 100%;position:absolute;inset:0}.experience-section .page-wrap{position:relative}.experience-heading{margin-bottom:30px}.experience-overview{border:1px solid rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.2);grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr);gap:1px;margin-bottom:34px;display:grid}.experience-overview-copy{background:linear-gradient(135deg,rgba(var(--navy-rgb),.1),#ffffffc2);padding:clamp(24px,4vw,43px)}.experience-overview-copy>span{color:var(--navy-signal);letter-spacing:.12em;text-transform:uppercase;font:700 9px IBM Plex Mono,monospace}.experience-overview-copy h2{max-width:680px;color:var(--ink);letter-spacing:-.065em;margin:19px 0 14px;font:650 clamp(30px,3.4vw,51px)/.99 Space Grotesk,sans-serif}.experience-overview-copy p{color:#597082;max-width:620px;margin:0;font-size:14px;line-height:1.75}.experience-overview-facts{background:var(--navy-deep);grid-template-rows:repeat(3,1fr);margin:0;display:grid}.experience-overview-facts>div{border-bottom:1px solid #b9d8ea33;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;padding:18px 22px;display:grid}.experience-overview-facts>div:last-child{border-bottom:0}.experience-overview-facts dt{color:#a8d9f5;letter-spacing:-.055em;font:650 25px/1 Space Grotesk,sans-serif}.experience-overview-facts dd{color:#d8e6ee;letter-spacing:.055em;text-transform:uppercase;margin:0;font:10px/1.45 IBM Plex Mono,monospace}.experience-timeline{border-top:0;gap:12px;display:grid}.experience-item{border:1px solid rgba(var(--navy-rgb),.18);min-height:0;transition:border-color .18s var(--ease-out),background .18s var(--ease-out),transform .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#ffffffa6;grid-template-columns:28px 158px minmax(0,1fr);gap:18px;padding:24px 24px 25px;display:grid}.experience-item:before{content:"";width:3px;transition:background .18s var(--ease-out);background:0 0;position:absolute;top:0;bottom:0;left:0}.experience-item:hover{border-color:rgba(var(--navy-rgb),.46);background:#fff;transform:translateY(-3px);box-shadow:0 15px 32px #0c233714}.experience-item:hover:before,.experience-item.is-current:before{background:var(--navy-signal)}.experience-item.is-current{color:#f4f7fa;border-color:var(--navy);background:var(--navy);box-shadow:0 16px 30px #07192833}.experience-item .timeline-marker:before{height:calc(100% + 50px);top:-25px}.experience-item .timeline-marker span{margin-top:6px}.experience-item .timeline-date{color:#536f82;padding-top:5px}.experience-item.is-current .timeline-date{color:#b6d8eb}.experience-title-row{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.experience-item .timeline-info h3{color:var(--ink);letter-spacing:-.055em;margin:0;font-size:clamp(22px,2vw,29px);line-height:1.06}.experience-item.is-current .timeline-info h3{color:#f7fbfd}.experience-title-row .timeline-label{color:#526f82;border-color:rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.045);flex:none;margin-top:2px}.experience-item.is-current .timeline-label{color:#d9edf8;background:#b9d8ea1a;border-color:#b9d8ea61}.experience-contract{margin:13px 0 17px!important}.experience-item.is-current .experience-contract{color:#b6d8eb!important}.experience-bullets{gap:0;max-width:760px;margin-bottom:20px}.experience-bullets li{border-top:1px solid rgba(var(--navy-rgb),.13);grid-template-columns:26px minmax(0,1fr);gap:9px;padding:10px 0;display:grid}.experience-bullets li:before{display:none}.experience-bullets li small{color:var(--navy-signal);letter-spacing:.08em;font:700 9px/1.7 IBM Plex Mono,monospace}.experience-bullets li span{color:#5d7488}.experience-item.is-current .experience-bullets li{border-color:#b9d8ea2e}.experience-item.is-current .experience-bullets li span{color:#d5e4ec}.experience-environment{gap:6px;padding-top:2px}.experience-environment>span{margin-right:7px}.experience-environment b{background:rgba(var(--navy-rgb),.04)}.experience-item.is-current .experience-environment>span{color:#a8c8db}.experience-item.is-current .experience-environment b{color:#d9edf8;background:#b9d8ea14;border-color:#b9d8ea47}.formation-section{background:var(--paper);position:relative;overflow:hidden}.formation-section:before{content:"";pointer-events:none;opacity:.55;background-image:linear-gradient(90deg,transparent calc(50% - 1px),rgba(var(--navy-rgb),.1)50%,transparent calc(50% + 1px));background-size:100% 100%;position:absolute;inset:0}.formation-section .page-wrap{position:relative}.formation-heading{margin-bottom:30px}.formation-overview{border:1px solid rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.2);grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr);gap:1px;margin-bottom:34px;display:grid}.formation-overview-copy{background:linear-gradient(135deg,rgba(var(--navy-rgb),.1),#ffffffb8);padding:clamp(24px,4vw,43px)}.formation-overview-copy>span{color:var(--navy-signal);letter-spacing:.12em;text-transform:uppercase;font:700 9px IBM Plex Mono,monospace}.formation-overview-copy h2{max-width:650px;color:var(--ink);letter-spacing:-.065em;margin:19px 0 14px;font:650 clamp(30px,3.4vw,51px)/.99 Space Grotesk,sans-serif}.formation-overview-copy p{color:#597082;max-width:620px;margin:0;font-size:14px;line-height:1.75}.formation-overview-facts{background:var(--navy-deep);grid-template-rows:repeat(3,1fr);margin:0;display:grid}.formation-overview-facts>div{border-bottom:1px solid #b9d8ea33;grid-template-columns:84px minmax(0,1fr);align-items:center;gap:14px;padding:18px 22px;display:grid}.formation-overview-facts>div:last-child{border-bottom:0}.formation-overview-facts dt{color:#a8d9f5;letter-spacing:-.055em;font:650 25px/1 Space Grotesk,sans-serif}.formation-overview-facts dd{color:#d8e6ee;letter-spacing:.055em;text-transform:uppercase;margin:0;font:10px/1.45 IBM Plex Mono,monospace}.formation-list{gap:10px;display:grid}.formation-item{border:1px solid rgba(var(--navy-rgb),.18);min-height:126px;transition:border-color .18s var(--ease-out),background .18s var(--ease-out),transform .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#ffffff9e;grid-template-columns:38px 104px 142px minmax(0,1fr) max-content;align-items:center;gap:20px;padding:20px 22px;display:grid;position:relative;overflow:hidden}.formation-item:before{content:"";width:3px;transition:background .18s var(--ease-out);background:0 0;position:absolute;top:0;bottom:0;left:0}.formation-item:hover{border-color:rgba(var(--navy-rgb),.46);background:#fff;transform:translateY(-3px);box-shadow:0 15px 32px #0c233714}.formation-item:hover:before,.formation-item.is-current:before{background:var(--navy-signal)}.formation-item.is-current{color:#f4f7fa;border-color:var(--navy);background:var(--navy);box-shadow:0 16px 30px #07192833}.formation-ordinal{color:#7190a4;letter-spacing:.08em;align-self:start;font:700 10px IBM Plex Mono,monospace}.formation-item.is-current .formation-ordinal{color:#a8d9f5}.formation-logo-wrap{border:1px solid rgba(var(--navy-rgb),.16);background:#fff;justify-content:center;align-items:center;width:104px;height:76px;display:flex;overflow:hidden}.formation-logo{object-fit:contain;width:100%;height:100%;padding:9px;display:block}.formation-period{color:var(--navy-deep);letter-spacing:.02em;font:10px/1.5 IBM Plex Mono,monospace}.formation-item.is-current .formation-period{color:#b6d8eb}.formation-info h2{max-width:670px;color:var(--ink);letter-spacing:-.055em;margin:0 0 9px;font-size:clamp(20px,2vw,26px);line-height:1.07}.formation-info p{color:#5d7488;max-width:650px;margin:0;font-size:13px;line-height:1.55}.formation-item.is-current .formation-info h2{color:#f7fbfd}.formation-item.is-current .formation-info p{color:#c0d8e6}.formation-level{color:#526f82;border:1px solid rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.045);letter-spacing:.055em;text-align:right;text-transform:uppercase;justify-self:end;max-width:155px;padding:8px 10px;font:9px/1.35 IBM Plex Mono,monospace}.formation-item.is-current .formation-level{color:#d9edf8;background:#b9d8ea1a;border-color:#b9d8ea61}[data-theme=dark] .formation-logo-wrap{background:#fff;border-color:#fff3}[data-theme=dark] .formation-item:hover{background:#ffffff0a}.cert-strip{flex-wrap:wrap;gap:9px;margin-top:44px;display:flex}.cert-strip span{color:#607786;background:#e6ebf0;padding:8px 10px;font:9px IBM Plex Mono,monospace}.cert-strip span:first-child{color:#8298a9;background:0 0;padding-left:0}.certifications-section{background:#ebeff1}.certifications-heading{grid-template-columns:minmax(0,1fr) minmax(220px,.62fr);align-items:end;gap:52px;margin-bottom:42px;display:grid}.certifications-heading h2{max-width:650px;margin-bottom:0}.certifications-heading p{color:#607786;max-width:330px;margin:0;font-size:14px;line-height:1.7}.contact-section{background:var(--paper);background-image:linear-gradient(90deg,transparent 0,transparent calc(50% - 1px),rgba(var(--navy-rgb),.16)50%,transparent calc(50% + 1px)),linear-gradient(#c7d2dc40 1px,transparent 1px);background-size:100% 100%,100% 48px;padding:118px 0 135px;position:relative}.contact-section:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:0;right:0}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(310px,.62fr);align-items:start;gap:clamp(60px,10vw,150px);display:grid}.contact-copy .section-code{color:var(--navy-deep)}.contact-copy h2{max-width:600px;color:var(--graphite);margin:46px 0 20px}.contact-copy p:not(.section-code){max-width:470px;color:var(--navy-deep);font-size:15px;line-height:1.65}.contact-directory{border:1px solid rgba(var(--navy-rgb),.24);background:linear-gradient(135deg,#ffffffb8,rgba(var(--navy-rgb),.04));max-width:580px;margin-top:36px;box-shadow:0 18px 42px #0d2a410f}.contact-directory-header{color:#597385;border-bottom:1px solid rgba(var(--navy-rgb),.2);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;padding:14px 17px;font:700 9px IBM Plex Mono,monospace;display:flex}.contact-directory-status{color:#3a6e90;letter-spacing:.06em;white-space:nowrap;align-items:center;gap:6px;font-size:8px;display:inline-flex}.contact-directory-status i{background:var(--navy-signal);width:5px;height:5px;box-shadow:0 0 0 3px rgba(var(--navy-rgb),.1);border-radius:50%;flex:none}.contact-links{background:rgba(var(--navy-rgb),.17);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.contact-links a{min-width:0;min-height:90px;color:var(--graphite);transition:color .18s var(--ease-out),background .18s var(--ease-out),transform .18s var(--ease-out);background:#ffffffa6;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;padding:15px;font-family:IBM Plex Mono,monospace;text-decoration:none;display:grid}.contact-link-icon{width:38px;height:38px;color:var(--navy-signal);border:1px solid rgba(var(--navy-rgb),.23);background:rgba(var(--navy-rgb),.055);transition:color .18s var(--ease-out),background .18s var(--ease-out),border-color .18s var(--ease-out);place-items:center;display:inline-grid}.contact-links a svg{color:inherit;transition:color .18s var(--ease-out),transform .18s var(--ease-out);flex:none}.contact-link-copy{gap:5px;min-width:0;display:grid}.contact-link-copy small{color:#6d8494;letter-spacing:.075em;text-transform:uppercase;font:9px IBM Plex Mono,monospace}.contact-link-copy strong{overflow-wrap:anywhere;color:inherit;letter-spacing:-.035em;font:700 12px/1.35 IBM Plex Mono,monospace}.contact-links a:hover{color:var(--navy-deep);background:rgba(var(--navy-rgb),.095);transform:translateY(-2px)}.contact-links a:hover .contact-link-icon{color:var(--navy-deep);border-color:rgba(var(--navy-rgb),.48);background:rgba(var(--navy-rgb),.13)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.contact-social:hover .contact-link-icon{box-shadow:0 8px 16px rgba(var(--navy-rgb),.2);transform:translateY(-3px)rotate(-4deg)scale(1.08)}.contact-social:hover .contact-link-icon svg{transform:rotate(4deg)scale(1.05)}}@media (max-width:520px){.contact-links{grid-template-columns:1fr}.contact-links a{min-height:76px}}.contact-form{color:var(--ink);border:1px solid rgba(var(--navy-rgb),.27);background:linear-gradient(145deg,#ffffffc2,rgba(var(--navy-rgb),.045));padding:clamp(22px,3vw,32px);position:relative;box-shadow:0 22px 48px #0d2a4112}.form-header{color:var(--navy-deep);border-bottom:1px solid rgba(var(--navy-rgb),.22);letter-spacing:.09em;justify-content:space-between;align-items:center;margin-bottom:18px;padding:0 0 17px;font:10px IBM Plex Mono,monospace;display:flex}.form-header svg{color:var(--navy-signal)}.form-intro{color:#59707f;max-width:410px;margin:0 0 35px;font:14px/1.65 DM Sans,sans-serif}.contact-form-guide{border:1px solid rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 34px;padding:0;list-style:none;display:grid}.contact-form-guide li{border-right:1px solid rgba(var(--navy-rgb),.2);background:#ffffff8f;align-content:start;gap:5px;min-width:0;padding:13px 12px;display:grid}.contact-form-guide li:last-child{border-right:0}.contact-form-guide span{color:var(--navy-signal);letter-spacing:.08em;font:9px IBM Plex Mono,monospace}.contact-form-guide strong{color:var(--navy-deep);letter-spacing:-.035em;font:700 13px/1.15 Space Grotesk,sans-serif}.contact-form-guide small{color:#617a8a;letter-spacing:.04em;text-transform:uppercase;font:8px/1.45 IBM Plex Mono,monospace}.contact-form label{color:var(--navy-deep);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font:10px IBM Plex Mono,monospace;display:block}.contact-form input,.contact-form textarea{resize:vertical;width:100%;color:var(--ink);border:0;border-bottom:1px solid rgba(var(--navy-rgb),.34);transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:0 0;outline:none;margin-bottom:31px;padding:0 0 13px;font:500 15px/1.55 DM Sans,sans-serif}.contact-form textarea{min-height:178px;line-height:1.7}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#82919a;opacity:1}.contact-form input:hover,.contact-form textarea:hover{border-color:rgba(var(--navy-rgb),.62)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--navy-signal);box-shadow:inset 0 -1px 0 var(--navy-signal)}.contact-form input[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:#bb5b50;box-shadow:inset 0 -1px #bb5b50}.contact-form .button{letter-spacing:.09em;text-transform:uppercase;width:100%;min-height:56px;margin-top:1px;font-family:IBM Plex Mono,monospace;font-size:10px}.contact-form .button:disabled{cursor:wait;opacity:.72}.contact-form label span{color:var(--navy-signal);margin-right:7px}.turnstile-field{border-bottom:1px solid rgba(var(--navy-rgb),.22);min-height:70px;margin:-3px 0 27px;padding:12px 0 10px}.contact-turnstile-slot{margin-top:2px}.turnstile-widget{max-width:100%;min-height:65px}.turnstile-loading{color:#607683;letter-spacing:.07em;text-transform:uppercase;margin-top:7px;font:9px IBM Plex Mono,monospace;display:block}.form-delivery-feedback{color:#426c84;border-top:1px solid rgba(var(--navy-rgb),.2);letter-spacing:.055em;text-transform:uppercase;align-items:center;gap:8px;margin:16px 0 0;padding:12px 0 0;font:9px/1.45 IBM Plex Mono,monospace;display:flex}.form-delivery-feedback i{background:var(--navy-signal);width:6px;height:6px;box-shadow:0 0 0 3px rgba(var(--navy-rgb),.11);border-radius:50%;flex:none}.form-delivery-feedback.is-success{color:var(--navy-deep)}.form-delivery-feedback.is-success i{background:var(--navy-signal)}.form-delivery-feedback.is-error{color:#9a4d44}.form-delivery-feedback.is-error i{background:#bb5b50}.form-delivery-feedback.is-validation{color:#9a4d44}.form-delivery-feedback.is-validation i{background:#bb5b50}.form-route-status{color:#607683;border-top:1px solid rgba(var(--navy-rgb),.2);letter-spacing:.075em;justify-content:space-between;gap:14px;padding-top:14px;font:9px IBM Plex Mono,monospace;display:flex}.form-route-status span{align-items:center;gap:7px;display:inline-flex}.recommendations-section{background:var(--paper)}.recommendations-empty{border:1px solid var(--line);background:rgba(var(--navy-rgb),.035);max-width:760px;padding:clamp(28px,5vw,58px)}.recommendations-empty-top{color:var(--navy-signal);letter-spacing:.08em;align-items:center;gap:10px;font:10px IBM Plex Mono,monospace;display:flex}.recommendations-empty h2{max-width:620px;color:var(--ink);margin:28px 0 16px;font-size:clamp(30px,4vw,52px)}.recommendations-empty p{color:#5d7488;max-width:600px;margin:0 0 28px;font-size:15px;line-height:1.65}.multi-page-shell{min-height:100vh}.page-tone-dark{background:var(--graphite);color:var(--paper)}.page-tone-paper{background:var(--paper);color:var(--ink)}.page-tone-mist{color:var(--ink);background:#ebeff1}.page-tone-mist .page-hero{background:var(--paper);border-bottom-color:var(--line)}.page-tone-mist .page-hero:before{opacity:.22}.page-hero{border-bottom:0;padding:72px 0 88px;position:relative;overflow:hidden}.page-tone-dark .page-hero{background:var(--graphite);border-bottom-color:#c7d2dc2e}.page-hero:before{content:"";pointer-events:none;opacity:.38;background-image:linear-gradient(90deg,transparent calc(50% - 1px),rgba(var(--navy-rgb),.13)50%,transparent calc(50% + 1px)),linear-gradient(#c7d2dc29 1px,transparent 1px);background-size:100% 100%,100% 48px;position:absolute;inset:0}.page-hero:after{display:none}.page-hero-grid{display:block;position:relative}.page-hero-grid-with-visual{grid-template-columns:minmax(0,1fr) minmax(300px,35%);align-items:center;gap:clamp(42px,7vw,104px);display:grid}.page-hero-copy{min-width:0}.page-hero-visual{align-self:center;min-width:0}.page-eyebrow{margin:32px 0 22px}.page-hero h1{letter-spacing:-.075em;max-width:850px;margin:0;font-size:clamp(54px,8vw,112px);line-height:.94}.home-hero-name{color:var(--paper);display:block}.home-hero-role{max-width:760px;color:var(--navy-signal);letter-spacing:-.065em;margin-top:14px;font-size:clamp(30px,4.5vw,64px);line-height:.98;display:block}.page-tone-dark .page-hero h1{color:var(--paper)}.page-tone-paper .page-hero h1,.page-tone-mist .page-hero h1{color:var(--ink)}.page-hero-intro{color:#657b8f;max-width:570px;margin:30px 0 0;font-size:16px;line-height:1.75}.page-tone-dark .page-hero-intro{color:#b4c4d0}.page-tone-mist .page-hero-intro{color:#5d7488}.page-hero-actions{z-index:3;margin-top:34px;position:relative}.contact-hero-action{color:var(--navy-deep);border-bottom:1px solid var(--navy-signal);letter-spacing:.08em;text-transform:uppercase;transition:color .18s var(--ease-out),gap .18s var(--ease-out);align-items:center;gap:9px;padding:12px 0 11px;font:700 10px IBM Plex Mono,monospace;display:inline-flex}.contact-hero-action:hover{color:var(--navy-signal);gap:13px}.contact-hero-route{min-height:284px;color:var(--navy-deep);border-top:1px solid rgba(var(--navy-rgb),.35);border-left:1px solid rgba(var(--navy-rgb),.22);background:linear-gradient(90deg,rgba(var(--navy-rgb),.06),transparent 64%);align-content:space-between;gap:22px;padding:17px 0 0 19px;font-family:IBM Plex Mono,monospace;display:grid}.contact-hero-route-top,.contact-hero-route-meta,.contact-hero-route>a{letter-spacing:.08em;justify-content:space-between;align-items:center;gap:12px;font-size:9px;display:flex}.contact-hero-route-state{color:#396d91;align-items:center;gap:6px;display:inline-flex}.contact-hero-route-state i,.form-route-status i{background:var(--navy-signal);width:6px;height:6px;box-shadow:0 0 0 3px rgba(var(--navy-rgb),.11);border-radius:50%;flex:none;display:inline-block}.contact-hero-route-main{border-top:1px solid rgba(var(--navy-rgb),.18);border-bottom:1px solid rgba(var(--navy-rgb),.18);gap:10px;padding:18px 0;display:grid}.contact-hero-route-main span,.contact-hero-route-meta>span:first-child{color:#647985;letter-spacing:.1em;font-size:9px}.contact-hero-route-main strong{color:var(--ink);letter-spacing:-.03em;overflow-wrap:anywhere;font:600 clamp(14px,1.3vw,17px)/1.35 Space Grotesk,sans-serif}.contact-hero-route-meta{color:#416579}.contact-hero-route>a{color:var(--navy-deep);border-top:1px solid rgba(var(--navy-rgb),.35);transition:color .18s var(--ease-out),padding .18s var(--ease-out);padding:13px 0 0;font-weight:700}.contact-hero-route>a:hover{color:var(--navy-signal);padding-right:6px}.home-scroll{color:#7b92a3;letter-spacing:.08em;align-items:center;gap:15px;margin:84px 0 0;font:9px IBM Plex Mono,monospace;display:flex}.home-scroll svg{color:var(--navy)}.home-visual{border:1px solid #c7d2dc3d;width:100%;min-height:460px;position:relative;overflow:hidden}.home-visual img{object-fit:cover;object-position:center 18%;opacity:1;mix-blend-mode:normal;width:100%;height:100%;min-height:460px;display:block}.portrait-interactive{transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out)}.portrait-interactive img{transition:transform .26s var(--ease-out)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.portrait-interactive:hover{border-color:#8fd0f5c7;box-shadow:0 16px 36px #0412202e}.portrait-interactive:hover img{transform:scale(1.025)}}.home-devops-section{background:var(--navy-deep);color:var(--paper);padding:102px 0 120px}.home-devops-section .section-heading-row{border-color:#deeaf240}.home-devops-section .eyebrow,.home-devops-section .heading-micro{color:#a9c5d9}.home-devops-layout{grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(38px,7vw,112px);margin-top:44px;display:grid}.home-devops-copy{max-width:420px}.home-devops-signal{color:#9bceef;border:1px solid #9bceef66;place-items:center;width:50px;height:50px;display:inline-grid}.home-devops-copy h2{max-width:390px;color:var(--paper);letter-spacing:-.065em;margin:26px 0 18px;font-size:clamp(38px,4.2vw,64px);line-height:.95}.home-devops-copy p{color:#c2d1dc;margin:0;font-size:15px;line-height:1.8}.home-devops-link{color:#b7dcf2;letter-spacing:.08em;text-transform:uppercase;transition:color .18s var(--ease-out),gap .18s var(--ease-out);border-bottom:1px solid #b7dcf28c;align-items:center;gap:9px;margin-top:30px;padding-bottom:9px;font:700 10px IBM Plex Mono,monospace;display:inline-flex}.home-devops-link:hover{color:var(--paper);gap:13px}.home-tech-grid{background:#cbdfeb3d;border:1px solid #cbdfeb3d;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.home-tech-card{min-height:158px;transition:background .18s var(--ease-out),transform .18s var(--ease-out);background:#0c2337f0;flex-direction:column;justify-content:space-between;gap:24px;padding:20px;display:flex}.home-tech-card:hover{background:#1c466c;transform:translateY(-4px)}.home-tech-icon{color:#9bceef;width:34px;height:34px}.home-tech-card h3{color:var(--paper);letter-spacing:-.04em;margin:0;font-size:16px}.home-tech-card p{color:#a9c5d9;letter-spacing:.04em;text-transform:uppercase;margin:6px 0 0;font:9px/1.45 IBM Plex Mono,monospace}.home-overview{background:var(--paper);border-top:1px solid var(--line);padding:88px 0 96px}.home-overview-grid{grid-template-columns:1.15fr .85fr;gap:18px;margin-top:34px;display:grid}.home-overview-card{border:1px solid var(--line);background:#ffffff57;min-height:188px;padding:25px}.home-overview-card-wide{background:var(--navy);min-height:394px;color:var(--paper);border-color:var(--navy);flex-direction:column;grid-row:span 2;justify-content:flex-end;display:flex}.home-overview-card-top{color:var(--navy-deep);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font:9px IBM Plex Mono,monospace;display:flex}.home-overview-card-wide .home-overview-card-top{color:#a9d3ef}.home-overview-card h2{max-width:500px;color:inherit;margin:30px 0 16px;font-size:clamp(32px,4.2vw,60px);line-height:.98}.home-overview-card h3{color:var(--ink);margin:24px 0 10px;font-size:24px;line-height:1.05}.home-overview-card p{color:#657b8f;margin:0;font-size:13px;line-height:1.6}.home-overview-card-wide p{color:#bed0d9}.contact-profile{border-bottom:1px solid var(--line);margin-bottom:30px;padding-bottom:28px}.contact-portrait{border:1px solid rgba(var(--navy-rgb),.22);background:#dce7ed;max-width:440px;margin:0 0 30px;overflow:hidden}.contact-portrait img{aspect-ratio:14/11;object-fit:cover;object-position:center 22%;width:100%;display:block}.contact-portrait figcaption{color:var(--navy-deep);letter-spacing:.065em;text-transform:uppercase;background:#ffffffd1;justify-content:space-between;gap:16px;padding:11px 13px;font:9px IBM Plex Mono,monospace;display:flex}.contact-profile .lead-copy{max-width:580px;color:var(--graphite);letter-spacing:-.05em;margin:18px 0 15px;font:600 clamp(24px,3vw,40px)/1.03 Space Grotesk,sans-serif}.contact-profile .body-copy{margin:0}.isolated-section{padding:90px 0 126px}.split-page-grid{grid-template-columns:minmax(0,.82fr) minmax(300px,.55fr);align-items:start;gap:100px;display:grid}.body-copy{color:#607786;max-width:570px;font-size:16px;line-height:1.8}.isolated-figure{max-width:none;margin:0}.projects-page-section{padding-top:0;position:relative}.projects-page-section:before{content:"";background:linear-gradient(var(--navy-signal),transparent);opacity:.48;pointer-events:none;width:1px;position:absolute;top:28px;bottom:64px;left:max(24px,50vw - 620px)}.certifications-page-section:before{display:none}.page-tone-mist .projects-page-section{background:var(--paper)}.page-tone-mist .projects-list{border-color:var(--line)}.page-tone-mist .project-card{color:var(--ink);border-color:var(--line);background:0 0}.page-tone-mist .project-card:hover{border-color:var(--navy-signal);background:rgba(var(--navy-rgb),.045)}.page-tone-mist .project-topline,.page-tone-mist .project-category{color:#657b8f}.page-tone-mist .project-number,.page-tone-mist .project-icon,.page-tone-mist .project-arrow{color:var(--navy-signal)}.page-tone-mist .project-body h3{color:var(--ink)}.page-tone-mist .project-result{color:var(--navy-deep)}.page-tone-mist .project-description{color:#5f7487}.page-tone-mist .stack-list span{color:#607786;background:#e7edf2}.page-tone-mist .certifications-page-block{border-color:var(--line)}.certifications-page-block{border-top:1px solid #c7d2dc3d;margin-top:95px;padding-top:40px;position:relative}.certifications-page-block:after{content:"";background:var(--navy-signal);width:82px;height:1px;box-shadow:-92px 0 0 -2px var(--navy-signal);opacity:.86;position:absolute;top:-1px;right:0}.certifications-page-block h2{max-width:720px;color:var(--ink);margin:23px 0 38px;font-size:clamp(34px,5vw,66px)}.cert-gallery{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:22px;padding-top:17px;display:grid;position:relative}.cert-gallery:before{content:"";background:linear-gradient(90deg,var(--navy-signal)0 9%,rgba(var(--navy-rgb),.27)9% 94%,transparent 94%);height:1px;position:absolute;top:0;left:0;right:0}.cert-gallery:after{content:"";border:1px solid var(--navy-signal);background:var(--paper);border-radius:50%;width:7px;height:7px;position:absolute;top:-3px;left:9%;transform:translate(-50%)}.cert-frame{border:1px solid rgba(var(--navy-rgb),.26);min-width:0;transition:transform .18s var(--ease-out),border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#f8fafb;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 27px #102a4312}.cert-frame-document{grid-column:span 2}.cert-frame:hover{border-color:var(--navy-signal);transform:translateY(-4px);box-shadow:0 18px 36px #102a4321}.cert-frame-media{border-bottom:1px solid rgba(var(--navy-rgb),.2);background:#eaf0f5;display:grid;position:relative;overflow:hidden}.cert-frame-document .cert-frame-media{aspect-ratio:1.42;min-height:280px;padding:18px}.cert-frame-badge .cert-frame-media{aspect-ratio:1;min-height:218px;padding:14px}.cert-frame-media>img,.cert-frame-pdf{object-fit:contain;background:#fff;border:0;width:100%;height:100%;display:block}.cert-frame-placeholder{width:100%;height:100%;min-height:inherit;color:var(--navy-deep);text-align:center;align-content:center;place-items:center;display:grid;position:relative;overflow:hidden}.cert-frame-placeholder:before,.cert-frame-placeholder:after{content:"";pointer-events:none;position:absolute}.cert-frame-document .cert-frame-placeholder{border:1px solid rgba(var(--navy-rgb),.22);background:linear-gradient(90deg,transparent 0,transparent 18px,rgba(var(--navy-rgb),.06)18px,rgba(var(--navy-rgb),.06)19px,transparent 19px),repeating-linear-gradient(0deg,rgba(var(--navy-rgb),.06)0,rgba(var(--navy-rgb),.06)1px,transparent 1px,transparent 26px),#fff}.cert-frame-document .cert-frame-placeholder:before{background:var(--navy-signal);width:58%;height:4px;box-shadow:0 15px rgba(var(--navy-rgb),.2),0 30px rgba(var(--navy-rgb),.14);opacity:.85;top:22px;left:26px}.cert-frame-badge .cert-frame-placeholder{border:1px solid rgba(var(--navy-rgb),.16);background:radial-gradient(circle at 50% 48%,#f9fcff 0 26%,#d7e5ef 26.4% 27.3%,#0000 27.7%),linear-gradient(145deg,#dbe8f1,#f9fbfc 48%,#cedfe9)}.cert-frame-badge .cert-frame-placeholder:before{border:1px dashed rgba(var(--navy-rgb),.42);border-radius:50%;width:118px;height:118px}.cert-frame-placeholder svg{z-index:1;color:var(--navy-signal);margin-bottom:9px;position:relative}.cert-frame-placeholder span{z-index:1;color:var(--navy-deep);font:600 12px DM Sans,sans-serif;position:relative}.cert-frame-placeholder small{z-index:1;color:#647785;letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font:8px IBM Plex Mono,monospace;position:relative}.cert-frame-stamp{color:#527087;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:8px;font:8px IBM Plex Mono,monospace;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.cert-frame-document .cert-frame-stamp{border:1px solid rgba(var(--navy-rgb),.13);background:#ffffffd6;padding:7px 8px}.cert-frame-badge .cert-frame-stamp{border:1px solid rgba(var(--navy-rgb),.14);background:#f7fbfee0;justify-content:center;width:max-content;min-width:88px;padding:6px 8px;left:50%;transform:translate(-50%)}.cert-frame-info{background:#f9fafb;flex-direction:column;flex:1;min-height:152px;padding:16px 17px 17px 21px;display:flex;position:relative}.cert-frame-info:before{content:"";background:linear-gradient(var(--navy-signal),rgba(var(--navy-rgb),.08));width:2px;position:absolute;top:17px;bottom:17px;left:0}.cert-frame-kicker{color:#627889;letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font:8px IBM Plex Mono,monospace;display:flex}.cert-frame-kicker>span:first-child{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;min-width:0;display:inline-flex;overflow:hidden}.cert-frame-kicker svg{color:var(--navy-signal);flex:none}.cert-frame-info h3{color:var(--ink);letter-spacing:-.045em;margin:12px 0 auto;font:600 clamp(18px,2vw,24px)/1.05 Space Grotesk,sans-serif}.cert-frame-badge .cert-frame-info h3{font-size:clamp(17px,1.55vw,21px)}.cert-verify-link,.cert-document-link{color:var(--navy-deep);border-bottom:1px solid rgba(var(--navy-rgb),.35);letter-spacing:.055em;text-transform:uppercase;transition:color .18s var(--ease-out),border-color .18s var(--ease-out),transform .18s var(--ease-out);align-self:flex-start;align-items:center;gap:6px;margin-top:18px;padding-bottom:4px;font:700 9px IBM Plex Mono,monospace;text-decoration:none;display:inline-flex}.cert-verify-link:hover,.cert-verify-link:focus-visible,.cert-document-link:hover,.cert-document-link:focus-visible{color:var(--navy-signal);border-color:var(--navy-signal);outline:0;transform:translate(3px)}.cert-frame-status{color:#587388;letter-spacing:.055em;text-transform:uppercase;align-items:center;gap:6px;margin-top:19px;font:8px IBM Plex Mono,monospace;display:inline-flex}.cert-frame-status:before{border:1px solid var(--navy-signal);content:"";border-radius:50%;flex:none;width:5px;height:5px}.cert-verify-link:focus-visible,.cert-document-link:focus-visible{outline:2px solid var(--navy-signal);outline-offset:4px}html[data-theme=dark] .certifications-page-block h2,.theme-dark .certifications-page-block h2{color:#f4f7fa}html[data-theme=dark] .cert-frame,.theme-dark .cert-frame{background:#102941;border-color:#3c5e7e;box-shadow:0 14px 30px #0003}html[data-theme=dark] .cert-frame:hover,.theme-dark .cert-frame:hover{border-color:#78b8e5;box-shadow:0 18px 38px #0000004d}html[data-theme=dark] .cert-frame-media,.theme-dark .cert-frame-media{background:#0b1d2f;border-color:#3c5e7e}html[data-theme=dark] .cert-frame-document .cert-frame-placeholder,.theme-dark .cert-frame-document .cert-frame-placeholder{background:linear-gradient(90deg,#0000 0 18px,#78b8e514 18px 19px,#0000 19px),repeating-linear-gradient(0deg,#78b8e514 0 1px,#0000 1px 26px),#102941;border-color:#3f6486}html[data-theme=dark] .cert-frame-document .cert-frame-placeholder:before,.theme-dark .cert-frame-document .cert-frame-placeholder:before{background:#78b8e5;box-shadow:0 15px #78b8e561,0 30px #78b8e538}html[data-theme=dark] .cert-frame-badge .cert-frame-placeholder,.theme-dark .cert-frame-badge .cert-frame-placeholder{background:radial-gradient(circle at 50% 48%,#183751 0 26%,#497a9e 26.4% 27.3%,#0000 27.7%),linear-gradient(145deg,#173651,#0c2033 48%,#1a415e);border-color:#3f6486}html[data-theme=dark] .cert-frame-badge .cert-frame-placeholder:before,.theme-dark .cert-frame-badge .cert-frame-placeholder:before{border-color:#9fd1f09e}html[data-theme=dark] .cert-frame-placeholder span,.theme-dark .cert-frame-placeholder span{color:#e5f1f8}html[data-theme=dark] .cert-frame-placeholder small,.theme-dark .cert-frame-placeholder small,html[data-theme=dark] .cert-frame-stamp,.theme-dark .cert-frame-stamp{color:#a9c2d4}html[data-theme=dark] .cert-frame-placeholder svg,.theme-dark .cert-frame-placeholder svg{color:#8fd0f5}html[data-theme=dark] .cert-frame-document .cert-frame-stamp,.theme-dark .cert-frame-document .cert-frame-stamp,html[data-theme=dark] .cert-frame-badge .cert-frame-stamp,.theme-dark .cert-frame-badge .cert-frame-stamp{background:#081b2bdb;border-color:#3d5e7e}html[data-theme=dark] .cert-gallery:before,.theme-dark .cert-gallery:before{background:linear-gradient(90deg,#78b8e5 0 9%,#78b8e557 9% 94%,#0000 94%)}html[data-theme=dark] .cert-gallery:after,.theme-dark .cert-gallery:after{background:#0f2135;border-color:#78b8e5}html[data-theme=dark] .cert-frame-info,.theme-dark .cert-frame-info{background:#102941}html[data-theme=dark] .cert-frame-kicker,.theme-dark .cert-frame-kicker,html[data-theme=dark] .cert-frame-status,.theme-dark .cert-frame-status{color:#a8bfce}html[data-theme=dark] .cert-frame-info h3,.theme-dark .cert-frame-info h3{color:#f4f7fa}html[data-theme=dark] .cert-verify-link,.theme-dark .cert-verify-link,html[data-theme=dark] .cert-document-link,.theme-dark .cert-document-link{color:#8fd0f5;border-color:#8fd0f575}@media (max-width:980px){.cert-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.cert-frame-document{grid-column:span 2}}@media (max-width:570px){.cert-gallery{grid-template-columns:1fr;gap:16px}.cert-frame-document{grid-column:auto}.cert-frame-document .cert-frame-media{min-height:236px}.cert-frame-badge .cert-frame-media{min-height:240px}.cert-frame-info{min-height:138px;padding:15px}.cert-frame-info h3{font-size:22px}}.contact-cv-note{border-top:1px solid rgba(var(--navy-rgb),.2);padding:15px}.contact-action-stack{gap:9px;display:grid}.contact-cv-note .button{letter-spacing:.08em;text-transform:uppercase;justify-content:center;gap:12px;width:100%;min-height:54px;font:700 10px IBM Plex Mono,monospace}.contact-calendar-button{box-shadow:0 10px 22px rgba(var(--navy-rgb),.16)}.contact-calendar-button:hover{box-shadow:0 14px 26px rgba(var(--navy-rgb),.24)}.contact-cv-note .button-secondary{color:var(--navy-deep);border-color:rgba(var(--navy-rgb),.42);background:#ffffff94}.contact-cv-note .button-secondary:hover{color:#fff;border-color:var(--navy-deep);background:var(--navy-deep)}.site-footer{color:#8799aa;background:#050b14;border-top:1px solid #6994b433;padding:58px 0 24px}.footer-grid{grid-template-columns:minmax(0,1.6fr) minmax(140px,.75fr) minmax(190px,.9fr);gap:clamp(34px,8vw,110px);display:grid}.footer-brand-block{max-width:390px}.footer-prompt{color:#5cb7df;letter-spacing:.02em;align-items:center;gap:8px;margin:0 0 16px;font:700 12px/1.2 IBM Plex Mono,monospace;display:inline-flex}.footer-prompt svg{color:#5cb7df}.footer-prompt-caret{color:#8dd0f2}.footer-description{color:#94a5b5;max-width:360px;margin:0;font:12px/1.65 DM Sans,sans-serif}.footer-socials{gap:8px;margin-top:18px;display:flex}.footer-socials a{color:#5cb7df;width:30px;height:30px;transition:color .18s var(--ease-out),background .18s var(--ease-out),border-color .18s var(--ease-out),transform .18s var(--ease-out);background:#276f9d24;border:1px solid #5bb2db3d;border-radius:5px;place-items:center;display:inline-grid}.footer-socials a:hover,.footer-socials a:focus-visible{color:#dff4ff;background:#276f9d59;border-color:#5cb7df;transform:translateY(-2px)}.footer-column-label{color:#eef5f9;margin:0 0 15px;font:700 11px/1.3 DM Sans,sans-serif}.footer-nav,.footer-contact-list{flex-direction:column;align-items:flex-start;gap:9px;display:flex}.footer-nav a,.footer-contact-list a{color:#8498aa;transition:color .18s var(--ease-out),transform .18s var(--ease-out);font:11px/1.35 IBM Plex Mono,monospace}.footer-nav a:hover,.footer-nav a:focus-visible,.footer-contact-list a:hover,.footer-contact-list a:focus-visible{color:#74c8ef;transform:translate(3px)}.footer-contact-list a{align-items:center;gap:7px;display:inline-flex}.footer-contact-list svg{color:#5cb7df}.footer-rule{background:#6994b433;height:1px;margin:36px 0 18px}.footer-meta{color:#718597;justify-content:space-between;align-items:center;gap:18px;font:10px/1.4 IBM Plex Mono,monospace;display:flex}.footer-copyright{color:#d7e7f2;letter-spacing:.015em;font-size:11px;font-weight:600}.footer-status{color:#5cb7df;align-items:center;gap:6px;display:inline-flex}.footer-status svg{color:#5cb7df}.whatsapp-float{z-index:73;color:#082139;letter-spacing:.04em;width:46px;height:46px;transition:transform .18s var(--ease-out),background .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#5cb7df;border:1px solid #9bd9f6;border-radius:999px;justify-content:center;align-items:center;font:700 10px/1 IBM Plex Mono,monospace;text-decoration:none;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 24px #03111f4d}.whatsapp-float>span:not(.whatsapp-float-tooltip){display:none}.whatsapp-float:hover,.whatsapp-float:focus-visible{color:#061726;background:#8dd0f2;transform:translateY(-2px);box-shadow:0 13px 28px #03111f66}.whatsapp-float:active{transform:translateY(0)scale(.97)}.whatsapp-float:focus-visible{outline-offset:3px;outline:2px solid #f4f7fa}.whatsapp-float-tooltip{color:#dff4ff;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out),transform .18s var(--ease-out);background:#071928;border:1px solid #8dd0f257;border-radius:5px;padding:9px 11px;font:10px/1.2 IBM Plex Mono,monospace;position:absolute;top:50%;right:calc(100% + 10px);transform:translateY(-50%)translate(4px);box-shadow:0 8px 20px #03111f47}.whatsapp-float:hover .whatsapp-float-tooltip,.whatsapp-float:focus-visible .whatsapp-float-tooltip{opacity:1;transform:translateY(-50%)translate(0)}.theme-dark .site-footer{background:#030913;border-top-color:#78b8e538}.theme-dark .footer-rule{background:#78b8e538}.theme-dark .brand,.theme-dark .nav-link,.theme-dark .theme-toggle,.theme-dark .nav-cv{color:var(--paper)}.theme-dark .nav-link:hover,.theme-dark .nav-link.is-active,.theme-dark .theme-toggle:hover,.theme-dark .theme-toggle:focus-visible{color:var(--navy)}.theme-dark .nav-cv{border-color:#324863}.theme-dark .nav-cv:hover{border-color:var(--navy)}.theme-dark .hero-eyebrow,.theme-dark .hero-kicker span,.theme-dark h1 em,.theme-dark .accent-text,.theme-dark .project-number,.theme-dark .project-icon,.theme-dark .project-result,.theme-dark .timeline-item.is-current .timeline-marker span,.theme-dark .timeline-info h3 span,.theme-dark .home-scroll svg,.theme-dark .nav-link.is-active .nav-index,.theme-dark .language-toggle .is-active{color:#78b8e5}.theme-dark .button-primary{background:var(--navy-signal);color:#10263e}.theme-dark .button-primary:hover{background:#a1d2f0}.theme-dark .status-dot{background:var(--navy-signal);box-shadow:0 0 0 4px #78b8e524}.theme-dark .certification-link{color:#78b8e5}.theme-dark .about-section,.theme-dark .skills-section,.theme-dark .contact-section,.theme-dark .page-tone-paper,.theme-dark .page-tone-mist{background:var(--graphite);color:var(--paper)}.theme-dark .mini-facts strong,.theme-dark .skill-main h3{color:var(--paper)}.theme-dark .about-columns p,.theme-dark .body-copy,.theme-dark .skill-main p{color:#b7c4d1}.theme-dark .skills-section{background:#162b43}.theme-dark .skill-icon{color:var(--paper);border-color:#405a75}.theme-dark .page-tone-paper .page-hero,.theme-dark .page-tone-mist .page-hero{background:var(--graphite)}.theme-dark .page-tone-paper .page-hero h1,.theme-dark .page-tone-mist .page-hero h1{color:var(--paper)}.theme-dark .page-tone-paper .page-hero-intro,.theme-dark .page-tone-mist .page-hero-intro{color:#b4c4d0}:root{--graphite:#0f2135;--ink:#17263a;--slate:#5d6e84;--secondary-foreground:#4b5f76;--muted-foreground:#607086;--foreground:#17263a;--card-foreground:#17263a;--popover-foreground:#17263a}:root[data-theme=dark]{--background:#0f2135;--card:#162b43;--card-foreground:#f4f1ea;--popover:#162b43;--popover-foreground:#f4f1ea;--secondary:#1f3853;--secondary-foreground:#b7c4d1;--muted:#1f3853;--muted-foreground:#afbdcb;--border:#324863;--input:#324863;--graphite:#0f2135;--slate:#afbdcb;--line:#324863}:root[data-theme=dark] body{color:var(--paper);background:#0f2135}.skills-section,.certifications-section,.page-tone-mist{background:#e8ebf0}.about-figure{background:#e7ebf0}.hero-visual,.theme-dark .skills-section,.theme-dark .certifications-section,.theme-dark .about-figure{background:#162b43}.hero-visual-overlay{background:linear-gradient(145deg,#0f21351f,#0f2135b8 72%),linear-gradient(90deg,#0f213570,#0000)}.projects-list,.project-card{border-color:#324863}.stack-list span,.project-paper .stack-list span{color:#aebed0;background:#243b57}.theme-dark .site-header{background:#071928f7;border-color:#6994b43d}.theme-dark .brand-wordmark-main,.theme-dark .brand{color:#f5f7f8}.theme-dark .nav-link{color:#b4c3ce}.theme-dark .nav-link:hover,.theme-dark .nav-link.is-active{color:#f5f7f8}.theme-dark .nav-link.is-active{background:#2a5d846b;border-color:#69a7cf66}.theme-dark .nav-signal{background:#8dd0f2}.theme-dark .nav-cv{color:#e9f2f8;background:#2250756b;border-color:#69a7cf7a}.theme-dark .nav-cv:hover{color:#fff;border-color:#8dd0f2}.theme-dark .theme-toggle{color:#b4c3ce;background:#0d2b418c;border-color:#69a7cf3d}.theme-dark .theme-toggle:hover,.theme-dark .theme-toggle:focus-visible{color:#fff;background:#2f6b9780;border-color:#8dd0f2}.theme-dark .mini-facts,.theme-dark .skills-list,.theme-dark .skill-row{border-color:#324863}.theme-dark .hero-visual-overlay{background:linear-gradient(145deg,#0f21351f,#0f2135c7 72%),linear-gradient(90deg,#0f21357a,#0000)}:root[data-theme=dark]{--paper:#f4f7fa;--ink:#f4f7fa;--graphite:#0b1b2b;--slate:#aebdca;--line:#324863}.theme-dark,.theme-dark .page-tone-paper,.theme-dark .page-tone-mist,.theme-dark .about-section,.theme-dark .journey-section,.theme-dark .formation-section,.theme-dark .skills-page-section,.theme-dark .recommendations-section,.theme-dark .home-overview,.theme-dark .contact-section{color:#f4f7fa;background:#0f2135}.theme-dark .home-devops-section{background:#0a1c2f}.theme-dark .skills-section,.theme-dark .certifications-section{color:#f4f7fa;background:#122a43}.theme-dark .page-tone-mist .projects-page-section{background:#0f2135}.theme-dark .home-overview-card{background:#162b43c2;border-color:#324863}.theme-dark .home-overview-card-wide{color:#f4f7fa;background:#1d3a59;border-color:#3d6285}.theme-dark .home-overview-card-wide .home-overview-card-top{color:#a9d3ef}.theme-dark .home-overview-card-wide h2{color:#f4f7fa}.theme-dark .home-overview-card-wide p{color:#c8d5df}.theme-dark .home-overview-card h3,.theme-dark .formation-info h2,.theme-dark .timeline-info h3,.theme-dark .recommendations-empty h2,.theme-dark .certification-body h3,.theme-dark .contact-copy h2{color:#f4f7fa}.theme-dark .about-columns p,.theme-dark .formation-info p,.theme-dark .timeline-info p,.theme-dark .experience-bullets,.theme-dark .body-copy,.theme-dark .certifications-heading p,.theme-dark .recommendations-empty p,.theme-dark .home-overview-card p,.theme-dark .contact-copy p:not(.section-code){color:#b9c8d4}.theme-dark .mini-facts strong,.theme-dark .contact-profile .lead-copy{color:#f4f7fa}.theme-dark .mini-facts span,.theme-dark .formation-period,.theme-dark .timeline-date,.theme-dark .timeline-label,.theme-dark .formation-level,.theme-dark .experience-environment>span{color:#9eb2c3;border-color:#324863}.theme-dark .timeline-marker:before{background:#405a75}.theme-dark .timeline-marker span{background:#6d8ca5;border-color:#0f2135;box-shadow:0 0 0 1px #6d8ca5}.theme-dark .formation-item,.theme-dark .timeline,.theme-dark .timeline-item,.theme-dark .formation-list,.theme-dark .home-overview,.theme-dark .contact-profile,.theme-dark .skills-list,.theme-dark .skill-row{border-color:#324863}.theme-dark .formation-item:hover,.theme-dark .skill-row:hover{background:#2f6b9729}.theme-dark .formation-overview{background:#34526d;border-color:#34526d}.theme-dark .formation-overview-copy{background:linear-gradient(135deg,#102941,#0c2031)}.theme-dark .formation-overview-copy h2{color:#f4f7fa}.theme-dark .formation-overview-copy p{color:#b9c8d4}.theme-dark .formation-item{background:#102941}.theme-dark .formation-item:hover{background:#173b59;border-color:#527a99}.theme-dark .experience-overview{background:#34526d;border-color:#34526d}.theme-dark .experience-overview-copy{background:linear-gradient(135deg,#102941,#0c2031)}.theme-dark .experience-overview-copy h2{color:#f4f7fa}.theme-dark .experience-overview-copy p{color:#b9c8d4}.theme-dark .experience-item{background:#102941}.theme-dark .experience-item:hover{background:#173b59;border-color:#527a99}.theme-dark .about-figure{background:#122a43}.theme-dark .about-figure figcaption{color:#9eb2c3}.theme-dark .skill-main h3,.theme-dark .skill-icon{color:#f4f7fa}.theme-dark .skill-icon{border-color:#405a75}.theme-dark .skill-main p{color:#aebdca}.theme-dark .skill-tags span,.theme-dark .stack-list span{color:#c8d5df;background:#1d3a59}.theme-dark .project-paper,.theme-dark .project-paper .project-body h3{color:#f4f7fa}.theme-dark .project-paper .project-description{color:#b9c8d4}.theme-dark .project-paper .project-category,.theme-dark .project-paper .project-icon,.theme-dark .project-paper .project-arrow{color:#9eb2c3}.theme-dark .certification-item{background:#162b43b3;border-color:#324863}.theme-dark .certification-item:first-child,.theme-dark .certification-item:hover{background:#2f6b9733}.theme-dark .certifications-heading p,.theme-dark .certification-body div,.theme-dark .certification-topline{color:#aebdca}.theme-dark .recommendations-empty{background:#162b43b8;border-color:#324863}.projects-showcase{gap:28px;display:grid}.project-showcase{color:#eff5f8;background:#0b1c2e;border:1px solid #2f4b67;grid-template-columns:minmax(0,1.12fr) minmax(290px,.88fr);display:grid;overflow:hidden;box-shadow:0 18px 38px #0719281c}.project-gallery{background:#071928;border-right:1px solid #2f4b67;min-height:338px;position:relative;overflow:hidden}.project-gallery>img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:338px}.project-gallery-empty{background:radial-gradient(circle at 77% 24%,#4687b740,#0000 31%),linear-gradient(148deg,#112d48,#091827 54%,#0a1e31);flex-direction:column;width:100%;height:100%;min-height:338px;padding:18px;display:flex}.project-gallery-windowbar{gap:6px;display:flex}.project-gallery-windowbar span{opacity:.76;border:1px solid #cadeedb8;border-radius:50%;width:7px;height:7px}.project-gallery-empty-copy{color:#d8e6ee;text-align:center;flex:1;align-content:center;place-items:center;display:grid}.project-gallery-empty-copy svg{color:#8dd0f2;margin-bottom:14px}.project-gallery-empty-copy span{font:600 13px DM Sans,sans-serif}.project-gallery-empty-copy small{color:#9ab0c3;letter-spacing:.04em;text-transform:uppercase;margin-top:6px;font:9px IBM Plex Mono,monospace}.project-gallery-meta{color:#c9d8e2;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:12px;font:9px IBM Plex Mono,monospace;display:flex;position:absolute;bottom:15px;left:16px;right:16px}.project-gallery-controls{gap:5px;display:flex;position:absolute;top:15px;right:15px}.project-gallery-controls button{color:#e7f1f7;cursor:pointer;width:30px;height:30px;transition:background .16s var(--ease-out),transform .16s var(--ease-out);background:#071928b8;border:1px solid #bfdaeb80;place-items:center;display:grid}.project-gallery-controls button:hover,.project-gallery-controls button:focus-visible{background:#2f6b97;outline:0}.project-gallery-controls button:active{transform:scale(.96)}.project-showcase-content{flex-direction:column;min-width:0;padding:31px 31px 27px;display:flex}.project-showcase-topline{color:#9cb5c8;letter-spacing:.06em;text-transform:uppercase;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:9px;margin-bottom:22px;font:9px IBM Plex Mono,monospace;display:grid}.project-showcase-topline>span:first-child,.project-showcase-topline svg{color:#8dd0f2}.project-showcase-content h3{color:#f7fafc;letter-spacing:-.045em;margin:0 0 13px;font:560 clamp(25px,3vw,34px)/1.03 Space Grotesk,sans-serif}.project-showcase-result{color:#c8e7f5;border-left:2px solid #58add8;align-items:flex-start;gap:8px;margin:0 0 16px;padding-left:11px;font:600 13px/1.5 DM Sans,sans-serif;display:flex}.project-showcase-result svg{color:#8dd0f2;flex:none;margin-top:2px}.project-showcase-description{color:#bac9d4;margin:0;font:13px/1.65 DM Sans,sans-serif}.project-showcase-stack{flex-wrap:wrap;gap:7px;margin-top:23px;display:flex}.project-showcase-stack span{color:#d4e1e9;background:#32668b42;border:1px solid #7cafcf47;padding:6px 8px;font:9px IBM Plex Mono,monospace}.project-showcase-actions{align-items:center;min-height:34px;margin-top:auto;padding-top:22px;display:flex}.project-github-link,.project-repository-pending{color:#c7e9fa;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;font:10px IBM Plex Mono,monospace;display:inline-flex}.project-github-link{color:#f5fbff;transition:background .16s var(--ease-out),transform .16s var(--ease-out);background:#19577e;border:1px solid #75bbe2b3;padding:10px 12px;text-decoration:none}.project-github-link:hover,.project-github-link:focus-visible{background:#2f6b97;outline:0}.project-github-link:active{transform:scale(.97)}.project-repository-pending{color:#91a9bb}.project-repository-pending svg{color:#8dd0f2}.theme-dark .project-showcase{background:#071928;border-color:#324f6c;box-shadow:0 18px 38px #0000002e}.theme-dark .project-gallery{background:#061522;border-color:#324f6c}.theme-dark .project-showcase-description{color:#bdcddb}.theme-dark .project-showcase-stack span{color:#d4e4ee;background:#153652;border-color:#8dd0f240}@media (max-width:980px){.project-showcase{grid-template-columns:1fr}.project-gallery{border-bottom:1px solid #2f4b67;border-right:0;min-height:300px}.project-gallery>img,.project-gallery-empty{min-height:300px}}@media (max-width:700px){.projects-showcase{gap:20px}.project-gallery,.project-gallery>img,.project-gallery-empty{min-height:244px}.project-showcase-content{padding:24px 20px 22px}.project-showcase-topline{margin-bottom:18px}.project-showcase-content h3{font-size:28px}.project-gallery-meta{bottom:12px;left:13px;right:13px}.project-showcase-actions{padding-top:18px}}.projects-filter-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;padding-bottom:18px;display:flex}.projects-page-section{position:relative;overflow:hidden}.projects-page-section:after{content:"";pointer-events:none;opacity:.5;background-image:linear-gradient(90deg,transparent calc(50% - 1px),rgba(var(--navy-rgb),.1)50%,transparent calc(50% + 1px));background-size:100% 100%;position:absolute;inset:0}.projects-page-section .page-wrap{z-index:1;position:relative}.projects-overview{border:1px solid rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.2);grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr);gap:1px;margin-bottom:34px;display:grid}.projects-overview-copy{background:linear-gradient(135deg,rgba(var(--navy-rgb),.1),#ffffffc2);padding:clamp(24px,4vw,43px)}.projects-overview-copy>span{color:var(--navy-signal);letter-spacing:.12em;text-transform:uppercase;font:700 9px IBM Plex Mono,monospace}.projects-overview-copy h2{max-width:680px;color:var(--ink);letter-spacing:-.065em;margin:19px 0 14px;font:650 clamp(30px,3.4vw,51px)/.99 Space Grotesk,sans-serif}.projects-overview-copy p{color:#597082;max-width:620px;margin:0;font-size:14px;line-height:1.75}.projects-overview-facts{background:var(--navy-deep);grid-template-rows:repeat(3,1fr);margin:0;display:grid}.projects-overview-facts>div{border-bottom:1px solid #b9d8ea33;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;padding:18px 22px;display:grid}.projects-overview-facts>div:last-child{border-bottom:0}.projects-overview-facts dt{color:#a8d9f5;letter-spacing:-.055em;font:650 25px/1 Space Grotesk,sans-serif}.projects-overview-facts dd{color:#d8e6ee;letter-spacing:.055em;text-transform:uppercase;margin:0;font:10px/1.45 IBM Plex Mono,monospace}.projects-filter-list{border:1px solid rgba(var(--navy-rgb),.32);flex-wrap:wrap;gap:0;display:flex}.project-domain-filter{color:#587084;border-right:1px solid rgba(var(--navy-rgb),.22);letter-spacing:.035em;text-transform:uppercase;min-height:38px;transition:color .18s var(--ease-out),background .18s var(--ease-out);background:0 0;padding:0 13px;font:500 9px IBM Plex Mono,monospace}.project-domain-filter:last-child{border-right:0}.project-domain-filter:hover,.project-domain-filter:focus-visible{color:var(--navy-deep);background:rgba(var(--navy-rgb),.08)}.project-domain-filter.is-active{color:#f4f7fa;background:var(--navy-deep)}.projects-filter-count{color:#607786;letter-spacing:.075em;text-transform:uppercase;flex:none;margin:0;font:9px IBM Plex Mono,monospace}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:none;display:grid}.project-tile{color:#eff5f8;min-width:0;transition:transform .18s var(--ease-out),border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#0b1c2e;border:1px solid #2f4b67;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 26px #0719281a}.project-tile:before{content:"";z-index:3;opacity:.9;pointer-events:none;background:linear-gradient(#8dd0f2 0 18%,#0000 18% 31%,#8dd0f2 31% 34%,#0000 34% 74%,#8dd0f2 74% 100%);width:3px;position:absolute;top:0;bottom:0;left:0}.project-tile:hover,.project-tile:focus-within,.project-tile.is-active{z-index:1;border-color:#70b9e4;transform:translateY(-4px);box-shadow:0 18px 32px #0719282e}.project-tile-media{aspect-ratio:1;background:#071928;border-bottom:1px solid #2f4b67;display:flex;position:relative;overflow:hidden}.project-tile-media:after{content:"VISUAL / OUVRIR";z-index:2;color:#e2eff7;letter-spacing:.08em;text-shadow:0 1px 8px #071928;pointer-events:none;border-top:1px solid #e1f0f97a;padding-top:6px;font:8px IBM Plex Mono,monospace;position:absolute;bottom:32px;left:14px;right:12px}.project-tile-preview{cursor:zoom-in;background:#071928;border:0;width:100%;height:100%;padding:0;display:block;position:relative}.project-tile-preview>img{object-fit:cover;object-position:center 44%;filter:saturate(.78)contrast(1.04);width:100%;height:100%;transition:transform .22s var(--ease-out),filter .22s var(--ease-out);display:block}.project-tile-preview:hover>img,.project-tile-preview:focus-visible>img{filter:saturate(.92)contrast(1.04);transform:scale(1.045)}.project-tile-preview:focus-visible{outline-offset:-4px;outline:2px solid #8dd0f2}.project-tile-view-label{z-index:2;color:#eff7fb;letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:5px;font:8px IBM Plex Mono,monospace;display:inline-flex;position:absolute;bottom:9px;right:12px}.project-tile-reveal{z-index:2;opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out),transform .18s var(--ease-out);background:linear-gradient(#0514220a 18%,#051422f0);align-items:flex-end;padding:52px 17px 16px;display:flex;position:absolute;inset:0;transform:translateY(8px)}.project-tile:hover .project-tile-reveal,.project-tile:focus-within .project-tile-reveal{opacity:1;transform:translateY(0)}.project-tile-reveal span{color:#8dd0f2;letter-spacing:.08em;text-transform:uppercase;font:9px IBM Plex Mono,monospace}.project-tile-reveal p{color:#f2f8fc;margin:8px 0 0;font:13px/1.55 DM Sans,sans-serif}.project-tile-empty{aspect-ratio:1;background:radial-gradient(circle at 78% 24%,#4687b740,#0000 31%),linear-gradient(148deg,#112d48,#091827 54%,#0a1e31);flex-direction:column;width:100%;padding:13px;display:flex}.project-tile-windowbar{gap:5px;display:flex}.project-tile-windowbar span{opacity:.76;border:1px solid #cadeedb8;border-radius:50%;width:6px;height:6px}.project-tile-empty-copy{color:#d8e6ee;text-align:center;flex:1;align-content:center;place-items:center;display:grid}.project-tile-empty-copy svg{color:#8dd0f2;margin-bottom:11px}.project-tile-empty-copy span{font:600 12px DM Sans,sans-serif}.project-tile-empty-copy small{color:#9ab0c3;letter-spacing:.04em;text-transform:uppercase;margin-top:5px;font:8px IBM Plex Mono,monospace}.project-tile-meta{color:#c9d8e2;letter-spacing:.08em;justify-content:space-between;font:9px IBM Plex Mono,monospace;display:flex;position:absolute;bottom:10px;left:12px;right:12px}.project-tile-controls{z-index:2;gap:4px;display:flex;position:absolute;top:11px;right:11px}.project-tile-controls button{color:#e7f1f7;cursor:pointer;background:#071928b8;border:1px solid #bfdaeb80;place-items:center;width:27px;height:27px;display:grid}.project-tile-controls button:hover,.project-tile-controls button:focus-visible{background:#2f6b97;outline:0}.project-tile-copy{flex-direction:column;min-width:0;padding:17px 17px 10px;display:flex}.project-tile-topline{color:#99b3c7;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font:8px IBM Plex Mono,monospace;display:flex}.project-tile-topline svg{color:#8dd0f2}.project-tile-result{color:#c8e7f5;border-left:2px solid #58add8;align-items:flex-start;gap:7px;margin:12px 0 0;padding-left:9px;font:600 11px/1.45 DM Sans,sans-serif;display:flex}.project-tile-result svg{color:#8dd0f2;flex:none;margin-top:2px}.project-tile-copy h3{color:#f7fafc;letter-spacing:-.04em;margin:12px 0 13px;font:580 clamp(20px,2vw,25px)/1.05 Space Grotesk,sans-serif}.project-tile-stack{color:#b7c8d5;justify-content:space-between;gap:8px;font:9px/1.4 IBM Plex Mono,monospace;display:flex}.project-tile-stack>span:last-child{color:#8dd0f2}.project-tile-actions{border-top:1px solid #8dd0f23d;grid-template-columns:minmax(0,1fr) auto;margin-top:auto;display:grid}.project-tile-open{color:#d9eefa;letter-spacing:.05em;text-align:left;text-transform:uppercase;cursor:pointer;width:100%;transition:background .16s var(--ease-out),color .16s var(--ease-out);background:#0d2b44a6;border:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 17px;font:9px IBM Plex Mono,monospace;display:inline-flex}.project-tile-open:hover,.project-tile-open:focus-visible{color:#fff;background:#1c5b83;outline:0}.project-tile-github{color:#f5fbff;letter-spacing:.05em;text-transform:uppercase;min-height:42px;transition:background .16s var(--ease-out),color .16s var(--ease-out);background:#19577e;border-left:1px solid #8dd0f23d;align-items:center;gap:7px;padding:0 14px;font:9px IBM Plex Mono,monospace;text-decoration:none;display:inline-flex}.project-tile-github:hover,.project-tile-github:focus-visible{color:#fff;background:#2f6b97;outline:0}.project-detail-panel{color:#eff5f8;animation:project-detail-in .22s var(--ease-out)both;background:#0a1b2b;border:1px solid #396281;margin-top:28px;padding:28px 30px;box-shadow:0 18px 38px #07192824}.project-detail-heading{border-bottom:1px solid #8dd0f240;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:22px;display:flex}.project-detail-heading span{color:#9cb5c8;letter-spacing:.08em;text-transform:uppercase;font:9px IBM Plex Mono,monospace}.project-detail-heading h2{color:#f7fafc;letter-spacing:-.05em;margin:10px 0 0;font:580 clamp(28px,4vw,43px)/1 Space Grotesk,sans-serif}.project-detail-heading button{color:#dcecf6;cursor:pointer;background:0 0;border:1px solid #8dd0f280;place-items:center;width:32px;height:32px;font:26px/1 sans-serif;display:grid}.project-detail-heading button:hover,.project-detail-heading button:focus-visible{background:#1c5b83;outline:0}.project-detail-grid{grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:36px;padding-top:24px;display:grid}.project-detail-result{color:#c8e7f5;border-left:2px solid #58add8;align-items:flex-start;gap:8px;margin:0 0 13px;padding-left:11px;font:600 13px/1.5 DM Sans,sans-serif;display:flex}.project-detail-result svg{color:#8dd0f2;flex:none;margin-top:2px}.project-detail-description{color:#bac9d4;margin:0;font:14px/1.7 DM Sans,sans-serif}.project-detail-side{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.project-detail-stack{flex-wrap:wrap;gap:7px;display:flex}.project-detail-stack span{color:#d4e1e9;background:#32668b42;border:1px solid #7cafcf47;padding:6px 8px;font:9px IBM Plex Mono,monospace}.theme-dark .project-tile{background:#071928;border-color:#324f6c;box-shadow:0 12px 26px #00000029}.theme-dark .project-tile-media{background:#061522;border-color:#324f6c}.theme-dark .project-detail-panel{background:#061522;border-color:#436b8d}.theme-dark .projects-filter-toolbar{border-color:#324863}.theme-dark .projects-filter-list{border-color:#3d6285}.theme-dark .project-domain-filter{color:#b9c8d4;background:#162b4373;border-color:#3d6285}.theme-dark .project-domain-filter:hover,.theme-dark .project-domain-filter:focus-visible{color:#f4f7fa;background:#2f6b9752}.theme-dark .project-domain-filter.is-active{color:#0f2135;background:#8dd0f2}.theme-dark .projects-filter-count{color:#aebfce}.theme-dark .projects-overview{background:#34526d;border-color:#34526d}.theme-dark .projects-overview-copy{background:linear-gradient(135deg,#102941,#0c2031)}.theme-dark .projects-overview-copy h2{color:#f4f7fa}.theme-dark .projects-overview-copy p{color:#b9c8d4}@keyframes project-detail-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.project-image-dialog{color:#eff5f8;background:#071928;border-color:#466d8c;border-radius:0;gap:0;width:min(92vw,860px);max-width:min(92vw,860px);max-height:92vh;padding:0;overflow:hidden}.project-image-dialog h2{color:#eef7fc;letter-spacing:.06em;text-transform:uppercase;margin:0;padding:14px 48px 10px 16px;font:600 12px IBM Plex Mono,monospace}.project-image-dialog img{object-fit:contain;background:#020b12;width:100%;max-height:min(74vh,860px);display:block}.project-image-dialog-controls{background:#0a1d2d;border-top:1px solid #bfdaeb3b;border-bottom:1px solid #bfdaeb3b;grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.project-image-dialog-controls button{color:#e7f1f7;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;min-height:42px;transition:background .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;padding:0 15px;font:9px IBM Plex Mono,monospace;display:inline-flex}.project-image-dialog-controls button:last-child{justify-content:flex-end}.project-image-dialog-controls button:hover,.project-image-dialog-controls button:focus-visible{color:#fff;background:#4b93be4d;outline:0}.project-image-dialog-controls button:active{transform:scale(.97)}.project-image-dialog-controls>span{color:#8dd0f2;letter-spacing:.08em;font:9px IBM Plex Mono,monospace}.project-image-dialog p{color:#a9becd;letter-spacing:.06em;text-transform:uppercase;margin:0;padding:10px 16px 13px;font:9px IBM Plex Mono,monospace}.project-image-dialog [data-slot=dialog-close]{color:#e7f1f7;border:1px solid #bfdaeb80;border-radius:0;top:10px;right:10px}@media (max-width:920px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-grid{grid-template-columns:1fr;gap:24px}}@media (max-width:540px){.projects-filter-toolbar{flex-direction:column;align-items:flex-start;gap:12px}.projects-filter-list{width:100%}.project-domain-filter{flex:48%;min-height:42px;padding-inline:9px}.projects-filter-count{align-self:flex-end}.projects-grid{grid-template-columns:1fr;gap:14px}.project-tile-copy{padding:20px 18px 10px}.project-tile-reveal p{font-size:12px}.project-detail-panel{margin-top:18px;padding:22px 18px}.project-detail-heading{gap:12px;padding-bottom:18px}.project-detail-heading h2{font-size:31px}.project-image-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}.project-image-dialog-controls button{padding:0 10px}}@media (max-width:700px){.projects-overview{grid-template-columns:1fr;margin-bottom:24px}.projects-overview-copy{padding:26px 20px}.projects-overview-copy h2{font-size:32px}.projects-overview-facts{grid-template-rows:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.projects-overview-facts>div{border-bottom:0;border-right:1px solid #b9d8ea33;grid-template-columns:1fr;gap:6px;padding:14px 12px}.projects-overview-facts>div:last-child{border-right:0}.projects-overview-facts dt{font-size:21px}.projects-overview-facts dd{font-size:8px}}@media (hover:none){.project-tile-reveal{display:none}}@media (prefers-reduced-motion:reduce){.project-tile-reveal{transition:none}}.project-tile-media:after{display:none}@media (max-width:700px){.cert-hero-filter{min-height:46px}.contact-section{padding-top:80px;padding-bottom:88px}.contact-form{padding:21px 17px}.form-intro{margin-bottom:26px;font-size:15px}.contact-form-guide{grid-template-columns:1fr;margin-bottom:29px}.contact-form-guide li{border-right:0;border-bottom:1px solid rgba(var(--navy-rgb),.2);grid-template-columns:28px minmax(0,1fr);column-gap:10px;padding:11px 12px}.contact-form-guide li:last-child{border-bottom:0}.contact-form-guide li small{grid-column:2}.contact-form label{margin-bottom:10px}.contact-form input,.contact-form textarea{margin-bottom:28px;font-size:16px}.contact-form textarea{min-height:164px}.contact-links a{min-height:34px}.contact-directory-status{font-size:7px}.form-route-status{flex-direction:column;align-items:flex-start;gap:8px}}@media (max-width:570px){.cert-frame-badge .cert-frame-media{min-height:218px}}@media (max-width:540px){.project-tile-controls{gap:6px;top:12px;right:12px}.project-tile-controls button{width:36px;height:36px}.project-tile-actions{grid-template-columns:minmax(0,1fr) 104px}.project-tile-open,.project-tile-github{min-height:48px}.project-tile-open{padding-inline:18px}.project-tile-github{justify-content:center;padding-inline:10px}.project-image-dialog-controls button{min-height:46px}}.theme-dark .contact-directory{box-shadow:none;background:linear-gradient(135deg,#0f263beb,#0a1c2dd1);border-color:#34526d}.theme-dark .contact-directory-header{color:#a9c2d4;border-color:#34526d}.theme-dark .contact-links{background:#34526d}.theme-dark .contact-links a{color:#e7f0f6;background:#102941}.theme-dark .contact-link-icon{color:#8fd0f5;background:#123651;border-color:#3b5f7d}.theme-dark .contact-link-copy small{color:#a9c2d4}.theme-dark .contact-links a:hover{color:#dff4ff;background:#173b59}.theme-dark .contact-links a:hover .contact-link-icon{color:#dff4ff;background:#1a4668;border-color:#6da8d0}.theme-dark .contact-cv-note{border-color:#34526d}.theme-dark .contact-cv-note .button-secondary{color:#d8e6ee;background:0 0;border-color:#d8e6ee6b}.theme-dark .contact-cv-note .button-secondary:hover{color:#fff;border-color:var(--navy-signal);background:rgba(var(--navy-rgb),.2)}html[data-theme=dark] .contact-form,.theme-dark .contact-form{color:#f4f7fa;box-shadow:none;background:linear-gradient(145deg,#102941f0,#0a1c2dd1);border-color:#34526d}html[data-theme=dark] .form-header,.theme-dark .form-header{color:#a9d4ec;border-color:#324f6a}html[data-theme=dark] .form-header svg,.theme-dark .form-header svg{color:#8fd0f5}html[data-theme=dark] .form-intro,.theme-dark .form-intro{color:#b9c8d4}html[data-theme=dark] .contact-form-guide,.theme-dark .contact-form-guide{background:#34526d;border-color:#34526d}html[data-theme=dark] .contact-form-guide li,.theme-dark .contact-form-guide li{background:#102941;border-color:#34526d}html[data-theme=dark] .contact-form-guide strong,.theme-dark .contact-form-guide strong{color:#e7f0f6}html[data-theme=dark] .contact-form-guide small,.theme-dark .contact-form-guide small{color:#a9c2d4}html[data-theme=dark] .contact-form label,.theme-dark .contact-form label{color:#d4e4ed}html[data-theme=dark] .contact-form input,html[data-theme=dark] .contact-form textarea,.theme-dark .contact-form input,.theme-dark .contact-form textarea{color:#f4f7fa;border-color:#405a75}html[data-theme=dark] .contact-form input::placeholder,html[data-theme=dark] .contact-form textarea::placeholder,.theme-dark .contact-form input::placeholder,.theme-dark .contact-form textarea::placeholder{color:#7f98aa}html[data-theme=dark] .contact-form input:hover,html[data-theme=dark] .contact-form textarea:hover,.theme-dark .contact-form input:hover,.theme-dark .contact-form textarea:hover{border-color:#78b8e5}html[data-theme=dark] .contact-form input:focus,html[data-theme=dark] .contact-form textarea:focus,.theme-dark .contact-form input:focus,.theme-dark .contact-form textarea:focus{border-color:#8fd0f5;box-shadow:inset 0 -1px #8fd0f5}html[data-theme=dark] .contact-form input[aria-invalid=true],html[data-theme=dark] .contact-form textarea[aria-invalid=true],.theme-dark .contact-form input[aria-invalid=true],.theme-dark .contact-form textarea[aria-invalid=true]{border-color:#f08b82;box-shadow:inset 0 -1px #f08b82}html[data-theme=dark] .contact-hero-action,.theme-dark .contact-hero-action{color:#d9eaf4;border-color:#78b8e5}html[data-theme=dark] .contact-hero-route,.theme-dark .contact-hero-route{color:#d8e8f1;background:linear-gradient(90deg,#78b8e514,#0000 64%);border-color:#324f6a}html[data-theme=dark] .contact-hero-route-main,.theme-dark .contact-hero-route-main,html[data-theme=dark] .contact-hero-route>a,.theme-dark .contact-hero-route>a{border-color:#324f6a}html[data-theme=dark] .contact-hero-route-main strong,.theme-dark .contact-hero-route-main strong,html[data-theme=dark] .contact-hero-route>a,.theme-dark .contact-hero-route>a{color:#f4f7fa}html[data-theme=dark] .contact-hero-route-main span,.theme-dark .contact-hero-route-main span,html[data-theme=dark] .contact-hero-route-meta,.theme-dark .contact-hero-route-meta,html[data-theme=dark] .form-route-status,.theme-dark .form-route-status{color:#aebfcd}html[data-theme=dark] .contact-hero-route-state,.theme-dark .contact-hero-route-state,html[data-theme=dark] .form-delivery-feedback.is-success,.theme-dark .form-delivery-feedback.is-success{color:#a9d4ec}html[data-theme=dark] .form-delivery-feedback.is-success i,.theme-dark .form-delivery-feedback.is-success i{background:#8fd0f5}.theme-dark .home-visual,.theme-dark .contact-portrait{background:#122a43;border-color:#405a75}.theme-dark .contact-portrait figcaption{color:#d9eaf4;background:#152f49}.theme-dark.page-tone-paper,.theme-dark.page-tone-mist,.theme-dark.page-tone-paper .page-hero,.theme-dark.page-tone-mist .page-hero{color:#f4f7fa;background:#0f2135}.theme-dark.page-tone-paper .page-hero h1,.theme-dark.page-tone-mist .page-hero h1{color:#f4f7fa}.theme-dark.page-tone-paper .page-hero-intro,.theme-dark.page-tone-mist .page-hero-intro{color:#b9c8d4}.theme-dark.page-tone-mist .projects-page-section,html[data-theme=dark] .page-tone-paper,html[data-theme=dark] .page-tone-mist,html[data-theme=dark] .page-tone-paper .page-hero,html[data-theme=dark] .page-tone-mist .page-hero{color:#f4f7fa;background:#0f2135}html[data-theme=dark] .page-tone-paper .page-hero h1,html[data-theme=dark] .page-tone-mist .page-hero h1{color:#f4f7fa}html[data-theme=dark] .page-tone-paper .page-hero-intro,html[data-theme=dark] .page-tone-mist .page-hero-intro{color:#b9c8d4}html[data-theme=dark] .page-tone-mist .projects-page-section{color:#f4f7fa;background:#0f2135}@media (max-width:980px){.page-hero-grid,.split-page-grid,.home-devops-layout{grid-template-columns:1fr;gap:38px}.page-hero-grid-with-visual{grid-template-columns:1fr;gap:34px}.page-hero-index{max-width:240px}.home-scroll{margin-top:44px}.home-devops-copy{max-width:570px}}@media (max-width:700px){.page-hero{padding:56px 0 62px}.page-hero-grid,.page-hero-grid>*{min-width:0}.page-hero h1{overflow-wrap:anywhere;max-width:100%;font-size:clamp(44px,13vw,68px)}.home-hero-role{font-size:clamp(28px,8vw,42px)}.page-hero-intro{overflow-wrap:anywhere;max-width:100%;font-size:15px}.home-visual,.home-visual img{min-height:390px}.contact-portrait{max-width:none}.home-overview{padding:68px 0 74px}.home-overview-grid{grid-template-columns:1fr}.home-overview-card-wide{grid-row:auto;min-height:270px}.home-overview-card h2{font-size:38px}.home-devops-section{padding:72px 0 86px}.home-devops-layout{gap:38px;margin-top:31px}.home-devops-copy h2{font-size:41px}.home-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-tech-card{gap:19px;min-height:142px;padding:16px}.home-tech-icon{width:30px;height:30px}.home-tech-card h3{font-size:15px}.isolated-section{padding:66px 0 88px}.split-page-grid{gap:46px}.projects-page-section:before{opacity:.35;left:18px}.contact-profile .lead-copy{font-size:29px}.recommendations-empty{width:100%;min-width:0}.recommendations-empty h2,.recommendations-empty p{overflow-wrap:anywhere}.certifications-page-block{margin-top:67px;padding-top:30px}.page-tone-dark .certifications-page-block h2{font-size:39px}}.footer-inner{font:10px IBM Plex Mono,monospace}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:700px){.home-visual{width:100%}.site-footer{padding:44px 0 22px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-brand-block{max-width:100%}.footer-rule{margin:32px 0 16px}.footer-meta{flex-direction:column;align-items:flex-start;gap:10px}.footer-copyright{font-size:10px}.whatsapp-float{right:17px;bottom:calc(16px + env(safe-area-inset-bottom));gap:7px;width:auto;min-width:43px;height:43px;padding:0 12px}.whatsapp-float>span:not(.whatsapp-float-tooltip){display:inline}.whatsapp-float-tooltip{display:none}}.courses-section{background:var(--paper)}.courses-manifest{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(250px,.38fr);align-items:end;gap:clamp(30px,7vw,92px);padding:0 0 56px;display:grid}.courses-sharing-message{max-width:840px;color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.36);background:linear-gradient(120deg,rgba(var(--navy-rgb),.08),rgba(var(--navy-rgb),.025));box-shadow:inset 3px 0 0 var(--navy-signal);margin:0 auto clamp(34px,5vw,58px);padding:clamp(21px,3vw,32px)}.courses-sharing-message p{max-width:720px;margin:0;font:600 clamp(18px,2.2vw,25px)/1.85 Noto Naskh Arabic,DM Sans,sans-serif}.courses-manifest-copy{max-width:720px}.courses-manifest-copy h2{max-width:640px;color:var(--ink);letter-spacing:-.06em;margin:16px 0 17px;font-size:clamp(33px,4.4vw,62px);line-height:.97}.courses-manifest-copy p{color:#5d7488;max-width:620px;margin:0;font-size:16px;line-height:1.75}.courses-manifest-note{min-height:150px;color:var(--navy-deep);border-top:1px solid rgba(var(--navy-rgb),.42);border-bottom:1px solid rgba(var(--navy-rgb),.18);background:linear-gradient(90deg,rgba(var(--navy-rgb),.08),transparent);letter-spacing:.1em;align-content:center;gap:10px;padding:22px 24px;font:700 10px IBM Plex Mono,monospace;display:grid}.courses-manifest-note>svg{color:var(--navy-signal)}.courses-manifest-note small{color:#637887;letter-spacing:.075em;font:9px IBM Plex Mono,monospace}.courses-overview{border:1px solid rgba(var(--navy-rgb),.23);background:rgba(var(--navy-rgb),.23);grid-template-columns:minmax(0,1fr) minmax(340px,.92fr);gap:1px;margin:32px 0 0;display:grid}.courses-overview-copy{background:linear-gradient(120deg,rgba(var(--navy-rgb),.07),#ffffffc2);padding:20px 24px}.courses-overview-copy>span{color:var(--navy-signal);letter-spacing:.11em;text-transform:uppercase;font:700 8px IBM Plex Mono,monospace}.courses-overview-copy p{color:#597082;max-width:610px;margin:8px 0 0;font:13px/1.62 DM Sans,sans-serif}.courses-overview-facts{background:var(--navy-deep);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.courses-overview-facts>div{border-right:1px solid #b9d8ea33;align-content:center;gap:5px;min-width:0;padding:16px 18px;display:grid}.courses-overview-facts>div:last-child{border-right:0}.courses-overview-facts dt{color:#a8d9f5;letter-spacing:-.055em;font:650 24px/1 Space Grotesk,sans-serif}.courses-overview-facts dd{color:#d8e6ee;letter-spacing:.055em;text-transform:uppercase;margin:0;font:8px/1.4 IBM Plex Mono,monospace}.courses-search-toolbar{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:25px 0;display:grid}.courses-search-field{min-width:0;color:var(--navy-signal);border:1px solid rgba(var(--navy-rgb),.3);background:rgba(var(--navy-rgb),.025);transition:border-color .18s var(--ease-out),background .18s var(--ease-out);align-items:center;gap:11px;padding:0 14px;display:flex}.courses-search-field:focus-within{border-color:var(--navy-signal);background:rgba(var(--navy-rgb),.06)}.courses-search-field input{width:100%;min-width:0;height:42px;color:var(--ink);background:0 0;border:0;outline:0;font:500 14px DM Sans,sans-serif}.courses-search-field input::placeholder{color:#718495;opacity:1}.courses-difficulty-select{min-width:158px;display:block;position:relative}.courses-difficulty-select:after{content:"⌄";color:var(--navy-signal);pointer-events:none;font:14px/1 IBM Plex Mono,monospace;position:absolute;top:50%;right:12px;transform:translateY(-56%)}.courses-difficulty-select select{appearance:none;width:100%;height:44px;color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.3);background:rgba(var(--navy-rgb),.025);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:border-color .18s var(--ease-out),background .18s var(--ease-out);border-radius:0;outline:0;padding:0 34px 0 13px;font:500 10px IBM Plex Mono,monospace}.courses-difficulty-select select:focus-visible{border-color:var(--navy-signal);background:rgba(var(--navy-rgb),.07)}.courses-search-clear{width:42px;height:42px;color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.3);transition:color .18s var(--ease-out),background .18s var(--ease-out);background:0 0;place-items:center;display:grid}.courses-search-clear:hover,.courses-search-clear:focus-visible{color:#fff;background:var(--navy-deep)}.courses-search-status{color:#607786;letter-spacing:.07em;text-transform:uppercase;min-width:max-content;margin:0;font:9px IBM Plex Mono,monospace}.courses-search-empty{color:#607786;border:1px dashed rgba(var(--navy-rgb),.3);background:rgba(var(--navy-rgb),.025);align-items:center;gap:14px;min-height:150px;margin-top:32px;padding:28px;display:flex}.courses-search-empty p{margin:0;font-size:15px}.courses-directory{border-bottom:1px solid var(--line)}.course-group{border-top:1px solid var(--line);grid-template-columns:minmax(270px,.54fr) minmax(0,1fr);gap:clamp(28px,6vw,84px);padding:42px 0;display:grid;position:relative}.course-group:before{content:"";background:linear-gradient(var(--navy-signal),transparent);opacity:.62;width:2px;position:absolute;top:42px;bottom:42px;left:0}.course-group:first-child{border-top:0}.course-group-heading{grid-template-columns:32px minmax(0,1fr);align-content:start;gap:14px;padding-left:14px;display:grid}.course-group-index,.course-resource-empty-mark{color:var(--navy-signal);letter-spacing:.08em;font:10px IBM Plex Mono,monospace}.course-group-title-line{color:var(--navy-signal);align-items:center;gap:10px;display:flex}.course-group-title-line h2{color:var(--ink);letter-spacing:-.05em;margin:0;font-size:clamp(24px,2.8vw,38px);line-height:1}.course-group-count{width:25px;height:25px;color:var(--navy-signal);border:1px solid rgba(var(--navy-rgb),.25);letter-spacing:.03em;place-items:center;margin-left:auto;font:9px IBM Plex Mono,monospace;display:inline-grid}.course-group-heading p{color:#637887;max-width:340px;margin:13px 0 0;font-size:14px;line-height:1.62}.course-resource-list{min-width:0}.course-resource{color:var(--ink);border-top:1px solid var(--line);transition:background .18s var(--ease-out),color .18s var(--ease-out),transform .18s var(--ease-out);background:0 0;grid-template-columns:minmax(110px,.31fr) minmax(0,1fr) auto;align-items:start;gap:18px;padding:20px 14px 20px 46px;display:grid;position:relative}.course-resource-number{color:#7892a2;letter-spacing:.08em;font:9px IBM Plex Mono,monospace;position:absolute;top:22px;left:0}.course-resource:last-child{border-bottom:1px solid var(--line)}.course-resource:hover{color:var(--navy-deep);background:rgba(var(--navy-rgb),.045);transform:translate(5px)}.course-resource-type{color:var(--navy-signal);letter-spacing:.075em;align-items:center;gap:7px;font:9px IBM Plex Mono,monospace;display:inline-flex}.course-resource-body{gap:7px;display:grid}.course-resource-body strong{color:currentColor;letter-spacing:-.03em;font:700 18px/1.12 Space Grotesk,sans-serif}.course-resource-body>span{color:#607786;font-size:14px;line-height:1.55}.course-resource-body small{color:#708491;letter-spacing:.07em;font:9px IBM Plex Mono,monospace}.course-resource-body .course-resource-difficulty{width:max-content;color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.26);background:rgba(var(--navy-rgb),.06);text-transform:uppercase;padding:3px 6px}.course-resource>svg{color:var(--navy-signal);margin-top:2px}.course-resource-empty{color:#607786;border:1px dashed rgba(var(--navy-rgb),.26);background:rgba(var(--navy-rgb),.025);align-items:center;gap:18px;min-height:100px;padding:24px;display:flex}.course-resource-empty p{margin:0;font-size:14px;line-height:1.5}.theme-dark .courses-section{background:#0f2135}.theme-dark .courses-manifest,.theme-dark .course-group,.theme-dark .courses-directory,.theme-dark .course-resource{border-color:#324863}.theme-dark .courses-manifest-copy h2,.theme-dark .course-group-title-line h2,.theme-dark .course-resource{color:#f4f7fa}.theme-dark .courses-manifest-copy p,.theme-dark .course-group-heading p,.theme-dark .course-resource-body>span,.theme-dark .course-resource-empty{color:#b9c8d4}.theme-dark .courses-search-toolbar{border-color:#324863}.theme-dark .courses-search-field,.theme-dark .courses-search-clear{background:#162b437a;border-color:#3d6285}.theme-dark .courses-search-field input,.theme-dark .courses-search-clear{color:#e3edf4}.theme-dark .courses-difficulty-select select{color:#e3edf4;background:#162b437a;border-color:#3d6285}.theme-dark .courses-search-field input::placeholder,.theme-dark .courses-search-status,.theme-dark .courses-search-empty{color:#aebfce}.theme-dark .courses-search-clear:hover,.theme-dark .courses-search-clear:focus-visible{color:#0f2135;background:#8dd0f2}.theme-dark .courses-manifest-note{color:#d9e7ef;background:linear-gradient(90deg,#2f6b9738,#0000);border-color:#3d6285}.theme-dark .courses-manifest-note small,.theme-dark .course-resource-body small{color:#9eb2c3}.theme-dark .courses-overview{background:#34526d;border-color:#34526d}.theme-dark .courses-overview-copy{background:linear-gradient(120deg,#102941,#0c2031)}.theme-dark .courses-overview-copy p{color:#b9c8d4}.theme-dark .course-group-count{border-color:#3d6285}.theme-dark .course-resource-body .course-resource-difficulty{color:#d9e7ef;background:#2f6b9733;border-color:#3d6285}.theme-dark .courses-sharing-message{color:#e3edf4;background:linear-gradient(120deg,#2f6b973d,#162b4366);border-color:#3d6285}.theme-dark .course-resource:hover{color:#f4f7fa;background:#2f6b972b}.theme-dark .course-resource-empty{background:#162b43b3;border-color:#3d6285}@media (max-width:760px){.courses-manifest,.course-group,.courses-overview{grid-template-columns:1fr;gap:28px}.courses-manifest{padding-bottom:40px}.courses-overview{gap:1px}.courses-overview-copy{padding:20px}.courses-overview-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.courses-overview-facts>div{padding:14px 10px}.courses-search-toolbar{grid-template-columns:minmax(0,1fr) auto}.courses-difficulty-select{grid-column:1/-1;width:100%}.courses-search-status{grid-column:1/-1}.course-group{padding:34px 0}.course-group:before{top:34px;bottom:34px}.course-group-heading{padding-left:13px}.course-resource{grid-template-columns:1fr auto;gap:12px;padding-left:38px}.course-resource-number{top:22px}.course-resource-type{grid-column:1/-1}.course-resource-body{min-width:0}.course-resource:hover{transform:translate(3px)}}.language-full{display:none}.language-switch-stage{transition:opacity .16s var(--ease-out),transform .16s var(--ease-out)}.language-switch-stage.is-changing{opacity:.42;transform:translateY(3px)}.cv-preview-dialog{background:var(--paper);width:min(1120px,100vw - 32px);max-width:min(1120px,100vw - 32px);color:var(--ink);border-color:rgba(var(--navy-rgb),.34);padding:clamp(18px,2.8vw,30px)}.cv-preview-dialog [data-slot=dialog-header]{text-align:start;gap:8px}.cv-preview-dialog [data-slot=dialog-title]{color:var(--navy-deep);letter-spacing:-.035em;font-family:Space Grotesk,sans-serif}.cv-preview-dialog [data-slot=dialog-description]{color:#607786}.cv-preview-frame-wrap{border:1px solid rgba(var(--navy-rgb),.25);background:#dce4e9;height:min(68vh,720px);overflow:hidden}.cv-preview-frame{background:#fff;border:0;width:100%;height:100%}.cv-preview-actions{align-items:center}.cv-preview-dialog .button-secondary{color:var(--navy-deep);border-color:rgba(var(--navy-rgb),.62);background:#fff;font-weight:700}.cv-preview-dialog .button-secondary:hover{color:#fff;border-color:var(--navy-deep);background:var(--navy-deep)}.cv-preview-dialog .button-secondary:focus-visible{outline:3px solid rgba(var(--navy-rgb),.42);outline-offset:3px}.theme-dark .cv-preview-dialog{color:#f4f7fa;background:#10283e;border-color:#3d6285}.theme-dark .cv-preview-dialog [data-slot=dialog-title]{color:#f4f7fa}.theme-dark .cv-preview-dialog [data-slot=dialog-description]{color:#b9c8d4}.theme-dark .cv-preview-dialog .button-secondary{color:#d8e6ee;background:0 0;border-color:#d8e6ee6b}.theme-dark .cv-preview-dialog .button-secondary:hover{color:#fff;border-color:var(--navy-signal);background:rgba(var(--navy-rgb),.2)}@media (max-width:700px){.language-toggle{border:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:100%;padding:7px;display:grid}.language-toggle>span{min-width:0}.language-toggle .language-slash{display:none}.language-toggle button{text-align:start;justify-content:space-between;align-items:center;width:100%;min-height:34px;padding:0 8px;display:flex}.language-short{color:inherit;font-size:8px}.language-full{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;text-transform:none;font:500 10px DM Sans,sans-serif;display:inline;overflow:hidden}.cv-preview-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:16px}.cv-preview-frame-wrap{height:min(62vh,560px)}.cv-preview-actions{align-items:stretch}.cv-preview-actions .button{justify-content:center}}html[dir=rtl] .courses-sharing-message{box-shadow:inset -3px 0 0 var(--navy-signal)}@media (max-width:700px){.formation-overview{grid-template-columns:1fr;margin-bottom:24px}.formation-overview-copy{padding:26px 20px}.formation-overview-copy h2{font-size:32px}.formation-overview-facts{grid-template-rows:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.formation-overview-facts>div{border-bottom:0;border-right:1px solid #b9d8ea33;grid-template-columns:1fr;gap:6px;padding:14px 12px}.formation-overview-facts>div:last-child{border-right:0}.formation-overview-facts dt{font-size:21px}.formation-overview-facts dd{font-size:8px}.formation-list{gap:9px}.formation-item{grid-template-columns:26px 76px minmax(0,1fr);align-items:start;gap:12px;min-height:0;padding:17px 15px}.formation-item.is-current{padding-left:15px}.formation-ordinal{padding-top:5px}.formation-logo-wrap{grid-row:1/span 3;width:76px;height:70px}.formation-period{grid-column:3;padding-top:4px}.formation-info{grid-column:3}.formation-info h2{font-size:20px}.formation-info p{font-size:12px}.formation-level{text-align:left;grid-column:3;justify-self:start;max-width:none}.experience-overview{grid-template-columns:1fr;margin-bottom:24px}.experience-overview-copy{padding:26px 20px}.experience-overview-copy h2{font-size:32px}.experience-overview-facts{grid-template-rows:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.experience-overview-facts>div{border-bottom:0;border-right:1px solid #b9d8ea33;grid-template-columns:1fr;gap:6px;padding:14px 12px}.experience-overview-facts>div:last-child{border-right:0}.experience-overview-facts dt{font-size:21px}.experience-overview-facts dd{font-size:8px}.experience-timeline{gap:9px}.experience-item{grid-template-columns:24px minmax(0,1fr);gap:11px;min-height:0;padding:17px 15px}.experience-item .timeline-marker{grid-row:1/span 3}.experience-item .timeline-marker:before{height:calc(100% + 34px);top:-17px}.experience-item .timeline-date{grid-area:auto/2;padding-top:3px}.experience-item .timeline-info{grid-column:2}.experience-title-row{flex-direction:column;align-items:flex-start;gap:10px}.experience-item .timeline-info h3{font-size:22px}.experience-title-row .timeline-label{align-self:flex-start}.experience-bullets li{grid-template-columns:23px minmax(0,1fr);gap:7px;padding:9px 0;font-size:12px}.experience-environment{gap:5px}.experience-environment b{padding:5px 6px;font-size:8px}}.skills-page-section{background:var(--paper);position:relative;overflow:hidden}.skills-page-section:before{content:"";pointer-events:none;opacity:.5;background-image:linear-gradient(90deg,transparent calc(50% - 1px),rgba(var(--navy-rgb),.1)50%,transparent calc(50% + 1px));background-size:100% 100%;position:absolute;inset:0}.skills-page-section .page-wrap{position:relative}.skills-overview{border:1px solid rgba(var(--navy-rgb),.2);background:rgba(var(--navy-rgb),.2);grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr);gap:1px;margin-bottom:34px;display:grid}.skills-overview-copy{background:linear-gradient(135deg,rgba(var(--navy-rgb),.1),#ffffffc2);padding:clamp(24px,4vw,43px)}.skills-overview-copy>span{color:var(--navy-signal);letter-spacing:.12em;text-transform:uppercase;font:700 9px IBM Plex Mono,monospace}.skills-overview-copy h2{max-width:670px;color:var(--ink);letter-spacing:-.065em;margin:19px 0 14px;font:650 clamp(30px,3.4vw,51px)/.99 Space Grotesk,sans-serif}.skills-overview-copy p{color:#597082;max-width:620px;margin:0;font-size:14px;line-height:1.75}.skills-overview-facts{background:var(--navy-deep);grid-template-rows:repeat(3,1fr);margin:0;display:grid}.skills-overview-facts>div{border-bottom:1px solid #b9d8ea33;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;padding:18px 22px;display:grid}.skills-overview-facts>div:last-child{border-bottom:0}.skills-overview-facts dt{color:#a8d9f5;letter-spacing:-.055em;font:650 25px/1 Space Grotesk,sans-serif}.skills-overview-facts dd{color:#d8e6ee;letter-spacing:.055em;text-transform:uppercase;margin:0;font:10px/1.45 IBM Plex Mono,monospace}.skills-reference-toolbar{justify-content:space-between;align-items:center;gap:22px;margin-bottom:26px;display:flex}.skills-filter-list{border:1px solid var(--line);flex-wrap:wrap;gap:0;display:flex}.skill-filter{color:#4f667b;border-right:1px solid var(--line);letter-spacing:.03em;text-transform:uppercase;min-height:36px;transition:background .18s var(--ease-out),color .18s var(--ease-out);background:0 0;padding:0 14px;font:500 9px IBM Plex Mono,monospace}.skill-filter:last-child{border-right:0}.skill-filter:hover,.skill-filter:focus-visible{color:var(--navy-deep);background:rgba(var(--navy-rgb),.08)}.skill-filter.is-active{color:#f4f7fa;background:var(--navy-deep)}.skills-domain-count{color:#647785;letter-spacing:.08em;text-transform:uppercase;flex:none;font:10px IBM Plex Mono,monospace}.skills-reference-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(42px,7vw,96px);display:grid}.skill-reference-row{border-bottom:1px solid var(--line);min-width:0;transition:padding .18s var(--ease-out),background .18s var(--ease-out);padding:19px 0 20px}.skill-reference-row:hover{background:rgba(var(--navy-rgb),.045);padding-left:10px;padding-right:10px}.skill-reference-header{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:13px;display:grid}.skill-reference-icon{width:28px;height:28px;color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.28);place-items:center;display:grid}.skill-reference-header h2{min-width:0;color:var(--ink);letter-spacing:-.025em;margin:0;font:600 15px/1.2 DM Sans,sans-serif}.skill-reference-count{color:var(--navy-deep);letter-spacing:.02em;white-space:nowrap;font:9px IBM Plex Mono,monospace}.skill-reference-description{color:#607786;min-height:38px;margin:10px 0 10px 45px;font-size:12px;line-height:1.48}.skill-reference-tags{flex-wrap:wrap;gap:5px;min-height:24px;margin:0 0 12px 45px;display:flex}.skill-reference-tags span{color:#61737d;background:rgba(var(--navy-rgb),.055);padding:4px 6px;font:8px IBM Plex Mono,monospace}.skill-reference-meter{background:rgba(var(--navy-rgb),.18);height:2px;margin-left:45px;overflow:hidden}.skill-reference-meter-fill{background:var(--navy-signal);height:100%;transition:width .28s var(--ease-out);display:block}html[data-theme=dark] .skills-page-section,.theme-dark .skills-page-section{background:#0f2135}html[data-theme=dark] .skill-filter,.theme-dark .skill-filter{color:#b9c8d4;border-color:#324863}html[data-theme=dark] .skills-filter-list,.theme-dark .skills-filter-list,html[data-theme=dark] .skills-reference-grid,.theme-dark .skills-reference-grid,html[data-theme=dark] .skill-reference-row,.theme-dark .skill-reference-row{border-color:#324863}html[data-theme=dark] .skill-filter:hover,html[data-theme=dark] .skill-filter:focus-visible,.theme-dark .skill-filter:hover,.theme-dark .skill-filter:focus-visible{color:#e7f0f6;background:#78b8e51f}html[data-theme=dark] .skill-filter.is-active,.theme-dark .skill-filter.is-active{color:#0b1b2b;background:#78b8e5}html[data-theme=dark] .skills-domain-count,.theme-dark .skills-domain-count{color:#9eb2c3}html[data-theme=dark] .skill-reference-row:hover,.theme-dark .skill-reference-row:hover{background:#78b8e50f}html[data-theme=dark] .skill-reference-icon,.theme-dark .skill-reference-icon{color:#9fd1f0;border-color:#405a75}html[data-theme=dark] .skill-reference-header h2,.theme-dark .skill-reference-header h2{color:#f4f7fa}html[data-theme=dark] .skill-reference-count,.theme-dark .skill-reference-count{color:#9fd1f0}html[data-theme=dark] .skill-reference-description,.theme-dark .skill-reference-description{color:#b9c8d4}html[data-theme=dark] .skill-reference-tags span,.theme-dark .skill-reference-tags span{color:#c8d5df;background:#1d3a59}html[data-theme=dark] .skill-reference-meter,.theme-dark .skill-reference-meter{background:#324863}@media (max-width:700px){.skills-reference-toolbar{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:28px}.skills-filter-list{width:100%}.skill-filter{flex:1 0 auto;min-height:35px;padding:0 10px;font-size:8px}.skills-domain-count{padding-left:1px}.skills-reference-grid{grid-template-columns:1fr}.skill-reference-row{padding:18px 0}.skill-reference-header{gap:10px}.skill-reference-header h2{font-size:15px}.skill-reference-description{min-height:0;margin-left:38px}.skill-reference-tags,.skill-reference-meter{margin-left:38px}}.skills-logo-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.4vw,30px);padding-top:clamp(22px,3vw,34px);display:grid}.skill-domain-card{border:1px solid rgba(var(--navy-rgb),.18);min-width:0;transition:transform .18s var(--ease-out),border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#ffffff9e;padding:clamp(18px,2.2vw,26px);box-shadow:inset 0 1px #ffffffb3}.skill-domain-card:hover{border-color:rgba(var(--navy-rgb),.42);transform:translateY(-3px);box-shadow:0 16px 34px #0c233714}.skill-domain-card-heading{grid-template-columns:24px 34px minmax(0,1fr) auto;align-items:start;gap:11px;margin-bottom:20px;display:grid}.skill-domain-ordinal{color:#7190a4;letter-spacing:.08em;padding-top:8px;font:700 9px IBM Plex Mono,monospace}.skill-domain-icon{width:31px;height:31px;color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.26);place-items:center;display:grid}.skill-domain-category{color:var(--navy-signal);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font:700 8px IBM Plex Mono,monospace;display:block}.skill-domain-card h2{color:var(--ink);letter-spacing:-.035em;margin:0 0 5px;font:600 clamp(15px,1.4vw,18px)/1.15 DM Sans,sans-serif}.skill-domain-card-heading p{color:#607786;margin:0;font-size:11px;line-height:1.46}.skill-domain-card .skill-reference-count{padding-top:4px}.skill-tech-grid{grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:8px;display:grid}.skill-tech-card{color:#426173;border:1px solid rgba(var(--navy-rgb),.18);text-align:center;min-height:104px;transition:transform .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#f7f9f9bd;align-content:center;justify-items:center;gap:10px;padding:10px 7px;font:500 9px/1.3 IBM Plex Mono,monospace;display:grid}.skill-tech-card:hover{z-index:1;border-color:rgba(var(--navy-rgb),.48);background:#fff;transform:translateY(-3px);box-shadow:0 9px 22px #1130481a}.skill-tech-logo{place-items:center;min-height:30px;display:grid}.skill-tech-logo svg{width:30px;height:30px}html[data-theme=dark] .skills-logo-grid,.theme-dark .skills-logo-grid{border-color:#324863}html[data-theme=dark] .skill-domain-card,.theme-dark .skill-domain-card{background:#10283c;border-color:#324863;box-shadow:inset 0 1px #c6ddee0a}html[data-theme=dark] .skill-domain-icon,.theme-dark .skill-domain-icon{color:#9fd1f0;border-color:#405a75}html[data-theme=dark] .skill-domain-card h2,.theme-dark .skill-domain-card h2{color:#f4f7fa}html[data-theme=dark] .skill-domain-card-heading p,.theme-dark .skill-domain-card-heading p{color:#b9c8d4}html[data-theme=dark] .skill-tech-card,.theme-dark .skill-tech-card{color:#bfd0dd;background:#0d2031;border-color:#324863}html[data-theme=dark] .skill-tech-card:hover,.theme-dark .skill-tech-card:hover{background:#132f47;border-color:#5a7b98;box-shadow:0 10px 24px #0000002e}html[data-theme=dark] .skills-overview,.theme-dark .skills-overview{background:#34526d;border-color:#34526d}html[data-theme=dark] .skills-overview-copy,.theme-dark .skills-overview-copy{background:linear-gradient(135deg,#102941,#0c2031)}html[data-theme=dark] .skills-overview-copy h2,.theme-dark .skills-overview-copy h2{color:#f4f7fa}html[data-theme=dark] .skills-overview-copy p,.theme-dark .skills-overview-copy p{color:#b9c8d4}@media (max-width:700px){.skills-logo-grid{grid-template-columns:1fr;gap:16px;padding-top:20px}.skill-domain-card{padding:18px}.skill-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-tech-card{min-height:96px}.skills-overview{grid-template-columns:1fr;margin-bottom:24px}.skills-overview-copy{padding:26px 20px}.skills-overview-copy h2{font-size:32px}.skills-overview-facts{grid-template-rows:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.skills-overview-facts>div{border-bottom:0;border-right:1px solid #b9d8ea33;grid-template-columns:1fr;gap:6px;padding:14px 12px}.skills-overview-facts>div:last-child{border-right:0}.skills-overview-facts dt{font-size:21px}.skills-overview-facts dd{font-size:8px}.skill-domain-card-heading{grid-template-columns:20px 31px minmax(0,1fr)}.skill-domain-card .skill-reference-count{grid-column:3;padding-top:0}}@media (prefers-reduced-motion:reduce){.skill-tech-card{transition:none}.skill-tech-card:hover{transform:none}html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.cert-hero-ledger{color:#dcebf4;background:#0d2740;border:1px solid #78b8e57a;padding:17px 18px 16px;font-family:IBM Plex Mono,monospace;position:relative;overflow:hidden;box-shadow:inset 3px 0 #78b8e5}.cert-hero-ledger:before{opacity:.34;pointer-events:none;content:"";background-image:linear-gradient(90deg,#0000 calc(50% - .5px),#78b8e540 50%,#0000 calc(50% + .5px)),linear-gradient(#78b8e524 1px,#0000 1px);background-size:100% 100%,100% 29px;position:absolute;inset:0}.cert-hero-ledger>*{z-index:1;position:relative}.cert-hero-ledger-top,.cert-hero-ledger-route,.cert-frame-record{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font:8px IBM Plex Mono,monospace;display:flex}.cert-hero-ledger-live,.cert-register-summary-status{color:#9ed2f0;align-items:center;gap:6px;display:inline-flex}.cert-hero-ledger-live i,.cert-register-summary-status i{background:#78b8e5;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #78b8e526}.cert-hero-ledger-index{border-bottom:1px solid #78b8e547;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:16px;padding:24px 0 19px;display:grid}.cert-hero-ledger-index strong{color:#f4f7fa;letter-spacing:-.075em;font:600 clamp(28px,3vw,42px)/.85 Space Grotesk,sans-serif}.cert-hero-ledger-index p{color:#b7cbd9;max-width:180px;margin:0;font:11px/1.48 DM Sans,sans-serif}.cert-hero-ledger dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.cert-hero-ledger dl div{border-left:1px solid #78b8e56b;min-width:0;padding-left:8px}.cert-hero-ledger dt{color:#91aebf;letter-spacing:.06em;text-transform:uppercase;font-size:7px}.cert-hero-ledger dd{color:#f4f7fa;letter-spacing:-.04em;margin:6px 0 0;font:600 14px Space Grotesk,sans-serif}.cert-hero-ledger-route{color:#a7c2d4;border-top:1px solid #78b8e547;padding-top:12px;font-size:7px}.cert-hero-ledger-route span:first-child{color:#78b8e5}.cert-hero-filter-panel{color:#dcebf4;background:#0d2740;border:1px solid #78b8e57a;padding:17px 18px 16px;font-family:IBM Plex Mono,monospace;position:relative;overflow:hidden;box-shadow:inset 3px 0 #78b8e5}.cert-hero-filter-panel:before{opacity:.34;pointer-events:none;content:"";background-image:linear-gradient(90deg,#0000 calc(50% - .5px),#78b8e540 50%,#0000 calc(50% + .5px)),linear-gradient(#78b8e524 1px,#0000 1px);background-size:100% 100%,100% 29px;position:absolute;inset:0}.cert-hero-filter-panel>*{z-index:1;position:relative}.cert-hero-filter-top,.cert-hero-filter-route{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font:8px IBM Plex Mono,monospace;display:flex}.cert-hero-filter-live{color:#9ed2f0;align-items:center;gap:6px;display:inline-flex}.cert-hero-filter-live i{background:#78b8e5;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #78b8e526}.cert-hero-filter-copy{border-bottom:1px solid #78b8e547;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:16px;padding:24px 0 19px;display:grid}.cert-hero-filter-copy strong{color:#f4f7fa;letter-spacing:-.075em;font:600 clamp(28px,3vw,42px)/.85 Space Grotesk,sans-serif}.cert-hero-filter-copy p{color:#b7cbd9;max-width:180px;margin:0;font:11px/1.48 DM Sans,sans-serif}.cert-hero-filter-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:18px 0;display:grid}.cert-hero-filter{color:#b7cbd9;letter-spacing:.06em;text-transform:uppercase;min-height:42px;transition:color .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out),transform .18s var(--ease-out);background:#0719286b;border:1px solid #78b8e55c;padding:0 10px;font:700 9px IBM Plex Mono,monospace}.cert-hero-filter:hover,.cert-hero-filter:focus-visible{color:#f4f7fa;background:#78b8e529;border-color:#78b8e5;outline:0}.cert-hero-filter.is-active{color:#0b1b2b;background:#8fd0f5;border-color:#8fd0f5}.cert-hero-filter:active{transform:scale(.97)}.cert-hero-filter-route{color:#a7c2d4;border-top:1px solid #78b8e547;padding-top:12px;font-size:7px}.cert-hero-filter-route span:first-child{color:#78b8e5}.cert-register-summary{border-bottom:1px solid rgba(var(--navy-rgb),.2);justify-content:space-between;align-items:flex-start;gap:20px;padding:0 0 15px;display:flex}.cert-register-summary p{color:#607786;text-align:right;max-width:410px;margin:0;font:10px/1.5 IBM Plex Mono,monospace}.cert-register-summary-status{color:var(--navy-deep);letter-spacing:.07em;text-transform:uppercase;flex:none;font:9px IBM Plex Mono,monospace}.cert-register-summary-status i{background:var(--navy-signal)}.cert-search-toolbar{border-top:1px solid rgba(var(--navy-rgb),.2);border-bottom:1px solid rgba(var(--navy-rgb),.2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:0 0 34px;padding:12px 0;display:grid}.cert-search-field{min-width:0;color:var(--navy-signal);border:1px solid rgba(var(--navy-rgb),.28);transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#f7fafcb8;align-items:center;gap:10px;padding:0 12px;display:flex}.cert-search-field:focus-within{border-color:var(--navy-signal);box-shadow:0 0 0 3px rgba(var(--navy-rgb),.1)}.cert-search-field input{width:100%;min-width:0;height:41px;color:var(--ink);background:0 0;border:0;outline:0;padding:0;font:500 12px DM Sans,sans-serif}.cert-search-field input::placeholder{color:#748896}.cert-search-summary{color:#617989;letter-spacing:.075em;text-align:right;text-transform:uppercase;white-space:nowrap;margin:0;font:8px IBM Plex Mono,monospace}.cert-catalog-overview{border:1px solid rgba(var(--navy-rgb),.22);background:linear-gradient(90deg,rgba(var(--navy-rgb),.06),#ffffff85);justify-content:space-between;align-items:center;gap:26px;margin:0 0 24px;padding:18px 20px;display:flex}.cert-catalog-overview>div{min-width:0}.cert-catalog-overview>div>span{color:var(--navy-signal);letter-spacing:.1em;text-transform:uppercase;font:700 8px IBM Plex Mono,monospace}.cert-catalog-overview p{color:#587084;max-width:690px;margin:7px 0 0;font:12px/1.55 DM Sans,sans-serif}.cert-catalog-overview strong{color:var(--navy-deep);letter-spacing:-.06em;flex:none;justify-items:end;font:650 32px/.9 Space Grotesk,sans-serif;display:grid}.cert-catalog-overview strong small{color:#6d8494;letter-spacing:.07em;text-align:right;text-transform:uppercase;margin-top:5px;font:8px IBM Plex Mono,monospace}.cert-gallery{gap:30px 22px;padding-top:22px}.cert-frame{box-shadow:0 10px 22px #102a430d}.cert-frame:before{z-index:2;content:"";background:linear-gradient(transparent,var(--navy-signal));width:1px;height:22px;position:absolute;top:-22px;left:21px}.cert-frame:hover{transform:translateY(-3px);box-shadow:0 16px 31px #102a431f}.cert-frame-badge .cert-frame-placeholder{background:linear-gradient(90deg,#0000 18px,#17283a13 18px 19px,#0000 19px) 0 0/100% 100%,linear-gradient(0deg,#17283a0e 1px,#0000 1px) 0 0/100% 29px,linear-gradient(145deg,#edf0f5,#f9fbfc 62%,#e5f1f8) 0 0/100% 100%;place-content:end;padding:18px}.cert-frame-badge .cert-frame-placeholder:before{background:linear-gradient(90deg,#617989 0 36px,#0000 36px),linear-gradient(90deg,#17283a47 0 67%,#0000 67%) 0 18px/100% 1px no-repeat,linear-gradient(90deg,#17283a30 0 44%,#0000 44%) 0 35px/100% 1px no-repeat;border:0;border-top:1px solid #17283a5c;border-bottom:1px solid #17283a33;border-radius:0;width:auto;height:54%;top:22px;left:21px;right:21px}.cert-frame-badge.is-pending .cert-frame-placeholder svg{color:#617989}.cert-frame-info{min-height:172px;padding:15px 17px 15px 21px}.cert-frame-record{color:#708796;border-bottom:1px solid rgba(var(--navy-rgb),.14);padding-bottom:9px;font-size:7px}.cert-frame-record>span:last-child{color:#698092}.cert-frame-record .is-filed,.cert-frame-record .is-indexed{color:var(--navy-signal)}.cert-frame-record .is-pending{color:#71818b}.cert-frame-record+.cert-frame-kicker{margin-top:10px}.cert-frame-bottom{justify-content:space-between;align-items:flex-end;gap:10px;margin-top:14px;display:flex}.cert-frame-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.cert-frame-bottom .cert-verify-link,.cert-frame-bottom .cert-document-link{margin-top:0}.cert-download-link{color:var(--navy-deep);border:1px solid rgba(var(--navy-rgb),.34);background:rgba(var(--navy-rgb),.04);letter-spacing:.055em;text-transform:uppercase;transition:color .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out),transform .18s var(--ease-out);align-items:center;gap:5px;padding:6px 7px;font:700 8px IBM Plex Mono,monospace;text-decoration:none;display:inline-flex}.cert-download-link:hover,.cert-download-link:focus-visible{color:#fff;border-color:var(--navy-signal);background:var(--navy-signal);outline:0;transform:translateY(-1px)}.cert-frame-status{margin-top:0}.cert-frame-status.is-filed:before,.cert-frame-status.is-indexed:before{background:var(--navy-signal)}.cert-frame-route{color:#738796;border-top:1px solid rgba(var(--navy-rgb),.14);letter-spacing:.045em;text-transform:uppercase;justify-content:space-between;gap:9px;margin:11px 0 0;padding-top:9px;font:7px IBM Plex Mono,monospace;display:flex;overflow:hidden}.cert-frame-route span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cert-frame-route span:first-child{color:var(--navy-signal)}.cert-filter-empty{color:#617989;border:1px dashed rgba(var(--navy-rgb),.36);background:linear-gradient(90deg,transparent 18px,rgba(var(--navy-rgb),.055)18px,rgba(var(--navy-rgb),.055)19px,transparent 19px),repeating-linear-gradient(0deg,rgba(var(--navy-rgb),.05)0,rgba(var(--navy-rgb),.05)1px,transparent 1px,transparent 29px),#f8fafb;text-align:center;grid-column:1/-1;align-content:center;place-items:center;min-height:268px;padding:34px;display:grid}.cert-filter-empty svg{color:var(--navy-signal)}.cert-filter-empty-label{color:var(--navy-signal);letter-spacing:.08em;text-transform:uppercase;margin:14px 0 0;font:8px IBM Plex Mono,monospace}.cert-filter-empty h3{color:var(--ink);letter-spacing:-.05em;margin:13px 0 7px;font:600 clamp(23px,3vw,32px)/1 Space Grotesk,sans-serif}.cert-filter-empty>p:last-child{color:#647785;max-width:450px;margin:0;font:12px/1.55 DM Sans,sans-serif}.cert-gallery--documents{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.cert-gallery--documents .cert-frame-document{grid-column:auto}.cert-gallery--documents .cert-frame-document .cert-frame-media{aspect-ratio:1.42;min-height:0;padding:10px}.cert-certificate-thumbnail,.cert-badge-thumbnail{cursor:zoom-in;background:#edf2f5;border:0;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.cert-certificate-thumbnail img,.cert-badge-thumbnail img{object-fit:contain;width:100%;height:100%;transition:transform .22s var(--ease-out);background:#fff;display:block}.cert-certificate-thumbnail:hover img,.cert-badge-thumbnail:hover img{transform:scale(1.025)}.cert-gallery--documents .cert-frame-document{content-visibility:auto;contain-intrinsic-size:auto 370px}.cert-certificate-thumbnail .cert-frame-pdf{pointer-events:none;background:#fff;border:0;width:100%;height:100%;display:block}.cert-certificate-thumbnail>span,.cert-badge-thumbnail>span{color:#fff;letter-spacing:.06em;opacity:0;text-transform:uppercase;transition:opacity .16s var(--ease-out),transform .16s var(--ease-out);background:#102a43e6;padding:6px 8px;font:700 8px IBM Plex Mono,monospace;position:absolute;bottom:9px;right:9px;transform:translateY(4px)}.cert-certificate-thumbnail:hover>span,.cert-certificate-thumbnail:focus-visible>span,.cert-badge-thumbnail:hover>span,.cert-badge-thumbnail:focus-visible>span{opacity:1;transform:translateY(0)}.cert-certificate-thumbnail:focus-visible,.cert-badge-thumbnail:focus-visible{outline:2px solid var(--navy-signal);outline-offset:-3px}.cert-document-link{color:var(--navy-deep);letter-spacing:.055em;cursor:pointer;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:5px;padding:0;font:700 10px IBM Plex Mono,monospace;text-decoration:none;display:inline-flex}.cert-document-link:hover{color:var(--navy-signal)}.cert-photo-view .PhotoView-Slider__Backdrop{background:#020609}.cert-photo-view .PhotoView-Slider__BannerWrap{background:linear-gradient(#020609bd,#02060900);height:60px;padding:0 clamp(16px,3vw,42px)}.cert-photo-view .PhotoView-Slider__Counter,.cert-photo-view .PhotoView-Slider__BannerRight>.PhotoView-Slider__toolbarIcon{display:none}.cert-photo-view-toolbar{z-index:2101;align-items:center;gap:4px;display:inline-flex;position:fixed;top:12px;right:clamp(12px,3vw,42px)}.cert-photo-view-control{color:#ffffffeb;cursor:pointer;width:36px;height:36px;transition:transform .16s var(--ease-out),background .16s var(--ease-out),color .16s var(--ease-out);background:#ffffff14;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.cert-photo-view-control:hover,.cert-photo-view-control:focus-visible{color:#fff;background:#ffffff2e}.cert-photo-view-control:active{transform:scale(.94)}.cert-photo-view-control:focus-visible{outline-offset:3px;outline:2px solid #8dd0f2}.cert-photo-view-control--close{margin-left:6px;font:300 29px/1 DM Sans,sans-serif}.cert-photo-view-control--close span{transform:translateY(-1px)}.cert-photo-view .PhotoView__Photo{touch-action:none;box-shadow:0 22px 70px #0000005c}.cert-photo-view .PhotoView-Slider__ArrowLeft,.cert-photo-view .PhotoView-Slider__ArrowRight{width:clamp(58px,7vw,84px)}.cert-photo-view .PhotoView-Slider__ArrowLeft svg,.cert-photo-view .PhotoView-Slider__ArrowRight svg{background:#0206096b;border:1px solid #ffffff4d;border-radius:50%;padding:11px}.cert-photo-view .PhotoView-Slider__ArrowLeft:hover svg,.cert-photo-view .PhotoView-Slider__ArrowRight:hover svg{background:#ffffff26}.cert-recruiter-card a,.cert-recruiter-card button{color:var(--navy-deep);letter-spacing:.06em;cursor:pointer;text-transform:uppercase;background:0 0;border:0;align-self:flex-start;align-items:center;gap:5px;margin-top:14px;padding:0;font:700 10px IBM Plex Mono,monospace;text-decoration:none;display:inline-flex}.cert-recruiter-card a:hover,.cert-recruiter-card button:hover{color:var(--navy-signal)}html[data-theme=dark] .cert-certificate-thumbnail,.theme-dark .cert-certificate-thumbnail{background:#0b1d2f}@media (max-width:980px){.cert-gallery--documents{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.cert-gallery--documents{grid-template-columns:1fr}.cert-gallery--documents .cert-frame-document .cert-frame-media{aspect-ratio:1.42}.cert-photo-view .PhotoView-Slider__BannerWrap{height:54px;padding:0 12px}.cert-photo-view-control{width:34px;height:34px}.cert-photo-view-control--close{margin-left:2px}.cert-photo-view .PhotoView-Slider__ArrowLeft,.cert-photo-view .PhotoView-Slider__ArrowRight{width:52px}.cert-photo-view .PhotoView-Slider__ArrowLeft svg,.cert-photo-view .PhotoView-Slider__ArrowRight svg{padding:8px}}.cert-recruiter-selection{border:1px solid rgba(var(--navy-rgb),.34);background:linear-gradient(110deg,rgba(var(--navy-rgb),.08),#f7fafce0 48%,rgba(var(--navy-rgb),.04));box-shadow:inset 4px 0 0 var(--navy-signal);margin:0 0 27px;padding:24px;position:relative;overflow:hidden}.cert-recruiter-selection:after{opacity:.3;pointer-events:none;content:"";background:repeating-linear-gradient(90deg,transparent 0,transparent 18px,rgba(var(--navy-rgb),.14)18px,rgba(var(--navy-rgb),.14)19px);width:34%;height:100%;position:absolute;top:0;right:0}.cert-recruiter-heading,.cert-recruiter-grid{z-index:1;position:relative}.cert-recruiter-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 18px;margin-bottom:22px;display:grid}.cert-recruiter-heading p{color:var(--navy-signal);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;margin:0;font:8px IBM Plex Mono,monospace}.cert-recruiter-heading h3{max-width:680px;color:var(--ink);letter-spacing:-.06em;margin:0;font:600 clamp(25px,3.2vw,42px)/.98 Space Grotesk,sans-serif}.cert-recruiter-heading>span{color:#587388;letter-spacing:.07em;text-align:right;text-transform:uppercase;font:8px IBM Plex Mono,monospace}.cert-recruiter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.cert-recruiter-card{border:1px solid rgba(var(--navy-rgb),.25);min-width:0;min-height:160px;transition:transform .18s var(--ease-out),border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);background:#fafcfde0;flex-direction:column;padding:17px;display:flex}.cert-recruiter-card:hover{border-color:var(--navy-signal);transform:translateY(-3px);box-shadow:0 12px 26px #102a431c}.cert-recruiter-card p{color:var(--navy-signal);letter-spacing:.07em;text-transform:uppercase;margin:0 0 11px;font:8px IBM Plex Mono,monospace}.cert-recruiter-card h4{color:var(--ink);letter-spacing:-.04em;margin:0;font:600 17px/1.05 Space Grotesk,sans-serif}.cert-recruiter-card>div{color:#607786;letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:16px;font:8px IBM Plex Mono,monospace;display:flex}.cert-recruiter-card time{color:var(--navy-deep);flex:none}.cert-recruiter-card a{color:var(--navy-deep);letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;align-items:center;gap:5px;margin-top:14px;font:700 10px IBM Plex Mono,monospace;text-decoration:none;display:inline-flex}.cert-recruiter-card a:hover{color:var(--navy-signal)}.cert-recruiter-card a:focus-visible,.cert-domain-filter:focus-visible{outline:2px solid var(--navy-signal);outline-offset:3px}.cert-domain-toolbar{border-bottom:1px solid rgba(var(--navy-rgb),.2);align-items:center;gap:16px;margin:0 0 16px;padding:10px 0;display:flex}.cert-domain-toolbar>span{color:#587388;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font:8px IBM Plex Mono,monospace}.cert-domain-list{flex-wrap:wrap;gap:8px;display:flex}.cert-domain-filter{color:#587388;border:1px solid rgba(var(--navy-rgb),.25);letter-spacing:.05em;cursor:pointer;text-transform:uppercase;min-height:30px;transition:color .16s var(--ease-out),background .16s var(--ease-out),border-color .16s var(--ease-out),transform .16s var(--ease-out);background:0 0;border-radius:999px;padding:0 11px;font:700 9px IBM Plex Mono,monospace}.cert-domain-filter:hover{color:var(--navy-deep);border-color:var(--navy-signal);transform:translateY(-1px)}.cert-domain-filter.is-active{color:#fff;border-color:var(--navy-deep);background:var(--navy-deep)}html[data-theme=dark] .cert-recruiter-selection,.theme-dark .cert-recruiter-selection{background:linear-gradient(110deg,#78b8e524,#102941f0 48%,#78b8e514);border-color:#3c5e7e}html[data-theme=dark] .cert-recruiter-card,.theme-dark .cert-recruiter-card{background:#0a1d2fc4;border-color:#3c5e7e}html[data-theme=dark] .cert-recruiter-card h4,html[data-theme=dark] .cert-recruiter-heading h3,.theme-dark .cert-recruiter-card h4,.theme-dark .cert-recruiter-heading h3{color:#f4f7fa}html[data-theme=dark] .cert-recruiter-heading>span,html[data-theme=dark] .cert-recruiter-card>div,.theme-dark .cert-recruiter-heading>span,.theme-dark .cert-recruiter-card>div{color:#a9becd}html[data-theme=dark] .cert-recruiter-card time,html[data-theme=dark] .cert-recruiter-card a,.theme-dark .cert-recruiter-card time,.theme-dark .cert-recruiter-card a{color:#9ed2f0}html[data-theme=dark] .cert-domain-toolbar,.theme-dark .cert-domain-toolbar{border-color:#3c5e7e}html[data-theme=dark] .cert-domain-toolbar>span,.theme-dark .cert-domain-toolbar>span{color:#a9becd}html[data-theme=dark] .cert-domain-filter,.theme-dark .cert-domain-filter{color:#b8cbd9;border-color:#3c5e7e}html[data-theme=dark] .cert-domain-filter.is-active,.theme-dark .cert-domain-filter.is-active{color:#0b1d2f;background:#9ed2f0;border-color:#9ed2f0}@media (max-width:760px){.cert-recruiter-selection{padding:19px}.cert-recruiter-heading{grid-template-columns:1fr}.cert-recruiter-heading>span{text-align:left}.cert-recruiter-grid{grid-template-columns:1fr}.cert-recruiter-card{min-height:142px}.cert-domain-toolbar{flex-direction:column;align-items:flex-start;gap:9px}}html[data-theme=dark] .cert-frame-badge .cert-frame-placeholder,.theme-dark .cert-frame-badge .cert-frame-placeholder{background:linear-gradient(90deg,#0000 18px,#c8d5df1a 18px 19px,#0000 19px) 0 0/100% 100%,linear-gradient(0deg,#c8d5df13 1px,#0000 1px) 0 0/100% 29px,linear-gradient(145deg,#183044,#102333 62%,#1a384a) 0 0/100% 100%}html[data-theme=dark] .cert-frame-badge .cert-frame-placeholder:before,.theme-dark .cert-frame-badge .cert-frame-placeholder:before{background:linear-gradient(90deg,#a9becd 0 36px,#0000 36px),linear-gradient(90deg,#c8d5df57 0 67%,#0000 67%) 0 18px/100% 1px no-repeat,linear-gradient(90deg,#c8d5df33 0 44%,#0000 44%) 0 35px/100% 1px no-repeat;border-color:#c8d5df66}html[data-theme=dark] .cert-frame-badge.is-pending .cert-frame-placeholder svg,.theme-dark .cert-frame-badge.is-pending .cert-frame-placeholder svg{color:#c8d5df}html[data-theme=dark] .cert-frame-record,.theme-dark .cert-frame-record,html[data-theme=dark] .cert-frame-route,.theme-dark .cert-frame-route{color:#9eb6c7;border-color:#324f6a}html[data-theme=dark] .cert-frame-record .is-filed,html[data-theme=dark] .cert-frame-record .is-indexed,.theme-dark .cert-frame-record .is-filed,.theme-dark .cert-frame-record .is-indexed,html[data-theme=dark] .cert-frame-route span:first-child,.theme-dark .cert-frame-route span:first-child{color:#8fd0f5}html[data-theme=dark] .cert-register-summary,.theme-dark .cert-register-summary{border-color:#324f6a}html[data-theme=dark] .cert-register-summary p,.theme-dark .cert-register-summary p{color:#a7bdcc}html[data-theme=dark] .cert-register-summary-status,.theme-dark .cert-register-summary-status{color:#a9d4ec}html[data-theme=dark] .cert-search-toolbar,.theme-dark .cert-search-toolbar{border-color:#324f6a}html[data-theme=dark] .cert-search-field,.theme-dark .cert-search-field{color:#8fd0f5;background:#102941;border-color:#3d5e7e}html[data-theme=dark] .cert-search-field input,.theme-dark .cert-search-field input{color:#f4f7fa}html[data-theme=dark] .cert-search-field input::placeholder,.theme-dark .cert-search-field input::placeholder,html[data-theme=dark] .cert-search-summary,.theme-dark .cert-search-summary{color:#a7bdcc}html[data-theme=dark] .cert-catalog-overview,.theme-dark .cert-catalog-overview{background:linear-gradient(90deg,#102941,#0c2031);border-color:#34526d}html[data-theme=dark] .cert-catalog-overview p,.theme-dark .cert-catalog-overview p{color:#b9c8d4}html[data-theme=dark] .cert-catalog-overview strong,.theme-dark .cert-catalog-overview strong{color:#d9edf8}html[data-theme=dark] .cert-catalog-overview strong small,.theme-dark .cert-catalog-overview strong small{color:#a7bdcc}html[data-theme=dark] .cert-download-link,.theme-dark .cert-download-link{color:#8fd0f5;background:#8fd0f50f;border-color:#8fd0f575}html[data-theme=dark] .cert-download-link:hover,html[data-theme=dark] .cert-download-link:focus-visible,.theme-dark .cert-download-link:hover,.theme-dark .cert-download-link:focus-visible{color:#081b2b;background:#8fd0f5;border-color:#8fd0f5}html[data-theme=dark] .cert-filter-empty,.theme-dark .cert-filter-empty{color:#b9c8d4;background:linear-gradient(90deg,#0000 18px,#78b8e514 18px 19px,#0000 19px),repeating-linear-gradient(0deg,#78b8e512 0 1px,#0000 1px 29px),#102941;border-color:#3f6486}html[data-theme=dark] .cert-filter-empty h3,.theme-dark .cert-filter-empty h3{color:#f4f7fa}html[data-theme=dark] .cert-filter-empty>p:last-child,.theme-dark .cert-filter-empty>p:last-child{color:#b9c8d4}@media (min-width:981px){.cert-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.cert-hero-ledger,.cert-hero-filter-panel{max-width:430px}.cert-hero-filter-copy{gap:12px}.cert-register-summary{flex-direction:column;align-items:flex-start;gap:9px}.cert-register-summary p{text-align:left;max-width:100%}.cert-search-toolbar{grid-template-columns:1fr;gap:10px}.cert-search-summary{text-align:left}}@media (max-width:570px){.cert-frame-info{min-height:151px}.cert-hero-ledger dl{gap:5px}.cert-hero-ledger-index{gap:12px}.cert-catalog-overview{flex-direction:column;align-items:flex-start;gap:14px}.cert-catalog-overview strong{justify-items:start}.cert-catalog-overview strong small{text-align:left}.cert-frame-bottom{flex-direction:column;align-items:flex-start}.cert-frame-actions{justify-content:flex-start}}@media (max-width:980px){.page-wrap{width:min(100% - 56px,760px)}.header-inner{width:calc(100% - 42px)}.hero-content{grid-template-columns:1fr;gap:40px;padding-top:56px}.hero-copy{max-width:720px}.hero-visual{min-height:330px}.hero-visual img{object-position:center top;min-height:330px}.hero-bottom{padding-top:14px}.section-grid{grid-template-columns:1fr;gap:32px}.section-aside{flex-direction:row;align-items:center;gap:16px}.aside-rule{width:100px;height:1px;margin:0}.about-columns{grid-template-columns:1fr}.about-figure{max-width:540px}.project-card{grid-template-columns:45px 1fr;align-items:start;gap:15px}.project-topline{grid-column:1/-1}.project-body,.project-footer{grid-column:2}.contact-grid{grid-template-columns:1fr;gap:48px}.contact-form{max-width:600px}}@media (max-width:700px){body.menu-overlay-open{overflow:hidden}.site-header{z-index:80}.header-inner{z-index:2;position:relative}.brand,.menu-toggle{z-index:3;position:relative}.page-wrap{width:calc(100% - 36px)}.header-inner{width:calc(100% - 28px);min-height:66px}.brand-name{font-size:13px}.brand-mark{width:27px;height:27px}.menu-toggle{background:#0d2b41d1;border:1px solid #69a7cf75;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;display:grid}.main-nav{z-index:1;box-sizing:border-box;min-height:100dvh;padding:calc(84px + env(safe-area-inset-top)) 28px calc(28px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;transform-origin:top;transition:opacity .22s var(--ease-out),transform .26s var(--ease-out),visibility .22s var(--ease-out);will-change:opacity,transform;background:radial-gradient(circle at 50% 0,#2f6b9747,#0000 34%),#071928;border:0;flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;display:flex;position:fixed;inset:0;overflow:hidden auto;transform:translateY(-14px)scale(.985)}.main-nav:before{top:calc(16px + env(safe-area-inset-top));content:"";background:#b2d6eb8f;border-radius:999px;width:46px;height:4px;position:absolute;left:50%;transform:translate(-50%)}.main-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.nav-link,.nav-cv{flex:none;justify-content:center;width:min(100%,344px);padding:12px 18px}.nav-link{font-size:15px}.nav-link.is-active{background:#2a5d844d;border:1px solid #8dd0f25c;border-radius:7px;padding-left:18px}.nav-link:after,.language-menu{display:none}.language-toggle-mobile{background:#04121e42;border-color:#6994b45c;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:min(100%,344px);margin-top:10px;padding:8px;display:grid}.language-toggle{justify-content:center}.mobile-language-heading{color:#a7bfd0;letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1;padding:1px 3px 3px;font:700 9px IBM Plex Mono,monospace;display:block}.language-toggle-mobile button{border:1px solid #0000;justify-content:space-between;align-items:center;width:100%;min-height:36px;padding:0 7px;display:flex}.language-toggle-mobile button.is-active{background:#2f6b9747;border-color:#8dd0f280}.theme-toggle{flex:none;align-self:center;margin-top:8px}.nav-cv{flex:none;justify-content:center;margin-top:7px;margin-bottom:6px}.hero{min-height:auto}.hero-content{padding-top:42px;padding-bottom:34px}.hero-eyebrow{margin-bottom:38px}h1{font-size:clamp(40px,12.5vw,64px)}.hero-role{font-size:16px}.hero-intro{font-size:15px}.hero-actions{flex-direction:column;align-items:flex-start;gap:17px}.hero-visual{min-height:270px}.hero-visual img{object-position:center top;min-height:270px}.hero-terminal{padding:12px;bottom:14px;left:14px;right:14px}.terminal-line{font-size:9px}.hero-bottom{flex-wrap:wrap;gap:9px;padding-bottom:20px}.hero-note{width:100%;margin-top:8px;margin-left:0;line-height:1.6}.section{padding:86px 0}h2{margin-bottom:33px;font-size:clamp(38px,11vw,54px)}.about-columns .lead-copy{font-size:19px}.mini-facts{gap:19px}.mini-facts strong{font-size:22px}.skill-row{grid-template-columns:39px 1fr;gap:10px 13px;padding:21px 0}.skill-main{grid-column:2}.skill-tags{grid-column:2;justify-content:flex-start}.skill-number{align-self:center}.projects-heading{display:block}.projects-heading>p{margin-top:20px}.project-card{grid-template-columns:1fr;gap:17px;min-height:0}.project-topline,.project-body,.project-footer{grid-column:auto}.project-body h3{font-size:28px}.certifications-heading{display:block}.certifications-heading p{margin-top:20px}.certifications-grid{grid-template-columns:1fr 1fr}.certification-item{min-height:190px}.certification-item:nth-child(2n){border-right:0}.certification-item:nth-child(n+3){border-top:1px solid var(--line)}.certification-body h3{font-size:15px}.timeline-item{grid-template-columns:25px 1fr;gap:10px 13px}.timeline-date{grid-area:1/2}.timeline-info{grid-column:2}.timeline-label{grid-column:2;justify-self:start}.cert-strip{gap:6px;margin-top:31px}.cert-strip span:first-child{width:100%}.contact-section{padding:85px 0 94px}.contact-copy h2{margin-top:36px}.footer-inner{flex-direction:column;gap:9px}.footer-center{order:-1}.home-visual,.home-visual img{min-height:300px}}@media (prefers-reduced-motion:reduce){.main-nav,.cert-certificate-thumbnail img{transition:none}}}@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.-top-12{top:calc(var(--spacing)*-12)}.top-0{top:calc(var(--spacing)*0)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-1\/2{top:50%}.top-3\.5{top:calc(var(--spacing)*3.5)}.top-4{top:calc(var(--spacing)*4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing)*-12)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-2{right:calc(var(--spacing)*2)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.-bottom-12{bottom:calc(var(--spacing)*-12)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.-left-12{left:calc(var(--spacing)*-12)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-4{left:calc(var(--spacing)*4)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.order-first{order:-9999}.order-last{order:9999}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.\!m-0{margin:calc(var(--spacing)*0)!important}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3\.5{margin-inline:calc(var(--spacing)*3.5)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing)*-2)}.my-0{margin-block:calc(var(--spacing)*0)}.my-0\.5{margin-block:calc(var(--spacing)*.5)}.my-1{margin-block:calc(var(--spacing)*1)}.-mt-4{margin-top:calc(var(--spacing)*-4)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-12{margin-top:calc(var(--spacing)*12)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.-ml-4{margin-left:calc(var(--spacing)*-4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-3\.5{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-12{width:calc(var(--spacing)*12);height:calc(var(--spacing)*12)}.size-auto{width:auto;height:auto}.size-full{width:100%;height:100%}.h-\(--cell-size\){height:var(--cell-size)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-14{height:calc(var(--spacing)*14)}.h-16{height:calc(var(--spacing)*16)}.h-32{height:calc(var(--spacing)*32)}.h-64{height:calc(var(--spacing)*64)}.h-\[1\.15rem\]{height:1.15rem}.h-\[38px\]{height:38px}.h-\[200px\]{height:200px}.h-\[500px\]{height:500px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-32{max-height:calc(var(--spacing)*32)}.max-h-\[300px\]{max-height:300px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-4{min-height:calc(var(--spacing)*4)}.min-h-9{min-height:calc(var(--spacing)*9)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-\[200px\]{min-height:200px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing)*0)}.w-1{width:calc(var(--spacing)*1)}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-48{width:calc(var(--spacing)*48)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-\[38px\]{width:38px}.w-\[100px\]{width:100px}.w-\[280px\]{width:280px}.w-\[400px\]{width:400px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[80\%\]{max-width:80%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-lg{max-width:var(--container-lg)}.max-w-max{max-width:max-content}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-8{min-width:calc(var(--spacing)*8)}.min-w-9{min-width:calc(var(--spacing)*9)}.min-w-10{min-width:calc(var(--spacing)*10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y: calc(-50% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing)*1)}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.justify-items-start{justify-items:start}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-7{gap:calc(var(--spacing)*7)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*12)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*12)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing)*.5)}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[10px\]{border-radius:10px}.rounded-\[20px\]{border-radius:20px}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.2rem}.rounded-md{border-radius:.15rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.1rem}.rounded-xl{border-radius:.25rem}.rounded-xs{border-radius:var(--radius-xs)}.rounded-l-md{border-top-left-radius:.15rem;border-bottom-left-radius:.15rem}.rounded-tl-sm{border-top-left-radius:.1rem}.rounded-r-md{border-top-right-radius:.15rem;border-bottom-right-radius:.15rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-0{border-right-style:var(--tw-border-style);border-right-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-\[rgba\(0\,0\,0\,0\.08\)\]{border-color:#00000014}.border-border,.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-\[\#1a1a19\]{background-color:#1a1a19}.bg-\[\#f8f8f7\]{background-color:#f8f8f7}.bg-accent{background-color:var(--accent)}.bg-background,.bg-background\/50{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/50{background-color:color-mix(in oklab,var(--background)50%,transparent)}}.bg-background\/95{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/95{background-color:color-mix(in oklab,var(--background)95%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-foreground{background-color:var(--foreground)}.bg-input{background-color:var(--input)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/20{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.bg-red-100{background-color:var(--color-red-100)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-slate-50{--tw-gradient-from:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-100{--tw-gradient-to:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.fill-primary{fill:var(--primary)}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-12{padding-top:calc(var(--spacing)*12)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.pr-3{padding-right:calc(var(--spacing)*3)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-\[26px\]{--tw-leading:26px;line-height:26px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.44px\]{--tw-tracking:-.44px;letter-spacing:-.44px}.tracking-\[-0\.154px\]{--tw-tracking:-.154px;letter-spacing:-.154px}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-break-spaces{white-space:break-spaces}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#34322d\]{color:#34322d}.text-\[\#858481\]{color:#858481}.text-accent-foreground{color:var(--accent-foreground)}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-500{color:var(--color-red-500)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0px_4px_11px_0px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow:0px 4px 11px 0px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-ring\/50{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.ring-ring\/50{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-2xl{--tw-backdrop-blur:blur(var(--blur-2xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing)*8)}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing)*8)}.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}.group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(:where(.group\/item):has([data-slot=item-description]) *){align-self:flex-start}.group-has-\[\>input\]\/input-group\:pt-2\.5:is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing)*2.5)}.group-has-\[\>input\]\/input-group\:pb-2\.5:is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing)*2.5)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing)*-8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing)*8)!important;height:calc(var(--spacing)*8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)) + 2px)}.group-data-\[collapsible\=icon\]\:justify-center:is(:where(.group)[data-collapsible=icon] *){justify-content:center}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing)*0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *),.group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:var(--ring)}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing)*-4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing)*0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:.2rem}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing)*-2)}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *){display:block}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),.group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing)*1.5)}.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:.15rem}.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(:where(.group\/navigation-menu)[data-viewport=false] *){background-color:var(--popover)}.group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(:where(.group\/navigation-menu)[data-viewport=false] *){color:var(--popover-foreground)}.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing)*1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing)*2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing)*1)}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing)*7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing)*-2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing)*1)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:.15rem;border-bottom-left-radius:.15rem}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:mt-0:last-child{margin-top:calc(var(--spacing)*0)}.last\:rounded-r-md:last-child{border-top-right-radius:.15rem;border-bottom-right-radius:.15rem}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-\[\#1a1a19\]\/90:hover{background-color:#1a1a19e6}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-primary\/20:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/20:hover{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:ring-4:hover{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-focus\:border-ring:has(:focus){border-color:var(--ring)}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.has-disabled\:opacity-50:has(:disabled){opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[state\=checked\]\:border-primary:has([data-state=checked]){border-color:var(--primary)}.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:color-mix(in oklab,var(--primary)5%,transparent)}}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has([data-slot=input-group-control]:focus-visible){border-color:var(--ring)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has([data-slot=input-group-control]:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:calc(var(--spacing)*2)}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing)*3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:.15rem}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing)*3)}.has-\[\>button\]\:mr-\[-0\.45rem\]:has(>button){margin-right:-.45rem}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing)*4)1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing)*3)}.has-\[\>svg\]\:p-0:has(>svg){padding:calc(var(--spacing)*0)}.has-\[\>svg\]\:px-2:has(>svg){padding-inline:calc(var(--spacing)*2)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--muted-foreground)}.data-\[active\=true\]\:z-10[data-active=true]{z-index:10}.data-\[active\=true\]\:border-ring[data-active=true]{border-color:var(--ring)}.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-accent-foreground[data-active=true]{color:var(--accent-foreground)}.data-\[active\=true\]\:ring-\[3px\][data-active=true]{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}@media (hover:hover){.data-\[active\=true\]\:hover\:bg-accent[data-active=true]:hover{background-color:var(--accent)}}.data-\[active\=true\]\:focus\:bg-accent[data-active=true]:focus{background-color:var(--accent)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing)*8)}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing)*1.5)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing)*44)}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing)*1.5)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing)*0)}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:calc(var(--spacing)*1)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:.15rem}.data-\[range-end\=true\]\:rounded-r-md[data-range-end=true]{border-top-right-radius:.15rem;border-bottom-right-radius:.15rem}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:var(--primary)}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:var(--primary-foreground)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:var(--accent)}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:var(--accent-foreground)}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:.15rem}.data-\[range-start\=true\]\:rounded-l-md[data-range-start=true]{border-top-left-radius:.15rem;border-bottom-left-radius:.15rem}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:var(--primary)}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:var(--primary-foreground)}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:var(--primary)}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:var(--primary-foreground)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing)*9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing)*8)}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing)*3)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing)*12)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing)*2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--accent)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--accent-foreground)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-scale:.95}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:var(--accent)}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:var(--accent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=outline\]\:border-l-0[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\[variant\=outline\]\:shadow-xs[data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[variant\=outline\]\:first\:border-l[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction=bottom]{inset-inline:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:calc(var(--spacing)*24)}.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction=bottom]{max-height:80vh}.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:.2rem;border-top-right-radius:.2rem}.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction=left]{inset-block:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction=left]{left:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction=left]{width:75%}.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction=right]{inset-block:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction=right]{right:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction=right]{width:75%}.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction=top]{inset-inline:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction=top]{top:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:calc(var(--spacing)*24)}.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:.2rem;border-bottom-left-radius:.2rem}.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing)*-1)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-\[backdrop-filter\]\:backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}}@media (min-width:40rem){.sm\:block{display:block}.sm\:flex{display:flex}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing)*2.5)}.sm\:pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.sm\:pl-2\.5{padding-left:calc(var(--spacing)*2.5)}.sm\:text-left{text-align:left}.data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction=left],.data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction=right]{max-width:var(--container-sm)}}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-1\.5{gap:calc(var(--spacing)*1.5)}.md\:p-12{padding:calc(var(--spacing)*12)}.md\:text-left{text-align:left}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing)*2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing)*0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:.25rem}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing)*2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@container field-group (min-width:28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:bg-transparent:is(.dark *){background-color:#0000}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}.dark\:hover\:text-accent-foreground:is(.dark *):hover{color:var(--accent-foreground)}}.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\:data-\[state\=unchecked\]\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--foreground)}.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab,var(--input)80%,transparent)}}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--muted-foreground)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:var(--border)}@supports (color:color-mix(in lab,red,red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:color-mix(in oklab,var(--border)50%,transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:var(--border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:var(--border)}.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing)*1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing)*0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing)*5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing)*12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing)*3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing)*5)}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:.15rem;border-bottom-left-radius:.15rem}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing)*0)}.\[\.border-b\]\:pb-3.border-b{padding-bottom:calc(var(--spacing)*3)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-3.border-t{padding-top:calc(var(--spacing)*3)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}.\[a\]\:transition-colors:is(a){transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.\[a\]\:hover\:bg-accent\/50:is(a):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-accent\/50:is(a):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing)*2)}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:.15rem;border-bottom-right-radius:.15rem}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative>:focus-visible{position:relative}.\[\&\>\*\]\:focus-visible\:z-10>:focus-visible{z-index:10}.\[\&\>\*\]\:data-\[slot\=field\]\:p-4>[data-slot=field]{padding:calc(var(--spacing)*4)}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing)*4)}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:.15rem;border-bottom-right-radius:.15rem}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}@container field-group (min-width:28rem){.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(>[data-align=block-end])>input{padding-top:calc(var(--spacing)*3)}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(>[data-align=block-start])>input{padding-bottom:calc(var(--spacing)*3)}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(>[data-align=inline-end])>input{padding-right:calc(var(--spacing)*2)}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(>[data-align=inline-start])>input{padding-left:calc(var(--spacing)*2)}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing)*2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing)*3)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing)*2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing)*3)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing)*-2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing)*-2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:color-mix(in oklab,var(--background)20%,transparent)}}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:var(--background)}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:color-mix(in oklab,var(--background)10%,transparent)}}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing)*-1.5)}@media (hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary)90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@media (max-width:700px){.hero-actions .text-link{align-items:center;min-height:44px;padding:0 4px}}:root{--navy:#123b63;--navy-deep:#0b2c4a;--navy-rgb:18,59,99;--navy-signal:#2e78b7;--primary:var(--navy);--primary-foreground:#f4f1ea;--background:#f4f1ea;--foreground:#17283a;--card:#ebeff1;--card-foreground:#17283a;--popover:#f4f1ea;--popover-foreground:#17283a;--secondary:#e5ebef;--secondary-foreground:#526a7d;--muted:#e8edef;--muted-foreground:#647788;--accent:var(--navy);--accent-foreground:#f4f1ea;--border:#c7d2dc;--input:#c7d2dc;--ring:var(--navy);--radius:.2rem}:root[data-theme=dark]{--navy:#6aa8d5;--navy-deep:#8ac1e5;--navy-rgb:106,168,213;--navy-signal:#78b8e5;--primary:var(--navy);--primary-foreground:#10263e;--accent:var(--navy);--accent-foreground:#10263e;--ring:var(--navy);--background:#0f2235;--foreground:#f4f1ea;--card:#122b43;--card-foreground:#f4f1ea;--popover:#122b43;--popover-foreground:#f4f1ea;--secondary:#18334d;--secondary-foreground:#b9c9d7;--muted:#18334d;--muted-foreground:#aebfce;--border:#415d76;--input:#415d76}@media (max-width:700px){.main-nav .language-toggle.language-toggle-mobile{background:#04121e42;border:1px solid #6994b45c;order:-1;grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:6px;width:min(100%,344px);margin-top:0;padding:8px;display:grid}.main-nav .language-toggle.language-toggle-mobile .mobile-language-heading{color:#a7bfd0;letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1;padding:1px 3px 3px;font:700 9px IBM Plex Mono,monospace;display:block}.main-nav .language-toggle.language-toggle-mobile button{border:1px solid #0000;justify-content:space-between;align-items:center;width:100%;min-height:36px;padding:0 7px;display:flex}.main-nav .language-toggle.language-toggle-mobile button.is-active{background:#2f6b9747;border-color:#8dd0f280}}.portfolio-chatbot{z-index:74;pointer-events:auto;inset-inline-end:24px;justify-items:end;gap:10px;display:grid;position:fixed;bottom:92px}.portfolio-chatbot-trigger{background:var(--navy);color:#fff;letter-spacing:.04em;cursor:pointer;min-height:46px;transition:transform .18s var(--ease-out),background .16s var(--ease-out),border-color .16s var(--ease-out);border:1px solid #8fd0f5c7;border-radius:0;align-items:center;gap:8px;padding:0 15px;font:600 11px/1 IBM Plex Mono,monospace;display:inline-flex;box-shadow:0 10px 26px #081d2d33}.portfolio-chatbot-trigger:hover{background:#245176;border-color:#b5def5;transform:translateY(-2px)}.portfolio-chatbot-trigger:active{transform:scale(.97)}.portfolio-chatbot-trigger:focus-visible,.portfolio-chatbot-header button:focus-visible{outline-offset:3px;outline:2px solid #8dd0f2}.portfolio-chatbot-panel{border:1px solid rgba(var(--navy-rgb),.42);background:var(--paper);border-radius:0;width:min(356px,100vw - 32px);overflow:hidden;box-shadow:0 18px 42px #081b2a38}.portfolio-chatbot-header{border-bottom:1px solid rgba(var(--navy-rgb),.23);background:linear-gradient(90deg,rgba(var(--navy-rgb),.1),transparent);grid-template-columns:31px 1fr 31px;align-items:center;gap:10px;min-height:64px;padding:11px 13px;display:grid}.portfolio-chatbot-header>span:nth-child(2){gap:3px;display:grid}.portfolio-chatbot-header strong{color:var(--ink);font:650 12px/1.1 Space Grotesk,sans-serif}.portfolio-chatbot-header small{color:#597082;font:10px/1.35 IBM Plex Mono,monospace}.portfolio-chatbot-icon{border:1px solid rgba(var(--navy-rgb),.42);width:31px;height:31px;color:var(--navy);place-items:center;display:grid}.portfolio-chatbot-header button{width:31px;height:31px;color:var(--navy);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.portfolio-chatbot-header button:hover{background:rgba(var(--navy-rgb),.09)}.portfolio-chatbot-box{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.portfolio-chatbot-box [data-radix-scroll-area-viewport]{max-height:260px}.portfolio-chatbot-box form{border-color:rgba(var(--navy-rgb),.2)!important;background:rgba(var(--navy-rgb),.035)!important}.portfolio-chatbot-box textarea{border-color:rgba(var(--navy-rgb),.28)!important;color:var(--ink)!important;background:#ffffffbd!important;border-radius:0!important;font:11px/1.45 DM Sans,sans-serif!important}.portfolio-chatbot-box form button{background:var(--navy)!important;color:#fff!important;border-radius:0!important}.portfolio-chatbot-box .bg-muted{background:rgba(var(--navy-rgb),.09)!important;color:var(--ink)!important}.portfolio-chatbot-box .bg-primary{background:var(--navy)!important}.portfolio-chatbot-box .text-muted-foreground{color:#587083!important}.portfolio-chatbot-box .prose{font:12px/1.52 DM Sans,sans-serif;color:var(--ink)!important}.portfolio-chatbot-box .prose p{margin:0}.portfolio-chatbot-box .rounded-lg{border-radius:0!important}html[data-theme=dark] .portfolio-chatbot-panel,.theme-dark .portfolio-chatbot-panel{background:#0c2031;border-color:#3e6685;box-shadow:0 18px 42px #0000006b}html[data-theme=dark] .portfolio-chatbot-header,.theme-dark .portfolio-chatbot-header{background:linear-gradient(90deg,#78b8e51f,#0000);border-color:#34526d}html[data-theme=dark] .portfolio-chatbot-header strong,.theme-dark .portfolio-chatbot-header strong{color:#f0f5f8}html[data-theme=dark] .portfolio-chatbot-header small,.theme-dark .portfolio-chatbot-header small{color:#a9c1d2}html[data-theme=dark] .portfolio-chatbot-icon,.theme-dark .portfolio-chatbot-icon,html[data-theme=dark] .portfolio-chatbot-header button,.theme-dark .portfolio-chatbot-header button{color:#9bd7fa;border-color:#3e6685}html[data-theme=dark] .portfolio-chatbot-box textarea,.theme-dark .portfolio-chatbot-box textarea{color:#f0f5f8!important;background:#102a40!important;border-color:#3c5f7d!important}html[data-theme=dark] .portfolio-chatbot-box form,.theme-dark .portfolio-chatbot-box form{background:#ffffff06!important;border-color:#34526d!important}html[data-theme=dark] .portfolio-chatbot-box .bg-muted,.theme-dark .portfolio-chatbot-box .bg-muted{color:#edf4f8!important;background:#14344d!important}html[data-theme=dark] .portfolio-chatbot-box .prose,.theme-dark .portfolio-chatbot-box .prose{color:#edf4f8!important}html[data-theme=dark] .portfolio-chatbot-box .text-muted-foreground,.theme-dark .portfolio-chatbot-box .text-muted-foreground{color:#a9c1d2!important}body.menu-overlay-open .portfolio-chatbot{opacity:0;pointer-events:none}@media (max-width:700px){.portfolio-chatbot{inset-inline-end:14px;bottom:calc(86px + env(safe-area-inset-bottom))}.portfolio-chatbot-panel{width:min(356px,100vw - 28px)}.portfolio-chatbot-trigger{min-height:43px;padding:0 13px}}@media (prefers-reduced-motion:reduce){.portfolio-chatbot-trigger{transition:none}.portfolio-chatbot-trigger:hover{transform:none}}.portfolio-chatbot-conversation{gap:8px;max-height:176px;padding:13px;display:grid;overflow-y:auto}.portfolio-chatbot-message{border-radius:0;width:fit-content;max-width:92%;margin:0;padding:9px 10px;font:11px/1.48 DM Sans,sans-serif}.portfolio-chatbot-message.is-assistant{background:rgba(var(--navy-rgb),.09);color:var(--ink)}.portfolio-chatbot-message.is-user{background:var(--navy);color:#fff;justify-self:end}.portfolio-chatbot-prompts{flex-wrap:wrap;gap:6px;padding:0 13px 12px;display:flex}.portfolio-chatbot-prompts button{border:1px solid rgba(var(--navy-rgb),.28);color:#456173;cursor:pointer;transition:background .16s var(--ease-out),color .16s var(--ease-out);background:0 0;border-radius:0;padding:6px 8px;font:9px/1.25 IBM Plex Mono,monospace}.portfolio-chatbot-prompts button:hover{background:rgba(var(--navy-rgb),.1);color:var(--navy)}.portfolio-chatbot-form{border-top:1px solid rgba(var(--navy-rgb),.19);background:rgba(var(--navy-rgb),.035);grid-template-columns:1fr 35px;gap:7px;padding:11px 13px 13px;display:grid}.portfolio-chatbot-form input{border:1px solid rgba(var(--navy-rgb),.28);min-width:0;height:36px;color:var(--ink);background:#ffffffbd;border-radius:0;padding:0 10px;font:11px/1.45 DM Sans,sans-serif}.portfolio-chatbot-form input:focus{outline-offset:1px;outline:2px solid #59a4d18c}.portfolio-chatbot-form button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:0;place-items:center;padding:0;display:grid}.portfolio-chatbot-form button:hover{background:#245176}.portfolio-chatbot-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html[data-theme=dark] .portfolio-chatbot-message.is-assistant,.theme-dark .portfolio-chatbot-message.is-assistant{color:#edf4f8;background:#14344d}html[data-theme=dark] .portfolio-chatbot-prompts button,.theme-dark .portfolio-chatbot-prompts button{color:#b5cbda;border-color:#3c5f7d}html[data-theme=dark] .portfolio-chatbot-prompts button:hover,.theme-dark .portfolio-chatbot-prompts button:hover{color:#edf7ff;background:#173f5d}html[data-theme=dark] .portfolio-chatbot-form,.theme-dark .portfolio-chatbot-form{background:#ffffff06;border-color:#34526d}html[data-theme=dark] .portfolio-chatbot-form input,.theme-dark .portfolio-chatbot-form input{color:#f0f5f8;background:#102a40;border-color:#3c5f7d}html[dir=rtl] body,html[dir=rtl] input,html[dir=rtl] textarea,html[dir=rtl] button{font-family:Noto Kufi Arabic,DM Sans,sans-serif}html[dir=rtl] body{direction:rtl}html[dir=rtl] .site-header,html[dir=rtl] .page-hero,html[dir=rtl] .isolated-section,html[dir=rtl] .site-footer{text-align:right}html[dir=rtl] .header-inner,html[dir=rtl] .main-nav,html[dir=rtl] .header-actions,html[dir=rtl] .hero-actions,html[dir=rtl] .footer-inner,html[dir=rtl] .footer-socials,html[dir=rtl] .skills-filter-list{flex-direction:row-reverse}html[dir=rtl] .section-aside,html[dir=rtl] .certifications-heading,html[dir=rtl] .projects-heading,html[dir=rtl] .hero-bottom,html[dir=rtl] .cert-register-summary,html[dir=rtl] .page-hero-grid-with-visual,html[dir=rtl] .contact-grid,html[dir=rtl] .split-page-grid{direction:rtl}html[dir=rtl] .nav-link.is-active{border-left:0;border-right:2px solid var(--navy-signal)}html[dir=rtl] .nav-link:after{left:-1px;right:auto}html[dir=rtl] .hero-note{margin-left:0;margin-right:auto}html[dir=rtl] .section-aside{border-left:0;border-right:1px solid var(--line);padding-left:0;padding-right:22px}html[dir=rtl] .project-card,html[dir=rtl] .timeline-item,html[dir=rtl] .skill-row{direction:rtl}html[dir=rtl] .project-body,html[dir=rtl] .timeline-info,html[dir=rtl] .skill-main,html[dir=rtl] .cert-frame-info{text-align:right}html[dir=rtl] .contact-form label span{margin-left:8px;margin-right:0}html[dir=rtl] .contact-form input,html[dir=rtl] .contact-form textarea{text-align:right}html[dir=rtl] .contact-directory-header,html[dir=rtl] .contact-links a{direction:rtl}html[dir=rtl] .cert-frame-record,html[dir=rtl] .cert-frame-route,html[dir=rtl] .terminal-line,html[dir=rtl] .contact-link-value{text-align:left;direction:ltr}html[dir=rtl] .cert-frame-info .cert-frame-record,html[dir=rtl] .cert-frame-info .cert-frame-route{font-family:IBM Plex Mono,monospace}html[dir=rtl] .timeline-date,html[dir=rtl] .formation-period,html[dir=rtl] .cert-frame-record,html[dir=rtl] .cert-frame-route{direction:ltr;unicode-bidi:plaintext}html[dir=rtl] .whatsapp-float{left:24px;right:auto}html[dir=rtl] .whatsapp-float .whatsapp-tooltip{left:calc(100% + 12px);right:auto}html[dir=rtl] .portfolio-chatbot{justify-items:start;left:24px;right:auto}html[dir=rtl] .portfolio-chatbot-message.is-user{justify-self:start}html[dir=rtl] .portfolio-chatbot-form{grid-template-columns:35px 1fr}html[dir=rtl] .portfolio-chatbot-form input{text-align:right}html[dir=rtl] .button svg,html[dir=rtl] .contact-hero-action svg,html[dir=rtl] .project-github svg{transform:scaleX(-1)}.home-hero-action{text-align:center;justify-content:center;min-width:120px}@media (max-width:700px){html[dir=rtl] .main-nav{flex-direction:column}html[dir=rtl] .nav-link.is-active{border-left:0;border-right:2px solid #8dd0f2;padding-left:0;padding-right:10px}html[dir=rtl] .hero-actions{align-items:flex-end}html[dir=rtl] .skill-tags{justify-content:flex-end}html[dir=rtl] .whatsapp-float,html[dir=rtl] .portfolio-chatbot{left:14px}}.mobile-swipe-indicator{display:none}.network-status-banner{color:#6b431d;background:#ae702a17;border:1px solid #ae702a61;align-items:flex-start;gap:9px;margin:0 0 15px;padding:11px 12px;font:500 11px/1.45 DM Sans,sans-serif;display:flex}.network-status-banner i{background:#b2732e;border-radius:50%;flex:none;width:7px;height:7px;margin-top:5px;box-shadow:0 0 0 3px #b2732e21}.network-status-banner.is-offline{color:#773832;background:#9c403717;border-color:#9c40376b}.network-status-banner.is-offline i{background:#a24b43;box-shadow:0 0 0 3px #a24b4321}.contact-honeypot{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.contact-form select{border:1px solid rgba(var(--navy-rgb),.34);background:var(--paper);width:100%;min-height:46px;color:var(--ink);border-radius:0;padding:0 12px;font:14px/1.4 DM Sans,sans-serif}.contact-form select:focus{outline-offset:2px;outline:2px solid #3482bb73}.contact-success-panel{display:none}.contact-form.is-success{text-align:center;place-items:center;min-height:430px}.contact-form.is-success>:not(.contact-success-panel){display:none}.contact-form.is-success .contact-success-panel{max-width:440px;animation:contact-success-in .36s var(--ease-out)both;justify-items:center;gap:13px;display:grid}.contact-success-icon{color:#26754f;background:#36895b1f;border:1px solid #24714c85;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;box-shadow:0 0 0 10px #36895b14}.contact-success-panel p{color:#397eaa;letter-spacing:.14em;margin:9px 0 0;font:700 10px/1.2 IBM Plex Mono,monospace}.contact-success-panel h2{color:var(--ink);margin:0;font:650 clamp(24px,4vw,32px)/1.12 Space Grotesk,sans-serif}.contact-success-panel>span:not(.contact-success-icon){color:#567082;font:15px/1.6 DM Sans,sans-serif}.contact-success-panel button{margin-top:8px}@keyframes contact-success-in{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.theme-dark .contact-form select{color:#edf4f8;background:#102a40;border-color:#3a5d79}.theme-dark .contact-success-icon{color:#8be3aa;background:#48a36929;border-color:#65b889}.theme-dark .contact-success-panel>span:not(.contact-success-icon){color:#b2c9d9}@media (prefers-reduced-motion:reduce){.contact-form.is-success .contact-success-panel{animation:none}}.theme-dark .network-status-banner{color:#f2d1a8;background:#99683133;border-color:#e0a8666b}.theme-dark .network-status-banner.is-offline{color:#f5c0ba;background:#8b403a42;border-color:#eb8e8573}@media (max-width:700px){.main-nav:before{display:none}.mobile-swipe-indicator{top:calc(13px + env(safe-area-inset-top));color:#b7d5e7;letter-spacing:.04em;opacity:calc(.5 + var(--menu-swipe-progress,0)*.5);pointer-events:none;transform:translate(-50%)translateY(calc(var(--menu-swipe-progress,0)*10px));transition:opacity .12s var(--ease-out),transform .12s var(--ease-out);align-items:center;gap:6px;font:600 9px/1 IBM Plex Mono,monospace;display:inline-flex;position:absolute;left:50%}.mobile-swipe-indicator svg{transform:translateY(calc(var(--menu-swipe-progress,0)*5px))}}@media (prefers-reduced-motion:reduce){.mobile-swipe-indicator,.mobile-swipe-indicator svg{transition:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}
