:root{--bg:#fafaf7;--surface:#fff;--fg:#14151a;--muted:#5d646e;--border:#e8e6e0;--accent:#437bf5;--accent-deep:color-mix(in oklch, var(--accent) 82%, black);--accent-soft:color-mix(in oklch, var(--accent) 10%, transparent);--accent-faint:color-mix(in oklch, var(--accent) 5%, transparent);--ink-soft:#223044;--font-display:"Playfair Display", Georgia, serif;--font-body:"DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--fs-h1:clamp(42px, 5.4vw, 68px);--fs-h2:clamp(26px, 3.2vw, 38px);--fs-h3:clamp(18px, 2.2vw, 24px);--fs-lead:clamp(15px, 1.2vw, 18px);--fs-body:15.5px;--fs-meta:13px;--gap-xs:8px;--gap-sm:14px;--gap-md:24px;--gap-lg:40px;--gap-xl:72px;--gap-2xl:140px;--container:1240px;--gutter:clamp(16px, 3.5vw, 40px);--radius:999px;--radius-lg:20px;--radius-md:14px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-snap:cubic-bezier(.4, 0, .2, 1);--dur-fast:.25s;--dur:.35s;--dur-slow:.5s;--shadow-sm:0 2px 10px #0f172a0a;--shadow-md:0 12px 36px #0f172a14;--shadow-hover:0 20px 48px #0f172a1f, 0 4px 14px #0f172a0d;--shadow-glow:0 8px 24px #437bf547}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--fs-body);letter-spacing:.004em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}p{text-wrap:pretty}h1,h2,h3,h4{text-wrap:balance}::selection{background:var(--accent-soft);color:var(--fg)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.input:focus-visible,.textarea:focus-visible{outline:none}.container{max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.nav-wrap{z-index:200;pointer-events:none;padding-top:0;position:fixed;inset:0 0 auto}.nav-inner{pointer-events:auto;justify-content:center;display:flex}.nav-bar{-webkit-backdrop-filter:blur(36px)saturate(200%);width:100%;height:84px;min-height:84px;transition:background var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out), padding var(--dur-slow) var(--ease-out), border-radius var(--dur-slow) var(--ease-out), margin var(--dur-slow) var(--ease-out), max-width var(--dur-slow) var(--ease-out), height var(--dur-slow) var(--ease-out);background:linear-gradient(#ffffffc7,#ffffff7a);border-bottom:1px solid #ffffff73;justify-content:space-between;align-items:center;gap:24px;padding:0 clamp(24px,4.5vw,52px);display:flex;position:relative;box-shadow:inset 0 1px #ffffffd9,inset 0 -1px #ffffff52,0 1px 16px #0f172a0d}.nav-bar.scrolled{-webkit-backdrop-filter:blur(48px)saturate(240%);background:linear-gradient(#fffffff0,#ffffffd1);border:1px solid #ffffffa6;border-radius:24px;width:auto;max-width:1200px;height:70px;min-height:70px;margin-top:12px;padding:0 clamp(20px,3.5vw,36px);box-shadow:inset 0 1px #fffffff2,inset 0 -1px #ffffff4d,0 16px 40px #0f172a1a,0 4px 14px #0f172a0a}.nav-logo{height:100%;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex;overflow:visible}.nav-logo:hover{opacity:.92}.nav-logo img{object-fit:contain;transform-origin:0;width:auto;max-width:none;height:96px;transition:transform var(--dur-slow) var(--ease-out), height var(--dur-slow) var(--ease-out);flex-shrink:0;margin-block:0;transform:scale(1.25)}.nav-bar.scrolled .nav-logo img{height:80px;transform:scale(1.2)}.nav-links{align-items:center;gap:8px;display:flex}.nav-links a{color:var(--muted);letter-spacing:.01em;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:500;position:relative}.nav-links a:after{content:"";background:var(--accent);transform-origin:0;height:1.5px;transition:transform var(--dur) var(--ease-snap);position:absolute;bottom:5px;left:14px;right:14px;transform:scaleX(0)}.nav-links a:hover{color:var(--fg);background:#0f172a0a}.nav-links a:hover:after{transform:scaleX(1)}.nav-actions{align-items:center;gap:10px;display:flex}.nav-cta{border-radius:var(--radius);background:var(--accent);color:var(--surface);transition:background var(--dur) var(--ease-out), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease-out);border:none;align-items:center;gap:8px;padding:9px 20px;font-size:13px;font-weight:500;display:inline-flex}.nav-bar.scrolled .nav-cta{padding:8px 18px}@media (hover:hover){.nav-cta:hover{background:var(--accent-deep);transform:translateY(-2px);box-shadow:0 8px 24px #437bf559}.nav-cta:active{transform:translateY(0)scale(.98)}}.nav-cta .arr{transition:transform var(--dur) var(--ease)}.nav-cta:hover .arr{transform:translate(4px)}.nav-toggle{cursor:pointer;background:0 0;border:none;border-radius:10px;margin:-4px;padding:10px;display:none}.nav-toggle span{background:var(--fg);width:22px;height:1.5px;transition:transform var(--dur) var(--ease-out), opacity var(--dur-fast) var(--ease-out);margin:5px 0;display:block}.nav-toggle.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-menu{z-index:190;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);opacity:0;pointer-events:none;transition:opacity .35s var(--ease-out);background:#fafaf7fa;flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex;position:fixed;inset:0}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-menu a{font-family:var(--font-display);color:var(--fg);opacity:0;transition:opacity .35s var(--ease-out) .1s, transform .35s var(--ease-out) .1s, color var(--dur) var(--ease-out);font-size:30px;transform:translateY(14px)}.mobile-menu.open a{opacity:1;transform:translateY(0)}.mobile-menu a:hover,.mobile-menu a:focus{color:var(--accent)}.mobile-menu .close-m{border:1px solid var(--border);width:44px;height:44px;color:var(--fg);transition:color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);background:0 0;border-radius:50%;place-items:center;font-size:28px;display:grid;position:absolute;top:24px;right:24px}.mobile-menu .close-m:hover{color:var(--accent);transform:rotate(90deg)}.mobile-cta{margin-top:12px;font-family:var(--font-body)!important;padding:12px 28px!important;font-size:14px!important}.hero{align-items:center;min-height:88vh;padding-top:108px;padding-bottom:60px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;pointer-events:none;position:absolute;inset:0}.hero-bg .blob-1{background:radial-gradient(circle, var(--accent-soft), transparent 70%);filter:blur(20px);border-radius:50%;width:38vw;height:38vw;position:absolute;top:-10%;right:-4%;transform:translateZ(0)}.hero-bg .blob-2{background:radial-gradient(circle, color-mix(in oklch, var(--accent) 6%, transparent), transparent 70%);border-radius:50%;width:28vw;height:28vw;position:absolute;bottom:-6%;left:-4%}.hero-bg .grid-lines{background-image:linear-gradient(#0f172a05 1px,#0000 1px),linear-gradient(90deg,#0f172a05 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 60% 40%,#000 30%,#0000 70%);mask-image:radial-gradient(80% 60% at 60% 40%,#000 30%,#0000 70%)}.hero-grid{z-index:2;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(32px,5vw,64px);width:100%;display:grid;position:relative}.hero-content{text-align:left;max-width:700px}.hero-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);opacity:0;animation:fadeUp .8s var(--ease-out) .15s forwards;align-items:center;gap:10px;margin-bottom:18px;font-size:11.5px;font-weight:600;display:inline-flex}.hero-eyebrow:before{content:"";background:var(--accent);border-radius:2px;width:24px;height:1.5px}.hero h1{font-family:var(--font-display);font-size:var(--fs-h1);letter-spacing:-.026em;opacity:0;animation:fadeUp .9s var(--ease-out) .3s forwards;text-align:left;margin:0 0 18px;padding-top:12px;font-weight:600;line-height:1.08}.hero h1 em{color:var(--accent);font-style:italic;font-weight:500}.hero .lead{font-size:var(--fs-lead);color:var(--muted);opacity:0;max-width:52ch;animation:fadeUp .9s var(--ease-out) .45s forwards;text-align:left;margin-bottom:30px;line-height:1.65}.hero-actions{opacity:0;animation:fadeUp .9s var(--ease-out) .6s forwards;flex-wrap:wrap;gap:14px;display:flex}.hero-visual-art{z-index:1;opacity:0;width:100%;max-width:480px;animation:fadeIn 1.2s var(--ease-out) .4s forwards;justify-content:center;align-items:center;margin-inline:auto;display:flex;position:relative}.hero-visual-art svg{will-change:transform;filter:drop-shadow(0 14px 32px #0f172a14);width:100%;height:auto;max-height:480px;animation:8s ease-in-out 1s infinite floaty;display:block}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.btn{border-radius:var(--radius);letter-spacing:.04em;text-transform:uppercase;transition:background var(--dur) var(--ease-out), color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease-out);border:none;align-items:center;gap:8px;padding:13px 30px;font-size:13px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn .arr{transition:transform var(--dur) var(--ease);display:inline-block}.btn-accent{background:var(--accent);color:var(--surface);box-shadow:0 2px 10px #437bf52e}.btn-accent:before{content:"";transition:transform .7s var(--ease-out);background:linear-gradient(110deg,#0000 30%,#ffffff38 50%,#0000 70%);position:absolute;inset:0;transform:translate(-110%)}.btn-dark{background:var(--fg);color:var(--surface)}.btn-ghost{color:var(--fg);border:1px solid var(--border);background:0 0}.btn>*{z-index:1;position:relative}@media (hover:hover){.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)scale(.98)}.btn-accent:hover{background:var(--accent-deep);box-shadow:0 10px 28px #437bf559}.btn-accent:hover:before{transform:translate(110%)}.btn-dark:hover{background:#1a1c24;box-shadow:0 10px 28px #0f172a40}.btn-ghost:hover{color:var(--accent);border-color:#437bf566;box-shadow:0 6px 20px #0f172a0f}}.btn:hover .arr{transform:translate(4px)}.section{padding-block:clamp(64px,8vw,112px)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(36px,5vw,64px);display:flex}.section-head .index-num{font-family:var(--font-mono);letter-spacing:.16em;color:var(--accent);margin-bottom:12px;font-size:11.5px;display:block}.section-head h2{font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.022em;margin:0;font-weight:500;line-height:1.1}.section-head h2 em{color:var(--accent);font-style:italic;font-weight:400}.section-head .lead-side{max-width:44ch;color:var(--muted);margin:0;font-size:15px;line-height:1.65}.section-head--stacked{margin-bottom:44px;display:block}.section-head--stacked .section-subheading{max-width:58ch;color:var(--muted);font-size:var(--fs-lead);margin:14px 0 0;line-height:1.65}.reveal{opacity:0;transition:opacity 1s var(--ease-out), transform 1s var(--ease-out);will-change:opacity, transform;transform:translateY(60px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transition:opacity 1s var(--ease-out), transform 1s var(--ease-out);will-change:opacity, transform;transform:translate(-70px)}.reveal-left.visible{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transition:opacity 1s var(--ease-out), transform 1s var(--ease-out);will-change:opacity, transform;transform:translate(70px)}.reveal-right.visible{opacity:1;transform:translate(0)}.reveal-zoom{opacity:0;transition:opacity .95s var(--ease-out), transform .95s var(--ease-out);will-change:opacity, transform;transform:scale(.8)}.reveal-zoom.visible{opacity:1;transform:scale(1)}.reveal-flip{opacity:0;transition:opacity 1s var(--ease-out), transform 1s var(--ease-out);will-change:opacity, transform;transform:perspective(700px)rotateX(18deg)translateY(40px)}.reveal-flip.visible{opacity:1;transform:perspective(700px)rotateX(0)translateY(0)}.reveal-fade{opacity:0;transition:opacity 1.2s var(--ease-out);will-change:opacity}.reveal-fade.visible{opacity:1}.reveal-d1,.reveal-left-d1,.reveal-right-d1,.reveal-zoom-d1,.reveal-flip-d1{transition-delay:.18s}.reveal-d2,.reveal-left-d2,.reveal-right-d2,.reveal-zoom-d2,.reveal-flip-d2{transition-delay:.36s}.reveal-d3,.reveal-left-d3,.reveal-right-d3,.reveal-zoom-d3,.reveal-flip-d3{transition-delay:.54s}.reveal-d4,.reveal-left-d4,.reveal-right-d4,.reveal-zoom-d4,.reveal-flip-d4{transition-delay:.72s}.reveal-d5,.reveal-zoom-d5,.reveal-flip-d5{transition-delay:.9s}.reveal-d6,.reveal-zoom-d6{transition-delay:1.08s}@media (prefers-reduced-motion:reduce){.reveal,.reveal-left,.reveal-right,.reveal-zoom,.reveal-flip,.reveal-fade,.hero h1,.hero .lead,.hero-eyebrow,.hero-actions,.hero-visual-art,.mobile-menu a{opacity:1;transition:none;animation:none;transform:none}}.services{background:var(--bg)}.services-grid{border-top:none;grid-template-columns:repeat(2,1fr);gap:clamp(20px,2.4vw,28px);display:grid}.service-row{border:1px solid var(--border);border-radius:var(--radius-lg);cursor:default;background:#fff;padding:clamp(32px,3.5vw,42px) clamp(26px,2.8vw,34px);transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s cubic-bezier(.16,1,.3,1),border-color .32s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;box-shadow:0 4px 18px #0f172a0a}@media (hover:hover){.service-row.reveal.visible:hover,.service-row.reveal-flip.visible:hover,.service-row:hover{background:#fff;border-color:#437bf561;transform:translateY(-10px);box-shadow:0 24px 48px -8px #0f172a1f,0 0 0 1px #437bf547}.service-row:hover .sr-icon-img{transform:translateY(-4px)scale(1.06)}.service-row:hover .sr-num{color:var(--accent-deep);transform:translateY(-2px)}.service-row:hover h3{color:var(--accent)}}.service-row .sr-num{font-family:var(--font-mono);letter-spacing:.12em;color:var(--accent);transition:color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);margin-bottom:16px;font-size:11px;display:block}.service-row .sr-icon{background:0 0;border:none;justify-content:flex-start;align-items:center;width:auto;height:auto;margin-bottom:20px;display:inline-flex}.service-row .sr-icon-img{object-fit:contain;filter:drop-shadow(0 8px 18px #0f172a14);width:76px;height:76px;transition:transform var(--dur) var(--ease-out);display:block}.service-row .sr-icon svg{width:24px;height:24px}.service-row h3{font-family:var(--font-display);font-size:var(--fs-h3);letter-spacing:-.015em;color:var(--fg);transition:color var(--dur) var(--ease-out);margin:0 0 12px;font-weight:500}.service-row p{color:var(--muted);max-width:44ch;margin:0 0 20px;font-size:14.5px;line-height:1.62}.service-row .go-link{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;transition:color var(--dur) var(--ease-out), gap var(--dur) var(--ease);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:inline-flex}.service-row .go-link span{transition:transform var(--dur) var(--ease);display:inline-block}.service-row .go-link:hover{color:var(--accent-deep);gap:12px}.service-row .go-link:hover span{transform:translate(3px)}.stats-strip{background:var(--fg);color:var(--surface);padding-block:clamp(56px,7vw,92px);position:relative;overflow:hidden}.stats-strip:before{content:"";background:radial-gradient(60% 80% at 80% 20%,#437bf529,#0000 60%);position:absolute;inset:0}.stats-grid{flex-wrap:wrap;justify-content:space-between;gap:32px;display:flex;position:relative}.stat-big{flex:1;min-width:160px}.stat-big .num{font-family:var(--font-display);letter-spacing:-.02em;color:var(--surface);font-size:clamp(38px,4.8vw,56px);font-weight:500;line-height:1}.stat-big .num .plus{color:var(--accent);display:inline-block}.stat-big .lbl{letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklch, var(--surface) 65%, transparent);margin-top:8px;font-size:11.5px}.why-section .why-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(36px,6vw,80px);display:grid}.why-art{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.why-art svg{filter:drop-shadow(0 12px 28px #0f172a0d);width:100%;max-width:440px;height:auto;display:block}.why-copy{padding-left:0}.why-copy h2{font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.022em;margin:0 0 28px;font-weight:500;line-height:1.12}.why-copy h2 em{color:var(--accent);font-style:italic;font-weight:400}.why-items{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.why-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:transform .28s var(--ease-out), box-shadow .28s var(--ease-out), border-color .28s var(--ease-out);align-items:flex-start;gap:18px;padding:18px 22px;display:flex;box-shadow:0 2px 8px #0f172a08}@media (hover:hover){.why-item:hover{border-color:#437bf559;transform:translateY(-6px);box-shadow:0 14px 30px #0f172a14}}.why-item .wi-num{font-family:var(--font-mono);color:var(--accent);letter-spacing:.1em;flex-shrink:0;padding-top:2px;font-size:11.5px;font-weight:600}.why-item .wi-copy strong{color:var(--fg);transition:color var(--dur-fast) var(--ease-out);margin-bottom:4px;font-size:16px;font-weight:600;display:block}.why-item:hover .wi-copy strong{color:var(--accent)}.why-item .wi-copy span{color:var(--muted);font-size:13.5px;line-height:1.55}.portfolio{background:var(--surface)}.portfolio-showcase-grid{grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.5vw,28px);display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out), border-color .3s var(--ease-out);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 4px 18px #0f172a0a}@media (hover:hover){.project-card:hover{border-color:#437bf559;transform:translateY(-6px);box-shadow:0 18px 40px #0f172a1a}}.project-image-wrap{aspect-ratio:16/11;cursor:pointer;background:#eef1f6;width:100%;text-decoration:none;display:block;position:relative;overflow:hidden}.project-image{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .45s var(--ease-out);display:block}@media (hover:hover){.project-card:hover .project-image{transform:scale(1.05)}}.project-category-badge{letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--fg);z-index:2;background:#ffffffeb;border:1px solid #fffc;border-radius:999px;padding:4px 11px;font-size:10.5px;font-weight:600;position:absolute;top:12px;left:12px;box-shadow:0 2px 8px #0f172a14}.project-visit-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#fff;letter-spacing:.04em;text-transform:uppercase;opacity:0;transition:opacity .25s var(--ease-out);z-index:2;background:#0a0e1e9e;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex;position:absolute;inset:0}.project-visit-overlay svg{transition:transform .2s var(--ease-out)}@media (hover:hover){.project-card:hover .project-visit-overlay{opacity:1}.project-card:hover .project-visit-overlay svg{transform:translate(3px,-3px)}}.project-card-body{flex-direction:column;flex-grow:1;padding:22px;display:flex}.project-meta-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.project-tag{font-family:var(--font-mono);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.project-metric-pill{color:#027a48;white-space:nowrap;background:#ecfdf3;border:1px solid #d1fadf;border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600}.project-title{font-family:var(--font-display);color:var(--fg);margin:0 0 8px;font-size:19px;font-weight:600;line-height:1.25}.project-title a{color:inherit;transition:color var(--dur-fast) var(--ease-out);text-decoration:none}.project-title a:hover{color:var(--accent)}.project-desc{color:var(--muted);flex-grow:1;margin:0 0 18px;font-size:13.5px;line-height:1.6}.project-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.project-live-btn{color:var(--fg);background:var(--surface-muted);border:1px solid var(--border);transition:all var(--dur-fast) var(--ease-out);border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:11.5px;font-weight:600;text-decoration:none;display:inline-flex}.project-live-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-1px)}.project-cta-link{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;transition:color var(--dur-fast) var(--ease-out), gap var(--dur-fast) var(--ease);white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.project-cta-link .arr{transition:transform var(--dur-fast) var(--ease)}.project-cta-link:hover{color:var(--accent-deep);gap:8px}.project-cta-link:hover .arr{transform:translate(3px)}.project-cta-card{color:#fff;background:linear-gradient(145deg,#181920,#0d0e12);border-color:#ffffff1a}.project-cta-card-content{flex-direction:column;justify-content:center;align-items:flex-start;height:100%;padding:32px 24px;display:flex}.p-cta-icon-badge{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:18px;font-size:22px;font-weight:600;display:grid;box-shadow:0 8px 24px #437bf559}.project-cta-card .project-tag{color:#fff9;margin-bottom:6px}.project-cta-card .project-title{color:#fff;margin-bottom:10px;font-size:22px}.project-cta-card .project-desc{color:#ffffffb3;margin-bottom:20px;font-size:13.5px}.p-metric-highlight{color:#86efac;background:#22c55e1f;border-color:#22c55e40;margin-bottom:20px}.project-launch-btn{justify-content:center;width:100%}.testimonial{padding-block:clamp(72px,10vw,128px)}.testimonial-wrap{text-align:center;max-width:820px;margin-inline:auto}.testimonial-wrap .quote-mark{font-family:var(--font-display);color:var(--accent);opacity:.2;margin-bottom:8px;font-size:clamp(60px,8vw,96px);line-height:.6}.testimonial-wrap .t-quote{font-family:var(--font-display);letter-spacing:-.015em;color:var(--fg);transition:opacity .25s var(--ease-out);margin:0 0 32px;font-size:clamp(22px,3vw,32px);font-weight:400;line-height:1.35}.testimonial-wrap .t-quote.is-swapping{opacity:0}.testimonial-wrap .t-quote em{color:var(--accent);font-style:italic}.t-meta{transition:opacity .25s var(--ease-out);flex-direction:column;align-items:center;gap:6px;display:flex}.t-meta.is-swapping{opacity:0}.t-meta .stars{color:var(--accent);gap:4px;display:flex}.t-meta .stars svg{width:15px;height:15px}.t-meta .t-name{font-size:15px;font-weight:600}.t-meta .t-role{color:var(--muted);font-size:12.5px}.t-avatars{justify-content:center;gap:10px;margin-top:36px;display:flex}.t-avatars button{border:1.5px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--muted);transition:border-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out), background var(--dur) var(--ease-out), transform var(--dur) var(--ease-out);border-radius:50%;place-items:center;font-size:13px;font-weight:600;display:grid}@media (hover:hover){.t-avatars button:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.t-avatars button:active{transform:translateY(0)scale(.96)}}.t-avatars button.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:scale(1.06);box-shadow:0 4px 12px #437bf52e}.cta-band{background:var(--fg);color:var(--surface);text-align:center;padding-block:clamp(72px,10vw,120px);position:relative;overflow:hidden}.cta-band:before{content:"";background:radial-gradient(55% 80% at 50% 110%,#437bf538,#0000 65%);position:absolute;inset:0}.cta-band .container{z-index:2;max-width:640px;position:relative}.cta-band .eyebrow-mono{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:11.5px}.cta-band h2{font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.022em;margin:0 0 18px;font-weight:500;line-height:1.1}.cta-band h2 em{color:var(--accent);font-style:italic}.cta-band p{color:color-mix(in oklch, var(--surface) 70%, transparent);max-width:48ch;margin:0 auto 32px;font-size:15.5px;line-height:1.65}.cta-band .btn{font-size:13px}.contact-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(36px,6vw,72px);display:grid}.contact-side .c-block{border-top:1px solid var(--border);padding:24px 0}.contact-side .c-block:last-child{border-bottom:1px solid var(--border)}.contact-side .c-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:11px}.contact-side .c-value{color:var(--fg);transition:color var(--dur) var(--ease-out);font-size:17px;font-weight:500;display:inline-block;position:relative}@media (hover:hover){.contact-side .c-value:hover{color:var(--accent)}}.contact-form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);max-width:520px;padding:clamp(24px,3.5vw,36px)}.contact-form-card h3{font-family:var(--font-display);margin:0 0 20px;font-size:22px;font-weight:500}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field label{color:var(--fg);font-size:12.5px;font-weight:500}.input,.textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--fg);font-family:var(--font-body);transition:border-color var(--dur) var(--ease-out), background var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);border-radius:12px;padding:11px 16px;font-size:14.5px}.input::placeholder,.textarea::placeholder{color:color-mix(in oklch, var(--muted) 75%, transparent)}.input:hover,.textarea:hover{border-color:color-mix(in oklch, var(--muted) 45%, var(--border))}.input:focus,.textarea:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.textarea{resize:vertical;min-height:100px;line-height:1.55}.form-success{text-align:center;padding:48px 20px;display:none}.form-success .fs-icon{background:var(--accent-soft);width:60px;height:60px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.form-success h3{font-family:var(--font-display);margin:0 0 10px;font-size:24px;font-weight:500}.form-success p{color:var(--muted);max-width:32ch;margin:0 auto;font-size:14px}.site-footer{background:var(--fg);color:var(--surface);padding:0 0 36px;position:relative;overflow:hidden}.site-footer:before{content:"";background:radial-gradient(50% 60% at 15% 100%,#437bf524,#0000 60%);position:absolute;inset:0}.footer-statement{text-align:center;margin-bottom:clamp(40px,6vw,68px);position:relative}.footer-statement .fs-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:11.5px}.footer-statement h2{font-family:var(--font-display);font-size:var(--fs-h2);margin:0 0 24px;font-weight:400;line-height:1.1}.footer-statement h2 em{color:var(--accent);font-style:italic}.footer-cta{flex-direction:column;align-items:center;gap:20px;display:flex}.footer-nav{border-top:1px solid #ffffff1a;grid-template-columns:2fr 1fr 1.2fr 1.2fr;gap:clamp(28px,4vw,56px);padding-top:48px;display:grid;position:relative}.footer-logo{align-items:center;gap:10px;margin-bottom:14px;display:inline-flex}.footer-logo-img{object-fit:contain;width:34px;height:34px}.footer-logo-text{font-family:var(--font-display);color:#fff;font-size:22px;font-weight:600}.footer-bio{max-width:32ch;color:color-mix(in oklch, var(--surface) 65%, transparent);margin:0;font-size:13.5px;line-height:1.65}.footer-col h4{letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklch, var(--surface) 60%, transparent);margin-bottom:16px;font-size:11.5px}.footer-col a{color:color-mix(in oklch, var(--surface) 80%, transparent);transition:color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);padding:5px 0;font-size:14px;display:block}@media (hover:hover){.footer-col a:hover{color:var(--accent);transform:translate(3px)}}.footer-bottom{color:color-mix(in oklch, var(--surface) 50%, transparent);border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:44px;padding-top:24px;font-size:12px;display:flex;position:relative}.footer-bottom .fb-links{gap:20px;display:flex}.footer-bottom a{color:inherit;transition:color var(--dur-fast) var(--ease-out)}.footer-bottom a:hover{color:var(--accent)}.social-row{gap:10px;margin-top:18px;display:flex}.social-row a{width:38px;height:38px;color:var(--surface);transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease);border:1px solid #ffffff26;border-radius:50%;place-items:center;display:grid}.social-row a svg{width:15px;height:15px}@media (hover:hover){.social-row a:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}}@media (width<=920px){.nav-wrap{z-index:200;pointer-events:none;width:100%;position:fixed;inset:0 0 auto}.nav-inner{pointer-events:auto;justify-content:center;width:100%;display:flex}.nav-bar{-webkit-backdrop-filter:blur(24px);background:#fffffff2;border:1px solid #fffc;border-radius:20px;width:calc(100% - 28px);height:70px;min-height:70px;margin:10px 14px 0;padding:0 18px;box-shadow:0 4px 20px #0f172a14}.nav-bar.scrolled{width:calc(100% - 28px);max-width:none;margin-top:10px}.nav-links{display:none}.nav-toggle{display:block}.nav-logo img{transform-origin:0;width:auto;max-width:none;height:80px;margin-block:0;transform:scale(1.22)}.hero{min-height:auto;padding-top:94px;padding-bottom:40px}.hero-grid{grid-template-columns:1fr;gap:32px;width:100%}.hero-content{width:100%;max-width:100%}.hero-visual-art{order:2;width:100%;max-width:340px;margin-top:8px}.services-grid{grid-template-columns:1fr;gap:16px;width:100%}.service-row{border-radius:16px;width:100%;padding:26px 20px}.why-section .why-grid{grid-template-columns:1fr;gap:32px;width:100%}.why-art{order:2;width:min(85vw,320px);margin:0 auto}.why-copy{order:1;width:100%}.portfolio-showcase-grid{grid-template-columns:repeat(2,1fr);gap:20px;width:100%}.contact-layout{grid-template-columns:1fr;gap:32px;width:100%}.contact-form-card{width:100%;max-width:100%}.footer-nav{grid-template-columns:1fr 1fr;gap:32px;width:100%}.footer-brand-side{grid-column:span 2;width:100%}.stats-grid{grid-template-columns:repeat(2,1fr);gap:28px 20px;width:100%;display:grid}.stat-big{text-align:center;width:100%;min-width:0}}@media (width<=768px){.reveal-left,.reveal-right{transform:translateY(24px)}.reveal-zoom{transform:scale(.92)}.reveal-flip{transform:translateY(24px)}.section{padding-block:clamp(48px,7vw,76px)}.section-head{flex-direction:column;align-items:flex-start;gap:12px;width:100%;margin-bottom:28px}.testimonial{padding-block:clamp(48px,8vw,76px)}.testimonial-wrap .t-quote{margin-bottom:20px;font-size:clamp(17px,4.2vw,22px);line-height:1.45}.cta-band{padding-block:clamp(48px,8vw,76px)}.input,.textarea{font-size:16px}}@media (width<=640px){.portfolio-showcase-grid{grid-template-columns:1fr;gap:18px}}@media (width<=580px){html{scroll-padding-top:72px}.nav-bar{border-radius:16px;width:calc(100% - 20px);height:64px;min-height:64px;margin:8px 10px 0;padding:0 16px}.nav-bar.scrolled{width:calc(100% - 20px);margin-top:8px}.nav-logo img{transform-origin:0;width:auto;max-width:none;height:72px;margin-block:0;transform:scale(1.2)}.nav-cta{display:none}.hero{padding-top:84px;padding-bottom:32px}.hero-actions{flex-direction:column;gap:10px;width:100%}.hero-actions .btn{justify-content:center;width:100%;min-height:48px}.footer-nav{grid-template-columns:1fr;gap:24px}.footer-brand-side{grid-column:span 1}.footer-bottom{text-align:center;flex-direction:column;align-items:center;gap:14px}.footer-bottom .fb-links{justify-content:center;gap:18px}.cta-band .btn{justify-content:center;width:100%;max-width:280px;min-height:48px;margin-inline:auto}}@media (width<=420px){.hero-eyebrow{margin-bottom:12px}.hero h1{font-size:clamp(28px,8.5vw,36px);line-height:1.15}.hero .lead{font-size:14.5px;line-height:1.55}.stats-grid{gap:18px 10px}.stat-big .num{font-size:clamp(26px,8vw,38px)}.stat-big .lbl{letter-spacing:.06em;font-size:10px}.why-item{border-radius:12px;gap:12px;padding:14px}.why-item .wi-copy strong{font-size:14.5px}.why-item .wi-copy span{font-size:12.5px}.service-row{padding:20px 16px}.service-row h3{font-size:18.5px}.service-row p{font-size:13px}.project-card-body{padding:16px 14px}.project-title{font-size:17px}.project-desc{font-size:12.5px}.contact-form-card{border-radius:14px;padding:18px 14px}.c-value{font-size:15px}}
