@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=IBM+Plex+Mono:wght@400;500&family=Inter:wght@400;500;600;700&display=swap";.home-page{background:var(--canvas)}.home-page .site-header-wrap{background:#f8f9f7f5}.home-page .site-header{margin-top:0;min-height:88px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;box-shadow:none}.home-page .header-link:hover{color:var(--orange)}.home-page .header-link{padding:8px 4px;border:0;border-radius:0;background:none;font-family:inherit;font-size:13px}.home-page .desktop-nav{gap:24px}.home-page .btn{border-radius:8px;text-transform:none;letter-spacing:0;box-shadow:none;gap:12px;padding:12px 18px}.home-page .lang-toggle{border:0;background:none;min-width:42px}.home-page .hero-section{padding:88px 0 80px}.home-page .hero-grid{grid-template-columns:minmax(0,1fr)}.home-kicker{font-family:Inter,sans-serif;font-size:12px;color:var(--muted);letter-spacing:.02em}.home-page .hero-section h1{margin-top:18px;font-size:clamp(80px,8.5vw,120px);line-height:1;letter-spacing:-.045em;font-weight:500}.name-period{color:var(--orange)}.home-page .hero-section .home-intro{max-width:600px;margin-top:28px;font-size:18px;line-height:1.8}.home-page .hero-cta-group{align-items:center;gap:26px;margin-top:32px}.home-page .hero-cta-group .inline-link{font-size:13px;font-weight:500;border-bottom:1px solid var(--line)}.home-github{display:inline-flex;align-items:center;gap:12px;margin-top:32px;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:11px}.home-github:hover{color:var(--ink)}.home-page .section-block{padding:72px 0;scroll-margin-top:86px}.home-page .section-soft{background:var(--blue-soft)}.home-page .section-heading{display:grid;grid-template-columns:56px 1fr;max-width:none;-moz-column-gap:24px;column-gap:24px;margin-bottom:36px}.home-page .section-heading>span{border:0;border-radius:0;background:none;padding:8px 0 0;font-size:11px;color:var(--orange)}.home-page .section-heading>span:before{content:none}.home-page .section-heading h2{color:inherit;margin:0;font-size:clamp(34px,3.6vw,44px);font-weight:500}.home-page .section-heading p{color:var(--muted);grid-column:2;max-width:540px;margin-top:12px;font-size:14px}.home-projects{--muted: #c2cfdd;--line: #3c536c;--orange: #f0a477;--ink: #f8f9f7;--blue: #b9d4f0;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--navy)}.selected-project{display:grid;grid-template-columns:56px minmax(0,1fr);gap:24px;padding:32px 0;border-top:1px solid var(--line)}.project-index{padding-top:6px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.selected-project h3{font-size:clamp(28px,2.8vw,36px);font-weight:500}.selected-project h3 a,.archive-grid h3 a{display:flex;align-items:center;justify-content:space-between;gap:18px}.selected-project h3 a:hover,.archive-grid h3 a:hover{color:var(--orange)}.selected-project h3 svg{flex-shrink:0;transition:transform .2s}.selected-project h3 a:hover svg{transform:translate(4px)}.selected-project p{margin-top:14px;max-width:660px;color:var(--muted);font-size:14px;line-height:1.8}.project-tools{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.project-tools li+li:before{content:"/";margin-right:20px;color:var(--line)}.project-archive{margin-top:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-archive summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0;cursor:pointer;font-size:14px;list-style:none}.project-archive summary::-webkit-details-marker{display:none}.project-archive summary>span{display:inline-flex;gap:24px;align-items:center;font-family:IBM Plex Mono,monospace;color:var(--muted)}.archive-plus{display:inline-block;font-size:23px;transition:transform .2s}.project-archive[open] .archive-plus{transform:rotate(45deg)}.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 56px;padding:12px 0 32px}.archive-grid article{border-top:1px solid var(--line);padding-top:20px}.archive-grid h3{font-size:19px;font-weight:500}.archive-grid svg{flex-shrink:0}.archive-grid p{margin-top:12px;font-size:13px;color:var(--muted)}.home-page .about-grid{grid-template-columns:1.5fr 1fr;gap:80px;padding-left:80px}.home-page .content-card,.home-page .skill-card,.home-page .timeline-item,.home-page .simple-list li,.home-page .final-banner{border:0;border-radius:0;background:none;box-shadow:none;padding:0}.home-page .content-card p{font-size:15px;line-height:1.9}.home-page .content-card h3{font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:400;color:var(--muted)}.home-page .simple-list li{display:grid;gap:8px;font-size:15px}.home-page .simple-list li span{font-size:12px}.home-page .about-actions{margin-top:28px;font-size:13px}.home-page .about-actions a{overflow-wrap:anywhere}.home-page .btn-ghost{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 8px}.home-page .timeline{gap:0;padding-left:80px}.home-page .timeline-item{border-top:1px solid var(--line);padding:28px 0}.home-page .timeline-head h3{font-family:Inter,sans-serif;font-size:21px;font-weight:500}.home-page .timeline-head span{font-family:IBM Plex Mono,monospace;font-size:11px}.home-page .timeline-item h4{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--orange);font-weight:400;margin:10px 0 16px}.home-page .timeline-item p{max-width:720px;font-size:14px;line-height:1.85}.home-page .timeline-tags{display:none}.home-page .skill-grid{gap:36px;padding-left:80px}.home-page .skill-card{border-top:1px solid var(--line);padding-top:22px}.home-page .skill-card h3{font-family:Inter,sans-serif;font-size:18px;font-weight:500}.home-page .skill-card p{font-size:13px}.home-page .skill-card li{border:0;border-radius:0;background:none;padding:0;font-size:11px;color:var(--blue)}.home-page .skill-card ul{gap:10px 16px}.home-page #contato{padding-bottom:88px}.home-page .final-banner{border-top:1px solid var(--line);padding-top:56px}.home-page .final-banner h2{font-size:clamp(40px,4.5vw,56px);font-weight:500}.home-page .final-banner p{max-width:400px;font-size:14px}.home-page .final-banner>div>span{text-transform:none}.home-page .final-actions{flex-direction:column}.home-page .site-footer{margin-top:0;padding:32px 0}.home-page .site-footer h2{color:#f8f9f7;font-family:Inter,sans-serif;font-size:13px;font-weight:500}.home-page .footer-email{font-size:13px}.home-page .footer-links a{border:0;background:transparent}@media (max-width: 1000px){.home-page .hero-grid{gap:40px;grid-template-columns:minmax(0,1fr)}.home-page .hero-section h1{font-size:90px}.home-page .about-grid{gap:36px}}@media (max-width: 700px){.home-page .site-header{min-height:76px;grid-template-columns:1fr auto}.home-page .hero-section{padding:48px 0}.home-page .hero-grid{grid-template-columns:1fr;gap:48px}.home-page .hero-section h1{font-size:clamp(72px,17vw,94px)}.home-page .hero-section .home-intro{font-size:16px;max-width:470px}.home-page .hero-cta-group .btn{width:auto}.home-page .section-block{padding:48px 0}.home-page .section-heading{grid-template-columns:32px 1fr;-moz-column-gap:12px;column-gap:12px}.selected-project{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:26px 0}.home-page .about-grid{grid-template-columns:1fr;padding-left:0}.home-page .timeline,.home-page .skill-grid{padding-left:0}.home-page .skill-grid,.archive-grid{grid-template-columns:1fr}.home-page .timeline-head{gap:8px}.home-page .timeline-head span{width:100%}.home-page .final-banner{padding-top:36px}.home-page .final-actions{flex-direction:row}.home-page .final-actions .btn{width:auto}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:clip;--tw-bg-opacity: 1;background-color:rgb(248 249 247 / var(--tw-bg-opacity, 1));font-family:Inter,Segoe UI,sans-serif;line-height:1.625;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1));background:#f8f9f7}img{display:block;max-width:100%}a{color:inherit;text-decoration-line:none}h1,h2,h3,h4{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:400;letter-spacing:-.025em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid rgba(184,78,38,.6);outline-offset:2px}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.page-shell{position:relative;min-height:100vh}.container{margin-left:auto;margin-right:auto;width:100%;max-width:72rem;padding-left:1rem;padding-right:1rem}@media (min-width: 768px){.container{padding-left:1.5rem;padding-right:1.5rem}}.site-header-wrap{position:sticky;top:0;z-index:40;--tw-backdrop-blur: blur(12px);-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)}.site-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;border-bottom-width:1px;border-color:#a8b8c766;background-color:#f8f9f7f2;padding:1.25rem 1rem}.brand-mark{display:inline-flex;flex-direction:column;align-items:flex-start;font-family:Inter,Segoe UI,sans-serif;font-weight:600;letter-spacing:-.025em;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.brand-mark small{font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#1e3652b3}.desktop-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem}.header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.5rem}.header-link{border-radius:.375rem;border-width:1px;border-color:transparent;padding:.5rem .75rem;font-family:Inter,Segoe UI,sans-serif;font-size:13px;color:#1e3652e6;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.header-link:hover,.header-link-active{border-color:#a8b8c7cc;background-color:#e4ebf1cc;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.lang-toggle{display:inline-flex;min-width:4.8rem;align-items:center;justify-content:center;border-radius:.5rem;border-width:1px;border-color:#a8b8c780;background-color:#e4ebf1a6;padding:.375rem .75rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#1e3652e6;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lang-toggle:hover{border-color:#a8b8c7cc;background-color:#e4ebf1d9;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.lang-toggle-mobile{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;border-radius:.5rem;padding:.75rem 1.25rem;font-family:Inter,Segoe UI,sans-serif;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-primary{--tw-bg-opacity: 1;background-color:rgb(184 78 38 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(157 61 29 / var(--tw-bg-opacity, 1))}.btn-secondary{border-width:1px;border-color:#a8b8c780;background-color:#e4ebf1a6;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.btn-ghost{border-width:1px;border-style:dashed;border-color:#a8b8c799;background-color:transparent;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.btn-full{width:100%}.menu-toggle{display:none;border-radius:9999px;border-width:1px;border-color:#a8b8c780;background-color:#e4ebf1b3;padding:.5rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.mobile-nav{margin-left:auto;margin-right:auto;margin-top:.5rem;display:none;width:100%;max-width:72rem;overflow:hidden;padding-left:1rem;padding-right:1rem;opacity:0;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 768px){.mobile-nav{padding-left:1.5rem;padding-right:1.5rem}}.mobile-nav{max-height:0}.mobile-nav-open{opacity:1;max-height:460px}.mobile-nav-inner{display:grid;gap:.5rem;border-radius:1rem;border-width:1px;border-color:#a8b8c766;background-color:#f8f9f7f2;padding:1rem;--tw-shadow: 0 1px 3px rgba(23, 46, 73, .06);--tw-shadow-colored: 0 1px 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hero-section{padding-top:4rem;padding-bottom:4rem}@media (min-width: 768px){.hero-section{padding-top:5rem;padding-bottom:5rem}}.hero-grid{display:grid;align-items:center;gap:2rem}@media (min-width: 768px){.hero-grid{grid-template-columns:1.2fr .8fr}}.hero-copy{max-width:42rem}.badge{display:inline-flex;align-items:center;border-radius:9999px;border-width:1px;border-color:#a8b8c780;background-color:#e4ebf199;padding:.25rem .75rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#1e3652e6}.badge:before{content:none;margin-right:.5rem;color:#1e3652b3}.hero-section h1{margin-top:1rem;max-width:18ch;font-size:1.875rem;line-height:2.25rem;line-height:1.25}@media (min-width: 768px){.hero-section h1{font-size:3rem;line-height:1}}.hero-section p{margin-top:1rem;max-width:62ch;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.hero-section p{font-size:1rem;line-height:1.5rem}}.hero-cta-group{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.75rem}.ide-panel{margin-left:auto;width:100%;max-width:430px;overflow:hidden;border-radius:1rem;border-width:1px;border-color:#a8b8c780;--tw-bg-opacity: 1;background-color:rgb(23 46 73 / var(--tw-bg-opacity, 1));--tw-shadow: 0 4px 16px rgba(23, 46, 73, .08);--tw-shadow-colored: 0 4px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ide-panel-top{display:flex;align-items:center;gap:.5rem;border-bottom-width:1px;border-color:#a8b8c766;--tw-bg-opacity: 1;background-color:rgb(33 60 89 / var(--tw-bg-opacity, 1));padding:.5rem .75rem}.ide-panel-top p{margin-left:.25rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:11px;--tw-text-opacity: 1;color:rgb(185 201 217 / var(--tw-text-opacity, 1))}.ide-dot{height:.5rem;width:.5rem;border-radius:9999px;border-width:1px;border-color:#0003}.ide-dot-red{--tw-bg-opacity: 1;background-color:rgb(208 143 111 / var(--tw-bg-opacity, 1))}.ide-dot-yellow{--tw-bg-opacity: 1;background-color:rgb(224 183 123 / var(--tw-bg-opacity, 1))}.ide-dot-green{--tw-bg-opacity: 1;background-color:rgb(142 163 126 / var(--tw-bg-opacity, 1))}.ide-code{display:grid;gap:.25rem;--tw-bg-opacity: 1;background-color:rgb(23 46 73 / var(--tw-bg-opacity, 1));padding:1rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;background-image:linear-gradient(transparent 27px,#ffe0c612 28px);background-size:100% 28px}.ide-line{display:grid;grid-template-columns:2rem 1fr;align-items:flex-start;gap:.5rem}.ide-line span{border-right-width:1px;border-color:#a8b8c766;padding-right:.25rem;text-align:right;font-size:11px;--tw-text-opacity: 1;color:rgb(185 201 217 / var(--tw-text-opacity, 1))}.ide-line code{font-size:12px;--tw-text-opacity: 1;color:rgb(248 249 247 / var(--tw-text-opacity, 1))}.section-block{padding-top:3rem;padding-bottom:3rem}@media (min-width: 768px){.section-block{padding-top:5rem;padding-bottom:5rem}}.section-soft{background-color:#eef2f5bf}.section-heading{margin-bottom:2.25rem;max-width:48rem}.section-heading span{display:inline-flex;align-items:center;border-radius:9999px;border-width:1px;border-color:#a8b8c780;background-color:#e4ebf18c;padding:.25rem .75rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#1e3652d9}.section-heading span:before{content:none;margin-right:.5rem;color:#1e3652a6}.section-heading h2{margin-top:.75rem;font-size:1.5rem;line-height:2rem;line-height:1.25;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.section-heading h2{font-size:2.25rem;line-height:2.5rem}}.section-heading p{margin-top:.75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.section-heading p{font-size:1rem;line-height:1.5rem}}.about-grid{display:grid;gap:1.25rem}@media (min-width: 768px){.about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.content-card,.skill-card,.timeline-item,.project-card,.pain-card,.offer-card,.process-step,.plan-card,.testimonial-card,.faq-list details,.final-banner,.simple-list li{border-radius:1rem;border-width:1px;border-color:#a8b8c766;background-color:#edf1f4cc;--tw-shadow: 0 1px 3px rgba(23, 46, 73, .06);--tw-shadow-colored: 0 1px 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.content-card,.skill-card,.project-card,.offer-card,.plan-card,.testimonial-card{padding:1.5rem}.content-card p{margin:0;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.content-card p+p{margin-top:1rem}.content-card .btn{margin-top:1.25rem}.about-actions{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:1rem}.inline-link{display:inline-flex;align-items:center;gap:.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(184 78 38 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.inline-link:hover{opacity:.8}.simple-list{margin-top:1rem;display:grid;gap:.75rem}.simple-list li{padding:.75rem}.simple-list li span{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.skill-grid,.project-grid,.offer-grid,.plan-grid{display:grid;gap:1.25rem}@media (min-width: 768px){.skill-grid,.project-grid,.offer-grid,.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.skill-grid,.project-grid,.offer-grid,.plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.skill-card h3,.offer-card h3,.project-card h3,.plan-card h3{font-size:1.25rem;line-height:1.75rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.skill-card p,.offer-card p,.project-card p,.plan-ideal{margin-top:.5rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.skill-card ul{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem}.skill-card li,.timeline-tags li,.project-card li{border-radius:9999px;border-width:1px;border-color:#a8b8c766;background-color:#e4ebf1a6;padding:.25rem .5rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.timeline{display:grid;gap:1rem}.timeline-item{padding:1.5rem}.timeline-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.timeline-head span{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.timeline-item h4{margin-top:.5rem;font-size:1rem;line-height:1.5rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.timeline-item p{margin-top:.5rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.timeline-tags{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem}.final-banner{display:flex;flex-direction:column;gap:1.5rem;padding:1.75rem}@media (min-width: 768px){.final-banner{flex-direction:row;align-items:center;justify-content:space-between}}.final-banner span{display:inline-flex;align-items:center;gap:.25rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:.12em;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.final-banner h2{margin-top:.5rem;font-size:1.5rem;line-height:2rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.final-banner h2{font-size:1.875rem;line-height:2.25rem}}.final-banner p{margin-top:.5rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.final-actions{display:flex;width:100%;flex-wrap:wrap;gap:.75rem}@media (min-width: 768px){.final-actions{width:auto}}.pain-grid,.testimonial-wrap{display:grid;gap:1.25rem}@media (min-width: 768px){.pain-grid,.testimonial-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}.pain-card{display:flex;align-items:flex-start;gap:.75rem;padding:1.25rem}.pain-card svg{margin-top:.125rem;flex-shrink:0;--tw-text-opacity: 1;color:rgb(184 78 38 / var(--tw-text-opacity, 1))}.pain-card p{margin:0;font-weight:600;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.offer-card ul,.plan-card ul,.process-step p,.faq-list p{margin-top:1rem;display:grid;gap:.5rem}.process-grid{display:grid;gap:1rem}@media (min-width: 768px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.process-step{padding:1.25rem}.process-step h3{font-size:1.125rem;line-height:1.75rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.process-step p{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.plan-card strong{margin-top:1rem;display:block;font-size:1.5rem;line-height:2rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.plan-card small{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.plan-featured{border-color:#b84e2699;background-color:#f8f9f7e6}.faq-list{margin-left:auto;margin-right:auto;display:grid;max-width:56rem;gap:.75rem}.faq-list details{padding:1.25rem}.faq-list summary{cursor:pointer;font-weight:600;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1));list-style:none}.faq-list summary::-webkit-details-marker{display:none}.cv-main{padding-top:4rem;padding-bottom:4rem}@media (min-width: 768px){.cv-main{padding-top:5rem;padding-bottom:5rem}}.cv-toolbar{display:flex;flex-direction:column;gap:1.5rem;border-radius:1rem;border-width:1px;border-color:#a8b8c759;background-color:#f8f9f7b3;padding:1.5rem}@media (min-width: 768px){.cv-toolbar{flex-direction:row;align-items:flex-start;justify-content:space-between}}.cv-toolbar span{font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:.14em;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-toolbar h1{margin-top:.5rem;font-size:1.5rem;line-height:2rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.cv-toolbar h1{font-size:2rem}}.cv-toolbar-actions{display:grid;gap:.5rem}@media (min-width: 768px){.cv-toolbar-actions{min-width:14rem}}.cv-document{margin-top:1.5rem;border-radius:1rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(204 214 223 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}@media (min-width: 768px){.cv-document{padding:2rem}}.cv-header{display:grid;gap:1.25rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(220 227 233 / var(--tw-border-opacity, 1));padding-bottom:1.5rem}@media (min-width: 768px){.cv-header{grid-template-columns:1fr auto}}.cv-header h2{font-size:1.5rem;line-height:2rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.cv-header strong{margin-top:.25rem;display:inline-flex;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-header p{margin-top:.75rem;max-width:42rem;font-size:.875rem;line-height:1.25rem;line-height:1.625;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-header ul{display:grid;height:-moz-fit-content;height:fit-content;gap:.5rem}@media (min-width: 768px){.cv-header ul{text-align:right}}.cv-header li{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.cv-header li{justify-content:flex-end}}.cv-section{margin-top:2rem}.cv-section h3{margin-bottom:.75rem;font-size:1.125rem;line-height:1.75rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.cv-section>p{--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-meta-list{display:grid;gap:.75rem}.cv-meta-list li{display:grid;gap:.25rem;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(220 227 233 / var(--tw-border-opacity, 1));padding-bottom:.75rem}.cv-meta-list li:last-child{border-bottom-width:0px;padding-bottom:0}.cv-meta-list span{font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.12em;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-meta-list p{margin:0;font-size:.875rem;line-height:1.25rem;line-height:1.625;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.cv-skill-groups{display:grid;gap:1rem}.cv-item-list{display:grid;gap:0px}.cv-item{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(220 227 233 / var(--tw-border-opacity, 1));background-color:transparent;padding-top:1rem;padding-bottom:1rem}.cv-skill-group{border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(220 227 233 / var(--tw-border-opacity, 1));background-color:#fffc;padding:1.25rem}.cv-skill-head{margin-bottom:.75rem}.cv-skill-group h4,.cv-item h4{font-size:1rem;line-height:1.5rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.cv-skill-head p,.cv-item p{margin-top:.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-item:last-child{border-bottom-width:0px;padding-bottom:0}.cv-tech-list{margin:0;display:flex;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none}.cv-tech-list li{margin:0}.cv-tech-chip{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(204 214 223 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.375rem .75rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cv-tech-chip:hover{--tw-translate-y: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-border-opacity: 1;border-color:rgb(106 141 174 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(240 244 247 / var(--tw-bg-opacity, 1))}.cv-tech-icon{font-size:.875rem;line-height:1.25rem}.cv-item header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.cv-item span{font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.cv-item strong{margin-top:.5rem;display:inline-flex;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.cv-item ul{margin-top:.75rem;display:grid;gap:.375rem;padding-left:1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1));list-style:disc}.cv-focus-list{display:grid;gap:.375rem;padding-left:1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1));list-style:disc}.cv-document-footer{margin-top:2rem;display:flex;flex-direction:column;gap:.75rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(220 227 233 / var(--tw-border-opacity, 1));padding-top:1.25rem}@media (min-width: 768px){.cv-document-footer{flex-direction:row;align-items:center;justify-content:space-between}}.cv-document-footer p{margin:0;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.site-footer{margin-top:2rem;border-top-width:1px;border-color:#a8b8c74d;background-color:#f8f9f7b3;padding-top:3rem;padding-bottom:3rem}.site-footer-grid{display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 768px){.site-footer-grid{flex-direction:row;align-items:center;justify-content:space-between}}.site-footer h2{font-size:1rem;line-height:1.5rem;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1))}.footer-email{margin-top:.5rem;display:inline-flex;--tw-text-opacity: 1;color:rgb(82 101 121 / var(--tw-text-opacity, 1))}.footer-links{display:flex;gap:.75rem}.footer-links a{display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;border-color:#a8b8c766;background-color:#e4ebf1a6;--tw-text-opacity: 1;color:rgb(30 54 82 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.footer-links a:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-text-opacity: 1;color:rgb(184 78 38 / var(--tw-text-opacity, 1))}.floating-contact{position:fixed;bottom:1.25rem;right:1.25rem;z-index:30;display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(184 78 38 / var(--tw-bg-opacity, 1));padding:.5rem 1rem;font-family:IBM Plex Mono,Fira Code,Consolas,monospace;font-size:.75rem;line-height:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;--tw-text-opacity: 1;color:rgb(248 249 247 / var(--tw-text-opacity, 1));--tw-shadow: 0 1px 3px rgba(23, 46, 73, .06);--tw-shadow-colored: 0 1px 3px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.floating-contact span{font-size:.875rem;line-height:1.25rem}.reveal-item{--tw-translate-y: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s}.reveal-item-visible{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.visible{visibility:visible}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.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)}:root{--canvas: #f8f9f7;--ink: #1e3652;--muted: #526579;--line: #ccd6df;--blue: #315f8c;--blue-soft: #e8eef3;--navy: #172e49;--orange: #b84e26}.hero-lp .hero-grid{grid-template-columns:minmax(0,1fr)}.hero-lp h1{max-width:24ch}.site-header-wrap{background:#f8f9f7f5}.hero-section h1,.section-heading h2{font-weight:500}.section-heading span{border:0;border-radius:0;background:none;padding-left:0;color:var(--orange)}.section-block{scroll-margin-top:90px}.brand-mark{font-size:18px}.brand-mark small{font-size:9px;font-weight:400}.site-header .lang-toggle{background:transparent;border:0;font-family:Inter,sans-serif}.site-footer{background:var(--navy);color:#f8f9f7;border:0}.site-footer h2{color:#f8f9f7;font-family:Inter,sans-serif}.site-footer .footer-email{color:#c2cfdd}.site-footer .footer-links a{background:transparent;color:#f8f9f7;border-color:#3c536c}.site-footer .footer-links a:hover{color:#f0a477}.offer-card h3,.plan-card h3,.process-step h3,.cv-item h4,.cv-skill-group h4{font-family:Inter,sans-serif;font-weight:500}.cv-toolbar,.cv-document{border-radius:12px}.cv-document h2{font-size:38px}.cv-section h3{font-size:26px;font-weight:500}.cv-tech-chip{border-radius:6px}.ide-panel .lp-hero-note{color:#c2cfdd}.mobile-nav:not(.mobile-nav-open){visibility:hidden}@media (max-width: 1100px){.hero-grid{grid-template-columns:1fr}}@media (max-width: 860px){.site-header{grid-template-columns:1fr auto}.desktop-nav,.header-actions{display:none}.menu-toggle,.mobile-nav{display:block}.offer-grid,.plan-grid,.project-grid,.skill-grid,.process-grid{grid-template-columns:1fr}}@media (max-width: 640px){.btn,.hero-inline-link,.hero-cta-group,.about-actions,.final-actions,.cv-toolbar-actions{width:100%}.floating-contact{bottom:.75rem;right:.75rem;padding:.5rem .75rem}.floating-contact span{display:none}}@media print{@page{size:A4;margin:11mm}body{background:#fff}.site-header-wrap,.mobile-nav,.floating-contact,.site-footer,.cv-toolbar{display:none!important}.cv-main{padding:0}.cv-document{margin:0;border:0;box-shadow:none;background:#fff;color:#111;padding:0}.cv-item,.cv-skill-group,.cv-meta-list li{-moz-column-break-inside:avoid;break-inside:avoid}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.reveal-item{opacity:1;transform:none}}
