:root{
  --background:#ffffff;--foreground:#0F1B2D;--ink:#0A1628;--muted:#8d8d8d;--subtle:#b6b6b6;
  --line:#e6e5e2;--surface:#f1f0ee;--surface-2:#e3e2df;
  --accent:#9B1B1B;--accent-from:#D64545;--accent-mid:#B52828;--accent-to:#6B0F0F;--accent-light:#F0A8A8;
  --hero-from:#ffffff;--hero-to:#ffffff;
  --radius-pill:9999px;--radius-card:2rem;--radius-card-sm:1.25rem;--radius-control:0.875rem;
  --text-watermark:13rem;--container-shell:88rem;
}
*{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%}
html.is-loading{overflow:hidden}
body{background:var(--background);color:var(--foreground);font-family:'Onest',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;overflow-x:hidden;min-width:0}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;touch-action:manipulation}
ul{list-style:none}
img{display:block;max-width:100%}
.sr-only{position:absolute;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(--accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media (max-width:1024px){html{font-size:clamp(14px,1.25vw + 13px,16px)}}
@media (max-width:480px){html{font-size:clamp(14px,3.6vw,15px)}}
.shell{max-width:var(--container-shell);margin-inline:auto}
.icon{display:inline-block;width:1em;height:1em;vertical-align:middle;flex-shrink:0}
.icon svg{display:block;width:100%;height:100%}
.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed;left:1rem;top:1rem;z-index:60;width:auto;height:auto;margin:0;padding:.5rem 1rem;clip:auto;overflow:visible;white-space:normal;border-radius:var(--radius-control);background:var(--ink);font-size:.875rem;color:#fff}

/* Loader */
.loader{position:fixed;inset:0;z-index:120;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;background:#fff;color:var(--foreground);border-radius:0 0 var(--radius-card) var(--radius-card);transform:translateY(0);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.loader.is-exiting{transform:translateY(-100%)}
.loader__inner{display:flex;flex-direction:column;align-items:center;gap:1.25rem;text-align:center;opacity:1;transform:translateY(0);transition:opacity .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1)}
.loader.is-exiting .loader__inner{opacity:0;transform:translateY(-12px)}
.loader__brand{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1.5rem}
@media (min-width:640px){.loader__brand{font-size:1.875rem}}
.loader__tagline{max-width:24ch;font-size:.875rem;color:var(--muted)}
.loader__progress{width:min(22rem,72vw);display:flex;flex-direction:column;gap:.75rem}
.loader__track{height:1px;background:rgba(15,27,45,.12);overflow:hidden}
.loader__fill{height:100%;background:linear-gradient(90deg,var(--accent-from),var(--accent-mid),var(--accent));width:0;transition:width .1s ease-out}
.loader__meta{display:flex;justify-content:space-between;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:rgba(15,27,45,.45)}
.loader__count{color:rgba(15,27,45,.75);font-variant-numeric:tabular-nums}

/* Header */
.header{position:absolute;inset-inline:0;top:0;z-index:50;opacity:0;transform:translateY(-14px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.header.is-ready{opacity:1;transform:translateY(0)}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.625rem 1.25rem;padding-top:max(.625rem,env(safe-area-inset-top,0px));min-height:0}
@media (min-width:640px){.header__inner{padding:.75rem 2rem}}
.header__brand{display:flex;align-items:center;gap:.75rem;font-size:1.125rem;font-weight:600;letter-spacing:-.01em}
.header__brand .brand-logo,.brand-logo--header{width:40px;height:40px;max-width:40px;max-height:40px}
.brand-logo{display:block;flex-shrink:0;width:12rem;height:12rem;object-fit:contain}
.header__nav{display:none}
@media (min-width:1024px){.header__nav{display:flex}}
.header__nav ul{display:flex;gap:20px;font-size:.875rem;font-weight:500}
.header__nav button,.header__nav a,.header__nav-link{display:inline-flex;align-items:center;gap:.375rem;opacity:.8;border-radius:var(--radius-control);padding:.375rem .625rem;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s cubic-bezier(.2,.8,.2,1),color .35s cubic-bezier(.2,.8,.2,1),background .35s cubic-bezier(.2,.8,.2,1);color:inherit}
.header__nav-icon{width:.875rem;height:.875rem;opacity:.55;transition:opacity .35s ease,color .35s ease}
@media (hover:hover){.header__nav button:hover,.header__nav a:hover,.header__nav-link:hover{transform:translateY(-2px);opacity:1;color:#fff;background:var(--ink)}.header__nav-link:hover .header__nav-icon{opacity:1;color:#fff}}
.header__nav .nav-link--active{color:var(--accent)}
.header__nav .nav-link--active .header__nav-icon{opacity:1;color:var(--accent)}
.header__nav .caret{font-size:.75rem;opacity:.6;margin-left:.15rem}
.header__actions{display:flex;align-items:center;gap:.625rem;flex-shrink:0}
.header__cta{display:none}
.header__cta .pill-btn__inner{padding:.5rem 1rem .5rem 1.25rem;font-size:.8125rem;white-space:nowrap}
@media (min-width:1024px){.header__cta{display:inline-block}.header__menu-btn{display:none}}
.header__menu-btn{border:1px solid rgba(230,229,226,.8);background:rgba(255,255,255,.4);backdrop-filter:blur(4px);border-radius:var(--radius-control);transition:background .2s}
.header--site .header__cta{display:none}
@media (min-width:768px){.header--site .header__cta{display:inline-block}}
@media (min-width:1024px){.header--site .header__menu-btn{display:none}}
@media (hover:hover){.header__menu-btn:hover{background:rgba(255,255,255,.7)}}
.header__menu-inner{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.header__menu-btn:hover .header__menu-inner{transform:scale(1.05)}}
.header__menu-text{display:inline}

/* Hero */
.hero{position:relative;isolation:isolate;overflow:hidden;border-radius:0 0 var(--radius-card) var(--radius-card);background:linear-gradient(165deg,#fff 0%,#faf9f7 45%,#f5f3f0 100%)}
.hero__ambient{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero__orb{position:absolute;border-radius:50%;filter:blur(72px);opacity:.55;animation:heroOrbDrift 18s ease-in-out infinite}
.hero__orb--1{width:min(42vw,28rem);height:min(42vw,28rem);top:-8%;right:8%;background:radial-gradient(circle at 30% 30%,rgba(214,69,69,.45),rgba(155,27,27,.12) 70%,transparent)}
.hero__orb--2{width:min(36vw,22rem);height:min(36vw,22rem);bottom:6%;left:42%;background:radial-gradient(circle at 50% 50%,rgba(240,168,168,.55),rgba(214,69,69,.08) 65%,transparent);animation-delay:-9s}
.hero__grain{position:absolute;inset:0;opacity:.35;background-image:radial-gradient(rgba(15,27,45,.08) .75px,transparent .75px);background-size:18px 18px;mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.35) 100%)}
.hero__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.72) 42%,rgba(255,255,255,.18) 68%,transparent 100%)}
@keyframes heroOrbDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-2%,3%) scale(1.06)}}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.hero__grid{position:relative;z-index:20;display:flex;flex-direction:column;gap:2rem;padding:4.75rem 1.25rem 4rem;align-content:start}
@media (min-width:640px){.hero__grid{padding-inline:2rem}}
@media (min-width:1024px){.hero__grid{display:grid;min-height:100lvh;grid-template-columns:repeat(12,1fr);gap:2rem 2.5rem;padding:5.25rem 2rem 5rem;align-items:center}}
.hero__left{display:flex;flex-direction:column;gap:1rem;align-items:flex-start;margin-top:clamp(3.5rem,14vw,5rem)}
@media (min-width:1024px){.hero__left{grid-column:1/span 6;max-width:none;margin-top:0}}
.hero__logo{display:flex;align-items:center;justify-content:center;width:100%;padding:1rem 0}
@media (min-width:1024px){.hero__logo{grid-column:7/-1;justify-content:center;align-self:center;padding:0}}
.hero__logo-img{width:min(72vw,16rem);height:auto;max-width:100%;object-fit:contain;opacity:1;filter:drop-shadow(0 24px 48px rgba(15,27,45,.08))}
html.has-js .hero__logo-img{opacity:0}
html.reveals-fallback .hero__logo-img{opacity:1!important}
@media (min-width:640px){.hero__logo-img{width:min(56vw,18rem)}}
@media (min-width:1024px){.hero__logo-img{width:min(100%,22rem);animation:heroFloat 8s ease-in-out infinite}}
.hero__meta{display:flex;flex-direction:column;align-items:flex-start;gap:.875rem;width:100%;margin-top:.25rem}
.hero__markets{display:inline-flex;align-items:center;gap:.375rem;margin:0;font-size:.875rem;font-weight:500;color:rgba(15,27,45,.72)}
.hero__pin{width:1rem;height:1rem;color:var(--accent);flex-shrink:0}
.hero__ctas{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0;padding:0}
.hero__sub{max-width:36rem;font-size:1rem;line-height:1.65;color:rgba(15,27,45,.68);margin-top:.25rem}
@media (min-width:640px){.hero__sub{font-size:1.0625rem}}
.hero__proof{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.25rem 0 0;padding:0;list-style:none}
.hero__proof li{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;color:rgba(15,27,45,.62)}
.hero__proof .icon{width:.875rem;height:.875rem;color:var(--accent);flex-shrink:0}
.hero__proof--light li{color:rgba(15,27,45,.55)}
.hero__phone{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;color:var(--accent);padding:.5rem 0}
.hero__phone .icon{width:1rem;height:1rem}
@media (hover:hover){.hero__phone:hover{opacity:.75}}
.page-hero__proof{margin-top:1.25rem}
.page-hero__actions{margin-top:1.5rem}
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:rgba(15,27,45,.7)}
.eyebrow__dot{width:.375rem;height:.375rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--accent-from),var(--accent))}
.eyebrow--light{color:rgba(255,255,255,.7)}
.eyebrow--light .eyebrow__dot{background:rgba(255,255,255,.6)}
.eyebrow--pill{border:1px solid var(--line);border-radius:var(--radius-pill);padding:.375rem 1rem}
.hero__h1{max-width:14ch;font-size:2.25rem;font-weight:600;line-height:.98;letter-spacing:-.02em}
@media (min-width:640px){.hero__h1{font-size:3rem;max-width:15ch}}
@media (min-width:768px){.hero__h1{font-size:3.75rem;max-width:16ch}}
.line-reveal{display:block;overflow:hidden}
.line-reveal__inner{display:block;transform:none;opacity:1;transition:transform .9s cubic-bezier(.215,.61,.355,1),opacity .9s cubic-bezier(.215,.61,.355,1)}
html.has-js .line-reveal:not(.is-visible) .line-reveal__inner{transform:translateY(100%);opacity:0}
.line-reveal.is-visible .line-reveal__inner{transform:translateY(0);opacity:1}
.hero__status{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-top:1px solid rgba(15,27,45,.1);padding:1.25rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;color:rgba(15,27,45,.6);background:rgba(255,255,255,.35);backdrop-filter:blur(8px)}
.hero__status-item{display:inline-flex;align-items:center;gap:.375rem}
.hero__status-icon{width:.875rem;height:.875rem;color:var(--accent);opacity:.85;flex-shrink:0}
@media (min-width:640px){.hero__status{padding-inline:2rem}}
.hero__status-center{display:none}
@media (min-width:640px){.hero__status-center{display:block}}
.hero__status-right{display:inline-flex;gap:.5rem;align-items:center}
@media (prefers-reduced-motion:reduce){.hero__orb,.hero__logo-img{animation:none!important}}

