/* Homepage rhythm v1: light work, cinematic game, quiet editorial finish. */
.site-header .desktop-nav{gap:clamp(12px,1.45vw,24px)}
.site-header .nav-contact{margin-left:4px}
.site-header .header-inner{gap:24px}
:root{--accent:#be3418}
.home-rhythm{--muted:#51565b}
.home-rhythm .hero-v4 .hero-title .eyebrow{font-size:.75rem}
.home-rhythm .hero-v4-strip small{font-size:.75rem}
.home-rhythm .hero-v4 .hero-description .hero-note{font-size:.8125rem}
.home-rhythm .hero-v4-strip{border-bottom:1px solid var(--line)}
.rhythm-work{position:relative}
.rhythm-work .section{position:relative;padding-block:4.5rem 2.75rem;border-bottom:0}
.rhythm-work .section-head{position:relative;z-index:1}
.rhythm-work .section-head h2{font-size:clamp(2.3rem,4.1vw,4rem)}
.rhythm-line{position:absolute;right:0;top:1.2rem;width:32%;height:70px;color:var(--brand-accent-text);opacity:.65;pointer-events:none}
.rhythm-projects{display:grid;grid-template-columns:1.4fr 1fr;gap:1.7rem}
.rhythm-projects .project-media{display:block;height:clamp(310px,35vw,505px);aspect-ratio:auto;overflow:hidden}
.rhythm-projects .project-meta h3{font-size:clamp(1.65rem,2.8vw,2.7rem)}
.rhythm-projects .project-info{font-size:.875rem;gap:1rem}
.rhythm-projects .badge{font-size:.6875rem;border:1px solid #888a83;padding:.2rem .5rem;color:#51565b}
.rhythm-projects .work-web-composition{background:linear-gradient(135deg,#e6e7e5,#f2f2ef 55%,#d1d3d0);padding:7% 7% 10%}
.rhythm-projects .work-web-composition:before{display:none}
.rhythm-projects .device-browser{border:7px solid #202522;border-radius:12px;box-shadow:0 15px 28px #17181824;transform:rotate(-1deg)}
.rhythm-projects .device-browser .browser-bar{display:none}
.rhythm-projects .work-web-composition>.device-phone{right:4%;bottom:5%;width:24%;height:61%;transform:none}
.rhythm-projects .rhythm-motion{display:flex;gap:1.5%;align-items:center;padding:3% 3% 7%;background:#151b20;position:relative}
.rhythm-motion .motion-shot{display:block;width:32%;height:86%;overflow:hidden;border:1px solid #848585}
.rhythm-motion .motion-shot:nth-child(2){height:74%;transform:translateY(8%)}
.rhythm-motion .motion-shot:nth-child(3){height:93%;transform:translateY(-2%)}
.rhythm-motion .motion-shot img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.rhythm-motion .motion-shot:nth-child(2) img{scale:1.28;object-position:62% 46%}
.rhythm-motion .motion-shot:nth-child(3) img{scale:1.55;object-position:45% 25%}
.motion-timeline{position:absolute;bottom:5%;left:6%;right:6%;display:flex;gap:4px;height:3px;background:#798080}
.motion-timeline i{display:block;background:#ef734d;width:29%}.motion-timeline i:nth-child(2){width:17%;background:#b6babc}.motion-timeline i:nth-child(3){width:34%;background:#f4f1ec}
.rhythm-work .concept-note{margin-top:1.5rem;font-size:.8125rem}
.rhythm-game{position:relative;isolation:isolate;background:#111820;color:#fff;min-height:clamp(500px,45vw,740px);overflow:hidden}
.rhythm-game>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;z-index:-2}
.rhythm-game:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#080e180d,transparent 40%,#080e1855 70%,#080e18db)}
.rhythm-game-content{min-height:inherit;display:flex;flex-direction:column;justify-content:space-between;padding-block:2.4rem 3.5rem;gap:7rem}
.rhythm-game .eyebrow{color:#f4f4f0;width:fit-content;background:#111820b8;padding:.4rem .65rem;margin-left:-.65rem}
.rhythm-game h2{max-width:21ch;font-size:clamp(2.6rem,4.7vw,4.7rem);line-height:1.1;text-wrap:balance}
.rhythm-game-foot{display:flex;gap:1.5rem;justify-content:space-between;align-items:end;margin-top:1.3rem}
.rhythm-game-foot p{font-size:.875rem;color:#e2e5e9}
.rhythm-game a{color:white}.rhythm-game .arrow{color:var(--brand-accent-dark)}.rhythm-game :focus-visible{outline-color:white}
.rhythm-main .home-services{padding-block:4.5rem 3rem}
.rhythm-main .home-services .section-head h2{font-size:clamp(2rem,3vw,3rem)}
.rhythm-main .home-services .service-card{padding-block:1.5rem}
.rhythm-main .home-services .service-card p{font-size:.9375rem}
.rhythm-studio{padding-block:4rem 2rem;display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem 4rem}
.rhythm-studio-copy{align-self:center}.rhythm-studio h2{font-size:clamp(2.5rem,4.1vw,4.2rem);max-width:14ch;margin-block:1rem 1.5rem}
.rhythm-studio .lead{font-size:1.125rem;max-width:35ch;margin-bottom:1.75rem}
.rhythm-studio figure img{aspect-ratio:1.5;width:100%;height:auto;object-fit:cover}
.rhythm-studio figcaption{font-size:.8125rem;color:var(--muted);margin-top:.5rem}
.rhythm-process{grid-column:1/-1;border-block:1px solid var(--line);padding-block:1.7rem}
.rhythm-process .step{border:0;padding:0 1.6rem 0 2.6rem;position:relative}.rhythm-process .step-number{position:absolute;left:0;top:.2rem;font-size:.8125rem;color:var(--muted)}
.rhythm-process h3{font-family:var(--sans);font-size:1.05rem;letter-spacing:-.03em}.rhythm-process p{font-size:.875rem;line-height:1.65;max-width:30ch;margin-top:.5rem}
.rhythm-main .testimonials{padding-block:3rem 4rem}.rhythm-main .testimonials .section-head h2{font-size:clamp(2rem,3.2vw,3rem)}
.rhythm-main .testimonials{background:#e7e3db;box-shadow:0 0 0 100vmax #e7e3db;clip-path:inset(0 -100vmax)}
.rhythm-main .testimonials .quotes{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,2rem);align-items:start}
.rhythm-main .testimonials .quote{min-width:0;display:flex;flex-direction:column;background:var(--paper);border:0;padding:clamp(1.25rem,2.6vw,2.75rem);height:auto}
.rhythm-main .testimonials blockquote{flex:none;min-width:0;font-size:clamp(1.2rem,1.7vw,1.6rem);line-height:1.55;letter-spacing:0;overflow-wrap:anywhere}
.rhythm-main .testimonials blockquote p{max-width:48ch;white-space:pre-line}
.rhythm-main .testimonials blockquote p+p{margin-top:1em}
.rhythm-main .testimonials figcaption{margin-top:1.75rem;align-items:flex-start}
.rhythm-main .testimonials figcaption>span:last-child,.rhythm-main .testimonials .quote-project>span{min-width:0;overflow-wrap:anywhere}
.rhythm-main .testimonials .quote-project img{width:56px;height:44px}
@media(max-width:900px){.rhythm-main .testimonials .quotes{grid-template-columns:minmax(0,1fr)}}

.rhythm-journal{padding-block:4rem}.rhythm-journal .section-head h2{font-size:clamp(2rem,3.2vw,3.2rem)}
.journal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.7rem}
.journal-card{display:grid;grid-template-columns:31% 1fr;gap:1rem;min-width:0}
.journal-thumb{overflow:hidden;background:#e8e7e2;min-height:210px}
.journal-thumb img{width:100%;height:100%;object-fit:cover}
.journal-card h3{font-size:clamp(1.25rem,1.5vw,1.65rem);line-height:1.25;letter-spacing:-.035em;margin-block:.5rem .75rem}
.journal-card h3 a{text-decoration:none}.journal-card p:not(.eyebrow){font-size:.8125rem;color:var(--muted);line-height:1.65}
.journal-card .eyebrow{font-size:.6875rem;letter-spacing:.09em}
.journal-card .text-link{font-size:.8125rem;min-height:44px;margin-top:.7rem}
.rhythm-main .faq-layout{padding-block:3.5rem;gap:3rem}.rhythm-main .faq-layout h2{font-size:clamp(2rem,3vw,3rem)}
.rhythm-closing{padding-block:4.5rem 5rem;display:flex;gap:3rem;align-items:center;justify-content:space-between}
.rhythm-closing h2{font-size:clamp(2.5rem,4.8vw,4.8rem);max-width:17ch;line-height:1.15}
.rhythm-closing h2 span{position:relative;display:inline-block;padding-bottom:.2em}
.closing-stroke{position:absolute;bottom:0;left:0;width:100%;height:18px;color:var(--brand-accent-text);pointer-events:none}
.rhythm-closing>div{display:grid;gap:.8rem;flex-shrink:0}.rhythm-email{font-size:.875rem;justify-self:end;color:var(--muted)}
.home-rhythm .site-footer{background:var(--paper);color:var(--ink);border-top:1px solid var(--line);padding-top:2rem}
.home-rhythm .footer-main{padding-bottom:2rem;gap:3rem}.home-rhythm .footer-brand p,.home-rhythm .footer-label,.home-rhythm .footer-bottom,.home-rhythm .site-footer .small{color:#51565b}
.home-rhythm .footer-links a,.home-rhythm .footer-legal a,.home-rhythm .cookie-preferences-link{color:var(--ink)}
.home-rhythm .footer-bottom{border-color:var(--line)}
.rhythm-footer{padding-block:1.8rem 1.4rem;font-size:.8125rem;color:var(--muted)}
.rhythm-footer>.container{border-top:1px solid var(--line);padding-top:1.5rem}
.rhythm-footer-main{display:flex;align-items:center;gap:2rem}
.rhythm-footer .logo{font-size:1.9rem;color:var(--ink)}
.rhythm-footer a{text-decoration:none}
.rhythm-footer .language-switch{margin-left:auto}
.rhythm-footer-legal{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.35rem 1.3rem;font-size:.75rem;margin-top:.75rem}
.rhythm-footer-legal a,.rhythm-footer-legal button{min-height:36px;display:flex;align-items:center;padding:0}
.home-rhythm .rhythm-closing{border-bottom:0;padding-block:4rem}
.home-rhythm .rhythm-email{display:none}
.home-rhythm .rhythm-journal .journal-card{grid-template-columns:28% minmax(0,1fr);align-items:stretch}
.home-rhythm .rhythm-journal .journal-thumb{aspect-ratio:auto;min-height:230px}
.home-rhythm .rhythm-journal .journal-card h3{font-size:clamp(1.25rem,1.55vw,1.65rem)}
.journal-page,.journal-article{padding-top:1.5rem}.journal-feature{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:center}
.journal-feature img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}.journal-feature h2{margin-block:1rem}.journal-feature .text-link{margin-top:1.5rem}
.journal-page .journal-card{display:block}.journal-page .journal-thumb{display:block;aspect-ratio:1.4;min-height:0;margin-bottom:1rem}.journal-page .journal-card h3{font-size:1.75rem}
.journal-note{margin-bottom:2rem}.journal-article .page-heading{max-width:60rem}.journal-article .page-heading .text-link{margin-bottom:2rem;font-size:.875rem}.journal-article .page-heading .eyebrow{margin-bottom:1rem}
.article-byline{font-size:.875rem;margin-top:1.5rem;color:var(--muted)}.article-cover img{width:100%;height:auto;aspect-ratio:2.3;object-fit:cover}.article-cover .asset-rhythmMotion{object-position:center 42%}
.article-reading{display:grid;grid-template-columns:240px minmax(0,680px);gap:clamp(2rem,6vw,6rem);padding-block:4rem}
.article-toc{align-self:start;position:sticky;top:2rem}.article-toc summary{font-weight:600;font-size:.9375rem;cursor:pointer}.article-toc nav{display:grid;gap:1rem;margin-top:1.5rem}.article-toc a{font-size:.875rem;text-decoration:none;color:var(--muted);display:flex;gap:.6rem}
.article-body section+section{margin-top:2.5rem}.article-body h2{font-size:clamp(1.8rem,2.6vw,2.4rem);margin-bottom:1rem}.article-body p{font-size:1.125rem;line-height:1.9;max-width:65ch}.journal-related-title{margin-bottom:2rem}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.rhythm-motion .motion-shot{transition:transform .35s ease}.rhythm-motion:hover .motion-shot:nth-child(2){transform:translateY(-2%)}.rhythm-motion:hover .motion-shot:nth-child(3){transform:translateY(3%)}.journal-card h3 a:hover{text-decoration:underline}}
@media(max-width:1180px){.site-header .header-inner{gap:12px}.site-header .logo{font-size:30px}.site-header .desktop-nav{gap:12px}.site-header .desktop-nav>a,.site-header .nav-services>summary{font-size:12px}.site-header .nav-contact{padding:10px 14px}.site-header .language-switch{gap:0;margin-left:0}.journal-card{grid-template-columns:1fr}.journal-thumb{aspect-ratio:1.6;min-height:0}.journal-thumb img{height:100%}}
@media(max-width:1020px){.site-header .desktop-nav>a,.site-header .nav-services>summary{font-size:16px}.site-header .language-switch{margin-left:auto}.rhythm-studio{gap:2rem}.rhythm-closing{gap:2rem}.article-reading{grid-template-columns:190px minmax(0,1fr);gap:2rem}}
@media(max-width:760px){
 .rhythm-footer-main{flex-wrap:wrap;gap:1rem 1.5rem}.rhythm-footer .logo{font-size:1.6rem}.rhythm-footer .language-switch{margin-left:0}.rhythm-footer .footer-copyright{margin-left:auto;font-size:.75rem}.rhythm-footer-legal{justify-content:flex-start;gap:.2rem 1rem}.rhythm-footer .footer-email{margin-left:auto}
 .home-rhythm .rhythm-journal .journal-thumb{min-height:175px}.home-rhythm .rhythm-journal .journal-card{grid-template-columns:30% minmax(0,1fr)}
 .rhythm-work .section{padding-block:2.8rem 2rem}.rhythm-line{width:40%;top:0;height:40px}.rhythm-work .section-head{display:block}.rhythm-work .section-head .text-link{margin-top:1rem;min-height:44px}.rhythm-work .section-head h2{font-size:2.3rem}
 .rhythm-projects{grid-template-columns:1fr;gap:2.2rem}.rhythm-projects .project-media{height:auto;aspect-ratio:1.15}.rhythm-projects .project-meta h3{font-size:1.85rem}.rhythm-projects .project-info{font-size:.8125rem}.rhythm-projects .badge{font-size:.6875rem}
 .rhythm-game{min-height:590px}.rhythm-game>img{object-position:48% center}.rhythm-game-content{padding-block:1.6rem 2.2rem;gap:8rem}.rhythm-game h2{font-size:clamp(2.35rem,9vw,3.3rem);max-width:17ch}.rhythm-game-foot{display:block}.rhythm-game-foot .text-link{margin-top:1rem;min-height:44px}.rhythm-game .eyebrow{font-size:.75rem;max-width:28ch}
 .rhythm-main .home-services{padding-block:3rem 2rem}.rhythm-studio{grid-template-columns:1fr;padding-block:3rem 2rem;gap:1.7rem}.rhythm-studio h2{font-size:2.6rem;max-width:16ch}.rhythm-studio .lead{font-size:1rem}.rhythm-studio figure img{aspect-ratio:1.25;object-position:63% center}.rhythm-studio figcaption{font-size:.75rem}
 .rhythm-process{padding-block:1.5rem}.rhythm-process .steps{grid-template-columns:1fr;gap:1.5rem}.rhythm-process .step{padding:0 0 0 2.6rem}.rhythm-process p{max-width:none}
 .rhythm-main .testimonials{padding-block:2rem 3rem}.rhythm-journal{padding-block:3rem}.rhythm-journal .section-head{display:block}.rhythm-journal .section-head>.text-link{margin-top:1rem;min-height:44px}
 .journal-cards{grid-template-columns:1fr;gap:1.8rem}.journal-card{grid-template-columns:30% minmax(0,1fr);gap:1rem}.journal-thumb{min-height:180px;aspect-ratio:auto}.journal-card h3{font-size:1.4rem}.journal-card p:not(.eyebrow){font-size:.875rem}.journal-card .eyebrow{font-size:.75rem}.journal-card .text-link{font-size:.875rem}
 .rhythm-main .faq-layout{padding-block:3rem;gap:1.5rem}.rhythm-closing{display:grid;padding-block:3rem 3.5rem;gap:2rem}.rhythm-closing h2{font-size:clamp(2.35rem,10vw,3.4rem)}.rhythm-closing>div{justify-items:start}.rhythm-email{justify-self:start}.home-rhythm .footer-main{gap:2rem}
 .journal-feature{grid-template-columns:1fr;gap:1.5rem}.journal-page .page-heading,.journal-article .page-heading{padding-block:2rem}.journal-page h1,.journal-article h1{font-size:clamp(2.5rem,10vw,3.5rem)}.article-cover img{aspect-ratio:1.25}.article-reading{grid-template-columns:1fr;gap:2rem;padding-block:2rem}.article-toc{position:static;border:1px solid #888a83;padding:1rem}.article-body p{font-size:1rem;line-height:1.85}.article-body h2{font-size:1.8rem}
}
@media(prefers-reduced-motion:reduce){.rhythm-motion .motion-shot{transition:none}.rhythm-motion:hover .motion-shot{transform:none}}
