:root{--lg-bg-primary:#f2f2f7;--lg-bg-secondary:#ffffff;--lg-bg-tertiary:#e5e5ea;--lg-bg-glass:rgba(255,255,255,0.72);--lg-bg-glass-hover:rgba(255,255,255,0.88);--lg-bg-overlay:rgba(0,0,0,0.4);--lg-text-primary:#1c1c1e;--lg-text-secondary:#3c3c43;--lg-text-tertiary:#6c6c70;--lg-text-quaternary:#aeaeb2;--lg-text-inverse:#ffffff;--lg-accent:#007aff;--lg-accent-hover:#0066d6;--lg-accent-light:rgba(0,122,255,0.12);--lg-success:#30d158;--lg-warning:#ff9f0a;--lg-danger:#ff453a;--lg-border:rgba(60,60,67,0.18);--lg-border-strong:rgba(60,60,67,0.36);--lg-separator:rgba(60,60,67,0.12);--lg-shadow-sm:0 2px 8px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04);--lg-shadow-md:0 4px 16px rgba(0,0,0,0.08),0 2px 4px rgba(0,0,0,0.05);--lg-shadow-lg:0 8px 32px rgba(0,0,0,0.10),0 4px 8px rgba(0,0,0,0.06);--lg-shadow-xl:0 16px 48px rgba(0,0,0,0.12),0 8px 16px rgba(0,0,0,0.08);--lg-shadow-glass:0 8px 32px rgba(0,0,0,0.08),inset 0 1px 0 rgba(255,255,255,0.6);--lg-radius-xs:6px;--lg-radius-sm:10px;--lg-radius-md:14px;--lg-radius-lg:20px;--lg-radius-xl:28px;--lg-radius-xxl:40px;--lg-radius-full:9999px;--lg-blur:blur(20px);--lg-blur-sm:blur(10px);--lg-blur-lg:blur(40px);--lg-font-title:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;--lg-font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;--lg-font-mono:'SF Mono','Fira Code','Fira Mono','Roboto Mono',monospace;--lg-transition:transform 0.2s cubic-bezier(0.25,0.46,0.45,0.94),opacity 0.2s cubic-bezier(0.25,0.46,0.45,0.94),background-color 0.2s cubic-bezier(0.25,0.46,0.45,0.94),color 0.2s cubic-bezier(0.25,0.46,0.45,0.94),box-shadow 0.2s cubic-bezier(0.25,0.46,0.45,0.94);--lg-transition-bounce:transform 0.3s cubic-bezier(0.34,1.56,0.64,1),opacity 0.3s cubic-bezier(0.34,1.56,0.64,1),background-color 0.3s cubic-bezier(0.34,1.56,0.64,1);--lg-transition-fast:transform 0.15s ease,opacity 0.15s ease,background-color 0.15s ease;--lg-header-height:64px;--lg-max-width:1200px;--lg-content-width:800px;}[data-theme="dark"],.dark-mode{--lg-bg-primary:#000000;--lg-bg-secondary:#1c1c1e;--lg-bg-tertiary:#2c2c2e;--lg-bg-glass:rgba(28,28,30,0.80);--lg-bg-glass-hover:rgba(44,44,46,0.90);--lg-bg-overlay:rgba(0,0,0,0.6);--lg-text-primary:#ffffff;--lg-text-secondary:#ebebf5;--lg-text-tertiary:#ebebf599;--lg-text-quaternary:#ebebf54d;--lg-text-inverse:#000000;--lg-accent:#0a84ff;--lg-accent-hover:#409cff;--lg-accent-light:rgba(10,132,255,0.18);--lg-border:rgba(255,255,255,0.12);--lg-border-strong:rgba(255,255,255,0.24);--lg-separator:rgba(255,255,255,0.08);--lg-shadow-sm:0 2px 8px rgba(0,0,0,0.3),0 1px 2px rgba(0,0,0,0.2);--lg-shadow-md:0 4px 16px rgba(0,0,0,0.4),0 2px 4px rgba(0,0,0,0.25);--lg-shadow-lg:0 8px 32px rgba(0,0,0,0.5),0 4px 8px rgba(0,0,0,0.3);--lg-shadow-xl:0 16px 48px rgba(0,0,0,0.6),0 8px 16px rgba(0,0,0,0.4);--lg-shadow-glass:0 8px 32px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.08);}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{font-size:16px;-webkit-text-size-adjust:100%;}body{font-family:var(--lg-font-body);font-size:1rem;line-height:1.6;color:var(--lg-text-primary);background-color:var(--lg-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color 0.3s ease,color 0.3s ease;overflow-x:hidden;}#lg-entry-curtain{position:fixed;inset:0;z-index:999999;pointer-events:none;opacity:0;background:var(--lg-bg-primary,#000);transition:opacity 1.1s cubic-bezier(.16,1,.3,1);}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){#lg-entry-curtain{background:color-mix(in srgb,var(--lg-bg-primary,#000) 55%,transparent);-webkit-backdrop-filter:blur(40px) saturate(1.4);backdrop-filter:blur(40px) saturate(1.4);}}html.lg-enter #lg-entry-curtain{opacity:1;}html.lg-enter body{}html.lg-enter-anim body{transition:background-color 0s,color 0s !important;}html.lg-welcome-loading,html.lg-welcome-loading body{overflow:hidden !important;touch-action:none !important;}img{max-width:100%;height:auto;display:block;}a{color:var(--lg-accent);text-decoration:none;transition:color 0.2s cubic-bezier(0.25,0.46,0.45,0.94);}a:hover{color:var(--lg-accent-hover);}h1,h2,h3,h4,h5,h6{font-family:var(--lg-font-title);font-weight:700;line-height:1.2;color:var(--lg-text-primary);letter-spacing:-0.02em;}h1{font-size:clamp(2rem,5vw,3.5rem);}h2{font-size:clamp(1.5rem,3.5vw,2.5rem);}h3{font-size:clamp(1.25rem,2.5vw,1.75rem);}h4{font-size:1.25rem;}h5{font-size:1.1rem;}h6{font-size:1rem;}p{margin-bottom:1em;}p:last-child{margin-bottom:0;}ul,ol{padding-left:1.5em;}.lg-container{max-width:var(--lg-max-width);margin:0 auto;padding:0 24px;}.site-main{min-height:calc(100vh - var(--lg-header-height));padding-top:calc(var(--lg-header-height) + 60px);}.lg-glass{background:var(--lg-global-bg);backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-glass);}@supports not (backdrop-filter:blur(20px)){.lg-glass{background:var(--lg-bg-secondary);}}.site-header{position:fixed;top:12px;left:50%;transform:translateX(-50%);width:52vw;max-width:900px;min-width:480px;height:var(--lg-header-height);z-index:1000;display:flex;align-items:center;background:var(--lg-header-bg);backdrop-filter:var(--lg-header-blur);-webkit-backdrop-filter:var(--lg-header-blur);border:1px solid var(--lg-border);border-radius:99px;box-shadow:0 4px 32px rgba(0,0,0,0.15),0 1.5px 6px rgba(0,0,0,0.08);transition:background-color 0.2s cubic-bezier(0.25,0.46,0.45,0.94),box-shadow 0.2s cubic-bezier(0.25,0.46,0.45,0.94);padding:0 20px;}.site-header.is-scrolled{box-shadow:0 2px 24px rgba(0,0,0,0.1);}@supports not (backdrop-filter:blur(20px)){.site-header{background:var(--lg-header-bg);}}@media (max-width:900px){.site-header{width:90vw;min-width:0;padding:0 14px;top:8px;}}.header-inner{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 4px 0 4px;gap:16px;}.site-logo{flex-shrink:0;display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;}.site-logo img{height:36px;width:auto;object-fit:contain;}.site-logo .logo-text{font-size:1.1rem;font-weight:700;color:var(--lg-text-primary);letter-spacing:-0.02em;white-space:nowrap;}.main-nav--desktop{flex:1;display:flex;justify-content:center;}.main-nav--landscape{flex:1;display:none;justify-content:center;}.main-nav--desktop ul,.main-nav--landscape ul{display:flex;align-items:center;gap:4px;list-style:none;padding:0;margin:0;}.main-nav--desktop ul li a,.main-nav--landscape ul li a{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--lg-radius-full);color:var(--lg-text-secondary);font-size:0.9rem;font-weight:500;text-decoration:none;transition:var(--lg-transition);position:relative;}.main-nav--desktop ul li a:hover,.main-nav--desktop ul li.current-menu-item>a,.main-nav--desktop ul li.current-page-ancestor>a,.main-nav--landscape ul li a:hover,.main-nav--landscape ul li.current-menu-item>a,.main-nav--landscape ul li.current-page-ancestor>a{color:var(--lg-text-primary);background:var(--lg-bg-tertiary);}.main-nav--desktop ul li.current-menu-item>a,.main-nav--landscape ul li.current-menu-item>a{background:var(--lg-accent-light);color:var(--lg-accent);}.main-nav--desktop ul li,.main-nav--landscape ul li{position:relative;}.main-nav--desktop ul li ul,.main-nav--landscape ul li ul{display:none;position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);min-width:200px;background:var(--lg-header-bg);backdrop-filter:var(--lg-header-blur);-webkit-backdrop-filter:var(--lg-header-blur);border:1px solid var(--lg-border);border-radius:var(--lg-radius-md);box-shadow:var(--lg-shadow-lg);padding:8px;z-index:100;flex-direction:column;gap:2px;}.main-nav--desktop ul li:hover>ul,.main-nav--landscape ul li:hover>ul{display:flex;}.main-nav--desktop ul li ul li a,.main-nav--landscape ul li ul li a{border-radius:var(--lg-radius-sm);justify-content:flex-start;white-space:nowrap;}.header-controls{display:flex;align-items:center;gap:12px;flex-shrink:0;}.theme-toggle{position:relative;display:inline-block;width:52px;height:30px;cursor:pointer;flex-shrink:0;vertical-align:middle;}.theme-toggle input{opacity:0;width:0;height:0;position:absolute;}.theme-toggle-track{position:absolute;inset:0;border-radius:var(--lg-radius-full);background:rgba(120,120,128,0.32);border:1px solid rgba(120,120,128,0.4);transition:var(--lg-transition);display:flex;align-items:center;padding:2px;}.theme-toggle input:checked + .theme-toggle-track{background:#1c1c1e;border-color:#3a3a3c;}.theme-toggle-thumb{width:24px;height:24px;border-radius:50%;background:white;box-shadow:0 1px 4px rgba(0,0,0,0.2);transition:var(--lg-transition-bounce);display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1;transform:translateX(0);}.theme-toggle input:checked + .theme-toggle-track .theme-toggle-thumb{transform:translateX(22px);background:#2c2c2e;}.theme-toggle-thumb .icon-sun,.theme-toggle-thumb .icon-moon{position:absolute;transition:var(--lg-transition);}.theme-toggle-thumb .icon-moon{opacity:0;}.theme-toggle input:checked + .theme-toggle-track .theme-toggle-thumb .icon-sun{opacity:0;}.theme-toggle input:checked + .theme-toggle-track .theme-toggle-thumb .icon-moon{opacity:1;}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;border-radius:var(--lg-radius-sm);background:none;border:none;cursor:pointer;gap:5px;padding:8px;transition:var(--lg-transition);}.hamburger-btn:hover{background:var(--lg-bg-tertiary);}.hamburger-btn span{display:block;width:20px;height:2px;background:var(--lg-text-primary);border-radius:2px;transition:var(--lg-transition);}.hamburger-btn.is-active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}.hamburger-btn.is-active span:nth-child(2){opacity:0;transform:scaleX(0);}.hamburger-btn.is-active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}.mobile-menu-overlay{display:none;position:fixed;inset:0;z-index:999;opacity:0;transition:opacity 0.3s ease;}.mobile-menu-overlay.is-open{display:flex;flex-direction:column;opacity:1;}.mobile-menu-backdrop{position:absolute;inset:0;background:var(--lg-bg-overlay);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}.mobile-menu-sheet{position:absolute;top:calc(var(--lg-header-height) + 8px);left:12px;right:12px;background:var(--lg-header-bg);backdrop-filter:var(--lg-header-blur);-webkit-backdrop-filter:var(--lg-header-blur);border:1px solid var(--lg-border);border-radius:var(--lg-radius-xl);box-shadow:var(--lg-shadow-xl);padding:16px;max-height:calc(100vh - var(--lg-header-height) - 32px);overflow-y:auto;transform:translateY(-20px) scale(0.97);transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1),opacity 0.3s ease;opacity:0;}.mobile-menu-overlay.is-open .mobile-menu-sheet{transform:translateY(0) scale(1);opacity:1;}.mobile-menu-sheet ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px;}.mobile-menu-sheet ul li a{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:var(--lg-radius-md);color:var(--lg-text-primary);font-size:1rem;font-weight:500;text-decoration:none;transition:var(--lg-transition);}.mobile-menu-sheet ul li a:hover,.mobile-menu-sheet ul li.current-menu-item>a{background:var(--lg-bg-tertiary);color:var(--lg-accent);}.mobile-menu-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:12px 16px 4px;border-top:1px solid var(--lg-separator);margin-top:8px;row-gap:0;}.mobile-menu-footer label{font-size:0.875rem;color:var(--lg-text-secondary);font-weight:500;}.hero-slider{position:relative;width:calc(100% - 48px);margin:0 24px 64px;overflow:hidden;border-radius:var(--lg-radius-xl);background:var(--lg-global-bg);backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-glass);min-height:800px;user-select:none;-webkit-user-select:none;}.slider-track{position:relative;height:100%;min-height:inherit;touch-action:pan-y;}.slide{position:absolute;inset:0;display:flex;align-items:center;padding:40px 40px;gap:60px;min-height:720px;opacity:0;pointer-events:none;transition:opacity 0.55s cubic-bezier(0.4,0,0.2,1);}.slide.is-active{opacity:1;pointer-events:auto;position:relative;}.slide-image-area{flex:0 0 auto;width:50%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;}.slide-image-area img,.slide-image-area .slide-img{width:100%;max-width:100%;height:auto;max-height:720px;object-fit:contain;display:block;}.slide-no-image{width:100%;height:420px;display:flex;align-items:center;justify-content:center;color:var(--lg-text-quaternary);font-size:0.875rem;}.slide-content{flex:1;display:flex;flex-direction:column;gap:20px;}.slide-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--lg-accent-light);color:var(--lg-accent);border-radius:var(--lg-radius-full);font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;width:fit-content;}.slide-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.1;letter-spacing:-0.03em;color:var(--lg-text-primary);}.slide-desc{font-size:1.05rem;color:var(--lg-text-secondary);line-height:1.7;}.slide-cta{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:var(--lg-accent);color:white;border-radius:var(--lg-radius-full);font-size:0.95rem;font-weight:600;text-decoration:none;transition:var(--lg-transition);width:fit-content;box-shadow:0 4px 16px rgba(0,122,255,0.3);}.slide-cta:hover{background:var(--lg-accent-hover);color:white;transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,122,255,0.4);}.slider-controls{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;z-index:10;}.slider-dots{display:flex;align-items:center;gap:6px;}.slider-dot{width:6px;height:6px;border-radius:50%;background:var(--lg-text-quaternary);cursor:pointer;transition:var(--lg-transition);border:none;padding:0;}.slider-dot.is-active{width:20px;border-radius:3px;background:var(--lg-accent);}.slider-arrow{width:40px;height:40px;border-radius:50%;background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--lg-transition);color:var(--lg-text-primary);}.slider-arrow:hover{background:var(--lg-detail-bg-hover);transform:scale(1.05);}.slider-progress{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:3px;width:52vw;max-width:900px;min-width:480px;background:var(--lg-accent);border-radius:99px;transform-origin:left center;transform:translateX(-50%) scaleX(0);transition:transform linear;}.slider-progress.is-animating{}.slide>*{position:relative;z-index:1;}.section-header{text-align:center;margin-bottom:48px;}.section-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--lg-accent-light);color:var(--lg-accent);border-radius:var(--lg-radius-full);font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:12px;}.section-title{margin-bottom:12px;}.section-subtitle{font-size:1.05rem;color:var(--lg-text-secondary);max-width:560px;margin:0 auto;}.home-section{padding:80px 0;margin-left:24px;margin-right:24px;margin-bottom:0;border-radius:var(--lg-radius-xl);}.home-section + .home-section{margin-top:64px;}.latest-projects,.our-description-block{background:var(--lg-global-bg);backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-glass);}#social-section{background:transparent;padding-top:32px;padding-bottom:32px;margin-bottom:32px;}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;}.project-card{background:var(--lg-card-body-bg);backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);border:1px solid var(--lg-border);border-radius:var(--lg-radius-xl);overflow:hidden;transition:var(--lg-transition);box-shadow:var(--lg-shadow-glass);display:flex;flex-direction:column;}.project-card:hover{transform:translateY(-4px);box-shadow:var(--lg-shadow-xl);}.project-card-image{position:relative;overflow:hidden;background:var(--lg-card-img-bg);aspect-ratio:4/3;}.project-card-image img{width:100%;height:100%;object-fit:contain;transition:var(--lg-transition);padding:8px;}.project-card:hover .project-card-image img{transform:scale(1.03);}.project-card-image::after{content:'';position:absolute;left:0;right:0;bottom:0;height:20%;background:linear-gradient( to top,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 100% );-webkit-mask-image:linear-gradient(to top,black 0%,transparent 100%);mask-image:linear-gradient(to top,black 0%,transparent 100%);pointer-events:none;opacity:0;transition:var(--lg-transition);}.project-card:hover .project-card-image::after{opacity:1;backdrop-filter:var(--lg-hover-blur);-webkit-backdrop-filter:var(--lg-hover-blur);background:linear-gradient( to top,rgba(0,0,0,0.45) 0%,rgba(0,0,0,0) 100% );}.project-card-body{padding:20px;flex:1;display:flex;flex-direction:column;gap:8px;}.project-card-badges{display:flex;gap:6px;flex-wrap:wrap;}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--lg-radius-full);font-size:0.75rem;font-weight:600;}.badge-1{background:var(--lg-accent-light);color:var(--lg-accent);}.badge-2{background:rgba(48,209,88,0.12);color:var(--lg-success);}.project-card-title{font-size:1.1rem;font-weight:700;color:var(--lg-text-primary);letter-spacing:-0.01em;}.project-card-desc{font-size:0.875rem;color:var(--lg-text-secondary);line-height:1.5;flex:1;}.project-card-link{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:var(--lg-accent-light);color:var(--lg-accent);border-radius:var(--lg-radius-full);font-size:0.85rem;font-weight:600;text-decoration:none;transition:var(--lg-transition);margin-top:4px;width:fit-content;}.project-card-link:hover{background:var(--lg-accent);color:white;}.portfolio-archive{padding:60px 0;}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}.portfolio-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px;}.filter-btn{padding:8px 20px;border-radius:var(--lg-radius-full);border:1px solid var(--lg-border);background:none;color:var(--lg-text-secondary);font-size:0.875rem;font-weight:500;cursor:pointer;transition:var(--lg-transition);font-family:var(--lg-font-body);}.filter-btn:hover,.filter-btn.is-active{background:var(--lg-accent);color:white;border-color:var(--lg-accent);}.single-project{padding:28px 0;}.single-project-layout{display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:start;}.project-main-image{background:transparent;border:none;box-shadow:none;padding:0;}.project-main-image img{width:100%;height:auto;display:block;border-radius:var(--lg-radius-xl);}.project-info-panel{display:flex;flex-direction:column;gap:20px;position:sticky;top:calc(var(--lg-header-height) + 24px);}.project-info-card{background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);border:1px solid var(--lg-border);border-radius:var(--lg-radius-xl);padding:20px;box-shadow:var(--lg-shadow-glass);}.project-info-card h3{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--lg-text-tertiary);margin-bottom:8px;}.project-info-card p,.project-info-card .card-value{font-size:0.95rem;color:var(--lg-text-primary);font-weight:500;}.project-title-section{margin-bottom:8px;}.project-breadcrumbs{font-size:0.875rem;color:var(--lg-text-tertiary);margin-bottom:12px;}.project-breadcrumbs a{color:var(--lg-text-tertiary);}.project-breadcrumbs a:hover{color:var(--lg-accent);}.project-breadcrumbs .separator{margin:0 6px;}.project-gallery{padding:40px 0;border-top:1px solid var(--lg-separator);margin-top:40px;}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}.gallery-item{cursor:pointer;position:relative;}.gallery-item img{width:100%;height:auto;display:block;border-radius:var(--lg-radius-lg);transition:transform 0.3s ease;}.gallery-item:hover img{transform:scale(1.02);}.lightbox{display:none;position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,0.92);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);align-items:center;justify-content:center;overscroll-behavior:none;touch-action:none;}.lightbox.is-open{display:flex;}.lightbox-img-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;}.lightbox-img-wrap img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:var(--lg-radius-lg);box-shadow:var(--lg-shadow-xl);user-select:none;-webkit-user-drag:none;pointer-events:none;will-change:transform;transform-origin:center center;}.lightbox-close{position:fixed;top:24px;right:24px;width:48px;height:48px;border-radius:50%;background:rgba(0,0,0,0.6);border:1px solid rgba(255,255,255,0.15);color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:var(--lg-transition);z-index:1;}.lightbox-close:hover{background:rgba(0,0,0,0.8);transform:scale(1.05);}.lightbox-prev,.lightbox-next{position:fixed;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(0,0,0,0.6);border:1px solid rgba(255,255,255,0.15);color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;transition:var(--lg-transition);z-index:1;}.lightbox-prev{left:24px;}.lightbox-next{right:24px;}.lightbox-prev:hover,.lightbox-next:hover{background:rgba(0,0,0,0.8);transform:translateY(-50%) scale(1.05);}.social-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}.social-link{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-sm);color:var(--lg-text-secondary);text-decoration:none;transition:var(--lg-transition);}.social-link:hover{background:var(--lg-accent);color:white;border-color:var(--lg-accent);transform:translateY(-2px);box-shadow:var(--lg-shadow-md);}.social-link svg{width:20px;height:20px;fill:currentColor;}.site-footer{background:var(--lg-global-bg);border-top:1px solid var(--lg-border);padding:40px 0 24px;}.footer-inner{max-width:var(--lg-max-width);margin:0 auto;padding:0 24px;}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;flex-wrap:wrap;padding-bottom:32px;border-bottom:1px solid var(--lg-separator);margin-bottom:24px;}.footer-brand .site-logo{margin-bottom:12px;}.footer-brand p{font-size:0.875rem;color:var(--lg-text-tertiary);max-width:280px;}.footer-nav ul{list-style:none;padding:0;display:flex;gap:24px;flex-wrap:wrap;}.footer-nav ul li a{font-size:0.875rem;color:var(--lg-text-tertiary);text-decoration:none;transition:var(--lg-transition);}.footer-nav ul li a:hover{color:var(--lg-accent);}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}.footer-copyright{font-size:0.8rem;color:var(--lg-text-quaternary);}.footer-legal ul{list-style:none;padding:0;display:flex;gap:20px;}.footer-legal ul li a{font-size:0.8rem;color:var(--lg-text-quaternary);text-decoration:none;transition:var(--lg-transition);}.footer-legal ul li a:hover{color:var(--lg-text-secondary);}.about-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:48px;margin-bottom:80px;}.about-card{background:var(--lg-global-bg);backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);border:1px solid var(--lg-border);border-radius:var(--lg-radius-xl);padding:28px;box-shadow:var(--lg-shadow-glass);transition:var(--lg-transition);}.about-card:hover{transform:translateY(-4px);box-shadow:var(--lg-shadow-xl);}.page-template-template-about .about-card{background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);}.about-card-icon{width:52px;height:52px;border-radius:var(--lg-radius-lg);background:var(--lg-accent-light);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}.about-card-icon img{width:28px;height:28px;}.about-card h3{font-size:1.1rem;margin-bottom:8px;}.about-card p{font-size:0.9rem;color:var(--lg-text-secondary);line-height:1.6;}.legal-page{padding:60px 0;}.legal-content{max-width:720px;margin:0 auto;}.legal-content h1{font-size:2.5rem;margin-bottom:8px;}.legal-content .last-updated{color:var(--lg-text-tertiary);font-size:0.875rem;margin-bottom:40px;}.legal-content h2{font-size:1.3rem;margin-top:32px;margin-bottom:12px;}.legal-content p,.legal-content li{color:var(--lg-text-secondary);line-height:1.8;margin-bottom:12px;}.legal-content ul{margin-bottom:16px;}.cookie-banner{display:none;position:fixed;bottom:12px;left:16px;right:16px;z-index:99999;border-radius:var(--lg-radius-lg);background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-xl);padding:12px 16px;box-sizing:border-box;opacity:0;transform:translateY(20px);transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1),opacity 0.3s ease;}body.lg-intro-active .cookie-banner{z-index:100000;}body.lg-intro-active .cookie-reopen-btn{z-index:100000;}@media (min-width:520px){.cookie-banner{left:50%;right:auto;width:400px;transform:translateX(-50%) translateY(20px);}}.cookie-banner.is-visible{display:block;}.cookie-banner.is-shown{transform:translateY(0);opacity:1;}@media (min-width:520px){.cookie-banner.is-shown{transform:translateX(-50%) translateY(0);}}.cookie-banner h3{font-size:0.78rem;font-weight:700;margin-bottom:3px;}.cookie-banner p{font-size:0.75rem;color:var(--lg-text-secondary);margin-bottom:10px;line-height:1.4;}.cookie-categories{display:none;flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;background:var(--lg-bg-tertiary);border-radius:var(--lg-radius-lg);}.cookie-categories.is-open{display:flex;}.cookie-category{display:flex;align-items:center;justify-content:space-between;gap:12px;}.cookie-category-label{display:flex;flex-direction:column;gap:2px;}.cookie-category-name{font-size:0.875rem;font-weight:600;color:var(--lg-text-primary);}.cookie-category-desc{font-size:0.75rem;color:var(--lg-text-tertiary);}.cookie-toggle{position:relative;width:44px;height:26px;flex-shrink:0;}.cookie-toggle input{opacity:0;width:0;height:0;}.cookie-toggle-track{position:absolute;inset:0;border-radius:13px;background:var(--lg-bg-tertiary);border:1px solid var(--lg-border);cursor:pointer;transition:var(--lg-transition);}.cookie-toggle input:checked + .cookie-toggle-track{background:var(--lg-accent);border-color:var(--lg-accent);}.cookie-toggle input:disabled + .cookie-toggle-track{opacity:0.6;cursor:not-allowed;}.cookie-toggle-track::after{content:'';position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:white;box-shadow:0 1px 3px rgba(0,0,0,0.2);transition:var(--lg-transition-bounce);}.cookie-toggle input:checked + .cookie-toggle-track::after{transform:translateX(18px);}.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;}.cookie-btn{flex:1;min-width:50px;padding:5px 10px;border-radius:var(--lg-radius-full);font-size:0.68rem;font-weight:600;cursor:pointer;border:none;transition:var(--lg-transition);font-family:var(--lg-font-body);}.cookie-btn-accept{background:var(--lg-accent);color:white;box-shadow:0 4px 12px rgba(0,122,255,0.3);}.cookie-btn-accept:hover{background:var(--lg-accent-hover);transform:translateY(-1px);}.cookie-btn-reject{background:var(--lg-bg-tertiary);color:var(--lg-text-primary);border:1px solid var(--lg-border);}.cookie-btn-reject:hover{background:var(--lg-bg-secondary);}.cookie-btn-customize{background:none;color:var(--lg-text-secondary);text-decoration:underline;padding:12px 8px;flex:none;}.cookie-btn-customize:hover{color:var(--lg-accent);}.cookie-reopen-btn{position:fixed;bottom:16px;left:16px;width:44px;height:44px;border-radius:50%;background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-md);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:9999;transition:var(--lg-transition);color:var(--lg-text-secondary);font-size:20px;}.cookie-reopen-btn:hover{transform:scale(1.05);background:var(--lg-bg-secondary);}.cookie-reopen-btn.is-visible{display:flex;}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--lg-radius-full);font-size:0.95rem;font-weight:600;cursor:pointer;border:none;text-decoration:none;transition:var(--lg-transition);font-family:var(--lg-font-body);white-space:nowrap;}.btn-primary{background:var(--lg-accent);color:white;box-shadow:0 4px 16px rgba(0,122,255,0.3);}.btn-primary:hover{background:var(--lg-accent-hover);color:white;transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,122,255,0.4);}.btn-secondary{background:var(--lg-bg-tertiary);color:var(--lg-text-primary);border:1px solid var(--lg-border);}.btn-secondary:hover{background:var(--lg-bg-secondary);color:var(--lg-text-primary);transform:translateY(-1px);}.btn-glass{background:var(--lg-detail-bg);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);border:1px solid var(--lg-border);color:var(--lg-text-primary);box-shadow:var(--lg-shadow-sm);}.btn-glass:hover{background:var(--lg-detail-bg-hover);color:var(--lg-text-primary);transform:translateY(-1px);box-shadow:var(--lg-shadow-md);}.breadcrumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:0.875rem;color:var(--lg-text-tertiary);margin-bottom:24px;}.breadcrumbs a{color:var(--lg-text-tertiary);}.breadcrumbs a:hover{color:var(--lg-accent);}.breadcrumbs .separator{font-size:0.75rem;opacity:0.5;}.lg-form-group label{display:block;font-size:0.875rem;font-weight:500;color:var(--lg-text-secondary);margin-bottom:6px;}.lg-form-group input,.lg-form-group textarea,.lg-form-group select{width:100%;padding:12px 16px;border:1px solid var(--lg-border);border-radius:var(--lg-radius-md);background:var(--lg-bg-secondary);color:var(--lg-text-primary);font-size:0.95rem;font-family:var(--lg-font-body);transition:var(--lg-transition);outline:none;}.lg-form-group input:focus,.lg-form-group textarea:focus,.lg-form-group select:focus{border-color:var(--lg-accent);box-shadow:0 0 0 3px var(--lg-accent-light);}.text-center{text-align:center;}.text-left{text-align:left;}.text-right{text-align:right;}.mt-0{margin-top:0;}.mt-1{margin-top:8px;}.mt-2{margin-top:16px;}.mt-3{margin-top:24px;}.mt-4{margin-top:32px;}.mt-5{margin-top:48px;}.mt-6{margin-top:64px;}.mb-0{margin-bottom:0;}.mb-2{margin-bottom:16px;}.mb-4{margin-bottom:32px;}.sr-only{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;top:-100%;left:0;padding:12px 24px;background:var(--lg-accent);color:white;border-radius:0 0 var(--lg-radius-md) 0;font-weight:600;z-index:10001;transition:top 0.2s ease;}.skip-link:focus{top:0;color:white;}.page-hero{padding:80px 0 60px;text-align:center;background:var(--lg-global-bg);backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);border-bottom:1px solid var(--lg-border);box-shadow:var(--lg-shadow-glass);}.page-hero h1{margin-bottom:16px;}.page-hero p{font-size:1.1rem;color:var(--lg-text-secondary);max-width:560px;margin:0 auto;}.portfolio-hero{padding:40px 0 32px;text-align:left;}.portfolio-hero h1{margin-bottom:12px;}.portfolio-hero p{font-size:1.1rem;color:var(--lg-text-secondary);}.entry-content{max-width:720px;margin:0 auto;padding:60px 24px;}.entry-content h2{margin:32px 0 12px;}.entry-content h3{margin:24px 0 8px;}.entry-content p{margin-bottom:16px;}.entry-content ul,.entry-content ol{margin-bottom:16px;}.entry-content li{margin-bottom:6px;}.entry-content blockquote{border-left:3px solid var(--lg-accent);padding:16px 20px;margin:24px 0;background:var(--lg-accent-light);border-radius:0 var(--lg-radius-md) var(--lg-radius-md) 0;}@media (max-width:1024px){.portfolio-grid{grid-template-columns:repeat(2,1fr);}}@media (max-width:768px){:root{--lg-header-height:56px;}.main-nav--desktop{display:none;}.hamburger-btn{display:flex;}.slide{flex-direction:column;padding:40px 24px 70px;min-height:480px;gap:24px;}.slide-image-area{width:100% !important;max-width:100%;}.slide-image-area img,.slide-image-area .slide-img{max-width:320px;max-height:380px;margin:0 auto;}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:16px;}.single-project-layout{grid-template-columns:1fr;}.project-info-panel{position:static;}.gallery-grid{grid-template-columns:repeat(2,1fr);}.footer-top{flex-direction:column;}.footer-bottom{flex-direction:column;text-align:center;}.footer-legal ul{justify-content:center;}}@media (max-width:480px){.lg-container{padding:0 16px;}.projects-grid{grid-template-columns:1fr;}.portfolio-grid{grid-template-columns:1fr;}.gallery-grid{grid-template-columns:1fr;}.cookie-banner{bottom:0;left:0;right:0;border-radius:var(--lg-radius-xl) var(--lg-radius-xl) 0 0;max-width:100%;}}.lg-demo-importer{max-width:600px;margin:40px auto;padding:0;}.lg-demo-importer h2{font-size:1.5rem;margin-bottom:8px;}.lg-demo-card{background:#fff;border:1px solid #ddd;border-radius:12px;padding:24px;margin-bottom:20px;}.lg-demo-progress{width:100%;height:6px;background:#e5e5ea;border-radius:3px;overflow:hidden;margin-top:16px;display:none;}.lg-demo-progress-bar{height:100%;background:#007aff;border-radius:3px;width:0;transition:width 0.3s ease;}.not-found-page,.search-page{padding:80px 0;text-align:center;}.not-found-page h1{font-size:6rem;color:var(--lg-text-quaternary);font-weight:900;margin-bottom:0;}.search-form{display:flex;max-width:480px;margin:24px auto 0;gap:12px;}.search-form input[type="search"]{flex:1;padding:12px 20px;border:1px solid var(--lg-border);border-radius:var(--lg-radius-full);background:var(--lg-bg-secondary);color:var(--lg-text-primary);font-size:0.95rem;font-family:var(--lg-font-body);outline:none;transition:var(--lg-transition);}.search-form input[type="search"]:focus{border-color:var(--lg-accent);box-shadow:0 0 0 3px var(--lg-accent-light);}@media (orientation:landscape) and (max-height:500px){.site-header{width:90vw !important;max-width:90vw !important;min-width:0 !important;padding:0 16px;top:6px;left:50% !important;transform:translateX(-50%) !important;transition:none !important;height:auto;min-height:var(--lg-header-height);}.header-inner{gap:8px;flex-wrap:nowrap;overflow:visible;transition:none !important;}.main-nav--desktop{display:none !important;}.main-nav--landscape{display:flex !important;flex:1 1 0;align-items:center;justify-content:center;min-width:0;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;}.main-nav--landscape::-webkit-scrollbar{display:none;}.main-nav--landscape>ul,.main-nav--landscape .menu{display:flex !important;flex-wrap:nowrap;align-items:center;gap:2px;list-style:none;margin:0;padding:0 4px;}.hamburger-btn{display:none !important;}.main-nav--landscape ul li a{font-size:0.78rem;padding:5px 9px;white-space:nowrap;}[data-mobile-toggle="0"] .theme-toggle-wrap{display:none !important;}}@media print{.site-header,.site-footer,.cookie-banner,.cookie-reopen-btn,.hamburger-btn,.mobile-menu-overlay{display:none !important;}.site-main{padding-top:0;}}.theme-toggle-wrap{display:flex;align-items:center;gap:7px;}.toggle-label{font-size:0.72rem;font-weight:600;letter-spacing:0.03em;color:var(--lg-text-secondary);white-space:nowrap;transition:opacity 0.2s;pointer-events:none;display:none;}.toggle-label-dark{display:none;}.theme-toggle.toggle-green .theme-toggle-input:checked~.theme-toggle-track,.theme-toggle.toggle-green input:checked + .theme-toggle-track,.theme-toggle.toggle-green input.theme-toggle-input:checked + .theme-toggle-track{background:#34c759;border-color:#34c759;}.mobile-menu-footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 0 8px;border-top:1px solid var(--lg-border);margin-top:auto;}.contact-page{padding:48px 0 80px;}.contact-page .social-links{justify-content:center;gap:20px;margin-bottom:19px;}.contact-page .social-link{width:56px;height:56px;}.contact-content{max-width:640px;margin:0 auto;text-align:center;}.lg-gears-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;background:none;border:none;box-shadow:none;cursor:pointer;height:28px;width:28px;color:var(--lg-text-primary);transition:transform .18s cubic-bezier(.34,1.56,.64,1),opacity .15s ease;-webkit-tap-highlight-color:transparent;outline:none;}.lg-gears-btn:active{transform:scale(.82);opacity:.6;transition:transform .08s ease,opacity .08s ease;}.lg-gears-btn:hover .lg-gears-svg{opacity:1;}.lg-gears-btn[aria-expanded="true"] .lg-gears-svg{transform:rotate(30deg);}.lg-gears-svg{width:28px;height:28px;opacity:.78;transition:transform .32s cubic-bezier(.34,1.56,.64,1),opacity .2s ease;display:block;}[data-theme="light"] .lg-gears-svg{opacity:.68;}.lg-gears-btn[aria-expanded="false"] .lg-gears-svg{transform:rotate(0deg);}.header-controls{gap:10px;}.header-controls .theme-toggle-wrap{margin-right:2px;}[hidden]{display:none !important;}.lg-lang-popover{position:absolute;top:calc(var(--lg-header-height) + 8px);right:0;padding:10px 12px;display:flex;gap:10px;border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);backdrop-filter:var(--lg-detail-blur);-webkit-backdrop-filter:var(--lg-detail-blur);box-shadow:0 18px 50px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.14);z-index:9999;transform-origin:top right;animation:lgPopIn .28s cubic-bezier(.34,1.56,.64,1) both;}@keyframes lgPopIn{from{transform:scale(.72);opacity:0}to{transform:scale(1);opacity:1}}@keyframes lgPopOut{from{transform:scale(1);opacity:1}to{transform:scale(.82);opacity:0}}.lg-lang-popover.is-closing{animation:lgPopOut .12s ease forwards;}.lg-lang-flag{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease,filter .15s ease;}.lg-lang-flag:hover{transform:translateY(-1px);background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.22);}.lg-lang-flag.is-active{background:rgba(10,132,255,.16);border-color:rgba(10,132,255,.92);outline:2px solid rgba(10,132,255,.92);outline-offset:2px;box-shadow:0 14px 28px rgba(10,132,255,.22),0 0 0 1px rgba(10,132,255,.25),inset 0 0 0 2px rgba(10,132,255,.30);}.lg-lang-popover .lg-lang-flag.is-active,.lg-lang-flags--mobile .lg-lang-flag.is-active{outline:2px solid rgba(10,132,255,.95);}.lg-lang-flags--mobile{display:flex;gap:8px;margin-left:auto;align-items:center;}#mobile-menu .mobile-menu-footer{gap:10px;}.lg-lang-popover{flex-direction:column;gap:0;align-items:stretch;}.lg-popover-flags{display:flex;gap:10px;align-items:center;padding:2px 0;}.lg-popover-sep{height:1px;background:rgba(255,255,255,.18);margin:8px 0;border:none;width:100%;flex-shrink:0;}[data-theme="light"] .lg-popover-sep,body:not(.dark-mode) .lg-popover-sep{background:rgba(0,0,0,.12);}.lg-popover-wall-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:2px 0;}.lg-popover-wall-label{font-size:0.72rem;font-weight:600;letter-spacing:0.03em;color:var(--lg-text-secondary);white-space:nowrap;}.wallpaper-toggle-input:checked + .theme-toggle-track{background:var(--lg-accent);border-color:var(--lg-accent);}.wallpaper-toggle-input:not(:checked) + .theme-toggle-track{background:rgba(120,120,128,.32);border-color:rgba(120,120,128,.4);}.wallpaper-toggle-input:checked + .theme-toggle-track .theme-toggle-thumb{transform:translateX(22px);background:#2c2c2e;color:#ffffff;}body:not(.dark-mode):not([data-theme="dark"]) .wallpaper-toggle-input:checked + .theme-toggle-track .theme-toggle-thumb{background:#ffffff;color:#1c1c1e;}.wallpaper-toggle-input:not(:checked) + .theme-toggle-track .theme-toggle-thumb{transform:translateX(0);background:#ffffff;color:#1c1c1e;}body:not(.dark-mode):not([data-theme="dark"]) .wallpaper-toggle-input:not(:checked) + .theme-toggle-track .theme-toggle-thumb{background:#2c2c2e;color:#ffffff;}.mobile-wall-row{width:100%;flex-basis:100%;padding:4px 0 6px;}.mobile-wall-sep{height:1px;background:var(--lg-separator);margin:4px 0 8px;width:52px;display:block;}.mobile-wall-row .lg-popover-wall-row{justify-content:flex-start;gap:16px;}html.lg-wallpaper-off #lg-wallpaper-layer{display:none;}html.lg-wallpaper-off body.has-wallpaper .card,html.lg-wallpaper-off body.has-wallpaper .project-card,html.lg-wallpaper-off body.has-wallpaper .hero-slider,html.lg-wallpaper-off body.has-wallpaper .our-description-block{backdrop-filter:none;-webkit-backdrop-filter:none;}@media (max-width:767px) and (orientation:portrait){.lg-gears-btn,.lg-lang-popover{display:none !important;}}@media (min-width:768px),(orientation:landscape){#mobile-menu .lg-lang-flags--mobile{display:none;}}#lg-wallpaper-layer{position:fixed;inset:0;z-index:-1;pointer-events:none;}#lg-wallpaper-layer .lg-wallpaper-light,#lg-wallpaper-layer .lg-wallpaper-dark{position:absolute;inset:0;background-size:cover;background-position:center center;background-repeat:no-repeat;transition:opacity 0.35s ease;}#lg-wallpaper-layer .lg-wallpaper-light{opacity:1;}body[data-theme="dark"] #lg-wallpaper-layer .lg-wallpaper-light,body.dark-mode #lg-wallpaper-layer .lg-wallpaper-light{opacity:0;}#lg-wallpaper-layer .lg-wallpaper-dark{opacity:0;}body[data-theme="dark"] #lg-wallpaper-layer .lg-wallpaper-dark,body.dark-mode #lg-wallpaper-layer .lg-wallpaper-dark{opacity:1;}body.has-wallpaper .card,body.has-wallpaper .project-card,body.has-wallpaper .hero-slider,body.has-wallpaper .our-description-block{backdrop-filter:var(--lg-global-blur);-webkit-backdrop-filter:var(--lg-global-blur);}body.has-wallpaper-light:not([data-theme="dark"]):not(.dark-mode) #social-section .section-header,body.has-wallpaper-dark[data-theme="dark"] #social-section .section-header,body.has-wallpaper-dark.dark-mode #social-section .section-header{display:inline-block;margin-left:auto;margin-right:auto;padding:18px 32px 22px;border-radius:var(--lg-radius-xl);backdrop-filter:var(--lg-shield-blur,var(--lg-detail-blur));-webkit-backdrop-filter:var(--lg-shield-blur,var(--lg-detail-blur));border:1px solid var(--lg-border);box-shadow:var(--lg-shadow-glass);max-width:fit-content;}body.has-wallpaper-light:not([data-theme="dark"]):not(.dark-mode) #social-section .section-header{background:var(--lg-textshield-strong,rgba(255,255,255,0.28));}body.has-wallpaper-dark[data-theme="dark"] #social-section .section-header,body.has-wallpaper-dark.dark-mode #social-section .section-header{background:var(--lg-textshield-strong,rgba(0,0,0,0.38));}.project-video-block{margin:32px 0;}.project-video-wrap{position:relative;margin:0 auto 0 0;}.project-video-iframe{width:100%;aspect-ratio:16 / 9;border-radius:var(--lg-radius-xl);display:block;box-shadow:var(--lg-shadow-glass);}.lg-editorial-video-iframe{width:100%;aspect-ratio:16 / 9;border-radius:var(--lg-radius-xl);display:block;box-shadow:var(--lg-shadow-glass);}.lg-editorial-page{padding-bottom:80px;}.lg-editorial-page .home-section{padding:32px 0;}.lg-editorial-page .home-section + .home-section{margin-top:26px;}.lg-editorial-page #social-section{padding-top:13px;padding-bottom:13px;margin-bottom:13px;}.lg-editorial-block{}.lg-editorial-hero-inner{text-align:center;max-width:760px;margin:0 auto;padding:60px 0 20px;}.lg-editorial-h1{font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800;line-height:1.08;letter-spacing:-0.03em;color:var(--lg-text-primary);margin-bottom:16px;}.lg-editorial-hero-subtitle{font-size:1.1rem;color:var(--lg-text-secondary);line-height:1.7;margin-bottom:10px;}.lg-editorial-hero-note{font-size:0.85rem;color:var(--lg-text-tertiary);margin:0;}.lg-editorial-intro-wrap{max-width:680px;margin:0 auto;}.lg-editorial-text-card{max-width:680px;}.lg-editorial-disclaimer-card{border-left:3px solid var(--lg-accent);}.lg-editorial-disclaimer-text{font-size:0.875rem;color:var(--lg-text-secondary);line-height:1.7;}.lg-editorial-pills-wrap{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;}.lg-editorial-pill{display:inline-flex;align-items:center;text-decoration:none;transition:var(--lg-transition);}a.lg-editorial-pill:hover{transform:translateY(-1px);opacity:0.85;}.lg-editorial-slider-outer{margin-top:20px;}.lg-editorial-slider-centered{box-sizing:border-box;}.lg-editorial-slider{position:relative;width:calc(100% - 48px);margin:0 24px 26px;overflow:hidden;border-radius:var(--lg-radius-xl);background:var(--lg-bg-secondary);user-select:none;-webkit-user-select:none;}.lg-editorial-slider.is-full-height{height:100vh;}.lg-editorial-slider.is-custom-height{height:var(--lg-ed-slider-height,60vh);}.lg-editorial-slider.is-full-height,.lg-editorial-slider.is-custom-height{min-height:0;}.lg-editorial-slider.is-full-height .slider-track,.lg-editorial-slider.is-custom-height .slider-track,.lg-editorial-slider.is-full-height .slide,.lg-editorial-slider.is-custom-height .slide{height:100%;min-height:0;}.lg-editorial-slider .slide{min-width:100%;display:flex;flex-direction:row;align-items:stretch;padding:0 0 0 0;gap:0;min-height:280px;}.lg-editorial-slider .slide-image-area{flex:0 0 50%;position:relative;overflow:hidden;display:flex;align-items:stretch;}.lg-editorial-slider .slide-image-area img,.lg-editorial-slider .slide-image-area .slide-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;padding:0;max-width:none;max-height:none;}.lg-editorial-slider .slide-content{flex:1;display:flex;flex-direction:column;gap:16px;padding:32px 40px;justify-content:center;}.lg-editorial-slider .slide:not(:has(.slide-image-area)) .slide-content,.lg-editorial-slider .slide-no-image~.slide-content{flex:1 1 100%;padding:40px;}.lg-editorial-related-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr)) !important;gap:16px !important;}.lg-editorial-related-card .project-card-image{aspect-ratio:4/3;}.lg-editorial-related-card .project-card-title{font-size:0.85rem;}.lg-editorial-related-card .project-card-title a{color:var(--lg-accent);}.lg-editorial-related-card .project-card-desc,.lg-editorial-related-card .project-card-badges,.lg-editorial-related-card .project-card-link{display:none !important;}.lg-editorial-faq-list{display:flex;flex-direction:column;gap:10px;max-width:760px;margin:0 auto;}.lg-editorial-faq-item{display:flex;flex-direction:column;align-items:stretch;overflow:hidden;border-radius:var(--lg-radius,14px);background:var(--lg-bg-glass);backdrop-filter:blur(var(--lg-global-blur,20px)) saturate(1.6);-webkit-backdrop-filter:blur(var(--lg-global-blur,20px)) saturate(1.6);border:1px solid rgba(255,255,255,0.10);transition:box-shadow var(--lg-transition);}.lg-editorial-faq-item:hover{box-shadow:0 4px 24px rgba(0,0,0,0.10);}.lg-editorial-faq-trigger{display:flex !important;align-items:center;justify-content:space-between !important;width:100%;max-width:100%;text-align:left;font-weight:600;font-size:0.95rem;gap:12px;cursor:pointer;padding:16px 20px;background:transparent !important;border:none !important;border-radius:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;color:var(--lg-text-primary);transition:background var(--lg-transition);}.lg-editorial-faq-trigger:hover{background:rgba(255,255,255,0.04) !important;}.lg-faq-question-text{flex:1;}.lg-faq-hamburger{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:20px;height:20px;flex-shrink:0;color:var(--lg-accent);}.lg-faq-hamburger span{display:block;width:16px;height:2px;background:currentColor;border-radius:2px;transition:var(--lg-transition);}.lg-faq-hamburger.is-active span:nth-child(1){transform:rotate(45deg) translate(4px,4px);}.lg-faq-hamburger.is-active span:nth-child(2){opacity:0;transform:scaleX(0);}.lg-faq-hamburger.is-active span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px);}.lg-editorial-faq-separator{display:none;height:1px;margin:0 16px;background:rgba(var(--lg-text-primary-rgb,28,28,30),0.10);}.lg-editorial-faq-item.is-open .lg-editorial-faq-separator{display:block;}.lg-editorial-faq-answer{overflow:hidden;max-height:0;transition:max-height 0.32s cubic-bezier(0.4,0,0.2,1),padding 0.32s cubic-bezier(0.4,0,0.2,1);padding:0 20px;box-sizing:border-box;}.lg-editorial-faq-item.is-open .lg-editorial-faq-answer{max-height:600px;padding:14px 20px 18px;}.lg-editorial-faq-answer p{font-size:0.92rem;color:var(--lg-text-secondary);line-height:1.75;margin:0;}@media (max-width:768px){.lg-editorial-faq-trigger{padding:14px 16px;font-size:0.9rem;}.lg-editorial-faq-answer{padding:0 16px;}.lg-editorial-faq-item.is-open .lg-editorial-faq-answer{padding:12px 16px 16px;}.lg-editorial-faq-separator{margin:0 12px;}}.lg-editorial-slider-centered{box-sizing:border-box;transition:max-width 0.3s ease;}@media (max-width:768px){.lg-editorial-slider-centered{max-width:96% !important;margin-left:auto !important;margin-right:auto !important;}}.lg-editorial-slide-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px;}.lg-editorial-slide-pill{}.slide-tag--alt{background:rgba(52,199,89,0.12);color:#30b350;}[data-theme="light"] .slide-tag--alt{background:rgba(52,199,89,0.15);}.lg-editorial-cards-section{}.lg-editorial-page .home-section + .home-section{margin-top:26px !important;}.lg-editorial-page .lg-editorial-block + .lg-editorial-block{margin-top:26px !important;}.lg-editorial-page .home-section{padding:calc(var(--lg-section-padding,80px) * 0.4) 0 !important;}.lg-editorial-page body .lg-editorial-slider.is-custom-height .slide-image-area img{object-fit:contain;}body .lg-editorial-slider.is-custom-height .slide-content{justify-content:flex-start;padding-top:clamp(18px,5vh,56px);}body .lg-editorial-slider.is-custom-height .slide-title{font-size:clamp(44px,5.2vw,96px);line-height:1.02;letter-spacing:-0.02em;margin-top:6px;}body .lg-editorial-slider.is-custom-height .slide-subtitle{font-size:clamp(18px,2vw,28px);margin-top:6px;}body .lg-editorial-slider.is-custom-height .slide-badges{margin-top:10px;}@media (prefers-reduced-motion:reduce){*:not(#lg-entry-curtain),*:not(#lg-entry-curtain)::before,*:not(#lg-entry-curtain)::after{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}}html.no-blur .lg-glass,html.no-blur .site-header,html.no-blur .latest-projects,html.no-blur .our-description-block,html.no-blur .project-card,html.no-blur .project-info-card,html.no-blur .site-footer,html.no-blur .about-card,html.no-blur .page-hero,html.no-blur .hero-slider,html.no-blur .slide,html.no-blur .mobile-menu-sheet,html.no-blur .lg-lang-popover,html.no-blur .lightbox,html.no-blur .lightbox-content,html.no-blur .btn-glass,html.no-blur .info-card,html.no-blur .editorial-card,html.no-blur .lg-editorial-block,html.no-blur .section-header,html.no-blur .cookie-banner,html.no-blur .di-pill,html.no-blur .back-btn,html.no-blur .year-card,html.no-blur .tag-pill,html.no-blur .breadcrumb,html.no-blur #site-header{backdrop-filter:none;-webkit-backdrop-filter:none;}[data-reveal]{opacity:0;transition:opacity 0.55s cubic-bezier(0.4,0,0.2,1),transform 0.55s cubic-bezier(0.4,0,0.2,1);will-change:opacity,transform;}[data-reveal="left"]{transform:translateX(-36px);}[data-reveal="right"]{transform:translateX(36px);}[data-reveal="up"]{transform:translateY(28px);}[data-reveal="fade"]{transform:none;}[data-reveal-delay="1"]{transition-delay:0.08s;}[data-reveal-delay="2"]{transition-delay:0.16s;}[data-reveal-delay="3"]{transition-delay:0.24s;}[data-reveal].lg-revealed{opacity:1;transform:none;}@media (prefers-reduced-motion:reduce){[data-reveal]{transform:none !important;transition:opacity 0.4s ease !important;}}:root{--lg-slide-duration:0.55s;}.hero-slider .slide{position:absolute;inset:0;opacity:0;pointer-events:none;}.hero-slider .slide.is-active{opacity:1;pointer-events:auto;}.hero-slider .slide.is-entering,.hero-slider .slide.is-leaving{will-change:opacity,transform,clip-path;}[data-slider-transition="fade"] .slide{transition:opacity var(--lg-slide-duration) ease;}[data-slider-transition="fade"] .slide.is-entering{opacity:0;}[data-slider-transition="fade"] .slide.is-active{opacity:1;}[data-slider-transition="fade"] .slide.is-leaving{opacity:0;}[data-slider-transition="slide"] .slide{transition:opacity var(--lg-slide-duration) ease,transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1);}[data-slider-transition="slide"] .hero-slider[data-direction="next"] .slide.is-entering{transform:translateX(60px);opacity:0;}[data-slider-transition="slide"] .hero-slider[data-direction="next"] .slide.is-leaving{transform:translateX(-60px);opacity:0;}[data-slider-transition="slide"] .hero-slider[data-direction="prev"] .slide.is-entering{transform:translateX(-60px);opacity:0;}[data-slider-transition="slide"] .hero-slider[data-direction="prev"] .slide.is-leaving{transform:translateX(60px);opacity:0;}[data-slider-transition="slide"] .slide.is-active{transform:translateX(0);opacity:1;}[data-slider-transition="zoom"] .slide{transition:opacity var(--lg-slide-duration) ease,transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1);}[data-slider-transition="zoom"] .slide.is-entering{transform:scale(1.06);opacity:0;}[data-slider-transition="zoom"] .slide.is-active{transform:scale(1);opacity:1;}[data-slider-transition="zoom"] .slide.is-leaving{transform:scale(0.96);opacity:0;}[data-slider-transition="reveal"] .slide{transition:clip-path var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1),opacity calc(var(--lg-slide-duration) * 0.3) ease;}[data-slider-transition="reveal"] .hero-slider[data-direction="next"] .slide.is-entering{clip-path:inset(0 100% 0 0);opacity:1;}[data-slider-transition="reveal"] .hero-slider[data-direction="prev"] .slide.is-entering{clip-path:inset(0 0 0 100%);opacity:1;}[data-slider-transition="reveal"] .slide.is-active{clip-path:inset(0 0 0 0);opacity:1;}[data-slider-transition="reveal"] .slide.is-leaving{clip-path:inset(0 0 0 0);opacity:0;}[data-slider-transition="rise"] .slide{transition:opacity var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1),transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1);}[data-slider-transition="rise"] .slide.is-entering{transform:translateY(32px);opacity:0;}[data-slider-transition="rise"] .slide.is-active{transform:translateY(0);opacity:1;}[data-slider-transition="rise"] .slide.is-leaving{transform:translateY(-20px);opacity:0;}[data-slider-transition="blur-fade"] .slide{transition:opacity var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1),filter var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1),transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1);}[data-slider-transition="blur-fade"] .slide.is-entering{opacity:0;filter:blur(8px);transform:scale(1.03);}[data-slider-transition="blur-fade"] .slide.is-active{opacity:1;filter:blur(0px);transform:scale(1);}[data-slider-transition="blur-fade"] .slide.is-leaving{opacity:0;filter:blur(4px);transform:scale(0.98);}[data-slider-transition="scale-down"] .slide{transition:opacity var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1),transform var(--lg-slide-duration) cubic-bezier(0.34,1.2,0.64,1);}[data-slider-transition="scale-down"] .hero-slider[data-direction="next"] .slide.is-entering{transform:scale(1.08);opacity:0;}[data-slider-transition="scale-down"] .hero-slider[data-direction="next"] .slide.is-leaving{transform:scale(0.94);opacity:0;}[data-slider-transition="scale-down"] .hero-slider[data-direction="prev"] .slide.is-entering{transform:scale(0.94);opacity:0;}[data-slider-transition="scale-down"] .hero-slider[data-direction="prev"] .slide.is-leaving{transform:scale(1.08);opacity:0;}[data-slider-transition="scale-down"] .slide.is-active{transform:scale(1);opacity:1;}:root{--lg-slide-choreo:1;}.hero-slider .slide.is-entering .slide-img{transform:translateX(calc(-28px * var(--lg-slide-choreo)));opacity:calc(1 - var(--lg-slide-choreo));transition:transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1),opacity var(--lg-slide-duration) ease;}.hero-slider .slide.is-entering .slide-content{transform:translateX(calc(28px * var(--lg-slide-choreo)));opacity:calc(1 - var(--lg-slide-choreo));transition:transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1) calc(0.08s * var(--lg-slide-choreo)),opacity var(--lg-slide-duration) ease calc(0.08s * var(--lg-slide-choreo));}.hero-slider .slide.is-entering .slide-cta{transform:translateY(calc(16px * var(--lg-slide-choreo)));opacity:calc(1 - var(--lg-slide-choreo));transition:transform var(--lg-slide-duration) cubic-bezier(0.4,0,0.2,1) calc(0.16s * var(--lg-slide-choreo)),opacity var(--lg-slide-duration) ease calc(0.16s * var(--lg-slide-choreo));}.hero-slider .slide.is-active .slide-img,.hero-slider .slide.is-active .slide-content,.hero-slider .slide.is-active .slide-cta{transform:none;opacity:1;}.hero-slider[data-direction="prev"] .slide.is-entering .slide-img{transform:translateX(calc(28px * var(--lg-slide-choreo)));}.hero-slider[data-direction="prev"] .slide.is-entering .slide-content{transform:translateX(calc(-28px * var(--lg-slide-choreo)));}@media (prefers-reduced-motion:reduce){.hero-slider .slide,.hero-slider .slide .slide-img,.hero-slider .slide .slide-content,.hero-slider .slide .slide-cta{transition:opacity 0.3s ease !important;transform:none !important;filter:none !important;clip-path:none !important;}}.lg-auth-backdrop{position:fixed;inset:0;background:rgba(8,8,18,0.6);backdrop-filter:none;-webkit-backdrop-filter:none;z-index:99999;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;visibility:hidden;transition:opacity 0.35s cubic-bezier(0.4,0,0.2,1),visibility 0s linear 0.35s}.lg-auth-backdrop.lg-auth-open{opacity:1;pointer-events:all;visibility:visible;backdrop-filter:blur(16px) saturate(0.6);-webkit-backdrop-filter:blur(16px) saturate(0.6);transition:opacity 0.35s cubic-bezier(0.4,0,0.2,1),visibility 0s linear 0s}.lg-auth-modal{width:min(420px,92vw);background:radial-gradient(ellipse 90% 60% at 50% -10%,rgba(167,139,250,0.15) 0%,transparent 60%),rgba(18,18,28,0.92);border:1px solid rgba(255,255,255,0.14);border-radius:28px;padding:28px 28px 32px;position:relative;box-shadow:0 48px 96px rgba(0,0,0,0.6),0 0 0 1px rgba(255,255,255,0.04) inset;transform:translateY(24px) scale(0.96);transition:transform 0.45s cubic-bezier(0.34,1.3,0.64,1)}@media (max-width:540px){.lg-auth-backdrop{align-items:flex-start;overflow-y:auto;overflow-x:hidden;padding:max(20px,env(safe-area-inset-top)) 0 max(20px,env(safe-area-inset-bottom))}.lg-auth-modal{margin:auto;width:min(420px,94vw);overflow-y:visible}}.lg-auth-backdrop.lg-auth-open .lg-auth-modal{transform:translateY(0) scale(1)}.lg-auth-modal::before{content:'';position:absolute;top:0;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent)}.lg-auth-tabs{display:flex;gap:4px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:4px;margin-bottom:24px}.lg-auth-tab{flex:1;background:transparent;border:none;color:rgba(255,255,255,0.5);font-family:inherit;font-size:13px;font-weight:500;padding:8px;border-radius:9px;cursor:pointer;transition:background 0.2s,color 0.2s}.lg-auth-tab.active{background:rgba(255,255,255,0.1);color:#fff}.lg-auth-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.5);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 0.2s,color 0.2s}.lg-auth-close:hover{background:rgba(255,255,255,0.12);color:#fff}.lg-auth-panel{display:flex;flex-direction:column;gap:12px}.lg-hidden{display:none !important}.lg-auth-title{font-size:20px;font-weight:700;color:#fff;margin:0}.lg-auth-sub{font-size:13px;color:rgba(255,255,255,0.5);margin:-4px 0 4px}.lg-auth-error{font-size:12px;color:#f87171;background:rgba(248,113,113,0.1);border:1px solid rgba(248,113,113,0.2);border-radius:10px;padding:8px 12px;display:none}.lg-auth-error:not(:empty){display:block}.lg-auth-field{display:flex;flex-direction:column;gap:5px}.lg-auth-field label{font-size:11px;font-weight:600;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:0.08em;display:flex;align-items:center;gap:6px}.lg-required{color:rgba(167,139,250,0.7);font-weight:400;text-transform:none;letter-spacing:0;font-size:10px}.lg-optional{color:rgba(255,255,255,0.3);font-weight:400;text-transform:none;letter-spacing:0;font-size:10px}.lg-auth-field input{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:11px 14px;color:#fff;font-family:inherit;font-size:14px;outline:none;transition:border-color 0.2s,background 0.2s}.lg-auth-field input:focus{border-color:rgba(167,139,250,0.5);background:rgba(255,255,255,0.08)}.lg-auth-field input::placeholder{color:rgba(255,255,255,0.25)}.lg-nick-input-wrap{position:relative}.lg-nick-prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,0.35);font-size:14px;pointer-events:none}.lg-nick-input-wrap input{padding-left:26px}.lg-auth-nicks-section{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.07);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px}.lg-auth-nicks-label{font-size:11px;font-weight:600;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:0.08em;display:flex;flex-direction:column;gap:3px;margin:0}.lg-auth-nicks-hint{font-weight:400;color:rgba(255,255,255,0.3);text-transform:none;letter-spacing:0;font-size:10px}.lg-auth-visibility{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.07);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px}.lg-vis-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:rgba(255,255,255,0.5)}.lg-vis-options{display:flex;gap:6px}.lg-vis-opt{display:flex;align-items:center;gap:5px;font-size:11px;cursor:pointer}.lg-vis-opt input{accent-color:#a78bfa}.lg-vis-opt span{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:4px 10px;transition:background 0.15s,border-color 0.15s}.lg-vis-opt input:checked + span{background:rgba(167,139,250,0.15);border-color:rgba(167,139,250,0.35);color:#c4b5fd}.lg-auth-checkbox{display:flex;align-items:center;gap:10px;font-size:12px;color:rgba(255,255,255,0.5);cursor:pointer}.lg-auth-checkbox input{accent-color:#a78bfa}.lg-auth-btn{width:100%;background:linear-gradient(135deg,rgba(167,139,250,0.85),rgba(96,165,250,0.75));border:1px solid rgba(255,255,255,0.2);border-radius:14px;padding:14px;color:#fff;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,0.1) inset,0 8px 24px rgba(100,60,220,0.3);transition:transform 0.15s,box-shadow 0.15s}.lg-auth-btn::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:rgba(255,255,255,0.45)}.lg-auth-btn:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,255,255,0.15) inset,0 12px 32px rgba(100,60,220,0.4)}.lg-auth-btn:active{transform:scale(0.98)}.lg-auth-btn:disabled{opacity:0.6;cursor:default;transform:none}.lg-auth-switch{font-size:12px;color:rgba(255,255,255,0.4);text-align:center;margin:0}.lg-auth-switch a{color:rgba(167,139,250,0.8);text-decoration:none}.lg-auth-switch a:hover{color:#c4b5fd}.lg-fav-btn--inline{display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:10px;padding:7px 12px;color:rgba(255,255,255,0.6);cursor:pointer;font-size:13px;transition:background 0.2s,color 0.2s,border-color 0.2s}.lg-fav-btn--inline:hover{background:rgba(255,255,255,0.1);color:#fff}.lg-fav-btn--inline.lg-fav-active{color:#f472b6;border-color:rgba(244,114,182,0.3)}.lg-fav-btn--inline.lg-fav-loading{opacity:0.5;pointer-events:none}.lg-xp-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%) translateY(20px);background:rgba(20,20,32,0.92);border:1px solid rgba(167,139,250,0.3);border-radius:100px;padding:10px 20px;color:#c4b5fd;font-size:13px;font-weight:500;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 8px 32px rgba(0,0,0,0.4),0 0 20px rgba(167,139,250,0.15);z-index:999999;opacity:0;pointer-events:none;visibility:hidden;transition:opacity 0.3s,transform 0.3s cubic-bezier(0.34,1.3,0.64,1),visibility 0s linear 0.3s;white-space:nowrap}.lg-xp-toast.lg-xp-toast-in{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;visibility:visible;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:opacity 0.3s,transform 0.3s cubic-bezier(0.34,1.3,0.64,1),visibility 0s linear 0s}.lg-overlay-backdrop{position:fixed;inset:0;background:rgba(8,8,18,0.6);z-index:99998;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none !important;touch-action:none;visibility:hidden;backdrop-filter:none;-webkit-backdrop-filter:none;transition:opacity 0.55s ease,visibility 0s linear 0.55s;animation-play-state:paused}.lg-overlay-backdrop *{animation-play-state:paused}.lg-overlay-backdrop.lg-ov-visible{opacity:1;pointer-events:all;touch-action:auto;visibility:visible;backdrop-filter:blur(16px) saturate(0.6);-webkit-backdrop-filter:blur(16px) saturate(0.6);transition:opacity 0.55s ease,visibility 0s linear 0s;animation-play-state:running}.lg-overlay-backdrop.lg-ov-visible *{animation-play-state:running}.lg-overlay-scene{width:min(460px,90vw);height:min(600px,86vh);perspective:1600px;opacity:0;transform:translateY(48px) scale(0.9);transition:transform 0.7s cubic-bezier(0.34,1.38,0.64,1),opacity 0.5s ease}.lg-overlay-scene.lg-ov-entered{opacity:1;transform:translateY(0) scale(1)}.lg-overlay-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform 0.9s cubic-bezier(0.645,0.045,0.355,1.000);position:relative}.lg-overlay-inner.lg-ov-flipped{transform:rotateY(-180deg)}.lg-overlay-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:32px;overflow:hidden}.lg-overlay-front{background:radial-gradient(ellipse 90% 60% at 50% -10%,rgba(167,139,250,0.18) 0%,transparent 65%),rgba(18,18,28,0.9);border:1px solid rgba(255,255,255,0.15);box-shadow:0 0 0 1px rgba(255,255,255,0.04) inset,0 2px 0 rgba(255,255,255,0.12) inset,0 48px 96px rgba(0,0,0,0.65);display:flex;flex-direction:column;align-items:center;padding:28px 24px 20px;cursor:pointer}.lg-overlay-back{transform:rotateY(180deg);background:radial-gradient(ellipse 90% 60% at 50% 110%,rgba(96,165,250,0.18) 0%,transparent 65%),rgba(18,18,28,0.9);border:1px solid rgba(255,255,255,0.15);box-shadow:0 0 0 1px rgba(255,255,255,0.04) inset,0 2px 0 rgba(255,255,255,0.1) inset,0 48px 96px rgba(0,0,0,0.65);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 32px;gap:16px}.lg-ov-shine-top{position:absolute;top:0;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.45),transparent)}.lg-ov-shine-left{position:absolute;left:0;top:12%;bottom:12%;width:1px;background:linear-gradient(180deg,transparent,rgba(255,255,255,0.15),transparent)}.lg-ov-shine-bottom{position:absolute;bottom:0;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent)}.lg-ov-logo{position:absolute;top:16px;left:20px;opacity:0.75}.lg-ov-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.5);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:15px;font-family:system-ui;transition:background 0.2s,color 0.2s}.lg-ov-close:hover{background:rgba(255,255,255,0.12);color:#fff}.lg-ov-pill{background:rgba(167,139,250,0.12);border:1px solid rgba(167,139,250,0.28);color:#c4b5fd;font-size:10px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;padding:5px 14px;border-radius:100px;margin-bottom:14px;margin-top:20px}.lg-ov-title{font-weight:800;font-size:clamp(18px,4vw,24px);color:#fff;text-align:center;line-height:1.2;margin-bottom:6px}.lg-ov-sub{font-size:12px;color:rgba(255,255,255,0.5);text-align:center;line-height:1.55;margin-bottom:16px;max-width:280px}.lg-ov-levels{width:100%;display:flex;flex-direction:column;gap:7px;flex:1;margin-bottom:14px}.lg-ov-lv-row{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:9px 13px;opacity:0;transform:translateX(-14px);transition:opacity 0.35s ease,transform 0.35s ease}.lg-ov-lv-row.lg-ov-in{opacity:1;transform:translateX(0)}.lg-ov-lv-icon{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lg-ov-lv-name{font-weight:700;font-size:12px;color:#fff}.lg-ov-lv-xp{margin-left:auto;font-size:11px;font-weight:700;color:rgba(167,139,250,0.85);white-space:nowrap}.lg-ov-lv-xp span{font-size:9px;font-weight:400;color:rgba(255,255,255,0.3)}.lg-ov-hint{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,0.3);font-size:11px;margin-top:auto;opacity:0;transition:opacity 0.4s}.lg-ov-hint.lg-ov-hint-show{opacity:1}.lg-overlay-backdrop.lg-ov-visible .lg-ov-hint.lg-ov-hint-show{animation:lg-hint-pulse 2s ease-in-out infinite}@keyframes lg-hint-pulse{0%,100%{opacity:.4}50%{opacity:1}}.lg-ov-hint-icon{width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center}.lg-overlay-backdrop.lg-ov-visible .lg-ov-hint-icon{animation:lg-hint-rotate 4s linear infinite}@keyframes lg-hint-rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}.lg-ov-emblem{width:72px;height:72px;border-radius:20px;background:radial-gradient(ellipse 80% 80% at 50% 30%,rgba(167,139,250,0.15),transparent),rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 6px rgba(167,139,250,0.05),0 0 0 12px rgba(167,139,250,0.02)}.lg-ov-back-title{font-weight:800;font-size:clamp(20px,4.5vw,26px);color:#fff;text-align:center;line-height:1.2}.lg-ov-back-sub{font-size:12.5px;color:rgba(255,255,255,0.5);text-align:center;line-height:1.6;max-width:280px}.lg-ov-btn{display:block;width:100%;background:linear-gradient(135deg,rgba(167,139,250,0.85),rgba(96,165,250,0.75));border:1px solid rgba(255,255,255,0.2);border-radius:14px;color:#fff;font-family:inherit;font-size:14px;font-weight:500;padding:14px;text-align:center;text-decoration:none;box-shadow:0 0 0 1px rgba(255,255,255,0.1) inset,0 8px 24px rgba(100,60,220,0.3);transition:transform 0.15s,box-shadow 0.15s}.lg-ov-btn:hover{transform:translateY(-1px)}.lg-ov-btn::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:rgba(255,255,255,0.45)}.lg-ov-back-flip{background:none;border:none;color:rgba(255,255,255,0.3);font-family:inherit;font-size:11px;cursor:pointer;transition:color 0.2s}.lg-ov-back-flip:hover{color:rgba(255,255,255,0.5)}.lg-user-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--lg-border);background:var(--lg-bg-glass);color:var(--lg-text-secondary);cursor:pointer;text-decoration:none;transition:var(--lg-transition);position:relative;flex-shrink:0;font-family:var(--lg-font-title)}.lg-user-btn:hover{background:var(--lg-bg-glass-hover);border-color:var(--lg-border-strong);color:var(--lg-text-primary);transform:scale(1.05)}.lg-user-btn--authed{background:linear-gradient(135deg,rgba(var(--lg-accent-rgb,0,122,255),0.25),rgba(var(--lg-accent-rgb,0,122,255),0.12));border-color:rgba(var(--lg-accent-rgb,0,122,255),0.3)}.lg-user-btn--authed:hover{background:linear-gradient(135deg,rgba(var(--lg-accent-rgb,0,122,255),0.35),rgba(var(--lg-accent-rgb,0,122,255),0.18));color:var(--lg-text-primary)}.lg-user-initial{font-size:14px;font-weight:800;line-height:1;color:var(--lg-accent)}.lg-user-level-dot{position:absolute;bottom:1px;right:1px;width:8px;height:8px;border-radius:50%;background:#d4a017;border:2px solid var(--lg-bg-primary)}body.lg-overlay-open{overflow:hidden !important}.lg-overlay-scene{pointer-events:all}.lg-fav-btn{position:absolute;bottom:10px;right:10px;width:32px;height:32px;border-radius:50%;background:var(--lg-bg-glass);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--lg-border);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:4;transition:background 0.2s,border-color 0.2s,transform 0.2s var(--lg-transition-bounce),backdrop-filter 0.2s;box-shadow:var(--lg-shadow-sm);padding:0}.lg-fav-btn:hover{background:var(--lg-bg-glass-hover);border-color:var(--lg-border-strong);transform:scale(1.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.lg-fav-btn.is-active{background:rgba(244,114,182,0.15);border-color:rgba(244,114,182,0.35)}.lg-fav-btn svg{width:14px;height:14px;stroke:var(--lg-text-secondary);fill:none;transition:stroke 0.2s,fill 0.2s;pointer-events:none}.lg-fav-btn.is-active svg{stroke:#f472b6;fill:#f472b6}.lg-fav-btn.is-active:hover svg{stroke:#ec4899;fill:#ec4899}.lg-fav-btn.lg-fav-guest-pulse{animation:lg-fav-guest-pulse 0.4s ease}@keyframes lg-fav-guest-pulse{0%{transform:scale(1)}40%{transform:scale(1.25)}70%{transform:scale(0.92)}100%{transform:scale(1)}}.lg-fav-btn-single{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 18px;border-radius:var(--lg-radius-full);background:var(--lg-bg-glass);backdrop-filter:var(--lg-blur-sm);-webkit-backdrop-filter:var(--lg-blur-sm);border:1px solid var(--lg-border);color:var(--lg-text-secondary);font-family:var(--lg-font-body);font-size:0.9rem;font-weight:600;cursor:pointer;transition:var(--lg-transition);box-shadow:var(--lg-shadow-sm)}.lg-fav-btn-single:hover{background:var(--lg-bg-glass-hover);border-color:var(--lg-border-strong);transform:translateY(-1px);box-shadow:var(--lg-shadow-md)}.lg-fav-btn-single.is-active{background:rgba(244,114,182,0.1);border-color:rgba(244,114,182,0.3);color:#f472b6}.lg-fav-btn-single svg{flex-shrink:0;transition:fill 0.2s,stroke 0.2s}.lg-fav-btn-single.is-active svg{fill:#f472b6;stroke:#f472b6}.lg-heart-fly{position:fixed;pointer-events:none;z-index:99999;width:18px;height:18px;display:flex;align-items:center;justify-content:center;will-change:transform,opacity;transform-origin:center}.lg-heart-fly svg{width:14px;height:14px;fill:#f472b6;stroke:#f472b6;filter:drop-shadow(0 0 4px rgba(244,114,182,0.6))}.project-card-image-wrap{position:relative}.project-card-image-wrap .project-card-image{display:block}.lg-auth-xp-badge{display:inline-block;background:var(--lg-accent-light);color:var(--lg-accent);border-radius:var(--lg-radius-full);padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:0.04em;margin-bottom:10px}.lg-auth-footer-note{font-size:11px;color:var(--lg-text-quaternary);text-align:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--lg-separator)}@keyframes lg-user-pulse{0%{transform:scale(1);}45%{transform:scale(1.18);}100%{transform:scale(1);}}.lg-user-btn--pulse{animation:lg-user-pulse 0.3s cubic-bezier(0.34,1.56,0.64,1) !important;}