:root{--bg:#ffffff;--bg-muted:#f4f7f8;--bg-paper:#fbfbfa;--bg-dark:#0f2f3a;--text:#0f1f24;--text-soft:#5f6f75;--text-invert:#ffffff;--accent:#00796B;--accent-light:#4fc3f7;--border:#e2e8ea;--radius:18px;--container:1200px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:var(--bg-paper);line-height:1.65}a{color:var(--text);text-decoration:none;background-image:linear-gradient(var(--accent),var(--accent));background-size:0% 2px;background-position:left bottom;background-repeat:no-repeat;transition:background-size 0.3s ease}a:visited{color:var(--text)}a:hover{background-size:100% 2px}img{max-width:100%;display:block}.container{max-width:var(--container);margin:0 auto;padding:0 24px}.container.narrow{max-width:1040px}.site-content{min-height:60vh}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--border)}.header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:72px;gap:32px}.logo-link{display:flex;align-items:center}.site-logo{height:64px;transition:transform 0.25s ease}.logo-link:hover .site-logo{transform:scale(1.03)}.header-center{display:flex;align-items:center;gap:28px}.form-search{flex:1;min-width:0}.header-search{display:flex;width:100%}.search-suggestions{position:absolute;top:100%;right:0;width:320px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 24px rgba(0,0,0,.08);display:none;z-index:200}.search-suggestions.open{display:block}.search-suggestions a{display:block;padding:10px 14px;text-decoration:none;color:var(--text);font-size:14px}.search-suggestions a:hover{background:var(--bg-muted)}.main-nav{display:flex;align-items:center;gap:28px}.main-nav a{font-size:14px;letter-spacing:0.12em;text-transform:uppercase;text-decoration:none;color:var(--text);font-weight:500;position:relative;padding-bottom:4px}.main-nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--accent);transition:width 0.25s ease}.main-nav a:hover::after{width:100%}.search-toggle{background:none;border:none;cursor:pointer;padding:10px;font-size:18px;color:var(--text);opacity:0.8;transition:opacity 0.2s ease}.search-toggle:hover{opacity:1}.header-search input{position:relative;right:0;width:0;opacity:0;pointer-events:none;padding:10px 16px;border-radius:999px;border:1px solid var(--border);background:#ffffff;font-size:14px;color:var(--text);transform:translateX(8px);transition:width 0.35s ease,opacity 0.2s ease,transform 0.25s ease,box-shadow 0.2s ease;outline:none;max-width:calc(100% - 60px)}.header-search:focus-within input{width:100%;opacity:1;pointer-events:auto;box-shadow:0 0 0 2px rgba(0,121,107,0.12);border-color:var(--accent)}.header-search input::placeholder{color:var(--text-soft)}.header-search.open input{width:100%;opacity:1;pointer-events:auto;border-color:var(--accent);box-shadow:0 0 0 2px rgba(0,121,107,.12)}.header-search input:focus{width:100%;opacity:1;pointer-events:auto}.header-contacts{display:flex;flex-direction:column;align-items:flex-end;line-height:1.3}.header-contacts a{text-decoration:none;color:var(--text);white-space:nowrap}.header-contacts .phone{font-size:15px;font-weight:600;letter-spacing:0.3px}.header-contacts .email{font-size:13px;opacity:0.75}.header-contacts a:hover{opacity:1}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:var(--text-soft);margin:32px 0}.breadcrumbs a{color:var(--text-soft);text-decoration:none}.breadcrumbs a:hover{color:var(--accent)}.breadcrumbs .sep{opacity:0.5}.breadcrumbs .current{color:var(--text);font-weight:500}.section{padding:120px 0;background:var(--bg-paper)}.section.paper{background:url("/static/img/paper-bg.png") center / cover no-repeat}.section.muted{background:linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92)),url("/static/img/stone-texture.png") center / cover no-repeat}.section h2{font-size:42px;margin-bottom:52px;text-align:center}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:56px}.value{padding:40px;border-radius:var(--radius);background:#ffffff;border:1px solid var(--border)}.value strong{display:block;font-size:22px;margin-bottom:18px}.value p{font-size:17px;line-height:1.65;margin-bottom:18px}.site-footer{background:var(--bg-paper);border-top:1px solid var(--border);padding:64px 24px 48px;font-size:13px}.footer-inner{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:48px;align-items:start}.footer-brand strong{font-size:18px;letter-spacing:0.12em}.footer-tagline{margin-top:8px;font-size:13px;color:var(--text-soft)}.footer-copy{margin-top:18px;font-size:12px;color:var(--text-soft)}.footer-nav{display:flex;flex-direction:column;gap:10px}.footer-nav a{color:var(--text);text-decoration:none;font-size:13px}.footer-nav a:hover{text-decoration:underline}.footer-contact a{font-weight:600;color:var(--accent);text-decoration:none}.footer-contact a:hover{text-decoration:underline}.footer-note{margin-top:14px;font-size:12px;color:var(--text-soft)}.hero{min-height:92vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 30%,rgba(0,0,0,.03),transparent 60%),linear-gradient(rgba(255,255,255,.96),rgba(255,255,255,.96)),url("/static/img/stone-texture.png") center / cover no-repeat}.hero .container{text-align:center;max-width:820px}.hero h1{font-size:96px;letter-spacing:.18em;margin-bottom:16px}.hero h2{font-size:18px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-soft);margin-bottom:56px}.hero-subtitle{font-size:22px;line-height:1.7;max-width:620px;margin:0 auto 72px}.hero-actions{display:flex;justify-content:center;gap:28px;flex-wrap:wrap}.button{padding:14px 30px;border-radius:999px;font-size:14px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:#00695c}.button.ghost{border:1px solid var(--border);color:var(--text)}.button.ghost:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:900px){.value-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;text-align:center}}@media (max-width:768px){.section{padding:80px 0}.section h2{font-size:32px}}.main-nav{position:relative}.main-nav .menu{list-style:none;display:flex;gap:28px;margin:0;padding:0}.main-nav .menu>li{position:relative}.main-nav .menu>li>a{font-size:14px;letter-spacing:0.12em;text-transform:uppercase;text-decoration:none;color:var(--text);font-weight:500;padding:8px 2px;display:inline-block;white-space:nowrap}.main-nav .menu>li>a::after{content:"";position:absolute;left:0;bottom:2px;width:0;height:1px;background:var(--accent);transition:width 0.25s ease}.main-nav .menu>li>a:hover::after{width:100%}.main-nav .submenu{position:absolute;top:100%;left:-16px;min-width:240px;padding:10px 0;background:#ffffff;border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,0.12);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity 0.2s ease,transform 0.25s ease,visibility 0.2s ease;z-index:300}.main-nav .submenu li{list-style:none}.main-nav .submenu a{display:block;padding:10px 22px;font-size:14px;text-transform:none;letter-spacing:normal;color:var(--text);text-decoration:none;white-space:nowrap}.main-nav .submenu a:hover{background:var(--bg-muted)}.main-nav .submenu .divider{height:1px;margin:8px 0;background:var(--border)}.main-nav .menu>li:hover>.submenu,.main-nav .menu>li:focus-within>.submenu{opacity:1;visibility:visible;transform:translateY(0)}.main-nav .menu>li.external>a{color:var(--accent)}.main-nav .menu>li.external>a::after{display:none}.main-nav .submenu-toggle{display:none}.mobile-menu-btn{display:none;flex-direction:column;justify-content:space-between;width:28px;height:20px;cursor:pointer;z-index:101;position:relative;background:none;border:none;padding:0}.mobile-menu-btn span{display:block;width:100%;height:2px;background:var(--text);border-radius:2px;transition:all 0.3s ease;position:absolute;left:0;transform-origin:center}.mobile-menu-btn span:nth-child(1){top:0}.mobile-menu-btn span:nth-child(2){top:50%;transform:translateY(-50%)}.mobile-menu-btn span:nth-child(3){bottom:0}.mobile-menu-btn.active span:nth-child(1){top:50%;transform:translateY(-50%) rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0;transform:translateY(-50%) scale(0)}.mobile-menu-btn.active span:nth-child(3){bottom:auto;top:50%;transform:translateY(-50%) rotate(-45deg)}.mobile-nav-overlay{position:fixed;top:72px;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:98;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease;pointer-events:none}.mobile-nav-overlay.active{opacity:1;visibility:visible;pointer-events:auto}@media (max-width:1280px){.main-nav .menu{gap:10px}}@media (max-width:1024px){.mobile-menu-btn{display:flex}.header-inner{grid-template-columns:auto 1fr auto;gap:20px;position:relative}.logo-link{order:1}.header-contacts{order:2;justify-self:center;align-items:center}.mobile-menu-btn{order:3}.header-center{display:none!important}.header-center.mobile-open{display:flex!important;position:absolute;top:100%;left:-24px;right:-24px;flex-direction:column;align-items:stretch;gap:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);box-shadow:0 4px 20px rgba(0,0,0,0.1);max-height:100vh;opacity:1;visibility:visible;transition:max-height 0.3s ease,opacity 0.3s ease,visibility 0.3s ease;z-index:99;padding:20px 48px}.main-nav{width:100%;order:1}.main-nav .menu{flex-direction:column;gap:0;width:100%}.main-nav .menu>li{width:100%;border-bottom:1px solid var(--border);display:flex;flex-direction:column;align-items:flex-start}.main-nav .menu>li:last-child{border-bottom:none}.main-nav .menu>li:has(.submenu),.main-nav .menu>li.has-submenu{position:relative}.main-nav .submenu-toggle{display:none;background:none;border:none;padding:0;width:20px;height:20px;cursor:pointer;font-size:10px;color:var(--text);flex-shrink:0;transition:transform 0.3s ease;align-items:center;justify-content:center;position:absolute;left:0;top:17px;z-index:100}.main-nav .menu>li:has(.submenu) .submenu-toggle,.main-nav .menu>li.has-submenu .submenu-toggle{display:flex}.main-nav .menu>li.active .submenu-toggle{transform:rotate(90deg);color:var(--accent)}.main-nav .menu>li>a{display:block;padding:16px 0;cursor:pointer;width:100%;position:relative;z-index:1}.main-nav .menu>li:has(.submenu)>a,.main-nav .menu>li.has-submenu>a{padding-left:28px}.main-nav .submenu{position:static;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transform:none;box-shadow:none;border:none;padding:0;background:transparent;min-width:auto;margin-top:0;transition:max-height 0.3s ease,opacity 0.3s ease,padding 0.3s ease}.main-nav .menu>li.active>.submenu{max-height:500px!important;opacity:1!important;visibility:visible!important;padding:8px 0 8px 0!important;margin-top:0;width:100%;overflow:visible!important}.main-nav .submenu li{list-style:none}.main-nav .submenu a{padding:12px;font-size:14px;text-transform:none;letter-spacing:normal}.form-search{order:2;width:100%;margin-top:20px;flex:none}.header-search{width:100%}.header-search input{width:100%!important;opacity:1!important;pointer-events:auto!important;max-width:100%}}@media (max-width:900px){.header-inner{gap:16px}.value-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;text-align:center}.header-contacts{align-items:flex-start}}.section.cta{background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border);padding:120px 0}.cta-inner{text-align:center}.section.cta h2{font-size:38px;margin-bottom:28px;letter-spacing:0.02em}.section.cta p{max-width:640px;margin:0 auto 48px;font-size:18px;line-height:1.7}.cta-button{display:inline-block;padding:18px 42px;border-radius:60px;background:var(--accent);color:#ffffff;text-decoration:none;font-size:14px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;transition:background 0.25s ease,transform 0.25s ease}.cta-button:hover{background:#00695c;transform:translateY(-2px)}.text-center{text-align:center}.luxury-center{text-align:center;max-width:820px;margin:3rem auto 0;font-weight:500;letter-spacing:0.02em}@media (max-width:768px){.section.cta h2{font-size:30px}.cta-button{padding:16px 34px}}.digital-verify{margin-top:80px;padding:64px 56px;border-radius:32px;background:radial-gradient(1200px 400px at 50% -100px,rgba(255,255,255,0.08),transparent),linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),url("/static/img/stone-texture.png") center / cover no-repeat;box-shadow:0 40px 120px rgba(0,0,0,0.6),inset 0 1px 0 rgba(255,255,255,0.08);text-align:center;position:relative;overflow:hidden}.digital-verify::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,0.06),transparent 80%);pointer-events:none}.digital-title{font-size:36px;font-weight:600;letter-spacing:0.04em;margin-bottom:18px;color:var(--text-invert)}.digital-lead{font-size:18px;font-weight:500;margin-bottom:10px;color:rgba(255,255,255,0.9)}.digital-subtext{max-width:640px;margin:0 auto 48px;font-size:16px;line-height:1.7;color:rgba(255,255,255,0.65)}.digital-verify-form{max-width:520px;margin:0 auto;padding:36px 38px;background:rgba(255,255,255,0.08);backdrop-filter:blur(12px);border-radius:24px;border:1px solid rgba(255,255,255,0.18);box-shadow:0 20px 60px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.12)}.digital-verify-field{margin-bottom:26px;text-align:left}.digital-verify-field label{display:block;margin-bottom:8px;font-size:13px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.7)}.digital-verify-field input{width:100%;padding:18px 20px;font-size:18px;letter-spacing:0.08em;text-transform:uppercase;background:rgba(0,0,0,0.45);border-radius:14px;border:1px solid rgba(255,255,255,0.25);color:#ffffff;outline:none;transition:border-color 0.25s ease,box-shadow 0.25s ease}.digital-verify-field input::placeholder{color:rgba(255,255,255,0.35)}.digital-verify-field input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(0,150,136,0.25)}.digital-verify-form .button{width:100%;padding:16px 0;font-size:13px;letter-spacing:0.18em;text-transform:uppercase}.digital-footnote{margin-top:22px;font-size:13px;color:rgba(255,255,255,0.55);text-align:center}#globalVerifyStatus{margin-top:18px;font-size:14px;color:#ffb74d}@media (max-width:768px){.digital-verify{padding:48px 24px;border-radius:22px}.digital-title{font-size:28px}.digital-verify-form{padding:28px 22px}.digital-verify-field input{font-size:16px}}.owner-result-image-wrap{display:flex;justify-content:center;margin:18px 0 24px}.owner-result-image-wrap img{max-width:220px;max-height:220px;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,0.25);object-fit:cover}.owner-result-block{margin-bottom:14px;text-align:center}.owner-result-label{font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-soft);margin-bottom:4px}.owner-result-value{font-size:1rem;font-weight:500}.owner-result-value.link{color:var(--accent);text-decoration:none}.owner-result-value.link:hover{text-decoration:underline}.contact-form{margin-top:42px;padding:42px 42px;border-radius:28px;background:rgba(255,255,255,0.92);border:1px solid rgba(0,0,0,0.06);box-shadow:0 30px 90px rgba(0,0,0,0.10),inset 0 1px 0 rgba(255,255,255,0.65);text-align:left}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 18px;margin-bottom:18px}.field{display:block}.field-wide{grid-column:1 / -1}.field-label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);margin-bottom:8px}.field-input{width:100%;padding:16px 16px;border-radius:16px;border:1px solid rgba(0,0,0,0.10);background:rgba(255,255,255,0.98);color:var(--text);outline:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.field-textarea{resize:vertical;min-height:120px}.field-input:focus{border-color:rgba(0,121,107,0.55);box-shadow:0 0 0 3px rgba(0,121,107,0.15)}.field-hint{display:block;margin-top:8px;font-size:13px;color:var(--text-soft)}.contact-form .button.full{width:100%;margin-top:10px;padding:16px 0}.form-status{margin-top:14px;font-size:14px;color:var(--text-soft)}.form-status.loading{color:#ffb74d}.form-status.success{color:#2e7d32}.form-status.error{color:#c62828}.contact-telegram-cta{margin-top:18px;padding-top:18px;border-top:1px solid rgba(0,0,0,0.08)}.contact-telegram-badge{display:inline-block;padding:10px 12px;border-radius:14px;background:rgba(0,121,107,0.08);border:1px solid rgba(0,121,107,0.18);color:var(--text);margin-bottom:12px}.contact-telegram-note{margin-top:10px;font-size:13px;color:var(--text-soft);line-height:1.6}@media (max-width:768px){.contact-form{padding:28px 18px;border-radius:22px}.contact-grid{grid-template-columns:1fr}}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.section-link{color:var(--accent,#00796B);text-decoration:none;font-weight:600;font-size:0.95rem}.section-link:hover{text-decoration:underline}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-card{display:flex;flex-direction:column;background:var(--bg-paper,#fff);border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(0,0,0,0.04),0 10px 26px rgba(0,0,0,0.08);transition:transform .2s ease,box-shadow .2s ease}.product-card:hover{transform:translateY(-3px);box-shadow:0 4px 14px rgba(0,0,0,0.10),0 18px 40px rgba(0,0,0,0.14)}.product-media{position:relative;width:100%;aspect-ratio:4 / 3;background:#f2f4f5}.product-media img{width:100%;height:100%;object-fit:cover;display:block}.product-media-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:0.08em;color:rgba(15,31,36,.45)}.product-body{padding:16px 16px 14px;display:flex;flex-direction:column;gap:10px}.product-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.product-card-title{margin:0;font-size:0.82rem;line-height:1.2;font-weight:500;letter-spacing:0.015em;text-align:left;max-width:100%}.badge{flex:0 0 auto;font-size:.78rem;padding:6px 12px;border-radius:999px;background:linear-gradient(135deg,rgba(0,121,107,.95),rgba(33,150,243,.95));color:#fff;font-weight:700;letter-spacing:.03em;box-shadow:0 4px 10px rgba(0,121,107,.35),inset 0 1px 0 rgba(255,255,255,.25)}.product-meta{font-size:.9rem;color:var(--text-soft,#5f6f75)}.product-meta span{color:var(--text,#0f1f24);font-weight:600}.product-cta{margin-top:auto;font-size:.9rem;color:var(--accent,#00796B);font-weight:600}@media (max-width:980px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.section-head{align-items:flex-start;flex-direction:column}.product-grid{grid-template-columns:1fr}}.catalog-hero{padding:96px 24px 72px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.catalog-hero h1{font-size:clamp(36px,5vw,56px);margin-bottom:20px;letter-spacing:0.04em}.catalog-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.catalog-section{padding:96px 24px;background:var(--bg-paper)}.catalog-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px}.catalog-card{padding:36px 32px 42px;border-radius:var(--radius);background:#ffffff;border:1px solid var(--border);color:var(--text);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease;display:flex;flex-direction:column}.catalog-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,0,0,0.08)}.catalog-card h2{font-size:24px;margin-bottom:14px;letter-spacing:0.02em}.catalog-card p{font-size:15px;line-height:1.6;color:var(--text-soft);margin-bottom:24px}.catalog-cta{font-size:13px;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent)}.catalog-philosophy{padding:96px 24px;background:var(--bg-muted);border-top:1px solid var(--border)}.catalog-philosophy-wrap{max-width:860px;margin:0 auto;text-align:center}.catalog-philosophy h3{font-size:32px;margin-bottom:24px}.catalog-philosophy p{font-size:18px;line-height:1.7;color:var(--text-soft)}.process-list{display:flex;flex-direction:column;gap:20px}.process-step{position:relative}.process-body.process-inline{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:16px;padding:20px 26px;border-radius:18px;background:rgba(255,255,255,0.65);box-shadow:0 1px 0 rgba(0,0,0,0.04),0 10px 28px rgba(0,0,0,0.05)}.process-index{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(0,0,0,0.18);background:var(--bg);font-size:13px;font-weight:600;color:var(--text)}.process-title-inline{font-size:16px;font-weight:500;color:var(--text)}.process-time-inline{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:6px 12px;border-radius:999px;background:rgba(0,0,0,0.04);font-size:18px;font-weight:700;letter-spacing:-0.02em;white-space:nowrap;color:var(--text)}.process-total{margin-top:64px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;gap:10px;border-radius:22px;background:rgba(255,255,255,0.75);box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 40px rgba(0,0,0,0.06)}.process-total-label{font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-soft)}.process-total-value{font-size:36px;font-weight:700;letter-spacing:-0.02em;color:var(--text)}.process-total::before{content:"—";font-size:28px;color:var(--text-soft)}.product-card{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,0.08);transition:transform 0.25s ease,box-shadow 0.25s ease;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,0.12)}.product-card img{width:100%;object-fit:cover;display:block;aspect-ratio:1 / 1}.product-card-content{padding:20px;flex:1;display:flex;flex-direction:column;justify-content:space-between}.product-card h3{font-size:20px;font-weight:700;margin:0 0 12px 0;color:var(--text)}.product-card p{font-size:14px;color:var(--text-soft);line-height:1.4;margin:0 0 16px 0}.product-badge{display:inline-block;background:#ff5722;color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;padding:4px 10px;border-radius:999px;margin-bottom:12px}.product-card .button{margin-top:auto;width:100%;text-align:center}.product-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;justify-content:center}.badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;text-transform:uppercase;color:#fff}.badge-unique{background:#2196F3}.badge-series{background:#ff5722}.product-title{text-align:center;margin-bottom:14px;font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:0.02em}.product-material{text-align:center;color:var(--text-soft);margin-bottom:56px;font-size:0.95rem}.material-link{font-weight:600;color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.25s ease}.material-link:hover{border-bottom-color:currentColor}.product-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:72px}.gallery-item{padding:0;border:none;background:none;cursor:zoom-in;border-radius:18px;overflow:hidden;aspect-ratio:4 / 5}.gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform 0.45s cubic-bezier(.2,.8,.2,1),filter 0.3s ease}.gallery-item:hover img{transform:scale(1.04);filter:brightness(1.02)}.lightbox{position:fixed;inset:0;z-index:2000}.lightbox[hidden]{display:none}.lightbox-backdrop{position:absolute;inset:0;background:rgba(10,12,14,0.92);backdrop-filter:blur(6px)}.lightbox-image{position:absolute;top:50%;left:50%;max-width:92vw;max-height:92vh;transform:translate(-50%,-50%) scale(1);transition:transform 0.35s cubic-bezier(.2,.8,.2,1);border-radius:8px;cursor:zoom-in}.lightbox-image.is-zoomed{transform:translate(-50%,-50%) scale(1.8);cursor:zoom-out}.lightbox-image.is-zoomed{transform:translate(-50%,-50%) scale(1.8);cursor:zoom-out}.owner-card{display:flex;align-items:center;gap:20px;padding:28px 32px;border-radius:22px;background:rgba(255,255,255,0.75);border:1px solid var(--border);box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 40px rgba(0,0,0,0.06)}.owner-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:18px;font-weight:700}.owner-public .owner-icon{background:rgba(33,150,243,0.12);color:#2196F3}.owner-private .owner-icon{background:rgba(0,0,0,0.08);color:var(--text-soft)}.owner-body{display:flex;flex-direction:column;gap:6px}.owner-name{font-size:18px;font-weight:600;letter-spacing:0.02em;color:var(--text)}.owner-name.obfuscated{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0.18em;color:var(--text-soft)}.owner-note{font-size:14px;line-height:1.5;color:var(--text-soft)}.pulse{position:relative}.pulse::after{content:"";position:absolute;inset:0;border-radius:50%;background:currentColor;opacity:0.15;animation:pulse-ring 2.4s ease-out infinite}.cta-note{margin-top:18px;font-size:13px;color:var(--text-soft);max-width:520px;margin-left:auto;margin-right:auto}.cta-actions{margin-top:36px;margin-bottom:36px;display:flex;justify-content:center}.cta-actions .button{min-width:260px}@keyframes pulse-ring{0%{transform:scale(1);opacity:0.25}100%{transform:scale(2.2);opacity:0}}.price-modal{position:fixed;inset:0;z-index:3000;display:flex;align-items:flex-start;justify-content:center}.price-modal[hidden]{display:none}.price-modal-backdrop{position:absolute;inset:0;background:rgba(8,10,12,0.85);backdrop-filter:blur(8px);animation:fadeIn 0.35s ease forwards}.price-modal-card{position:relative;width:100%;max-width:520px;margin:8vh auto;padding:42px 38px 38px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(248,249,250,0.98));box-shadow:0 2px 0 rgba(0,0,0,0.04),0 24px 64px rgba(0,0,0,0.25);animation:modalUp 0.45s cubic-bezier(.2,.8,.2,1) forwards}.price-modal-close{position:absolute;top:16px;right:18px;width:36px;height:36px;border-radius:50%;border:none;background:transparent;font-size:26px;line-height:1;cursor:pointer;color:var(--text-soft);transition:transform .25s ease,color .25s ease,background .25s ease}.price-modal-close:hover{transform:rotate(90deg);color:var(--text);background:rgba(0,0,0,0.06)}.price-modal-title{text-align:center;font-size:24px;margin-bottom:10px;letter-spacing:0.02em}.price-modal-subtitle{text-align:center;font-size:15px;color:var(--text-soft);margin-bottom:32px;line-height:1.55}#priceRequestForm{display:flex;flex-direction:column;gap:18px}#priceRequestForm label{font-size:13px;color:var(--text-soft);display:flex;flex-direction:column;gap:6px}#priceRequestForm input,#priceRequestForm textarea{padding:12px 14px;border-radius:14px;border:1px solid var(--border);font-size:15px;font-family:inherit;background:#fff;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}#priceRequestForm input:focus,#priceRequestForm textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,121,107,0.12);background:#fff}#priceRequestForm textarea{resize:vertical;min-height:90px}#priceRequestForm .button.primary.full{width:100%;margin-top:12px;padding:14px 0;font-size:15px}.form-status{margin-top:12px;font-size:14px;text-align:center;min-height:1.4em}.form-status.loading{color:var(--text-soft)}.form-status.success{color:#2e7d32;animation:fadeIn 0.3s ease}.form-status.error{color:#c62828;animation:shake 0.35s ease}.price-result{margin-top:32px;padding:36px 28px;border-radius:22px;text-align:center;background:linear-gradient(135deg,#f6f4f0,#ffffff);box-shadow:inset 0 0 0 1px rgba(0,0,0,0.06),0 20px 50px rgba(0,0,0,0.15);animation:priceReveal 0.6s cubic-bezier(.2,.8,.2,1)}.price-result-label{font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:#7a6f66}.price-result-value{margin-top:14px;font-size:46px;font-weight:700;letter-spacing:-0.02em;color:#1f1b16}.price-result-note{margin-top:12px;font-size:14px;color:#6b6b6b}@keyframes priceReveal{from{opacity:0;transform:translateY(18px) scale(0.96)}to{opacity:1;transform:none}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes modalUp{from{opacity:0;transform:translateY(30px) scale(0.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shake{0%{transform:translateX(0)}25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-3px)}100%{transform:translateX(0)}}@media (max-width:640px){.price-modal-card{margin:6vh 16px;padding:32px 22px 26px}.price-modal-title{font-size:21px}.price-result-value{font-size:34px}}.owner-result-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center}.owner-result-modal[hidden]{display:none}.owner-result-modal .price-modal-backdrop{position:absolute;inset:0;background:rgba(10,20,25,0.55);backdrop-filter:blur(3px)}.owner-result-modal .price-modal-card{position:relative;z-index:2;width:100%;max-width:520px;background:#ffffff;border-radius:18px;padding:28px 28px 32px;box-shadow:0 30px 80px rgba(0,0,0,0.35);animation:ownerModalIn 0.25s ease-out}@keyframes ownerModalIn{from{opacity:0;transform:translateY(12px) scale(0.97)}to{opacity:1;transform:none}}.owner-result{text-align:center}.owner-result-icon{width:56px;height:56px;margin:16px auto 18px;border-radius:50%;font-size:28px;display:flex;align-items:center;justify-content:center}.owner-result-icon.success{background:#e6f5f1;color:#00796b}.owner-result-icon.error{background:#fdecea;color:#c62828}.owner-result-block{margin-top:16px}.owner-result-label{font-size:12px;text-transform:uppercase;letter-spacing:0.08em;color:#7a8a90}.owner-result-value{font-size:18px;font-weight:600;margin-top:4px}.owner-result-note{margin-top:22px;font-size:14px;color:#455a64;line-height:1.5}.owner-result-hint{margin-top:16px;font-size:13px;color:#8a8a8a;text-align:left}.owner-result-hint ul{margin:8px 0 0 18px}.stl-viewer-wrap{margin-top:40px;width:100%;height:420px;position:relative;border-radius:18px;overflow:hidden;background:radial-gradient(circle at 50% 30%,#1b1b1b,#0f0f0f);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 20px 60px rgba(0,0,0,0.35)}.stl-viewer-wrap canvas{width:100%;height:100%;display:block}.stl-viewer-wrap{position:relative;width:100%;height:420px;margin-top:40px;border-radius:18px;overflow:hidden;background-image:url("/static/img/leather-texture.png");background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 20px 60px rgba(0,0,0,0.35)}.stl-viewer-wrap canvas{width:100%;height:100%;display:block;background:transparent}.stl-loader{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(15,24,29,0.55);backdrop-filter:blur(6px);color:#fff;font-size:14px;letter-spacing:0.04em;transition:opacity 0.3s ease}.stl-spinner{width:42px;height:42px;border:3px solid rgba(255,255,255,0.25);border-top-color:#ffffff;border-radius:50%;animation:stl-spin 0.9s linear infinite;margin-bottom:14px}@keyframes stl-spin{to{transform:rotate(360deg)}}.stl-progress{opacity:0.85;text-align:center}.stl-placeholder{background:linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),url("/static/img/stone-texture.png") center / cover no-repeat;border-radius:18px;height:420px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 20px 60px rgba(0,0,0,0.35)}.stl-placeholder-inner{text-align:center;max-width:340px;padding:24px;color:rgba(255,255,255,0.9)}.stl-placeholder-inner strong{display:block;font-size:18px;margin-bottom:8px;letter-spacing:0.04em}.stl-placeholder-inner p{font-size:14px;line-height:1.6;color:rgba(255,255,255,0.65)}@media (max-width:768px){.stl-viewer-wrap,.stl-placeholder{height:320px;border-radius:14px}.stl-spinner{width:36px;height:36px}.stl-placeholder-inner strong{font-size:16px}.stl-placeholder-inner p{font-size:13px}}.digital-verify-form{margin-top:32px;padding:28px 32px;border-radius:20px;background:#ffffff;border:1px solid var(--border);box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 40px rgba(0,0,0,0.06)}.digital-verify-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.digital-verify-field label{font-size:13px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--text)}.digital-verify-field input{padding:14px 16px;border-radius:14px;font-size:15px;font-family:inherit;background:#ffffff;color:var(--text);border:1px solid var(--border);transition:border-color .25s ease,box-shadow .25s ease}.digital-verify-field input::placeholder{color:#9aa7ad}.digital-verify-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,121,107,0.12)}.digital-verify-form .button{margin-top:12px}#globalVerifyStatus,#ownerVerifyStatus{margin-top:14px;font-size:14px;min-height:1.4em;text-align:center}.form-status.loading{color:var(--text-soft)}.form-status.success{color:#2e7d32}.form-status.error{color:#c62828}.price-cta{margin:0 auto 72px;padding:0 24px}.price-cta-inner{max-width:860px;margin:0 auto;display:grid;grid-template-columns:1fr auto;align-items:center;gap:32px;padding:36px 40px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(248,249,250,0.98));box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 42px rgba(0,0,0,0.08)}.price-cta-title{margin:0 0 10px;font-size:22px;font-weight:600;letter-spacing:0.02em;color:var(--text)}.price-cta-note{margin:0;font-size:15px;line-height:1.6;color:var(--text-soft)}.price-cta-action .button{min-width:240px}@media (max-width:768px){.price-cta-inner{grid-template-columns:1fr;text-align:center;gap:24px;padding:28px 26px}.price-cta-action .button{width:100%}}.digital-intro{text-align:center}.tech-process-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding-bottom:48px}.tech-process-list{--line:rgba(15,31,36,0.12);--line-strong:rgba(15,31,36,0.18);--card-border:rgba(226,232,234,0.92);--shadow:0 18px 44px rgba(0,0,0,0.08);display:grid;gap:14px;margin-top:28px;position:relative;padding-left:44px}.tech-process-list::before{content:"";position:absolute;left:18px;top:6px;bottom:-22px;width:2px;background:linear-gradient(to bottom,transparent 0,var(--line) 6%,var(--line-strong) 50%,var(--line) 94%,transparent 100%);border-radius:2px}.tech-process{position:relative;background:linear-gradient(rgba(255,255,255,0.96),rgba(255,255,255,0.90)),radial-gradient(circle at 10% 0%,rgba(0,121,107,0.06),transparent 55%);border:1px solid var(--card-border);border-radius:calc(var(--radius) + 6px);padding:18px;box-shadow:var(--shadow);backdrop-filter:blur(6px);transition:transform 0.18s ease,box-shadow 0.22s ease,border-color 0.22s ease}.tech-process::before{content:"";position:absolute;left:-34px;top:22px;width:14px;height:14px;border-radius:999px;background:#fff;border:2px solid var(--accent);box-shadow:0 0 0 6px rgba(0,121,107,0.10),0 10px 22px rgba(0,0,0,0.10)}.tech-process::after{content:"";position:absolute;left:-18px;top:28px;width:18px;height:2px;background:rgba(0,121,107,0.22);border-radius:2px}.tech-process:hover{transform:translateY(-2px);border-color:rgba(0,121,107,0.28);box-shadow:0 22px 54px rgba(0,0,0,0.12)}.tech-process-header{display:flex;justify-content:space-between;gap:14px;margin-bottom:8px}.tech-process-title{font-size:16px;line-height:1.35;letter-spacing:0.02em}.tech-process-time{font-size:12px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(15,31,36,0.82);padding:8px 14px;border-radius:999px;border:1px solid rgba(0,121,107,0.22);background:linear-gradient(rgba(255,255,255,0.98),rgba(255,255,255,0.94));box-shadow:0 10px 22px rgba(0,0,0,0.06);white-space:nowrap}.tech-process-desc{color:var(--text-soft);font-size:14px;line-height:1.75;margin-top:6px}.tech-process-note{margin-top:10px;font-size:13px;line-height:1.6;color:rgba(15,31,36,0.88);padding:10px 12px;border-radius:14px;background:rgba(15,47,58,0.04);border:1px dashed rgba(15,47,58,0.18)}.tech-process-total{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;margin-top:22px;padding:22px 28px 22px 56px;background:linear-gradient(rgba(255,255,255,0.98),rgba(255,255,255,0.94)),radial-gradient(circle at 8% 0%,rgba(0,121,107,0.12),transparent 60%);border:1px solid rgba(0,121,107,0.32);border-radius:calc(var(--radius) + 8px);box-shadow:0 28px 68px rgba(0,0,0,0.16)}.tech-process-total::before{content:"";position:absolute;left:18px;top:50%;width:18px;height:18px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 8px rgba(0,121,107,0.18),0 16px 36px rgba(0,0,0,0.22);transform:translateY(-50%)}.tech-process-total-label{font-size:13px;letter-spacing:0.24em;text-transform:uppercase;color:rgba(15,31,36,0.58);white-space:nowrap;position:relative}.tech-process-total-spacer{min-width:1px}.tech-process-total-value{font-size:24px;font-weight:600;letter-spacing:0.04em;color:var(--text);justify-self:end;white-space:nowrap}@media (max-width:900px){.tech-process-total{grid-template-columns:auto 1fr;row-gap:6px;padding-left:40px}.tech-process-total::before{left:12px}.tech-process-total-value{justify-self:start;font-size:20px}.tech-process-total-label{top:-2px}}@media (prefers-reduced-motion:reduce){.tech-process-total{transition:none}}.category-hero{padding:0 26px 24px 32px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.category-hero h1{font-size:clamp(34px,5vw,52px);margin-bottom:24px;letter-spacing:0.04em}.category-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.fade-in{animation:fadeInUp 0.6s ease both}@keyframes fadeInUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (max-width:768px){.category-hero{padding:72px 20px 56px}.category-hero h1{font-size:32px}.category-hero p{font-size:16px}}.product-card-adv{position:relative;display:block;height:420px;padding:22px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(255,255,255,0.94));border:1px solid var(--border);box-shadow:0 18px 46px rgba(0,0,0,0.10);overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .35s ease,transform .35s ease}.product-card-adv:hover{transform:translateY(-4px);box-shadow:0 26px 64px rgba(0,0,0,0.16)}.product-card-media{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform .45s cubic-bezier(.4,0,.2,1)}.product-card-media img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s cubic-bezier(.4,0,.2,1),filter .45s ease}.product-card-adv:hover .product-card-media{transform:translate(38%,-32%) scale(0.58)}.product-card-adv:hover .product-card-media img{filter:saturate(1.05)}.product-card-body{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.product-card-title{margin:0;margin-top:auto;font-size:18px;line-height:1.35;font-weight:600;letter-spacing:.04em;max-width:72%;padding:14px 16px 12px;border-radius:16px;background:linear-gradient(to top,rgba(255,255,255,0.98),rgba(255,255,255,0.90));box-shadow:0 10px 28px rgba(0,0,0,0.06);transition:transform .35s ease,opacity .3s ease}.product-card-adv:hover .product-card-title{transform:translateY(-14px)}.product-card-details{margin-top:12px;max-width:64%;padding-left:4px;opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .35s ease}.product-card-adv:hover .product-card-details{opacity:1;transform:translateY(0)}.product-card-extra{margin-top:12px;padding-top:12px;border-top:1px dashed rgba(15,31,36,0.16);opacity:0;max-height:0;overflow:hidden;transform:translateY(8px);transition:opacity .35s ease,max-height .45s ease,transform .35s ease}.product-card-adv:hover .product-card-extra{opacity:1;max-height:220px;transform:translateY(0)}.product-card-row{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:13px;line-height:1.6;color:var(--text-soft);padding:6px 0}.product-card-row strong{color:var(--text);font-weight:500;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:26px}@media (max-width:900px){.product-card-adv{height:360px}.product-card-adv:hover .product-card-media{display:none}.product-card-title{max-width:100%;font-size:17px}.product-card-details{max-width:100%}}@media (prefers-reduced-motion:reduce){.product-card-adv,.product-card-media,.product-card-title,.product-card-details,.product-card-extra{transition:none}}.product-card-owner{position:absolute;top:18px;left:18px;z-index:3;padding:9px 16px;font-size:12px;letter-spacing:0.22em;text-transform:uppercase;font-weight:500;color:#0D3F3A;border-radius:999px;background:linear-gradient(180deg,rgba(0,121,107,0.18),rgba(0,121,107,0.12));border:1px solid rgba(0,121,107,0.35);box-shadow:0 12px 28px rgba(0,0,0,0.14),inset 0 1px 0 rgba(255,255,255,0.35);pointer-events:none;opacity:0;transform:translateY(-10px);transition:opacity .35s ease,transform .35s ease}.product-card-adv:hover .product-card-owner{opacity:1;transform:translateY(0)}.image-overlay{position:fixed;inset:0;z-index:9999}.image-overlay-backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.78)}.image-overlay-content{position:relative;z-index:2;height:100%;display:flex;align-items:center;justify-content:center;padding:40px}.image-overlay-content img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 40px 120px rgba(0,0,0,0.6)}.image-overlay-close{position:absolute;top:24px;right:24px;width:44px;height:44px;border:none;border-radius:50%;font-size:28px;line-height:1;cursor:pointer;background:rgba(255,255,255,0.9)}.catalog-hero{padding:96px 24px 72px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.catalog-hero h1{font-size:clamp(36px,5vw,56px);margin-bottom:20px;letter-spacing:0.04em}.catalog-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.catalog-section{padding:96px 24px;background:var(--bg-paper)}.catalog-grid{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px}.catalog-card{padding:36px 32px 42px;border-radius:var(--radius);background:#ffffff;border:1px solid var(--border);color:var(--text);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease;display:flex;flex-direction:column}.catalog-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,0,0,0.08)}.catalog-card h2{font-size:24px;margin-bottom:14px;letter-spacing:0.02em}.catalog-card p{font-size:15px;line-height:1.6;color:var(--text-soft);margin-bottom:24px}.catalog-cta{font-size:13px;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent)}.catalog-philosophy{padding:96px 24px;background:var(--bg-muted);border-top:1px solid var(--border)}.catalog-philosophy-wrap{max-width:860px;margin:0 auto;text-align:center}.catalog-philosophy h3{font-size:32px;margin-bottom:24px}.catalog-philosophy p{font-size:18px;line-height:1.7;color:var(--text-soft)}.process-list{display:flex;flex-direction:column;gap:20px}.process-step{position:relative}.process-body.process-inline{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:16px;padding:20px 26px;border-radius:18px;background:rgba(255,255,255,0.65);box-shadow:0 1px 0 rgba(0,0,0,0.04),0 10px 28px rgba(0,0,0,0.05)}.process-index{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(0,0,0,0.18);background:var(--bg);font-size:13px;font-weight:600;color:var(--text)}.process-title-inline{font-size:16px;font-weight:500;color:var(--text)}.process-time-inline{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:6px 12px;border-radius:999px;background:rgba(0,0,0,0.04);font-size:18px;font-weight:700;letter-spacing:-0.02em;white-space:nowrap;color:var(--text)}.process-total{margin-top:64px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;gap:10px;border-radius:22px;background:rgba(255,255,255,0.75);box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 40px rgba(0,0,0,0.06)}.process-total-label{font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-soft)}.process-total-value{font-size:36px;font-weight:700;letter-spacing:-0.02em;color:var(--text)}.process-total::before{content:"—";font-size:28px;color:var(--text-soft)}.product-card{background:#ffffff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,0.08);transition:transform 0.25s ease,box-shadow 0.25s ease;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,0.12)}.product-card img{width:100%;object-fit:cover;display:block;aspect-ratio:1 / 1}.product-card-content{padding:20px;flex:1;display:flex;flex-direction:column;justify-content:space-between}.product-card h3{font-size:20px;font-weight:700;margin:0 0 12px 0;color:var(--text)}.product-card p{font-size:14px;color:var(--text-soft);line-height:1.4;margin:0 0 16px 0}.product-badge{display:inline-block;background:#ff5722;color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;padding:4px 10px;border-radius:999px;margin-bottom:12px}.product-card .button{margin-top:auto;width:100%;text-align:center}.product-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;justify-content:center}.badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;text-transform:uppercase;color:#fff}.badge-unique{background:#2196F3}.badge-series{background:#ff5722}.product-title{text-align:center;margin-bottom:14px;font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:0.02em}.product-material{text-align:center;color:var(--text-soft);margin-bottom:56px;font-size:0.95rem}.material-link{font-weight:600;color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.25s ease}.material-link:hover{border-bottom-color:currentColor}.product-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:72px}.gallery-item{padding:0;border:none;background:none;cursor:zoom-in;border-radius:18px;overflow:hidden;aspect-ratio:4 / 5}.gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform 0.45s cubic-bezier(.2,.8,.2,1),filter 0.3s ease}.gallery-item:hover img{transform:scale(1.04);filter:brightness(1.02)}.lightbox{position:fixed;inset:0;z-index:2000}.lightbox[hidden]{display:none}.lightbox-backdrop{position:absolute;inset:0;background:rgba(10,12,14,0.92);backdrop-filter:blur(6px)}.lightbox-image{position:absolute;top:50%;left:50%;max-width:92vw;max-height:92vh;transform:translate(-50%,-50%) scale(1);transition:transform 0.35s cubic-bezier(.2,.8,.2,1);border-radius:8px;cursor:zoom-in}.lightbox-image.is-zoomed{transform:translate(-50%,-50%) scale(1.8);cursor:zoom-out}.lightbox-image.is-zoomed{transform:translate(-50%,-50%) scale(1.8);cursor:zoom-out}.owner-card{display:flex;align-items:center;gap:20px;padding:28px 32px;border-radius:22px;background:rgba(255,255,255,0.75);border:1px solid var(--border);box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 40px rgba(0,0,0,0.06)}.owner-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:18px;font-weight:700}.owner-public .owner-icon{background:rgba(33,150,243,0.12);color:#2196F3}.owner-private .owner-icon{background:rgba(0,0,0,0.08);color:var(--text-soft)}.owner-body{display:flex;flex-direction:column;gap:6px}.owner-name{font-size:18px;font-weight:600;letter-spacing:0.02em;color:var(--text)}.owner-name.obfuscated{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0.18em;color:var(--text-soft)}.owner-note{font-size:14px;line-height:1.5;color:var(--text-soft)}.pulse{position:relative}.pulse::after{content:"";position:absolute;inset:0;border-radius:50%;background:currentColor;opacity:0.15;animation:pulse-ring 2.4s ease-out infinite}.cta-note{margin-top:18px;font-size:13px;color:var(--text-soft);max-width:520px;margin-left:auto;margin-right:auto}.cta-actions{margin-top:36px;margin-bottom:36px;display:flex;justify-content:center}.cta-actions .button{min-width:260px}@keyframes pulse-ring{0%{transform:scale(1);opacity:0.25}100%{transform:scale(2.2);opacity:0}}.price-modal{position:fixed;inset:0;z-index:3000;display:flex;align-items:flex-start;justify-content:center}.price-modal[hidden]{display:none}.price-modal-backdrop{position:absolute;inset:0;background:rgba(8,10,12,0.85);backdrop-filter:blur(8px);animation:fadeIn 0.35s ease forwards}.price-modal-card{position:relative;width:100%;max-width:520px;margin:8vh auto;padding:42px 38px 38px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(248,249,250,0.98));box-shadow:0 2px 0 rgba(0,0,0,0.04),0 24px 64px rgba(0,0,0,0.25);animation:modalUp 0.45s cubic-bezier(.2,.8,.2,1) forwards}.price-modal-close{position:absolute;top:16px;right:18px;width:36px;height:36px;border-radius:50%;border:none;background:transparent;font-size:26px;line-height:1;cursor:pointer;color:var(--text-soft);transition:transform .25s ease,color .25s ease,background .25s ease}.price-modal-close:hover{transform:rotate(90deg);color:var(--text);background:rgba(0,0,0,0.06)}.price-modal-title{text-align:center;font-size:24px;margin-bottom:10px;letter-spacing:0.02em}.price-modal-subtitle{text-align:center;font-size:15px;color:var(--text-soft);margin-bottom:32px;line-height:1.55}#priceRequestForm{display:flex;flex-direction:column;gap:18px}#priceRequestForm label{font-size:13px;color:var(--text-soft);display:flex;flex-direction:column;gap:6px}#priceRequestForm input,#priceRequestForm textarea{padding:12px 14px;border-radius:14px;border:1px solid var(--border);font-size:15px;font-family:inherit;background:#fff;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}#priceRequestForm input:focus,#priceRequestForm textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,121,107,0.12);background:#fff}#priceRequestForm textarea{resize:vertical;min-height:90px}#priceRequestForm .button.primary.full{width:100%;margin-top:12px;padding:14px 0;font-size:15px}.form-status{margin-top:12px;font-size:14px;text-align:center;min-height:1.4em}.form-status.loading{color:var(--text-soft)}.form-status.success{color:#2e7d32;animation:fadeIn 0.3s ease}.form-status.error{color:#c62828;animation:shake 0.35s ease}.price-result{margin-top:32px;padding:36px 28px;border-radius:22px;text-align:center;background:linear-gradient(135deg,#f6f4f0,#ffffff);box-shadow:inset 0 0 0 1px rgba(0,0,0,0.06),0 20px 50px rgba(0,0,0,0.15);animation:priceReveal 0.6s cubic-bezier(.2,.8,.2,1)}.price-result-label{font-size:12px;letter-spacing:0.16em;text-transform:uppercase;color:#7a6f66}.price-result-value{margin-top:14px;font-size:46px;font-weight:700;letter-spacing:-0.02em;color:#1f1b16}.price-result-note{margin-top:12px;font-size:14px;color:#6b6b6b}@keyframes priceReveal{from{opacity:0;transform:translateY(18px) scale(0.96)}to{opacity:1;transform:none}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes modalUp{from{opacity:0;transform:translateY(30px) scale(0.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shake{0%{transform:translateX(0)}25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-3px)}100%{transform:translateX(0)}}@media (max-width:640px){.price-modal-card{margin:6vh 16px;padding:32px 22px 26px}.price-modal-title{font-size:21px}.price-result-value{font-size:34px}}.owner-result-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center}.owner-result-modal[hidden]{display:none}.owner-result-modal .price-modal-backdrop{position:absolute;inset:0;background:rgba(10,20,25,0.55);backdrop-filter:blur(3px)}.owner-result-modal .price-modal-card{position:relative;z-index:2;width:100%;max-width:520px;background:#ffffff;border-radius:18px;padding:28px 28px 32px;box-shadow:0 30px 80px rgba(0,0,0,0.35);animation:ownerModalIn 0.25s ease-out}@keyframes ownerModalIn{from{opacity:0;transform:translateY(12px) scale(0.97)}to{opacity:1;transform:none}}.owner-result{text-align:center}.owner-result-icon{width:56px;height:56px;margin:16px auto 18px;border-radius:50%;font-size:28px;display:flex;align-items:center;justify-content:center}.owner-result-icon.success{background:#e6f5f1;color:#00796b}.owner-result-icon.error{background:#fdecea;color:#c62828}.owner-result-block{margin-top:16px}.owner-result-label{font-size:12px;text-transform:uppercase;letter-spacing:0.08em;color:#7a8a90}.owner-result-value{font-size:18px;font-weight:600;margin-top:4px}.owner-result-note{margin-top:22px;font-size:14px;color:#455a64;line-height:1.5}.owner-result-hint{margin-top:16px;font-size:13px;color:#8a8a8a;text-align:left}.owner-result-hint ul{margin:8px 0 0 18px}.stl-viewer-wrap{margin-top:40px;width:100%;height:420px;position:relative;border-radius:18px;overflow:hidden;background:radial-gradient(circle at 50% 30%,#1b1b1b,#0f0f0f);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 20px 60px rgba(0,0,0,0.35)}.stl-viewer-wrap canvas{width:100%;height:100%;display:block}.stl-viewer-wrap{position:relative;width:100%;height:420px;margin-top:40px;border-radius:18px;overflow:hidden;background-image:url("/static/img/leather-texture.png");background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 20px 60px rgba(0,0,0,0.35)}.stl-viewer-wrap canvas{width:100%;height:100%;display:block;background:transparent}.stl-loader{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(15,24,29,0.55);backdrop-filter:blur(6px);color:#fff;font-size:14px;letter-spacing:0.04em;transition:opacity 0.3s ease}.stl-spinner{width:42px;height:42px;border:3px solid rgba(255,255,255,0.25);border-top-color:#ffffff;border-radius:50%;animation:stl-spin 0.9s linear infinite;margin-bottom:14px}@keyframes stl-spin{to{transform:rotate(360deg)}}.stl-progress{opacity:0.85;text-align:center}.stl-placeholder{background:linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),url("/static/img/stone-texture.png") center / cover no-repeat;border-radius:18px;height:420px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08),0 20px 60px rgba(0,0,0,0.35)}.stl-placeholder-inner{text-align:center;max-width:340px;padding:24px;color:rgba(255,255,255,0.9)}.stl-placeholder-inner strong{display:block;font-size:18px;margin-bottom:8px;letter-spacing:0.04em}.stl-placeholder-inner p{font-size:14px;line-height:1.6;color:rgba(255,255,255,0.65)}@media (max-width:768px){.stl-viewer-wrap,.stl-placeholder{height:320px;border-radius:14px}.stl-spinner{width:36px;height:36px}.stl-placeholder-inner strong{font-size:16px}.stl-placeholder-inner p{font-size:13px}}.digital-verify-form{margin-top:32px;padding:28px 32px;border-radius:20px;background:#ffffff;border:1px solid var(--border);box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 40px rgba(0,0,0,0.06)}.digital-verify-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.digital-verify-field label{font-size:13px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--text)}.digital-verify-field input{padding:14px 16px;border-radius:14px;font-size:15px;font-family:inherit;background:#ffffff;color:var(--text);border:1px solid var(--border);transition:border-color .25s ease,box-shadow .25s ease}.digital-verify-field input::placeholder{color:#9aa7ad}.digital-verify-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,121,107,0.12)}.digital-verify-form .button{margin-top:12px}#globalVerifyStatus,#ownerVerifyStatus{margin-top:14px;font-size:14px;min-height:1.4em;text-align:center}.form-status.loading{color:var(--text-soft)}.form-status.success{color:#2e7d32}.form-status.error{color:#c62828}.price-cta{margin:0 auto 72px;padding:0 24px}.price-cta-inner{max-width:860px;margin:0 auto;display:grid;grid-template-columns:1fr auto;align-items:center;gap:32px;padding:36px 40px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(248,249,250,0.98));box-shadow:0 2px 0 rgba(0,0,0,0.04),0 18px 42px rgba(0,0,0,0.08)}.price-cta-title{margin:0 0 10px;font-size:22px;font-weight:600;letter-spacing:0.02em;color:var(--text)}.price-cta-note{margin:0;font-size:15px;line-height:1.6;color:var(--text-soft)}.price-cta-action .button{min-width:240px}@media (max-width:768px){.price-cta-inner{grid-template-columns:1fr;text-align:center;gap:24px;padding:28px 26px}.price-cta-action .button{width:100%}}.digital-intro{text-align:center}.tech-process-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding-bottom:48px}.tech-process-list{--line:rgba(15,31,36,0.12);--line-strong:rgba(15,31,36,0.18);--card-border:rgba(226,232,234,0.92);--shadow:0 18px 44px rgba(0,0,0,0.08);display:grid;gap:14px;margin-top:28px;position:relative;padding-left:44px}.tech-process-list::before{content:"";position:absolute;left:18px;top:6px;bottom:-22px;width:2px;background:linear-gradient(to bottom,transparent 0,var(--line) 6%,var(--line-strong) 50%,var(--line) 94%,transparent 100%);border-radius:2px}.tech-process{position:relative;background:linear-gradient(rgba(255,255,255,0.96),rgba(255,255,255,0.90)),radial-gradient(circle at 10% 0%,rgba(0,121,107,0.06),transparent 55%);border:1px solid var(--card-border);border-radius:calc(var(--radius) + 6px);padding:18px;box-shadow:var(--shadow);backdrop-filter:blur(6px);transition:transform 0.18s ease,box-shadow 0.22s ease,border-color 0.22s ease}.tech-process::before{content:"";position:absolute;left:-34px;top:22px;width:14px;height:14px;border-radius:999px;background:#fff;border:2px solid var(--accent);box-shadow:0 0 0 6px rgba(0,121,107,0.10),0 10px 22px rgba(0,0,0,0.10)}.tech-process::after{content:"";position:absolute;left:-18px;top:28px;width:18px;height:2px;background:rgba(0,121,107,0.22);border-radius:2px}.tech-process:hover{transform:translateY(-2px);border-color:rgba(0,121,107,0.28);box-shadow:0 22px 54px rgba(0,0,0,0.12)}.tech-process-header{display:flex;justify-content:space-between;gap:14px;margin-bottom:8px}.tech-process-title{font-size:16px;line-height:1.35;letter-spacing:0.02em}.tech-process-time{font-size:12px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(15,31,36,0.82);padding:8px 14px;border-radius:999px;border:1px solid rgba(0,121,107,0.22);background:linear-gradient(rgba(255,255,255,0.98),rgba(255,255,255,0.94));box-shadow:0 10px 22px rgba(0,0,0,0.06);white-space:nowrap}.tech-process-desc{color:var(--text-soft);font-size:14px;line-height:1.75;margin-top:6px}.tech-process-note{margin-top:10px;font-size:13px;line-height:1.6;color:rgba(15,31,36,0.88);padding:10px 12px;border-radius:14px;background:rgba(15,47,58,0.04);border:1px dashed rgba(15,47,58,0.18)}.tech-process-total{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;margin-top:22px;padding:22px 28px 22px 56px;background:linear-gradient(rgba(255,255,255,0.98),rgba(255,255,255,0.94)),radial-gradient(circle at 8% 0%,rgba(0,121,107,0.12),transparent 60%);border:1px solid rgba(0,121,107,0.32);border-radius:calc(var(--radius) + 8px);box-shadow:0 28px 68px rgba(0,0,0,0.16)}.tech-process-total::before{content:"";position:absolute;left:18px;top:50%;width:18px;height:18px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 8px rgba(0,121,107,0.18),0 16px 36px rgba(0,0,0,0.22);transform:translateY(-50%)}.tech-process-total-label{font-size:13px;letter-spacing:0.24em;text-transform:uppercase;color:rgba(15,31,36,0.58);white-space:nowrap;position:relative}.tech-process-total-spacer{min-width:1px}.tech-process-total-value{font-size:24px;font-weight:600;letter-spacing:0.04em;color:var(--text);justify-self:end;white-space:nowrap}@media (max-width:900px){.tech-process-total{grid-template-columns:auto 1fr;row-gap:6px;padding-left:40px}.tech-process-total::before{left:12px}.tech-process-total-value{justify-self:start;font-size:20px}.tech-process-total-label{top:-2px}}@media (prefers-reduced-motion:reduce){.tech-process-total{transition:none}}.category-hero{padding:26px 24px 32px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.category-hero h1{font-size:clamp(34px,5vw,52px);margin-bottom:24px;letter-spacing:0.04em}.category-hero p{max-width:900px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.fade-in{animation:fadeInUp 0.6s ease both}@keyframes fadeInUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (max-width:768px){.category-hero{padding:72px 20px 56px}.category-hero h1{font-size:32px}.category-hero p{font-size:16px}}.product-card-adv{position:relative;display:block;height:420px;padding:22px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(255,255,255,0.94));border:1px solid var(--border);box-shadow:0 18px 46px rgba(0,0,0,0.10);overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .35s ease,transform .35s ease}.product-card-adv:hover{transform:translateY(-4px);box-shadow:0 26px 64px rgba(0,0,0,0.16)}.product-card-media{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform .45s cubic-bezier(.4,0,.2,1)}.product-card-media img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s cubic-bezier(.4,0,.2,1),filter .45s ease}.product-card-adv:hover .product-card-media{transform:translate(38%,-32%) scale(0.58)}.product-card-adv:hover .product-card-media img{filter:saturate(1.05)}.product-card-body{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.product-card-title{margin:0;margin-top:auto;font-size:18px;line-height:1.35;font-weight:600;letter-spacing:.04em;max-width:72%;padding:14px 16px 12px;border-radius:16px;background:linear-gradient(to top,rgba(255,255,255,0.98),rgba(255,255,255,0.90));box-shadow:0 10px 28px rgba(0,0,0,0.06);transition:transform .35s ease,opacity .3s ease}.product-card-adv:hover .product-card-title{transform:translateY(-14px)}.product-card-details{margin-top:12px;max-width:64%;padding-left:4px;opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .35s ease}.product-card-adv:hover .product-card-details{opacity:1;transform:translateY(0)}.product-card-extra{margin-top:12px;padding-top:12px;border-top:1px dashed rgba(15,31,36,0.16);opacity:0;max-height:0;overflow:hidden;transform:translateY(8px);transition:opacity .35s ease,max-height .45s ease,transform .35s ease}.product-card-adv:hover .product-card-extra{opacity:1;max-height:220px;transform:translateY(0)}.product-card-row{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:13px;line-height:1.6;color:var(--text-soft);padding:6px 0}.product-card-row strong{color:var(--text);font-weight:500;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:26px}@media (max-width:900px){.product-card-adv{height:360px}.product-card-adv:hover .product-card-media{display:none}.product-card-title{max-width:100%;font-size:17px}.product-card-details{max-width:100%}}@media (prefers-reduced-motion:reduce){.product-card-adv,.product-card-media,.product-card-title,.product-card-details,.product-card-extra{transition:none}}.product-card-owner{position:absolute;top:18px;left:18px;z-index:3;padding:9px 16px;font-size:12px;letter-spacing:0.22em;text-transform:uppercase;font-weight:500;color:#0D3F3A;border-radius:999px;background:linear-gradient(180deg,rgba(0,121,107,0.18),rgba(0,121,107,0.12));border:1px solid rgba(0,121,107,0.35);box-shadow:0 12px 28px rgba(0,0,0,0.14),inset 0 1px 0 rgba(255,255,255,0.35);pointer-events:none;opacity:0;transform:translateY(-10px);transition:opacity .35s ease,transform .35s ease}.product-card-adv:hover .product-card-owner{opacity:1;transform:translateY(0)}.image-overlay{position:fixed;inset:0;z-index:9999}.image-overlay-backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.78)}.image-overlay-content{position:relative;z-index:2;height:100%;display:flex;align-items:center;justify-content:center;padding:40px}.image-overlay-content img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 40px 120px rgba(0,0,0,0.6)}.image-overlay-close{position:absolute;top:24px;right:24px;width:44px;height:44px;border:none;border-radius:50%;font-size:28px;line-height:1;cursor:pointer;background:rgba(255,255,255,0.9)}.stl-viewer-wrap{display:block}@media (max-width:1024px){.stl-viewer-wrap{display:none!important}}.image-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s ease}.image-overlay:not([hidden]){opacity:1;pointer-events:auto}.image-overlay-backdrop{position:absolute;inset:0;background:rgba(20,20,20,0.65);backdrop-filter:blur(18px) saturate(110%);-webkit-backdrop-filter:blur(18px) saturate(110%);transition:backdrop-filter .4s ease}.image-overlay-content{position:relative;z-index:2;transform:scale(.92) translateY(20px);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s ease}.image-overlay:not([hidden]) .image-overlay-content{transform:scale(1) translateY(0);opacity:1}#imageOverlayImg{max-width:88vw;max-height:88vh;border-radius:18px;box-shadow:0 40px 120px rgba(0,0,0,.6),0 0 60px rgba(255,255,255,.05);cursor:zoom-in;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease;transform-origin:center center}#imageOverlayImg.is-zoomed{transform:scale(2.3);cursor:zoom-out;box-shadow:0 60px 160px rgba(0,0,0,.75),0 0 100px rgba(255,255,255,.08)}.image-overlay-close{position:absolute;top:-40px;right:0;background:transparent;border:none;font-size:32px;color:#fff;cursor:pointer;opacity:.7;transition:opacity .2s ease,transform .2s ease}.image-overlay-close:hover{opacity:1;transform:scale(1.1)}.gallery-item{overflow:hidden;border-radius:14px;transition:transform .3s ease,box-shadow .3s ease}.gallery-item img{transition:transform .5s ease}.gallery-item:hover{transform:translateY(-6px);box-shadow:0 15px 45px rgba(0,0,0,.15)}.gallery-item:hover img{transform:scale(1.06)}@media (max-width:768px){#imageOverlayImg.is-zoomed{transform:scale(2)}}.product-gallery img{width:100%;height:auto;display:block}.gallery-item{border:0;padding:0;background:transparent;cursor:zoom-in}.product-card-media img,.product-gallery img{aspect-ratio:1 / 1;object-fit:cover}.materials-hero{padding:26px 24px 32px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.materials-hero h1{font-size:clamp(36px,5vw,56px);margin-bottom:20px;letter-spacing:0.04em}.materials-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px}.card{background:var(--bg-paper,#fff);border-radius:18px;padding:22px 22px 20px;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(0,0,0,0.04),0 6px 18px rgba(0,0,0,0.06);transition:transform 0.25s ease,box-shadow 0.25s ease}.card:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,0.08),0 14px 36px rgba(0,0,0,0.12)}.card-title{font-size:1.1rem;font-weight:600;letter-spacing:0.02em}.card-meta{font-size:0.85rem;color:var(--text-soft,#666)}.card p{line-height:1.55}.card-footer{margin-top:auto;font-size:0.85rem;color:var(--accent,#4a7cff);font-weight:500}h2{font-size:1.35rem;font-weight:600;letter-spacing:0.03em;border-bottom:1px solid rgba(0,0,0,0.08);padding-bottom:8px}.price-big{font-size:1.4rem;font-weight:600;letter-spacing:0.02em}.world-map-wrapper{position:relative;max-width:1200px;margin:0 auto}.world-map{width:100%;height:auto}.map-tooltip{position:absolute;padding:8px 14px;background:rgba(15,47,58,0.95);color:#fff;font-size:0.85rem;border-radius:6px;pointer-events:none;opacity:0;transition:opacity 0.15s ease;white-space:nowrap}.fade-in{animation:fadeInUp 0.6s ease both}@keyframes fadeInUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.material-group-block{margin-top:18px}.material-group-block h4{font-size:14px;margin-bottom:6px;letter-spacing:0.04em}.material-group-block.wood h4{color:#7A5C3E}.material-group-block.metal h4{color:#6E7B87}.material-group-block.stone h4{color:#8A8A8A}.material-group-block.composite h4{color:#5F7C6A}.material-group-block ul{padding-left:16px}@media (max-width:600px){.card{padding:18px}.card-title{font-size:1.05rem}}.workshop-hero{padding:26px 24px 32px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.workshop-hero h1{font-size:clamp(36px,5vw,56px);margin-bottom:20px;letter-spacing:0.04em}.workshop-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.workshop-section{padding:96px 24px;background:var(--bg-paper)}.workshop-section.workshop-muted{background:var(--bg-muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.workshop-text{max-width:860px;margin:0 auto}.workshop-text h2{font-size:32px;margin-bottom:28px;letter-spacing:0.02em}.workshop-text p{font-size:17px;line-height:1.7;color:var(--text-soft);margin-bottom:20px}.workshop-text p:last-child{margin-bottom:0}.workshop-process{margin:36px 0 28px;padding:0;list-style:none;display:flex;flex-direction:column;gap:18px}.workshop-process li{position:relative;padding:18px 22px 18px 56px;border-radius:18px;background:rgba(255,255,255,0.75);border:1px solid var(--border);font-size:16px;color:var(--text);box-shadow:0 1px 0 rgba(0,0,0,0.04),0 10px 28px rgba(0,0,0,0.05)}.workshop-process li::before{content:"•";position:absolute;left:24px;top:50%;transform:translateY(-50%);font-size:26px;line-height:1;color:var(--accent)}.workshop-philosophy{padding:96px 24px;background:var(--bg-muted)}.workshop-philosophy-wrap{max-width:860px;margin:0 auto;text-align:center}.workshop-philosophy h3{font-size:32px;margin-bottom:24px;letter-spacing:0.02em}.workshop-philosophy p{font-size:18px;line-height:1.7;color:var(--text-soft);margin-bottom:18px}.workshop-philosophy p:last-child{margin-bottom:0}.fade-in{animation:fadeInUp 0.6s ease both}@keyframes fadeInUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (max-width:768px){.workshop-hero{padding:72px 20px 56px}.workshop-section{padding:72px 20px}.workshop-text h2,.workshop-philosophy h3{font-size:26px}.workshop-text p,.workshop-philosophy p{font-size:16px}.workshop-process li{padding:16px 18px 16px 48px;font-size:15px}}.contacts-hero{padding:96px 24px 72px;text-align:center;background:radial-gradient(900px 420px at 50% -120px,rgba(255,255,255,0.12),transparent 65%),url("/static/img/stone-texture.png") center / cover no-repeat;border-bottom:1px solid var(--border)}.contacts-hero h1{font-size:clamp(34px,5vw,52px);margin-bottom:18px;letter-spacing:0.04em}.contacts-hero p{max-width:760px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--text-soft)}.contacts-section{padding:96px 24px;background:var(--bg-paper)}.contacts-section.contacts-muted{background:var(--bg-muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.contacts-text{max-width:860px;margin:0 auto}.contacts-text h2{font-size:30px;margin-bottom:26px;letter-spacing:0.02em}.contacts-text p{font-size:17px;line-height:1.7;color:var(--text-soft);margin-bottom:18px}.contacts-text p:last-child{margin-bottom:0}.contact-form-wrapper{max-width:760px;margin:0 auto;padding:36px 36px 40px;border-radius:24px;background:rgba(255,255,255,0.8);border:1px solid var(--border);box-shadow:0 1px 0 rgba(0,0,0,0.04),0 18px 48px rgba(0,0,0,0.06)}.contact-form-wrapper h2{font-size:26px;margin-bottom:28px;text-align:center;letter-spacing:0.02em}.contact-form .form-row{margin-bottom:18px}.contact-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--text-soft)}.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#fff;font-size:15px;color:var(--text);transition:border-color 0.2s ease,box-shadow 0.2s ease}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(0,0,0,0.04)}.contact-form textarea{resize:vertical;min-height:120px}.contact-form .required{color:var(--accent)}.contact-form .form-actions{margin-top:28px;text-align:center}.contact-form .form-note{margin-top:16px;font-size:13px;color:var(--text-soft);text-align:center;line-height:1.5}.form-result{margin-top:22px;padding:14px 18px;border-radius:14px;font-size:14px;line-height:1.5}.form-result.success{background:rgba(0,128,96,0.08);color:#0b5d46}.form-result.error{background:rgba(180,0,0,0.08);color:#7a0d0d}.form-result.loading{background:rgba(0,0,0,0.05);color:var(--text-soft)}.contact-link{font-size:18px;color:var(--accent);text-decoration:none}.contact-link:hover{text-decoration:underline}.contact-hours{margin-top:12px;font-size:15px;color:var(--text-soft)}.contact-legal{max-width:860px;margin:0 auto}.legal-list{list-style:none;padding:0;margin:28px 0;display:flex;flex-direction:column;gap:12px}.legal-list li{font-size:15px;line-height:1.6;color:var(--text-soft)}.legal-list strong{color:var(--text)}.legal-note{font-size:14px;color:var(--text-soft)}.fade-in{animation:fadeInUp 0.6s ease both}@keyframes fadeInUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (min-width:1200px){.contact-form-wrapper{max-width:900px}}@media (max-width:768px){.contacts-hero{padding:72px 20px 56px}.contacts-section{padding:72px 20px}.contacts-text h2,.contact-form-wrapper h2{font-size:24px}.contacts-text p{font-size:16px}.contact-form-wrapper{padding:28px 22px 32px}}.contact-dialog{position:fixed;inset:0;z-index:1000}.contact-dialog-backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.35);backdrop-filter:blur(4px)}.contact-dialog-card{position:relative;max-width:420px;margin:18vh auto 0;padding:32px 32px 28px;background:#fff;border-radius:22px;border:1px solid var(--border);text-align:center;box-shadow:0 2px 0 rgba(0,0,0,0.05),0 28px 80px rgba(0,0,0,0.25);animation:dialogFadeIn 0.35s ease both}.contact-dialog-card h3{font-size:22px;margin-bottom:14px;letter-spacing:0.02em}.contact-dialog-card p{font-size:16px;line-height:1.6;color:var(--text-soft);margin-bottom:24px}@keyframes dialogFadeIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (max-width:520px){.contact-dialog-card{margin:14vh 16px 0;padding:26px 22px 24px}}.legal-hero{text-align:center}.legal-hero h1{font-size:clamp(2rem,4vw,2.8rem);letter-spacing:0.04em;margin-bottom:16px}.legal-subtitle{font-size:18px;color:var(--text-soft);margin-bottom:24px}.legal-meta{font-size:13px;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-soft)}.legal-content{background:var(--bg-paper)}.legal-text{font-size:16px;line-height:1.75;color:var(--text)}.legal-text h2{margin-top:64px;margin-bottom:18px;font-size:22px;letter-spacing:0.02em}.legal-text p{margin-bottom:18px}.legal-list{margin:24px 0 32px;padding-left:20px}.legal-list li{margin-bottom:10px}.legal-note{margin-top:48px;font-size:14px;color:var(--text-soft);text-align:center}.center-wrapper{min-height:60vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:32px 16px}.text{font-size:32px;font-weight:600;margin:16px 0}.text-wide{width:100%;max-width:100vw;margin:0 auto;padding:0 16px;box-sizing:border-box}.text-soft{width:100%;max-width:100vw;margin:0 auto;padding:0 16px;box-sizing:border-box;text-align:center}.text-search{width:100%;max-width:100vw;margin:0 auto;padding:0 16px 30px 0;box-sizing:border-box;text-align:center}.logo{width:120px;margin-bottom:24px;animation:pulse 2s infinite}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.tg-button{padding:12px 24px;background:var(--accent);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:all 0.2s ease}.tg-button:hover{background:#005f50;transform:translateY(-2px)}.tg-button[style*="transparent"]{border:1px solid var(--accent);background:transparent;color:var(--accent);box-shadow:none}.tg-button[style*="transparent"]:hover{background:var(--accent);color:#fff}