.hub-hero{min-height:100vh;display:flex;align-items:center;background:linear-gradient(165deg,#fff,#edf4fa 45%,#e2eef8);position:relative}.hub-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 70% 30%,rgba(63,168,200,.08) 0%,transparent 60%),radial-gradient(ellipse 50% 40% at 20% 80%,rgba(63,168,200,.04) 0%,transparent 55%);pointer-events:none}.hub-hero__inner{position:relative;z-index:2;padding:120px 0 100px;max-width:860px}.hub-hero__badge{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);border-radius:100px;font-size:.78rem;font-family:var(--f-head);letter-spacing:.06em;color:var(--text-dim);margin-bottom:36px;box-shadow:var(--shadow-xs)}.badge-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px #3fa8c833;animation:pulse 2.5s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 3px #3fa8c833}50%{box-shadow:0 0 0 6px #3fa8c814}}.hub-hero__title{font-family:var(--f-head);margin-bottom:28px}.hub-hero__line1{display:block;font-size:clamp(3.2rem,7vw,5.8rem);font-weight:200;letter-spacing:-.05em;line-height:1}.hub-hero__line2{display:block;font-size:clamp(1.6rem,3.5vw,2.8rem);font-weight:300;letter-spacing:-.02em;line-height:1.3;margin-top:8px}.hub-hero__line3{display:block;font-size:clamp(1.6rem,3.5vw,2.8rem);font-weight:200;letter-spacing:-.02em;line-height:1.3;color:var(--text-dim)}.hub-hero__sub{font-size:clamp(1rem,1.6vw,1.12rem);color:var(--text-dim);font-weight:300;line-height:1.75;max-width:560px}.scroll-hint{position:absolute;bottom:48px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:5;transition:opacity var(--t-mid)}.scroll-hint.hidden{opacity:0;pointer-events:none}.scroll-hint__line{width:1px;height:40px;background:linear-gradient(to bottom,transparent,var(--primary));animation:scrollLine 2s ease-in-out infinite}.scroll-hint span{font-family:var(--f-head);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--primary);opacity:.7}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top;opacity:0}40%{transform:scaleY(1);transform-origin:top;opacity:1}60%{transform:scaleY(1);transform-origin:bottom;opacity:1}to{transform:scaleY(0);transform-origin:bottom;opacity:0}}.hub-domains{background:var(--bg-pure)}.domains-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px}.domain-card{position:relative;padding:40px 36px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--text);display:flex;flex-direction:column;gap:16px;overflow:hidden;transition:transform var(--t-slow),box-shadow var(--t-slow),border-color var(--t-mid)}.domain-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:var(--shadow-lg);border-color:var(--border-h)}.domain-card__glow{position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;opacity:0;transition:opacity .6s ease;pointer-events:none}.domain-card:hover .domain-card__glow{opacity:1}.domain-card--agency .domain-card__glow{background:radial-gradient(circle,rgba(63,168,200,.12) 0%,transparent 70%)}.domain-card--cyber .domain-card__glow{background:radial-gradient(circle,rgba(64,224,160,.12) 0%,transparent 70%)}.domain-card--infra .domain-card__glow{background:radial-gradient(circle,rgba(80,144,208,.12) 0%,transparent 70%)}.domain-card--gamedev .domain-card__glow{background:radial-gradient(circle,rgba(176,96,224,.12) 0%,transparent 70%)}.domain-card--agency:hover{border-color:#3fa8c84d}.domain-card--cyber:hover{border-color:#40e0a04d}.domain-card--infra:hover{border-color:#5090d04d}.domain-card--gamedev:hover{border-color:#b060e04d}.domain-card__icon{width:48px;height:48px;color:var(--primary)}.domain-card--cyber .domain-card__icon{color:#40e0a0}.domain-card--infra .domain-card__icon{color:#5090d0}.domain-card--gamedev .domain-card__icon{color:#b060e0}.domain-card__icon svg{width:100%;height:100%}.domain-card h3{font-size:1.4rem;font-weight:400;letter-spacing:-.02em}.domain-card p{font-size:.9rem;color:var(--text-dim);line-height:1.65;flex-grow:1}.domain-card__meta{display:flex;gap:8px;flex-wrap:wrap}.domain-card__meta .tag{font-size:.7rem;font-weight:500;padding:3px 10px;background:#3fa8c80f;color:var(--primary-d);border:1px solid rgba(63,168,200,.15);border-radius:100px;letter-spacing:.03em}.domain-card--cyber .tag{background:#40e0a00f;color:#28a870;border-color:#40e0a026}.domain-card--infra .tag{background:#5090d00f;color:#3870b0;border-color:#5090d026}.domain-card--gamedev .tag{background:#b060e00f;color:#8840b8;border-color:#b060e026}.domain-card__arrow{position:absolute;bottom:24px;right:28px;font-size:1.4rem;color:var(--text-muted);transition:transform var(--t-spring),color var(--t-fast)}.domain-card:hover .domain-card__arrow{transform:translate(6px);color:var(--primary)}.hub-about{background:var(--bg)}.hub-about__inner{display:grid;grid-template-columns:200px 1fr;gap:64px;align-items:center}.hub-about__avatar{width:160px;height:160px;border-radius:var(--r-xl);background:linear-gradient(145deg,var(--primary-xl),var(--primary-l));display:flex;align-items:center;justify-content:center;font-family:var(--f-head);font-size:2.8rem;font-weight:200;color:var(--primary-d);box-shadow:var(--shadow-md),var(--glow-cyan)}.hub-about__content h2{font-size:2.2rem;font-weight:300;letter-spacing:-.04em;margin-bottom:18px}.hub-about__content p{font-size:.95rem;color:var(--text-dim);line-height:1.75;margin-bottom:24px;max-width:580px}.hub-about__badges{display:flex;gap:8px;flex-wrap:wrap}.tech-badge{font-size:.72rem;font-weight:500;padding:5px 12px;background:var(--bg-pure);color:var(--text-dim);border:1px solid var(--border);border-radius:100px;letter-spacing:.04em}.hub-blog{background:var(--bg-pure)}.blog-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}.blog-preview-card{padding:28px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);text-decoration:none;color:var(--text);display:flex;flex-direction:column;gap:12px;transition:transform var(--t-slow),box-shadow var(--t-slow),border-color var(--t-mid)}.blog-preview-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--border-h)}.blog-preview-card__cat{font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:100px;width:fit-content}.blog-preview-card__cat--ai{background:#3fa8c81a;color:var(--primary-d)}.blog-preview-card__cat--cyber{background:#40e0a01a;color:#28a870}.blog-preview-card__cat--infra{background:#5090d01a;color:#3870b0}.blog-preview-card h4{font-size:1.05rem;font-weight:500;letter-spacing:-.01em;line-height:1.35}.blog-preview-card p{font-size:.85rem;color:var(--text-dim);line-height:1.6;flex-grow:1}.blog-preview-card time{font-size:.75rem;color:var(--text-muted);letter-spacing:.03em}.hub-blog__cta{text-align:center;margin-top:48px}.hub-cta{background:var(--bg)}.hub-cta__box{position:relative;overflow:hidden;padding:72px;background:linear-gradient(165deg,#f8fbfd,#eef6fa);border:1px solid rgba(63,168,200,.2);border-radius:var(--r-2xl);box-shadow:var(--shadow-lg),var(--glow-cyan);text-align:center}.hub-cta__glow{position:absolute;width:500px;height:500px;top:-120px;right:-80px;border-radius:50%;background:radial-gradient(circle,rgba(63,168,200,.1) 0%,transparent 65%);pointer-events:none}.hub-cta__box h2{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:300;letter-spacing:-.04em;margin-bottom:16px}.hub-cta__box p{font-size:1rem;color:var(--text-dim);margin-bottom:36px;max-width:500px;margin-left:auto;margin-right:auto}.hub-cta__actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}@media(max-width:960px){.domains-grid{grid-template-columns:1fr;max-width:560px}.blog-preview-grid{grid-template-columns:1fr;max-width:480px}.hub-about__inner{grid-template-columns:1fr;gap:40px;text-align:center}.hub-about__badges{justify-content:center}.hub-about__content p{max-width:100%}}@media(max-width:680px){.hub-hero__line1{font-size:2.6rem}.hub-cta__box{padding:40px 24px}}
