:root,html.dark,html[data-theme=dark]{--emerald-50:#ecfdf5;--emerald-100:#d1fae5;--emerald-200:#a7f3d0;--emerald-300:#6ee7b7;--emerald-400:#34d399;--emerald-500:#10b981;--emerald-600:#059669;--emerald-700:#047857;--emerald-800:#065f46;--emerald-900:#064e3b;--emerald-950:#022c22;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-500:#64748b;--slate-600:#475569;--slate-800:#1e293b;--bg-main:#1d1615;--bg-sec:#140f0e;--nav-bg:rgba(29,22,21,0.85);--text-base:#e3d8d6;--text-muted:#a19390;--text-heading:#fcf9f8;--brand-color:#cc6b49;--btn-primary-bg:#a84b2c;--btn-primary-text:#ffffff;--btn-primary-hover:#8f3d21;--card-bg:#29201e;--card-border:#3d312e;--border-subtle:#362a28;--icon-box:#1d1615;--glass-bg:rgba(41,32,30,0.7);--glass-border:rgba(204,107,73,0.15);--badge-bg:rgba(168,75,44,0.2);--badge-text:#e6a791;--blur-1:rgba(204,107,73,0.12);--blur-2:rgba(168,75,44,0.15);--footer-bg:#140f0e;--about-bg:#241a18;--about-label:#cc6b49;--about-h4:#e6a791;--about-li:#e3d8d6;--about-dot:#cc6b49;--btn-details-bg:#a84b2c;--btn-details-text:#ffffff;--btn-details-hover:#8f3d21;--modal-overlay:rgba(0,0,0,0.7);--modal-bg:#241a18;--modal-hover:#2e2220;--font-sans:'Inter',sans-serif;--font-serif:'Playfair Display',serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--fs-2xs:.75rem;--fs-xs:.8125rem;--fs-sm:.875rem;--nav-height:80px;--r-sm:1rem;--r-md:1.5rem;--r-lg:2rem}html[data-theme=emerald]{--bg-main:var(--slate-50);--bg-sec:#ffffff;--nav-bg:rgba(255,255,255,0.7);--text-base:var(--slate-800);--text-muted:var(--slate-500);--text-heading:var(--emerald-950);--brand-color:var(--emerald-700);--btn-primary-bg:var(--emerald-900);--btn-primary-text:#ffffff;--btn-primary-hover:var(--emerald-800);--card-bg:var(--slate-50);--card-border:#c7c7c7;--border-subtle:var(--slate-200);--icon-box:#ffffff;--glass-bg:rgba(255,255,255,0.6);--glass-border:rgba(255,255,255,0.4);--badge-bg:var(--emerald-100);--badge-text:var(--emerald-800);--blur-1:rgba(209,250,229,0.5);--blur-2:var(--emerald-50);--footer-bg:var(--slate-50);--about-bg:var(--emerald-900);--about-label:var(--emerald-300);--about-h4:var(--emerald-200);--about-li:var(--emerald-100);--about-dot:var(--emerald-400);--btn-details-bg:var(--emerald-500);--btn-details-text:#022c22;--btn-details-hover:var(--emerald-400);--modal-overlay:rgba(2,44,34,0.4);--modal-bg:#ffffff;--modal-hover:var(--slate-50)}html[data-theme=ocean]{--bg-main:#0b1222;--bg-sec:#0d1a2e;--nav-bg:rgba(11,18,34,0.88);--text-base:#ccd6f0;--text-muted:#7a8fbb;--text-heading:#e8edf8;--brand-color:#4fa3e0;--btn-primary-bg:#1a5fa8;--btn-primary-text:#ffffff;--btn-primary-hover:#1751921;--card-bg:#111e36;--card-border:#1e3055;--border-subtle:#1a2d4a;--icon-box:#0b1222;--glass-bg:rgba(17,30,54,0.75);--glass-border:rgba(79,163,224,0.18);--badge-bg:rgba(26,95,168,0.25);--badge-text:#88c4f0;--blur-1:rgba(79,163,224,0.14);--blur-2:rgba(26,95,168,0.12);--footer-bg:#0b1222;--about-bg:#0e1f3a;--about-label:#4fa3e0;--about-h4:#88c4f0;--about-li:#ccd6f0;--about-dot:#4fa3e0;--btn-details-bg:#2680c7;--btn-details-text:#ffffff;--btn-details-hover:#4fa3e0;--modal-overlay:rgba(0,5,20,0.72);--modal-bg:#0d1a2e;--modal-hover:#111e36}html[data-theme=amethyst]{--bg-main:#130d1f;--bg-sec:#0f0b18;--nav-bg:rgba(19,13,31,0.88);--text-base:#ddd6f0;--text-muted:#9485be;--text-heading:#f0ecfa;--brand-color:#a879e6;--btn-primary-bg:#7c3aed;--btn-primary-text:#ffffff;--btn-primary-hover:#6d28d9;--card-bg:#1d1430;--card-border:#2e2048;--border-subtle:#261c3d;--icon-box:#130d1f;--glass-bg:rgba(29,20,48,0.75);--glass-border:rgba(168,121,230,0.18);--badge-bg:rgba(124,58,237,0.2);--badge-text:#c4a7f5;--blur-1:rgba(168,121,230,0.14);--blur-2:rgba(124,58,237,0.12);--footer-bg:#0f0b18;--about-bg:#1a1130;--about-label:#a879e6;--about-h4:#c4a7f5;--about-li:#ddd6f0;--about-dot:#a879e6;--btn-details-bg:#8b5cf6;--btn-details-text:#ffffff;--btn-details-hover:#a879e6;--modal-overlay:rgba(0,0,10,0.72);--modal-bg:#1a1130;--modal-hover:#1d1430}html[data-theme=ivory]{--bg-main:#faf7f2;--bg-sec:#ffffff;--nav-bg:rgba(250,247,242,0.78);--text-base:#3d2e1e;--text-muted:#6f5a49;--text-heading:#2a1a0a;--brand-color:#b45309;--btn-primary-bg:#92400e;--btn-primary-text:#ffffff;--btn-primary-hover:#78350f;--card-bg:#fdf9f4;--card-border:#c7c7c7;--border-subtle:#e8d8c4;--icon-box:#ffffff;--glass-bg:rgba(255,252,248,0.65);--glass-border:rgba(255,255,255,0.5);--badge-bg:#fef3c7;--badge-text:#92400e;--blur-1:rgba(251,191,36,0.18);--blur-2:rgba(245,158,11,0.1);--footer-bg:#faf7f2;--about-bg:#92400e;--about-label:#fcd34d;--about-h4:#fef3c7;--about-li:#fef9ee;--about-dot:#fbbf24;--btn-details-bg:#d97706;--btn-details-text:#ffffff;--btn-details-hover:#b45309;--modal-overlay:rgba(60,30,0,0.4);--modal-bg:#ffffff;--modal-hover:#faf7f2}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background-color:var(--bg-main);color:var(--text-base);font-family:var(--font-sans);font-weight:400;line-height:1.8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .5s ease,color .5s ease;overflow-x:hidden}body.modal-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--text-heading);letter-spacing:-.02em;transition:color .5s ease}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.navbar{position:fixed;top:0;left:0;right:0;z-index:50;background-color:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);box-shadow:0 4px 30px rgba(0,0,0,.03);height:var(--nav-height);transition:all .5s cubic-bezier(.16,1,.3,1)}.navbar.scrolled{height:65px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 15px 40px -10px rgba(0,0,0,.1);border-bottom-color:transparent}.navbar-inner{display:flex;align-items:center;height:100%;gap:1.5rem}.nav-logo{display:flex;align-items:center;gap:.75rem;flex-shrink:0;text-decoration:none}.nav-logo-icon{width:40px;height:40px;border-radius:.75rem;background-color:var(--btn-primary-bg);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;transition:background-color .5s ease}.nav-logo-text{display:flex;flex-direction:column;line-height:1.15}.nav-logo-text .brand-name{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;color:var(--text-heading);transition:color .5s ease}.nav-logo-text .brand-tagline{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-color);transition:color .5s ease;margin-top:.4rem}.library-logo-area{display:flex;align-items:center;gap:.75rem}.library-logo-icon{width:40px;height:40px;border-radius:.75rem;background-color:var(--btn-primary-bg);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-size:1.35rem;font-weight:700;line-height:1;flex-shrink:0;transition:background-color .5s ease}.library-logo-text{display:flex;flex-direction:column;line-height:1.1}.library-logo-text span{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;color:var(--text-heading);transition:color .5s ease}.library-logo-text small{font-size:.58rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-color);transition:color .5s ease;margin-top:.35rem}.nav-links{display:flex;gap:.15rem;margin:0 auto;list-style:none}.nav-links a{font-size:.78rem;font-weight:500;color:var(--text-muted);padding:.4rem .65rem;border-radius:.5rem;transition:all .3s ease}.nav-links a.active,.nav-links a:hover{color:var(--text-heading);background-color:var(--border-subtle)}.nav-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.theme-btn{width:36px;height:36px;border-radius:50%;background:0 0;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all .3s ease}.theme-btn:hover{background-color:var(--border-subtle);color:var(--text-heading)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:0 0;border:none;width:36px;height:36px;border-radius:50%;align-items:center;justify-content:center;transition:background-color .3s ease}.hamburger:hover{background-color:var(--border-subtle)}.hamburger span{display:block;width:18px;height:1.5px;background:var(--text-muted);transition:all .3s ease;border-radius:1px}.mobile-menu{display:none;position:fixed;top:var(--nav-height);left:0;right:0;background-color:var(--nav-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);padding:1.5rem;z-index:49;flex-direction:column;gap:.25rem;box-shadow:0 20px 40px rgba(0,0,0,.1)}.mobile-menu.open{display:flex}.mobile-menu a{padding:.6rem .75rem;border-radius:.75rem;font-size:.875rem;font-weight:500;color:var(--text-muted);transition:all .2s ease}.mobile-menu a.active,.mobile-menu a:hover{background-color:var(--border-subtle);color:var(--text-heading)}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:.875rem;font-weight:600;border:none;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.15);transition:all .4s cubic-bezier(.16,1,.3,1);text-decoration:none;position:relative;overflow:hidden}.btn-primary::after{content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.2) 50%,rgba(255,255,255,0) 100%);transform:skewX(-20deg);transition:none}.btn-primary:hover::after{left:200%;transition:left .7s ease}.btn-primary:hover{background-color:var(--btn-primary-hover);transform:translateY(-3px);box-shadow:0 15px 30px rgba(0,0,0,.25)}.btn-primary:hover .btn-arr{transform:translateX(5px)}.btn-arr{transition:transform .4s cubic-bezier(.16,1,.3,1)}.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background-color:transparent;color:var(--text-heading);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:.875rem;font-weight:600;border:1px solid var(--border-subtle);cursor:pointer;transition:all .3s ease;text-decoration:none}.btn-secondary:hover{background-color:var(--card-border);transform:translateY(-1px)}.btn-details{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--btn-details-bg);color:var(--btn-details-text);border-radius:var(--r-sm);font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn-details:hover{background-color:var(--btn-details-hover);transform:translateY(-1px)}.pill-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:999px;background-color:var(--badge-bg);color:var(--badge-text);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;transition:background-color .5s ease,color .5s ease}.blob-wrap{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}.blur-blob-1{position:absolute;top:-25%;right:-10%;width:50vw;height:50vw;background-color:var(--blur-1);border-radius:50%;filter:blur(100px);transition:background-color .8s ease;animation:blobMovement1 20s ease-in-out infinite alternate}.blur-blob-2{position:absolute;bottom:-20%;left:-15%;width:40vw;height:40vw;background-color:var(--blur-2);border-radius:50%;filter:blur(100px);transition:background-color .8s ease;animation:blobMovement2 25s ease-in-out infinite alternate}@keyframes blobMovement1{0%{transform:translate(0,0) scale(1);opacity:.8}100%{transform:translate(-10%,10%) scale(1.1);opacity:1}}@keyframes blobMovement2{0%{transform:translate(0,0) scale(1);opacity:.8}100%{transform:translate(10%,-10%) scale(1.15);opacity:1}}.hero-desc{font-size:1.15rem;color:var(--text-muted);max-width:34rem;border-left:2px solid var(--brand-color);padding-left:1.25rem;transition:color .5s ease,border-color .5s ease;line-height:1.8}.img-main{position:absolute;right:0;top:0;width:80%;height:430px;border-radius:3rem 8rem 3rem 3rem;overflow:hidden;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);cursor:pointer;transform:scale(1);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease,z-index 0s .25s;z-index:25}.img-overlap{position:absolute;left:0;bottom:0;width:62%;height:340px;border-radius:2rem 2rem 2rem 6rem;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.2);border:none;cursor:pointer;transform:scale(1);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease,z-index 0s .25s;z-index:20}.img-main.img-front,.img-overlap.img-front{z-index:30;transform:scale(1.03);box-shadow:0 40px 80px -10px rgba(0,0,0,.45);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease,z-index 0s 0s}.section{padding:6rem 0;position:relative;overflow:hidden;background-color:var(--bg-main);transition:background-color .5s ease}.section.bg-sec{background-color:var(--bg-sec)}.section-header{margin-bottom:4rem}.section-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--brand-color);margin-bottom:1rem;transition:color .5s ease}.section-label::before{content:'';width:20px;height:2px;background-color:var(--brand-color);border-radius:1px;transition:background-color .5s ease}.section-title{font-size:clamp(2rem,3.5vw,2.5rem);font-weight:600;color:var(--text-heading);line-height:1.2;transition:color .5s ease}.section-title em{font-style:italic;color:var(--brand-color);transition:color .5s ease}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.service-card{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--r-lg);padding:3rem 2.5rem;border:1px solid var(--glass-border);cursor:pointer;transition:all .6s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:1.5rem;text-decoration:none;position:relative;overflow:hidden;transform-style:preserve-3d;box-shadow:0 10px 30px rgba(0,0,0,.02)}.service-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.4),transparent 70%);opacity:0;transition:opacity .6s ease;pointer-events:none}.service-card:hover{border-color:var(--brand-color);box-shadow:0 35px 60px -15px rgba(0,0,0,.4),0 0 0 1px var(--brand-color) inset;transform:translateY(-10px)}html[data-theme=emerald] .service-card:hover,html[data-theme=ivory] .service-card:hover{box-shadow:0 35px 60px -15px rgba(0,0,0,.1),0 0 0 1px var(--brand-color) inset}.service-card:hover::before{opacity:1}.service-icon-wrapper{width:5rem;height:5rem;border-radius:var(--r-md);background:linear-gradient(135deg,var(--badge-bg),transparent);border:1px solid var(--glass-border);box-shadow:0 12px 24px rgba(0,0,0,.06);display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--brand-color);transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .6s ease,background-color .6s ease}.service-icon-wrapper svg{width:32px;height:32px}.service-card:hover .service-icon-wrapper{transform:translateY(-5px) scale(1.05);background-color:var(--badge-bg);box-shadow:0 15px 30px rgba(0,0,0,.1)}.service-card h3{font-size:1.35rem;font-weight:600;color:var(--text-heading);transition:color .4s ease;letter-spacing:-.01em}.service-card p{font-size:.95rem;color:var(--text-muted);line-height:1.7;flex:1;transition:color .4s ease}.service-card:hover h3{color:var(--brand-color)}.service-card .card-link{font-size:.85rem;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:.35rem;transition:color .4s ease,transform .4s ease;margin-top:auto}.service-card:hover .card-link{color:var(--brand-color);transform:translateX(5px)}.about-section{padding:6rem 0;background-color:var(--about-bg);position:relative;overflow:hidden;transition:background-color .5s ease}.about-section::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 50%,rgba(255,255,255,.06),transparent 60%);pointer-events:none}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative;z-index:1}.about-image-wrap{position:relative}.about-portrait{width:100%;height:480px;border-radius:3rem 8rem 3rem 3rem;overflow:hidden;position:relative}.about-portrait-art{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#3d2820 0,#1d1210 100%)}html[data-theme=emerald] .about-portrait-art,html[data-theme=ivory] .about-portrait-art{background:linear-gradient(145deg,var(--emerald-800) 0,var(--emerald-950) 100%)}.about-quote{position:absolute;bottom:-1.5rem;right:-1.5rem;background-color:#fff;padding:1.5rem;border-radius:var(--r-sm);box-shadow:0 20px 25px -5px rgba(0,0,0,.2);max-width:250px;z-index:10}.about-quote p{font-family:var(--font-serif);font-style:italic;color:#1d1615;font-size:.875rem;line-height:1.5}.about-quote .q-author{margin-top:.6rem;font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#059669}.about-content{display:flex;flex-direction:column;gap:1.85rem}.about-section .section-label{color:var(--about-label)}.about-section .section-label::before{background-color:var(--about-label)}.about-section h2{font-size:clamp(2.5rem,4vw,3.5rem);color:#fff;line-height:1.1;letter-spacing:-.02em}.about-section h2 em{font-style:italic;color:var(--about-label)}.about-section .about-desc{color:var(--about-li);font-size:1.05rem;line-height:1.85;opacity:.9}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2.5rem}.info-card{background:var(--card-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.25rem;transition:all .6s cubic-bezier(.16, 1, .3, 1);transform-style:preserve-3d;box-shadow:0 10px 30px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.6)}.info-card:hover{border-color:var(--brand-color);box-shadow:0 35px 60px -15px rgba(0,0,0,.4);transform:translateY(-8px)}html[data-theme=emerald] .info-card:hover,html[data-theme=ivory] .info-card:hover{box-shadow:0 35px 60px -15px rgba(0,0,0,.15)}.info-card .icon{width:4.5rem;height:4.5rem;border-radius:var(--r-sm);background:linear-gradient(135deg,var(--badge-bg),transparent);border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;color:var(--brand-color);font-size:2rem;margin-bottom:1.5rem;box-shadow:0 12px 24px rgba(0,0,0,.06);transition:transform .6s cubic-bezier(.16,1,.3,1),box-shadow .6s ease}.info-card .icon svg{width:28px;height:28px}.info-card:hover .icon{transform:scale(1.1);box-shadow:0 15px 30px rgba(0,0,0,.1)}.info-card h3{font-size:1.35rem;font-weight:600;letter-spacing:-.01em}.info-card p{font-size:.95rem;color:var(--text-muted);line-height:1.7;transition:color .5s ease}.price-card{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r-lg);padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.5rem;position:relative;transition:all .5s cubic-bezier(.16,1,.3,1);transform-style:preserve-3d}.price-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -15px rgba(0,0,0,.2)}.price-card.featured{border-color:var(--brand-color);box-shadow:0 15px 35px -5px rgba(0,0,0,.08)}.price-card.featured:hover{box-shadow:0 35px 70px -15px rgba(0,0,0,.25)}.price-card.featured::before{content:'Популярний';position:absolute;top:-1px;right:1.5rem;background:var(--btn-primary-bg);color:#fff;font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;border-radius:0 0 .75rem .75rem}.price-card h3{font-size:1.25rem;font-weight:600}.steps-list{display:flex;flex-direction:column;border-left:2px solid var(--border-subtle);margin-left:1rem;transition:border-color .5s ease}.step{padding:1.5rem 1.5rem 1.5rem 2rem;position:relative}.step::before{content:'';position:absolute;left:-6px;top:1.75rem;width:10px;height:10px;border-radius:50%;background:var(--brand-color);border:2px solid var(--bg-main);transition:background-color .5s ease,border-color .5s ease}.step-num{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-color);margin-bottom:.4rem;transition:color .5s ease}.step h3{font-size:1.1rem;margin-bottom:.4rem}.step p{font-size:.875rem;color:var(--text-muted);transition:color .5s ease}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-size:var(--fs-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);transition:color .5s ease}.field input,.field select,.field textarea{background-color:var(--card-bg);border:1px solid var(--card-border);color:var(--text-base);font-family:var(--font-sans);font-size:.9rem;padding:.85rem 1rem;border-radius:.75rem;width:100%;transition:all .3s ease}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-color);box-shadow:0 0 0 3px var(--blur-2)}.field textarea{resize:vertical;min-height:120px}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:var(--modal-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s ease}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-content{background-color:var(--modal-bg);width:90%;max-width:420px;border-radius:var(--r-md);box-shadow:0 25px 50px -12px rgba(0,0,0,.3);border:1px solid var(--border-subtle);transform:translateY(20px) scale(.95);transition:transform .4s cubic-bezier(.16,1,.3,1),background-color .5s ease;overflow:hidden;padding:2rem}.modal-overlay.active .modal-content{transform:translateY(0) scale(1)}.page-hero{padding-top:calc(var(--nav-height) + 2.5rem);padding-bottom:3.5rem;background:linear-gradient(180deg,var(--bg-sec) 0,var(--bg-main) 100%);position:relative;overflow:hidden;transition:background-color .5s ease}.hero-deco-circle{position:absolute;border-radius:50%;pointer-events:none;z-index:0}.hero-deco-1{width:600px;height:600px;top:-10%;right:-5%;background:radial-gradient(circle,var(--blur-1) 0,transparent 70%);opacity:.5;animation:decoFloat 25s ease-in-out infinite alternate}.hero-deco-2{width:400px;height:400px;bottom:-15%;left:-8%;background:radial-gradient(circle,var(--blur-2) 0,transparent 70%);opacity:.4;animation:decoFloat 30s ease-in-out infinite alternate-reverse}@keyframes decoFloat{0%{transform:translate(0,0) scale(1)}100%{transform:translate(5%,-8%) scale(1.1)}}.noise-overlay{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:var(--noise-opacity, .05);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='2.5' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");mix-blend-mode:screen}html[data-theme=emerald] .noise-overlay,html[data-theme=ivory] .noise-overlay{mix-blend-mode:multiply;opacity:.03}.page-hero-title{font-size:clamp(2.8rem,6vw,4.5rem);font-weight:700;color:var(--text-heading);line-height:1.1;max-width:700px;margin-top:1rem;transition:color .5s ease}.page-hero-title em{font-style:italic;color:var(--brand-color);transition:color .5s ease}.page-hero .hero-desc{margin-top:1.25rem;position:relative;z-index:1}footer{background-color:var(--footer-bg);border-top:1px solid var(--border-subtle);padding:4rem 0 2rem;transition:background-color .5s ease,border-color .5s ease}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem;margin-bottom:3rem}.footer-brand .brand-name{font-family:var(--font-serif);font-size:1.35rem;font-weight:700;color:var(--text-heading);margin-bottom:.75rem;transition:color .5s ease}.footer-brand .brand-name em{color:var(--brand-color);font-style:italic;transition:color .5s ease}.footer-brand p{font-size:.85rem;color:var(--text-muted);max-width:240px;line-height:1.65;transition:color .5s ease}.footer-col h4{font-family:var(--font-sans);font-size:var(--fs-2xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.25rem;transition:color .5s ease}.footer-col a{display:block;font-size:.875rem;color:var(--text-muted);margin-bottom:.6rem;transition:color .3s ease}.footer-col a:hover{color:var(--brand-color)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:2rem;border-top:1px solid var(--border-subtle);font-size:.75rem;color:var(--text-muted);transition:border-color .5s ease}.glass-card{position:relative;overflow:hidden;border-radius:2rem;background:var(--glass-bg);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border);box-shadow:0 8px 32px 0 rgba(31,38,135,.07);transition:transform .4s ease,box-shadow .4s ease,background-color .6s,border-color .6s;display:flex;flex-direction:column}.glass-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.5)}html[data-theme=emerald] .glass-card:hover,html[data-theme=ivory] .glass-card:hover{box-shadow:0 15px 40px rgba(0,0,0,.12)}.tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.1em;font-weight:600;padding:.35rem .85rem;border-radius:999px;background:var(--badge-bg);color:var(--badge-text)}.tag.accent{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn{padding:.8rem 1.5rem;border-radius:1rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s;font-family:var(--font-sans);display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.stagger-2{animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .1s both}.stagger-3{animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .2s both}.stagger-4{animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) .3s both}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in-up{opacity:0;animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.reveal{opacity:0;transform:translateY(30px) scale(.96);filter:blur(8px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter 1s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}.grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.grid-2col-start{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.page-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-sm);background-color:var(--card-bg);border:1px solid var(--border-subtle);color:var(--text-base);font-weight:600;transition:all .3s ease}.page-btn:hover{background-color:var(--border-subtle)}.page-btn.active{background-color:var(--brand-color);color:#fff;border-color:var(--brand-color)}.article-nav-link .lbl{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--brand-color);font-weight:600}.nav-actions-wrapper{display:flex;align-items:center;gap:.25rem}.text-btn{background:0 0;border:none;cursor:pointer;color:var(--text-muted);transition:all .3s ease;padding:.35rem .75rem;border-radius:999px;display:flex;align-items:center;gap:.35rem;font-family:var(--font-sans);font-size:.85rem;font-weight:500}.text-btn:hover{background-color:var(--border-subtle);color:var(--brand-color)}.text-btn svg{width:14px;height:14px;transition:transform .3s}.text-btn:hover svg{transform:translateY(2px)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-subtle)}.modal-header h3{font-family:var(--font-serif);font-size:1.25rem;color:var(--text-heading)}.modal-body{padding:1rem;display:flex;flex-direction:column;gap:.4rem}.lang-option{background:0 0;border:none;width:100%;text-align:left;padding:.85rem 1.25rem;border-radius:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:.9rem;color:var(--text-base);font-weight:500;transition:background-color .2s}.lang-option:hover{background-color:var(--modal-hover)}.lang-option.active{background-color:var(--btn-primary-bg);color:#fff;font-weight:600}.lang-option .check-icon{display:none;color:#fff;width:16px}.lang-option.active .check-icon{display:block}@keyframes scanMove{0%{top:5%;opacity:0}5%{opacity:1}95%{opacity:1}100%{top:95%;opacity:0}}@keyframes pulseRing{0%{opacity:.6;transform:scale(1)}70%{opacity:0;transform:scale(1.08)}100%{opacity:0;transform:scale(1.08)}}@keyframes blinkDot{0%,100%{opacity:1}50%{opacity:.2}}.theme-picker-wrap{position:relative}.theme-picker-btn{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--border-subtle);background:var(--card-bg);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .3s,background .3s,color .3s,box-shadow .3s;box-shadow:0 2px 8px rgba(0,0,0,.08)}.theme-picker-btn:hover{border-color:var(--brand-color);color:var(--brand-color);box-shadow:0 4px 14px rgba(0,0,0,.14)}.theme-panel{position:absolute;top:calc(100% + 10px);right:0;background:var(--modal-bg);border:1px solid var(--border-subtle);border-radius:1rem;padding:.75rem 1rem;min-width:160px;box-shadow:0 20px 50px rgba(0,0,0,.22);backdrop-filter:blur(12px);opacity:0;transform:translateY(-8px) scale(.96);pointer-events:none;transition:opacity .22s ease,transform .22s ease;z-index:200}.theme-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.theme-panel-title{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.6rem}.theme-swatches{display:flex;gap:.5rem}.swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;box-shadow:0 2px 6px rgba(0,0,0,.25);flex-shrink:0}.swatch:hover{transform:scale(1.18);box-shadow:0 4px 12px rgba(0,0,0,.35)}.swatch-active{border-color:#fff;box-shadow:0 0 0 3px var(--brand-color),0 4px 12px rgba(0,0,0,.35);transform:scale(1.12)}.page-hero-title.small{font-size:clamp(1.8rem, 3vw, 2.6rem);line-height:1.2;max-width:900px}@keyframes pulseDot{0%,100%{opacity:1}50%{opacity:.3}}.specialties-glass-pro{position:relative;background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:1.25rem;padding:1.5rem 1.75rem;box-shadow:0 30px 60px -15px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.1);overflow:hidden;transition:transform .6s cubic-bezier(.16, 1, .3, 1),box-shadow .6s ease}html[data-theme=emerald] .specialties-glass-pro,html[data-theme=ivory] .specialties-glass-pro{box-shadow:0 20px 40px -15px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(0,0,0,.05)}.specialties-glass-pro:hover{transform:translateY(-6px);box-shadow:0 40px 80px -20px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.2),0 0 0 1px var(--brand-color)}html[data-theme=emerald] .specialties-glass-pro:hover,html[data-theme=ivory] .specialties-glass-pro:hover{box-shadow:0 40px 80px -20px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.6),0 0 0 1px var(--brand-color)}.specialties-glass-pro::before{content:'';position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,var(--brand-color) 0,transparent 60%);opacity:.06;pointer-events:none}.specialties-glass-pro::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--brand-color),transparent);opacity:.2;pointer-events:none}@keyframes pulseRotate{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}100%{transform:rotate(360deg) scale(1)}}@keyframes scrollPulse{0%,100%{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.2)}}.nav-links{gap:.1rem}.nav-links a{white-space:nowrap;padding:.4rem .5rem;letter-spacing:-.01em}.cta-container{text-align:center;position:relative;z-index:1}.cta-title{font-size:clamp(2rem, 4vw, 3rem);color:#fff;margin:1rem 0 1.25rem;line-height:1.15}.navbar.scrolled~.mobile-menu{top:65px}.modal-body{scrollbar-width:thin;scrollbar-color:var(--border-subtle) transparent}.modal-body::-webkit-scrollbar{width:4px}.modal-body::-webkit-scrollbar-track{background:0 0}.modal-body::-webkit-scrollbar-thumb{background-color:var(--border-subtle);border-radius:2px}.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--brand-color);color:#fff;padding:.75rem 1.25rem;border-radius:0 0 .75rem 0;font-weight:600;text-decoration:none}.skip-link:focus{left:0}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--brand-color);outline-offset:2px}.filter-btn:focus-visible,.pay-tab:focus-visible,.swatch:focus-visible{outline-offset:3px}.btn-primary:active,.btn-secondary:active,.btn:active{transform:translateY(1px) scale(.985)}.form-notice{margin-top:1rem;padding:.85rem 1.1rem .85rem 1rem;border-radius:.75rem;font-size:var(--fs-sm);line-height:1.55;color:var(--text-heading);background:rgba(220,80,70,.13);border:1px solid rgba(220,80,70,.4);border-left:4px solid rgba(220,80,70,.85)}@media (min-width:1024px){html{font-size:17px}}@media (max-width:1050px){.nav-links{display:none!important}.hamburger{display:flex!important}.navbar-inner{justify-content:space-between}.mobile-menu{display:flex!important;position:fixed;top:var(--nav-height);left:0;right:0;flex-direction:column;padding:1.5rem;gap:.5rem;background-color:var(--nav-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border-subtle);box-shadow:0 20px 40px rgba(0,0,0,.15);z-index:49;visibility:hidden;opacity:0;transform:translateY(-15px);transition:opacity .4s ease,transform .4s cubic-bezier(.16, 1, .3, 1),visibility .4s;pointer-events:none}.mobile-menu.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.mobile-menu a{display:block;padding:.85rem 1rem;border-radius:var(--r-sm);font-size:1.05rem;font-weight:600;color:var(--text-heading);text-align:center;transition:all .3s ease;background:0 0}.mobile-menu a.active,.mobile-menu a:hover{background-color:var(--border-subtle);color:var(--brand-color)}.hamburger span{transform-origin:center}.hamburger.open span:first-child{transform:translateY(6.5px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.nav-logo{min-height:44px}}@media (max-width:1024px){.services-grid{grid-template-columns:repeat(2,1fr)}.services-grid>:last-child:nth-child(odd){grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.about-grid{grid-template-columns:1fr;gap:3rem}.about-portrait{height:360px}.about-quote{right:0;bottom:-1rem}.grid-2col,.grid-2col-start{gap:2rem}.hero-deco-1,.hero-deco-2{opacity:.2}.about-grid{grid-template-columns:1fr;gap:2.5rem}.about-portrait{height:320px;border-radius:2rem 5rem 2rem 2rem}.about-quote{right:.5rem;bottom:-1rem;max-width:230px}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}}@media (max-width:768px){.services-grid{grid-template-columns:1fr}.services-grid>:last-child:nth-child(odd){grid-column:auto}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:.5rem;text-align:center}.grid-2col,.grid-2col-start{grid-template-columns:1fr;gap:2.5rem}.page-hero{padding-top:calc(var(--nav-height) + 1.5rem);padding-bottom:2.5rem}.specialties-glass-pro{padding:1.25rem 1rem}.section{padding:3.5rem 0}.about-section{padding:3.5rem 0}.section-header{margin-bottom:2.5rem}.section-title{font-size:clamp(1.7rem, 6vw, 2.2rem)}.container{padding:0 1.1rem}.hero-desc{font-size:1rem;max-width:100%}.btn-primary,.btn-secondary{padding:.85rem 1.5rem;font-size:.82rem;width:100%;justify-content:center}.page-hero{padding-top:calc(var(--nav-height) + 1.5rem);padding-bottom:2.5rem}.page-hero-title{font-size:clamp(2rem, 8vw, 2.8rem)}.page-hero .hero-desc{font-size:.95rem;margin-top:1rem}.services-grid{grid-template-columns:1fr;gap:1.25rem}.service-card{padding:2rem 1.75rem}.info-grid{grid-template-columns:1fr;gap:1.25rem}.info-card{padding:2rem 1.75rem}.about-portrait{height:260px}.about-section h2{font-size:clamp(2rem, 7vw, 2.8rem)}.about-quote{display:none}.price-card{padding:2.25rem 2rem}.form-row{grid-template-columns:1fr;gap:1rem}.field input,.field select,.field textarea{font-size:1rem}.footer-grid{grid-template-columns:1fr;gap:2rem}footer{padding:3rem 0 1.5rem}.footer-grid{margin-bottom:2rem}.footer-bottom{flex-direction:column;gap:.4rem;text-align:center;font-size:.7rem}.footer-brand p{max-width:100%}.modal-content{width:94%;max-height:85vh;overflow-y:auto;border-radius:1.25rem}.modal-body{max-height:55vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.lang-option{padding:1rem 1.25rem;font-size:1rem}.cta-title{font-size:clamp(1.7rem, 7vw, 2.4rem)}.steps-list{margin-left:.5rem}.step{padding:1.25rem 1.25rem 1.25rem 1.75rem}.step h3{font-size:1rem}.btn-details{min-height:44px;padding:.7rem 1.25rem}.btn-primary,.btn-secondary{min-height:44px}.pill-badge{font-size:var(--fs-2xs)}}@media (max-width:480px){.navbar-inner{gap:.5rem}.nav-logo{gap:.5rem}.navbar.scrolled{height:60px}.navbar.scrolled~.mobile-menu{top:60px}.section{padding:2.8rem 0}.section-header{margin-bottom:2rem}.container{padding:0 .9rem}.nav-logo-icon{display:none}.nav-logo-text .brand-tagline{display:none}.nav-logo-text .brand-name{font-size:.9rem;white-space:nowrap}#currentLangBtnText{display:none}.text-btn{min-width:40px;min-height:40px;padding:.35rem;justify-content:center}.theme-picker-btn{width:40px;height:40px}.hamburger{width:40px;height:40px}.library-logo-area{gap:.4rem}.library-logo-icon{width:30px;height:30px;font-size:1rem}.page-hero-title{font-size:clamp(1.7rem, 8vw, 2.2rem)}.service-card{padding:1.75rem 1.35rem}.service-icon-wrapper{width:4rem;height:4rem}.theme-panel{right:-.5rem;min-width:150px}.theme-swatches{gap:.5rem}.swatch{width:34px;height:34px}}@media (hover:none){.book-3d:hover,.diploma-card:hover,.genre-card:hover,.glass-card:hover,.info-card:hover,.price-card:hover,.service-card:hover,.story-card:hover,.testimonial:hover{transform:none;box-shadow:initial}.btn-primary:hover{transform:none;box-shadow:0 8px 20px rgba(0,0,0,.15)}}@supports (padding-bottom:env(safe-area-inset-bottom)){.mobile-menu{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom))}}@supports (padding-top:env(safe-area-inset-top)){.navbar{padding-top:env(safe-area-inset-top);height:calc(var(--nav-height) + env(safe-area-inset-top))}.mobile-menu{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom))}footer{padding-bottom:calc(2rem + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.blur-blob-1,.blur-blob-2,.glass-badge,.hero-deco-1,.hero-deco-2{animation:none!important}*,::after,::before{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:.15s!important}.reveal{opacity:1;transform:none;filter:none;transition:none}.animate-fade-in-up{opacity:1;animation:none}}@media print{body{background:#fff;color:#000}}