/* Pill button */
.pill-btn{display:inline-block}
.pill-btn__inner{display:inline-flex;align-items:center;gap:.75rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:500;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.pill-btn:hover .pill-btn__inner{transform:scale(1.04)}}
.pill-btn--dark .pill-btn__inner{background:var(--ink);color:#fff;padding:.375rem .375rem .375rem 1.5rem}
.pill-btn--light .pill-btn__inner{background:var(--surface);color:var(--foreground);padding:.375rem .375rem .375rem 1.5rem}
.pill-btn--outline .pill-btn__inner{border:1px solid rgba(15,27,45,.28);background:transparent;color:var(--foreground);padding:.375rem .375rem .375rem 1.5rem}
.pill-btn--glass .pill-btn__inner{border:1px solid rgba(15,27,45,.32);background:rgba(255,255,255,.58);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 3px rgba(15,27,45,.08);color:var(--foreground);padding:.375rem .375rem .375rem 1.5rem}
@media (hover:hover){.pill-btn--glass:hover .pill-btn__inner{background:rgba(255,255,255,.72);border-color:rgba(15,27,45,.42)}}
.pill-btn--plain .pill-btn__inner{padding:.875rem 1.75rem}
.pill-btn__badge{width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:var(--radius-pill);font-size:1rem;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.pill-btn--dark .pill-btn__badge{background:#fff;color:var(--ink)}
.pill-btn--light .pill-btn__badge,.pill-btn--outline .pill-btn__badge,.pill-btn--glass .pill-btn__badge{background:var(--ink);color:#fff}
@media (hover:hover){.pill-btn:hover .pill-btn__badge--right{transform:translate(3px,0)}.pill-btn:hover .pill-btn__badge--up{transform:translate(2px,-2px)}}

/* Reveal utility */
.reveal{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
html.has-js .reveal:not(.is-visible){opacity:0;transform:translateY(10px)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.reveal--y12{transform:translateY(12px)}
.reveal--y14{transform:translateY(14px)}
.reveal--y20{transform:translateY(20px)}
.reveal--y24{transform:translateY(24px)}
.reveal--y28{transform:translateY(28px)}
.reveal--y40{transform:translateY(40px) scale(.99)}
.reveal--y48{transform:translateY(48px)}
.reveal.is-visible.reveal--y40{transform:translateY(0) scale(1)}

/* About */
.about{background:#fff}
.about__shell{display:grid;grid-template-columns:1fr;align-items:center;gap:3rem;padding:5rem 1.25rem}
@media (min-width:640px){.about__shell{padding-inline:2rem}}
@media (min-width:1024px){.about__shell{grid-template-columns:1fr 1fr;padding-block:7rem}}
.about__globe-block{position:relative;min-height:14rem}
@media (min-width:640px){.about__globe-block{min-height:16rem}}
@media (min-width:1024px){.about__globe-block{min-height:20rem}}
.about__globe-bg{position:absolute;left:-1rem;top:50%;width:12rem;height:auto;transform:translateY(-50%);opacity:.14;pointer-events:none;object-fit:contain}
@media (min-width:640px){.about__globe-bg{width:16rem;opacity:.12}}
@media (min-width:1024px){.about__globe-bg{left:-1.5rem;width:20rem;opacity:.1}}
.about__globe-note{position:relative;display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:rgba(15,27,45,.7);margin-top:8rem}
.about__globe-note-icon,.about__globe-note-logo{width:1.125rem;height:1.125rem;flex-shrink:0;color:var(--accent)}
.about__globe-note span{max-width:14rem}
.about__statement{display:flex;flex-direction:column;gap:2.5rem}
.about__h2{font-size:1.5rem;font-weight:500;line-height:1.35;letter-spacing:-.01em}
@media (min-width:640px){.about__h2{font-size:1.875rem}}
.about__h2 .word-reveal__w{color:rgb(141,141,141)}
.word-reveal__letter{display:inline-block;color:rgb(141,141,141)}
.word-reveal{display:inline}
.word-reveal__w{display:inline-block;transform:none;opacity:1;transition:transform .7s cubic-bezier(.165,.84,.44,1),opacity .7s cubic-bezier(.165,.84,.44,1)}
html.has-js .word-reveal:not(.is-visible) .word-reveal__w{transform:translateY(24px);opacity:0}
.word-reveal.is-visible .word-reveal__w{transform:translateY(0);opacity:1}
.about__footer-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem;border-top:1px solid var(--line);padding-top:1.5rem}
.about__social-label{font-size:.875rem;color:rgba(15,27,45,.45);margin-bottom:.5rem}
.about__social{display:flex;gap:.5rem}
.social-chip{width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:var(--radius-pill);font-size:.875rem;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.social-chip:hover{transform:scale(1.18)}}
.social-chip--accent{background:linear-gradient(135deg,var(--accent-from),var(--accent-mid),var(--accent));color:#fff}
.social-chip--muted{background:var(--surface);color:rgba(15,27,45,.7)}

/* Client logo marquee */
.logo-marquee{background:#fff;padding:3rem 0;overflow:hidden}
.logo-marquee__head{text-align:center;margin-bottom:1.5rem;padding-inline:1.25rem}
.logo-marquee__lead{max-width:42rem;margin:.5rem auto 0;font-size:.9375rem;line-height:1.55;color:rgba(15,27,45,.6)}
.logo-marquee__viewport{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%)}
.logo-marquee__track{display:flex;flex-direction:row;flex-wrap:nowrap;width:max-content;will-change:transform;animation:logo-marquee-left 28s linear infinite}
.logo-marquee__strip{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:clamp(3rem,7vw,6rem);padding-inline:clamp(1.5rem,4vw,3rem);flex:0 0 auto}
.logo-marquee__logo{display:flex;align-items:center;justify-content:center;flex:0 0 auto;height:2.5rem;opacity:.55;transition:opacity .2s ease}
@media (hover:hover){.logo-marquee__logo:hover{opacity:1}}
.logo-marquee__logo img{display:block;height:2rem;width:auto;max-width:9rem;object-fit:contain}
@keyframes logo-marquee-left{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}
@media (prefers-reduced-motion:reduce){.logo-marquee__track{animation-duration:60s}}

/* Portfolio */
.portfolio{background:#fff}
.portfolio__shell{padding:2.5rem 1.25rem 5rem}
@media (min-width:640px){.portfolio__shell{padding-inline:2rem}}
@media (min-width:1024px){.portfolio__shell{padding-bottom:7rem}}
.portfolio__header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem;position:relative;z-index:2}
.portfolio__h2{font-size:2.25rem;font-weight:600;letter-spacing:-.02em;width:fit-content}
.portfolio__lead{max-width:36rem;margin:.75rem auto 0;font-size:.9375rem;line-height:1.6;color:rgba(15,27,45,.6);text-align:center}
.portfolio__header .pill-btn{margin-top:1rem}
@media (min-width:640px){.portfolio__h2{font-size:3rem}}
.sticky-cards{position:relative;display:flex;height:100vh;width:100%;align-items:center;justify-content:center;overflow:hidden;padding:.5rem}
@media (min-width:1024px){.sticky-cards{padding:1.25rem}}
.sticky-cards__frame{position:relative;height:min(44rem,92vh);width:100%;max-width:30rem;overflow:hidden;border-radius:var(--radius-card)}
@media (min-width:640px){.sticky-cards__frame{max-width:35rem}}
@media (min-width:768px){.sticky-cards__frame{max-width:40rem}}
@media (min-width:1024px){.sticky-cards__frame{max-width:46rem}}
@media (min-width:1280px){.sticky-cards__frame{max-width:54rem}}
@media (min-width:1536px){.sticky-cards__frame{max-width:62rem}}
.portfolio-card{position:relative;min-height:22rem;overflow:hidden;border-radius:var(--radius-card);background:var(--ink);padding:1.5rem;color:#fff;outline:1px solid rgba(255,255,255,.05);display:block;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media (min-width:640px){.portfolio-card{min-height:26rem;padding:2rem}}
@media (hover:hover){.portfolio-card:not(.sticky-card):hover{transform:translateY(-8px) scale(1.012)}}
.portfolio-card.sticky-card{position:absolute;inset:0;width:100%;height:100%;min-height:100%;transition:none;will-change:transform}
.portfolio-card.sticky-card:hover{transform:none}
.sticky-card__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;opacity:.5;pointer-events:none}
.portfolio-card__content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column}
.portfolio-card__meta{display:flex;justify-content:space-between;font-size:.75rem;text-transform:uppercase;letter-spacing:.025em;color:rgba(255,255,255,.45)}
.portfolio-card__badge{width:2.75rem;height:2.75rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:rgba(255,255,255,.1);outline:1px solid rgba(255,255,255,.15);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.portfolio-card:hover .portfolio-card__badge{transform:rotate(45deg) scale(1.08)}}
.portfolio-card__wm{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:5.5rem;color:rgba(255,255,255,.9)}
@media (min-width:640px){.portfolio-card.sticky-card .portfolio-card__wm{font-size:6.5rem}}
.portfolio-card__wm-reg{font-size:.75rem;color:rgba(255,255,255,.6);vertical-align:super}
.portfolio-card__bottom{position:absolute;inset-inline:1.5rem;bottom:1.5rem}
@media (min-width:640px){.portfolio-card__bottom{inset-inline:2rem;bottom:2rem}}
@media (min-width:1024px){.portfolio-card.sticky-card .portfolio-card__bottom{inset-inline:2.5rem;bottom:2.5rem}}
.portfolio-card__name{font-size:1.5rem;font-weight:500;letter-spacing:-.01em}
@media (min-width:640px){.portfolio-card__name{font-size:1.875rem}}
@media (min-width:1024px){.portfolio-card.sticky-card .portfolio-card__name{font-size:2.25rem}}
.portfolio-card__desc{margin-top:.5rem;max-width:28rem;font-size:.875rem;color:rgba(255,255,255,.55)}
@media (min-width:1024px){.portfolio-card.sticky-card .portfolio-card__desc{font-size:1rem;max-width:36rem}}
.portfolio-card__tags{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.5rem}
.tag-chip{display:inline-flex;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:var(--radius-pill);padding:.5rem 1rem;font-size:.875rem}

/* Services */
.services{background:#fff}
.services__shell{padding:5rem 1.25rem}
@media (min-width:640px){.services__shell{padding-inline:2rem}}
@media (min-width:1024px){.services__shell{padding-block:7rem}}
.services__h2{margin:1.25rem 0 3rem;max-width:16ch;font-size:2.25rem;font-weight:600;letter-spacing:-.02em}
@media (min-width:640px){.services__h2{margin-bottom:3.5rem;font-size:3rem}}
.service-row{display:flex;flex-direction:column;align-items:stretch;gap:0;border-radius:var(--radius-card-sm);padding-block:1.5rem;padding-inline:1.5rem;overflow:hidden;transition:background .35s cubic-bezier(.2,.8,.2,1),padding .35s cubic-bezier(.2,.8,.2,1)}
@media (min-width:640px){.service-row{padding-block:2rem}}
@media (hover:hover){.service-row:hover{background:rgba(241,240,238,1);padding-left:2rem;padding-right:1.25rem}}
.services__list li{border-top:1px solid var(--line)}
.services__list li:first-child{border-top:none}
.service-row__main{display:flex;align-items:center;gap:1rem;width:100%}
.service-row__icon{width:2.75rem;height:2.75rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:linear-gradient(135deg,rgba(214,69,69,.12),rgba(155,27,27,.08));color:var(--accent);flex-shrink:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .35s ease}
.service-row__icon .icon{width:1.125rem;height:1.125rem}
@media (hover:hover){.service-row:hover .service-row__icon{transform:scale(1.06);background:linear-gradient(135deg,rgba(214,69,69,.18),rgba(155,27,27,.12))}}
@media (min-width:640px){.service-row__main{gap:1.5rem}}
.service-row__media{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.22,1,.36,1),margin-top .55s cubic-bezier(.22,1,.36,1);margin-top:0}
@media (hover:hover){.service-row:hover .service-row__media{grid-template-rows:1fr;margin-top:1.25rem}}
.service-row__media-inner{overflow:hidden;border-radius:var(--radius-control)}
.service-row__media img{display:block;width:100%;height:clamp(10rem,28vw,16rem);object-fit:cover;border-radius:var(--radius-control);opacity:0;transform:scale(1.04);transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1)}
@media (hover:hover){.service-row:hover .service-row__media img{opacity:1;transform:scale(1)}}
.service-row:focus-within .service-row__media{grid-template-rows:1fr;margin-top:1.25rem}
.service-row:focus-within .service-row__media img{opacity:1;transform:scale(1)}
.service-row__idx{width:1.75rem;font-size:.875rem;font-weight:500;color:rgba(15,27,45,.4);flex-shrink:0}
@media (min-width:640px){.service-row__idx{width:2.5rem}}
.service-row__title{flex:1;font-size:1.5rem;font-weight:500;letter-spacing:-.01em}
@media (min-width:640px){.service-row__title{font-size:1.875rem}}
@media (min-width:768px){.service-row__title{font-size:2.25rem}}
.service-row__desc{display:none;max-width:20rem;font-size:.875rem;color:rgba(15,27,45,.55)}
@media (min-width:1024px){.service-row__desc{display:block}}
.service-row__badge{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--ink);color:#fff;flex-shrink:0;transition:transform .55s cubic-bezier(.22,1,.36,1),background .35s ease}
@media (min-width:640px){.service-row__badge{width:3rem;height:3rem}}
.service-row__badge .icon{display:block;width:1rem;height:1rem;transform-origin:50% 50%;transition:transform .55s cubic-bezier(.22,1,.36,1)}
@media (min-width:640px){.service-row__badge .icon{width:1.125rem;height:1.125rem}}
@media (hover:hover){
  .service-row:hover .service-row__badge{transform:translate(4px,-4px) scale(1.06);background:linear-gradient(135deg,var(--accent-from),var(--accent-mid),var(--accent))}
  .service-row:hover .service-row__badge .icon{transform:rotate(45deg)}
}
.service-row:focus-within .service-row__badge{transform:translate(4px,-4px) scale(1.06);background:linear-gradient(135deg,var(--accent-from),var(--accent-mid),var(--accent))}
.service-row:focus-within .service-row__badge .icon{transform:rotate(45deg)}
@media (prefers-reduced-motion:reduce){
  .service-row__badge .icon{transition:none}
  .service-row:hover .service-row__badge,.service-row:focus-within .service-row__badge{transform:none;background:var(--ink)}
  .service-row:hover .service-row__badge .icon,.service-row:focus-within .service-row__badge .icon{transform:none}
}

/* Stats */
.stats-wrap{background:#fff;padding:0 1.25rem 5rem}
@media (min-width:640px){.stats-wrap{padding-inline:2rem}}
@media (min-width:1024px){.stats-wrap{padding-bottom:7rem}}
.stats-panel{border-radius:var(--radius-card);background:var(--ink);padding:3rem 1.5rem;color:#fff}
@media (min-width:640px){.stats-panel{padding:4rem 2rem}}
@media (min-width:768px){.stats-panel{padding-inline:4rem}}
.stats-panel__h2{margin-top:1rem;max-width:20ch;font-size:1.875rem;font-weight:500;letter-spacing:-.01em}
@media (min-width:768px){.stats-panel__h2{font-size:2.25rem}}
.stats-grid{margin-top:3.5rem;display:grid;grid-template-columns:repeat(2,1fr);column-gap:2rem;row-gap:3rem}
@media (min-width:1024px){.stats-grid{grid-template-columns:repeat(4,1fr)}}
.stat{display:flex;flex-direction:column;gap:.75rem}
.stat__icon{width:1.25rem;height:1.25rem;color:var(--accent-light);opacity:.9}
.stat__num{font-size:3rem;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
@media (min-width:640px){.stat__num{font-size:3.75rem}}
@media (min-width:768px){.stat__num{font-size:4.5rem}}
.stat__label{margin-top:.75rem;font-size:.875rem;color:rgba(255,255,255,.55)}

/* Footer */
.site-footer{position:relative;overflow:hidden;border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--ink);color:#fff}
.site-footer__inner{position:relative;z-index:10;padding:5rem 1.25rem 2.5rem}
@media (min-width:640px){.site-footer__inner{padding-inline:2rem}}
@media (min-width:1024px){.site-footer__inner{padding-top:6rem}}
.footer-cta{display:flex;flex-direction:column;gap:2rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:4rem}
@media (min-width:1024px){.footer-cta{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.footer-cta__desc{margin-top:.75rem;font-size:.875rem;color:rgba(255,255,255,.55)}
.footer-cta__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.footer-cta__call .pill-btn__inner{border-color:rgba(255,255,255,.25);color:#fff;background:transparent}
@media (hover:hover){.footer-cta__call:hover .pill-btn__inner{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.4)}}
.footer-cta__h2{max-width:16ch;font-size:2.25rem;font-weight:600;letter-spacing:-.02em}
@media (min-width:640px){.footer-cta__h2{font-size:3rem}}
@media (min-width:768px){.footer-cta__h2{font-size:3.75rem}}
.footer-cols{display:grid;grid-template-columns:1fr;gap:3rem;padding-block:4rem}
@media (min-width:768px){.footer-cols{grid-template-columns:1fr 1fr}}
@media (min-width:1024px){.footer-cols{grid-template-columns:repeat(4,1fr)}}
.footer-col__title{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.025em;color:rgba(255,255,255,.4);margin-bottom:1rem}
.footer-col__icon{width:.875rem;height:.875rem;color:var(--accent-light);opacity:.75}
.footer-col ul{display:flex;flex-direction:column;gap:.5rem}
.footer-col a{font-size:.875rem;opacity:.65;display:inline-flex;align-items:center;gap:.5rem;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s cubic-bezier(.2,.8,.2,1),color .35s ease}
.icon-link{width:1rem;height:1rem;flex-shrink:0;color:var(--accent-light);opacity:.85;transition:transform .35s ease,color .35s ease}
@media (hover:hover){.footer-col a:hover{transform:translateX(4px);opacity:1;color:#fff}.footer-col a:hover .icon-link{color:#fff;opacity:1}}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;font-size:1.125rem;font-weight:600;margin:0 0 .75rem}
.footer-brand .brand-logo--footer{width:min(11rem,68vw);height:auto;max-width:100%;aspect-ratio:4/3;object-fit:contain}
@media (min-width:640px){.footer-brand .brand-logo--footer{width:14rem}}
@media (min-width:1024px){.footer-brand .brand-logo--footer{width:18rem}}
@media (min-width:1280px){.footer-brand .brand-logo--footer{width:22rem}}
.footer-brand__tagline{max-width:20rem;font-size:.875rem;color:rgba(255,255,255,.55);line-height:1.5}
.footer-legal{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;font-size:.75rem;color:rgba(255,255,255,.45)}
@media (min-width:640px){.footer-legal{flex-direction:row}}
.footer-legal__links{display:flex;gap:1.5rem}
.footer-legal__links a{opacity:.7;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.footer-legal__links a:hover{transform:translateX(3px);opacity:1}}

/* Nav menu */
.nav-menu{position:fixed;inset:0;z-index:115;display:flex;flex-direction:column;background:var(--ink);color:#fff;opacity:0;pointer-events:none;transition:opacity .5s cubic-bezier(.22,1,.36,1);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.nav-menu.is-open{opacity:1;pointer-events:auto}
.nav-menu__top{display:flex;align-items:center;justify-content:space-between;padding:1.25rem}
@media (min-width:640px){.nav-menu__top{padding:1.5rem 2rem}}
.nav-menu__brand{display:flex;align-items:center;gap:.75rem;font-size:1.125rem;font-weight:600}
.nav-menu__close{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-control);padding:.5rem 1rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.7);transition:border-color .2s,color .2s}
@media (hover:hover){.nav-menu__close:hover{border-color:rgba(255,255,255,.4);color:#fff}}
.nav-menu__nav{flex:1;display:flex;flex-direction:column;justify-content:center;padding-inline:1.25rem}
@media (min-width:640px){.nav-menu__nav{padding-inline:2rem}}
.nav-menu__nav ul{display:flex;flex-direction:column;gap:.25rem}
.nav-menu__link{display:flex;gap:1rem;align-items:center;padding-block:.5rem;text-align:left;font-size:2.25rem;font-weight:600;letter-spacing:-.02em;width:100%;opacity:0;transform:translateY(1rem);transition:all .5s ease-out,color .3s}
.nav-menu__icon{width:1.5rem;height:1.5rem;color:var(--accent-light);opacity:.75;flex-shrink:0}
@media (min-width:640px){.nav-menu__link{font-size:3.75rem}}
.nav-menu.is-open .nav-menu__link{opacity:1;transform:translateY(0)}
.nav-menu__idx{font-size:1rem;font-weight:400;color:rgba(255,255,255,.3);transition:color .3s}
.nav-menu__label{color:rgba(255,255,255,.7);transition:color .3s}
@media (hover:hover){.nav-menu__link:hover .nav-menu__idx{color:var(--accent-from)}.nav-menu__link:hover .nav-menu__label{color:#fff}}
.nav-menu__bottom{display:flex;flex-direction:column;gap:.75rem;border-top:1px solid rgba(255,255,255,.1);padding:1.5rem 1.25rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.025em;color:rgba(255,255,255,.45)}
@media (min-width:640px){.nav-menu__bottom{flex-direction:row;justify-content:space-between;align-items:center;padding-inline:2rem}}
.nav-menu__project{color:rgba(255,255,255,.7);transition:color .2s}
@media (hover:hover){.nav-menu__project:hover{color:#fff;text-decoration:underline}}

/* Modal */
.modal{position:fixed;inset:0;z-index:110;display:flex;align-items:flex-end;justify-content:center;padding:1rem;background:rgba(15,27,45,.3);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transition:opacity .5s cubic-bezier(.22,1,.36,1)}
@media (min-width:640px){.modal{align-items:center}}
.modal.is-open{opacity:1;pointer-events:auto}
.modal__panel{position:relative;width:100%;max-width:32rem;overflow:hidden;border-radius:var(--radius-card);background:#fff;padding:1.5rem;outline:1px solid var(--line);transform:translateY(28px);opacity:0;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .5s cubic-bezier(.22,1,.36,1)}
@media (min-width:640px){.modal__panel{padding:2rem}}
.modal.is-open .modal__panel{transform:translateY(0);opacity:1}
.modal.is-closing .modal__panel{transform:translateY(18px);opacity:0}
.modal__close{position:absolute;right:1rem;top:1rem;width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--surface);color:rgba(15,27,45,.6);transition:background .2s,color .2s}
@media (hover:hover){.modal__close:hover{background:var(--surface-2);color:var(--foreground)}}
.modal__heading{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.375rem}
.modal__eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:rgba(15,27,45,.6)}
.modal__eyebrow-dot{width:.375rem;height:.375rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--accent-from),var(--accent))}
.modal__h2{font-size:1.5rem;font-weight:600;letter-spacing:-.01em}
.modal__sub{margin-top:.35rem;font-size:.875rem;line-height:1.5;color:rgba(15,27,45,.6)}
@media (min-width:640px){.modal__h2{font-size:1.875rem}}
.modal__form{display:flex;flex-direction:column;gap:1rem}
.modal__field label{display:flex;flex-direction:column;gap:.375rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;color:rgba(15,27,45,.5)}
.modal__field input,.modal__field textarea,.modal__field select{width:100%;border:1px solid var(--line);background:rgba(241,240,238,.5);border-radius:var(--radius-control);padding:.75rem 1rem;font-size:.875rem;font-family:inherit;outline:none;transition:border-color .2s,background .2s;resize:none}
.modal__field input:focus,.modal__field textarea:focus,.modal__field select:focus{border-color:rgba(15,27,45,.3);background:#fff}
.modal__footer{margin-top:.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.modal__note{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:rgba(15,27,45,.45)}
.modal__note .icon{width:.875rem;height:.875rem;color:var(--accent);flex-shrink:0}
.modal__success{display:none;flex-direction:column;align-items:center;text-align:center;padding-block:2rem;gap:1rem}
.modal__success.is-show{display:flex}
.modal__success-badge{width:3.5rem;height:3.5rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--ink);color:var(--accent-from);font-size:1.5rem}
.modal__success-text{max-width:32ch;font-size:.875rem;color:rgba(15,27,45,.6)}
.modal__form.is-hide{display:none}
.section-center{text-align:center;display:flex;flex-direction:column;align-items:center}
/* Inner pages */
.header--site{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);opacity:1!important;transform:none!important}
.header--site .header__inner{padding-block:.625rem}
.nav-link--active{opacity:1!important;font-weight:600}
.page-hero{padding:7rem 1.25rem 3.5rem;background:linear-gradient(180deg,var(--surface) 0%,#fff 100%)}
@media (min-width:640px){.page-hero{padding-inline:2rem}}
.page-hero--dark{background:var(--ink);color:#fff}
.page-hero--dark .page-hero__desc{color:rgba(255,255,255,.55)}
.page-hero--dark .breadcrumb,.page-hero--dark .breadcrumb a{color:rgba(255,255,255,.45)}
.breadcrumb{font-size:.875rem;color:rgba(15,27,45,.45);margin-bottom:1rem}
.breadcrumb a{color:rgba(15,27,45,.55)}
.page-hero__eyebrow{margin-bottom:.75rem}
.page-hero__title{font-size:clamp(2rem,4.5vw,3.75rem);font-weight:600;letter-spacing:-.02em;line-height:1.02;max-width:18ch}
.page-hero__desc{margin-top:1.25rem;max-width:42rem;font-size:1rem;line-height:1.6;color:rgba(15,27,45,.65)}
@media (min-width:640px){.page-hero__desc{font-size:1.125rem}}
.page-section{padding:4rem 1.25rem}
@media (min-width:640px){.page-section{padding-inline:2rem}}
.page-section--tight{padding-block:2.5rem}
.page-section--surface{background:var(--surface)}
.page-section__title{font-size:1.875rem;font-weight:600;letter-spacing:-.02em;margin-bottom:2rem;max-width:20ch}
.content-grid{display:grid;gap:1.5rem}
@media (min-width:768px){.content-grid--2{grid-template-columns:1fr 1fr}.content-grid--3{grid-template-columns:repeat(3,1fr)}}
.prose{max-width:68ch;line-height:1.75;color:rgba(15,27,45,.72);font-size:1rem}
.prose h2{font-size:1.375rem;font-weight:600;margin:2.5rem 0 1rem;color:var(--foreground);letter-spacing:-.01em}
.prose h3{font-size:1.125rem;font-weight:600;margin:1.75rem 0 .75rem}
.prose p,.prose li{margin-bottom:.875rem}
.prose ul{padding-left:1.25rem;list-style:disc}
.info-card{padding:1.75rem;border-radius:var(--radius-card-sm);background:#fff;border:1px solid var(--line)}
.info-card h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;letter-spacing:-.01em}
.info-card p{font-size:.875rem;line-height:1.55;color:rgba(15,27,45,.6)}
.info-card--dark{background:var(--ink);color:#fff;border:none}
.info-card--dark p{color:rgba(255,255,255,.55)}
.card-link{display:block;padding:2rem;border-radius:var(--radius-card);background:var(--ink);color:#fff;min-height:18rem;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.card-link:hover{transform:translateY(-6px)}}
.card-link img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.card-link__content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end}
.card-link__meta{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.45);margin-bottom:.5rem}
.card-link__title{font-size:1.5rem;font-weight:500;letter-spacing:-.01em}
.page-section--work-showcase{padding-top:0}
.work-showcase__lead{max-width:42rem;font-size:1rem;line-height:1.6;color:rgba(15,27,45,.62);margin-bottom:3rem}
.work-showcase{display:flex;flex-direction:column;gap:clamp(3rem,6vw,5rem)}
.work-ui-card{display:grid;gap:1.75rem;align-items:center}
@media (min-width:1024px){
  .work-ui-card{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:2.5rem}
  .work-ui-card:nth-child(even){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
  .work-ui-card:nth-child(even) .work-ui-card__frame{order:2}
  .work-ui-card:nth-child(even) .work-ui-card__body{order:1}
}
.work-ui-card--featured .work-ui-card__frame{box-shadow:0 24px 64px rgba(15,27,45,.14)}
.work-ui-card__frame{border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;background:#fff;box-shadow:0 16px 48px rgba(15,27,45,.1);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.work-ui-card__frame:hover{transform:translateY(-4px);box-shadow:0 20px 56px rgba(15,27,45,.14)}}
.work-ui-card__chrome{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff 0%,var(--surface) 100%)}
.work-ui-card__dot{width:.5rem;height:.5rem;border-radius:50%;background:rgba(15,27,45,.14)}
.work-ui-card__dot:first-child{background:#ff5f57}
.work-ui-card__dot:nth-child(2){background:#febc2e}
.work-ui-card__dot:nth-child(3){background:#28c840}
.work-ui-card__url{flex:1;font-size:.6875rem;color:rgba(15,27,45,.45);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:.25rem}
.work-ui-card__badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.25rem .625rem;border-radius:var(--radius-pill);white-space:nowrap}
.work-ui-card__badge--demo{background:rgba(155,27,27,.1);color:var(--accent)}
.work-ui-card__badge--live{background:rgba(15,27,45,.08);color:var(--foreground)}
.work-ui-card__badge--preview{background:rgba(15,27,45,.06);color:rgba(15,27,45,.55)}
.work-ui-card__shot{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--surface)}
.work-ui-card__shot img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.work-ui-card__shot:hover img{transform:scale(1.02)}}
.work-ui-card__body{display:flex;flex-direction:column;gap:.75rem}
.work-ui-card__meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(15,27,45,.45)}
.work-ui-card__stack{text-transform:none;letter-spacing:0;font-size:.8125rem;color:rgba(15,27,45,.55)}
.work-ui-card__title{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.work-ui-card__title a{color:inherit;text-decoration:none}
@media (hover:hover){.work-ui-card__title a:hover{color:var(--accent)}}
.work-ui-card__desc{font-size:.9375rem;line-height:1.6;color:rgba(15,27,45,.62);max-width:36rem}
.work-ui-card__tags{margin-top:.25rem}
.work-ui-card__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}
.pill-btn--sm .pill-btn__inner{font-size:.8125rem;padding:.25rem .25rem .25rem 1.125rem}
.pill-btn--sm .pill-btn__badge{width:1.875rem;height:1.875rem;font-size:.875rem}
.job-list{border-top:1px solid var(--line)}
.job-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1.75rem 0;border-bottom:1px solid var(--line)}
.job-item h3{font-size:1.25rem;font-weight:600;letter-spacing:-.01em}
.job-item p{font-size:.875rem;color:rgba(15,27,45,.55);margin-top:.25rem}
.job-item__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}
.job-tag{font-size:.75rem;padding:.25rem .75rem;border-radius:var(--radius-pill);background:var(--surface);color:rgba(15,27,45,.65)}
.case-hero-img{width:100%;border-radius:var(--radius-card);aspect-ratio:16/9;object-fit:cover}
.project-demo{border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;background:#fff;box-shadow:0 12px 40px rgba(15,27,45,.08)}
.project-demo__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff 0%,var(--surface) 100%)}
.project-demo__actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.project-demo__label{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--foreground)}
.project-demo__label-icon{width:1rem;height:1rem;color:var(--accent)}
.project-demo__stack{margin-top:.25rem;font-size:.8125rem;color:rgba(15,27,45,.55)}
.project-demo__note{padding:.75rem 1.25rem;font-size:.8125rem;color:rgba(15,27,45,.6);background:rgba(155,27,27,.04);border-bottom:1px solid var(--line)}
.project-demo__frame{display:block;width:100%;height:min(52dvh,24rem);border:0;background:#f8f8f8}
@media (min-width:640px){.project-demo__frame{height:min(60dvh,36rem)}}
@media (min-width:768px){.project-demo__frame{height:min(78vh,48rem)}}
.project-dfd{border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-card);overflow:hidden;background:var(--ink);box-shadow:0 16px 48px rgba(15,27,45,.18)}
.project-dfd__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,transparent 100%)}
.project-dfd__label{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff}
.project-dfd__label-icon{width:1rem;height:1rem;color:var(--accent-light)}
.project-dfd__stack{margin-top:.25rem;font-size:.8125rem;color:rgba(255,255,255,.55)}
.project-dfd__actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.project-dfd .pill-btn--glass .pill-btn__inner{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff}
@media (hover:hover){.project-dfd .pill-btn--glass:hover .pill-btn__inner{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35)}}
.project-dfd__link{display:block;transition:opacity .25s ease}
@media (hover:hover){.project-dfd__link:hover{opacity:.92}}
.project-dfd__diagram{display:block;width:100%;height:auto;vertical-align:top}
.case-meta{display:flex;flex-wrap:wrap;gap:1.5rem;margin:1.5rem 0 2.5rem;font-size:.875rem;color:rgba(15,27,45,.55)}
.case-meta strong{color:var(--foreground);font-weight:500}
.gallery{display:grid;gap:1rem;margin-top:2rem}
@media (min-width:768px){.gallery{grid-template-columns:1fr 1fr}}
.gallery img{width:100%;border-radius:var(--radius-card-sm);aspect-ratio:4/3;object-fit:cover}
.split-section{display:grid;gap:2.5rem;align-items:center}
@media (min-width:1024px){.split-section{grid-template-columns:1fr 1fr}}
.split-section img{width:100%;border-radius:var(--radius-card);aspect-ratio:4/3;object-fit:cover}
.partner-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media (min-width:768px){.partner-grid{grid-template-columns:repeat(4,1fr)}}
.partner-tile{aspect-ratio:1.5;border-radius:var(--radius-card-sm);background:#fff;border:1px solid var(--line);display:grid;place-items:center;padding:1.25rem;font-size:.875rem;font-weight:500;color:rgba(15,27,45,.55);text-align:center}
.contact-layout{display:grid;gap:3rem}
@media (min-width:1024px){.contact-layout{grid-template-columns:1fr 1.1fr}}
.contact-cards{display:flex;flex-direction:column;gap:1rem}
.contact-cards h2{font-size:1.5rem;font-weight:600;letter-spacing:-.01em}
.contact-cards__intro{margin-bottom:.5rem;color:rgba(15,27,45,.65);line-height:1.6}
.contact-card{display:flex;gap:1rem;align-items:flex-start;padding:1rem 1.125rem;border:1px solid var(--line);border-radius:var(--radius-card-sm);background:#fff;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
@media (hover:hover){.contact-card:hover{border-color:rgba(155,27,27,.25);box-shadow:0 8px 24px rgba(15,27,45,.06);transform:translateY(-2px)}}
.contact-card__icon{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:linear-gradient(135deg,rgba(214,69,69,.12),rgba(155,27,27,.08));color:var(--accent);flex-shrink:0}
.contact-card__icon .icon{width:1.125rem;height:1.125rem}
.contact-card__body h3{font-size:.875rem;font-weight:600;margin-bottom:.25rem}
.contact-card__body p{font-size:.875rem;color:rgba(15,27,45,.65);line-height:1.55}
.contact-card__body a{color:var(--accent);transition:opacity .2s}
@media (hover:hover){.contact-card__body a:hover{opacity:.75}}
.form-stack{display:flex;flex-direction:column;gap:1rem}
.form-field label{display:flex;flex-direction:column;gap:.375rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;color:rgba(15,27,45,.5)}
.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid var(--line);background:rgba(241,240,238,.5);border-radius:var(--radius-control);padding:.75rem 1rem;font-size:.875rem;font-family:inherit;outline:none;transition:border-color .2s,background .2s}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:rgba(15,27,45,.3);background:#fff}
.cta-band{margin:0 1.25rem 4rem;padding:3rem 1.5rem;border-radius:var(--radius-card);background:var(--ink);color:#fff;text-align:center}
@media (min-width:640px){.cta-band{margin-inline:2rem;padding:4rem 2rem}}
.cta-band h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;letter-spacing:-.02em;max-width:20ch;margin-inline:auto}
.cta-band p{margin:1rem auto 1.5rem;max-width:36ch;color:rgba(255,255,255,.55);font-size:.875rem}
.convert-band{margin:0 1.25rem 4rem;padding:3rem 1.5rem;border-radius:var(--radius-card);background:linear-gradient(135deg,var(--ink) 0%,#152238 100%);color:#fff;text-align:center;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 60px rgba(15,27,45,.15)}
@media (min-width:640px){.convert-band{margin-inline:2rem;padding:4rem 2.5rem}}
.convert-band__title{font-size:clamp(1.65rem,3.5vw,2.35rem);font-weight:600;letter-spacing:-.02em;max-width:22ch;margin-inline:auto;line-height:1.08}
.convert-band__desc{margin:1rem auto 0;max-width:42ch;color:rgba(255,255,255,.58);font-size:.9375rem;line-height:1.6}
.convert-band__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}
.convert-band__phone .pill-btn__inner{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.06)}
.convert-band__note{display:inline-flex;align-items:center;gap:.375rem;margin-top:1rem;font-size:.75rem;color:rgba(255,255,255,.45)}
.convert-band__note .icon{width:.875rem;height:.875rem;color:var(--accent-light)}
.testimonials{background:var(--surface);padding:5rem 0}
.testimonials__h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;letter-spacing:-.02em;max-width:18ch;margin-bottom:2.5rem}
.testimonials__grid{display:grid;gap:1.25rem}
@media (min-width:768px){.testimonials__grid{grid-template-columns:repeat(3,1fr)}}
.testimonial{margin:0;padding:1.75rem;border-radius:var(--radius-card-sm);background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:1.25rem;height:100%}
.testimonial__quote{font-size:.9375rem;line-height:1.65;color:rgba(15,27,45,.72);flex:1}
.testimonial__foot{display:flex;flex-direction:column;gap:.2rem;font-size:.8125rem;color:rgba(15,27,45,.5)}
.testimonial__foot strong{color:var(--foreground);font-weight:600;font-size:.875rem}
.testimonial__project{display:inline-block;margin-top:.35rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.home-process{padding:5rem 0;background:#fff}
.home-process__h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;letter-spacing:-.02em;max-width:20ch;margin-bottom:2.5rem}
.home-process__grid{display:grid;gap:1.25rem}
@media (min-width:768px){.home-process__grid{grid-template-columns:repeat(3,1fr)}}
.home-process__step{padding:1.75rem;border-radius:var(--radius-card-sm);background:var(--surface);border:1px solid var(--line);height:100%}
.home-process__num{display:inline-block;font-size:.75rem;font-weight:700;color:var(--accent);letter-spacing:.08em;margin-bottom:.75rem}
.home-process__step h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;letter-spacing:-.01em}
.home-process__step p{font-size:.875rem;line-height:1.6;color:rgba(15,27,45,.6)}
.floating-cta{position:fixed;right:1rem;bottom:1rem;z-index:90;display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.125rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--accent-from),var(--accent));color:#fff;font-size:.8125rem;font-weight:600;box-shadow:0 12px 32px rgba(155,27,27,.35);transition:transform .25s ease,box-shadow .25s ease;padding-bottom:max(.75rem,env(safe-area-inset-bottom,0px))}
@media (min-width:1024px){.floating-cta{right:1.5rem;bottom:1.5rem}}
@media (hover:hover){.floating-cta:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(155,27,27,.4)}}
.floating-cta__icon{display:grid;place-items:center;width:1.25rem;height:1.25rem}
.contact-form-wrap{padding:1.75rem;border-radius:var(--radius-card);background:var(--surface);border:1px solid var(--line)}
.contact-form-wrap__title{font-size:1.375rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.35rem}
.contact-form-wrap__intro{font-size:.875rem;line-height:1.55;color:rgba(15,27,45,.6);margin-bottom:1.25rem}
.form-trust{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:rgba(15,27,45,.5);margin-top:.25rem}
.form-trust .icon{width:.875rem;height:.875rem;color:var(--accent)}
.process-steps{counter-reset:step;display:grid;gap:1.5rem}
.process-step{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.5rem;border-radius:var(--radius-card-sm);background:var(--surface)}
.process-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-size:.875rem;font-weight:600;color:var(--accent);padding-top:.15rem}
.process-step h3{font-size:1.125rem;font-weight:600;margin-bottom:.35rem}
.process-step p{font-size:.875rem;color:rgba(15,27,45,.6);line-height:1.55}
.stat-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
@media (min-width:768px){.stat-strip{grid-template-columns:repeat(4,1fr)}}
.stat-strip__item{padding:1.25rem;border-radius:var(--radius-card-sm);background:var(--surface)}
.stat-strip__num{font-size:2rem;font-weight:600;letter-spacing:-.02em}
.stat-strip__label{font-size:.75rem;color:rgba(15,27,45,.55);margin-top:.35rem}
.next-project{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}

/* About page (studio.html) */
.about-page-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:0 0 var(--radius-card) var(--radius-card);background:linear-gradient(165deg,#fff 0%,#faf9f7 48%,#f5f3f0 100%)}
.about-page-hero__ambient{position:absolute;inset:0;z-index:0;overflow:hidden}
.about-page-hero__orb{position:absolute;border-radius:50%;filter:blur(72px);opacity:.5;animation:heroOrbDrift 18s ease-in-out infinite}
.about-page-hero__orb--1{width:min(40vw,26rem);height:min(40vw,26rem);top:-6%;right:10%;background:radial-gradient(circle at 30% 30%,rgba(214,69,69,.4),rgba(155,27,27,.1) 70%,transparent)}
.about-page-hero__orb--2{width:min(34vw,20rem);height:min(34vw,20rem);bottom:8%;left:38%;background:radial-gradient(circle at 50% 50%,rgba(240,168,168,.5),rgba(214,69,69,.08) 65%,transparent);animation-delay:-9s}
.about-page-hero__grain{position:absolute;inset:0;opacity:.32;background-image:radial-gradient(rgba(15,27,45,.08) .75px,transparent .75px);background-size:18px 18px}
.about-page-hero__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(105deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,.65) 45%,rgba(255,255,255,.2) 72%,transparent 100%)}
.about-page-hero__grid{position:relative;z-index:2;display:grid;gap:2.5rem;padding:6.5rem 1.25rem 4rem;align-items:center}
@media (min-width:640px){.about-page-hero__grid{padding-inline:2rem}}
@media (min-width:1024px){.about-page-hero__grid{grid-template-columns:1.05fr .95fr;min-height:min(88vh,52rem);padding:7rem 2rem 5rem;gap:3rem}}
.about-page-hero__title{font-size:clamp(2rem,4.8vw,3.75rem);font-weight:600;line-height:1.02;letter-spacing:-.02em;max-width:16ch;margin-top:.75rem}
.about-page-hero__desc{max-width:38rem;margin-top:1.25rem;font-size:1.0625rem;line-height:1.65;color:rgba(15,27,45,.68)}
.about-page-hero__chips{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:1.25rem 0 0;padding:0;list-style:none}
.about-page-hero__chips li{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;color:rgba(15,27,45,.62)}
.about-page-hero__chips .icon{width:.875rem;height:.875rem;color:var(--accent)}
.about-page-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.about-page-hero__visual{display:flex;align-items:center;justify-content:center}
.about-page-hero__logo-ring{position:relative;display:grid;place-items:center;padding:2.5rem;border-radius:50%;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.85);box-shadow:0 28px 60px rgba(15,27,45,.08);backdrop-filter:blur(12px);animation:heroFloat 8s ease-in-out infinite}
.about-page-hero__logo-ring::before{content:"";position:absolute;inset:-1px;border-radius:50%;padding:1px;background:linear-gradient(135deg,rgba(214,69,69,.35),rgba(255,255,255,.2),rgba(155,27,27,.25));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.about-page-hero__logo-ring img{width:min(72vw,18rem);height:auto;object-fit:contain}
@media (min-width:1024px){.about-page-hero__logo-ring img{width:min(100%,20rem)}}
.about-page-section__title{font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:600;letter-spacing:-.02em;line-height:1.08;max-width:22ch;margin:.75rem 0 2.5rem}
.about-page-story{padding:4.5rem 1.25rem;background:#fff}
@media (min-width:640px){.about-page-story{padding-inline:2rem}}
.about-page-quote{margin:1rem 0 0;padding:0;border:none;font-size:clamp(1.35rem,2.8vw,2rem);font-weight:500;line-height:1.35;letter-spacing:-.015em;color:var(--ink);max-width:28ch}
.about-page-story__grid{display:grid;gap:2.5rem;margin-top:2.5rem}
@media (min-width:1024px){.about-page-story__grid{grid-template-columns:1fr 1fr;gap:3rem;align-items:start}}
.about-page-story__copy{display:grid;gap:1rem;font-size:1rem;line-height:1.7;color:rgba(15,27,45,.68)}
.about-page-mv{display:grid;gap:1rem}
.about-page-mv__card{padding:1.75rem;border-radius:var(--radius-card-sm);background:var(--surface);border:1px solid var(--line);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}
.about-page-mv__card--accent{background:linear-gradient(145deg,rgba(155,27,27,.06),rgba(214,69,69,.04));border-color:rgba(155,27,27,.12)}
@media (hover:hover){.about-page-mv__card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(15,27,45,.06);border-color:rgba(155,27,27,.18)}}
.about-page-mv__icon{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-pill);background:rgba(255,255,255,.85);color:var(--accent);margin-bottom:1rem;border:1px solid rgba(155,27,27,.1)}
.about-page-mv__icon .icon{width:1.125rem;height:1.125rem}
.about-page-mv__card h2{font-size:1.25rem;font-weight:600;margin-bottom:.625rem;letter-spacing:-.01em}
.about-page-mv__card p{font-size:.9375rem;line-height:1.6;color:rgba(15,27,45,.65)}
.about-page-stats{padding:4.5rem 1.25rem;background:var(--surface)}
@media (min-width:640px){.about-page-stats{padding-inline:2rem}}
.about-page-stats__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media (min-width:768px){.about-page-stats__grid{grid-template-columns:repeat(4,1fr);gap:1.25rem}}
.about-stat{position:relative;padding:1.5rem 1.25rem;border-radius:var(--radius-card-sm);background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}
.about-stat::after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:linear-gradient(90deg,var(--accent-from),var(--accent-mid),var(--accent));opacity:.85}
@media (hover:hover){.about-stat:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,27,45,.07)}}
.about-stat__icon{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-pill);background:rgba(155,27,27,.08);color:var(--accent);margin-bottom:1rem}
.about-stat__icon .icon{width:1rem;height:1rem}
.about-stat__num{font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:-.02em;line-height:1.1}
.about-stat__label{margin-top:.35rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:rgba(15,27,45,.55)}
.about-page-values{padding:4.5rem 1.25rem;background:#fff}
@media (min-width:640px){.about-page-values{padding-inline:2rem}}
.about-page-values__grid{display:grid;gap:1rem}
@media (min-width:640px){.about-page-values__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.about-page-values__grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}
.about-value{position:relative;padding:1.75rem 1.5rem 1.5rem;border-radius:var(--radius-card-sm);background:linear-gradient(180deg,#fff 0%,#faf9f8 100%);border:1px solid var(--line);transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease}
@media (hover:hover){.about-value:hover{transform:translateY(-4px);border-color:rgba(155,27,27,.2);box-shadow:0 20px 44px rgba(155,27,27,.08)}}
.about-value__num{position:absolute;top:1rem;right:1rem;font-size:.6875rem;font-weight:600;letter-spacing:.08em;color:rgba(15,27,45,.28)}
.about-value__icon{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,rgba(214,69,69,.12),rgba(155,27,27,.08));color:var(--accent);margin-bottom:1rem}
.about-value__icon .icon{width:1.125rem;height:1.125rem}
.about-value h3{font-size:1.0625rem;font-weight:600;margin-bottom:.5rem;letter-spacing:-.01em}
.about-value p{font-size:.875rem;line-height:1.55;color:rgba(15,27,45,.62)}
.about-page-team{padding:4.5rem 1.25rem;background:var(--surface)}
@media (min-width:640px){.about-page-team{padding-inline:2rem}}
.about-page-team__grid{display:grid;gap:1rem}
@media (min-width:640px){.about-page-team__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.about-page-team__grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}
.about-team{padding:1.75rem;border-radius:var(--radius-card-sm);background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:.625rem;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}
@media (hover:hover){.about-team:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(15,27,45,.07);border-color:rgba(155,27,27,.15)}}
.about-team__avatar{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:700;letter-spacing:.04em;color:#fff;background:linear-gradient(135deg,var(--accent-from),var(--accent-mid),var(--accent));margin-bottom:.25rem;box-shadow:0 8px 20px rgba(155,27,27,.22)}
.about-team__role{display:inline-flex;align-self:flex-start;padding:.25rem .625rem;border-radius:var(--radius-pill);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:rgba(155,27,27,.08)}
.about-team h3{font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.about-team p{font-size:.875rem;line-height:1.55;color:rgba(15,27,45,.62)}
.about-page-why{padding:4.5rem 1.25rem 5rem;background:#fff}
@media (min-width:640px){.about-page-why{padding-inline:2rem}}
.about-page-why__grid{display:grid;gap:1rem;margin-bottom:2.5rem}
@media (min-width:768px){.about-page-why__grid{grid-template-columns:repeat(2,1fr)}}
.about-why{display:grid;grid-template-columns:auto 1fr;gap:1rem 1.25rem;padding:1.5rem;border-radius:var(--radius-card-sm);background:var(--surface);border:1px solid transparent;transition:background .35s ease,border-color .35s ease,transform .35s ease}
@media (hover:hover){.about-why:hover{background:#fff;border-color:var(--line);transform:translateX(4px)}}
.about-why__num{font-size:.875rem;font-weight:700;color:var(--accent);padding-top:.15rem}
.about-why__label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:rgba(15,27,45,.45);margin-bottom:.35rem}
.about-why h3{font-size:1.0625rem;font-weight:600;margin-bottom:.35rem;letter-spacing:-.01em}
.about-why p{font-size:.875rem;line-height:1.55;color:rgba(15,27,45,.62)}
.about-page-connect{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;padding-top:2rem;border-top:1px solid var(--line)}
.about-page-connect__label{font-size:.875rem;color:rgba(15,27,45,.45);margin-bottom:.5rem}
@media (prefers-reduced-motion:reduce){.about-page-hero__logo-ring{animation:none!important}}

/* Responsive — phones & tablets */
@media (max-width:639px){
  :root{--radius-card:1.25rem;--text-watermark:7rem}
  .loader,.hero,.site-footer{border-radius:0 0 1rem 1rem}
  .loader__brand .brand-logo{width:clamp(6rem,42vw,9rem)!important;height:auto!important}
  .hero__grid{padding-top:4.25rem;padding-bottom:3rem}
  .hero__h1{max-width:none;font-size:clamp(1.85rem,8.5vw,2.25rem)}
  .hero__logo{padding-top:.5rem}
  .hero__logo-img{width:min(64vw,14rem)}
  .hero__status{flex-wrap:wrap;justify-content:center;row-gap:.625rem;padding:1rem;text-align:center;font-size:.6875rem}
  .hero__status-item{justify-content:center}
  .hero__status-center{display:inline-flex}
  .hero__status-right{width:100%;justify-content:center}
  .hero__ctas{width:100%}
  .hero__ctas .pill-btn{width:100%}
  .hero__ctas .pill-btn__inner{width:100%;justify-content:space-between}
  .about__globe-note{margin-top:3rem}
  .about__globe-note span{max-width:none}
  .portfolio-card__wm{font-size:4rem}
  .portfolio-card.sticky-card .portfolio-card__wm{font-size:4.25rem}
  .sticky-cards{height:auto;min-height:0;padding:0}
  .sticky-cards__frame{height:auto;min-height:22rem;max-width:100%}
  .portfolio-card.sticky-card{position:relative;inset:auto;min-height:22rem;margin-top:1.25rem}
  .portfolio-card.sticky-card:first-child{margin-top:0}
  .card-link{min-height:14rem;padding:1.5rem}
  .card-link__title{font-size:1.25rem}
  .page-hero{padding-top:5.5rem;padding-bottom:2.5rem}
  .page-hero__title{max-width:none}
  .about-page-hero__grid{padding-top:5.25rem;padding-bottom:3rem}
  .about-page-hero__title{max-width:none}
  .about-page-hero__actions{width:100%}
  .about-page-hero__actions .pill-btn{width:100%}
  .about-page-hero__actions .pill-btn__inner{width:100%;justify-content:space-between}
  .about-page-hero__logo-ring{padding:1.75rem}
  .about-page-quote{max-width:none}
  .about-page-section__title{max-width:none}
  .about-page-connect{align-items:flex-start}
  .about-page-connect .pill-btn{width:100%}
  .about-page-connect .pill-btn__inner{width:100%;justify-content:space-between}
  .page-section{padding-block:3rem}
  .project-demo__bar{align-items:flex-start}
  .project-demo__stack{font-size:.75rem}
  .footer-cta__h2{max-width:none}
  .footer-legal{text-align:center}
  .footer-legal__links{flex-wrap:wrap;justify-content:center}
  .nav-menu__link{font-size:clamp(1.75rem,8vw,2.25rem)}
  .modal__footer{flex-direction:column;align-items:stretch}
  .modal__footer .pill-btn{width:100%}
  .modal__footer .pill-btn__inner{width:100%;justify-content:center}
  .job-item{align-items:flex-start}
  .floating-cta__text{display:none}
  @media (min-width:480px){.floating-cta__text{display:inline}}
  .convert-band__actions{flex-direction:column;width:100%}
  .convert-band__actions .pill-btn{width:100%}
  .convert-band__actions .pill-btn__inner{width:100%;justify-content:center}
  .footer-cta__actions{width:100%}
  .footer-cta__actions .pill-btn{width:100%}
  .footer-cta__actions .pill-btn__inner{width:100%;justify-content:center}
  .page-hero__actions .pill-btn{width:100%}
  .page-hero__actions .pill-btn__inner{width:100%;justify-content:space-between}
  .next-project{flex-direction:column;align-items:flex-start}
}
@media (max-width:1023px){
  .service-row__desc{display:block;max-width:none;margin-top:.35rem;font-size:.8125rem}
  .service-row__main{align-items:flex-start}
  .service-row__title{font-size:1.375rem}
  @media (hover:none){
    .service-row__media{grid-template-rows:1fr;margin-top:1rem}
    .service-row__media img{opacity:1;transform:none;height:clamp(9rem,42vw,14rem)}
  }
}
@media (min-width:640px) and (max-width:1023px){
  .content-grid--2{grid-template-columns:1fr 1fr}
  .card-link{min-height:16rem}
}
@media (min-width:768px) and (max-width:1023px){
  .hero__left{max-width:36rem}
  .hero__logo-img{width:min(40vw,16rem)}
  .sticky-cards{height:auto;min-height:0;padding-block:1rem}
  .sticky-cards__frame{height:min(36rem,78vh)}
}
@media (min-width:1024px){
  .footer-brand{flex-direction:row;align-items:center;margin-top:-2.5rem}
}
