.home-shell { --home-ink: #111411; --home-paper: #f7f6f2; --home-soft: #eae8e2; --home-accent: #d65031; --home-line: #d4d3cd; background: var(--home-paper); }
.home-shell .site-header { background: rgba(247, 246, 242, .94); border-color: transparent; backdrop-filter: blur(12px); }
.home-shell .site-header.is-compact { height: 60px; background: rgba(247, 246, 242, .97); border-color: var(--home-line); }
.home-shell .nav a { color: #424640; font-size: .84rem; }
.home-shell .nav a:hover, .home-shell .nav a[aria-current="page"] { color: var(--home-accent); }
.home-shell .header-cta .btn { min-height: 42px; border-radius: 2px; background: var(--home-ink); box-shadow: none; font-size: .78rem; }
.home-shell .header-cta .btn:hover { background: var(--home-accent); }
.home-shell .nav-cta { background: var(--home-ink); border-radius: 2px; }
.home-shell .agency-page { color: var(--home-ink); background: var(--home-paper); }
.agency-eyebrow { margin: 0 0 1rem; color: var(--home-accent); font-size: .66rem; font-weight: 600; letter-spacing: .16em; }
.agency-hero { position: relative; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 2vw; min-height: 700px; min-height: 82svh; padding: 4.8rem 6vw 4rem; overflow: hidden; }
.agency-hero-copy { position: relative; z-index: 3; max-width: 690px; }
.agency-hero-copy > .agency-eyebrow { margin-bottom: 1.35rem; }
.agency-hero h1 { max-width: 11.8ch; margin: 0 0 1.25rem; font: 500 64px/.98 "Space Grotesk", sans-serif; letter-spacing: 0; }
.agency-hero h1 em { color: var(--home-accent); font-style: normal; }
.agency-hero-lead { max-width: 48ch; color: #565c56; font-size: 1rem; line-height: 1.72; }
.agency-hero-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.6rem; }
.agency-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.2rem; min-height: 50px; padding: 0 1rem; font-size: .78rem; font-weight: 600; transition: color .2s ease, background .2s ease, transform .2s ease; }
.agency-button:hover { transform: translateY(-2px); }
.agency-button-primary { color: #fff; background: var(--home-ink); }
.agency-button-primary:hover { background: var(--home-accent); }
.agency-button-primary span { color: #efb59f; }
.agency-button-secondary { border: 1px solid #aaa9a2; }
.agency-button-secondary:hover { color: #fff; background: var(--home-ink); border-color: var(--home-ink); }
.agency-hero-proof { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem; margin: 2rem 0 0; color: #72746e; font-size: .57rem; letter-spacing: .1em; }
.agency-hero-proof i { width: 20px; height: 1px; background: var(--home-accent); }
.agency-hero-visual { position: relative; min-width: 0; height: 570px; isolation: isolate; }
.agency-hero-visual::before { content: ""; position: absolute; inset: 7% 2% 5% 14%; z-index: -1; background: #eae8e2; }
.agency-screen { position: absolute; margin: 0; overflow: hidden; display: flex; flex-direction: column; background: #fff; border: 1px solid rgba(18, 22, 19, .13); box-shadow: 0 24px 58px rgba(23, 25, 22, .15); }
.agency-screen.project-shot { background: linear-gradient(160deg, #f1f2ed, #e4e7e0); }
.agency-screen .project-shot-chrome { min-height: 22px; padding: 0 8px; flex: 0 0 auto; }
.agency-screen .project-shot-chrome i { width: 6px; height: 6px; }
.agency-screen .project-shot-chrome b { font-size: 8px; }
.agency-screen .project-shot-frame { flex: 1; min-height: 0; position: relative; }
.agency-screen .project-shot-frame img,
.agency-screen img { width: 100%; height: 100%; object-fit: cover; object-position: top; filter: saturate(.28) contrast(1.06) brightness(1.03) sepia(.14); }
.agency-screen .project-shot-frame::after {
  background:
    linear-gradient(180deg, rgba(17, 20, 17, .08), transparent 30%),
    linear-gradient(135deg, rgba(17, 20, 17, .16), rgba(214, 80, 49, .06) 60%, rgba(247, 246, 242, .18));
}
.agency-screen figcaption { position: absolute; inset: auto 0 0; z-index: 3; display: flex; justify-content: space-between; align-items: center; gap: .6rem; padding: .6rem .7rem; color: #fff; background: rgba(17, 20, 17, .88); font-size: .52rem; letter-spacing: .08em; }
.agency-screen figcaption span { color: #d5d2c8; }
.agency-screen-main { z-index: 1; top: 10%; left: 3%; width: 75%; height: 67%; }
.agency-screen-side { z-index: 2; top: 1%; right: 1%; width: 50%; height: 54%; transform: rotate(1.6deg); }
.agency-screen-small { z-index: 3; bottom: 1%; left: 1%; width: 43%; height: 36%; transform: rotate(-1.5deg); }
.agency-screen-extra { z-index: 4; bottom: 4%; right: 2%; width: 36%; height: 30%; transform: rotate(2.2deg); }
.agency-visual-index { position: absolute; right: 2%; bottom: 0; color: #656a62; font-size: .58rem; letter-spacing: .14em; }
.agency-visual-index b { padding-inline: .3rem; color: var(--home-accent); }
.agency-scroll-cue { position: absolute; right: 2.8vw; bottom: 2.1rem; display: flex; gap: .7rem; align-items: center; color: #777970; font-size: .56rem; letter-spacing: .13em; writing-mode: vertical-rl; }
.agency-scroll-cue span { color: var(--home-accent); font-size: .9rem; }
.agency-manifesto { padding: 5.4rem 8vw 3.4rem; color: #f2f0e9; background: #171a17; }
.agency-manifesto > .agency-eyebrow { color: #e9a38d; }
.agency-manifesto h2 { max-width: 18ch; margin: 0; font: 500 54px/1.02 "Space Grotesk", sans-serif; }
.agency-manifesto h2 span { color: #b7bbb3; }
.agency-sector-line { display: grid; grid-template-columns: repeat(6, 1fr); gap: 1rem; margin-top: 3.2rem; border-top: 1px solid #454842; }
.agency-sector-line a { display: flex; flex-direction: column; gap: .7rem; padding-top: .75rem; color: #d4d5cd; font-size: .62rem; }
.agency-sector-line a:first-child, .agency-sector-line a:hover { color: #f09577; }
.agency-sector-line span { color: inherit; font: 500 .98rem "Space Grotesk", sans-serif; }
.agency-solution-section { display: grid; grid-template-columns: .8fr 1.1fr .65fr; gap: 2.2rem; align-items: center; padding: 5.2rem 6vw; }
.agency-solution-head h2 { max-width: 12ch; margin: 0 0 .8rem; font: 500 44px/1.02 "Space Grotesk", sans-serif; }
.agency-solution-head h2 em { color: var(--home-accent); font-style: normal; }
.agency-solution-head > p:last-child { max-width: 36ch; color: #636861; font-size: .82rem; line-height: 1.7; }
.agency-solution-view { min-width: 0; }
.agency-solution-image { position: relative; height: 310px; margin: 0; overflow: hidden; background: #dedbd3; }
.agency-solution-image img { width: 100%; height: 100%; object-fit: cover; transition: opacity .25s ease, transform .4s ease; }
.agency-solution-image img.is-changing { opacity: .3; transform: scale(1.015); }
.agency-solution-image figcaption { position: absolute; left: .75rem; bottom: .75rem; padding: .5rem .65rem; color: #fff; background: #171a17; font-size: .62rem; }
.agency-solution-detail { display: grid; grid-template-columns: auto 1fr; gap: .25rem 1rem; align-items: baseline; padding-top: .8rem; }
.agency-solution-detail > span { grid-column: 1 / -1; color: var(--home-accent); font-size: .57rem; letter-spacing: .12em; }
.agency-solution-detail h3 { margin: 0; font: 500 1.22rem "Space Grotesk", sans-serif; }
.agency-solution-detail > p { grid-column: 1 / -1; color: #656961; font-size: .74rem; line-height: 1.6; }
.agency-solution-detail > div { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: .7rem; margin-top: .3rem; }
.agency-solution-detail > div a { padding: .55rem .65rem; color: #fff; background: #171a17; font-size: .64rem; }
.agency-solution-detail > div a + a { color: #171a17; background: transparent; border-bottom: 1px solid #999b93; }
.agency-solution-list { margin: 0; padding: 0; list-style: none; }
.agency-solution-list li { border-top: 1px solid #d1d0c9; }
.agency-solution-list li:last-child { border-bottom: 1px solid #d1d0c9; }
.agency-solution-list button { display: grid; grid-template-columns: 31px 1fr 18px; gap: .6rem; align-items: center; width: 100%; min-height: 52px; padding: 0; color: #242722; background: transparent; border: 0; text-align: left; cursor: pointer; }
.agency-solution-list button > span { color: #93958e; font-size: .59rem; }
.agency-solution-list button > strong { font: 500 .89rem "Space Grotesk", sans-serif; }
.agency-solution-list button > i { color: #a4a49d; font-style: normal; transition: transform .2s ease, color .2s ease; }
.agency-solution-list button[aria-pressed="true"] > strong, .agency-solution-list button:hover > strong { color: var(--home-accent); }
.agency-solution-list button[aria-pressed="true"] > i, .agency-solution-list button:hover > i { transform: translate(2px,-2px); color: var(--home-accent); }
.agency-demo-section { padding: 4.6rem 6vw 5rem; background: #eae8e2; }
.agency-demo-section > header { display: flex; justify-content: space-between; align-items: end; gap: 1.5rem; margin-bottom: 1.5rem; }
.agency-demo-section > header h2 { max-width: 17ch; margin: 0; font: 500 42px/1.02 "Space Grotesk", sans-serif; }
.agency-demo-section > header a { padding-bottom: .35rem; border-bottom: 1px solid #898b83; font-size: .7rem; }
.agency-demo-section > header a span { margin-left: .6rem; color: var(--home-accent); }
.agency-demo-grid { display: grid; grid-template-columns: 1.2fr .8fr 1fr; grid-template-rows: 250px 250px; grid-auto-rows: 250px; gap: .8rem; }
.agency-demo-tile { position: relative; min-width: 0; overflow: hidden; background: #d7d4cb; }
.agency-demo-tile:nth-child(1) { grid-row: span 2; }
.agency-demo-tile:nth-child(4) { grid-column: span 2; }
.agency-demo-tile img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ease); }
.agency-demo-tile::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(14, 17, 14, .77)); transition: opacity .25s ease; }
.agency-demo-tile:hover img { transform: scale(1.035); }
.agency-demo-meta { position: absolute; z-index: 1; left: 1rem; bottom: 1rem; display: grid; gap: .25rem; color: #fff; }
.agency-demo-meta small { color: #e2ded5; font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; }
.agency-demo-meta b { font: 500 1.2rem "Space Grotesk", sans-serif; }
.agency-demo-tile > i { position: absolute; z-index: 2; top: .8rem; right: .8rem; display: grid; place-items: center; width: 36px; height: 36px; color: #181a17; background: #f5f3ed; font-size: .9rem; font-style: normal; transition: color .2s ease, background .2s ease; }
.agency-demo-tile:hover > i { color: #fff; background: var(--home-accent); }
.agency-demo-footnote { margin: 1rem 0 0; color: #74766f; font-size: .69rem; }
.agency-services { display: grid; grid-template-columns: .8fr 1.1fr; gap: 8vw; padding: 5rem 8vw; }
.agency-services header { position: sticky; top: 100px; align-self: start; }
.agency-services header h2 { max-width: 13ch; margin: 0 0 .8rem; font: 500 42px/1.02 "Space Grotesk", sans-serif; }
.agency-services header > p:last-child { max-width: 36ch; color: #656a62; font-size: .81rem; line-height: 1.7; }
.agency-services ol { margin: 0; padding: 0; list-style: none; }
.agency-services li { display: grid; grid-template-columns: 40px 1fr 20px; gap: .4rem 1rem; align-items: baseline; min-height: 83px; padding: 1rem 0; border-top: 1px solid #d6d5ce; }
.agency-services li:last-child { border-bottom: 1px solid #d6d5ce; }
.agency-services li > span { color: var(--home-accent); font-size: .62rem; }
.agency-services li > a { font: 500 1.28rem "Space Grotesk", sans-serif; text-decoration: none; transition: color .2s ease; }
.agency-services li:hover > a { color: var(--home-accent); }
.agency-services li > small { grid-column: 2; color: #74776f; font-size: .7rem; line-height: 1.55; }
.agency-services li > i { grid-column: 3; grid-row: 1; color: #878982; font-style: normal; transition: transform .2s ease, color .2s ease; }
.agency-services li:hover > i { transform: translate(2px,-2px); color: var(--home-accent); }
.agency-proof { display: grid; grid-template-columns: .9fr 1fr; gap: 8vw; padding: 4.5rem 8vw; color: #f3f1eb; background: #171a17; }
.agency-proof > div > .agency-eyebrow { color: #e9997b; }
.agency-proof h2 { max-width: 14ch; margin: 0 0 1rem; font: 500 44px/1.02 "Space Grotesk", sans-serif; }
.agency-proof > div > p:not(.agency-eyebrow) { max-width: 42ch; color: #b8bcb4; font-size: .82rem; line-height: 1.7; }
.agency-proof > div > a { display: inline-flex; justify-content: space-between; min-width: 170px; margin-top: .7rem; padding: .75rem 0; border-bottom: 1px solid #777a72; font-size: .72rem; }
.agency-proof > div > a span { color: #e9997b; }
.agency-proof > ul { margin: 0; padding: 0; list-style: none; }
.agency-proof > ul li { display: grid; grid-template-columns: 34px 1fr; gap: .35rem .8rem; padding: .9rem 0; border-top: 1px solid #41443e; }
.agency-proof > ul li:last-child { border-bottom: 1px solid #41443e; }
.agency-proof > ul span { color: #e9997b; font-size: .61rem; }
.agency-proof > ul strong { font: 500 1.04rem "Space Grotesk", sans-serif; }
.agency-proof > ul p { grid-column: 2; color: #aeb2aa; font-size: .7rem; }
.agency-transformation { display: grid; grid-template-columns: 1fr 50px 1.25fr; gap: 1.5rem; align-items: center; padding: 4.8rem 7vw; }
.agency-transform-before > span, .agency-transform-after > span { color: #787b73; font-size: .61rem; letter-spacing: .13em; }
.agency-transform-before h3, .agency-transform-after h3 { margin: 1rem 0 .6rem; font: 500 1.65rem/1.08 "Space Grotesk", sans-serif; }
.agency-transform-before > p { max-width: 33ch; color: #6a6e66; font-size: .77rem; line-height: 1.65; }
.agency-transform-before ul { margin: 1.4rem 0 0; padding: 0; list-style: none; }
.agency-transform-before li { padding: .55rem 0; border-top: 1px solid #d8d7d0; color: #72756e; font-size: .69rem; }
.agency-transform-divider { display: grid; place-items: center; width: 42px; height: 42px; color: #fff; background: var(--home-accent); }
.agency-transform-after figure { position: relative; height: 280px; margin: 1rem 0 0; overflow: hidden; }
.agency-transform-after img { width: 100%; height: 100%; object-fit: cover; }
.agency-transform-after figcaption { position: absolute; left: .7rem; bottom: .7rem; padding: .55rem .65rem; color: #fff; background: #171a17; font-size: .53rem; letter-spacing: .08em; }
.agency-transform-after figcaption i { padding-inline: .25rem; color: var(--home-accent); font-style: normal; }
.agency-process { padding: 4.7rem 7vw 5rem; background: #eae8e2; }
.agency-process h2 { max-width: 16ch; margin: 0 0 2rem; font: 500 44px/1.02 "Space Grotesk", sans-serif; }
.agency-process ol { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; margin: 0; padding: 0; list-style: none; }
.agency-process li { min-height: 165px; padding: .8rem .7rem .5rem 0; border-top: 1px solid #aaa9a2; transition: border-color .25s ease, transform .25s ease; }
.agency-process li.is-on { border-color: var(--home-accent); transform: translateY(-3px); }
.agency-process li > span { color: var(--home-accent); font-size: .63rem; }
.agency-process li h3 { margin: 1rem 0 .4rem; font: 500 1.14rem "Space Grotesk", sans-serif; }
.agency-process li p { max-width: 28ch; color: #62665f; font-size: .72rem; line-height: 1.6; }
.agency-offer { display: grid; grid-template-columns: 1fr auto; gap: 3rem; align-items: center; padding: 4rem 8vw; color: #171a17; background: #e6e2d8; }
.agency-offer .agency-eyebrow { color: var(--home-accent); }
.agency-offer h2 { max-width: 18ch; margin: 0 0 .75rem; font: 500 39px/1.02 "Space Grotesk", sans-serif; }
.agency-offer > div > p:not(.agency-eyebrow) { max-width: 54ch; color: #62665f; font-size: .79rem; line-height: 1.65; }
.agency-offer > div > div { display: flex; gap: 1.2rem; align-items: center; margin-top: 1rem; }
.agency-offer > div > div a:first-child { display: inline-flex; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; color: #fff; background: #171a17; font-size: .72rem; }
.agency-offer > div > div a:first-child span { color: #efaa8f; }
.agency-offer > div > div a:last-child { font-size: .72rem; text-decoration: underline; text-underline-offset: 4px; }
.agency-offer-price { display: grid; gap: .55rem; min-width: 230px; padding: 1.2rem; background: #f7f6f2; border-left: 3px solid var(--home-accent); }
.agency-offer-price > span { color: #767971; font-size: .57rem; letter-spacing: .1em; }
.agency-offer-price > strong { font: 500 1.6rem "Space Grotesk", sans-serif; }
.agency-offer-price small { font-size: .7rem; }
.agency-offer-price > a { font-size: .68rem; }
.agency-offer-price > a span { float: right; color: var(--home-accent); }
.agency-testimonials { padding: 4rem 8vw; }
.agency-testimonials > h2 { margin: 0 0 1.5rem; font: 500 38px/1.02 "Space Grotesk", sans-serif; }
.agency-testimonials > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.3rem; }
.agency-testimonials blockquote { margin: 0; padding: 1rem 0; border-top: 1px solid #d4d3cd; }
.agency-testimonials blockquote > p { max-width: 38ch; font: 500 1.05rem/1.4 "Space Grotesk", sans-serif; }
.agency-testimonials blockquote footer { display: grid; gap: .15rem; margin-top: 1rem; color: #777a73; font-size: .65rem; }
.agency-testimonials blockquote footer strong { color: #232621; font-size: .7rem; }
.agency-final { position: relative; display: flex; justify-content: space-between; align-items: end; gap: 2rem; padding: 4.5rem 8vw 4rem; color: #f4f2eb; background: #171a17; overflow: hidden; }
.agency-final > div { position: relative; z-index: 1; }
.agency-final .agency-eyebrow { color: #e9997b; }
.agency-final h2 { max-width: 13ch; margin: 0 0 .8rem; font: 500 54px/.98 "Space Grotesk", sans-serif; }
.agency-final h2 em { color: #e9997b; font-style: normal; }
.agency-final > div > p:not(.agency-eyebrow) { max-width: 42ch; color: #b8bcb4; font-size: .8rem; line-height: 1.6; }
.agency-final > div > div { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1rem; }
.agency-final > div > div a { display: inline-flex; justify-content: space-between; gap: 1rem; padding: .86rem 1rem; color: #171a17; background: #e9997b; font-size: .72rem; font-weight: 600; }
.agency-final > div > div a + a { color: #f4f2eb; background: transparent; border: 1px solid #777a72; }
.agency-final > div > div a span { color: #6e3122; }
.agency-final-mark { align-self: center; color: rgba(255, 255, 255, .045); font: 500 320px/.7 "Space Grotesk", sans-serif; }
.home-shell .site-footer { color: #e2e3dd; background: #101310; border-top: 0; }
.home-shell .footer-label { color: #e9997b; }
.home-shell .site-footer a { color: #efeee8; }
.home-shell .footer-bottom { color: #92968e; border-color: #353934; }
.home-shell .footer-bottom a { color: #c2c4bc; }
[data-home-reveal].will-reveal, .agency-demo-tile.will-reveal, .agency-services li.will-reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s cubic-bezier(.2,.8,.2,1); }
[data-home-reveal].is-visible, .agency-demo-tile.is-visible, .agency-services li.is-visible { opacity: 1; transform: translateY(0); }
.agency-demo-tile:nth-child(2).will-reveal { transition-delay: .06s; }
.agency-demo-tile:nth-child(3).will-reveal { transition-delay: .12s; }
.agency-demo-tile:nth-child(4).will-reveal { transition-delay: .18s; }
.agency-demo-tile:nth-child(5).will-reveal { transition-delay: .24s; }
.agency-demo-tile:nth-child(6).will-reveal { transition-delay: .3s; }
@media (max-width: 1100px) {
  .agency-hero { grid-template-columns: 1fr 1fr; gap: 1rem; padding-inline: 4vw; }
  .agency-hero h1 { font-size: 52px; }
  .agency-hero-visual { height: 500px; }
  .agency-solution-section { grid-template-columns: .75fr 1.2fr; }
  .agency-solution-list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 1.2rem; }
  .agency-solution-list li:nth-child(4) { border-top: 0; }
  .agency-services { gap: 4vw; padding-inline: 5vw; }
  .agency-services header h2 { font-size: 36px; }
}
@media (max-width: 760px) {
  .home-shell .nav { display: none; position: absolute; inset: 60px 0 auto; padding: .8rem 1rem 1rem; background: var(--home-paper); border-bottom: 1px solid var(--home-line); }
  .home-shell .nav.is-open { display: flex; }
  .home-shell .nav a { min-height: 46px; width: 100%; }
  .home-shell .nav-toggle { display: block; }
  .home-shell .header-cta .btn { display: none; }
  .home-shell .nav-cta { justify-content: center; margin-top: .4rem; color: #fff !important; background: var(--home-ink); }
  .home-shell .header-inner { position: relative; }
  .agency-hero { grid-template-columns: 1fr; gap: 1.3rem; min-height: 0; padding: 3rem 1rem 2.5rem; }
  .agency-hero h1 { max-width: 12ch; font-size: 43px; }
  .agency-hero-lead { font-size: .86rem; }
  .agency-hero-proof { margin-top: 1.1rem; font-size: .49rem; }
  .agency-hero-visual { height: 365px; margin: .3rem 0 1rem; }
  .agency-screen-main { top: 12%; left: 1%; width: 83%; height: 65%; }
  .agency-screen-side { top: 1%; right: 0; width: 49%; height: 48%; }
  .agency-screen-small { bottom: 1%; left: 0; width: 44%; height: 34%; }
  .agency-screen-extra { bottom: 3%; right: 0; width: 38%; height: 28%; }
  .agency-screen figcaption { padding: .45rem; font-size: .43rem; }
  .agency-visual-index { right: 0; font-size: .5rem; }
  .agency-scroll-cue { display: none; }
  .agency-manifesto { padding: 3.3rem 1rem 2rem; }
  .agency-manifesto h2 { font-size: 34px; }
  .agency-sector-line { grid-template-columns: repeat(2, 1fr); gap: .2rem 1rem; margin-top: 2rem; }
  .agency-sector-line a { gap: .35rem; padding: .6rem 0; }
  .agency-solution-section { grid-template-columns: 1fr; gap: 1.1rem; padding: 3.2rem 1rem; }
  .agency-solution-head h2 { font-size: 36px; }
  .agency-solution-image { height: 270px; }
  .agency-solution-list { grid-template-columns: 1fr 1fr; gap: 0 .8rem; }
  .agency-solution-list li:nth-child(4) { border-top: 1px solid #d1d0c9; }
  .agency-solution-list button { grid-template-columns: 24px 1fr 14px; min-height: 48px; gap: .4rem; }
  .agency-solution-list button > strong { font-size: .72rem; }
  .agency-demo-section { padding: 3.1rem 1rem; }
  .agency-demo-section > header { display: block; }
  .agency-demo-section > header h2 { font-size: 32px; }
  .agency-demo-section > header a { display: inline-block; margin-top: .8rem; }
  .agency-demo-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 260px 180px 180px; grid-auto-rows: 180px; gap: .5rem; }
  .agency-demo-tile:nth-child(1) { grid-column: 1 / -1; grid-row: auto; }
  .agency-demo-tile:nth-child(4) { grid-column: auto; }
  .agency-demo-meta { left: .6rem; bottom: .6rem; }
  .agency-demo-meta b { font-size: .9rem; }
  .agency-demo-meta small { font-size: .49rem; }
  .agency-demo-tile > i { top: .5rem; right: .5rem; width: 30px; height: 30px; }
  .agency-demo-footnote { font-size: .63rem; line-height: 1.5; }
  .agency-services { grid-template-columns: 1fr; gap: 1rem; padding: 3rem 1rem; }
  .agency-services header { position: static; }
  .agency-services header h2 { max-width: 14ch; font-size: 34px; }
  .agency-services li { grid-template-columns: 28px 1fr 15px; min-height: 76px; gap: .3rem .6rem; }
  .agency-services li > a { font-size: 1rem; }
  .agency-services li > small { font-size: .64rem; }
  .agency-proof { grid-template-columns: 1fr; gap: 1.5rem; padding: 3rem 1rem; }
  .agency-proof h2 { font-size: 36px; }
  .agency-proof > ul li { min-height: 68px; }
  .agency-transformation { grid-template-columns: 1fr; gap: .8rem; padding: 3rem 1rem; }
  .agency-transform-divider { transform: rotate(90deg); }
  .agency-transform-before h3, .agency-transform-after h3 { font-size: 1.35rem; }
  .agency-transform-after figure { height: 230px; }
  .agency-process { padding: 3rem 1rem; }
  .agency-process h2 { font-size: 36px; }
  .agency-process ol { grid-template-columns: 1fr 1fr; gap: .8rem; }
  .agency-process li { min-height: 150px; }
  .agency-process li h3 { font-size: .95rem; }
  .agency-process li p { font-size: .65rem; }
  .agency-offer { grid-template-columns: 1fr; gap: 1.3rem; padding: 3rem 1rem; }
  .agency-offer h2 { font-size: 32px; }
  .agency-offer-price { min-width: 0; }
  .agency-testimonials { padding: 3rem 1rem; }
  .agency-testimonials > h2 { font-size: 32px; }
  .agency-testimonials > div { grid-template-columns: 1fr; gap: .4rem; }
  .agency-final { min-height: 420px; align-items: start; flex-direction: column; padding: 3rem 1rem; }
  .agency-final h2 { font-size: 42px; }
  .agency-final-mark { position: absolute; right: .5rem; bottom: 1.2rem; font-size: 150px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-home-reveal].will-reveal, .agency-demo-tile.will-reveal, .agency-services li.will-reveal,
  [data-home-reveal].is-visible, .agency-demo-tile.is-visible, .agency-services li.is-visible {
    opacity: 1; transform: none; transition: none;
  }
  .agency-screen, .agency-demo-tile img, .agency-button { transition: none; }
}