@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;max-width:100%;min-height:100svh;font-family:sans-serif sf-pro-display,sans-serif;display:flex}body{margin:0}h1,h2{font-optical-sizing:auto;color:var(--text-h);font-family:Lora,serif;font-weight:500}@media (width<=1024px){h1{font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}b{font-family:Cormorant Garamond,serif;font-weight:700}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.dropping-texts{letter-spacing:4px;justify-content:center;align-items:center;height:50px;font-size:32px;font-weight:700;transition:color .4s;display:flex;overflow:hidden}.dropping-word{display:flex}.dropping-text{opacity:0;animation:.5s ease-out forwards drop;display:inline-block;transform:translateY(-100%)}@keyframes drop{0%{opacity:0;transform:translateY(-100%)}70%{opacity:1;transform:translateY(10%)}to{opacity:1;transform:translateY(0)}}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px}}.main-hero{width:100vw;height:100vh;padding:50px}.moving-background-container{background-color:#fafafa;align-items:center;width:100%;min-height:100vh;position:sticky;overflow:hidden}.logo-hero{opacity:.1;mix-blend-mode:multiply;pointer-events:none;-webkit-user-select:none;user-select:none;width:650px;height:auto;position:absolute;top:50%;left:75%;transform:translate(-50%,-50%)}.nav-bar{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;padding:20px;display:flex}.nav-links{flex-direction:row;justify-content:space-between;align-items:center;gap:20px;width:100%;margin:0;display:flex}.logo-contanier{flex-direction:row;align-items:center;gap:20px;width:100%;margin:0;display:flex}.logo-contanier p{color:#606060;padding-top:4px;font-family:Lora,serif;font-size:16px;font-weight:700}.logo-text{flex-direction:column;align-items:start;display:flex}.logo-img{border-right:#333;width:auto;height:60px;display:block}.logo-img:hover{transition:transform .3s ease-in-out;transform:scale(1.1)}.menu{color:#333;align-items:center;gap:32px;margin:0;padding:0;font-size:16px;display:flex}.nav-links-container{color:#333;flex-direction:row;align-items:center;gap:32px;margin:0;padding:0;font-size:16px;display:flex}.nav-links a{color:#000;cursor:pointer;letter-spacing:.6px;margin:0;font-family:Lora,serif;font-size:16px;text-decoration:none}.nav-links a:hover{color:#8fbc8f}.nav-links button{cursor:pointer;border:none;border-radius:5px;padding:10px 20px;font-size:16px}@media (width<=768px){.nav-bar{padding:12px 16px}.nav-links{flex-direction:column;align-items:flex-start;gap:12px}.logo-contanier{gap:12px}.logo-img{height:44px}.logo-contanier p{font-size:14px}.nav-links-container{justify-content:space-between;gap:16px;width:100%}.nav-links a{font-size:15px}.nav-links button{padding:8px 14px;font-size:14px}}@media (width<=400px){.logo-img{height:38px}.logo-contanier p{font-size:13px}.nav-links-container{gap:12px}.nav-links button{padding:8px 10px}}.hero-text-title{color:#000;text-align:justify;text-justify:inter-word;flex-direction:column;justify-content:center;padding:40px 40px 60px;font-size:40px;line-height:1.5;display:flex}.hero-text-title h1{padding-bottom:40px}.hero-text-title p{color:#606060;padding-bottom:20px;font-family:Lora,serif;font-size:22px;line-height:1.5}.hero-text{color:#606060;font-family:Lora,serif;font-size:24px;line-height:1.5}.logo{object-fit:cover;border-radius:50%;width:60px;height:60px}.explore-button{flex-direction:row;align-items:center;gap:10px;display:flex}.explore-button p{color:#606060;font-family:Lora,serif;line-height:1.5}.bottone1{text-align:center;cursor:pointer;background:#e6e0d6;border:none;border-radius:12px;flex-direction:row;align-items:center;padding:16px 40px;font-family:Lora,serif;font-size:18px;transition:all .4s;display:flex}.bottone1 p{color:#000;margin-right:6px}.bottone1 svg{color:#606060;width:24px;height:auto}.bottone1:hover{box-shadow:7px 5px 56px -14px #c6d5da}.bottone1:active{transform:scale(.97);box-shadow:7px 5px 56px -10px #8fbc8f}.scroll-text{color:#fff;font-size:20px;font-weight:150}.scroll-button{color:#fff;cursor:pointer;background-color:#c6d5da;border:none;border-radius:5px;padding:10px 20px;position:absolute;left:50%;transform:translate(-50%)}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-20px)}to{transform:translateY(0)}}@media (width<=1024px){.logo-hero{width:480px}.hero-text-title{padding:32px 32px 48px}.hero-text-title h1{padding-bottom:32px;font-size:60px}.main-hero{padding:30px}.moving-background-container>div>.explore-button{padding:0 32px!important}}@media (width<=768px){.moving-background-container{min-height:100svh}.logo-hero{width:min(340px,88vw);top:76%;left:50%}.hero-text-title{padding:24px 20px 36px}.hero-text-title h1{padding-bottom:24px;font-size:40px;line-height:1.25}.hero-text-title p{padding-bottom:16px;font-size:18px}.hero-text{font-size:18px}.main-hero{padding:20px}.moving-background-container>div>.explore-button{flex-wrap:wrap;gap:12px;padding:0 20px!important}.moving-background-container>div>.explore-button .bottone1{padding:14px 28px;font-size:16px}.moving-background-container>div>.explore-button>p{font-size:14px!important}}@media (width<=400px){.logo-hero{width:85vw}.hero-text-title h1{font-size:32px}.hero-text-title p,.hero-text{font-size:16px}.moving-background-container>div>.explore-button .bottone1{padding:12px 22px;font-size:15px}}:root{--resume-text:#161616;--resume-rule:#e5e5e5;--resume-link:#6b7aa6}@media (prefers-color-scheme:dark){:root{--resume-bg:#161616;--resume-text:#f2f2f2;--resume-rule:#2e2e2e;--resume-link:#9aa8d4}}body{background:var(--resume-bg);margin:0}.resume{box-sizing:border-box;background:var(--resume-bg);max-width:1480px;color:var(--resume-text);text-align:left;margin:0 auto;padding:0 72px 80px;font-family:Lora,serif;font-size:18px;line-height:23px}.about{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:48px;padding-top:60px;display:grid}.about__title{margin:0 0 14px;font-size:20px;font-weight:200;line-height:28px}.about__text p{max-width:670px;margin:0 0 16px}.about__text p a{color:#5f72ab;text-decoration:none}.about__link:hover,.about__link:focus-visible{text-decoration:underline}.about__photo{aspect-ratio:673/676;object-fit:cover;width:80%;height:auto;margin-bottom:32px;display:block}.resume__grid{border-top:1px solid var(--resume-rule);grid-template-columns:repeat(4,minmax(0,1fr));gap:0 48px;margin-top:0;padding-top:62px;display:grid}.resume__col{min-width:0;margin-bottom:32px;padding-right:24px}.resume__heading{margin:0 0 14px;font-size:20px;font-weight:400;line-height:28px}.resume__group{margin-bottom:25px}.resume__group:last-child{margin-bottom:0}.resume__line{margin:0;font-size:16px;font-weight:200}@media (width<=960px){.resume{padding:0 40px 64px}.about{grid-template-columns:1fr;gap:32px;margin-bottom:48px;padding-top:40px}.resume__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 40px;padding-top:48px}}@media (width<=560px){.resume{padding:0 24px 48px}.about{margin-bottom:40px;padding-top:28px}.resume__grid{grid-template-columns:1fr;gap:40px;padding-top:32px}}*{box-sizing:border-box;margin:0;padding:0}body{color:#fff;background:#fafafa;min-height:100vh;font-family:Fredoka,system-ui,-apple-system,sans-serif}.projects-wrapper{flex-direction:column;align-items:center;gap:80px;padding:60px 20px;display:flex;position:relative}.project-card{background:linear-gradient(145deg, color-mix(in srgb, var(--project-color) 90%, transparent), #a4a3a3cc 100%,#f8f4e8cc 100%);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff0d;border-top:1px solid color-mix(in srgb, var(--project-color) 40%, transparent);border-radius:24px;flex-direction:column;width:100%;max-width:1400px;padding:40px 30px;display:flex;position:relative;box-shadow:0 20px 50px #00000080,inset 0 1px 1px #ffffff1a}.project-upper-level{flex-direction:column;gap:40px;width:100%;display:flex}.project-text{flex-direction:column;justify-content:center;align-items:flex-start;gap:20px;width:100%;min-width:0;display:flex}.project_image-div{justify-content:flex-start;display:flex}.project_image{object-fit:contain;border-radius:8px;width:200px;height:auto}.project-text-title p{letter-spacing:-.5px;-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#fff,#ffffffb3);-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:400;line-height:1.1}.project-text-description p{color:#efefef;max-width:90%;font-size:1.2rem;line-height:1.6}.project-skill{width:100%;margin-top:10px}.project-text-skill{color:#efefef;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:12px;font-size:.9rem;font-weight:600}.project-skill-list ul{flex-wrap:wrap;gap:12px;list-style:none;display:flex}.project-skill-list ul div{display:contents}.project-skill-list li{cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:22px;justify-content:center;align-items:center;gap:8px;min-width:44px;height:44px;padding:0 12px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.project-skill-list li:hover{background:color-mix(in srgb, var(--project-color) 20%, #ffffff1a);border-color:color-mix(in srgb, var(--project-color) 50%, transparent);padding:0 20px;transform:translateY(-2px)}.project-skill-list li .icon{color:#fff;align-items:center;font-size:1.2rem;display:flex}.project-skill-list li .title{color:#fff;white-space:nowrap;opacity:0;max-width:0;font-size:.9rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.project-skill-list li:hover .title{opacity:1;max-width:100px}.project-upper-level-left{flex-direction:column;justify-content:center;align-items:center;gap:20px;width:100%;min-width:0;display:flex}project-txt{flex-direction:column;gap:20px;width:100%;display:flex}.image-crousel-view{border-radius:16px;width:100%;padding:8px}.image-crousel-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex-direction:row;gap:16px;padding-bottom:12px;display:flex;overflow:auto hidden}.image-crousel-track::-webkit-scrollbar{height:6px}.image-crousel-track::-webkit-scrollbar-track{background:0 0}.image-crousel-track::-webkit-scrollbar-thumb{background:#fff3;border-radius:6px}.image-crousel-track::-webkit-scrollbar-thumb:hover{background:var(--project-color)}.image-crousel-once{object-fit:cover;width:auto;height:100%;display:block}@media (width>=1025px){.project-card{padding:60px}.project-upper-level{flex-direction:row;align-items:center;gap:60px}.project-text{flex:1;order:1}.project-upper-level-left{flex:1.2;order:2}.project-text-title p{font-size:2 rem}}#next-steps{text-align:left;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex;position:relative}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#next-steps ul{flex-direction:row;gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul a{color:var(--text-h);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{color:#638263;width:24px;height:24px}#next-steps ul #docs{border-right:1px solid var(--border)}@media (width<=1024px){#next-steps ul #docs{border-right:none;border-bottom:1px solid var(--border)}}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}.contact-section{z-index:10;background-color:#f9f9f9;border-radius:8px;align-content:center;align-items:center;max-width:100vw;min-height:65vh;margin:20px;padding:16px;position:relative;box-shadow:0 4px 8px #0000001a}.contact-container{z-index:10;flex-direction:column;align-items:center;padding-top:40px;display:flex;position:relative}.contact-section h2{text-align:center;margin-bottom:16px;font-family:Cormorant Garamond;font-size:32px}.email-input{flex-direction:column;place-content:center;align-items:flex-start;gap:8px;width:35vw;margin-bottom:16px;display:flex}.email-input ::placeholder{font-family:Cormorant Garamond;font-size:16px}.email-label{flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-bottom:16px;font-family:Cormorant Garamond;font-size:24px;display:flex}.email-input h5{color:var(--text-h);margin:0;font-family:Cormorant Garamond;font-size:22px;font-weight:700}.email-input input{color:#535252;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;width:100%;padding:8px;font:600 16px Cormorant Garamond}.message-label{align-content:start;align-items:start;width:35vw}.text-area-div{flex-direction:column;place-content:center;align-items:center;gap:8px;width:100%;margin-bottom:16px;display:flex}.text-area-div h5{color:var(--text-h);place-content:center;align-items:flex-start;margin-bottom:8px;font-family:Cormorant Garamond;font-size:24px}.text-area-div textarea{font-family:"";font-size:16px}.contact-section textarea{width:35vw;font-size:14px;font:lightgray;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;padding:8px;font-family:Cormorant Garamond;font-size:12px}.contact-section button{color:#fff;cursor:pointer;background-color:#8fbc8f;border:none;border-radius:4px;width:35vw;padding:10px 20px;font-size:16px}.contact-section button:hover{background-color:#638263}.submit-btn-div{justify-content:center;align-items:center;display:flex}@media (width<=768px){.contact-section{margin:16px auto;padding:12px}.email-input,.contact-section textarea,.contact-section button{width:100%}}@property --color{syntax:"<color>";inherits:true;initial-value:#8fbc8f}body{--color:darkseagreen5;background:#f9f9f9;margin:0;padding:0;animation:20s ease-in-out infinite color-change}.test{z-index:1;background:hsl(from var(--color) h s calc(l - 5));width:100%;height:100%;clip-path:shape(from 0% 100%, line to 0% 40%, arc by 50% 10% of 50% cw, arc by 50% 10% of 50%, line to 100% 100%, close);animation:10s ease-in-out infinite wave;position:absolute;top:0;left:0}.test:before,.test:after{content:"";width:100%;height:100%;position:absolute;top:0;left:0}.test:before{z-index:-2;background:var(--color);clip-path:shape(from 0% 100%, line to 0% 50%, arc by 50% 10% of 80% cw, arc by 50% 10% of 80%, line to 100% 100%, close);animation:10s ease-in-out infinite wave-2}.test:after{z-index:-1;background:hsl(from var(--color) h s calc(l + 5));clip-path:shape(from 0% 100%, line to 0% 60%, arc by 70% 15% of 100% cw, arc by 30% 15% of 100%, line to 100% 100%, close);animation:10s ease-in-out infinite wave-3}@keyframes color-change{33%{--color:#124c74}66%{--color:#52591f}}@keyframes wave{50%{clip-path:shape(from 0% 100%, line to 0% 42%, arc by 50% 10% of 45% cw, arc by 50% 10% of 45%, line to 100% 100%, close)}}@keyframes wave-2{50%{clip-path:shape(from 0% 100%, line to 0% 48%, arc by 50% 10% of 70% cw, arc by 50% 10% of 70%, line to 100% 100%, close)}}@keyframes wave-3{50%{clip-path:shape(from 0% 100%, line to 0% 61%, arc by 50% 15% of 92% cw, arc by 50% 15% of 92%, line to 100% 100%, close)}}.project-section{flex-direction:column;display:flex}.project{--project-bg:#fff;--project-text:#161616;--project-card:#f3f1ee;--project-rule:#e5e5e5;box-sizing:border-box;background:var(--project-bg);max-width:100vw;color:var(--project-text);flex-direction:row;width:100%;font-size:16px;line-height:23px;display:flex;overflow:hidden}@media (prefers-color-scheme:dark){.project{--project-bg:#161616;--project-text:#f2f2f2;--project-rule:#2e2e2e;--project-card:#232323}}.project__container{flex-direction:column;flex:0 0 350px;align-items:center;gap:24px;padding:40px 30px 0;display:flex}.project__back{color:#9aa8d4,;font-size:14px}.project__logo-box{aspect-ratio:1;box-sizing:border-box;background:var(--project-bg);width:100%;max-width:250px;box-shadow:#e5e5e5;border:1px solid #f2f2f2;border-radius:12px;justify-content:center;align-items:center;padding:24px;display:flex}.project__logo{object-fit:contain;max-width:100%;max-height:100%}.project__skill-groups{align-items:start;margin:0 18px}.project__skills{flex-flow:wrap;gap:16px;margin:0;padding:0;list-style:none;display:flex}.project__skill{border:1px solid var(--project-rule);border-radius:999px;align-items:center;gap:6px;padding:8px 16px;line-height:20px;display:inline-flex}.project__skill-group{padding-top:24px}.project__skill-title{color:#b9b9b9;text-align:start;margin-top:8px;font-size:14px;font-weight:200}.project__skill-icon,.project__skill>svg{object-fit:contain;width:22px;height:22px;color:var(--project-text);flex:none}.project__skill span{color:var(--project-text),;font-size:16px;font-weight:400}.project__content{flex:1 1 0;min-width:0}.image-crousel-view{width:90%;max-width:100%;padding-top:24px;overflow:hidden}.image-crousel-track{scroll-snap-type:x proximity;gap:16px;width:100%;padding-bottom:12px;display:flex;overflow:auto hidden}.image-crousel{scroll-snap-align:start;flex:none}.image-crousel-once{border-radius:16px;width:auto;max-width:none;height:500px;display:block}.project__title{max-width:310px;margin:0;font-size:18px;font-weight:400;line-height:28px}.project__grid{border-bottom:1px solid var(--project-rule);grid-template-columns:repeat(3,minmax(0,310px));gap:0 68px;margin-top:48px;padding-bottom:48px;display:grid}.project__col{flex-direction:column;gap:24px;max-width:310px;display:flex}.project__heading{max-width:250px;margin:0 0 14px;font-family:Lora,serif;font-size:18px;font-weight:800;line-height:28px}.project__body{text-align:left;text-justify:inter-word;max-width:250px;margin:0;font-family:Lora,serif;font-size:16px;font-weight:600}@media (width<=860px){.project{flex-direction:column}.project__container{flex:none;padding:40px 24px 0}.project__content{padding:0 24px}.image-crousel-once{height:360px}.project__grid{grid-template-columns:1fr;gap:32px;margin-top:40px;padding-bottom:56px}.project__body{max-width:520px}}@media (width<=560px){.project__container,.project__content{padding-left:16px;padding-right:16px}.image-crousel-once{height:280px}}@font-face{font-family:Cormorant Garamond;src:url(/assets/CormorantGaramond-allweb-B4Q5m-X8.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Roboto-athar;src:url(/assets/Roboto-athar-CTnIOZTo.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:VarelaRound-Regular-methaq;src:url(/assets/VarelaRound-Regular-methaq-DYiuKy-y.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Kalam-wasabi;src:url(/assets/Kalam-wasabi-eH010FEw.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:ArchivoBlack-jip;src:url(/assets/ArchivoBlack-jip-CrNC9wvr.ttf)format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Lora;src:url(/assets/Lora-Jr-ptgqq.ttf)format("truetype");font-weight:400;font-style:normal}:root{--pg-bg:#fcfcfc;--pg-text:#15171a;--pg-muted:#7a7f87;--pg-border:#dfe3e8;--pg-radius:20px;--pg-gap:8px}@media (prefers-color-scheme:dark){:root{--pg-bg:#121316;--pg-text:#f1f2f4;--pg-muted:#8f959e;--pg-border:#2a2d33}}.project-gallery{column-count:2;align-items:center;column-gap:var(--pg-gap);color:var(--pg-text);margin:45px;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;list-style:none}.project-gallery li{break-inside:avoid;width:90%;margin-bottom:40px}.project-card-gallery{break-inside:avoid;flex-direction:column;min-width:0;margin:0 0 40px;display:flex}.project-card__link{color:inherit;border-radius:var(--pg-radius);text-decoration:none;display:block}.project-card__link:focus-visible{outline:3px solid var(--pg-text);outline-offset:6px}.project-card__media{border:1px solid var(--pg-border);border-radius:var(--pg-radius);background-color:var(--pg-border);color:inherit;text-decoration:none;display:block;position:relative;overflow:hidden}.project-card__image{break-inside:avoid;width:100%;height:auto;transition:transform .45s;display:block}.project-card__media:focus-visible,.project-card__button:focus-visible{outline:3px solid var(--pg-text);outline-offset:4px}.project-card__media:hover .project-card__image,.project-card__media:focus-visible .project-card__image{transform:scale(1.04)}.project-card__arrow{background:var(--pg-muted);width:38px;height:38px;color:var(--pg-bg);opacity:0;pointer-events:none;border-radius:50%;place-items:center;transition:opacity .25s,transform .25s;display:grid;position:absolute;bottom:14px;right:14px;transform:translate(-6px,6px)}.project-card__media:hover .project-card__arrow,.project-card__media:focus-visible .project-card__arrow{opacity:1;transform:translate(0)}.project-card__footer{justify-content:space-between;align-items:center;gap:16px;max-width:100%;margin-top:16px;display:flex}.project-card__text{min-width:0}.project-card__title{letter-spacing:-.01em;-webkit-line-clamp:2;line-clamp:2;margin:16px 0 4px;padding-left:12px;font-size:1.25rem;font-weight:600;line-height:1.3;display:-webkit-box}.project-card__role{color:var(--pg-muted);-webkit-line-clamp:2;line-clamp:2;margin:0;padding-left:12px;font-size:1rem;line-height:1.4;display:-webkit-box}.project-card__button{border:1px solid var(--pg-text);color:var(--pg-text);white-space:nowrap;border-radius:18px;flex-shrink:0;padding:10px 18px;font-size:14px;font-weight:400;text-decoration:none;transition:background-color .2s,color .2s}.project-card__button:hover{background:var(--pg-text);color:var(--pg-bg)}.project-card__link .project-card__image{transition:transform .4s}.project-card__link:hover .project-card__image{transform:scale(1.03)}@media (prefers-reduced-motion:reduce){.project-card__image,.project-card__arrow,.project-card__button{transition:none}.project-card__media:hover .project-card__image,.project-card__media:focus-visible .project-card__image{transform:none}}.project-gallery__message{color:var(--pg-muted);font-family:Inter,system-ui,sans-serif}@media (width<=640px){.project-gallery{column-count:1}}
