.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.footer-root[data-astro-cid-sz7xmlte]{background:var(--bg-color);color:var(--text-color);padding-top:60px;border-top:1px solid var(--border-color);position:relative}.footer-root[data-astro-cid-sz7xmlte] a{color:inherit!important;text-decoration-color:currentColor}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:2fr 1fr 1fr;gap:4rem;margin-bottom:40px}.footer-col[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:flex-start}.footer-logo[data-astro-cid-sz7xmlte]{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;text-decoration:none;color:var(--text-color);margin-bottom:1.5rem;display:inline-block}.footer-logo[data-astro-cid-sz7xmlte] span[data-astro-cid-sz7xmlte]{background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.footer-tagline[data-astro-cid-sz7xmlte]{color:var(--text-secondary-color);font-size:.95rem;line-height:1.6;max-width:320px;margin-bottom:2rem}.social-links[data-astro-cid-sz7xmlte]{display:flex;gap:1.25rem}.social-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-color);font-size:1.25rem;transition:all .3s ease;opacity:.6}.social-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{opacity:1;color:var(--accent-color-start);transform:translateY(-3px)}.footer-title[data-astro-cid-sz7xmlte]{font-family:var(--font-heading);font-size:1.1rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-color);text-align:left}.footer-nav[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.footer-nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-secondary-color);text-decoration:none;font-size:.95rem;transition:all .3s ease}.footer-nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text-color);transform:translate(5px)}.footer-bottom[data-astro-cid-sz7xmlte]{padding:30px 0;border-top:1px solid var(--border-color);margin-top:40px}.footer-bottom-content[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;gap:2rem}.copyright[data-astro-cid-sz7xmlte]{font-size:.85rem;color:var(--text-secondary-color);opacity:.6;margin:0;text-align:left;white-space:nowrap}.footer-signature[data-astro-cid-sz7xmlte]{flex-shrink:0}.footer-geo-section[data-astro-cid-sz7xmlte]{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color);text-align:center}.footer-geo-section[data-astro-cid-sz7xmlte] .footer-title[data-astro-cid-sz7xmlte]{text-align:center;width:100%}.geo-links-row[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:center}.geo-tag[data-astro-cid-sz7xmlte]{font-size:.85rem;color:var(--text-secondary-color);opacity:.6;cursor:default;transition:opacity .3s ease}.geo-tag[data-astro-cid-sz7xmlte]:hover{opacity:1}.footer-signature[data-astro-cid-sz7xmlte] .w-full{padding:0!important;text-align:right!important}@media(max-width:992px){.footer-bottom-content[data-astro-cid-sz7xmlte]{flex-direction:column;gap:1.5rem;text-align:center}.copyright[data-astro-cid-sz7xmlte]{text-align:center;white-space:normal}.footer-signature[data-astro-cid-sz7xmlte] .w-full{text-align:center!important}}@media(max-width:992px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr;gap:3rem}.brand-col[data-astro-cid-sz7xmlte]{grid-column:span 2}}@media(max-width:640px){.footer-root[data-astro-cid-sz7xmlte]{padding-top:60px}.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:3rem;text-align:center}.footer-col[data-astro-cid-sz7xmlte],.footer-nav[data-astro-cid-sz7xmlte]{align-items:center}.footer-title[data-astro-cid-sz7xmlte]{text-align:center}.brand-col[data-astro-cid-sz7xmlte]{grid-column:span 1}.footer-tagline[data-astro-cid-sz7xmlte]{max-width:100%}.social-links[data-astro-cid-sz7xmlte]{justify-content:center}.footer-nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{transform:translateY(-2px)}}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/sora-latin-ext-wght-normal.CawQDOvP.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/sora-latin-wght-normal.DdqRvwsR.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-vietnamese-wght-normal.qRpaaN48.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-ext-wght-normal.DmpS2jIq.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-wght-normal.eXO_dkmS.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-cyrillic-400-normal.BEIGL1Tu.woff2) format("woff2"),url(/_astro/jetbrains-mono-cyrillic-400-normal.ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-greek-400-normal.C190GLew.woff2) format("woff2"),url(/_astro/jetbrains-mono-greek-400-normal.B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/_astro/jetbrains-mono-vietnamese-400-normal.CqNFfHCs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-ext-400-normal.Bc8Ftmh3.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-ext-400-normal.fXTG6kC5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-400-normal.6-qcROiO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-color);line-height:1.6;overflow-x:hidden;transition:background-color .4s cubic-bezier(.4,0,.2,1),color .4s cubic-bezier(.4,0,.2,1);overflow-wrap:break-word;word-wrap:break-word}body.modal-open{overflow:hidden!important}body::-webkit-scrollbar{width:6px}body::-webkit-scrollbar-track{background:var(--bg-color)}body::-webkit-scrollbar-thumb{background:var(--accent-color-start);border-radius:10px}::selection{background:rgba(var(--accent-color-start-rgb),.3);color:var(--text-color)}.container{max-width:1200px;margin:0 auto;padding:0 20px;position:relative;z-index:2}section{padding:120px 0;position:relative}.section-title,.gradient-text{transition:color .3s}.section-title{text-align:center;font-size:clamp(2.5rem,5vw,3.5rem);margin-bottom:1.5rem;font-weight:800;color:var(--text-color);font-family:var(--font-heading);letter-spacing:-.03em}.gradient-text{background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.section-subtitle{text-align:center;font-size:1.2rem;max-width:700px;margin:0 auto 4rem;color:var(--text-secondary-color)}.fade-in{opacity:0;transform:translateY(40px);transition:opacity .8s ease-out,transform .8s ease-out}.fade-in.visible{opacity:1;transform:translateY(0)}.form-control{display:block;font-size:.85rem;font-weight:600;margin-bottom:.5rem;color:var(--text-secondary-color)}.form-control{width:100%;padding:12px 16px;background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;color:var(--text-color);font-family:var(--font-body);font-size:1rem;transition:all .3s ease}.form-control:focus{outline:none;border-color:var(--accent-color-start);box-shadow:0 0 0 4px rgba(var(--accent-color-start-rgb),.1)}.error-field{border-color:#ef4444!important}.checkbox-wrapper{display:flex;gap:.75rem}.custom-checkbox{width:20px;height:20px;appearance:none;background:var(--bg-color);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;position:relative;transition:all .2s ease;flex-shrink:0;margin-top:2px}.custom-checkbox:checked{background:var(--accent-color-start);border-color:var(--accent-color-start)}.custom-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#000;font-size:12px;font-weight:900}.checkbox-label{font-size:.85rem;color:var(--text-secondary-color);line-height:1.5}.checkbox-label a{color:var(--text-color);text-decoration:underline;text-decoration-color:rgba(var(--accent-color-start-rgb),.3)}.checkbox-label a:hover{color:var(--accent-color-start)}.error-text{color:#ef4444;font-size:.8rem;margin-top:1rem;text-align:center}.hidden{display:none!important}.light-theme .form-control{background-color:#f1f3f5;border-color:#ced4da}.error-field,body .form-control.error-field{border-color:#dc3545!important;background-color:#dc35450d!important;box-shadow:0 0 0 4px #dc354526;animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}header{position:fixed;top:1.25rem;left:50%;transform:translate(-50%);width:auto;padding:.5rem .75rem;z-index:1005;background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:9999px;box-shadow:0 10px 40px #0000004d;transition:all .4s cubic-bezier(.165,.84,.44,1);max-width:min(1200px,calc(100% - 2.5rem))}.dark-theme header{box-shadow:0 20px 50px #00000080,inset 0 1px #ffffff1a}header.scrolled{top:.75rem;padding:.4rem .6rem;box-shadow:0 15px 50px #0006}nav{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:0 1rem}.logo{font-size:1.25rem;font-weight:800;text-decoration:none;color:var(--text-color);display:flex;align-items:center;gap:10px}.logo-img{height:32px;width:auto}.logo-text{font-size:1.25rem;font-weight:800;line-height:1;font-family:var(--font-heading);letter-spacing:-.02em}.logo span{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{list-style:none;display:flex;align-items:center;background:#ffffff08;padding:.25rem;border-radius:9999px;border:1px solid rgba(255,255,255,.05)}.nav-links li{margin:0}.nav-links a{color:var(--text-secondary-color);text-decoration:none;font-size:.9rem;font-weight:600;padding:.5rem 1rem;border-radius:9999px;transition:all .3s ease;white-space:nowrap}.nav-links a:hover{color:var(--text-color);background:#ffffff14}.controls{display:flex;align-items:center;gap:.75rem}.control-btn{background:none;border:none;color:var(--text-secondary-color);font-size:1.2rem;cursor:pointer;transition:color .3s;padding:.5rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.control-btn:hover{color:var(--text-color)}.lang-switcher{display:flex;align-items:center;background:var(--primary-color);border-radius:9999px;padding:3px;border:1px solid var(--glass-border);transition:background-color .3s,border-color .3s}.lang-btn{background:none;border:none;cursor:pointer;font-family:Inter,sans-serif;font-weight:500;font-size:1rem;color:var(--text-secondary-color);transition:color .3s,background-color .3s,font-weight .3s;padding:.5rem .8rem;border-radius:9999px}.lang-btn.active{font-weight:700;background-color:var(--accent-color-start);color:#0d0d0d;box-shadow:0 0 8px #ff8c0066}.lang-btn:hover:not(.active){color:var(--text-color)}.lang-separator{color:var(--text-secondary-color);margin:0 .2rem;font-size:1rem;transition:color .3s}.burger-menu{display:none;flex-direction:column;justify-content:space-between;width:30px;height:20px;background:none;border:none;cursor:pointer;padding:0;z-index:2001;position:relative}.burger-menu div{width:100%;height:2px;background-color:var(--text-color);transition:all .3s cubic-bezier(.4,0,.2,1)}.burger-menu.open div:nth-child(1){transform:translateY(9px) rotate(45deg)}.burger-menu.open div:nth-child(2){opacity:0}.burger-menu.open div:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.mobile-nav{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:fixed;top:80px;right:50%;transform:translate(50%) translateY(-20px);width:min(calc(100% - 40px),320px);height:auto;max-height:calc(100vh - 100px);background-color:var(--glass-bg);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--glass-border);border-radius:24px;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.165,.84,.44,1);z-index:2000;padding:24px;box-shadow:0 20px 50px #0003;overflow-y:auto}.mobile-nav.open{opacity:1;visibility:visible;transform:translate(50%) translateY(0)}.mobile-nav-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);z-index:1999;opacity:0;visibility:hidden;transition:all .3s ease}.mobile-nav-overlay.visible{opacity:1;visibility:visible}.dark-theme .mobile-nav{background-color:#11111ae6;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);box-shadow:0 25px 60px #00000080}.light-theme .mobile-nav{background-color:#ffffffe6;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);box-shadow:0 20px 50px #00000026}.mobile-nav ul{list-style:none;padding:0;margin:0;text-align:center}.mobile-nav li{margin:.5rem 0;transform:translateY(10px);opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.mobile-nav.open li{transform:translateY(0);opacity:1}.mobile-nav li:nth-child(1){transition-delay:.1s}.mobile-nav li:nth-child(2){transition-delay:.15s}.mobile-nav li:nth-child(3){transition-delay:.2s}.mobile-nav li:nth-child(4){transition-delay:.25s}.mobile-nav li:nth-child(5){transition-delay:.3s}.mobile-nav li:nth-child(6){transition-delay:.35s}.mobile-nav a{color:var(--text-color);font-size:1.1rem;text-decoration:none;font-family:var(--font-heading);font-weight:600;transition:color .3s ease;display:block;padding:.5rem 1rem;border-radius:12px;background:transparent}.mobile-nav a:hover{background:var(--tag-bg);color:var(--text-color)}.mobile-controls{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1rem;width:100%;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color);opacity:0;transform:translateY(10px);transition:all .3s cubic-bezier(.165,.84,.44,1) .2s}.mobile-nav.open .mobile-controls{opacity:1;transform:translateY(0)}.mobile-nav .lang-switcher{padding:.5rem 1rem;background:var(--tag-bg)}.mobile-nav .theme-switcher{width:50px;height:50px;font-size:1.5rem;background:var(--tag-bg);border:1px solid var(--glass-border)}#hero{min-height:100vh;display:flex;align-items:center;padding-top:80px;overflow:hidden}#particles-js{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-content{display:flex;align-items:center;justify-content:center;text-align:center;width:100%}.hero-text{max-width:800px}.hero-text h1{font-size:4.5rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem;color:var(--text-color)}.hero-text p{font-size:1.3rem;color:var(--text-secondary-color);margin-bottom:2.5rem}.cta-button{display:inline-flex;align-items:center;justify-content:center;padding:14px 36px;background:var(--accent-gradient);color:#000;text-decoration:none;font-size:1rem;font-weight:700;border-radius:9999px;border:none;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 15px rgba(var(--accent-color-start-rgb),.3)}.cta-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px rgba(var(--accent-color-start-rgb),.5)}.cta-button:active{transform:translateY(0) scale(.98)}.card{background:var(--primary-color);border:1px solid var(--glass-border);border-radius:24px;padding:2.5rem 2rem;text-align:left;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--card-shadow);position:relative;overflow:hidden}.dark-theme .card{box-shadow:var(--card-shadow),inset 0 1px 1px #ffffff0d}.card:hover{transform:translateY(-8px);border-color:rgba(var(--accent-color-start-rgb),.4);box-shadow:0 30px 60px #00000080}.card-icon{font-size:2.5rem;margin-bottom:1rem;display:inline-block;color:var(--accent-color-start)}.card h3{font-size:1.6rem;margin-bottom:1rem;color:var(--text-color)}.card p{color:var(--text-secondary-color)}.services-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.services-grid .card{flex-basis:300px;flex-grow:1;max-width:380px}#about{background-color:var(--primary-color);transition:background-color .3s}.about-content{display:flex;align-items:center;gap:4rem;margin-bottom:4rem}.about-image-wrapper{aspect-ratio:1 / 1;width:300px;height:300px;border-radius:50%;border:2px solid var(--glass-border);box-shadow:0 5px 25px #00000026;flex-shrink:0;transition:transform .3s ease;background-size:cover;background-position:center 60%;background-repeat:no-repeat}.about-image-wrapper:hover{transform:scale(1.05)}.about-text{flex-basis:60%}.about-text h3{font-size:2rem;margin-bottom:1rem;font-weight:600}.about-cta-container{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap}.cta-button.secondary{background:transparent;border:2px solid var(--accent-color-start);color:var(--accent-color-start);box-shadow:none}.cta-button.secondary:hover{background:var(--accent-color-start);color:#fff;box-shadow:0 0 15px var(--accent-color-start)}.tech-stack-detailed{margin-top:4rem;padding-top:4rem;border-top:1px solid var(--border-color)}.tech-stack-title{text-align:center;font-size:2rem;margin-bottom:3rem;font-weight:600}.tech-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem}.tech-category{display:flex;justify-content:center}.tech-content-wrapper{display:flex;flex-direction:column;align-items:flex-start;width:fit-content}.tech-category h4{font-size:1.2rem;margin-bottom:1.5rem;font-weight:600;color:var(--text-color);padding-bottom:.75rem;border-bottom:2px solid var(--accent-color-start);display:block;width:fit-content;text-align:left}.tech-items{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;text-align:left}.tech-items span{display:flex;align-items:center;gap:.75rem;color:var(--text-secondary-color)}.tech-items i,.tech-items svg{font-size:1.2rem;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.tech-items span:hover i,.tech-items span:hover svg{transform:scale(1.2)}.tech-stack{margin-top:1rem;margin-bottom:2rem;text-align:center}.tech-stack .icons{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;font-size:3rem;margin-top:1.5rem}.tech-stack .icons i{transition:transform .3s ease}.tech-stack .icons i:hover{transform:scale(1.15)}.portfolio-filters{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{background-color:var(--filter-btn-bg);color:var(--text-secondary-color);border:none;padding:.75rem 1.5rem;border-radius:50px;cursor:pointer;font-weight:500;transition:all .3s ease}.filter-btn:hover{color:var(--text-color)}.filter-btn.active{background:var(--accent-gradient);color:#000;font-weight:700;box-shadow:0 0 15px var(--accent-color-start)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,340px);align-items:stretch;gap:2.5rem;justify-content:center}.portfolio-card{background:var(--primary-color);border-radius:15px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease,background-color .3s,opacity .5s,transform .5s;box-shadow:var(--card-shadow);border:var(--glass-border);height:100%}.portfolio-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 10px 20px #0000001a,0 0 20px var(--accent-color-start)}.portfolio-image{aspect-ratio:340 / 250;height:auto;background-size:cover;background-position:center;flex-shrink:0}.portfolio-info{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.portfolio-info h3{font-size:1.2rem;margin-bottom:.5rem;line-height:1.4;min-height:3.4rem}.case-link{display:inline-block;padding-top:1rem;color:var(--accent-color-start);text-decoration:none;font-weight:500}.case-link:hover{text-decoration:underline}.show-more-container{text-align:center;margin-top:4rem}.portfolio-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;margin-top:auto}.tag{background-color:var(--tag-bg);color:var(--tag-text);padding:.25rem .75rem;border-radius:9999px;font-size:.8rem;font-weight:500;line-height:1.5}.contact-form{max-width:700px;margin:0 auto;background:var(--primary-color);padding:3rem;border-radius:15px;border:var(--glass-border);transition:background-color .3s,border-color .3s;box-shadow:var(--card-shadow)}.form-group{margin-bottom:1.5rem}.form-group-split{display:flex;gap:1.5rem;margin-bottom:0}.form-group-split .form-group{flex-basis:50%;margin-bottom:0}.form-hint{font-size:.9rem;color:var(--text-secondary-color);text-align:center;width:100%;margin:.75rem 0 1.5rem;transition:color .3s}.form-hint.error-hint{color:#dc3545}textarea.form-control{min-height:150px;resize:vertical}.form-submit-container{display:flex;justify-content:center;align-items:center;width:100%;margin-top:1.5rem;position:relative}.form-submit-container .cta-button{margin:0}.spinner{display:none;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;animation:spin 1s ease-in-out infinite;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.feedback-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--modal-overlay-bg);backdrop-filter:blur(10px);z-index:3000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s ease .3s}.feedback-modal-overlay.visible{opacity:1;visibility:visible;transition-delay:0s}.feedback-modal-content{background:var(--primary-color);color:var(--text-color);padding:2rem;border-radius:20px;text-align:center;max-width:400px;width:90%;transform:scale(.95);transition:transform .3s ease;box-shadow:var(--card-shadow)}.feedback-modal-overlay.visible .feedback-modal-content{transform:scale(1)}.feedback-modal-icon{font-size:3rem;width:80px;height:80px;border-radius:50%;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center}.feedback-modal-icon.success{background:#28a745;color:#fff}.feedback-modal-icon.error{background:#dc3545;color:#fff}.feedback-modal-content h3{font-size:1.8rem;margin-bottom:1rem}.feedback-modal-content p{color:var(--text-secondary-color);margin-bottom:2rem}.feedback-modal-content .cta-button{width:100%}.footer{text-align:center;padding:3rem 0;border-top:1px solid var(--glass-border);transition:border-color .3s,background-color .3s;background-color:var(--primary-color)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.footer-links{font-size:1.5rem;margin-bottom:.5rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}.footer-links a{color:var(--text-secondary-color);margin:0 .8rem;transition:color .3s ease,transform .3s ease}.footer-links a:hover{color:var(--text-color);transform:scale(1.1)}.footer-social-group{display:inline-flex;align-items:center;gap:15px}.footer-social-group a{display:inline-flex;align-items:center;gap:5px;font-size:.9rem;text-decoration:none;color:var(--text-secondary-color);margin:0}.footer-social-group a .fab{font-size:1.5rem}.footer-copyright{color:var(--text-secondary-color);font-size:.9rem;margin-bottom:.5rem}.footer-legal{display:flex;gap:1rem;font-size:.85rem}.footer-legal a{color:var(--text-secondary-color);text-decoration:none;transition:color .3s ease}.footer-legal a:hover{color:var(--text-color)}.legal-separator{color:var(--text-secondary-color)}.scroll-to-top{position:fixed;bottom:2rem;right:2rem;background:var(--accent-gradient);color:#000;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;text-decoration:none;opacity:0;visibility:hidden;transform:translateY(20px);transition:opacity .3s,visibility .3s,transform .3s,box-shadow .3s;z-index:999}.scroll-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{box-shadow:0 0 15px var(--accent-color-start)}.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;background-color:rgba(var(--bg-color-rgb),.9);color:var(--text-primary-color);padding:20px 25px;border-radius:15px;box-shadow:0 10px 30px #0003;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:20px;transform:translateY(200%);transition:transform .5s cubic-bezier(.165,.84,.44,1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color)}.cookie-banner.show{transform:translateY(0)}.cookie-text{font-size:.9rem;line-height:1.5;color:var(--text-color)}.cookie-text a{color:var(--accent-color-start);text-decoration:none;font-weight:500}.cookie-text a:hover{text-decoration:underline}.cookie-button{padding:10px 25px;font-size:.9rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;background:linear-gradient(90deg,var(--accent-color-start),var(--accent-color-end));color:#fff;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease}.cookie-button:hover{transform:scale(1.05);box-shadow:0 5px 15px #f76b1c4d}.legal-page-content{padding-top:120px;padding-bottom:80px}.legal-container{max-width:900px;margin:0 auto;padding:2rem 3rem;background-color:var(--primary-color);border-radius:15px;border:var(--glass-border);box-shadow:var(--card-shadow)}.legal-container h1{font-size:2.2rem;line-height:1.3;margin-bottom:.75rem;text-align:center}.legal-container .last-updated{text-align:center;color:var(--text-secondary-color);margin-bottom:2.5rem;display:block}.prose h3{font-size:1.6rem;margin-top:2.5rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.prose p,.prose ul{line-height:1.8;color:var(--text-secondary-color);margin-bottom:1rem}.prose ul{padding-left:20px}.prose a{color:var(--accent-color-start)}.prose strong{color:var(--text-color)}.geo-page-content{padding-top:120px;padding-bottom:80px}.geo-container{max-width:900px;margin:0 auto;padding:2rem 3rem;background-color:var(--primary-color);border-radius:15px;border:var(--glass-border);box-shadow:var(--card-shadow)}.geo-page-content .geo-container .prose h1{font-size:2.5rem!important;text-align:center!important;margin-bottom:1.5rem!important;line-height:1.3!important}.geo-page-content .geo-container .prose p{font-size:1.1rem!important;text-align:center!important;color:var(--text-secondary-color)!important;max-width:700px!important;margin:0 auto 3rem!important}.geo-page-content .geo-container .cta-section{margin-top:3rem!important;padding:2rem!important;border:none!important;background-color:var(--bg-color)!important}.geo-links-container{text-align:center;padding:40px 20px;border-top:1px solid var(--border-color);margin-top:60px}.geo-links-container h3{font-size:1.2rem;color:var(--text-secondary-color);margin-bottom:1.5rem}.geo-links-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem}.geo-links-list a{color:var(--text-color);text-decoration:none;font-weight:500;transition:color .3s}.geo-links-list a:hover{color:var(--accent-color-start);text-decoration:underline}.cta-section{background-color:var(--primary-color);border:var(--glass-border);border-radius:16px;padding:3rem 2rem;text-align:center;margin-top:4rem}.cta-container h3{font-size:2rem;margin-bottom:1rem}.cta-container p{color:var(--text-secondary-color);margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}@media(max-width:1024px){.section-title{font-size:2.2rem}.hero-text h1{font-size:3rem}.about-content{flex-direction:column;text-align:center}.about-cta-container{justify-content:center}.controls,.nav-links{display:none}.burger-menu{display:flex}}@media(max-width:640px){.hero-text h1{font-size:2.5rem}.hero-text p{font-size:1.1rem}.cookie-banner{flex-direction:column;text-align:center;bottom:10px;left:10px;right:10px}}.case-study-header{padding-top:clamp(140px,15vh,200px);padding-bottom:clamp(40px,6vh,80px);text-align:center}.case-study-header h1{font-size:clamp(2.5rem,8vw,4rem);line-height:1.1;margin-bottom:1.5rem;font-weight:800}.case-study-header p{font-size:clamp(1.1rem,2vw,1.25rem);color:var(--text-secondary-color);max-width:800px;margin:0 auto}.main-project-image{width:100%;height:auto;border-radius:15px;margin-bottom:80px;box-shadow:0 10px 40px #00000026}.project-details{display:flex;justify-content:center;max-width:900px;margin:3rem auto 0;text-align:center;border:var(--glass-border);border-radius:15px;padding:1rem 0}.detail-item{flex:1;padding:.5rem 1.5rem}.detail-item+.detail-item{border-left:1px solid var(--glass-border)}.detail-item h4{color:var(--text-secondary-color);font-weight:500;margin-bottom:.5rem;font-size:.9rem}.detail-item p{font-size:1.1rem;font-weight:600}.project-content-wrapper{background:var(--primary-color);border:1px solid var(--glass-border);border-radius:24px;padding:clamp(2rem,5vw,4rem) clamp(1.5rem,4vw,3rem);margin:0 auto 80px;max-width:900px;box-shadow:var(--card-shadow)}.project-content{max-width:100%;margin:0}.project-content h2{font-size:2rem;margin-top:3rem;margin-bottom:1rem;text-align:center}.project-content h2:first-of-type{margin-top:0}.project-content .tech-stack .icons{justify-content:center}.project-content p,.project-content ul{margin-bottom:1.5rem;line-height:1.8}.project-content ul{padding-left:20px}.back-to-main{display:inline-flex;align-items:center;justify-content:center;margin:4rem 0 0;padding:.8rem 2rem;background:transparent;border:1px solid var(--accent-color-start);color:var(--text-color);border-radius:99px;text-decoration:none;font-weight:600;font-size:.95rem;transition:all .3s cubic-bezier(.165,.84,.44,1);position:relative;overflow:hidden}.back-to-main:hover{background:var(--accent-gradient);border-color:transparent;color:#fff;box-shadow:0 10px 20px rgba(var(--accent-color-start-rgb),.3);text-decoration:none!important}.case-cta-section{text-align:center;margin:4rem 0;padding-top:2.5rem;border-top:1px solid var(--glass-border)}.project-gallery{margin-top:4rem}.gallery-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2rem}@media(min-width:768px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.gallery-item figure{margin:0;padding:0;background-color:var(--primary-color);border-radius:15px;overflow:hidden;border:var(--glass-border);display:flex;flex-direction:column;height:100%}.gallery-item img{width:100%;height:auto;display:block;aspect-ratio:16 / 10;object-fit:cover}.gallery-item figcaption{padding:1rem 1.5rem;font-size:1rem;color:var(--text-secondary-color);text-align:center;font-style:italic;margin-top:auto}@media(max-width:768px){.case-study-header{padding-top:clamp(100px,12vh,140px);padding-bottom:30px}.case-study-header h1{font-size:2.5rem}.project-content-wrapper{padding:2rem 1.5rem;margin-bottom:60px}.legal-container h1{font-size:2.2rem;line-height:1.3}.project-details{flex-direction:column;gap:0;padding:0;margin-top:2rem}.detail-item{padding:1rem}.detail-item+.detail-item{border-left:none;border-top:1px solid var(--glass-border)}.main-project-image{margin-bottom:40px}}.brief-form{max-width:800px;margin:3rem auto 0;text-align:left;background:var(--primary-color);padding:clamp(2rem,5vw,4rem) clamp(1.5rem,4vw,3rem);border-radius:24px;border:1px solid var(--border-color);box-shadow:var(--card-shadow);transition:all .4s cubic-bezier(.165,.84,.44,1)}.centered{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.form-footer.centered{margin:2.5rem 0}.dark-theme .brief-form{box-shadow:var(--card-shadow),inset 0 1px 1px #ffffff0d}.form-block{border:none;padding:0;margin:0 0 2.5rem;border-bottom:1px solid var(--border-color);padding-bottom:2.5rem}.form-block:last-of-type{border-bottom:none;margin-bottom:1.5rem;padding-bottom:1.5rem}.form-block legend{font-size:clamp(1.25rem,4vw,1.5rem);font-weight:700;margin-bottom:1.5rem;padding:0;color:var(--text-color);font-family:var(--font-heading)}.form-block .form-group{margin-bottom:1.5rem}.form-group.other-input{margin-top:1rem}.form-block label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary-color)}.radio-group,.checkbox-group{display:flex;flex-wrap:wrap;gap:1rem;row-gap:.8rem}.radio-group-vertical{display:flex;flex-direction:column;gap:.8rem}.radio-group label,.checkbox-group label,.radio-group-vertical label{display:inline-flex;align-items:center;cursor:pointer;position:relative;-webkit-tap-highlight-color:transparent;min-height:1.5em}.radio-group input,.checkbox-group input,.radio-group-vertical input{position:absolute;opacity:0;width:0;height:0}.radio-group span,.checkbox-group span,.radio-group-vertical span{color:var(--text-color);font-weight:400;padding-left:2em}.radio-group span:before,.checkbox-group span:before,.radio-group-vertical span:before{content:"";position:absolute;left:0;top:calc(50% - .625em);height:1.25em;width:1.25em;border:2px solid var(--border-color);background-color:var(--bg-color);transition:border-color .2s,background-color .2s;box-sizing:border-box}.radio-group span:before,.radio-group-vertical span:before{border-radius:50%}.checkbox-group span:before{border-radius:4px}.radio-group label:hover span:before,.checkbox-group label:hover span:before,.radio-group-vertical label:hover span:before{border-color:var(--accent-color-start)}input:checked+span:before{border-color:var(--accent-color-start);background-color:var(--accent-color-start)}.radio-group span:after,.checkbox-group span:after,.radio-group-vertical span:after{content:"";position:absolute;transition:transform .15s ease-in-out;transform:scale(0);box-sizing:border-box}input[type=radio]+span:after{width:.6em;height:.6em;background-color:var(--primary-color);border-radius:50%;left:.325em;top:calc(50% - .3em)}input[type=checkbox]+span:after{width:.35em;height:.7em;border:solid var(--primary-color);border-width:0 3px 3px 0;left:.45em;top:calc(50% - .45em);transform:rotate(45deg) scale(0)}input:checked+span:after{transform:rotate(0) scale(1)}input[type=checkbox]:checked+span:after{transform:rotate(45deg) scale(1)}.thank-you-message{padding:4rem 2rem;text-align:center}.thank-you-message h2{font-size:2.5rem;margin-bottom:1rem}.thank-you-message p{font-size:1.2rem;color:var(--text-secondary-color);margin-bottom:2rem}.thank-you-message .feedback-modal-icon{margin:0 auto 1.5rem}@media(max-width:768px){.brief-form{padding:1.5rem}.form-block legend{font-size:1.3rem}}.blog-page{padding-bottom:120px}.blog-header{text-align:center;margin-bottom:4rem}.featured-post-section,.posts-list-section{margin-bottom:4rem}.featured-post-section h2,.posts-list-section h2{font-size:2rem;font-weight:700;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color);text-align:center}.filters-container{max-width:800px;margin:0 auto 3rem;display:flex;flex-direction:column;gap:1.5rem}.search-wrapper{position:relative}.search-icon{position:absolute;top:50%;left:1.25rem;transform:translateY(-50%);color:var(--text-secondary-color);font-size:1rem;pointer-events:none}#blog-search{width:100%;padding:1rem 1.25rem 1rem 3.5rem;font-size:1rem;color:var(--text-color);background-color:var(--primary-color);border:1px solid var(--border-color);border-radius:50px;font-family:Inter,sans-serif;transition:border-color .3s,box-shadow .3s}#blog-search:focus{outline:none;border-color:var(--accent-color-start);box-shadow:0 0 0 3px rgba(var(--accent-color-start-rgb),.2)}.tags-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.tag-filter-btn{background-color:var(--filter-btn-bg);color:var(--text-secondary-color);border:none;padding:.5rem 1.25rem;border-radius:50px;cursor:pointer;font-weight:500;transition:all .3s ease;font-size:.9rem}.tag-filter-btn:hover{color:var(--text-color);transform:translateY(-2px)}.tag-filter-btn.active{background:var(--accent-gradient);color:#fff;font-weight:700;box-shadow:0 4px 15px rgba(var(--accent-color-start-rgb),.3);transform:translateY(-2px)}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.no-results-message{text-align:center;font-size:1.2rem;color:var(--text-secondary-color);margin-top:4rem}.featured-card{display:grid;grid-template-columns:1fr;gap:0;background-color:var(--primary-color);border-radius:16px;border:var(--glass-border);box-shadow:var(--card-shadow);overflow:hidden;text-decoration:none;color:inherit;transition:transform .3s ease,box-shadow .3s ease}.featured-card:hover{transform:translateY(-8px);box-shadow:0 10px 20px #0000001a,0 0 25px rgba(var(--accent-color-start-rgb),.2)}.featured-card-image img{width:100%;height:100%;object-fit:cover}.featured-card-info{padding:2.5rem;display:flex;flex-direction:column}.featured-card-title{font-size:2rem;margin-bottom:1rem;line-height:1.3}@media(min-width:768px){.featured-card{grid-template-columns:1.2fr 1fr;align-items:center}}.blog-card-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}.blog-card-image img{width:100%;height:100%;object-fit:cover}.blog-card-image-placeholder{height:250px;background-color:var(--filter-btn-bg)}.blog-card-date{font-size:.9rem;color:var(--text-secondary-color);margin-bottom:.5rem}.blog-card-title{font-size:1.3rem;line-height:1.4;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.3rem * 1.4 * 2)}.blog-card-desc{font-size:1rem;color:var(--text-secondary-color);margin-bottom:1.5rem;flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-post-article{padding-top:100px;padding-bottom:80px}.blog-post-hero{position:relative;display:grid;place-items:center;text-align:center;color:#fff;min-height:450px;margin-bottom:4rem}.hero-image-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-image-container:after{content:"";position:absolute;inset:0;background:#0009}.hero-image-container img{width:100%;height:100%;object-fit:cover}.hero-content-overlay{position:relative;z-index:2;padding:2rem 0;display:flex;flex-direction:column;justify-content:center;height:100%}.blog-post-container{max-width:800px;margin:0 auto;padding:0 20px}.post-title{font-size:3.5rem;line-height:1.2;margin:0 auto 2rem;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.5)}.hero-content-overlay .post-meta{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#e0e0e0}.hero-content-overlay .post-meta .tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.hero-content-overlay .tag{background-color:#ffffff26;color:#fff;backdrop-filter:blur(5px)}.content-wrapper{margin-top:0;position:relative;z-index:3;margin-bottom:4rem}.post-content{background:var(--primary-color);padding:3rem 4rem;border-radius:16px;line-height:1.9;font-size:1.125rem;border:var(--glass-border);box-shadow:var(--card-shadow);color:var(--text-color)}.back-link-wrapper{text-align:center;margin-top:4rem}.back-to-main{color:var(--accent-color-start);text-decoration:none;font-weight:600;display:inline-block;transition:transform .3s ease;font-size:1.1rem}.back-to-main:hover{transform:translate(-5px);text-decoration:underline}.post-content>*:first-child{margin-top:0}.post-content h2,.post-content h3,.post-content h4{margin-top:3rem;margin-bottom:1.5rem;line-height:1.3;font-weight:700}.post-content h2{font-size:2.25rem;border-bottom:1px solid var(--border-color);padding-bottom:.75rem}.post-content h3{font-size:1.75rem}.post-content h4{font-size:1.25rem}.post-content p{margin-bottom:1.5rem;color:var(--text-secondary-color)}.post-content strong{color:var(--text-color);font-weight:600}.post-content a{color:var(--accent-color-start);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;transition:color .2s}.post-content a:hover{color:var(--accent-color-end)}.post-content ul,.post-content ol{padding-left:2rem;margin-bottom:1.5rem;color:var(--text-secondary-color)}.post-content li{margin-bottom:.75rem}.post-content li::marker{color:var(--accent-color-start)}.post-content blockquote{border-left:4px solid var(--accent-color-start);padding:1rem 1.5rem;margin:2rem 0;font-style:italic;color:var(--text-secondary-color);background-color:var(--tag-bg);border-radius:0 8px 8px 0}.post-content blockquote p{margin-bottom:0}.post-content code:not(pre>code){background-color:var(--tag-bg);color:var(--text-color);border:1px solid var(--border-color);padding:.2em .5em;border-radius:6px;font-size:.9em;font-family:Fira Code,Courier New,monospace}.post-content pre{padding:1.5rem;border-radius:12px;overflow-x:auto;margin:2rem 0;background-color:#0d1117!important;border:1px solid var(--border-color)}.post-content pre code{font-size:.95em}.post-content img{max-width:100%;height:auto;border-radius:12px;margin:2.5rem auto;display:block;box-shadow:var(--card-shadow)}.post-content hr{border:none;border-top:1px solid var(--border-color);margin:3rem 0}@media(max-width:768px){.post-title{font-size:2.5rem}.post-content{padding:2rem 1.5rem;font-size:1rem}.post-content h2{font-size:1.8rem}.post-content h3{font-size:1.4rem}}@media(max-width:500px){.post-title{font-size:2rem}.blog-post-article{padding-top:80px}}
