/* Revision 2: owner's Alpine reference, cinematic scale and the real agency team. */
:root{--paper:#f4f0e8;--ink:#222723;--muted:#575d56;--line:#cfcfc4;--surface:#e9e5dc;--accent:#fcb415;--focus:#856000;--radius:14px;--gutter:clamp(22px,4.5vw,72px)}
:root[data-theme=dark]{--paper:#19211f;--ink:#f5f2eb;--muted:#c4c9c1;--line:#46514a;--surface:#252f29;--focus:#fcb415}
body{overflow-x:clip}h1,h2,h3{letter-spacing:-.035em}h2{font-size:clamp(38px,4.7vw,70px)}.wrap{max-width:1600px}.section{padding-block:clamp(70px,7vw,112px)}
.button{min-height:52px;border-radius:4px;font-size:14px;gap:18px;padding:13px 23px;transition:background-color 180ms,color 180ms,transform 160ms var(--ease)}
.button svg,.text-link svg{transition:transform 220ms var(--ease)}.button:hover svg,.text-link:hover svg{transform:translateX(4px)}.button:active{transform:scale(.98)}
.site-header{height:96px}.brand{width:247px}.desktop-nav{gap:40px}.header-tools{gap:17px}.desktop-nav>a,.nav-service>summary{font-size:13px}.header-cta .button{min-height:44px;font-size:12px;letter-spacing:.06em}.nav-popover{color:var(--ink);transform-origin:top left}.nav-service[open] .nav-popover{animation:menu-enter 180ms var(--ease)}
body[data-page=home] .site-header{position:absolute;inset:0 0 auto;max-width:none;padding-inline:4.5vw;background:transparent;color:#fff;border:0}
body[data-page=home] .site-header .brand-light{display:none}body[data-page=home] .site-header .brand-dark{display:block}body[data-page=home] .site-header .languages a{color:#d2d9dc}body[data-page=home] .site-header .languages [aria-current]{color:#fff}body[data-page=home] .site-header .button{background:transparent;color:var(--accent);border-color:var(--accent)}
body[data-page=home] .site-header .icon-button:hover{background:#ffffff17}
.film-hero{position:relative;isolation:isolate;height:685px;min-height:600px;color:#fff;background:#1a2b38;overflow:clip;text-align:center}
.film-landscape{position:absolute;inset:0;z-index:-2}.film-landscape img{width:100%;height:100%;object-fit:cover;object-position:center 54%}
.film-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#10233330 0%,#13202518 50%,#0c151842 100%);pointer-events:none}
.film-hero-content{padding-top:172px;position:relative}.film-hero h1{font-size:21px;line-height:1.2;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.film-hero .hero-wordmark{display:flex;justify-content:center;font-size:clamp(130px,13.7vw,202px);font-weight:850;line-height:.97;letter-spacing:-.035em;margin-top:17px}.film-hero .hero-wordmark>span{display:inline-block}
.film-hero-content>p{font-size:18px;letter-spacing:.13em;text-transform:uppercase;max-width:none;margin-top:23px;color:#fff}.film-hero .actions{justify-content:center;margin-top:35px;gap:18px}.film-hero .button{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;min-height:46px}.film-hero .button:not(.primary){border-color:#fff9;background:#14222b35;color:#fff;backdrop-filter:blur(5px)}.film-hero .button:not(.primary):hover{background:#14222b85}
.studio-intro{display:grid;grid-template-columns:.82fr 1.5fr;gap:5%;padding-block:42px 82px;align-items:start}.studio-intro-copy{padding-top:38px}.studio-intro h2{font-size:clamp(38px,4.65vw,67px);line-height:1.01}.studio-intro-copy>p{font-size:17px;line-height:1.65;color:var(--muted);margin-top:24px;max-width:450px}.studio-intro .text-link{margin-top:26px;font-size:14px}.core-team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.portrait-frame{position:relative;aspect-ratio:.7;background:#dba520;overflow:hidden;border-radius:3px}.portrait-frame img{position:absolute;max-width:none;width:194%;height:auto;left:-47%;top:-12%}.portrait-frame.lea-keller img{top:-11%}.person-caption{padding-top:17px}.person-caption h3{font-size:19px;letter-spacing:-.02em;line-height:1.2}.person-caption p{font-size:11px;margin-top:6px;line-height:1.4;color:var(--muted)}.support-team{display:flex;gap:50px;margin-top:42px;padding-top:32px;border-top:1px solid var(--line)}.support-team article{display:flex;gap:18px;align-items:center}.support-team img{width:72px;height:72px;border-radius:50%}.support-team h3{font-size:18px}.support-team p{font-size:13px;color:var(--muted);margin-top:5px}
@keyframes menu-enter{from{opacity:0;transform:translateY(-5px) scale(.98)}to{opacity:1;transform:none}}
@keyframes film-enter{from{clip-path:inset(0 0 6% 0);transform:scale(1.055)}to{clip-path:inset(0);transform:scale(1)}}
@keyframes letter-enter{from{opacity:0;transform:translateY(28%) rotate(2deg);filter:blur(4px)}to{opacity:1;transform:none;filter:blur(0)}}
.motion-ready .film-landscape{animation:film-enter 1100ms var(--ease) both}.motion-ready .film-hero .hero-wordmark>span{animation:letter-enter 750ms var(--ease) both;animation-delay:calc(var(--i,0)*45ms + 80ms)}
.film-hero .hero-wordmark>span:nth-child(2){--i:1}.film-hero .hero-wordmark>span:nth-child(3){--i:2}.film-hero .hero-wordmark>span:nth-child(4){--i:3}.film-hero .hero-wordmark>span:nth-child(5){--i:4}.film-hero .hero-wordmark>span:nth-child(6){--i:5}
@media(max-width:1100px){.desktop-nav{gap:25px}.header-tools{gap:10px}.brand{width:210px}.studio-intro{grid-template-columns:.8fr 1.5fr;gap:4%}.studio-intro-copy{padding-top:15px}.studio-intro-copy>p{font-size:15px}.person-caption h3{font-size:16px}.person-caption p{font-size:10px}}
@media(max-width:900px){.site-header{height:80px}.mobile-nav{top:80px}.film-hero{height:630px;min-height:0}.film-hero-content{padding-top:185px}.film-hero h1{font-size:17px}.film-hero .hero-wordmark{font-size:17vw}.film-hero-content>p{font-size:14px;letter-spacing:.06em}.studio-intro{grid-template-columns:1fr;padding-top:52px;gap:32px}.studio-intro-copy{padding:0;max-width:680px}.studio-intro h2 br{display:none}.studio-intro-copy>p{font-size:18px}.core-team{gap:20px}.person-caption h3{font-size:21px}.person-caption p{font-size:12px}.portrait-frame{aspect-ratio:.86}.portrait-frame img{width:178%;left:-39%;top:-15%}}
@media(max-width:620px){body[data-page=home] .site-header{padding-inline:22px}.site-header{height:76px}.brand{width:173px}.header-tools{gap:3px}.mobile-nav{top:76px}.film-hero{height:650px}.film-landscape img{object-position:52% 50%}.film-hero-content{padding-top:200px}.film-hero h1{font-size:13px;letter-spacing:.13em}.film-hero .hero-wordmark{font-size:23vw;margin-top:16px}.film-hero-content>p{font-size:12px;line-height:1.8;letter-spacing:.065em;max-width:280px;margin:22px auto 0}.film-hero .actions{gap:10px;margin-top:29px}.film-hero .button{min-height:46px;font-size:10px;letter-spacing:0;gap:8px;padding-inline:13px}.film-hero .button svg{width:16px}.studio-intro{padding-block:48px 55px;gap:28px}.studio-intro h2{font-size:43px}.studio-intro h2 br{display:block}.studio-intro-copy>p{font-size:16px}.core-team{gap:9px}.portrait-frame{aspect-ratio:.65}.portrait-frame img{width:204%;left:-52%;top:-10%}.person-caption{padding-top:12px}.person-caption h3{font-size:14px;line-height:1.2;max-width:85px}.person-caption p{font-size:10px;line-height:1.35}.support-team{gap:24px;flex-wrap:wrap}.support-team img{width:65px;height:65px}.support-team h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.motion-ready .film-landscape,.motion-ready .film-hero .hero-wordmark>span,.nav-service[open] .nav-popover{animation:none}.button svg,.text-link svg{transition:none}}

/* Agency proof: complete client wall and spacious, cinematic work. */
.keyboard-open .nav-popover,.keyboard-open .capability-body{animation:none!important}.capability-body{padding-left:0}.cap-plus svg{width:23px;height:23px}
.client-section{padding-bottom:90px}.client-heading{display:flex;align-items:baseline;justify-content:space-between;gap:28px;margin-bottom:30px}.client-heading h2{font-size:23px;letter-spacing:-.025em}.client-heading>span{font-size:14px;color:var(--muted)}
.client-wall{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#e5e4df;border:1px solid #e5e4df;border-radius:10px;overflow:hidden}.client-mark{background:#fff;display:flex;align-items:center;justify-content:center;min-height:90px;padding:16px 20px}.client-mark img{width:100%;height:58px;object-fit:contain;mix-blend-mode:multiply}.client-mark:nth-child(-n+7){min-height:112px}.client-mark:nth-child(-n+7) img{height:68px}
.selected-work{background:#26322e;color:#f8f5ef}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.work-heading h2{max-width:800px}.selected-work .text-link{border-color:#aaa;color:#fff;white-space:nowrap}.selected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.work-card{text-decoration:none;min-width:0}.selected-grid .work-image{aspect-ratio:.79;overflow:hidden;border-radius:10px}.work-image img{transition:transform 650ms cubic-bezier(.22,1,.36,1)}.selected-grid .work-info{margin-top:20px;align-items:start}.selected-grid .work-info h3{font-size:clamp(22px,2.1vw,31px)}.selected-grid .work-info p{color:#c5cec9;font-size:13px;margin-top:9px}.selected-grid .work-info svg{margin-top:5px}.portfolio{padding-top:0}.portfolio .work-grid{gap:55px 30px}.portfolio .work-image{aspect-ratio:1.4;border-radius:10px}.work-footer{display:flex;gap:30px;flex-wrap:wrap}
.capabilities{display:grid;grid-template-columns:.85fr 1.3fr;gap:10%}.capability-title h2{font-size:clamp(40px,4.5vw,66px)}.capability-title>p{font-size:18px;line-height:1.65;color:var(--muted);margin-top:28px;max-width:370px}.capability{border-top:1px solid var(--line)}.capability:last-child{border-bottom:1px solid var(--line)}.capability summary{display:flex;align-items:center;list-style:none;cursor:pointer;gap:24px;padding-block:28px}.capability summary::-webkit-details-marker{display:none}.capability h3{font-size:clamp(26px,2.5vw,36px);font-weight:650;flex:1}.cap-number{font-size:12px;color:var(--muted);align-self:center}.cap-plus{font-size:27px;font-weight:350;transition:transform 220ms var(--ease)}.capability[open] .cap-plus{transform:rotate(45deg)}.capability-body{display:flex;align-items:start;gap:24px;padding:0 0 30px 39px}.capability-body p{color:var(--muted);font-size:16px;line-height:1.7;margin-bottom:16px}.capability-body .text-link{font-size:14px;margin-top:8px}.service-art{width:75px;height:82px;object-fit:contain;flex-shrink:0;margin-top:6px}.capability[open] .capability-body{animation:menu-enter 250ms var(--ease)}
.showreel-section{border-top:1px solid var(--line)}.showreel-section .section-title{display:flex;align-items:end;justify-content:space-between;max-width:none;gap:8%}.showreel-section .section-title>p{width:38%;font-size:18px;margin-bottom:5px}.showreel-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:26px;align-items:start}.showreel-grid .video-block{margin-top:0}.showreel-grid .video-block:nth-child(2){margin-top:100px}.video-title{font-size:17px;line-height:1.35;margin-top:15px;letter-spacing:-.012em;font-weight:650;overflow-wrap:anywhere}.video-note{font-size:12px;line-height:1.6;max-width:49ch;margin-top:8px}.video-note a{display:inline;margin-left:0;white-space:nowrap}.video-note svg{width:12px;height:12px}.video-play{background:#0001}.video-play>span{width:62px;height:62px;background:#fcb415;color:#222723}.video-screen{border-radius:10px;isolation:isolate}.portrait-video .video-screen{aspect-ratio:9/16}.video-screen img{transition:transform 600ms var(--ease)}.video-block:has(.video-play:hover) .video-screen img{transform:scale(1.025)}
.editorial{padding-block:20px 65px}.editorial-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-block:50px;border-top:1px solid var(--line)}.editorial-section h2{font-size:clamp(28px,3.2vw,48px);max-width:550px}.editorial-section p{font-size:18px;line-height:1.8;color:var(--muted)}.editorial-section p+p{margin-top:20px}.editorial-section a{text-decoration:underline}.editorial-section h2,.editorial-section p{overflow-wrap:break-word}
.clip-section{background:var(--surface);overflow:clip}.rail-heading{display:flex;justify-content:space-between;align-items:end;gap:28px}.rail-heading p{margin-top:24px;color:var(--muted);font-size:18px}.rail-controls{display:flex;gap:12px}.rail-controls .icon-button{width:52px;height:52px;border:1px solid var(--line);border-radius:50%}.rail-controls .icon-button:disabled{opacity:.3}.clip-rail{display:flex;align-items:start;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);padding:40px var(--gutter) 22px;scrollbar-width:thin;scrollbar-color:var(--muted) transparent}.clip-rail>.video-block{flex:0 0 clamp(240px,24vw,340px);scroll-snap-align:start;margin-top:0}.clip-rail .video-screen{aspect-ratio:9/16}.clip-rail .video-screen img{object-fit:cover}.clip-rail>.landscape-video{flex-basis:clamp(300px,34vw,480px)}.clip-rail>.landscape-video .video-screen{aspect-ratio:16/9}.clip-rail .video-note{font-size:12px}.clip-rail .video-title{font-size:18px}
.agency-closing{padding-block:125px;text-align:center;border-bottom:1px solid var(--line)}.agency-closing h2{font-size:clamp(45px,7.4vw,108px)}.agency-closing>p{margin:25px auto 34px;font-size:19px;color:var(--muted)}.agency-closing .button{font-size:15px;min-height:56px}.site-footer{padding-top:62px}.site-footer .brand{width:235px}.footer-top{padding-bottom:40px}.footer-bottom{padding-block:25px}
.studio-team{padding-block:0 65px;max-width:1450px}.studio-team .core-team{gap:25px}.studio-team .portrait-frame{aspect-ratio:.85}.studio-team .portrait-frame img{width:180%;left:-40%;top:-14%}.studio-team .person-caption h3{font-size:28px}.studio-team .person-caption p{font-size:15px}.studio-team .support-team{margin-top:50px}.studio-team .support-team img{width:80px;height:80px}
.video-collection>h2{font-size:clamp(34px,4vw,58px);margin-bottom:35px}.video-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 26px;align-items:start}.video-gallery .video-block{margin-top:0}.video-gallery:has(>.video-block:only-child){grid-template-columns:1fr;max-width:1200px}.video-gallery:has(>.video-block:only-child) .portrait-video{max-width:450px}.video-collection:has(.landscape-video):not(:has(.portrait-video)) .video-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.video-collection:has(.video-block:only-child) .video-gallery{grid-template-columns:1fr}.case-visual{padding-bottom:55px}.case-visual .wide-photo{max-height:650px;object-fit:cover;border-radius:10px}.case-related .work-grid{margin-top:30px}.case-layout .case-meta{padding-bottom:50px}.ai-case{display:grid;grid-template-columns:1fr .65fr;gap:10%;align-items:center}.ai-case p{font-size:20px;color:var(--muted);margin-block:25px}.ai-case-photo{width:100%;max-height:500px;object-fit:cover;border-radius:10px}.service-illustrations{display:grid;grid-template-columns:.65fr 1fr;align-items:center;gap:10%}.service-illustrations>img{max-height:420px;object-fit:contain;justify-self:center}.service-illustrations p{font-size:20px;color:var(--muted);margin-top:25px}.phone-art{display:flex;gap:20px;margin-top:25px}.phone-art img{width:75px;height:140px;object-fit:contain}.library-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px}.library-filters [aria-pressed=true]{background:var(--ink);color:var(--paper)}.film-library{padding-top:0}.library-item .video-screen{aspect-ratio:4/3}.library-item.portrait-video .video-screen{aspect-ratio:9/16}.library-item .portrait-video .video-screen img{object-fit:contain;background:#131917}.film-library .video-gallery{gap:50px 25px}
@media(max-width:1100px){.client-wall{grid-template-columns:repeat(6,minmax(0,1fr))}.client-mark{padding:13px;min-height:90px}.client-mark:nth-child(-n+7){min-height:90px}.client-mark:nth-child(-n+7) img{height:58px}.capabilities{gap:6%;grid-template-columns:.9fr 1.3fr}.capability-body{padding-left:0}.selected-grid{gap:18px}.editorial-section{gap:6%}.video-gallery{gap:40px 20px}}
@media(max-width:900px){.client-heading{display:block}.client-heading>span{display:block;margin-top:12px}.client-wall{grid-template-columns:repeat(5,minmax(0,1fr))}.selected-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.work-heading{align-items:start}.work-heading h2{font-size:42px}.selected-grid .work-info h3{font-size:21px}.selected-grid .work-info>svg{display:none}.capabilities{grid-template-columns:1fr;gap:45px}.capability-title>p{max-width:580px}.showreel-section .section-title{display:block}.showreel-section .section-title>p{width:auto;max-width:600px;margin-top:25px}.showreel-grid{grid-template-columns:1fr 1fr}.showreel-grid .video-block:nth-child(2){margin-top:60px}.editorial-section p{font-size:16px}.studio-team .person-caption h3{font-size:21px}.studio-team .person-caption p{font-size:12px}.video-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.rail-heading p{font-size:16px}.agency-closing{padding-block:90px}}
@media(max-width:620px){.client-section{padding-bottom:55px}.client-heading h2{font-size:22px}.client-heading>span{font-size:13px}.client-wall{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:6px}.client-mark,.client-mark:nth-child(-n+7){min-height:78px;padding:10px}.client-mark img,.client-mark:nth-child(-n+7) img{height:47px}.work-heading{display:block;margin-bottom:32px}.work-heading h2{font-size:43px}.work-heading .text-link{margin-top:25px}.selected-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:22px;padding-bottom:18px;gap:18px}.selected-grid .work-card{flex:0 0 83%;scroll-snap-align:start}.selected-grid .work-image{aspect-ratio:.9}.selected-grid .work-info h3{font-size:24px}.capability-title h2{font-size:43px}.capability-title>p{font-size:17px;margin-top:22px}.capability summary{padding-block:24px;gap:17px}.capability h3{font-size:26px}.capability-body{gap:15px}.capability-body p{font-size:15px}.service-art{width:55px;height:62px}.showreel-grid{grid-template-columns:1fr;gap:35px}.showreel-grid .video-block:nth-child(2){margin-top:0}.showreel-section .section-title>p{font-size:17px}.showreel-section .section-title{margin-bottom:30px}.video-play>span{width:52px;height:52px}.video-play svg{width:21px;height:21px}.editorial{padding-bottom:30px}.editorial-section{grid-template-columns:1fr;gap:22px;padding-block:36px}.editorial-section h2{font-size:32px}.editorial-section p{font-size:16px;line-height:1.75}.rail-heading{align-items:start;gap:18px}.rail-heading h2{font-size:37px}.rail-heading p{margin-top:19px}.rail-controls{gap:6px}.rail-controls .icon-button{width:40px;min-width:40px;height:40px;min-height:40px}.rail-controls .icon-button svg{width:18px}.clip-rail{gap:18px;padding-top:28px}.clip-rail>.video-block{flex-basis:76%}.clip-rail>.landscape-video{flex-basis:86%}.agency-closing{padding-block:78px}.agency-closing h2{font-size:47px}.agency-closing>p{font-size:17px;max-width:300px}.footer-top{gap:32px}.portfolio .work-grid{gap:38px}.studio-team .core-team{gap:10px}.studio-team .portrait-frame{aspect-ratio:.62}.studio-team .portrait-frame img{width:204%;left:-52%;top:-10%}.studio-team .person-caption h3{font-size:15px}.studio-team .person-caption p{font-size:10px}.studio-team .support-team{margin-top:30px}.studio-team .support-team img{width:60px;height:60px}.video-gallery,.video-collection:has(.landscape-video):not(:has(.portrait-video)) .video-gallery{grid-template-columns:1fr}.portrait-video{max-width:420px;margin-inline:auto}.video-gallery .portrait-video{width:100%}.library-item{min-width:0}.film-library .video-gallery{gap:40px}.ai-case,.service-illustrations{grid-template-columns:1fr;gap:30px}.ai-case h2{font-size:38px}.ai-case p,.service-illustrations p{font-size:17px}.ai-case-photo{max-height:450px}.service-illustrations>img{max-height:300px}.video-title{font-size:16px}.video-note{font-size:12px}.work-footer{gap:22px}.library-filters{gap:8px}.library-filters .button{font-size:13px;padding:10px 15px;min-height:43px}}
@media(prefers-reduced-motion:reduce){.capability[open] .capability-body{animation:none}.cap-plus,.work-image img,.video-screen img{transition:none}.clip-rail{scroll-behavior:auto}}
.client-wall{background:#fff}.client-mark{border-right:1px solid #eeede9;border-bottom:1px solid #eeede9}.selected-grid .work-image img,.portfolio .work-image img{width:100%;height:100%;object-fit:cover}.portrait-frame{border-radius:12px}.capability-body{padding-left:0}
.social-links{display:flex;gap:28px;padding-bottom:30px}.social-links a{display:inline-flex;gap:9px;align-items:center;font-size:14px;text-decoration:none}.social-links svg{width:15px;height:15px}
/* Finish review: preserve the subjects when wide originals enter portrait frames. */
.work-card[data-project=sap] .work-image img{object-position:12% center}.work-card[data-project=ey] .work-image img{object-position:70% center}.work-card[data-project=kantonspolizei-basel-stadt] .work-image img{object-position:29% center}
@media(min-width:901px){.studio-intro .portrait-frame{aspect-ratio:.94}.studio-intro .portrait-frame img{width:204%;left:-52%;top:-18%}.studio-intro .portrait-frame.lea-keller img{top:-18%}}
@media(max-width:900px){.studio-intro .portrait-frame img,.studio-intro .portrait-frame.lea-keller img{width:220%;left:-60%;top:-17%}}
@media(max-width:620px){.studio-intro .portrait-frame img,.studio-intro .portrait-frame.lea-keller img{top:-13%}}
