/*!
 * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:""}.fa-accessible-icon:before{content:""}.fa-accusoft:before{content:""}.fa-acquisitions-incorporated:before{content:""}.fa-ad:before{content:""}.fa-address-book:before{content:""}.fa-address-card:before{content:""}.fa-adjust:before{content:""}.fa-adn:before{content:""}.fa-adversal:before{content:""}.fa-affiliatetheme:before{content:""}.fa-air-freshener:before{content:""}.fa-airbnb:before{content:""}.fa-algolia:before{content:""}.fa-align-center:before{content:""}.fa-align-justify:before{content:""}.fa-align-left:before{content:""}.fa-align-right:before{content:""}.fa-alipay:before{content:""}.fa-allergies:before{content:""}.fa-amazon:before{content:""}.fa-amazon-pay:before{content:""}.fa-ambulance:before{content:""}.fa-american-sign-language-interpreting:before{content:""}.fa-amilia:before{content:""}.fa-anchor:before{content:""}.fa-android:before{content:""}.fa-angellist:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angry:before{content:""}.fa-angrycreative:before{content:""}.fa-angular:before{content:""}.fa-ankh:before{content:""}.fa-app-store:before{content:""}.fa-app-store-ios:before{content:""}.fa-apper:before{content:""}.fa-apple:before{content:""}.fa-apple-alt:before{content:""}.fa-apple-pay:before{content:""}.fa-archive:before{content:""}.fa-archway:before{content:""}.fa-arrow-alt-circle-down:before{content:""}.fa-arrow-alt-circle-left:before{content:""}.fa-arrow-alt-circle-right:before{content:""}.fa-arrow-alt-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-down:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrows-alt:before{content:""}.fa-arrows-alt-h:before{content:""}.fa-arrows-alt-v:before{content:""}.fa-artstation:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-asterisk:before{content:""}.fa-asymmetrik:before{content:""}.fa-at:before{content:""}.fa-atlas:before{content:""}.fa-atlassian:before{content:""}.fa-atom:before{content:""}.fa-audible:before{content:""}.fa-audio-description:before{content:""}.fa-autoprefixer:before{content:""}.fa-avianex:before{content:""}.fa-aviato:before{content:""}.fa-award:before{content:""}.fa-aws:before{content:""}.fa-baby:before{content:""}.fa-baby-carriage:before{content:""}.fa-backspace:before{content:""}.fa-backward:before{content:""}.fa-bacon:before{content:""}.fa-bacteria:before{content:""}.fa-bacterium:before{content:""}.fa-bahai:before{content:""}.fa-balance-scale:before{content:""}.fa-balance-scale-left:before{content:""}.fa-balance-scale-right:before{content:""}.fa-ban:before{content:""}.fa-band-aid:before{content:""}.fa-bandcamp:before{content:""}.fa-barcode:before{content:""}.fa-bars:before{content:""}.fa-baseball-ball:before{content:""}.fa-basketball-ball:before{content:""}.fa-bath:before{content:""}.fa-battery-empty:before{content:""}.fa-battery-full:before{content:""}.fa-battery-half:before{content:""}.fa-battery-quarter:before{content:""}.fa-battery-three-quarters:before{content:""}.fa-battle-net:before{content:""}.fa-bed:before{content:""}.fa-beer:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-bell:before{content:""}.fa-bell-slash:before{content:""}.fa-bezier-curve:before{content:""}.fa-bible:before{content:""}.fa-bicycle:before{content:""}.fa-biking:before{content:""}.fa-bimobject:before{content:""}.fa-binoculars:before{content:""}.fa-biohazard:before{content:""}.fa-birthday-cake:before{content:""}.fa-bitbucket:before{content:""}.fa-bitcoin:before{content:""}.fa-bity:before{content:""}.fa-black-tie:before{content:""}.fa-blackberry:before{content:""}.fa-blender:before{content:""}.fa-blender-phone:before{content:""}.fa-blind:before{content:""}.fa-blog:before{content:""}.fa-blogger:before{content:""}.fa-blogger-b:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-bold:before{content:""}.fa-bolt:before{content:""}.fa-bomb:before{content:""}.fa-bone:before{content:""}.fa-bong:before{content:""}.fa-book:before{content:""}.fa-book-dead:before{content:""}.fa-book-medical:before{content:""}.fa-book-open:before{content:""}.fa-book-reader:before{content:""}.fa-bookmark:before{content:""}.fa-bootstrap:before{content:""}.fa-border-all:before{content:""}.fa-border-none:before{content:""}.fa-border-style:before{content:""}.fa-bowling-ball:before{content:""}.fa-box:before{content:""}.fa-box-open:before{content:""}.fa-box-tissue:before{content:""}.fa-boxes:before{content:""}.fa-braille:before{content:""}.fa-brain:before{content:""}.fa-bread-slice:before{content:""}.fa-briefcase:before{content:""}.fa-briefcase-medical:before{content:""}.fa-broadcast-tower:before{content:""}.fa-broom:before{content:""}.fa-brush:before{content:""}.fa-btc:before{content:""}.fa-buffer:before{content:""}.fa-bug:before{content:""}.fa-building:before{content:""}.fa-bullhorn:before{content:""}.fa-bullseye:before{content:""}.fa-burn:before{content:""}.fa-buromobelexperte:before{content:""}.fa-bus:before{content:""}.fa-bus-alt:before{content:""}.fa-business-time:before{content:""}.fa-buy-n-large:before{content:""}.fa-buysellads:before{content:""}.fa-calculator:before{content:""}.fa-calendar:before{content:""}.fa-calendar-alt:before{content:""}.fa-calendar-check:before{content:""}.fa-calendar-day:before{content:""}.fa-calendar-minus:before{content:""}.fa-calendar-plus:before{content:""}.fa-calendar-times:before{content:""}.fa-calendar-week:before{content:""}.fa-camera:before{content:""}.fa-camera-retro:before{content:""}.fa-campground:before{content:""}.fa-canadian-maple-leaf:before{content:""}.fa-candy-cane:before{content:""}.fa-cannabis:before{content:""}.fa-capsules:before{content:""}.fa-car:before{content:""}.fa-car-alt:before{content:""}.fa-car-battery:before{content:""}.fa-car-crash:before{content:""}.fa-car-side:before{content:""}.fa-caravan:before{content:""}.fa-caret-down:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-caret-square-down:before{content:""}.fa-caret-square-left:before{content:""}.fa-caret-square-right:before{content:""}.fa-caret-square-up:before{content:""}.fa-caret-up:before{content:""}.fa-carrot:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-cart-plus:before{content:""}.fa-cash-register:before{content:""}.fa-cat:before{content:""}.fa-cc-amazon-pay:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-apple-pay:before{content:""}.fa-cc-diners-club:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-cc-visa:before{content:""}.fa-centercode:before{content:""}.fa-centos:before{content:""}.fa-certificate:before{content:""}.fa-chair:before{content:""}.fa-chalkboard:before{content:""}.fa-chalkboard-teacher:before{content:""}.fa-charging-station:before{content:""}.fa-chart-area:before{content:""}.fa-chart-bar:before{content:""}.fa-chart-line:before{content:""}.fa-chart-pie:before{content:""}.fa-check:before{content:""}.fa-check-circle:before{content:""}.fa-check-double:before{content:""}.fa-check-square:before{content:""}.fa-cheese:before{content:""}.fa-chess:before{content:""}.fa-chess-bishop:before{content:""}.fa-chess-board:before{content:""}.fa-chess-king:before{content:""}.fa-chess-knight:before{content:""}.fa-chess-pawn:before{content:""}.fa-chess-queen:before{content:""}.fa-chess-rook:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-down:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-chevron-up:before{content:""}.fa-child:before{content:""}.fa-chrome:before{content:""}.fa-chromecast:before{content:""}.fa-church:before{content:""}.fa-circle:before{content:""}.fa-circle-notch:before{content:""}.fa-city:before{content:""}.fa-clinic-medical:before{content:""}.fa-clipboard:before{content:""}.fa-clipboard-check:before{content:""}.fa-clipboard-list:before{content:""}.fa-clock:before{content:""}.fa-clone:before{content:""}.fa-closed-captioning:before{content:""}.fa-cloud:before{content:""}.fa-cloud-download-alt:before{content:""}.fa-cloud-meatball:before{content:""}.fa-cloud-moon:before{content:""}.fa-cloud-moon-rain:before{content:""}.fa-cloud-rain:before{content:""}.fa-cloud-showers-heavy:before{content:""}.fa-cloud-sun:before{content:""}.fa-cloud-sun-rain:before{content:""}.fa-cloud-upload-alt:before{content:""}.fa-cloudflare:before{content:""}.fa-cloudscale:before{content:""}.fa-cloudsmith:before{content:""}.fa-cloudversify:before{content:""}.fa-cocktail:before{content:""}.fa-code:before{content:""}.fa-code-branch:before{content:""}.fa-codepen:before{content:""}.fa-codiepie:before{content:""}.fa-coffee:before{content:""}.fa-cog:before{content:""}.fa-cogs:before{content:""}.fa-coins:before{content:""}.fa-columns:before{content:""}.fa-comment:before{content:""}.fa-comment-alt:before{content:""}.fa-comment-dollar:before{content:""}.fa-comment-dots:before{content:""}.fa-comment-medical:before{content:""}.fa-comment-slash:before{content:""}.fa-comments:before{content:""}.fa-comments-dollar:before{content:""}.fa-compact-disc:before{content:""}.fa-compass:before{content:""}.fa-compress:before{content:""}.fa-compress-alt:before{content:""}.fa-compress-arrows-alt:before{content:""}.fa-concierge-bell:before{content:""}.fa-confluence:before{content:""}.fa-connectdevelop:before{content:""}.fa-contao:before{content:""}.fa-cookie:before{content:""}.fa-cookie-bite:before{content:""}.fa-copy:before{content:""}.fa-copyright:before{content:""}.fa-cotton-bureau:before{content:""}.fa-couch:before{content:""}.fa-cpanel:before{content:""}.fa-creative-commons:before{content:""}.fa-creative-commons-by:before{content:""}.fa-creative-commons-nc:before{content:""}.fa-creative-commons-nc-eu:before{content:""}.fa-creative-commons-nc-jp:before{content:""}.fa-creative-commons-nd:before{content:""}.fa-creative-commons-pd:before{content:""}.fa-creative-commons-pd-alt:before{content:""}.fa-creative-commons-remix:before{content:""}.fa-creative-commons-sa:before{content:""}.fa-creative-commons-sampling:before{content:""}.fa-creative-commons-sampling-plus:before{content:""}.fa-creative-commons-share:before{content:""}.fa-creative-commons-zero:before{content:""}.fa-credit-card:before{content:""}.fa-critical-role:before{content:""}.fa-crop:before{content:""}.fa-crop-alt:before{content:""}.fa-cross:before{content:""}.fa-crosshairs:before{content:""}.fa-crow:before{content:""}.fa-crown:before{content:""}.fa-crutch:before{content:""}.fa-css3:before{content:""}.fa-css3-alt:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-cut:before{content:""}.fa-cuttlefish:before{content:""}.fa-d-and-d:before{content:""}.fa-d-and-d-beyond:before{content:""}.fa-dailymotion:before{content:""}.fa-dashcube:before{content:""}.fa-database:before{content:""}.fa-deaf:before{content:""}.fa-deezer:before{content:""}.fa-delicious:before{content:""}.fa-democrat:before{content:""}.fa-deploydog:before{content:""}.fa-deskpro:before{content:""}.fa-desktop:before{content:""}.fa-dev:before{content:""}.fa-deviantart:before{content:""}.fa-dharmachakra:before{content:""}.fa-dhl:before{content:""}.fa-diagnoses:before{content:""}.fa-diaspora:before{content:""}.fa-dice:before{content:""}.fa-dice-d20:before{content:""}.fa-dice-d6:before{content:""}.fa-dice-five:before{content:""}.fa-dice-four:before{content:""}.fa-dice-one:before{content:""}.fa-dice-six:before{content:""}.fa-dice-three:before{content:""}.fa-dice-two:before{content:""}.fa-digg:before{content:""}.fa-digital-ocean:before{content:""}.fa-digital-tachograph:before{content:""}.fa-directions:before{content:""}.fa-discord:before{content:""}.fa-discourse:before{content:""}.fa-disease:before{content:""}.fa-divide:before{content:""}.fa-dizzy:before{content:""}.fa-dna:before{content:""}.fa-dochub:before{content:""}.fa-docker:before{content:""}.fa-dog:before{content:""}.fa-dollar-sign:before{content:""}.fa-dolly:before{content:""}.fa-dolly-flatbed:before{content:""}.fa-donate:before{content:""}.fa-door-closed:before{content:""}.fa-door-open:before{content:""}.fa-dot-circle:before{content:""}.fa-dove:before{content:""}.fa-download:before{content:""}.fa-draft2digital:before{content:""}.fa-drafting-compass:before{content:""}.fa-dragon:before{content:""}.fa-draw-polygon:before{content:""}.fa-dribbble:before{content:""}.fa-dribbble-square:before{content:""}.fa-dropbox:before{content:""}.fa-drum:before{content:""}.fa-drum-steelpan:before{content:""}.fa-drumstick-bite:before{content:""}.fa-drupal:before{content:""}.fa-dumbbell:before{content:""}.fa-dumpster:before{content:""}.fa-dumpster-fire:before{content:""}.fa-dungeon:before{content:""}.fa-dyalog:before{content:""}.fa-earlybirds:before{content:""}.fa-ebay:before{content:""}.fa-edge:before{content:""}.fa-edge-legacy:before{content:""}.fa-edit:before{content:""}.fa-egg:before{content:""}.fa-eject:before{content:""}.fa-elementor:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-ello:before{content:""}.fa-ember:before{content:""}.fa-empire:before{content:""}.fa-envelope:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-text:before{content:""}.fa-envelope-square:before{content:""}.fa-envira:before{content:""}.fa-equals:before{content:""}.fa-eraser:before{content:""}.fa-erlang:before{content:""}.fa-ethereum:before{content:""}.fa-ethernet:before{content:""}.fa-etsy:before{content:""}.fa-euro-sign:before{content:""}.fa-evernote:before{content:""}.fa-exchange-alt:before{content:""}.fa-exclamation:before{content:""}.fa-exclamation-circle:before{content:""}.fa-exclamation-triangle:before{content:""}.fa-expand:before{content:""}.fa-expand-alt:before{content:""}.fa-expand-arrows-alt:before{content:""}.fa-expeditedssl:before{content:""}.fa-external-link-alt:before{content:""}.fa-external-link-square-alt:before{content:""}.fa-eye:before{content:""}.fa-eye-dropper:before{content:""}.fa-eye-slash:before{content:""}.fa-facebook:before{content:""}.fa-facebook-f:before{content:""}.fa-facebook-messenger:before{content:""}.fa-facebook-square:before{content:""}.fa-fan:before{content:""}.fa-fantasy-flight-games:before{content:""}.fa-fast-backward:before{content:""}.fa-fast-forward:before{content:""}.fa-faucet:before{content:""}.fa-fax:before{content:""}.fa-feather:before{content:""}.fa-feather-alt:before{content:""}.fa-fedex:before{content:""}.fa-fedora:before{content:""}.fa-female:before{content:""}.fa-fighter-jet:before{content:""}.fa-figma:before{content:""}.fa-file:before{content:""}.fa-file-alt:before{content:""}.fa-file-archive:before{content:""}.fa-file-audio:before{content:""}.fa-file-code:before{content:""}.fa-file-contract:before{content:""}.fa-file-csv:before{content:""}.fa-file-download:before{content:""}.fa-file-excel:before{content:""}.fa-file-export:before{content:""}.fa-file-image:before{content:""}.fa-file-import:before{content:""}.fa-file-invoice:before{content:""}.fa-file-invoice-dollar:before{content:""}.fa-file-medical:before{content:""}.fa-file-medical-alt:before{content:""}.fa-file-pdf:before{content:""}.fa-file-powerpoint:before{content:""}.fa-file-prescription:before{content:""}.fa-file-signature:before{content:""}.fa-file-upload:before{content:""}.fa-file-video:before{content:""}.fa-file-word:before{content:""}.fa-fill:before{content:""}.fa-fill-drip:before{content:""}.fa-film:before{content:""}.fa-filter:before{content:""}.fa-fingerprint:before{content:""}.fa-fire:before{content:""}.fa-fire-alt:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-firefox:before{content:""}.fa-firefox-browser:before{content:""}.fa-first-aid:before{content:""}.fa-first-order:before{content:""}.fa-first-order-alt:before{content:""}.fa-firstdraft:before{content:""}.fa-fish:before{content:""}.fa-fist-raised:before{content:""}.fa-flag:before{content:""}.fa-flag-checkered:before{content:""}.fa-flag-usa:before{content:""}.fa-flask:before{content:""}.fa-flickr:before{content:""}.fa-flipboard:before{content:""}.fa-flushed:before{content:""}.fa-fly:before{content:""}.fa-folder:before{content:""}.fa-folder-minus:before{content:""}.fa-folder-open:before{content:""}.fa-folder-plus:before{content:""}.fa-font:before{content:""}.fa-font-awesome:before{content:""}.fa-font-awesome-alt:before{content:""}.fa-font-awesome-flag:before{content:""}.fa-font-awesome-logo-full:before{content:""}.fa-fonticons:before{content:""}.fa-fonticons-fi:before{content:""}.fa-football-ball:before{content:""}.fa-fort-awesome:before{content:""}.fa-fort-awesome-alt:before{content:""}.fa-forumbee:before{content:""}.fa-forward:before{content:""}.fa-foursquare:before{content:""}.fa-free-code-camp:before{content:""}.fa-freebsd:before{content:""}.fa-frog:before{content:""}.fa-frown:before{content:""}.fa-frown-open:before{content:""}.fa-fulcrum:before{content:""}.fa-funnel-dollar:before{content:""}.fa-futbol:before{content:""}.fa-galactic-republic:before{content:""}.fa-galactic-senate:before{content:""}.fa-gamepad:before{content:""}.fa-gas-pump:before{content:""}.fa-gavel:before{content:""}.fa-gem:before{content:""}.fa-genderless:before{content:""}.fa-get-pocket:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-ghost:before{content:""}.fa-gift:before{content:""}.fa-gifts:before{content:""}.fa-git:before{content:""}.fa-git-alt:before{content:""}.fa-git-square:before{content:""}.fa-github:before{content:""}.fa-github-alt:before{content:""}.fa-github-square:before{content:""}.fa-gitkraken:before{content:""}.fa-gitlab:before{content:""}.fa-gitter:before{content:""}.fa-glass-cheers:before{content:""}.fa-glass-martini:before{content:""}.fa-glass-martini-alt:before{content:""}.fa-glass-whiskey:before{content:""}.fa-glasses:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-globe:before{content:""}.fa-globe-africa:before{content:""}.fa-globe-americas:before{content:""}.fa-globe-asia:before{content:""}.fa-globe-europe:before{content:""}.fa-gofore:before{content:""}.fa-golf-ball:before{content:""}.fa-goodreads:before{content:""}.fa-goodreads-g:before{content:""}.fa-google:before{content:""}.fa-google-drive:before{content:""}.fa-google-pay:before{content:""}.fa-google-play:before{content:""}.fa-google-plus:before{content:""}.fa-google-plus-g:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-wallet:before{content:""}.fa-gopuram:before{content:""}.fa-graduation-cap:before{content:""}.fa-gratipay:before{content:""}.fa-grav:before{content:""}.fa-greater-than:before{content:""}.fa-greater-than-equal:before{content:""}.fa-grimace:before{content:""}.fa-grin:before{content:""}.fa-grin-alt:before{content:""}.fa-grin-beam:before{content:""}.fa-grin-beam-sweat:before{content:""}.fa-grin-hearts:before{content:""}.fa-grin-squint:before{content:""}.fa-grin-squint-tears:before{content:""}.fa-grin-stars:before{content:""}.fa-grin-tears:before{content:""}.fa-grin-tongue:before{content:""}.fa-grin-tongue-squint:before{content:""}.fa-grin-tongue-wink:before{content:""}.fa-grin-wink:before{content:""}.fa-grip-horizontal:before{content:""}.fa-grip-lines:before{content:""}.fa-grip-lines-vertical:before{content:""}.fa-grip-vertical:before{content:""}.fa-gripfire:before{content:""}.fa-grunt:before{content:""}.fa-guilded:before{content:""}.fa-guitar:before{content:""}.fa-gulp:before{content:""}.fa-h-square:before{content:""}.fa-hacker-news:before{content:""}.fa-hacker-news-square:before{content:""}.fa-hackerrank:before{content:""}.fa-hamburger:before{content:""}.fa-hammer:before{content:""}.fa-hamsa:before{content:""}.fa-hand-holding:before{content:""}.fa-hand-holding-heart:before{content:""}.fa-hand-holding-medical:before{content:""}.fa-hand-holding-usd:before{content:""}.fa-hand-holding-water:before{content:""}.fa-hand-lizard:before{content:""}.fa-hand-middle-finger:before{content:""}.fa-hand-paper:before{content:""}.fa-hand-peace:before{content:""}.fa-hand-point-down:before{content:""}.fa-hand-point-left:before{content:""}.fa-hand-point-right:before{content:""}.fa-hand-point-up:before{content:""}.fa-hand-pointer:before{content:""}.fa-hand-rock:before{content:""}.fa-hand-scissors:before{content:""}.fa-hand-sparkles:before{content:""}.fa-hand-spock:before{content:""}.fa-hands:before{content:""}.fa-hands-helping:before{content:""}.fa-hands-wash:before{content:""}.fa-handshake:before{content:""}.fa-handshake-alt-slash:before{content:""}.fa-handshake-slash:before{content:""}.fa-hanukiah:before{content:""}.fa-hard-hat:before{content:""}.fa-hashtag:before{content:""}.fa-hat-cowboy:before{content:""}.fa-hat-cowboy-side:before{content:""}.fa-hat-wizard:before{content:""}.fa-hdd:before{content:""}.fa-head-side-cough:before{content:""}.fa-head-side-cough-slash:before{content:""}.fa-head-side-mask:before{content:""}.fa-head-side-virus:before{content:""}.fa-heading:before{content:""}.fa-headphones:before{content:""}.fa-headphones-alt:before{content:""}.fa-headset:before{content:""}.fa-heart:before{content:""}.fa-heart-broken:before{content:""}.fa-heartbeat:before{content:""}.fa-helicopter:before{content:""}.fa-highlighter:before{content:""}.fa-hiking:before{content:""}.fa-hippo:before{content:""}.fa-hips:before{content:""}.fa-hire-a-helper:before{content:""}.fa-history:before{content:""}.fa-hive:before{content:""}.fa-hockey-puck:before{content:""}.fa-holly-berry:before{content:""}.fa-home:before{content:""}.fa-hooli:before{content:""}.fa-hornbill:before{content:""}.fa-horse:before{content:""}.fa-horse-head:before{content:""}.fa-hospital:before{content:""}.fa-hospital-alt:before{content:""}.fa-hospital-symbol:before{content:""}.fa-hospital-user:before{content:""}.fa-hot-tub:before{content:""}.fa-hotdog:before{content:""}.fa-hotel:before{content:""}.fa-hotjar:before{content:""}.fa-hourglass:before{content:""}.fa-hourglass-end:before{content:""}.fa-hourglass-half:before{content:""}.fa-hourglass-start:before{content:""}.fa-house-damage:before{content:""}.fa-house-user:before{content:""}.fa-houzz:before{content:""}.fa-hryvnia:before{content:""}.fa-html5:before{content:""}.fa-hubspot:before{content:""}.fa-i-cursor:before{content:""}.fa-ice-cream:before{content:""}.fa-icicles:before{content:""}.fa-icons:before{content:""}.fa-id-badge:before{content:""}.fa-id-card:before{content:""}.fa-id-card-alt:before{content:""}.fa-ideal:before{content:""}.fa-igloo:before{content:""}.fa-image:before{content:""}.fa-images:before{content:""}.fa-imdb:before{content:""}.fa-inbox:before{content:""}.fa-indent:before{content:""}.fa-industry:before{content:""}.fa-infinity:before{content:""}.fa-info:before{content:""}.fa-info-circle:before{content:""}.fa-innosoft:before{content:""}.fa-instagram:before{content:""}.fa-instagram-square:before{content:""}.fa-instalod:before{content:""}.fa-intercom:before{content:""}.fa-internet-explorer:before{content:""}.fa-invision:before{content:""}.fa-ioxhost:before{content:""}.fa-italic:before{content:""}.fa-itch-io:before{content:""}.fa-itunes:before{content:""}.fa-itunes-note:before{content:""}.fa-java:before{content:""}.fa-jedi:before{content:""}.fa-jedi-order:before{content:""}.fa-jenkins:before{content:""}.fa-jira:before{content:""}.fa-joget:before{content:""}.fa-joint:before{content:""}.fa-joomla:before{content:""}.fa-journal-whills:before{content:""}.fa-js:before{content:""}.fa-js-square:before{content:""}.fa-jsfiddle:before{content:""}.fa-kaaba:before{content:""}.fa-kaggle:before{content:""}.fa-key:before{content:""}.fa-keybase:before{content:""}.fa-keyboard:before{content:""}.fa-keycdn:before{content:""}.fa-khanda:before{content:""}.fa-kickstarter:before{content:""}.fa-kickstarter-k:before{content:""}.fa-kiss:before{content:""}.fa-kiss-beam:before{content:""}.fa-kiss-wink-heart:before{content:""}.fa-kiwi-bird:before{content:""}.fa-korvue:before{content:""}.fa-landmark:before{content:""}.fa-language:before{content:""}.fa-laptop:before{content:""}.fa-laptop-code:before{content:""}.fa-laptop-house:before{content:""}.fa-laptop-medical:before{content:""}.fa-laravel:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-laugh:before{content:""}.fa-laugh-beam:before{content:""}.fa-laugh-squint:before{content:""}.fa-laugh-wink:before{content:""}.fa-layer-group:before{content:""}.fa-leaf:before{content:""}.fa-leanpub:before{content:""}.fa-lemon:before{content:""}.fa-less:before{content:""}.fa-less-than:before{content:""}.fa-less-than-equal:before{content:""}.fa-level-down-alt:before{content:""}.fa-level-up-alt:before{content:""}.fa-life-ring:before{content:""}.fa-lightbulb:before{content:""}.fa-line:before{content:""}.fa-link:before{content:""}.fa-linkedin:before{content:""}.fa-linkedin-in:before{content:""}.fa-linode:before{content:""}.fa-linux:before{content:""}.fa-lira-sign:before{content:""}.fa-list:before{content:""}.fa-list-alt:before{content:""}.fa-list-ol:before{content:""}.fa-list-ul:before{content:""}.fa-location-arrow:before{content:""}.fa-lock:before{content:""}.fa-lock-open:before{content:""}.fa-long-arrow-alt-down:before{content:""}.fa-long-arrow-alt-left:before{content:""}.fa-long-arrow-alt-right:before{content:""}.fa-long-arrow-alt-up:before{content:""}.fa-low-vision:before{content:""}.fa-luggage-cart:before{content:""}.fa-lungs:before{content:""}.fa-lungs-virus:before{content:""}.fa-lyft:before{content:""}.fa-magento:before{content:""}.fa-magic:before{content:""}.fa-magnet:before{content:""}.fa-mail-bulk:before{content:""}.fa-mailchimp:before{content:""}.fa-male:before{content:""}.fa-mandalorian:before{content:""}.fa-map:before{content:""}.fa-map-marked:before{content:""}.fa-map-marked-alt:before{content:""}.fa-map-marker:before{content:""}.fa-map-marker-alt:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-markdown:before{content:""}.fa-marker:before{content:""}.fa-mars:before{content:""}.fa-mars-double:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mask:before{content:""}.fa-mastodon:before{content:""}.fa-maxcdn:before{content:""}.fa-mdb:before{content:""}.fa-medal:before{content:""}.fa-medapps:before{content:""}.fa-medium:before{content:""}.fa-medium-m:before{content:""}.fa-medkit:before{content:""}.fa-medrt:before{content:""}.fa-meetup:before{content:""}.fa-megaport:before{content:""}.fa-meh:before{content:""}.fa-meh-blank:before{content:""}.fa-meh-rolling-eyes:before{content:""}.fa-memory:before{content:""}.fa-mendeley:before{content:""}.fa-menorah:before{content:""}.fa-mercury:before{content:""}.fa-meteor:before{content:""}.fa-microblog:before{content:""}.fa-microchip:before{content:""}.fa-microphone:before{content:""}.fa-microphone-alt:before{content:""}.fa-microphone-alt-slash:before{content:""}.fa-microphone-slash:before{content:""}.fa-microscope:before{content:""}.fa-microsoft:before{content:""}.fa-minus:before{content:""}.fa-minus-circle:before{content:""}.fa-minus-square:before{content:""}.fa-mitten:before{content:""}.fa-mix:before{content:""}.fa-mixcloud:before{content:""}.fa-mixer:before{content:""}.fa-mizuni:before{content:""}.fa-mobile:before{content:""}.fa-mobile-alt:before{content:""}.fa-modx:before{content:""}.fa-monero:before{content:""}.fa-money-bill:before{content:""}.fa-money-bill-alt:before{content:""}.fa-money-bill-wave:before{content:""}.fa-money-bill-wave-alt:before{content:""}.fa-money-check:before{content:""}.fa-money-check-alt:before{content:""}.fa-monument:before{content:""}.fa-moon:before{content:""}.fa-mortar-pestle:before{content:""}.fa-mosque:before{content:""}.fa-motorcycle:before{content:""}.fa-mountain:before{content:""}.fa-mouse:before{content:""}.fa-mouse-pointer:before{content:""}.fa-mug-hot:before{content:""}.fa-music:before{content:""}.fa-napster:before{content:""}.fa-neos:before{content:""}.fa-network-wired:before{content:""}.fa-neuter:before{content:""}.fa-newspaper:before{content:""}.fa-nimblr:before{content:""}.fa-node:before{content:""}.fa-node-js:before{content:""}.fa-not-equal:before{content:""}.fa-notes-medical:before{content:""}.fa-npm:before{content:""}.fa-ns8:before{content:""}.fa-nutritionix:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-octopus-deploy:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-oil-can:before{content:""}.fa-old-republic:before{content:""}.fa-om:before{content:""}.fa-opencart:before{content:""}.fa-openid:before{content:""}.fa-opera:before{content:""}.fa-optin-monster:before{content:""}.fa-orcid:before{content:""}.fa-osi:before{content:""}.fa-otter:before{content:""}.fa-outdent:before{content:""}.fa-page4:before{content:""}.fa-pagelines:before{content:""}.fa-pager:before{content:""}.fa-paint-brush:before{content:""}.fa-paint-roller:before{content:""}.fa-palette:before{content:""}.fa-palfed:before{content:""}.fa-pallet:before{content:""}.fa-paper-plane:before{content:""}.fa-paperclip:before{content:""}.fa-parachute-box:before{content:""}.fa-paragraph:before{content:""}.fa-parking:before{content:""}.fa-passport:before{content:""}.fa-pastafarianism:before{content:""}.fa-paste:before{content:""}.fa-patreon:before{content:""}.fa-pause:before{content:""}.fa-pause-circle:before{content:""}.fa-paw:before{content:""}.fa-paypal:before{content:""}.fa-peace:before{content:""}.fa-pen:before{content:""}.fa-pen-alt:before{content:""}.fa-pen-fancy:before{content:""}.fa-pen-nib:before{content:""}.fa-pen-square:before{content:""}.fa-pencil-alt:before{content:""}.fa-pencil-ruler:before{content:""}.fa-penny-arcade:before{content:""}.fa-people-arrows:before{content:""}.fa-people-carry:before{content:""}.fa-pepper-hot:before{content:""}.fa-perbyte:before{content:""}.fa-percent:before{content:""}.fa-percentage:before{content:""}.fa-periscope:before{content:""}.fa-person-booth:before{content:""}.fa-phabricator:before{content:""}.fa-phoenix-framework:before{content:""}.fa-phoenix-squadron:before{content:""}.fa-phone:before{content:""}.fa-phone-alt:before{content:""}.fa-phone-slash:before{content:""}.fa-phone-square:before{content:""}.fa-phone-square-alt:before{content:""}.fa-phone-volume:before{content:""}.fa-photo-video:before{content:""}.fa-php:before{content:""}.fa-pied-piper:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-pied-piper-hat:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-square:before{content:""}.fa-piggy-bank:before{content:""}.fa-pills:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-p:before{content:""}.fa-pinterest-square:before{content:""}.fa-pizza-slice:before{content:""}.fa-place-of-worship:before{content:""}.fa-plane:before{content:""}.fa-plane-arrival:before{content:""}.fa-plane-departure:before{content:""}.fa-plane-slash:before{content:""}.fa-play:before{content:""}.fa-play-circle:before{content:""}.fa-playstation:before{content:""}.fa-plug:before{content:""}.fa-plus:before{content:""}.fa-plus-circle:before{content:""}.fa-plus-square:before{content:""}.fa-podcast:before{content:""}.fa-poll:before{content:""}.fa-poll-h:before{content:""}.fa-poo:before{content:""}.fa-poo-storm:before{content:""}.fa-poop:before{content:""}.fa-portrait:before{content:""}.fa-pound-sign:before{content:""}.fa-power-off:before{content:""}.fa-pray:before{content:""}.fa-praying-hands:before{content:""}.fa-prescription:before{content:""}.fa-prescription-bottle:before{content:""}.fa-prescription-bottle-alt:before{content:""}.fa-print:before{content:""}.fa-procedures:before{content:""}.fa-product-hunt:before{content:""}.fa-project-diagram:before{content:""}.fa-pump-medical:before{content:""}.fa-pump-soap:before{content:""}.fa-pushed:before{content:""}.fa-puzzle-piece:before{content:""}.fa-python:before{content:""}.fa-qq:before{content:""}.fa-qrcode:before{content:""}.fa-question:before{content:""}.fa-question-circle:before{content:""}.fa-quidditch:before{content:""}.fa-quinscape:before{content:""}.fa-quora:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-quran:before{content:""}.fa-r-project:before{content:""}.fa-radiation:before{content:""}.fa-radiation-alt:before{content:""}.fa-rainbow:before{content:""}.fa-random:before{content:""}.fa-raspberry-pi:before{content:""}.fa-ravelry:before{content:""}.fa-react:before{content:""}.fa-reacteurope:before{content:""}.fa-readme:before{content:""}.fa-rebel:before{content:""}.fa-receipt:before{content:""}.fa-record-vinyl:before{content:""}.fa-recycle:before{content:""}.fa-red-river:before{content:""}.fa-reddit:before{content:""}.fa-reddit-alien:before{content:""}.fa-reddit-square:before{content:""}.fa-redhat:before{content:""}.fa-redo:before{content:""}.fa-redo-alt:before{content:""}.fa-registered:before{content:""}.fa-remove-format:before{content:""}.fa-renren:before{content:""}.fa-reply:before{content:""}.fa-reply-all:before{content:""}.fa-replyd:before{content:""}.fa-republican:before{content:""}.fa-researchgate:before{content:""}.fa-resolving:before{content:""}.fa-restroom:before{content:""}.fa-retweet:before{content:""}.fa-rev:before{content:""}.fa-ribbon:before{content:""}.fa-ring:before{content:""}.fa-road:before{content:""}.fa-robot:before{content:""}.fa-rocket:before{content:""}.fa-rocketchat:before{content:""}.fa-rockrms:before{content:""}.fa-route:before{content:""}.fa-rss:before{content:""}.fa-rss-square:before{content:""}.fa-ruble-sign:before{content:""}.fa-ruler:before{content:""}.fa-ruler-combined:before{content:""}.fa-ruler-horizontal:before{content:""}.fa-ruler-vertical:before{content:""}.fa-running:before{content:""}.fa-rupee-sign:before{content:""}.fa-rust:before{content:""}.fa-sad-cry:before{content:""}.fa-sad-tear:before{content:""}.fa-safari:before{content:""}.fa-salesforce:before{content:""}.fa-sass:before{content:""}.fa-satellite:before{content:""}.fa-satellite-dish:before{content:""}.fa-save:before{content:""}.fa-schlix:before{content:""}.fa-school:before{content:""}.fa-screwdriver:before{content:""}.fa-scribd:before{content:""}.fa-scroll:before{content:""}.fa-sd-card:before{content:""}.fa-search:before{content:""}.fa-search-dollar:before{content:""}.fa-search-location:before{content:""}.fa-search-minus:before{content:""}.fa-search-plus:before{content:""}.fa-searchengin:before{content:""}.fa-seedling:before{content:""}.fa-sellcast:before{content:""}.fa-sellsy:before{content:""}.fa-server:before{content:""}.fa-servicestack:before{content:""}.fa-shapes:before{content:""}.fa-share:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-share-square:before{content:""}.fa-shekel-sign:before{content:""}.fa-shield-alt:before{content:""}.fa-shield-virus:before{content:""}.fa-ship:before{content:""}.fa-shipping-fast:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-shoe-prints:before{content:""}.fa-shopify:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-shopping-cart:before{content:""}.fa-shopware:before{content:""}.fa-shower:before{content:""}.fa-shuttle-van:before{content:""}.fa-sign:before{content:""}.fa-sign-in-alt:before{content:""}.fa-sign-language:before{content:""}.fa-sign-out-alt:before{content:""}.fa-signal:before{content:""}.fa-signature:before{content:""}.fa-sim-card:before{content:""}.fa-simplybuilt:before{content:""}.fa-sink:before{content:""}.fa-sistrix:before{content:""}.fa-sitemap:before{content:""}.fa-sith:before{content:""}.fa-skating:before{content:""}.fa-sketch:before{content:""}.fa-skiing:before{content:""}.fa-skiing-nordic:before{content:""}.fa-skull:before{content:""}.fa-skull-crossbones:before{content:""}.fa-skyatlas:before{content:""}.fa-skype:before{content:""}.fa-slack:before{content:""}.fa-slack-hash:before{content:""}.fa-slash:before{content:""}.fa-sleigh:before{content:""}.fa-sliders-h:before{content:""}.fa-slideshare:before{content:""}.fa-smile:before{content:""}.fa-smile-beam:before{content:""}.fa-smile-wink:before{content:""}.fa-smog:before{content:""}.fa-smoking:before{content:""}.fa-smoking-ban:before{content:""}.fa-sms:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-snowboarding:before{content:""}.fa-snowflake:before{content:""}.fa-snowman:before{content:""}.fa-snowplow:before{content:""}.fa-soap:before{content:""}.fa-socks:before{content:""}.fa-solar-panel:before{content:""}.fa-sort:before{content:""}.fa-sort-alpha-down:before{content:""}.fa-sort-alpha-down-alt:before{content:""}.fa-sort-alpha-up:before{content:""}.fa-sort-alpha-up-alt:before{content:""}.fa-sort-amount-down:before{content:""}.fa-sort-amount-down-alt:before{content:""}.fa-sort-amount-up:before{content:""}.fa-sort-amount-up-alt:before{content:""}.fa-sort-down:before{content:""}.fa-sort-numeric-down:before{content:""}.fa-sort-numeric-down-alt:before{content:""}.fa-sort-numeric-up:before{content:""}.fa-sort-numeric-up-alt:before{content:""}.fa-sort-up:before{content:""}.fa-soundcloud:before{content:""}.fa-sourcetree:before{content:""}.fa-spa:before{content:""}.fa-space-shuttle:before{content:""}.fa-speakap:before{content:""}.fa-speaker-deck:before{content:""}.fa-spell-check:before{content:""}.fa-spider:before{content:""}.fa-spinner:before{content:""}.fa-splotch:before{content:""}.fa-spotify:before{content:""}.fa-spray-can:before{content:""}.fa-square:before{content:""}.fa-square-full:before{content:""}.fa-square-root-alt:before{content:""}.fa-squarespace:before{content:""}.fa-stack-exchange:before{content:""}.fa-stack-overflow:before{content:""}.fa-stackpath:before{content:""}.fa-stamp:before{content:""}.fa-star:before{content:""}.fa-star-and-crescent:before{content:""}.fa-star-half:before{content:""}.fa-star-half-alt:before{content:""}.fa-star-of-david:before{content:""}.fa-star-of-life:before{content:""}.fa-staylinked:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-steam-symbol:before{content:""}.fa-step-backward:before{content:""}.fa-step-forward:before{content:""}.fa-stethoscope:before{content:""}.fa-sticker-mule:before{content:""}.fa-sticky-note:before{content:""}.fa-stop:before{content:""}.fa-stop-circle:before{content:""}.fa-stopwatch:before{content:""}.fa-stopwatch-20:before{content:""}.fa-store:before{content:""}.fa-store-alt:before{content:""}.fa-store-alt-slash:before{content:""}.fa-store-slash:before{content:""}.fa-strava:before{content:""}.fa-stream:before{content:""}.fa-street-view:before{content:""}.fa-strikethrough:before{content:""}.fa-stripe:before{content:""}.fa-stripe-s:before{content:""}.fa-stroopwafel:before{content:""}.fa-studiovinari:before{content:""}.fa-stumbleupon:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-subscript:before{content:""}.fa-subway:before{content:""}.fa-suitcase:before{content:""}.fa-suitcase-rolling:before{content:""}.fa-sun:before{content:""}.fa-superpowers:before{content:""}.fa-superscript:before{content:""}.fa-supple:before{content:""}.fa-surprise:before{content:""}.fa-suse:before{content:""}.fa-swatchbook:before{content:""}.fa-swift:before{content:""}.fa-swimmer:before{content:""}.fa-swimming-pool:before{content:""}.fa-symfony:before{content:""}.fa-synagogue:before{content:""}.fa-sync:before{content:""}.fa-sync-alt:before{content:""}.fa-syringe:before{content:""}.fa-table:before{content:""}.fa-table-tennis:before{content:""}.fa-tablet:before{content:""}.fa-tablet-alt:before{content:""}.fa-tablets:before{content:""}.fa-tachometer-alt:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-tape:before{content:""}.fa-tasks:before{content:""}.fa-taxi:before{content:""}.fa-teamspeak:before{content:""}.fa-teeth:before{content:""}.fa-teeth-open:before{content:""}.fa-telegram:before{content:""}.fa-telegram-plane:before{content:""}.fa-temperature-high:before{content:""}.fa-temperature-low:before{content:""}.fa-tencent-weibo:before{content:""}.fa-tenge:before{content:""}.fa-terminal:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-th:before{content:""}.fa-th-large:before{content:""}.fa-th-list:before{content:""}.fa-the-red-yeti:before{content:""}.fa-theater-masks:before{content:""}.fa-themeco:before{content:""}.fa-themeisle:before{content:""}.fa-thermometer:before{content:""}.fa-thermometer-empty:before{content:""}.fa-thermometer-full:before{content:""}.fa-thermometer-half:before{content:""}.fa-thermometer-quarter:before{content:""}.fa-thermometer-three-quarters:before{content:""}.fa-think-peaks:before{content:""}.fa-thumbs-down:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbtack:before{content:""}.fa-ticket-alt:before{content:""}.fa-tiktok:before{content:""}.fa-times:before{content:""}.fa-times-circle:before{content:""}.fa-tint:before{content:""}.fa-tint-slash:before{content:""}.fa-tired:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-toilet:before{content:""}.fa-toilet-paper:before{content:""}.fa-toilet-paper-slash:before{content:""}.fa-toolbox:before{content:""}.fa-tools:before{content:""}.fa-tooth:before{content:""}.fa-torah:before{content:""}.fa-torii-gate:before{content:""}.fa-tractor:before{content:""}.fa-trade-federation:before{content:""}.fa-trademark:before{content:""}.fa-traffic-light:before{content:""}.fa-trailer:before{content:""}.fa-train:before{content:""}.fa-tram:before{content:""}.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-trash:before{content:""}.fa-trash-alt:before{content:""}.fa-trash-restore:before{content:""}.fa-trash-restore-alt:before{content:""}.fa-tree:before{content:""}.fa-trello:before{content:""}.fa-trophy:before{content:""}.fa-truck:before{content:""}.fa-truck-loading:before{content:""}.fa-truck-monster:before{content:""}.fa-truck-moving:before{content:""}.fa-truck-pickup:before{content:""}.fa-tshirt:before{content:""}.fa-tty:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-tv:before{content:""}.fa-twitch:before{content:""}.fa-twitter:before{content:""}.fa-twitter-square:before{content:""}.fa-typo3:before{content:""}.fa-uber:before{content:""}.fa-ubuntu:before{content:""}.fa-uikit:before{content:""}.fa-umbraco:before{content:""}.fa-umbrella:before{content:""}.fa-umbrella-beach:before{content:""}.fa-uncharted:before{content:""}.fa-underline:before{content:""}.fa-undo:before{content:""}.fa-undo-alt:before{content:""}.fa-uniregistry:before{content:""}.fa-unity:before{content:""}.fa-universal-access:before{content:""}.fa-university:before{content:""}.fa-unlink:before{content:""}.fa-unlock:before{content:""}.fa-unlock-alt:before{content:""}.fa-unsplash:before{content:""}.fa-untappd:before{content:""}.fa-upload:before{content:""}.fa-ups:before{content:""}.fa-usb:before{content:""}.fa-user:before{content:""}.fa-user-alt:before{content:""}.fa-user-alt-slash:before{content:""}.fa-user-astronaut:before{content:""}.fa-user-check:before{content:""}.fa-user-circle:before{content:""}.fa-user-clock:before{content:""}.fa-user-cog:before{content:""}.fa-user-edit:before{content:""}.fa-user-friends:before{content:""}.fa-user-graduate:before{content:""}.fa-user-injured:before{content:""}.fa-user-lock:before{content:""}.fa-user-md:before{content:""}.fa-user-minus:before{content:""}.fa-user-ninja:before{content:""}.fa-user-nurse:before{content:""}.fa-user-plus:before{content:""}.fa-user-secret:before{content:""}.fa-user-shield:before{content:""}.fa-user-slash:before{content:""}.fa-user-tag:before{content:""}.fa-user-tie:before{content:""}.fa-user-times:before{content:""}.fa-users:before{content:""}.fa-users-cog:before{content:""}.fa-users-slash:before{content:""}.fa-usps:before{content:""}.fa-ussunnah:before{content:""}.fa-utensil-spoon:before{content:""}.fa-utensils:before{content:""}.fa-vaadin:before{content:""}.fa-vector-square:before{content:""}.fa-venus:before{content:""}.fa-venus-double:before{content:""}.fa-venus-mars:before{content:""}.fa-vest:before{content:""}.fa-vest-patches:before{content:""}.fa-viacoin:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-vial:before{content:""}.fa-vials:before{content:""}.fa-viber:before{content:""}.fa-video:before{content:""}.fa-video-slash:before{content:""}.fa-vihara:before{content:""}.fa-vimeo:before{content:""}.fa-vimeo-square:before{content:""}.fa-vimeo-v:before{content:""}.fa-vine:before{content:""}.fa-virus:before{content:""}.fa-virus-slash:before{content:""}.fa-viruses:before{content:""}.fa-vk:before{content:""}.fa-vnv:before{content:""}.fa-voicemail:before{content:""}.fa-volleyball-ball:before{content:""}.fa-volume-down:before{content:""}.fa-volume-mute:before{content:""}.fa-volume-off:before{content:""}.fa-volume-up:before{content:""}.fa-vote-yea:before{content:""}.fa-vr-cardboard:before{content:""}.fa-vuejs:before{content:""}.fa-walking:before{content:""}.fa-wallet:before{content:""}.fa-warehouse:before{content:""}.fa-watchman-monitoring:before{content:""}.fa-water:before{content:""}.fa-wave-square:before{content:""}.fa-waze:before{content:""}.fa-weebly:before{content:""}.fa-weibo:before{content:""}.fa-weight:before{content:""}.fa-weight-hanging:before{content:""}.fa-weixin:before{content:""}.fa-whatsapp:before{content:""}.fa-whatsapp-square:before{content:""}.fa-wheelchair:before{content:""}.fa-whmcs:before{content:""}.fa-wifi:before{content:""}.fa-wikipedia-w:before{content:""}.fa-wind:before{content:""}.fa-window-close:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-windows:before{content:""}.fa-wine-bottle:before{content:""}.fa-wine-glass:before{content:""}.fa-wine-glass-alt:before{content:""}.fa-wix:before{content:""}.fa-wizards-of-the-coast:before{content:""}.fa-wodu:before{content:""}.fa-wolf-pack-battalion:before{content:""}.fa-won-sign:before{content:""}.fa-wordpress:before{content:""}.fa-wordpress-simple:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpexplorer:before{content:""}.fa-wpforms:before{content:""}.fa-wpressr:before{content:""}.fa-wrench:before{content:""}.fa-x-ray:before{content:""}.fa-xbox:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-y-combinator:before{content:""}.fa-yahoo:before{content:""}.fa-yammer:before{content:""}.fa-yandex:before{content:""}.fa-yandex-international:before{content:""}.fa-yarn:before{content:""}.fa-yelp:before{content:""}.fa-yen-sign:before{content:""}.fa-yin-yang:before{content:""}.fa-yoast:before{content:""}.fa-youtube:before{content:""}.fa-youtube-square:before{content:""}.fa-zhihu:before{content:""}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(/assets/fa-brands-400-DnkPfk3o.eot);src:url(/assets/fa-brands-400-DnkPfk3o.eot?#iefix) format("embedded-opentype"),url(/assets/fa-brands-400-UxlILjvJ.woff2) format("woff2"),url(/assets/fa-brands-400-CEJbCg16.woff) format("woff"),url(/assets/fa-brands-400-CSYNqBb_.ttf) format("truetype"),url(/assets/fa-brands-400-cH1MgKbP.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(/assets/fa-regular-400-BhTwtT8w.eot);src:url(/assets/fa-regular-400-BhTwtT8w.eot?#iefix) format("embedded-opentype"),url(/assets/fa-regular-400-DGzu1beS.woff2) format("woff2"),url(/assets/fa-regular-400-DFnMcJPd.woff) format("woff"),url(/assets/fa-regular-400-D1vz6WBx.ttf) format("truetype"),url(/assets/fa-regular-400-gwj8Pxq-.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(/assets/fa-solid-900-B6Axprfb.eot);src:url(/assets/fa-solid-900-B6Axprfb.eot?#iefix) format("embedded-opentype"),url(/assets/fa-solid-900-BUswJgRo.woff2) format("woff2"),url(/assets/fa-solid-900-DOXgCApm.woff) format("woff"),url(/assets/fa-solid-900-mxuxnBEa.ttf) format("truetype"),url(/assets/fa-solid-900-B4ZZ7kfP.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}body{-webkit-text-size-adjust:none}mark{background-color:transparent;color:inherit}input::-moz-focus-inner{border:0;padding:0}input,select,textarea{-moz-appearance:none;-webkit-appearance:none;-ms-appearance:none;appearance:none}@-ms-viewport{width:device-width}body{-ms-overflow-style:scrollbar}@media screen and (max-width: 480px){html,body{min-width:320px}}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{font-family:Plus Jakarta Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.65;color:var(--color-text-primary, #212529)}.icon{text-decoration:none;border-bottom:none;position:relative}.icon:before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;text-transform:none!important;font-family:"Font Awesome 5 Free";font-weight:400}.icon:before{line-height:inherit}.icon>.label{display:none}.icon.solid:before{font-weight:900}.icon.brands:before{font-family:"Font Awesome 5 Brands"}.global-toast-container{position:fixed;top:20px;right:20px;z-index:99999999;display:flex;flex-direction:column;gap:12px;max-width:400px;width:calc(100% - 40px);pointer-events:none;overflow:visible;max-height:none}.toast{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:16px;opacity:0;transform:translate(100%);transition:opacity .3s ease,transform .3s ease;pointer-events:auto;position:relative;border-left:4px solid}.toast-show{opacity:1;transform:translate(0)}.toast-hide{opacity:0;transform:translate(100%)}.toast-content{display:flex;align-items:flex-start;gap:12px}.toast-icon{font-size:20px;flex-shrink:0;margin-top:2px}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#333}.toast-close{background:none;border:none;cursor:pointer;padding:4px;color:#666;font-size:16px;flex-shrink:0;transition:color .2s ease;border-radius:4px;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.toast-close:hover{color:#333;background:#0000000d}.toast-close:focus{outline:2px solid #007bff;outline-offset:2px}.toast-success{border-left-color:#28a745;background-color:#f0f9f4}.toast-success .toast-icon{color:#28a745}.toast-error{border-left-color:#dc3545;background-color:#fff5f5}.toast-error .toast-icon{color:#dc3545}.toast-warning{border-left-color:#ffc107;background-color:#fffbf0}.toast-warning .toast-icon{color:#ffc107}.toast-info{border-left-color:#17a2b8;background-color:#f0f9fb}.toast-info .toast-icon{color:#17a2b8}@media screen and (max-width: 768px){.global-toast-container{top:10px;right:10px;left:10px;width:calc(100% - 20px);max-width:none}.toast{padding:12px}.toast-message{font-size:13px}}@media (prefers-color-scheme: dark){.toast{background:#2d2d2d;color:#fff}.toast-message{color:#e0e0e0}.toast-close{color:#999}.toast-close:hover{color:#fff;background:#ffffff1a}.toast-success{background-color:#1a3d2e}.toast-error{background-color:#3d1a1a}.toast-warning{background-color:#3d2e1a}.toast-info{background-color:#1a2d3d}}:root{--color-bg-primary: #ffffff;--color-bg-secondary: #f8f9fa;--color-bg-tertiary: #e9ecef;--color-bg-card: #ffffff;--color-bg-overlay: rgba(0, 0, 0, .5);--color-text-primary: #212529;--color-text-secondary: #495057;--color-text-tertiary: #6c757d;--color-text-muted: #adb5bd;--color-text-inverse: #ffffff;--color-accent-primary: #0072ff;--color-accent-secondary: #059669;--color-accent-hover: #1d4ed8;--color-accent-secondary-hover: #047857;--color-success: #10b981;--color-error: #ef4444;--color-warning: #f59e0b;--color-info: #3b82f6;--color-border-primary: #dee2e6;--color-border-secondary: #ced4da;--color-border-focus: #0072ff;--color-shadow-sm: rgba(0, 0, 0, .05);--color-shadow-md: rgba(0, 0, 0, .1);--color-shadow-lg: rgba(0, 0, 0, .15);--color-shadow-accent: rgba(0, 114, 255, .25);--color-accent-light: rgba(0, 114, 255, .1);--color-accent-medium: rgba(0, 114, 255, .2);--gradient-accent: linear-gradient(135deg, #0072ff 0%, #059669 100%);--gradient-text: linear-gradient(135deg, #0072ff, #059669);--gradient-bg-subtle: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);--section-title-accent: var(--gradient-accent);--bg-white: var(--color-bg-primary);--bg-light: var(--color-bg-secondary);--bg-medium: var(--color-bg-tertiary);--text-dark: var(--color-text-primary);--text-medium: var(--color-text-secondary);--text-light: var(--color-text-tertiary);--text-muted: var(--color-text-muted);--accent-blue: var(--color-accent-primary);--accent-green: var(--color-accent-secondary);--divider-color: var(--color-border-primary);--shadow-sm: 0 2px 4px var(--color-shadow-sm);--shadow-md: 0 4px 8px var(--color-shadow-md);--shadow-lg: 0 8px 16px var(--color-shadow-lg);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--font-size-h1: clamp(2rem, 4vw, 4rem);--font-size-h2: clamp(2rem, 3.5vw, 3.5rem);--font-size-h3: clamp(1.5rem, 2vw, 2rem);--font-size-body: clamp(.9375rem, 1vw, 1rem);--font-size-small: .875rem;--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--gpu-transform: translateZ(0)}@media screen and (min-width: 768px){:root{--spacing-md: 2rem;--spacing-lg: 3rem;--spacing-xl: 4rem}}@media screen and (min-width: 1024px){:root{--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem}}@media screen and (min-width: 1280px){:root{--spacing-lg: 5rem;--spacing-xl: 8rem}}.loading-state,.error-state{padding:2rem;text-align:center}.loading-state p{margin:0;color:var(--color-text-muted)}.error-state{color:var(--color-error)}.error-state p{margin:.5rem 0}.error-state small{display:block;margin-top:.5rem;opacity:.8}.project-skeleton{border-radius:var(--radius-lg);overflow:hidden;background-color:var(--bg-white);border:1px solid var(--divider-color);box-shadow:var(--shadow-sm);margin:0;width:100%;position:relative;display:flex;flex-direction:column;padding:0;height:100%;animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.7}}.skeleton-image{width:100%;height:280px;background:linear-gradient(90deg,var(--bg-light) 0%,var(--bg-medium) 50%,var(--bg-light) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-content{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.skeleton-title{height:1.5rem;width:70%;background:linear-gradient(90deg,var(--bg-light) 0%,var(--bg-medium) 50%,var(--bg-light) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text{height:.875rem;width:100%;background:linear-gradient(90deg,var(--bg-light) 0%,var(--bg-medium) 50%,var(--bg-light) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text-short{width:80%}.skeleton-badges{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-xs)}.skeleton-badge{height:1.5rem;width:4rem;background:linear-gradient(90deg,var(--bg-light) 0%,var(--bg-medium) 50%,var(--bg-light) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.skeleton-button{height:2.5rem;width:100%;background:linear-gradient(90deg,var(--bg-light) 0%,var(--bg-medium) 50%,var(--bg-light) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md);margin-top:var(--spacing-sm)}.empty-state{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;min-height:400px;padding:var(--spacing-xl)}.empty-state-content{text-align:center;max-width:400px}.empty-state-icon{font-size:4rem;color:var(--text-muted);margin-bottom:var(--spacing-md);opacity:.5}.empty-state-content h3{font-size:var(--font-size-h3);color:var(--text-dark);margin:0 0 var(--spacing-sm) 0}.empty-state-content p{color:var(--text-light);font-size:var(--font-size-body);margin:0;line-height:1.6}.project-language,.project-updated{margin-top:.5rem;color:var(--color-text-muted);font-style:italic}.project-language small,.project-updated small{font-size:.9em}img[loading=lazy]{opacity:0;transition:opacity .3s ease;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}img[loading=lazy].loaded{opacity:1;will-change:auto}.posts article .image-wrapper{position:relative!important;width:100%!important;height:100%!important;min-height:100%!important;max-height:none!important;overflow:hidden!important;display:block!important;background-color:var(--bg-light);padding:0!important;margin:0!important;box-sizing:border-box!important;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.posts article .project-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-width:100%;min-height:100%;max-width:100%;max-height:none;object-fit:cover;object-position:center center;margin:0;padding:0;display:none;opacity:0;z-index:1;background-color:var(--bg-light);border-radius:0;box-sizing:border-box;transition:opacity .4s ease-in-out,transform var(--transition-slow);transform:translateZ(0) scale(1);will-change:transform}.posts article .project-image.is-visible{display:block;opacity:1}@media screen and (min-width: 768px){.posts article .project-image{object-position:center top}}@media screen and (min-width: 1024px){.posts article .project-image{object-position:center center}}.image-placeholder-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;min-height:200px;max-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--gradient-accent);color:var(--color-text-inverse);gap:8px;padding:16px;box-sizing:border-box;z-index:2;transition:opacity .3s ease}.image-placeholder-wrapper.is-hidden{display:none!important}@media screen and (min-width: 768px){.image-placeholder-wrapper{min-height:220px;max-height:300px;gap:10px;padding:18px}}@media screen and (min-width: 1024px){.image-placeholder-wrapper{min-height:240px;max-height:320px;gap:12px;padding:20px}}@media screen and (max-width: 767px){.image-placeholder-wrapper{min-height:180px;max-height:180px;gap:8px;padding:14px}}.image-placeholder-wrapper[style*="display: none"]{display:none!important}.image-placeholder-wrapper .placeholder-icon{font-size:40px;color:var(--color-text-inverse);opacity:.9;width:40px;height:40px;display:block;flex-shrink:0}@media screen and (min-width: 768px){.image-placeholder-wrapper .placeholder-icon{font-size:48px;width:48px;height:48px}}@media screen and (min-width: 1024px){.image-placeholder-wrapper .placeholder-icon{font-size:56px;width:56px;height:56px}}.image-placeholder-wrapper ion-icon{--ionicon-stroke-width: 32px;width:48px;height:48px;display:block!important;color:#fff!important}.image-placeholder-wrapper:before{content:"</>";font-size:48px;font-weight:700;color:var(--color-text-inverse);opacity:.9;display:none}.image-placeholder-wrapper .placeholder-text{font-size:14px;font-weight:500;text-align:center;opacity:.95;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media screen and (min-width: 768px){.image-placeholder-wrapper .placeholder-text{font-size:16px}}@media screen and (min-width: 1024px){.image-placeholder-wrapper .placeholder-text{font-size:18px}}.project-info{margin:.5em 0;color:var(--color-text-tertiary)}.project-info small{display:block;font-size:.875em}.pagination-buttons{grid-column:1 / -1;margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);text-align:center;width:100%;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;padding:var(--spacing-sm) 0}.pagination-info{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.btn-action,.pagination-buttons .button{margin:0;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;border-radius:var(--radius-md);font-size:1.125rem;font-weight:600;font-family:Roboto Slab,serif;letter-spacing:.025em;transition:all var(--transition-normal);border:2px solid var(--divider-color);background-color:transparent;color:var(--text-dark);cursor:pointer;min-width:180px;pointer-events:auto;position:relative;z-index:10;box-shadow:none!important;text-transform:none!important;height:auto!important;line-height:normal!important}.btn-action:hover,.pagination-buttons .button:hover{background-color:var(--color-accent-primary)!important;border-color:var(--color-accent-primary)!important;color:var(--color-text-inverse)!important;font-family:Roboto Slab,serif!important;font-size:1.125rem!important;font-weight:600!important;letter-spacing:.025em!important;transform:translateY(-2px);box-shadow:0 4px 12px var(--color-shadow-accent)}.btn-action:active,.pagination-buttons .button:active{transform:translateY(0)}.btn-action .icon,.pagination-buttons .button .icon{font-size:1rem;color:inherit!important}.btn-action:hover .icon,.pagination-buttons .button:hover .icon{color:inherit!important}@media screen and (max-width: 767px){.pagination-buttons{flex-direction:column;gap:var(--spacing-xs)}.btn-action,.pagination-buttons .button{width:100%;min-width:unset;padding:.875rem 1.5rem;font-size:1rem;min-width:160px;gap:.625rem}.btn-action .icon,.pagination-buttons .button .icon{font-size:.9375rem}}@media screen and (min-width: 768px){.btn-action,.pagination-buttons .button{padding:1rem 2rem;font-size:1.125rem;min-width:180px}.btn-action .icon,.pagination-buttons .button .icon{font-size:1rem}}@media (prefers-reduced-motion: reduce){.btn-action,.pagination-buttons .button{transition:none!important}}.features{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-lg);margin:var(--spacing-lg) 0 0 0!important;padding:0;width:100%!important;flex-wrap:unset!important}.technologies-grid.features{margin:0!important;padding:0!important}.features article:before,.features article:after{display:none!important;content:none!important}.features article{display:flex!important;flex-direction:column!important;align-items:flex-start!important;margin:0!important;width:100%!important;flex-grow:unset!important;flex-shrink:unset!important}.features article .icon:before{display:block!important}.features article .icon:after{display:none!important;content:none!important}.features article .icon{margin-right:0!important;margin-left:0!important;width:auto!important;height:auto!important;line-height:normal!important;display:inline-block!important}strong{font-weight:700}@media screen and (max-width: 736px){h2.major:after{display:none!important}}#main-navigation.sticky-nav{position:fixed;top:0;left:0;right:0;z-index:1000;transform:translateY(0);transition:transform .3s ease,background-color var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal)}.nav-container{max-width:100%;margin:0;padding:1rem var(--spacing-md);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);position:relative}.nav-container .logo{font-size:clamp(1rem,2.5vw,1.25rem);font-family:var(--font-sans, "Plus Jakarta Sans", system-ui, sans-serif);font-weight:700;letter-spacing:.05em;color:var(--text-dark);text-decoration:none;transition:color var(--transition-normal);white-space:nowrap;z-index:1002;overflow:visible;text-overflow:ellipsis;flex:0 0 auto;min-width:0}.nav-container .logo:hover{color:var(--accent-blue)}@media screen and (max-width: 1023px){.nav-container{padding:1rem var(--spacing-sm);gap:var(--spacing-sm);overflow:visible}.nav-container .logo{font-size:clamp(.875rem,3vw,1rem);max-width:calc(100% - 60px);overflow:visible;text-overflow:ellipsis}}.menu-toggle{display:block;background:none;border:2px solid transparent;border-radius:var(--radius-sm);cursor:pointer;padding:.5rem;min-width:44px;min-height:44px;flex-shrink:0;z-index:1005;color:var(--text-dark);transition:all var(--transition-normal);position:relative;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-tap-highlight-color:transparent}.menu-toggle:hover,.menu-toggle:focus{color:var(--accent-blue);outline:2px solid var(--accent-blue);outline-offset:2px;border-color:var(--accent-blue)}.menu-toggle[aria-expanded=true]{color:var(--accent-blue)}.menu-toggle-icon{display:flex;align-items:center;justify-content:center;font-size:1.5rem}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:var(--spacing-md);align-items:center;position:fixed;top:0;right:-100%;width:280px;max-width:85vw;--menu-width: 280px;height:100vh;background-color:var(--bg-white);box-shadow:-4px 0 20px var(--color-shadow-md);flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:5rem 2rem 2rem;gap:0;transition:right .4s cubic-bezier(.25,.46,.45,.94) 0s;z-index:1004;overflow-y:auto;-webkit-overflow-scrolling:touch;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:right;min-height:100vh;isolation:isolate}.nav-menu.active{right:0;transition:right .4s cubic-bezier(.25,.46,.45,.94)}.nav-menu li{margin:0;width:100%;border-bottom:1px solid var(--divider-color)}.nav-menu li:last-child{border-bottom:none}.nav-menu li.nav-menu-icons{border-top:1px solid var(--divider-color);margin-top:auto;padding-top:1rem;padding-bottom:0;border-bottom:none}.nav-menu-icons{display:flex;justify-content:center;width:100%}.nav-menu-social{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:1.5rem!important;list-style:none!important;margin:0!important;padding:1rem 0!important;width:100%!important}.nav-menu-social li{width:auto!important;border:none!important;margin:0!important;padding:0!important}.nav-menu-social .icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:1.25rem;color:var(--text-medium);transition:all var(--transition-normal);border-radius:50%}.nav-menu-social .icon:hover,.nav-menu-social .icon:focus{color:var(--accent-blue);background-color:var(--color-accent-light);transform:translateY(-2px)}.nav-menu-social .icon:active{transform:translateY(0)}.nav-menu-social #dark-mode-toggle{font-size:1.25rem}.nav-menu-social #dark-mode-toggle:hover{color:var(--accent-blue);background-color:var(--color-accent-light);transform:translateY(-2px)}#dark-mode-toggle,.dark-mode-toggle{pointer-events:auto!important;cursor:pointer!important;position:relative;z-index:1011!important;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}#dark-mode-toggle:hover,.dark-mode-toggle:hover,#dark-mode-toggle:active,.dark-mode-toggle:active{pointer-events:auto!important}.nav-menu #dark-mode-toggle,.nav-menu-social #dark-mode-toggle{pointer-events:auto!important;z-index:1007!important;cursor:pointer!important}.nav-icons #dark-mode-toggle{pointer-events:auto!important;z-index:1011!important;cursor:pointer!important}.nav-link{color:var(--text-medium);text-decoration:none;font-size:clamp(.9rem,2vw,1rem);font-family:Roboto Slab,serif;font-weight:600;letter-spacing:.05em;text-transform:uppercase;transition:color var(--transition-normal);position:relative;padding:1rem 0;min-height:44px;display:flex;align-items:center;width:100%;cursor:pointer;pointer-events:auto;z-index:1007}.nav-link:hover,.nav-link:focus{color:var(--accent-blue);outline:none}.nav-link.active{color:var(--accent-blue)}.nav-link.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:var(--accent-blue)}.nav-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;opacity:0;pointer-events:none;background-color:#0a0f1699;backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1);transition:opacity .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease}html:not(.dark-mode) .nav-overlay{background-color:#0f172a66}.nav-overlay.active{display:block;opacity:1;pointer-events:auto}.nav-overlay[hidden]{display:none!important;opacity:0!important;pointer-events:none!important}@media (prefers-reduced-motion: reduce){.nav-overlay{transition:opacity .15s ease}}@media screen and (min-width: 1024px){.nav-overlay,.nav-overlay.active{display:none!important;pointer-events:none!important;opacity:0!important}}@media screen and (max-width: 1023px){.nav-menu.active{z-index:10010!important;position:fixed!important;transform:translateZ(0)!important;isolation:isolate!important;background-color:var(--bg-white)!important;pointer-events:auto!important}.nav-menu.active *{pointer-events:auto!important}.nav-menu.active a,.nav-menu.active button,.nav-menu.active .nav-link,.nav-menu.active .icon,.nav-menu.active .button,.nav-menu.active .btn-action,.nav-menu.active #dark-mode-toggle,.nav-menu.active .nav-menu-social,.nav-menu.active .nav-menu-social *{pointer-events:auto!important;position:relative;z-index:10012!important;cursor:pointer!important}.menu-toggle{z-index:10015!important}}.nav-icons{display:flex;align-items:center}@media screen and (max-width: 1023px){.nav-icons{display:none!important}}.nav-icons .icons{margin:0;padding:0;display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sm);list-style:none}@media screen and (min-width: 1024px){.nav-container{padding:1rem var(--spacing-lg);gap:clamp(.75rem,1.5vw,1.5rem)}.nav-container .logo{flex:0 0 auto;z-index:1;max-width:none;overflow:visible;text-overflow:clip}.menu-toggle{display:none}.nav-menu{position:static!important;right:auto!important;width:auto!important;height:auto!important;background-color:transparent!important;box-shadow:none!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;padding:0!important;gap:clamp(.5rem,1vw,.875rem)!important;overflow-y:visible!important;transform:none!important;backface-visibility:visible!important;-webkit-backface-visibility:visible!important;z-index:2!important;isolation:auto!important;min-height:auto!important;flex:1 1 auto;min-width:0}.nav-overlay{display:none!important;pointer-events:none!important;visibility:hidden!important}.nav-menu li{width:auto;border-bottom:none;margin:0}.nav-menu li.nav-menu-icons{display:none}.nav-link{padding:.5rem 0!important;min-height:auto!important;position:relative!important;font-size:.95rem!important;font-weight:600!important;letter-spacing:.05em!important;width:auto!important;display:inline-block!important}.nav-link:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:var(--accent-blue);transform:scaleX(0);transition:transform var(--transition-normal)}.nav-link:hover:after,.nav-link:focus:after,.nav-link.active:after{transform:scaleX(1)}.nav-icons{display:flex;align-items:center}.nav-icons .icons{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sm);margin:0;padding:0}.nav-icons .icons li{margin:0;padding:0;list-style:none}.nav-icons .icons a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--text-medium);transition:all var(--transition-normal)}.nav-icons .icons a:hover{color:var(--accent-blue);transform:translateY(-2px)}.nav-menu .nav-link{cursor:pointer!important;pointer-events:auto!important;z-index:auto;text-decoration:none!important}.nav-menu.active{position:static!important;z-index:auto!important;isolation:auto!important}.nav-icons .icons a{cursor:pointer!important;pointer-events:auto!important;text-decoration:none!important}}#main>.inner{padding:0;margin:0;max-width:100%}#main>.inner>section{border-top:none;padding:0}#main>.inner>section:first-of-type{border-top:none}#wrapper,#main{display:block;width:100%}#main{margin:0;padding:0}#header{border-bottom:none;padding:0;margin:0}section{margin:0;padding:0;border:none}.full-viewport-section{min-height:auto;display:flex;align-items:flex-start;padding:6rem var(--spacing-lg) 4rem;position:relative;width:100%;margin:0;border-top:none!important}#projetos.full-viewport-section,#sobre.full-viewport-section,#experiencia.full-viewport-section,#tecnologias.full-viewport-section,#publicacoes.full-viewport-section,#contato.full-viewport-section{min-height:auto}.full-viewport-section+.section-divider{margin:var(--spacing-xl) 0}.section-divider+.full-viewport-section{padding-top:4rem}.section-content{max-width:100%;margin:0;width:100%;padding:0 var(--spacing-md)}.section-header{margin-bottom:var(--spacing-sm);text-align:center}.section-title{font-size:var(--font-size-h2);font-weight:800;color:var(--text-dark);margin:0 0 var(--spacing-lg) 0;position:relative;display:inline-block;letter-spacing:-.02em;line-height:1.1}.section-title:after{content:"";position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--divider-color);border-radius:2px}:root{--divider-opacity: .15;--divider-width: 70%}.dark-mode{--divider-opacity: .2}.section-divider{height:1px;margin:var(--spacing-xl) 0;border:none;max-width:var(--divider-width);margin-left:auto;margin-right:auto;position:relative;background:linear-gradient(to right,transparent 0%,var(--divider-color) 15%,var(--divider-color) 85%,transparent 100%);opacity:var(--divider-opacity);transition:opacity .3s ease,background .3s ease;pointer-events:none}.reveal-on-scroll{opacity:0;transform:translate3d(0,30px,0);transition:opacity .6s ease-out,transform .6s ease-out;will-change:opacity,transform}.reveal-on-scroll.revealed{opacity:1;transform:translateZ(0);will-change:auto}@media (prefers-reduced-motion: reduce){.reveal-on-scroll{opacity:1;transform:none;transition:none}.reveal-on-scroll.revealed{opacity:1;transform:none}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,30px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate3d(-30px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate3d(30px,0,0)}to{opacity:1;transform:translateZ(0)}}.lazy-load{opacity:0;transition:opacity .4s ease-in-out}.lazy-load.loaded{opacity:1}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:absolute;left:1rem;top:-100%;z-index:100000;padding:.75rem 1.25rem;border-radius:.5rem;background:var(--color-accent-primary, #22d3ee);color:#0a0f16;font-weight:700;text-decoration:none;transition:top .2s ease}.skip-link:focus{top:1rem;outline:2px solid #f8fafc;outline-offset:2px}#contato{background-color:var(--color-bg-primary)}#contato .section-title{font-family:Roboto Slab,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:800;color:var(--color-text-primary);letter-spacing:-.03em;line-height:1.1;margin-bottom:var(--spacing-lg)}@media screen and (min-width: 1024px){#contato .section-title{margin-bottom:var(--spacing-md)}}#contato .section-title:after{background:var(--gradient-accent);height:4px;width:80px}#footer{background-color:var(--bg-white);border-top:1px solid var(--divider-color);padding:var(--spacing-lg) var(--spacing-lg);text-align:center}.footer-content{max-width:100%;margin:0;padding:0 var(--spacing-md)}.footer-content .copyright{color:var(--text-light);font-size:.9rem;margin:0 0 .5rem}.footer-credit{color:var(--text-muted);font-size:.85rem;margin:0}.footer-credit a{color:var(--text-light);text-decoration:none;transition:color var(--transition-normal)}.footer-credit a:hover{color:var(--accent-blue)}@media screen and (max-width: 1024px){:root{--font-size-h2: 3rem;--font-size-h3: 1.75rem}.full-viewport-section{min-height:auto;padding:8rem 2rem 4rem}.section-divider{margin:var(--spacing-lg) 0}.nav-menu{gap:1.5rem}}@media screen and (max-width: 768px){.nav-container{padding:1rem;flex-wrap:wrap}.nav-icons{order:2}.full-viewport-section{padding:6rem 1rem 3rem;min-height:auto}.section-divider{margin:var(--spacing-md) 0}:root{--font-size-h2: 2.5rem;--font-size-h3: 1.5rem;--spacing-xl: 3rem;--spacing-lg: 2rem;--spacing-md: 1.5rem}.skeleton-image{height:200px}.project-badges{flex-direction:column;align-items:flex-start}.project-tech-metadata{gap:var(--spacing-md)}.project-tech-title,.project-stats-title{font-size:.8125rem}.project-language-badge{font-size:.8125rem;padding:.5rem .875rem}.project-language-badge i{font-size:.875rem}.project-stats{width:100%;justify-content:flex-start;gap:var(--spacing-sm)}.project-stat-item{font-size:.875rem;padding:.375rem .625rem}.project-stat-item i{font-size:.875rem}.empty-state{min-height:300px;padding:var(--spacing-lg)}.empty-state-icon{font-size:3rem}.section-content{padding:var(--spacing-md) 0}}.back-to-top-button{position:fixed;bottom:2rem;right:2rem;width:3rem;height:3rem;background:var(--color-accent-primary);color:var(--color-text-inverse);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;box-shadow:0 4px 12px #00000026;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;z-index:1003;transform-origin:center;will-change:transform,opacity,visibility;backface-visibility:hidden;-webkit-backface-visibility:hidden}.back-to-top-button:hover,.back-to-top-button:focus{background:var(--color-accent-hover);transform:translateY(-4px);box-shadow:0 6px 16px #0003;outline:2px solid var(--color-accent-primary);outline-offset:2px}.back-to-top-button:active{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.back-to-top-button.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top-button[aria-hidden=true]{pointer-events:none}.dark-mode .back-to-top-button{background:var(--color-accent-primary);box-shadow:0 4px 12px #0000004d}.dark-mode .back-to-top-button:hover,.dark-mode .back-to-top-button:focus{background:var(--color-accent-hover);box-shadow:0 6px 16px #0006}@media screen and (max-width: 768px){.back-to-top-button{bottom:1rem;right:1rem;width:2.75rem;height:2.75rem;font-size:1.1rem;min-width:44px;min-height:44px;z-index:1003;position:fixed!important;transform:translateZ(0)}}@media screen and (max-width: 480px){.back-to-top-button{bottom:.75rem;right:.75rem;width:2.5rem;height:2.5rem;font-size:1rem;min-width:44px;min-height:44px}}@media (prefers-reduced-motion: reduce){.back-to-top-button{transition:opacity .2s ease,visibility .2s ease}.back-to-top-button:hover,.back-to-top-button:focus{transform:translateY(0)}}.dark-mode{--color-bg-primary: #0a0f16;--color-bg-secondary: #111823;--color-bg-tertiary: #1a2332;--color-bg-card: #161e2b;--color-bg-overlay: rgba(0, 0, 0, .65);--color-text-primary: #e6edf3;--color-text-secondary: #8b949e;--color-text-tertiary: #6e7681;--color-text-muted: #484f58;--color-text-inverse: #0a0f16;--color-accent-primary: #22d3ee;--color-accent-secondary: #0891b2;--color-accent-hover: #06b6d4;--color-accent-secondary-hover: #0e7490;--color-accent-muted: rgba(34, 211, 238, .12);--color-accent-light: rgba(34, 211, 238, .15);--color-accent-medium: rgba(34, 211, 238, .25);--color-border-primary: #2a3441;--color-border-secondary: #3d4f61;--color-border-focus: #22d3ee;--color-success: #34d399;--color-error: #f87171;--color-warning: #fbbf24;--color-info: #22d3ee;--color-shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--color-shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--color-shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--color-shadow-accent: rgba(34, 211, 238, .25);--gradient-accent: linear-gradient(135deg, #22d3ee 0%, #0891b2 100%);--gradient-text: linear-gradient(135deg, #22d3ee, #0891b2);--gradient-bg-subtle: #0a0f16;--section-title-accent: var(--color-accent-primary);--bg-white: var(--color-bg-primary);--bg-light: var(--color-bg-secondary);--bg-medium: var(--color-bg-tertiary);--text-dark: var(--color-text-primary);--text-medium: var(--color-text-secondary);--text-light: var(--color-text-tertiary);--text-muted: var(--color-text-muted);--accent-blue: var(--color-accent-primary);--accent-green: var(--color-accent-secondary);--divider-color: var(--color-border-primary)}html:not(.dark-mode){--color-bg-primary: #ffffff;--color-bg-secondary: #f6f8fa;--color-bg-tertiary: #eef1f4;--color-bg-card: #ffffff;--color-text-primary: #1f2937;--color-text-secondary: #4b5563;--color-text-tertiary: #6b7280;--color-text-muted: #9ca3af;--color-text-inverse: #ffffff;--color-accent-primary: #0e7490;--color-accent-secondary: #0891b2;--color-accent-hover: #0c6378;--color-accent-secondary-hover: #0e7490;--color-accent-muted: rgba(14, 116, 144, .1);--color-accent-light: rgba(14, 116, 144, .12);--color-accent-medium: rgba(14, 116, 144, .2);--color-border-primary: #d1d9e0;--color-border-secondary: #c5cdd6;--color-border-focus: #0e7490;--gradient-accent: linear-gradient(135deg, #0e7490 0%, #0891b2 100%);--gradient-text: linear-gradient(135deg, #0e7490, #0891b2);--gradient-bg-subtle: linear-gradient(135deg, #ffffff 0%, #f6f8fa 100%);--section-title-accent: var(--color-accent-primary)}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);transition:background-color .2s ease,color .2s ease;overscroll-behavior-y:none}::selection{background-color:var(--color-accent-muted);color:var(--color-text-primary)}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}a:focus-visible,button:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}:root{--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", monospace;--nav-height: 4.5rem}html{font-family:var(--font-sans);scroll-padding-top:var(--nav-height);overscroll-behavior-y:none}body,.hero-name,.hero-title,.hero-subtitle,.hero-description,.section-title,.section-subtitle,.nav-link,.logo,.nav-menu,.nav-container .logo,.hero-actions .button,.hero-actions a.button,.technology-card,.technology-card-title,.technology-card .content h3,.btn-action,.button,.pagination-buttons .button,.pagination-info,#projetos .section-title,#tecnologias .section-title,#publicacoes .section-title,#sobre .section-title,#contato .section-title,#experiencia .section-title,.contact-item-label,.experience-title,.publication-title,.sort-select,h1,h2,h3,h4,h5,h6,p,li,label,input,textarea,button,select{font-family:var(--font-sans)}.btn-action,.btn-action:hover,.pagination-buttons .button,.pagination-buttons .button:hover,.dark-mode .btn-action:hover,.dark-mode .pagination-buttons .button:hover{font-family:var(--font-sans)!important}.font-mono,.hero-eyebrow,.hero-stat-number,code,pre,kbd{font-family:var(--font-mono)}.hero-title{font-weight:800;letter-spacing:-.03em}.hero-subtitle{font-weight:600;letter-spacing:-.01em}.section-title{font-weight:700;letter-spacing:-.02em}#hero.full-viewport-section{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;min-height:100vh;min-height:100svh;min-height:100dvh;box-sizing:border-box;padding-top:calc(var(--nav-height) + clamp(1rem,2.5vh,1.75rem))!important;padding-bottom:clamp(4.25rem,7.5vh,5rem)!important;padding-inline:clamp(1rem,4vw,var(--spacing-lg, 3rem))!important;--hero-cta-height: 3rem;--hero-scroll-reserve: clamp(4.25rem, 7.5vh, 5rem)}#hero{background:var(--color-bg-primary);text-align:left;min-height:0;display:block}.dark-mode #hero{background-color:var(--color-bg-primary);background-image:radial-gradient(circle at 1px 1px,rgba(34,211,238,.06) 1px,transparent 0);background-size:24px 24px}.hero-ambient{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.28;will-change:transform;pointer-events:none}.hero-orb--primary{width:clamp(280px,32vw,420px);height:clamp(280px,32vw,420px);left:-8%;top:18%;background:radial-gradient(circle,#22d3ee61,#22d3ee00 70%);animation:hero-orb-drift-a 20s ease-in-out infinite}.hero-orb--secondary{width:clamp(240px,28vw,360px);height:clamp(240px,28vw,360px);right:-6%;bottom:12%;background:radial-gradient(circle,#0891b24d,#0891b200 70%);animation:hero-orb-drift-b 25s ease-in-out infinite}.hero-orb--tertiary{width:clamp(220px,26vw,340px);height:clamp(220px,26vw,340px);left:38%;top:35%;background:radial-gradient(circle,#a855f73d,#a855f700 70%);animation:hero-orb-drift-c 22s ease-in-out infinite}@keyframes hero-orb-drift-a{0%,to{transform:translate(0) scale(1);opacity:.4}50%{transform:translate(60px,-40px) scale(1.15);opacity:.6}}@keyframes hero-orb-drift-b{0%,to{transform:translate(0) scale(1);opacity:.35}50%{transform:translate(-50px,35px) scale(1.12);opacity:.55}}@keyframes hero-orb-drift-c{0%,to{transform:translate(0) scale(1);opacity:.3}50%{transform:translate(-30px,-50px) scale(1.15);opacity:.5}}html:not(.dark-mode) .hero-orb--primary{background:radial-gradient(circle,#0e749038,#0e749000 70%);opacity:.55}html:not(.dark-mode) .hero-orb--secondary{background:radial-gradient(circle,#0891b22e,#0891b200 70%)}html:not(.dark-mode) .hero-orb--tertiary{background:radial-gradient(circle,#a855f726,#a855f700 70%)}#hero .hero-content{position:relative;z-index:1;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;align-self:stretch;min-height:0;max-width:min(calc(100% - 2rem),72rem);width:100%;margin-inline:auto;padding:0 clamp(1rem,3vw,2rem);box-sizing:border-box}.hero-split{display:grid;grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2rem);align-items:stretch;width:100%}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(1.25rem,3vw,1.75rem);min-width:0;width:100%}.hero-copy .hero-visual{align-self:center;width:100%}.hero-body{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:.875rem;min-width:0;width:100%;padding-bottom:0}.hero-visual{margin:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:clamp(.875rem,1.5vw,1.125rem);width:100%}.hero-device-showcase{position:relative;width:100%;max-width:440px;height:340px;margin:1.5rem auto;perspective:1200px;transform-style:preserve-3d;display:flex;align-items:center;justify-content:center;touch-action:pan-y;-webkit-user-select:none;user-select:none}.showcase-glow{position:absolute;top:10%;left:10%;width:80%;height:80%;background:radial-gradient(circle,rgba(34,211,238,.15) 0%,rgba(8,145,178,.05) 50%,transparent 85%);filter:blur(40px);pointer-events:none;z-index:0;transform:translateZ(-100px)}.device-mockup{position:absolute;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.25,.8,.25,1)}.device-mockup.macbook{left:5%;bottom:12%;width:80%;max-width:350px;z-index:1;transform:translateZ(-30px) rotateX(2deg) rotateY(4deg)}.macbook-screen-frame{position:relative;width:100%;aspect-ratio:16 / 10;background:#090d16;border:10px solid #1f2937;border-bottom-width:4px;border-radius:14px 14px 0 0;box-shadow:0 10px 30px #00000080,inset 0 0 4px #ffffff14;box-sizing:border-box;overflow:hidden}.macbook-webcam{position:absolute;top:-7px;left:50%;transform:translate(-50%);width:3px;height:3px;border-radius:50%;background:#374151;z-index:10}.macbook-screen{width:100%;height:100%;background:#030712;overflow:hidden;position:relative}.screen-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .8s ease-in-out;pointer-events:none}.screen-slide.active{opacity:1;pointer-events:auto}.showcase-dots{position:absolute;bottom:-15px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.showcase-dots .dot{position:relative;width:8px;height:8px;border-radius:50%;border:none;background:#fff3;cursor:pointer;padding:0;transition:all .3s cubic-bezier(.25,.8,.25,1)}.showcase-dots .dot:before{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.showcase-dots .dot:hover{background:#ffffff80;transform:scale(1.25)}.showcase-dots .dot.active{background:var(--color-accent-primary);width:20px;border-radius:4px;box-shadow:0 0 10px #22d3ee99}.macbook-screen .screen-slide img{width:100%;height:100%;object-fit:cover;object-position:left top;-webkit-user-drag:none;pointer-events:none}.macbook-base-frame{position:relative;width:114%;height:8px;left:-7%;background:#374151;border-radius:0 0 8px 8px;border-top:1px solid #4b5563;box-shadow:0 8px 20px #0006,0 15px 35px #0003}.macbook-notch{position:absolute;top:0;left:50%;transform:translate(-50%);width:50px;height:3px;background:#1f2937;border-radius:0 0 4px 4px}.device-mockup.iphone{right:5%;bottom:6%;width:28%;max-width:130px;aspect-ratio:9 / 18.5;z-index:2;transform:translateZ(60px) rotateX(1deg) rotateY(-8deg)}.iphone-frame{position:relative;width:100%;height:100%;background:#090d16;border:4px solid #1f2937;border-radius:16px;box-shadow:0 15px 35px #0009,0 0 0 1px #ffffff0d,inset 0 0 2px #ffffff1a;box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column}.iphone-island{position:absolute;top:5px;left:50%;transform:translate(-50%);width:28px;height:8px;border-radius:5px;background:#000;z-index:10;box-shadow:inset 0 0 1px #fff3}.iphone-speaker{position:absolute;top:2px;left:50%;transform:translate(-50%);width:12px;height:2px;border-radius:1px;background:#374151;z-index:10}.iphone-screen{width:100%;height:100%;background:#030712;overflow:hidden;position:relative;border-radius:12px}.iphone-screen .screen-slide img{width:100%;height:100%;object-fit:cover;object-position:center top;-webkit-user-drag:none;pointer-events:none}.iphone-home-bar{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:30px;height:2px;border-radius:1px;background:#ffffff4d;z-index:10}.hero-device-showcase:hover .macbook{transform:translateZ(-20px) rotateX(1deg) rotateY(2deg)}.hero-device-showcase:hover .iphone{transform:translateZ(85px) rotateX(0) rotateY(-4deg) scale(1.03);box-shadow:0 20px 45px #000000b3,0 0 15px #22d3ee33}.projects-slider-container{position:relative;width:100%;margin-top:2rem}.projects-grid{display:flex;flex-direction:row;flex-wrap:nowrap;gap:2rem;width:100%;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding-top:1.5rem;padding-bottom:1.5rem;margin-top:-1.5rem;scrollbar-width:none;cursor:grab;user-select:none;-webkit-user-select:none}.projects-grid:active{cursor:grabbing}.projects-grid::-webkit-scrollbar{display:none}.projects-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:3rem;height:3rem;border-radius:50%;background:#0a0f16bf;border:1px solid var(--color-border-primary);color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;cursor:pointer;z-index:10;transition:all .25s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000004d}.projects-nav-btn:hover:not(:disabled){border-color:var(--color-accent-primary);color:var(--color-accent-primary);background:#0a0f16e6;box-shadow:0 0 15px #22d3ee40;transform:translateY(-50%) scale(1.05)}.projects-nav-btn:disabled{opacity:0;pointer-events:none}.projects-nav-btn--prev{left:-1.5rem}.projects-nav-btn--next{right:-1.5rem}@media screen and (max-width: 1023px){.projects-nav-btn{display:none}}.project-grid-card{flex:0 0 clamp(540px,85vw,720px);scroll-snap-align:start;background:var(--color-bg-card);border:1px solid var(--color-border-primary);border-radius:16px;overflow:hidden;display:flex;flex-direction:row;box-shadow:0 4px 20px #00000026;transition:all .3s cubic-bezier(.25,.8,.25,1);opacity:0;transform:translateY(20px)}.project-grid-card.revealed{opacity:1;transform:translateY(0)}.project-grid-card:hover{border-color:var(--project-glow-color, var(--color-accent-muted));box-shadow:0 0 0 1px var(--project-glow-color, rgba(34, 211, 238, .05)),0 20px 40px #00000073,0 12px 30px var(--project-glow-shadow, rgba(34, 211, 238, .1));transform:translateY(-4px)}.project-grid-card[data-project=pontocorte]{--project-glow-color: rgba(234, 179, 8, .45);--project-glow-shadow: rgba(234, 179, 8, .18)}.project-grid-card[data-project=nerdola-miner]{--project-glow-color: rgba(249, 115, 22, .45);--project-glow-shadow: rgba(249, 115, 22, .18)}.project-grid-card[data-project=skyfashion]{--project-glow-color: rgba(168, 85, 247, .45);--project-glow-shadow: rgba(168, 85, 247, .18)}.project-grid-card[data-project=nt-informatica]{--project-glow-color: rgba(59, 130, 246, .45);--project-glow-shadow: rgba(59, 130, 246, .18)}.project-grid-card[data-project=lgf-contabilidade]{--project-glow-color: rgba(29, 78, 216, .45);--project-glow-shadow: rgba(29, 78, 216, .18)}.project-grid-card[data-project=transcende]{--project-glow-color: rgba(239, 68, 68, .45);--project-glow-shadow: rgba(239, 68, 68, .18)}.project-card-media{position:relative;width:58%;height:auto;min-height:240px;overflow:hidden;border-right:1px solid var(--color-border-primary);background:var(--color-bg-secondary)}.project-card-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;pointer-events:none;-webkit-user-drag:none;user-drag:none}.project-grid-card:hover .project-card-image{transform:scale(1.04)}.project-card-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--color-text-muted);background:linear-gradient(135deg,#22d3ee08,#8b5cf608)}.project-card-placeholder ion-icon{font-size:2rem}.project-card-badge{position:absolute;top:1rem;right:1rem;font-size:.6875rem;font-weight:600;padding:.25rem .625rem;border-radius:4px;z-index:2;box-shadow:0 4px 10px #00000040;border:1px solid transparent}.project-card-badge.prod{background-color:var(--color-accent-primary);color:#030712;box-shadow:0 0 10px #22d3ee40}.project-card-badge.open{background-color:#ffffff0d;border-color:#ffffff1a;color:var(--color-text-secondary)}.project-card-content{padding:1.25rem 1.5rem;display:flex;flex-direction:column;width:42%;box-sizing:border-box}@media screen and (max-width: 767px){.project-grid-card{flex-direction:column;flex:0 0 clamp(280px,85vw,360px)}.project-card-media{width:100%;height:180px;min-height:auto;border-right:none;border-bottom:1px solid var(--color-border-primary)}.project-card-content{width:100%;padding:1.25rem}}.project-card-category{font-size:.6875rem;font-weight:600;color:var(--color-accent-primary);text-transform:uppercase;letter-spacing:.08em}.project-card-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:.25rem 0 .75rem}.project-card-desc{font-size:.875rem;line-height:1.55;color:var(--color-text-secondary);margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-align:left}.project-card-outcome{background-color:#22d3ee08;border-left:2px solid var(--color-accent-primary);padding:.625rem .875rem;border-radius:0 6px 6px 0;font-size:.8125rem;line-height:1.45;color:var(--color-text-primary);margin-bottom:1.25rem;text-align:left}.project-card-tags{display:flex;flex-wrap:wrap;gap:.375rem;margin:auto 0 1.25rem;padding:0;list-style:none}.project-card-tag{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;background-color:#ffffff08;border:1px solid rgba(255,255,255,.06);color:var(--color-text-secondary);padding:.1875rem .5rem;border-radius:4px}.project-card-tag i,.project-card-tag ion-icon{font-size:.75rem;color:var(--color-text-muted)}.project-card-tag-label{line-height:1}.project-card-actions{display:flex;gap:.75rem;margin-top:auto}.project-card-actions .button{flex:1;font-size:.8125rem;font-weight:600;padding:.5rem 1rem;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;text-decoration:none;cursor:pointer;transition:all .2s ease}.project-btn-primary{background:var(--color-accent-primary);color:#030712!important;border:none;box-shadow:0 4px 12px #22d3ee26}.project-btn-primary:hover{background-color:#67e8f9;box-shadow:0 4px 16px #22d3ee59;transform:translateY(-1px)}.project-btn-secondary{background:#ffffff08;border:1px solid var(--color-border-primary);color:var(--color-text-primary)!important}.project-btn-secondary:hover{background-color:#ffffff0f;border-color:#ffffff26;transform:translateY(-1px)}.project-grid-card--skeleton{pointer-events:none}.skeleton-shimmer{width:100%;height:100%;background:linear-gradient(90deg,var(--color-bg-secondary) 25%,var(--color-border-primary) 50%,var(--color-bg-secondary) 75%);background-size:200% 100%;animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-line{height:12px;background-color:var(--color-bg-secondary);border-radius:4px;margin-bottom:.625rem}.skeleton-line.title{width:60%;height:16px;margin-bottom:1rem}.skeleton-line.desc{width:90%}.skeleton-line.tags{width:40%;margin-top:1rem}.projects-grid-error{grid-column:1 / -1;text-align:center;color:#ef4444;background-color:#ef44440d;border:1px solid rgba(239,68,68,.1);padding:1.5rem;border-radius:8px;margin:2rem 0}@media screen and (min-width: 1024px){#hero.full-viewport-section{padding-top:calc(var(--nav-height) + clamp(1.25rem,3.5vh,2.5rem))!important;padding-bottom:clamp(4.5rem,8vh,5.5rem)!important;padding-inline:clamp(1.5rem,4vw,3rem)}#hero .hero-content{padding-inline:0}.hero-copy{display:contents}.hero-split{grid-template-columns:minmax(0,1fr) minmax(340px,480px);grid-template-areas:"head head" "intro panel" "body .";grid-template-rows:auto auto auto;row-gap:clamp(1.5rem,3.5vh,2.5rem);column-gap:clamp(2rem,4vw,3.25rem);align-items:start;align-content:center;flex:0 1 auto;width:100%;max-width:100%;min-width:0;--hero-panel-col: min(480px, 36vw);--hero-col-gap: clamp(2rem, 4vw, 3.25rem)}.hero-headline{grid-area:head;grid-column:1 / -1;position:relative;z-index:3;width:100%;max-width:none;display:flex;flex-direction:column;align-items:flex-start;padding-bottom:0}.hero-headline .hero-title,#hero .hero-headline .hero-title{width:100%;max-width:none;position:relative;z-index:1}.hero-intro{grid-area:intro;align-self:start;position:relative;z-index:2;width:100%;max-width:100%;margin-top:0;padding-right:clamp(.5rem,1vw,1rem);box-sizing:border-box;min-width:0;align-items:flex-start;overflow:hidden;gap:clamp(1.25rem,2.5vh,1.75rem)}#hero .hero-subtitle{width:100%;max-width:100%;margin-top:0;text-align:left}.hero-stats-bar{justify-content:flex-start;width:100%;max-width:100%;min-width:0}.hero-stats-grid{width:100%;max-width:100%;margin-inline:0;gap:0}.hero-visual{grid-area:panel;justify-self:stretch;align-self:start;width:100%;max-width:480px;min-width:0;min-height:0;position:relative;z-index:0;justify-content:flex-start;gap:0}.hero-device-showcase{height:340px;flex:none;margin-top:0}.hero-body{grid-area:body;align-self:center;justify-content:flex-end;position:relative;z-index:3;padding-bottom:0;min-width:0;min-height:var(--hero-cta-height, 3rem)}#hero .hero-actions{flex-wrap:nowrap;min-width:0;max-width:100%}#hero .hero-actions-primary{min-width:0}#hero .hero-actions .button.hero-button-primary,#hero .hero-actions .button.hero-button-resume{padding-inline:1rem;white-space:nowrap}#hero .hero-subtitle{font-size:clamp(1.0625rem,1.7vw,1.25rem);line-height:1.7}}@media screen and (min-width: 1024px) and (max-width: 1279px){.hero-split{grid-template-columns:minmax(0,1fr) minmax(320px,400px);--hero-panel-col: min(400px, 34vw)}.hero-visual{max-width:400px}#hero .hero-actions .button.hero-button-primary,#hero .hero-actions .button.hero-button-resume{padding-inline:.75rem;font-size:.875rem}#hero .hero-actions .button.hero-button-primary{font-size:.9375rem}}@media screen and (max-width: 1023px){#hero.full-viewport-section{min-height:100vh!important;min-height:100svh!important;min-height:100dvh!important;padding-top:calc(var(--nav-height) + clamp(.75rem,2vh,1.25rem))!important;padding-bottom:var(--hero-scroll-reserve, clamp(4rem, 7vh, 4.5rem))!important;padding-inline:clamp(1rem,4vw,1.5rem)!important}#hero .hero-content{justify-content:center;gap:clamp(.75rem,2vh,1.125rem)}.hero-copy{gap:clamp(.875rem,2vh,1.25rem);align-items:center;text-align:center}#hero .hero-headline{align-items:center}.hero-intro{align-items:center;text-align:center}#hero .hero-headline .hero-eyebrow,#hero .hero-title,#hero .hero-subtitle{text-align:center}.hero-stats-bar{justify-content:center}.hero-stats-grid{width:100%;max-width:22rem;margin-inline:auto}.hero-body{align-items:center;padding-bottom:2.5rem}.hero-visual{width:100%;max-width:100%;margin-inline:auto;grid-row:auto}.hero-device-showcase{max-width:320px;height:280px;margin-top:0}.hero-device-showcase .macbook{max-width:260px}.hero-device-showcase .iphone{max-width:90px}.showcase-dots{bottom:-8px;gap:10px}.showcase-dots .dot{width:10px;height:10px}.showcase-dots .dot.active{width:22px}#hero .hero-actions{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-bottom:0!important}#hero .hero-actions-primary{flex-direction:row;flex-wrap:nowrap;gap:.5rem;width:auto;flex:0 1 auto}#hero .hero-actions-primary .button.hero-button-primary,#hero .hero-actions-primary .button.hero-button-resume{display:inline-flex;flex:0 1 auto;min-width:0;width:auto;height:2.75rem;padding:0 .875rem;font-size:.8125rem;font-weight:600;gap:.35rem;white-space:nowrap;text-decoration:none;letter-spacing:0}#hero .hero-actions-primary .button.hero-button-primary{box-shadow:0 1px 2px #00000040,0 4px 10px #22d3ee38}#hero .hero-actions-primary .button.hero-button-primary:hover,#hero .hero-actions-primary .button.hero-button-primary:focus,#hero .hero-actions-primary .button.hero-button-resume:hover,#hero .hero-actions-primary .button.hero-button-resume:focus{text-decoration:none}#hero .hero-actions-primary .button.hero-button-primary .icon,#hero .hero-actions-primary .button.hero-button-resume .icon{font-size:.875rem}#hero .hero-social{display:none}#hero .scroll-indicator{bottom:.375rem;z-index:1}}@media screen and (max-width: 1023px) and (max-height: 700px){.hero-device-showcase{max-width:260px;height:220px}.hero-device-showcase .macbook{max-width:210px}.hero-device-showcase .iphone{max-width:75px}#hero .hero-title{font-size:clamp(2rem,9vw,2.375rem)}#hero .hero-subtitle{font-size:.9375rem;line-height:1.65}}@media screen and (min-width: 1920px){.hero-split{grid-template-columns:minmax(0,1fr) minmax(480px,580px);row-gap:clamp(1.75rem,3.25vh,3rem);column-gap:4.5rem;align-content:center;flex:0 0 auto;--hero-panel-col: min(580px, 38vw);--hero-col-gap: 4.5rem}.hero-intro{gap:clamp(1.5rem,2.75vh,2rem)}.hero-headline .hero-eyebrow{max-width:calc(100% - var(--hero-panel-col) - var(--hero-col-gap))}#hero .hero-headline .hero-title{max-width:none}.hero-visual{max-width:580px}.hero-device-showcase{max-width:520px;height:400px}.hero-device-showcase .macbook{max-width:420px}.hero-device-showcase .iphone{max-width:150px}#hero .hero-title{font-size:clamp(3.25rem,4.2vw + .5rem,5.25rem);line-height:1;letter-spacing:-.045em;white-space:nowrap;text-wrap:nowrap}#hero .hero-subtitle{font-size:clamp(1.1875rem,1.65vw,1.4375rem);line-height:1.9}}@media screen and (min-width: 768px){.section-title{text-align:left;display:block;width:100%}.section-title:after{left:0;transform:none;background:var(--section-title-accent);width:48px;height:2px;border-radius:1px}#projetos .section-title:after,#tecnologias .section-title:after,#publicacoes .section-title:after,#experiencia .section-title:after,#contato .section-title:after,#sobre .section-title:after{background:var(--section-title-accent)}}.section-header{width:100%;text-align:left}.section-subtitle{font-family:var(--font-sans);font-size:clamp(.9375rem,1.5vw,1.0625rem);font-weight:400;color:var(--color-text-secondary);line-height:1.6;letter-spacing:0;display:block;width:100%;max-width:100%;margin:10px 0;padding:0;text-align:left}.section-divider{height:0;margin:0;padding:0;border:none;background:none;opacity:0}.full-viewport-section+.section-divider+.full-viewport-section,.section-divider+.full-viewport-section{padding-top:clamp(3rem,8vw,5rem)}a{color:var(--color-accent-primary)}a:hover{color:var(--color-accent-hover)}.text-accent{color:var(--color-accent-primary)}.dark-mode strong{color:inherit;font-weight:700}.technology-card,.featured-item{border-radius:12px}.technology-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:none}.dark-mode .toast{background:var(--color-bg-card);box-shadow:var(--color-shadow-md)}.dark-mode .toast-message{color:var(--color-text-primary)}.dark-mode .toast-close{color:var(--color-text-secondary)}.dark-mode .toast-close:hover{color:var(--color-text-primary);background:var(--color-accent-muted)}.dark-mode .toast-success{background-color:#10b9811f}.dark-mode .toast-error{background-color:#ef44441f}.dark-mode .toast-warning{background-color:#f59e0b1f}.dark-mode .toast-info{background-color:#22d3ee1f}.dark-mode #main-navigation.sticky-nav,#main-navigation.sticky-nav{background-color:#0a0f16a6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.04);box-shadow:none;transform:translateY(0);transition:transform .3s ease,background-color .3s ease,border-color .3s ease,box-shadow .3s ease;will-change:transform}#main-navigation.sticky-nav.nav--hidden{transform:translateY(-100%);pointer-events:none}.dark-mode #main-navigation.sticky-nav.scrolled,#main-navigation.sticky-nav.scrolled{background-color:#0a0f16bf;border-bottom:1px solid rgba(34,211,238,.15);box-shadow:0 4px 30px #00000040}html:not(.dark-mode) #main-navigation.sticky-nav{background-color:#ffffffa6;border-bottom:1px solid rgba(0,0,0,.04)}html:not(.dark-mode) #main-navigation.sticky-nav.scrolled{background-color:#ffffffbf;border-bottom:1px solid rgba(14,116,144,.15);box-shadow:0 4px 30px #0000000d}.nav-container .logo{font-weight:700;letter-spacing:-.02em;text-transform:none;color:var(--color-text-primary)}.nav-container .logo:hover{color:var(--color-accent-primary)}.nav-link{text-transform:none;letter-spacing:0;font-weight:500;color:var(--color-text-secondary)}.nav-link:hover,.nav-link:focus{color:var(--color-accent-primary)}.dark-mode .nav-link{color:var(--color-text-secondary)}.dark-mode .nav-link:hover,.dark-mode .nav-link:focus{color:var(--color-accent-primary)}.nav-link.active{color:var(--color-accent-primary);font-weight:600}.nav-icons .icons a,.nav-menu-social a{color:var(--color-text-secondary);transition:color .2s ease}.nav-icons .icons a:hover,.nav-menu-social a:hover{color:var(--color-accent-primary)}@media screen and (min-width: 1024px){.nav-menu>li.nav-link-item--mobile-only{display:none!important}.nav-menu{gap:clamp(.625rem,1.2vw,1rem)!important}.nav-menu .nav-link{font-size:clamp(.8125rem,1.1vw,.9375rem)!important;font-weight:500!important;letter-spacing:0!important;padding:.375rem 0!important;display:inline-flex!important;align-items:center;gap:.4rem;width:auto!important}.nav-link .nav-link-icon{font-size:1rem;color:var(--color-accent-primary);flex-shrink:0}.nav-icons .nav-social-link--compact{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--color-border-primary);border-radius:8px;color:var(--color-text-secondary);text-decoration:none;transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease}.nav-icons .nav-social-link--compact ion-icon{font-size:1.125rem}.nav-icons .nav-social-link--compact .label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav-icons .nav-social-link--compact:hover,.nav-icons .nav-social-link--compact:focus{color:var(--color-accent-primary);border-color:var(--color-accent-primary);background-color:var(--color-accent-muted);transform:translateY(-2px)}}@media screen and (max-width: 1023px){.nav-link{display:flex!important;align-items:center;gap:.875rem;width:100%}.nav-link .nav-link-icon{font-size:1.25rem;color:var(--color-accent-primary);flex-shrink:0}.nav-menu-social .nav-social-link{display:inline-flex;align-items:center;gap:.75rem;color:var(--color-text-secondary);text-decoration:none;font-size:1rem;font-weight:600;padding:.75rem 0;min-height:44px;transition:color .2s ease}.nav-menu-social .nav-social-link ion-icon{font-size:1.375rem;color:var(--color-accent-primary);flex-shrink:0}.nav-menu-social .nav-social-link:hover,.nav-menu-social .nav-social-link:focus{color:var(--color-accent-primary)}.menu-toggle-icon ion-icon{font-size:1.5rem;color:var(--color-text-primary)}}#hero .hero-headline .reveal-on-scroll,#hero .hero-subtitle.reveal-on-scroll,#hero .hero-stats-bar.reveal-on-scroll,#hero .hero-actions.reveal-on-scroll{opacity:1;transform:none}#hero .hero-headline{align-items:flex-start;gap:0;width:100%;padding-bottom:0}@media screen and (max-width: 1023px){#hero .hero-headline{display:flex;flex-direction:column}.hero-headline .hero-eyebrow,.hero-headline .hero-title,#hero .hero-headline .hero-eyebrow{max-width:100%}#hero .hero-headline .hero-title{max-width:none;text-shadow:none}}.hero-eyebrow{font-size:clamp(1rem,1.75vw,1.125rem);color:var(--color-text-secondary);margin:0 0 clamp(.75rem,1.25vh,.875rem);font-weight:600;letter-spacing:.01em}#hero .hero-title{font-size:clamp(2.375rem,6.5vw,4rem);font-weight:800;line-height:1.06;letter-spacing:-.035em;color:var(--color-text-primary);margin:0;width:100%;max-width:none;text-align:left;position:relative}@media screen and (min-width: 1024px){#hero .hero-title{font-size:clamp(2.75rem,6.8vw,5rem);line-height:1.02;letter-spacing:-.04em;white-space:nowrap;text-wrap:nowrap;text-shadow:0 2px 20px rgba(10,15,26,.75)}}#hero .hero-subtitle{font-size:clamp(1.0625rem,2vw,1.375rem);font-weight:400;line-height:1.85;color:var(--color-text-secondary);margin:0;width:100%;max-width:100%;text-align:left}#hero .hero-subtitle strong{color:var(--color-accent-primary);font-weight:600}.hero-intro{display:flex;flex-direction:column;align-items:center;gap:clamp(.875rem,2vh,1.125rem);width:100%}.hero-stats-bar{width:100%;display:flex;justify-content:center;margin:0}.hero-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;max-width:22rem;margin:0 auto;padding:0;list-style:none;border:1px solid var(--color-border-primary);border-radius:10px;background-color:#ffffff05;overflow:hidden;box-sizing:border-box;min-width:0}.hero-stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;min-width:0;max-width:100%;padding:.875rem .5rem;background-color:transparent;border:none;border-radius:0;border-right:1px solid var(--color-border-primary);text-align:center;box-sizing:border-box;transition:background-color .2s ease,color .2s ease}.hero-stat-item:last-child{border-right:none}.hero-stat-item:hover{border-color:transparent;background-color:var(--color-accent-muted);transform:none}.hero-stat-number{display:block;width:100%;font-size:clamp(1.375rem,3.2vw,1.75rem);font-weight:800;color:var(--color-accent-primary);line-height:1;letter-spacing:-.04em;text-align:center;flex-shrink:0}.hero-stat-label{display:block;width:100%;font-size:clamp(.6875rem,1.6vw,.8125rem);font-weight:500;color:var(--color-text-secondary);text-align:center;line-height:1.25;max-width:100%;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}@media screen and (min-width: 1024px){.hero-stats-grid{max-width:none;border-radius:8px}.hero-stat-item{flex-direction:column;align-items:center;justify-content:center;padding:.875rem .75rem;gap:.35rem}.hero-stat-number{font-size:clamp(1.5rem,1.8vw,1.875rem)}.hero-stat-label{font-size:clamp(.75rem,.95vw,.875rem);text-align:center}}@media screen and (min-width: 1280px){.hero-stat-item{flex-direction:column;flex-wrap:nowrap;align-items:center;justify-content:center;padding:1rem;gap:.35rem}.hero-stat-number{font-size:clamp(1.625rem,1.9vw,1.875rem)}.hero-stat-label{font-size:clamp(.8125rem,1vw,.9375rem);text-align:center}}@media screen and (max-width: 767px){.hero-stats-grid{max-width:100%}.hero-stat-item{padding:.7rem .375rem;gap:.25rem}.hero-stat-number{font-size:clamp(1.375rem,6.5vw,1.625rem)}.hero-stat-label{font-size:clamp(.625rem,2.6vw,.75rem)}}#hero .hero-title strong.text-accent{color:var(--color-accent-primary);font-weight:700}.stack-pill{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:clamp(.75rem,1.2vw,.8125rem);font-weight:500;line-height:1;padding:.4rem .75rem;border:1px solid var(--color-border-primary);border-radius:4px;background-color:var(--color-accent-muted);color:var(--color-text-primary);white-space:nowrap}.stack-pill i,.stack-pill ion-icon{font-size:.8125em;flex-shrink:0;opacity:.92}#hero .hero-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.625rem;margin:0;width:100%}@media screen and (max-width: 1023px){#hero .hero-body{align-items:center}#hero .hero-actions{justify-content:center}#hero .hero-social{display:none}}.hero-actions-primary{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.625rem;width:auto;flex:0 1 auto}#hero .hero-actions .button,#hero .hero-actions .button span{text-decoration:none;text-transform:none;border-bottom:none}#hero .hero-actions .button.hero-button-primary{font-size:1rem;font-weight:600;height:var(--hero-cta-height, 3rem);padding:0 1.5rem;min-width:auto;border-radius:8px;border:1px solid var(--color-accent-primary);background-color:var(--color-accent-primary);color:var(--color-text-inverse);box-shadow:0 1px 2px #0003,0 4px 12px #22d3ee33;letter-spacing:0;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1;box-sizing:border-box;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}#hero .hero-actions .button.hero-button-primary .icon{font-size:.9375rem;opacity:.95}#hero .hero-actions .button.hero-button-primary:hover,#hero .hero-actions .button.hero-button-primary:focus{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-text-inverse);text-decoration:none;transform:translateY(-2px);box-shadow:0 2px 4px #0003,0 6px 16px #22d3ee4d}.hero-social{display:flex;align-items:center;gap:.625rem;flex-shrink:0}.hero-social-link{display:inline-flex;align-items:center;justify-content:center;width:var(--hero-cta-height, 3rem);height:var(--hero-cta-height, 3rem);flex-shrink:0;border:1px solid var(--color-border-primary);border-radius:8px;background-color:var(--color-bg-secondary);color:var(--color-text-secondary);text-decoration:none;box-sizing:border-box;transition:border-color .2s ease,color .2s ease,background-color .2s ease,transform .2s ease}.hero-social-link:hover,.hero-social-link:focus{border-color:var(--color-accent-primary);color:var(--color-accent-primary);background-color:var(--color-accent-muted);transform:translateY(-2px)}.hero-social-link .icon{font-size:1.125rem}#hero .hero-actions .button.hero-button-resume{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:var(--hero-cta-height, 3rem);padding:0 1.125rem;font-size:.9375rem;font-weight:600;line-height:1;border-radius:8px;border:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary);color:var(--color-text-primary);box-shadow:none;letter-spacing:0;box-sizing:border-box;text-decoration:none;transition:border-color .2s ease,color .2s ease,background-color .2s ease,transform .2s ease}#hero .hero-actions .button.hero-button-resume .icon{font-size:1rem;color:var(--color-accent-primary);transition:color .2s ease}#hero .hero-actions .button.hero-button-resume:hover,#hero .hero-actions .button.hero-button-resume:focus{border-color:var(--color-accent-primary);background-color:var(--color-accent-muted);color:var(--color-accent-primary);transform:translateY(-2px)}#hero .hero-actions .button.hero-button-resume:hover .icon,#hero .hero-actions .button.hero-button-resume:focus .icon{color:var(--color-accent-primary)}#hero .scroll-indicator{position:absolute;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;bottom:clamp(1rem,2.5vh,1.5rem);z-index:2;opacity:0;animation:hero-scroll-fade-in 1s ease-out 1.5s forwards;color:var(--color-text-muted);cursor:pointer;text-decoration:none;transition:color .2s ease,transform .2s ease}#hero .scroll-indicator:hover,#hero .scroll-indicator:focus{color:var(--color-accent-primary);transform:translate(-50%) translateY(-4px);outline:none}#hero .scroll-indicator:hover .scroll-indicator-icon{animation-duration:1s}.scroll-indicator-text{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-sans)}.scroll-indicator-icon{font-size:1.5rem;animation:hero-scroll-bounce 2s infinite}@keyframes hero-scroll-fade-in{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes hero-scroll-bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}@media (prefers-reduced-motion: reduce){#hero .scroll-indicator{animation:none;opacity:1}.scroll-indicator-icon{animation:none}}#hero .hero-actions{margin-bottom:0!important}@media screen and (max-width: 767px){#hero .hero-content{max-width:100%}}@media (prefers-reduced-motion: reduce){#main-navigation.sticky-nav{transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}#main-navigation.sticky-nav.nav--hidden{transform:translateY(-100%)}.hero-orb{animation:none;opacity:.2}.hero-terminal:hover,.hero-stat-item:hover{transform:none}.hero-social-link:hover,.hero-social-link:focus,#hero .hero-actions .button.hero-button-primary:hover,#hero .hero-actions .button.hero-button-resume:hover,#hero .hero-actions .button.hero-button-resume:focus{transform:none}}#projetos .section-header{margin-bottom:clamp(1.75rem,3.5vw,2.5rem);padding:0}#projetos .section-subtitle{max-width:32rem;margin-bottom:0}.projects-slider{--projects-slider-gap: 1rem;position:relative;width:100%;margin-inline:calc(-1*clamp(1rem,4vw,1.5rem));padding-inline:clamp(3rem,7vw,4.75rem)}.projects-slider-viewport{overflow:hidden;width:100%;--projects-card-width: calc((100% - 2 * var(--projects-slider-gap)) / 3)}.projects-slider-track{display:flex;gap:var(--projects-slider-gap);will-change:transform}.projects-slider-track .featured-item{flex:0 0 var(--projects-card-width);min-width:0}.featured-item{margin:0;border:1px solid var(--color-border-primary);border-radius:12px;background-color:var(--color-bg-card);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.featured-item:hover{border-color:var(--color-border-secondary);box-shadow:0 8px 28px #0000002e;transform:translateY(-2px)}.featured-item--skeleton{pointer-events:none}.featured-item-skeleton-shimmer{width:100%;height:100%;min-height:10rem;background:linear-gradient(110deg,var(--color-bg-secondary) 8%,rgba(255,255,255,.04) 18%,var(--color-bg-secondary) 33%);background-size:200% 100%;animation:featuredSkeletonShimmer 1.4s ease infinite}@keyframes featuredSkeletonShimmer{to{background-position-x:-200%}}.featured-item-link{position:relative;display:block;color:inherit;text-decoration:none}.featured-item-link:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.featured-item-media{position:relative;width:100%;aspect-ratio:16 / 10;overflow:hidden;background-color:var(--color-bg-secondary)}.featured-item-badge{position:absolute;top:.5rem;left:.5rem;z-index:2;font-size:.5625rem;font-weight:600;line-height:1;padding:.28rem .4rem;border-radius:4px;color:#34d399;background-color:#0a0f16d1;border:1px solid rgba(52,211,153,.35);letter-spacing:.04em;text-transform:uppercase}.featured-item-badge--opensource{color:#93c5fd;border-color:#93c5fd59}.featured-item-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.625rem;width:100%;height:100%;color:var(--color-text-muted);background:radial-gradient(circle at 50% 40%,var(--color-accent-muted),transparent 70%),var(--color-bg-secondary)}.featured-item-placeholder ion-icon{font-size:2.25rem;color:var(--color-accent-primary)}.featured-item-placeholder span{font-size:.8125rem;letter-spacing:.02em}.featured-item-image{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .45s ease}.featured-item-link:hover .featured-item-image,.featured-item-link:focus .featured-item-image{transform:scale(1.05)}.featured-item-caption{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;flex-direction:column;gap:.15rem;padding:2.75rem .625rem .7rem;background:linear-gradient(to top,rgba(10,15,22,.94) 0%,rgba(10,15,22,.55) 52%,transparent 100%);box-sizing:border-box}.featured-item-icon{position:absolute;right:.625rem;bottom:.625rem;font-size:.9375rem;color:#f8fafc8c;transition:color .2s ease,transform .2s ease}.featured-item-link:hover .featured-item-icon,.featured-item-link:focus .featured-item-icon{color:var(--color-accent-primary);transform:translate(2px,-2px)}.featured-item-title{font-size:clamp(.8125rem,1.1vw,.9375rem);font-weight:700;color:#f8fafc;margin:0;letter-spacing:-.02em;line-height:1.2;padding-right:1.25rem}.featured-item-category{font-size:.5625rem;font-weight:500;color:#f8fafc9e;margin:0;letter-spacing:.06em;text-transform:uppercase}.featured-item-outcome{font-size:.625rem;font-weight:500;line-height:1.35;color:#f8fafcc7;margin:.15rem 0 0;padding-right:1.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.featured-item-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin:.4rem 0 0;padding:0;list-style:none;max-width:calc(100% - 1.25rem)}.featured-item-tag{display:inline-flex;align-items:center;gap:.28rem;font-size:.5rem;font-weight:600;line-height:1;letter-spacing:.05em;text-transform:uppercase;padding:.26rem .4rem;border-radius:4px;color:#f8fafce6;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.14)}.featured-item-tag i,.featured-item-tag ion-icon{flex-shrink:0;font-size:.5625rem;line-height:1;opacity:.92}.featured-item-tag-label{line-height:1}.featured-item-tag--more{color:#f8fafc8c;background-color:#ffffff0d}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll{opacity:0;transform:translate3d(0,32px,0) scale(.94);filter:blur(6px);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1),filter .85s cubic-bezier(.22,1,.36,1),border-color .2s ease,box-shadow .2s ease;transition-delay:calc(var(--reveal-index, 0) * 95ms);will-change:opacity,transform,filter}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll.revealed{opacity:1;transform:translateZ(0) scale(1);filter:blur(0);will-change:auto}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll .featured-item-image{transform:scale(1.06);transition:transform .9s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--reveal-index, 0) * 95ms + .12s)}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll.revealed .featured-item-image{transform:scale(1)}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll .featured-item-caption{opacity:0;transform:translate3d(0,10px,0);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--reveal-index, 0) * 95ms + .18s)}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll.revealed .featured-item-caption{opacity:1;transform:translateZ(0)}.projects-slider-btn{position:absolute;top:38%;z-index:3;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--color-border-primary);border-radius:999px;background-color:#0a0f16e0;color:var(--color-text-primary);cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.projects-slider-btn ion-icon{font-size:1.125rem}.projects-slider-btn:hover:not(.is-disabled),.projects-slider-btn:focus-visible:not(.is-disabled){border-color:var(--color-accent-primary);color:var(--color-accent-primary);background-color:#0a0f16f5}.projects-slider-btn:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.projects-slider-btn.is-disabled{opacity:.35;cursor:not-allowed}.projects-slider-btn--prev{left:clamp(.35rem,2vw,.75rem)}.projects-slider-btn--next{right:clamp(.35rem,2vw,.75rem)}.projects-slider-dots{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:clamp(1.25rem,2.5vw,1.75rem);padding:0}.projects-slider-dot{width:.5rem;height:.5rem;padding:0;border:none;border-radius:999px;background-color:var(--color-border-secondary);cursor:pointer;transition:width .25s ease,background-color .25s ease}.projects-slider-dot:hover,.projects-slider-dot:focus-visible{background-color:var(--color-text-muted)}.projects-slider-dot:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.projects-slider-dot.active{width:1.375rem;background-color:var(--color-accent-primary)}.projects-slider-error{margin:0;padding:1.5rem 0;color:var(--color-text-muted);text-align:center}@media screen and (max-width: 1199px){.projects-slider-viewport{--projects-card-width: calc((100% - var(--projects-slider-gap)) / 2)}}@media screen and (max-width: 767px){.projects-slider{--projects-slider-gap: .75rem;padding-inline:2.25rem}.projects-slider-viewport{--projects-card-width: 93%}.projects-slider-btn{width:2.125rem;height:2.125rem}.projects-slider-btn--prev{left:.2rem}.projects-slider-btn--next{right:.2rem}.featured-item-link{display:flex;flex-direction:column}.featured-item-media{order:1;aspect-ratio:4 / 3}.featured-item-badge{position:static;order:2;align-self:flex-start;width:fit-content;margin:.75rem .9rem 0;font-size:.625rem;padding:.35rem .5rem;background-color:#34d3991f}.featured-item-badge--opensource{background-color:#93c5fd1f}.featured-item-caption{position:relative;order:3;left:auto;right:auto;bottom:auto;gap:.3rem;padding:.5rem .9rem .95rem;background:none}.featured-item-title{font-size:clamp(1.0625rem,4.2vw,1.25rem);line-height:1.25;padding-right:1.75rem;color:var(--color-text-primary)}.featured-item-category{font-size:.6875rem;letter-spacing:.07em;color:var(--color-text-secondary)}.featured-item-outcome{font-size:.75rem;color:var(--color-text-secondary);-webkit-line-clamp:3}.featured-item-tags{gap:.35rem;margin:.55rem 0 0;max-width:calc(100% - 1.75rem)}.featured-item-tag{font-size:.625rem;gap:.3rem;padding:.35rem .5rem;color:var(--color-text-primary);background-color:var(--color-accent-muted);border-color:var(--color-border-primary)}.featured-item-tag--more{color:var(--color-text-muted);background-color:transparent}.featured-item-tag i,.featured-item-tag ion-icon{font-size:.6875rem}.featured-item-icon{right:.9rem;bottom:.95rem;font-size:1.0625rem;color:var(--color-text-muted)}.featured-item:hover{transform:none}}@media screen and (max-width: 389px){.projects-slider{padding-inline:2rem}.projects-slider-viewport{--projects-card-width: 94%}.featured-item-title{font-size:1rem}}@media (prefers-reduced-motion: reduce){.featured-item:hover{transform:none}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll,#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll.revealed{opacity:1;transform:none;filter:none;transition:none}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll .featured-item-image,#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll.revealed .featured-item-image{transform:none;transition:none}#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll .featured-item-caption,#projetos .projects-slider-track .featured-item.featured-item--animated.reveal-on-scroll.revealed .featured-item-caption{opacity:1;transform:none;transition:none}.featured-item-skeleton-shimmer{animation:none}.featured-item-link:hover .featured-item-image,.featured-item-link:focus .featured-item-image{transform:none}.featured-item-link:hover .featured-item-icon,.featured-item-link:focus .featured-item-icon{transform:none}.projects-slider-track{transition:none!important}}#footer .footer-credit{font-size:.8125rem;color:var(--color-text-muted);opacity:.75}#footer .footer-credit a{color:var(--color-text-muted)}#footer .footer-credit a:hover{color:var(--color-accent-primary)}#experiencia{scroll-margin-top:var(--nav-height, 4.5rem)}#experiencia .section-header{margin-bottom:clamp(1.25rem,3vw,1.75rem);padding:0}#experiencia .section-title{font-family:var(--font-sans);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.15;margin-bottom:.5rem}#experiencia .section-title:after{background:var(--color-accent-primary);height:2px;width:48px}#experiencia .experience-content{padding:0 clamp(1rem,3vw,1.5rem)}#experiencia .experience-timeline-wrapper{margin-top:clamp(1rem,3vw,1.5rem);position:relative}#experiencia .experience-timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.25rem;position:relative;padding-left:1.5rem}#experiencia .experience-timeline:before{content:"";position:absolute;left:.3125rem;top:.625rem;bottom:.625rem;width:2px;background:linear-gradient(180deg,var(--color-accent-primary) 0%,var(--color-border-primary) 35%,var(--color-border-primary) 100%);opacity:.65;border-radius:1px}#experiencia .experience-item{position:relative;min-width:0}#experiencia .experience-marker{display:block;position:absolute;left:-1.5rem;top:1.375rem;width:11px;height:11px;margin-left:.0625rem;background-color:var(--color-bg-card);border:2px solid var(--color-accent-primary);border-radius:50%;z-index:1;box-shadow:0 0 0 2px var(--color-bg-primary);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}#experiencia .experience-card{background-color:var(--color-bg-card);border:1px solid var(--color-border-primary);border-radius:12px;padding:clamp(1rem,2.5vw,1.25rem);box-shadow:0 0 0 1px #22d3ee0f,0 8px 24px #0000002e;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;height:100%;display:flex;flex-direction:column;position:relative;overflow:hidden}#experiencia .experience-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-accent-primary);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}#experiencia .experience-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:0 0 0 1px var(--color-accent-muted),0 12px 28px #22d3ee1a}#experiencia .experience-card:hover:before{transform:scaleX(1)}#experiencia .experience-card--current{border-color:var(--color-accent-primary);box-shadow:0 0 0 1px var(--color-accent-muted),0 10px 28px #22d3ee24}#experiencia .experience-card--highlight{border-left:3px solid var(--color-accent-primary)}#experiencia .experience-header{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.625rem}#experiencia .experience-title-wrapper{flex:1;min-width:0}#experiencia .experience-title{font-family:var(--font-sans);font-size:clamp(1.0625rem,2.5vw,1.375rem);font-weight:700;color:var(--color-text-primary);margin:0 0 .25rem;line-height:1.25;letter-spacing:-.02em;transition:color .2s ease}#experiencia .experience-card:hover .experience-title{color:var(--color-accent-primary);transform:none}#experiencia .experience-company{font-family:var(--font-sans);font-size:.875rem;font-weight:500;color:var(--color-accent-primary);margin:0;line-height:1.4}#experiencia .experience-badges{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.375rem;flex-shrink:0}#experiencia .experience-badge-text{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:.03em;padding:.25rem .5rem;background-color:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border-primary);border-radius:4px}#experiencia .experience-badge-text--current{background-color:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary)}#experiencia .experience-badge-text--dev{background-color:var(--color-accent-muted);color:var(--color-accent-primary);border-color:var(--color-accent-primary)}#experiencia .experience-parallel-note{display:flex;align-items:flex-start;gap:.375rem;margin:0 0 .5rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;line-height:1.45;color:var(--color-text-muted)}#experiencia .experience-parallel-note .icon{flex-shrink:0;margin-top:.125rem;font-size:.625rem;color:var(--color-accent-primary);opacity:.85}#experiencia .experience-stack{display:flex;flex-wrap:wrap;gap:.375rem;list-style:none;margin:0 0 .625rem;padding:0}#experiencia .experience-stack .stack-pill{font-size:.75rem;padding:.35rem .625rem}#experiencia .experience-meta{display:flex;flex-direction:column;gap:.125rem;margin-bottom:.5rem}#experiencia .experience-period{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--color-text-secondary)}#experiencia .experience-period i{color:var(--color-text-muted);font-size:.6875rem}#experiencia .experience-duration{font-family:var(--font-mono);font-size:.6875rem;color:var(--color-text-muted);margin-left:1.25rem}#experiencia .experience-location{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-secondary);margin-bottom:.625rem}#experiencia .experience-location i{color:var(--color-text-muted);font-size:.6875rem}#experiencia .experience-description{color:var(--color-text-secondary);line-height:1.6;font-size:.8125rem;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:.375rem}#experiencia .experience-description p{margin:0}#experiencia .experience-description strong{color:var(--color-text-primary);font-weight:600}#experiencia .experience-description-toggle{display:none}#experiencia .experience-card.reveal-on-scroll{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}#experiencia .experience-card.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}#experiencia .experience-item:nth-child(1) .experience-card.reveal-on-scroll{transition-delay:.05s}#experiencia .experience-item:nth-child(2) .experience-card.reveal-on-scroll{transition-delay:.12s}#experiencia .experience-item:nth-child(3) .experience-card.reveal-on-scroll{transition-delay:.19s}#experiencia .experience-item:nth-child(4) .experience-card.reveal-on-scroll{transition-delay:.26s}#experiencia .experience-item--current .experience-marker{width:13px;height:13px;margin-left:0;background-color:var(--color-accent-primary);border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-bg-primary),0 0 0 4px var(--color-accent-muted),0 0 12px #22d3ee73}#experiencia .experience-item--featured .experience-marker{background-color:var(--color-accent-muted);border-color:var(--color-accent-primary);border-width:2px}#experiencia .experience-item--parallel .experience-marker{border-color:var(--color-border-primary);background-color:var(--color-bg-secondary)}#experiencia .experience-item:hover .experience-marker{transform:scale(1.12)}#experiencia .experience-item--current:hover .experience-marker{box-shadow:0 0 0 3px var(--color-bg-primary),0 0 0 4px var(--color-accent-primary),0 0 14px #22d3ee80}@media screen and (min-width: 768px){#experiencia .experience-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1.5rem;padding-left:0;width:100%;max-width:100%}#experiencia .experience-timeline:before{display:none}#experiencia .experience-marker{display:none}#experiencia .experience-item{display:flex;flex-direction:column;min-height:100%}#experiencia .experience-item.is-collapsed{display:none}#experiencia .experience-timeline>.experience-item:first-child{grid-column:1 / -1}#experiencia .experience-card{flex:1;padding:1.125rem 1.25rem}}@media screen and (min-width: 1200px){#experiencia .experience-timeline{gap:1.375rem 1.75rem}#experiencia .experience-card{padding:1.25rem 1.375rem}}@media screen and (max-width: 767px){#experiencia .experience-content{padding-left:1rem;padding-right:1rem}#experiencia .experience-timeline-wrapper{margin-top:1rem}#experiencia .experience-timeline{gap:.625rem;padding-left:1.125rem}#experiencia .experience-card{padding:.875rem;min-height:auto}#experiencia .experience-title{font-size:1.0625rem}#experiencia .experience-company{font-size:.8125rem}#experiencia .experience-description{font-size:.8125rem;line-height:1.55}#experiencia .experience-header{flex-direction:column;align-items:flex-start;margin-bottom:.5rem;gap:.375rem}#experiencia .experience-meta{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:.375rem;row-gap:0;margin-bottom:.375rem}#experiencia .experience-duration{margin-left:0}#experiencia .experience-duration:before{content:"·";margin-right:.375rem;color:var(--color-text-muted)}#experiencia .experience-location{margin-bottom:.375rem;font-size:.6875rem}#experiencia .experience-stack{margin-bottom:.5rem}#experiencia .experience-parallel-note{margin-bottom:.375rem;font-size:.625rem}#experiencia .experience-marker{left:-1.125rem;top:1.125rem;width:9px;height:9px}#experiencia .experience-item--current .experience-marker{width:11px;height:11px}#experiencia .experience-description.is-truncated p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--desc-line-clamp, 2);overflow:hidden}#experiencia .experience-description.is-truncated.expanded p{display:block;-webkit-line-clamp:unset;overflow:visible}#experiencia .experience-description.is-truncated{overflow:visible;max-height:none}#experiencia .experience-description.is-truncated.expanded{max-height:none;overflow:visible}#experiencia .experience-description-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;align-self:flex-start;margin:.375rem 0 0;padding:.3125rem .5rem;font-family:var(--font-sans);font-size:.75rem;font-weight:600;line-height:1.2;color:var(--color-accent-primary);background-color:transparent;border:1px solid var(--color-border-primary);border-radius:6px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease,transform .2s ease}#experiencia .experience-description-toggle:hover,#experiencia .experience-description-toggle:focus{border-color:var(--color-accent-primary);background-color:var(--color-accent-muted);color:var(--color-accent-primary);outline:none}#experiencia .experience-description-toggle .toggle-icon{font-size:.8125rem;transition:transform .2s ease}#experiencia .experience-description-toggle[aria-expanded=true] .toggle-icon{transform:rotate(180deg)}}@media (prefers-reduced-motion: reduce){#experiencia .experience-card{transition:none}#experiencia .experience-card:hover{transform:none}#experiencia .experience-card.reveal-on-scroll{opacity:1;transform:none}}#experiencia .experience-item--older.is-collapsed{display:none}#experiencia .experience-older-toggle{display:inline-flex;align-items:center;justify-content:center;align-self:center;gap:.35rem;width:auto;max-width:100%;margin:clamp(1rem,2.5vw,1.5rem) auto 0;padding:.5rem .875rem;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--color-accent-primary);font-family:var(--font-sans);font-size:.8125rem;font-weight:600;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}#experiencia .experience-timeline-wrapper{display:flex;flex-direction:column;align-items:stretch}#experiencia .experience-older-toggle:hover,#experiencia .experience-older-toggle:focus-visible{border-color:#22d3ee59;background-color:#22d3ee14;color:var(--color-accent-primary);outline:none}#experiencia .experience-older-toggle-icon{font-size:.9375rem;transition:transform .25s ease}#experiencia .experience-older-toggle[aria-expanded=true] .experience-older-toggle-icon{transform:rotate(180deg)}#experiencia .experience-item--older .experience-card.reveal-on-scroll{opacity:0;transform:translate3d(0,20px,0) scale(.98);filter:blur(4px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1),filter .45s ease}#experiencia .experience-item--older .experience-card.reveal-on-scroll.revealed{opacity:1;transform:translateZ(0) scale(1);filter:blur(0)}#experiencia .experience-item--older .experience-card.experience-card--exit{opacity:0;transform:translate3d(0,10px,0);filter:blur(2px);transition:opacity .2s ease,transform .2s ease,filter .2s ease}@media (prefers-reduced-motion: reduce){#experiencia .experience-item--older .experience-card.reveal-on-scroll,#experiencia .experience-item--older .experience-card.reveal-on-scroll.revealed,#experiencia .experience-item--older .experience-card.experience-card--exit{opacity:1;transform:none;filter:none;transition:none}#experiencia .experience-older-toggle-icon{transition:none}}#experiencia .education-block{margin-top:clamp(2rem,4vw,3rem);padding:clamp(1rem,2.5vw,1.25rem);border:1px solid var(--color-border-primary);border-radius:12px;background-color:var(--color-bg-card);box-shadow:0 0 0 1px #22d3ee0f,0 8px 24px #0000002e;position:relative;overflow:hidden;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}#experiencia .education-block:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-accent-primary);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}#experiencia .education-block:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:0 0 0 1px var(--color-accent-muted),0 12px 28px #22d3ee1a}#experiencia .education-block:hover:before{transform:scaleX(1)}#experiencia .education-block-title{margin:0 0 .875rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-primary);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-primary)}#experiencia .education-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}#experiencia .education-item{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon body" "status status";gap:.55rem .875rem;align-items:start;padding:.875rem .25rem;border:none;border-radius:0;border-bottom:1px solid var(--color-border-primary);background-color:transparent;transition:background-color .2s ease}#experiencia .education-item:last-child{border-bottom:none;padding-bottom:.25rem}#experiencia .education-item--current{margin-inline:-.25rem;padding-inline:.75rem;border-radius:8px;border-bottom-color:transparent;background-color:#22d3ee0f;box-shadow:inset 3px 0 0 var(--color-accent-primary)}#experiencia .education-item-icon{grid-area:icon;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:8px;background-color:var(--color-accent-muted);color:var(--color-accent-primary);flex-shrink:0}#experiencia .education-item-icon ion-icon{font-size:1.125rem}#experiencia .education-item-body{grid-area:body;display:flex;flex-direction:column;gap:.2rem;min-width:0}#experiencia .education-item-title{margin:0;font-size:clamp(.9375rem,1.5vw,1.0625rem);font-weight:700;color:var(--color-text-primary);line-height:1.3;letter-spacing:-.01em}#experiencia .education-item-institution{margin:0;font-size:.8125rem;font-weight:500;color:var(--color-accent-primary);line-height:1.4}#experiencia .education-item-period{font-size:.75rem;letter-spacing:.04em;color:var(--color-text-secondary)}#experiencia .education-item-status{grid-area:status;display:inline-flex;align-items:center;justify-self:start;padding:.28rem .55rem;border-radius:999px;font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--color-border-primary);color:var(--color-text-secondary);background-color:transparent}#experiencia .education-item-status--current{color:var(--color-accent-primary);border-color:#22d3ee73;background-color:#22d3ee1a}#experiencia .education-item-status--done{color:var(--color-text-muted)}@media screen and (min-width: 768px){#experiencia .education-item{grid-template-columns:auto 1fr auto;grid-template-areas:"icon body status";align-items:center;padding:1rem .35rem}#experiencia .education-item--current{padding-inline:.875rem}#experiencia .education-item-status{justify-self:end}}@media screen and (min-width: 1920px){#experiencia .education-block{padding:1.5rem 1.75rem}#experiencia .education-item-title{font-size:1.125rem}#experiencia .education-item-institution{font-size:.875rem}#experiencia .education-item-icon{width:2.5rem;height:2.5rem}#experiencia .education-item-icon ion-icon{font-size:1.25rem}}#tecnologias{scroll-margin-top:var(--nav-height, 4.5rem)}#tecnologias .section-content{padding-left:clamp(1rem,4vw,1.5rem);padding-right:clamp(1rem,4vw,1.5rem)}#tecnologias .section-header{margin-bottom:clamp(1rem,2.5vw,1.25rem);padding:0}#tecnologias .section-title{font-family:var(--font-sans);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.15;margin-bottom:.5rem}#tecnologias .section-title:after{background:var(--color-accent-primary);height:2px;width:48px}#tecnologias .technologies-panel{border:1px solid var(--color-border-primary);border-radius:12px;background-color:var(--color-bg-card);box-shadow:0 0 0 1px #22d3ee0f,0 8px 28px #0003;overflow:hidden;transition:border-color .2s ease}#tecnologias .technologies-panel:hover{border-color:var(--color-accent-primary)}#tecnologias .technologies-panel.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),border-color .2s ease}#tecnologias .technologies-panel.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}#tecnologias .technologies-panel-grid{display:grid;grid-template-columns:1fr;gap:0}#tecnologias .technologies-group{padding:clamp(1rem,2.5vw,1.25rem);border-bottom:1px solid var(--color-border-primary)}#tecnologias .technologies-group:last-child{border-bottom:none}#tecnologias .technologies-group-title{margin:0 0 .75rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-primary)}#tecnologias .technologies-list{display:flex;flex-direction:column;gap:.375rem;list-style:none;margin:0;padding:0}#tecnologias .technology-item{display:flex;align-items:center;gap:.625rem;min-width:0;padding:.5rem .625rem;border-radius:8px;border:1px solid transparent;background-color:transparent;transition:background-color .2s ease,border-color .2s ease}#tecnologias .technology-item:hover{background-color:var(--color-accent-muted);border-color:var(--color-border-primary)}#tecnologias .technology-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:1.75rem;height:1.75rem}#tecnologias .technology-item-icon .icon{font-size:1.125rem;line-height:1;color:var(--color-accent-primary)}#tecnologias .technology-item-name{flex:1;min-width:0;font-size:.875rem;font-weight:500;color:var(--color-text-primary);line-height:1.3}#tecnologias .technology-level-dot{flex-shrink:0;width:.5rem;height:.5rem;border-radius:50%;background-color:var(--color-text-muted);box-shadow:0 0 0 2px var(--color-bg-card)}#tecnologias .technology-item[data-level=production] .technology-level-dot{background-color:var(--color-accent-primary);box-shadow:0 0 0 2px var(--color-bg-card),0 0 8px #22d3ee73}#tecnologias .technology-item[data-level=familiar] .technology-level-dot{background-color:var(--color-text-muted)}#tecnologias .technologies-panel-footer{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding:.75rem clamp(1rem,2.5vw,1.25rem);border-top:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}#tecnologias .technologies-legend-item{display:inline-flex;align-items:center;gap:.5rem}#tecnologias .technologies-legend-text{font-size:.6875rem;color:var(--color-text-muted);line-height:1.35}#tecnologias .technology-level-dot--production{background-color:var(--color-accent-primary);box-shadow:0 0 8px #22d3ee66}#tecnologias .technology-level-dot--familiar{background-color:var(--color-text-muted)}@media screen and (min-width: 768px){#tecnologias .technologies-panel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#tecnologias .technologies-group{border-bottom:none;border-right:1px solid var(--color-border-primary)}#tecnologias .technologies-group:last-child{border-right:none}}@media screen and (max-width: 767px){#tecnologias .technologies-panel-footer{flex-direction:column;align-items:flex-start;gap:.5rem}#tecnologias .technology-item:hover{background-color:transparent;border-color:transparent}}@media (prefers-reduced-motion: reduce){#tecnologias .technologies-panel.reveal-on-scroll{opacity:1;transform:none}#tecnologias .technology-item{transition:none}}#publicacoes{scroll-margin-top:var(--nav-height, 4.5rem)}#publicacoes .section-content{padding-left:clamp(1rem,4vw,1.5rem);padding-right:clamp(1rem,4vw,1.5rem)}#publicacoes .section-header{margin-bottom:clamp(1rem,2.5vw,1.25rem);padding:0}#publicacoes .section-title{font-family:var(--font-sans);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.15;margin-bottom:.5rem}#publicacoes .section-title:after{background:var(--color-accent-primary);height:2px;width:48px}#publicacoes .publications-panel{width:100%;max-width:52rem}#publicacoes .publications-panel.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1)}#publicacoes .publications-panel.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}#publicacoes .publication-card{margin:0;padding:0;border:none;background:none;list-style:none}#publicacoes .publication-card-browser{display:flex;flex-direction:column;border:1px solid var(--color-border-primary);border-radius:12px;background-color:var(--color-bg-card);overflow:hidden;box-shadow:0 0 0 1px #22d3ee0f,0 8px 28px #0003;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}#publicacoes .publication-card-browser:hover{border-color:var(--color-accent-primary);box-shadow:0 0 0 1px var(--color-accent-muted),0 12px 32px #22d3ee1f}#publicacoes .publication-card-browser-bar{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border-bottom:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}#publicacoes .publication-card-browser-dot{width:.625rem;height:.625rem;border-radius:50%;flex-shrink:0}#publicacoes .publication-card-browser-dot--close{background-color:#f87171}#publicacoes .publication-card-browser-dot--min{background-color:#fbbf24}#publicacoes .publication-card-browser-dot--max{background-color:#34d399}#publicacoes .publication-card-browser-url{margin-left:auto;font-size:.6875rem;font-weight:500;color:var(--color-text-muted);letter-spacing:.02em;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#publicacoes .publication-card-layout{display:grid;grid-template-columns:1fr;gap:0}#publicacoes .publication-card-visual{display:flex;align-items:center;justify-content:center;padding:clamp(1.25rem,3vw,1.75rem);background:linear-gradient(160deg,rgba(34,211,238,.1) 0%,var(--color-bg-secondary) 55%,var(--color-bg-card) 100%);border-bottom:1px solid var(--color-border-primary)}#publicacoes .publication-card-visual ion-icon{font-size:clamp(3rem,8vw,4rem);color:var(--color-accent-primary);opacity:.9}#publicacoes .publication-card-body{padding:clamp(1rem,2.5vw,1.25rem)}#publicacoes .publication-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}#publicacoes .publication-badge{font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent-primary);background-color:var(--color-accent-muted);border:1px solid var(--color-accent-primary);border-radius:4px;padding:.25rem .5rem}#publicacoes .publication-venue{font-size:.6875rem;font-weight:500;color:var(--color-text-muted);letter-spacing:.02em}#publicacoes .publication-title{font-family:var(--font-sans);font-size:clamp(1.0625rem,2.5vw,1.25rem);font-weight:700;color:var(--color-text-primary);line-height:1.35;letter-spacing:-.02em;margin:0 0 .625rem}#publicacoes .publication-title:after{display:none;content:none}#publicacoes .publication-description{font-size:.875rem;line-height:1.6;color:var(--color-text-secondary);margin:0 0 .875rem}#publicacoes .publication-meta-list{display:flex;flex-direction:column;gap:.375rem;list-style:none;margin:0;padding:0}#publicacoes .publication-meta-item{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-muted);line-height:1.4}#publicacoes .publication-meta-item .icon{flex-shrink:0;width:.875rem;font-size:.75rem;color:var(--color-accent-primary);opacity:.85;text-align:center}#publicacoes .publication-card-footer{padding:.875rem clamp(1rem,2.5vw,1.25rem);border-top:1px solid var(--color-border-primary);background-color:var(--color-bg-secondary)}#publicacoes .publication-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:var(--color-accent-primary);text-decoration:none;padding:.5rem 0;transition:color .2s ease,gap .2s ease}#publicacoes .publication-link ion-icon{font-size:1.125rem;transition:transform .2s ease}#publicacoes .publication-link:hover,#publicacoes .publication-link:focus{color:var(--color-text-primary);gap:.625rem;outline:none}#publicacoes .publication-link:hover ion-icon,#publicacoes .publication-link:focus ion-icon{transform:translate(2px,-2px)}@media screen and (min-width: 768px){#publicacoes .publication-card-layout{grid-template-columns:minmax(7.5rem,9.5rem) minmax(0,1fr)}#publicacoes .publication-card-visual{border-bottom:none;border-right:1px solid var(--color-border-primary);min-height:100%}#publicacoes .publication-meta-list{flex-direction:row;flex-wrap:wrap;column-gap:1rem;row-gap:.375rem}}@media screen and (max-width: 767px){#publicacoes .publication-card-browser:hover{transform:none}}@media (prefers-reduced-motion: reduce){#publicacoes .publications-panel.reveal-on-scroll{opacity:1;transform:none}#publicacoes .publication-card-browser{transition:none}#publicacoes .publication-link ion-icon{transition:none}}#contato{scroll-margin-top:var(--nav-height, 4.5rem)}#contato .section-content{padding-left:clamp(1rem,4vw,1.5rem);padding-right:clamp(1rem,4vw,1.5rem)}#contato .section-header{margin-bottom:clamp(1rem,2.5vw,1.25rem);padding:0}#contato .section-title{font-family:var(--font-sans);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.15;margin-bottom:.5rem}#contato .section-title:after{background:var(--color-accent-primary);height:2px;width:48px}#contato .contact-panel{border:1px solid var(--color-border-primary);border-radius:12px;background-color:var(--color-bg-card);box-shadow:0 0 0 1px #22d3ee0f,0 8px 28px #0003;overflow:hidden;transition:border-color .2s ease}#contato .contact-panel:hover{border-color:var(--color-accent-primary)}#contato .contact-panel.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),border-color .2s ease}#contato .contact-panel.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}#contato .contact-panel-intro{padding:clamp(1rem,2.5vw,1.25rem);border-bottom:1px solid var(--color-border-primary);background:linear-gradient(180deg,rgba(34,211,238,.06) 0%,transparent 100%)}#contato .contact-panel-intro-text{margin:0;font-size:.875rem;line-height:1.55;color:var(--color-text-secondary)}#contato .contact-panel-intro-text strong{color:var(--color-accent-primary);font-weight:600}#contato .contact-panel-grid{display:grid;grid-template-columns:1fr}#contato .contact-group{padding:clamp(1rem,2.5vw,1.25rem);border-bottom:1px solid var(--color-border-primary)}#contato .contact-group:last-child{border-bottom:none}#contato .contact-group-title{margin:0 0 .75rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-primary)}#contato .contact-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}#contato .contact-item-link{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.625rem .75rem;border:1px solid var(--color-border-primary);border-radius:8px;background-color:var(--color-bg-secondary);color:inherit;text-decoration:none;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}#contato .contact-item-link:hover,#contato .contact-item-link:focus{border-color:var(--color-accent-primary);background-color:var(--color-accent-muted);outline:none}#contato .contact-item-link:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}#contato .contact-item--primary .contact-item-link{border-color:#22d3ee59;background-color:#22d3ee0f}#contato .contact-item-shell{display:flex;align-items:stretch;min-width:0;border:1px solid rgba(34,211,238,.35);border-radius:8px;background-color:#22d3ee0f;overflow:hidden;transition:border-color .2s ease,background-color .2s ease}#contato .contact-item-shell:hover,#contato .contact-item-shell:focus-within{border-color:var(--color-accent-primary);background-color:var(--color-accent-muted)}#contato .contact-item-link--in-shell{flex:1;min-width:0;border:none;border-radius:0;background:transparent;padding-right:.5rem}#contato .contact-item-link--in-shell:hover,#contato .contact-item-link--in-shell:focus{border:none;background:transparent}#contato .contact-item-action{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:2.75rem;margin:0;padding:0;border:none;border-left:1px solid rgba(34,211,238,.28);border-radius:0;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color .2s ease,background-color .2s ease}#contato .contact-item-action ion-icon{font-size:1.125rem}#contato .contact-item-action:hover,#contato .contact-item-action:focus-visible{color:var(--color-accent-primary);background-color:#22d3ee1f;outline:none}#contato .contact-item--social .contact-item-link{opacity:.88;background-color:var(--color-bg-primary)}#contato .contact-item--social .contact-item-value{color:var(--color-text-muted)}#contato .contact-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:8px;background-color:var(--color-accent-muted);border:1px solid var(--color-border-primary)}#contato .contact-item-icon .icon{font-size:1.125rem;line-height:1;color:var(--color-accent-primary)}#contato .contact-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}#contato .contact-item-label{font-size:.8125rem;font-weight:600;color:var(--color-text-primary);line-height:1.25}#contato .contact-item-value{font-size:.75rem;color:var(--color-text-secondary);line-height:1.4;word-break:break-word}#contato .contact-item-arrow{flex-shrink:0;font-size:1rem;color:var(--color-text-muted);transition:color .2s ease,transform .2s ease}#contato .contact-item-link:hover .contact-item-arrow,#contato .contact-item-link:focus .contact-item-arrow{color:var(--color-accent-primary);transform:translate(2px)}@media screen and (min-width: 768px){#contato.full-viewport-section{flex-direction:column;min-height:auto;align-items:stretch}#contato .section-header{margin-bottom:clamp(1.25rem,3vh,1.75rem)}#contato .section-title{font-size:clamp(2rem,3.5vw,2.75rem);margin-bottom:.625rem}#contato .section-title:after{width:56px;height:3px}#contato .section-subtitle{font-size:clamp(1rem,1.6vw,1.125rem);margin:.75rem 0 0}#contato .section-content.contact-content{display:flex;flex-direction:column;justify-content:flex-start;padding-top:clamp(.5rem,1.5vh,1rem);padding-bottom:clamp(.75rem,2vh,1.5rem)}#contato .contact-panel{display:flex;flex-direction:column;min-height:auto;border-radius:14px}#contato .contact-panel-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}#contato .contact-group{display:flex;flex-direction:column;min-height:100%;padding:clamp(1.5rem,3vw,2.25rem);border-bottom:none;border-right:1px solid var(--color-border-primary)}#contato .contact-group:last-child{border-right:none}#contato .contact-group-title{flex-shrink:0;margin-bottom:1.25rem;font-size:.9375rem;letter-spacing:.1em}#contato .contact-list{gap:1.25rem}#contato .contact-item{display:flex}#contato .contact-item-link{width:100%;min-height:6.25rem;padding:1.5rem;gap:1.25rem;border-radius:12px}#contato .contact-item-icon{width:4rem;height:4rem;border-radius:12px}#contato .contact-item-icon .icon{font-size:1.875rem}#contato .contact-item-body{gap:.5rem;justify-content:center}#contato .contact-item-label{font-size:1.125rem}#contato .contact-item-value{font-size:1rem}#contato .contact-item-arrow{font-size:1.5rem}#contato .contact-panel-intro{flex-shrink:0;padding:clamp(1.5rem,3vh,2rem) clamp(1.5rem,3vw,2.25rem)}#contato .contact-panel-intro-text{font-size:1.125rem;line-height:1.6}}@media screen and (min-width: 1024px){#contato .section-title{font-size:clamp(2.25rem,3.25vw,3rem)}#contato .section-subtitle{font-size:clamp(1.0625rem,1.4vw,1.25rem)}#contato .contact-panel{min-height:auto;border-radius:16px}#contato .contact-group{padding:2.25rem 2rem}#contato .contact-group-title{margin-bottom:1.5rem;font-size:1rem}#contato .contact-list{gap:1.5rem}#contato .contact-item-link{min-height:7.5rem;padding:1.875rem 1.75rem;gap:1.5rem;border-radius:14px}#contato .contact-item-icon{width:4.75rem;height:4.75rem;border-radius:14px}#contato .contact-item-icon .icon{font-size:2.125rem}#contato .contact-item-body{gap:.625rem}#contato .contact-item-label{font-size:1.25rem}#contato .contact-item-value{font-size:1.0625rem}#contato .contact-item-arrow{font-size:1.625rem}#contato .contact-panel-intro{padding:clamp(1.75rem,3.5vh,2.25rem) clamp(1.75rem,3vw,2.5rem)}#contato .contact-panel-intro-text{font-size:1.25rem}}@media screen and (max-width: 767px){#contato .contact-item-link:hover{transform:none}}@media (prefers-reduced-motion: reduce){#contato .contact-panel.reveal-on-scroll{opacity:1;transform:none}#contato .contact-item-link,#contato .contact-item-arrow{transition:none}}#projetos{background-color:var(--color-bg-primary);overflow:visible}#projetos .section-content{padding-top:1rem;padding-left:clamp(1rem,4vw,1.5rem);padding-right:clamp(1rem,4vw,1.5rem);overflow:visible}html:not(.dark-mode) .technology-card,html:not(.dark-mode) .projects-slider,html:not(.dark-mode) .experience-card,html:not(.dark-mode) #tecnologias .technologies-panel,html:not(.dark-mode) #contato .contact-panel,html:not(.dark-mode) #publicacoes .publication-card-browser{border:1px solid var(--color-border-primary);box-shadow:none;background-color:var(--color-bg-card)}html:not(.dark-mode) .project-language-badge,html:not(.dark-mode) .stack-pill{border-color:var(--color-border-primary)}html:not(.dark-mode) .featured-item{border-color:var(--color-border-primary);background-color:var(--color-bg-card)}html:not(.dark-mode) .featured-item-badge{background-color:#ffffffe6}html:not(.dark-mode) a{color:var(--color-accent-primary)}.dark-mode-toggle{cursor:pointer;transition:transform .3s ease}.dark-mode-toggle:hover{transform:rotate(15deg) scale(1.1)}.dark-mode .dark-mode-toggle{color:var(--color-accent-primary)}.dark-mode .loading-state p{color:var(--color-text-muted)}.dark-mode .error-state{color:var(--color-error)}.dark-mode .empty-state-content h3{color:var(--color-text-primary)}.dark-mode .empty-state-content p{color:var(--color-text-secondary)}.dark-mode .empty-state-icon{color:var(--color-text-muted)}.dark-mode .project-skeleton{background-color:var(--color-bg-secondary);border-color:var(--color-border-primary)}.dark-mode .skeleton-image,.dark-mode .skeleton-title,.dark-mode .skeleton-text,.dark-mode .skeleton-badge,.dark-mode .skeleton-button{background:linear-gradient(90deg,var(--color-bg-tertiary) 0%,var(--color-bg-secondary) 50%,var(--color-bg-tertiary) 100%)}.dark-mode .image-placeholder-wrapper{background:var(--color-bg-secondary)}.dark-mode .pagination-info{color:var(--color-text-tertiary)}.dark-mode #footer{background-color:var(--color-bg-primary);border-top-color:var(--color-border-primary)}.dark-mode .footer-content .copyright{color:var(--color-text-muted)}.hero-terminal-bar{position:relative}.hero-terminal-run{margin-left:auto;display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-family:var(--font-mono);font-weight:600;color:var(--color-accent-primary);background:#22d3ee14;border:1px solid rgba(34,211,238,.2);padding:.25rem .625rem;border-radius:4px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;flex-shrink:0;z-index:1}.hero-terminal-run:disabled{opacity:.45;cursor:wait;pointer-events:none}.hero-code-cursor{margin-left:1px}.hero-terminal-run:hover{background:var(--color-accent-primary);color:var(--color-text-inverse);border-color:var(--color-accent-primary);box-shadow:0 0 10px #22d3ee4d}.hero-terminal-run.running{background:#facc151a;color:#facc15;border-color:#facc1533;cursor:wait}.hero-terminal-run.success{background:#34d3991f;color:#34d399;border-color:#34d39959;cursor:default}.hero-terminal-run.reset{background:#f871711a;color:#f87171;border-color:#f8717133}.hero-terminal-run.reset:hover{background:#f87171;color:#fff;border-color:#f87171;box-shadow:0 0 10px #f871714d}.hero-terminal-console{border-top:1px dashed var(--color-border-primary);margin:calc(-1 * var(--hero-terminal-pad-y)) calc(-1 * var(--hero-terminal-pad-x)) 0;padding:.875rem var(--hero-terminal-pad-x) var(--hero-terminal-pad-y);box-sizing:border-box;width:auto;max-width:none;font-size:.8125rem;line-height:1.5;color:#34d399;text-align:left}.hero-terminal-console .console-line{margin:.2rem 0}.hero-terminal-console .console-prompt{color:var(--color-accent-primary);font-weight:700}.hero-terminal-console .console-input{color:var(--color-text-primary);font-weight:500}.hero-terminal-console .console-output{color:#34d399}.hero-terminal-console .console-spinner{display:inline-block;animation:console-spin 1s linear infinite;color:var(--color-accent-primary)}@keyframes console-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.hero-terminal-console .console-spinner{animation:none}}.hero-terminal-console .console-cursor{display:inline-block;width:6px;height:14px;background-color:var(--color-text-primary);animation:console-blink 1s step-end infinite;vertical-align:middle;margin-left:2px}@keyframes console-blink{0%,to{background-color:transparent}50%{background-color:var(--color-text-primary)}}.text-gradient{background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;display:inline-block;text-shadow:none!important}.logo-mark{display:inline-block;margin-right:.5rem;font-weight:700;font-size:1.05em;background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.section-title:after,#projetos .section-title:after,#tecnologias .section-title:after,#publicacoes .section-title:after,#experiencia .section-title:after,#contato .section-title:after,#sobre .section-title:after{background:var(--gradient-accent)}.dark-mode .hero-orb{opacity:.38}#hero .hero-actions .button.hero-button-primary{border:none;background:var(--gradient-accent);background-size:150% 150%;background-position:0% 50%;color:#0a0f16;transition:background-position .4s ease,box-shadow .25s ease,transform .2s ease}#hero .hero-actions .button.hero-button-primary:hover,#hero .hero-actions .button.hero-button-primary:focus-visible{background-position:100% 50%;box-shadow:0 1px 2px #00000040,0 6px 20px var(--color-shadow-accent),0 4px 14px #22d3ee4d;transform:translateY(-1px)}.projects-slider-btn{width:3rem;height:3rem;box-shadow:0 4px 16px #00000059}.projects-slider-btn ion-icon{font-size:1.375rem}.projects-slider-btn:hover:not(.is-disabled){box-shadow:0 4px 16px #00000059,0 0 12px #22d3ee40}.projects-slider-dot{width:.625rem;height:.625rem}.projects-slider-dot.active{width:1.625rem;background:var(--gradient-accent)}.featured-item{position:relative}.featured-item .featured-item-link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:inherit;background:radial-gradient(320px circle at var(--spot-x, 50%) var(--spot-y, 50%),rgba(34,211,238,.16),rgba(34,211,238,.08) 40%,transparent 65%);opacity:0;transition:opacity .3s ease;pointer-events:none}.featured-item:hover .featured-item-link:after,.featured-item:focus-within .featured-item-link:after{opacity:1}#tecnologias .technologies-list{gap:.5rem}#tecnologias .technology-item{padding:.625rem .75rem;border:1px solid var(--color-border-primary);border-radius:10px;background-color:var(--color-bg-secondary);transition:background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}#tecnologias .technology-item:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-border-secondary);transform:translateY(-2px);box-shadow:0 6px 18px #00000040}#tecnologias .technology-item-icon{width:2rem;height:2rem;border-radius:8px;background-color:#ffffff0a}#tecnologias .technology-item-icon .icon{font-size:1.25rem}#tecnologias .technology-item-icon .fa-php{color:#8f9fe8}#tecnologias .technology-item-icon .fa-laravel{color:#ff4d3d}#tecnologias .technology-item-icon .fa-vuejs{color:#42b883}#tecnologias .technology-item-icon .fa-js{color:#f7df1e}#tecnologias .technology-item-icon .fa-css3-alt{color:#38bdf8}#tecnologias .technology-item-icon .fa-python{color:#ffd43b}#tecnologias .technology-item-icon .fa-git-alt{color:#f05032}#tecnologias .technology-item-icon .fa-docker{color:#2496ed}#tecnologias .technology-item-icon .fa-whatsapp{color:#25d366}html:not(.dark-mode) #tecnologias .technology-item-icon{background-color:#0f172a0d}html:not(.dark-mode) #tecnologias .technology-item-icon .fa-php{color:#6470c4}html:not(.dark-mode) #tecnologias .technology-item-icon .fa-js{color:#b59f00}html:not(.dark-mode) #tecnologias .technology-item-icon .fa-python{color:#3776ab}#tecnologias .technology-level{display:inline-flex;align-items:center;gap:.375rem;flex-shrink:0;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--color-border-primary);background-color:#ffffff08;font-size:.6875rem;font-weight:500;letter-spacing:.02em;color:var(--color-text-secondary)}#tecnologias .technology-item[data-level=production] .technology-level{border-color:#22d3ee4d;color:var(--color-accent-primary)}@media screen and (max-width: 479px){#tecnologias .technology-level{padding:.2rem .45rem;font-size:.625rem}}#experiencia .experience-item--current .experience-card{border-top:2px solid transparent;background-image:linear-gradient(var(--color-bg-card),var(--color-bg-card)),var(--gradient-accent);background-origin:border-box;background-clip:padding-box,border-box}#experiencia .experience-timeline:before{background:linear-gradient(180deg,var(--color-accent-primary) 0%,var(--color-accent-secondary) 45%,var(--color-border-primary) 100%);opacity:.55}@media screen and (min-width: 1920px){#tecnologias .technology-item{padding:.875rem 1rem}#tecnologias .technology-item-icon{width:2.5rem;height:2.5rem}#tecnologias .technology-item-icon .icon{font-size:1.5rem}#tecnologias .technology-item-name{font-size:1rem}#tecnologias .technology-level{font-size:.8125rem;padding:.3rem .7rem}.projects-slider-btn{width:3.5rem;height:3.5rem}.projects-slider-btn ion-icon{font-size:1.625rem}}@media (prefers-reduced-motion: reduce){.featured-item .featured-item-link:after{transition:none}#hero .hero-actions .button.hero-button-primary{transition:none}#tecnologias .technology-item:hover{transform:none}}#sobre{--about-name: 1.25rem;--about-role: .875rem;--about-bio: .9375rem;--about-label: .6875rem;--about-meta: .75rem;--about-trait: .875rem;--about-proof: .8125rem;--about-pill: .75rem;--about-link: .9375rem;--about-icon: 1.05rem;--about-photo: 4.75rem;--about-pad-y: 1rem;--about-pad-x: 1rem;--about-gap: 1rem;--about-radius: 12px;scroll-margin-top:var(--nav-height, 4.5rem);min-height:auto;width:100%;box-sizing:border-box}#sobre .about-shell{width:100%;max-width:100%;margin:0;padding-left:clamp(1rem,4vw,1.5rem);padding-right:clamp(1rem,4vw,1.5rem);box-sizing:border-box}#sobre .section-header{margin-bottom:clamp(1rem,2.5vw,1.25rem);padding:0;width:100%;text-align:left}#sobre .section-title{font-family:var(--font-sans);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.15;margin-bottom:.5rem;display:block;width:100%;text-align:left}#sobre .section-title:after{left:0;transform:none;background:var(--color-accent-primary);height:2px;width:48px;border-radius:1px}#sobre .about-card{display:flex;flex-direction:column;border:1px solid var(--color-border-primary);border-radius:var(--about-radius);background-color:var(--color-bg-card);box-shadow:0 0 0 1px #22d3ee0f,0 8px 28px #0003;overflow:hidden;transition:border-color .2s ease}#sobre .about-card:hover{border-color:var(--color-accent-primary)}#sobre .about-card.reveal-on-scroll{opacity:0;transform:translateY(16px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),border-color .2s ease}#sobre .about-card.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}#sobre .about-card__lead{display:flex;flex-direction:row;align-items:flex-start;gap:var(--about-gap);padding:var(--about-pad-y) var(--about-pad-x);border-bottom:1px solid var(--color-border-primary);background:linear-gradient(180deg,rgba(34,211,238,.07) 0%,transparent 100%)}#sobre .about-card__photo{flex-shrink:0;width:var(--about-photo);height:var(--about-photo);border-radius:50%;padding:3px;border:2px solid var(--color-accent-primary);box-shadow:0 0 0 3px #22d3ee1f;background:var(--color-bg-primary);box-sizing:border-box}#sobre .about-card__photo img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}#sobre .about-card__intro{min-width:0;flex:1;display:flex;flex-direction:column;gap:.65rem}#sobre .about-card__name{margin:0;font-family:var(--font-sans);font-size:var(--about-name);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.2}#sobre .about-card__role{margin:0;font-size:var(--about-role);line-height:1.4;color:var(--color-text-secondary)}#sobre .about-card__meta{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}#sobre .about-card__meta li{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .6rem;border:1px solid var(--color-border-primary);border-radius:999px;background-color:var(--color-bg-secondary);font-size:var(--about-meta);font-weight:500;color:var(--color-text-secondary);line-height:1.2}#sobre .about-card__meta li ion-icon{font-size:.95em;color:var(--color-accent-primary)}#sobre .about-card__meta-item--available{border-color:#22d3ee59;background-color:var(--color-accent-muted);color:var(--color-text-primary)}#sobre .about-card__bio{margin:0;padding:var(--about-pad-y) var(--about-pad-x);border-bottom:1px solid var(--color-border-primary);font-family:var(--font-sans);font-size:var(--about-bio);font-weight:400;line-height:1.65;color:var(--color-text-secondary);max-width:none;width:100%;box-sizing:border-box}#sobre .about-card__traits-block{padding:var(--about-pad-y) var(--about-pad-x);border-bottom:none}#sobre .about-card__label{margin:0 0 .75rem;font-size:var(--about-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}#sobre .about-card__traits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:.85rem}#sobre .about-card__traits li{display:flex;align-items:flex-start;gap:.55rem;min-width:0}#sobre .about-card__traits ion-icon{flex-shrink:0;margin-top:.15em;font-size:var(--about-icon);color:var(--color-accent-primary)}#sobre .about-card__trait-copy{min-width:0;display:flex;flex-direction:column;gap:.2rem}#sobre .about-card__trait-title{font-size:var(--about-trait);font-weight:600;color:var(--color-text-primary);line-height:1.3}#sobre .about-card__trait-proof{margin:0;font-size:var(--about-proof);font-weight:400;line-height:1.45;color:var(--color-text-secondary)}#sobre .about-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem 1.5rem;margin-top:1.5rem;margin-bottom:.5rem;padding-inline:.15rem}#sobre .about-actions__link{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--about-link);font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:color .2s ease,gap .2s ease}#sobre .about-actions__link--primary{font-weight:700;color:var(--color-accent-primary)}#sobre .about-actions__link ion-icon{font-size:1.05em;transition:transform .2s ease}#sobre .about-actions__link:hover,#sobre .about-actions__link:focus{color:var(--color-text-primary);gap:.6rem}#sobre .about-actions__link:hover ion-icon,#sobre .about-actions__link:focus ion-icon{transform:translate(2px)}#sobre+.section-divider{margin-top:clamp(1.5rem,4vh,2.5rem);margin-bottom:clamp(2rem,5vh,3.5rem)}@media screen and (min-width: 640px){#sobre{--about-name: 1.35rem;--about-role: .9rem;--about-photo: 5.5rem;--about-pad-y: 1.15rem;--about-pad-x: 1.25rem;--about-gap: 1.15rem}#sobre .about-card__lead{align-items:center}#sobre .about-card__traits{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.25rem}}@media screen and (min-width: 768px){#sobre{--about-bio: 1rem;--about-trait: .9rem;--about-proof: .85rem;--about-pill: .8rem}}@media screen and (min-width: 1024px){#sobre{--about-name: 1.5rem;--about-role: .95rem;--about-bio: 1.05rem;--about-label: .72rem;--about-meta: .8rem;--about-trait: .95rem;--about-proof: .875rem;--about-pill: .85rem;--about-link: 1rem;--about-icon: 1.1rem;--about-photo: 6.25rem;--about-pad-y: 1.35rem;--about-pad-x: 1.75rem;--about-gap: 1.25rem}#sobre .about-card__photo{box-shadow:0 0 0 4px #22d3ee1f}#sobre .about-card__traits{gap:1rem 1.75rem}#sobre .about-actions{margin-top:1.75rem}}@media screen and (min-width: 1440px){#sobre{--about-name: 1.65rem;--about-role: 1rem;--about-bio: 1.1rem;--about-label: .75rem;--about-trait: 1rem;--about-proof: .9rem;--about-pill: .9rem;--about-link: 1.05rem;--about-icon: 1.15rem;--about-photo: 7rem;--about-pad-y: 1.5rem;--about-pad-x: 2rem;--about-gap: 1.5rem;--about-radius: 14px}#sobre .about-card__lead{flex-direction:row;align-items:center}#sobre .about-card__traits{gap:1.1rem 2rem}}@media screen and (min-width: 1920px){#sobre{--about-name: 1.85rem;--about-role: 1.1rem;--about-bio: 1.175rem;--about-label: .8125rem;--about-meta: .875rem;--about-trait: 1.05rem;--about-proof: .95rem;--about-pill: .95rem;--about-link: 1.1rem;--about-icon: 1.2rem;--about-photo: 8rem;--about-pad-y: 1.75rem;--about-pad-x: 2.5rem;--about-gap: 1.65rem;--about-radius: 16px}#sobre .about-card__bio{line-height:1.7}#sobre .about-card__meta li{padding:.4rem .8rem}#sobre .about-card__traits{gap:1.25rem 2.25rem}}@media (prefers-reduced-motion: reduce){#sobre .about-card.reveal-on-scroll{opacity:1;transform:none;transition:border-color .2s ease}#sobre .about-actions__link:hover ion-icon,#sobre .about-actions__link:focus ion-icon{transform:none}}html:not(.dark-mode) #sobre .about-card{border:1px solid var(--color-border-primary);background-color:var(--color-bg-card);box-shadow:0 8px 24px #0f172a0f}html:not(.dark-mode) #sobre .about-card__lead{background:linear-gradient(180deg,rgba(8,145,178,.06) 0%,transparent 100%)}
