:root{--bg:#0B0D10;--bg-raised:#12151A;--bg-card:#14181E;--border:#232830;--border-strong:#2E3540;--text:#E6E8EB;--text-muted:#9AA1AB;--text-faint:#7A8494;--accent:#3A5BFF;--accent-hover:#5B76FF;--accent-text:#5B76FF;--accent-bright:#7E93FF;--accent-dim:rgba(58, 91, 255, 0.12);--radius:6px;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--ease-out:cubic-bezier(0.23, 1, 0.32, 1);--maxw:1180px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px;border-radius:3px}.screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);border:0;white-space:nowrap}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--accent);color:#fff;padding:10px 16px;border-radius:0 0 6px 6px;font-weight:600;transition:top 0.15s ease}.skip-link:focus{top:0}a{color:var(--accent-text);text-decoration:none;transition:color 160ms var(--ease-out)}a:hover{color:var(--accent-bright)}.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.15;color:var(--text)}h1{font-size:clamp(2.1rem, 5vw, 3.4rem);letter-spacing:-.02em}h2{font-size:clamp(1.6rem, 3.5vw, 2.4rem);letter-spacing:-.015em}h3{font-size:1.25rem}.kicker{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--accent-text);display:flex;align-items:center;gap:14px;margin-bottom:18px}.kicker::before{content:"";width:34px;height:1px;background:var(--accent)}.kicker .idx{color:var(--text-faint)}.lead{color:var(--text-muted);font-size:1.06rem;max-width:640px}.site-header{position:sticky;top:0;z-index:50;background:rgb(11 13 16 / .86);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}.brand{display:flex;align-items:center;gap:10px}.brand img{height:34px;width:auto}.brand .brand-word{font-family:var(--font-display);font-weight:600;letter-spacing:.22em;font-size:.95rem;color:var(--text);text-transform:uppercase}.main-nav ul{display:flex;list-style:none;gap:6px;align-items:center}.main-nav a{display:block;padding:8px 13px;color:var(--text-muted);font-size:.9rem;border-radius:var(--radius)}.main-nav a:hover{color:var(--text);background:var(--bg-raised)}.main-nav .current-menu-item>a,.main-nav .current_page_item>a{color:var(--text)}.nav-cta{background:var(--accent);color:#fff!important;font-weight:500;padding:9px 18px!important;border-radius:var(--radius)}.nav-cta:hover{background:var(--accent-hover)!important}.nav-toggle{display:none;background:none;border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:var(--radius);font-size:1rem;cursor:pointer}@media (max-width:900px){.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--bg-raised);border-bottom:1px solid var(--border);padding:12px 24px 20px}.main-nav.open{display:block}.main-nav ul{flex-direction:column;align-items:stretch;gap:2px}.main-nav a{padding:12px 10px;font-size:1rem}}.btn{display:inline-block;padding:13px 26px;border-radius:var(--radius);font-family:var(--font-body);font-size:.95rem;font-weight:500;cursor:pointer;border:1px solid #fff0;transition:background 160ms var(--ease-out),border-color 160ms var(--ease-out),transform 160ms var(--ease-out)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);color:#fff}.btn-ghost{background:#fff0;color:var(--text);border-color:var(--border-strong)}.btn-ghost:hover{border-color:var(--accent);color:var(--text)}.section{padding:96px 0;border-top:1px solid var(--border)}.section:first-of-type{border-top:none}.section-head{margin-bottom:48px}@media (max-width:700px){.section{padding:64px 0}}.hero{padding:110px 0 90px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:56px;align-items:center}@media (max-width:900px){.hero-grid{grid-template-columns:1fr}}.hero-logo img{height:84px;width:auto;margin-bottom:30px}.hero p.lead{margin:22px 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-media{border:1px solid var(--border-strong);border-radius:var(--radius);overflow:hidden;position:relative}.hero-media .media-caption{display:flex;justify-content:space-between;gap:16px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);padding:10px 4px 0}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}@media (max-width:980px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px;transition:border-color 200ms var(--ease-out)}.card:hover{border-color:var(--border-strong)}.card h3{margin-bottom:10px}.card p{color:var(--text-muted);font-size:.94rem}.card .icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--accent-dim);color:var(--accent);border-radius:var(--radius);margin-bottom:18px;font-size:1.2rem}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:border-color 200ms var(--ease-out),transform 200ms var(--ease-out)}.project-card:hover{border-color:var(--accent);transform:translateY(-3px)}.project-card .thumb{aspect-ratio:16/10;overflow:hidden;background:var(--bg-raised)}.project-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform 400ms var(--ease-out)}.project-card:hover .thumb img{transform:scale(1.04)}.project-card .body{padding:20px 22px 24px;flex:1;display:flex;flex-direction:column;gap:8px}.project-card .cat{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-text)}.project-card h3{font-size:1.05rem}.project-card h3 a{color:var(--text)}.project-card h3 a:hover{color:var(--accent-bright)}.project-card p{color:var(--text-muted);font-size:.88rem}.badge{display:inline-block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:3px;padding:3px 8px}.filter-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}.filter-tabs a,.filter-tabs button{font-family:var(--font-body);font-size:.85rem;color:var(--text-muted);background:#fff0;border:1px solid var(--border);border-radius:999px;padding:8px 18px;cursor:pointer;transition:all 160ms var(--ease-out)}.filter-tabs a:hover,.filter-tabs button:hover{color:var(--text);border-color:var(--border-strong)}.filter-tabs .active{background:var(--accent);border-color:var(--accent);color:#fff}.domain-section{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:72px 0;border-top:1px solid var(--border)}.domain-section:first-of-type{border-top:none}.domain-section:nth-child(even) .domain-media{order:-1}@media (max-width:860px){.domain-section{grid-template-columns:1fr;gap:28px}.domain-section:nth-child(even) .domain-media{order:0}}.domain-media img{border:1px solid var(--border-strong);border-radius:var(--radius)}.domain-body h2{margin-bottom:16px}.domain-body p{color:var(--text-muted);margin-bottom:14px}.domain-body h4{font-size:.8rem;font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--text);margin:22px 0 10px}.deliverables{list-style:none}.deliverables li{position:relative;padding-left:22px;color:var(--text-muted);font-size:.93rem;margin-bottom:7px}.deliverables li::before{content:"→";position:absolute;left:0;color:var(--accent)}.step{display:grid;grid-template-columns:90px 1fr;gap:28px;padding:44px 0;border-top:1px solid var(--border)}.step:first-of-type{border-top:none}.step-num{font-family:var(--font-mono);font-size:2rem;color:var(--accent);line-height:1}.step h3{margin-bottom:10px}.step p{color:var(--text-muted);margin-bottom:12px}.step .cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:18px}@media (max-width:700px){.step{grid-template-columns:1fr}.step .cols{grid-template-columns:1fr}}.faq-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;background:var(--bg-card)}.faq-item summary{cursor:pointer;padding:20px 24px;font-family:var(--font-display);font-weight:500;font-size:1.02rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";color:var(--accent);font-size:1.3rem;flex-shrink:0}.faq-item[open] summary::after{content:"–"}.faq-item .faq-body{padding:0 24px 22px;color:var(--text-muted);font-size:.95rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}.contact-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:32px}.contact-card ul{list-style:none}.contact-card li{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--border);font-size:.95rem}.contact-card li:last-child{border-bottom:none}.contact-card .label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);min-width:92px;padding-top:3px}.contact-card a{word-break:break-all}.spec-table{width:100%;border-collapse:collapse;font-size:.92rem}.spec-table th,.spec-table td{text-align:left;padding:11px 14px;border:1px solid var(--border)}.spec-table th{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-raised)}.spec-table td{color:var(--text-muted)}.project-hero img{border:1px solid var(--border-strong);border-radius:var(--radius)}.project-meta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 26px}.project-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:36px}@media (max-width:640px){.project-gallery{grid-template-columns:1fr}}.project-gallery img{border:1px solid var(--border);border-radius:var(--radius);width:100%}.project-content{max-width:760px;color:var(--text-muted)}.project-content p{margin-bottom:16px}.site-footer{border-top:1px solid var(--border);padding:56px 0 40px;margin-top:40px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:40px}@media (max-width:760px){.footer-grid{grid-template-columns:1fr}}.site-footer h4{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--text-faint);margin-bottom:16px}.site-footer ul{list-style:none}.site-footer li{margin-bottom:9px}.site-footer a{color:var(--text-muted);font-size:.92rem}.site-footer a:hover{color:var(--text)}.footer-bottom{border-top:1px solid var(--border);padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.82rem;color:var(--text-faint)}.page-hero{padding:88px 0 56px;border-bottom:1px solid var(--border)}.page-hero .lead{margin-top:18px}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:36px}.mt-6{margin-top:56px}.text-muted{color:var(--text-muted)}.mono{font-family:var(--font-mono)}.accent{color:var(--accent-text)}.center{text-align:center}.section-cta{text-align:center;margin-top:48px}mark.todo{background:rgb(255 196 0 / .14);color:#FFC400;padding:1px 6px;border-radius:3px;font-size:.9em}.reveal,.reveal-scale,.reveal-left,.reveal-right,.reveal-side{opacity:0;transition:opacity 600ms var(--ease-out),transform 600ms var(--ease-out)}.reveal{transform:translateY(18px)}.reveal-scale{transform:scale(.94)}.reveal-left{transform:translateX(-30px)}.reveal-right{transform:translateX(30px)}.domain-body.reveal-side{transform:translateX(-30px)}.domain-media.reveal-side{transform:translateX(30px)}.domain-section:nth-child(even) .domain-body.reveal-side{transform:translateX(30px)}.domain-section:nth-child(even) .domain-media.reveal-side{transform:translateX(-30px)}.reveal.visible,.reveal-scale.visible,.reveal-left.visible,.reveal-right.visible,.reveal-side.visible{opacity:1;transform:none}[data-parallax]{overflow:hidden}[data-parallax]>picture,[data-parallax]>img,[data-parallax]>picture>img{display:block;width:100%}[data-parallax] .sph-px-media{will-change:transform}.domain-media[data-parallax],.project-hero[data-parallax]{border:1px solid var(--border-strong);border-radius:var(--radius)}.domain-media[data-parallax] img,.project-hero[data-parallax] img{border:0;border-radius:0}@media (max-width:767px){[data-parallax] .sph-px-media{transform:none!important;will-change:auto}}@media (prefers-reduced-motion:reduce){.reveal,.reveal-scale,.reveal-left,.reveal-right,.reveal-side{opacity:1;transform:none;transition:none}[data-parallax] .sph-px-media{transform:none!important;will-change:auto}}.entry-content h2,.entry-content h3{margin:28px 0 12px}.entry-content p{margin-bottom:14px;color:var(--text-muted)}.entry-content ul,.entry-content ol{margin:0 0 16px 22px;color:var(--text-muted)}.entry-content img{border-radius:var(--radius);border:1px solid var(--border)}.alignwide{max-width:1080px;margin-left:auto;margin-right:auto}.alignfull{width:100%}[data-video-mp4]{position:relative}[data-video-mp4] .sph-video-el{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 0.6s ease;border-radius:inherit;pointer-events:none}[data-video-mp4].has-video .sph-video-el{opacity:1}.hero-media .media-caption{position:relative;z-index:2}.video-credit{font-size:.78rem;letter-spacing:.04em;margin-top:14px;opacity:.75}@media (prefers-reduced-motion:reduce){[data-video-mp4] .sph-video-el{display:none}}.process-video{border:1px solid var(--border-strong);border-radius:var(--radius);overflow:hidden;position:relative;margin-top:8px}.process-video img{display:block;width:100%;height:auto}.stats-section{padding-top:0;border-top:none}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:36px 0}.stat{text-align:center}.stat-num{font-family:var(--font-display);font-size:clamp(2.4rem, 5vw, 3.4rem);font-weight:700;line-height:1;color:var(--text);font-variant-numeric:tabular-nums}.stat-suffix{color:var(--accent)}.stat-label{margin-top:10px;color:var(--text-muted);font-size:.92rem;max-width:22ch;margin-left:auto;margin-right:auto}@media (max-width:640px){.stats-grid{grid-template-columns:1fr;gap:28px;text-align:center}}.project-card .thumb{position:relative;display:block}.media-tag{position:absolute;top:10px;left:10px;z-index:2;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:4px;background:rgb(11 13 16 / .82);color:var(--text);border:1px solid var(--border-strong);backdrop-filter:blur(4px)}.media-tag--foto{border-color:var(--accent);color:var(--accent-hover)}.testimonial{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px 26px;margin:0;display:flex;flex-direction:column;gap:18px}.testimonial blockquote{margin:0;color:var(--text);font-size:1.02rem;line-height:1.6;position:relative;padding-left:22px}.testimonial blockquote::before{content:"\201C";position:absolute;left:-2px;top:-6px;font-family:var(--font-display);font-size:2.2rem;line-height:1;color:var(--accent)}.testimonial blockquote p{margin:0 0 10px}.testimonial blockquote p:last-child{margin-bottom:0}.testimonial figcaption{display:flex;flex-direction:column;gap:2px;margin-top:auto}.testimonial-name{font-weight:600;color:var(--text)}.testimonial-role{font-size:.86rem;color:var(--text-muted)}.footer-legal{font-size:.82rem;margin:22px 0 0;padding-top:18px;border-top:1px solid var(--border)}.contact-form-section{margin-top:40px}.contact-form-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:32px 30px;max-width:760px}.sph-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form .form-field{margin-bottom:18px}.contact-form label{display:block;margin-bottom:7px;font-size:.9rem;color:var(--text);font-weight:500}.contact-form .req{color:var(--accent-text)}.contact-form input[type="text"],.contact-form input[type="email"],.contact-form input[type="tel"],.contact-form select,.contact-form textarea{width:100%;background:var(--bg);border:1px solid var(--border-strong);border-radius:5px;color:var(--text);padding:11px 13px;font-family:var(--font-body);font-size:.96rem;transition:border-color 0.15s ease}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.contact-form textarea{resize:vertical;min-height:120px}.contact-form input[type="file"]{width:100%;color:var(--text-muted);font-size:.9rem;padding:10px 0}.contact-form input[type="file"]::file-selector-button{background:var(--bg-raised);color:var(--text);border:1px solid var(--border-strong);border-radius:5px;padding:8px 14px;margin-right:12px;cursor:pointer;font-family:var(--font-body)}.contact-form input[type="file"]::file-selector-button:hover{border-color:var(--accent)}.field-hint{font-size:.82rem;color:var(--text-faint);margin-top:8px}.contact-form button[type="submit"]{margin-top:6px}.form-notice{border-radius:5px;padding:14px 16px;margin-bottom:22px;font-size:.95rem;border:1px solid var(--border-strong)}.form-notice--ok{border-color:#2e7d5b;background:rgb(46 125 91 / .14);color:#cdefdc}.form-notice--err{border-color:#a3462f;background:rgb(163 70 47 / .14);color:#f3d3c9}@media (max-width:620px){.contact-form .form-row{grid-template-columns:1fr;gap:0}.contact-form-wrap{padding:24px 20px}}