.series-item h4{margin: 0 0 4px;font-size: 1.25rem;letter-spacing: -.03em}.series-item p{color: var(--muted);font-size: .98rem}.res-class{display: grid;grid-template-columns: 150px minmax(0,1fr);gap: 22px;align-items: center;border: 1px solid var(--line);border-radius: 22px;padding: 18px;background: var(--surface)}.res-class img{border-radius: 12px;aspect-ratio: 1;object-fit: cover}.res-class p{margin: 10px 0 12px;color: var(--muted);font-size: .96rem}.res-class .h3{font-size: 1.3rem}.voice-list{margin-top: 40px;display: grid;gap: 28px}.voice{border-top: 1px solid var(--line);padding-top: 24px}.voice blockquote{margin: 0;font-size: clamp(1.4rem,2.6vw,2.2rem);font-weight: 700;letter-spacing: -.035em;line-height: 1.1;max-width: 30ch}.voice figcaption{margin-top: 14px;color: var(--muted)}.faq-grid{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.5fr);gap: clamp(28px,6vw,100px);align-items: start}.faq-list details{border-top: 1px solid var(--line)}.faq-list details:last-child{border-bottom: 1px solid var(--line)}.faq-list summary{list-style: none;cursor: pointer;padding: 22px 40px 22px 0;font-size: clamp(1.1rem,1.6vw,1.35rem);font-weight: 700;letter-spacing: -.025em;position: relative}.faq-list summary::-webkit-details-marker{display: none}.faq-list summary::after{content: "+";position: absolute;right: 4px;top: 50%;transform: translateY(-50%);font-size: 1.6rem;font-weight: 400;transition: transform .3s var(--ease)}.faq-list details[open] summary::after{transform: translateY(-50%) rotate(45deg)}.faq-a{padding: 0 40px 24px 0;color: var(--muted)}.faq-list details[open] .faq-a{animation: swap .4s var(--ease)}.contact{background: var(--surface);border-top: 1px solid var(--line)}.contact-grid{display: grid;grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);gap: clamp(32px,6vw,100px);align-items: start}.contact-paths{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 34px}.form{display: grid;gap: 18px;padding: clamp(22px,3vw,40px);border: 1px solid var(--line);border-radius: 24px;background: var(--bg)}.seg{display: grid;grid-template-columns: 1fr 1fr;border: 1px solid var(--line);border-radius: 999px;padding: 4px;gap: 4px}.seg label{position: relative}.seg input{position: absolute;opacity: 0;inset: 0;cursor: pointer}.seg span{display: block;text-align: center;padding: 10px 12px;border-radius: 999px;font-weight: 700;font-size: .88rem;transition: background-color .2s,color .2s}.seg input:checked + span{background: var(--text);color: var(--bg)}.seg input:focus-visible + span{outline: 2px solid var(--secondary);outline-offset: 2px}.field{display: grid;gap: 6px}.field-row{display: grid;grid-template-columns: 1fr 1fr;gap: 14px}@media (max-width: 560px){.field-row{grid-template-columns: 1fr}}.field label{font-size: .88rem;font-weight: 700}.field .opt{color: var(--muted);font-weight: 400;margin-left: 6px}.field input,.field textarea,.field select{width: 100%;background: var(--surface);border: 1px solid var(--line);border-radius: 12px;padding: 13px 14px;font-size: 1rem;transition: border-color .2s,box-shadow .2s}.field textarea{resize: vertical;min-height: 92px}.field input:focus,.field textarea:focus,.field select:focus{outline: none;border-color: var(--secondary);box-shadow: 0 0 0 3px color-mix(in srgb,var(--secondary) 28%,transparent)}.field.has-error input,.field.has-error textarea{border-color: var(--accent)}.field-error{color: var(--accent);font-size: .85rem}.hp{position: absolute;left: -9999px;width: 1px;height: 1px;overflow: hidden}.form-status{font-size: .95rem;min-height: 1.4em;color: var(--muted);max-width: none}.form-status.is-error{color: var(--accent)}.form-done{display: grid;gap: 12px;padding: 12px 0}.form-done h3{font-size: 2rem}.footer{padding: 64px 0 40px;border-top: 1px solid var(--line)}.footer-grid{display: grid;grid-template-columns: 1.4fr 1fr 1fr;gap: 32px}.f-brand{font-weight: 700;font-size: 2rem;letter-spacing: -.05em}.f-sub{color: var(--muted);margin-top: 10px}.footer nav,.f-social{display: grid;gap: 8px;align-content: start}.footer a{text-decoration: none;color: var(--muted);transition: color .2s;width: fit-content}.footer a:hover{color: var(--text)}.footer-end{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 12px;margin-top: 56px;padding-top: 22px;border-top: 1px solid var(--line)}.footer-end p{color: var(--muted);font-size: .92rem}.case{position: fixed;inset: 0;z-index: 200;background: var(--bg);clip-path: inset(100% 0 0 0);visibility: hidden;transition: clip-path .6s var(--ease-wipe),visibility 0s linear .6s;display: flex;flex-direction: column}.case.is-open{clip-path: inset(0 0 0 0);visibility: visible;transition: clip-path .6s var(--ease-wipe),visibility 0s}.case-bar{display: flex;justify-content: space-between;align-items: center;padding: 18px var(--pad);border-bottom: 1px solid var(--line);background: var(--bg)}.case-nav{display: flex;gap: 24px}.case-scroll{flex: 1;overflow-y: auto;overscroll-behavior: contain}.case-in{padding-block: clamp(36px,6vw,90px) clamp(60px,8vw,120px)}.case-title{font-size: clamp(2.2rem,5.6vw,5.2rem);max-width: 18ch}.case-meta{display: flex;flex-wrap: wrap;gap: 8px 28px;margin-top: 26px;color: var(--muted)}.case-meta b{color: var(--text)}.case-media{margin-top: clamp(28px,4vw,52px);border-radius: 10px;overflow: hidden;border: 1px solid var(--line);background: var(--surface)}.case-media img,.case-media video{width: 100%;max-height: 72vh;object-fit: cover}.case-media.is-square{max-width: 520px}.case-media.case-video{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 16px;aspect-ratio: 16 / 9;background: linear-gradient(135deg,var(--surface-2),var(--surface));text-decoration: none;color: var(--text);transition: transform .35s var(--ease),background-color .3s}.case-media.case-video:hover{transform: scale(1.012);background: linear-gradient(135deg,color-mix(in srgb,var(--primary) 16%,var(--surface-2)),var(--surface))}.cv-play{width: 66px;height: 66px;border-radius: 50%;background: var(--primary);color: var(--on-primary);display: grid;place-items: center;animation: cvPulse 2.4s ease-in-out infinite}.cv-label{font-weight: 700;font-size: .88rem;letter-spacing: .06em;text-transform: uppercase}@keyframes cvPulse{0%,100%{box-shadow: 0 0 0 0 color-mix(in srgb,var(--primary) 45%,transparent)}50%{box-shadow: 0 0 0 16px transparent}}.reveal{opacity: 0;transform: translateY(26px);transition: opacity .7s var(--ease),transform .7s var(--ease)}.reveal.is-visible{opacity: 1;transform: none}.strip-names{overflow: hidden;flex-wrap: nowrap !important;-webkit-mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);animation: marquee 32s linear infinite;width: max-content}.strip-names:hover{animation-play-state: paused}@keyframes marquee{from{transform: translateX(0)}to{transform: translateX(-50%)}}.case-typ{padding: clamp(28px,5vw,64px);background: var(--surface-2)}.case-typ p{font-size: clamp(1.6rem,3.4vw,3rem);font-weight: 700;letter-spacing: -.04em;line-height: 1;max-width: 16ch;text-transform: uppercase}.case-sec{display: grid;grid-template-columns: 220px minmax(0,1fr);gap: 24px;padding-block: clamp(26px,3.4vw,46px);border-top: 1px solid var(--line);margin-top: 0}.case-secs{margin-top: clamp(36px,5vw,72px)}.case-sec h2{font-size: 1rem;font-weight: 700;text-transform: uppercase;letter-spacing: .02em}.case-sec p,.case-sec li{font-size: clamp(1.05rem,1.5vw,1.3rem);line-height: 1.45;max-width: 60ch}.case-sec ul{display: grid;gap: 10px}.case-sec li{padding-left: 18px;position: relative}.case-sec li::before{content: "";position: absolute;left: 0;top: .7em;width: 7px;height: 7px;border-radius: 50%;background: var(--primary)}.case-links{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 36px}.case-light{margin-top: 20px;color: var(--muted);font-size: .95rem}@media (max-width: 1100px){.card--wide,.card--wide-sm,.card--tall,.card--quarter,.card--twothirds{grid-column: span 6}.card--third{grid-column: span 6}.card--quarter,.card--twothirds{align-self: start}.res-row{grid-template-columns: 1fr}}@media (max-width: 900px){.nav-links,.nav-right .btn{display: none}.menu-btn{display: block}.mobile-nav{display: grid;gap: 0;max-height: 0;overflow: hidden;background: var(--bg);border-bottom: 1px solid transparent;transition: max-height .4s var(--ease)}.mobile-nav.is-open{max-height: 420px;border-bottom-color: var(--line)}.mobile-nav a{padding: 18px var(--pad);font-size: 1.5rem;font-weight: 700;letter-spacing: -.03em;text-decoration: none;border-top: 1px solid var(--line)}.hero{min-height: 0;padding-top: 104px}.hero-grid,.about-grid,.proof-grid,.process-grid,.faq-grid,.contact-grid,.res-grid,.flagship{grid-template-columns: 1fr}.stack{justify-self: start;width: min(78%,340px);margin: 12px 0 0 6%}.about-lead .h2,.process-stick{position: static}.process-steps li{min-height: 0;padding-block: 28px;opacity: 1}.p-big{display: none}.p-progress{display: none}.svc-list{grid-template-columns: 1fr}.map{flex-direction: column;height: auto}.cluster,.cluster.is-active{flex: none}.c-head{position: static;padding: 20px;justify-content: flex-start;align-items: center}.c-head span{writing-mode: horizontal-tb;transform: none;font-size: 1.5rem}.cluster.is-active .c-head{opacity: 1;visibility: visible}.c-open{position: static;width: auto;padding: 0 20px;max-height: 0;overflow: hidden;opacity: 1;visibility: visible;transition: max-height .45s var(--ease)}.cluster.is-active .c-open{max-height: 460px;padding-bottom: 24px;transition: max-height .45s var(--ease)}.c-open h3{display: none}.card--feature{flex-direction: column}.bg-row{grid-template-columns: 1fr;gap: 10px}.footer-grid{grid-template-columns: 1fr 1fr}.footer-grid > div:first-child{grid-column: 1 / -1}.case-sec{grid-template-columns: 1fr;gap: 10px}}@media (max-width: 700px){.work-grid{grid-template-columns: 1fr}.work-grid > .card{grid-column: auto !important}.card--slim{border-radius: 26px;flex-direction: column;align-items: flex-start;padding: 24px}.card--tall{min-height: 420px}.svc-list li{grid-template-columns: 1fr;gap: 6px}.about-fig{grid-template-columns: 96px 1fr}.about-fig img{width: 96px;height: 96px}.res-class{grid-template-columns: 96px 1fr}}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{animation-duration: .01ms !important;animation-delay: 0ms !important;transition-duration: .01ms !important}.js .hero:not(.is-ready) .w-in{transform: none}.stack-inner{transform: none !important}.reveal{opacity: 1 !important;transform: none !important;transition: none !important}.strip-names{animation: none !important}.cv-play{animation: none !important}}