@font-face{font-family:Manrope;src:url('./manrope-cyrillic.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;src:url('./manrope-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Unbounded;src:url('./unbounded-cyrillic.woff2') format('woff2');font-style:normal;font-weight:500 700;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Unbounded;src:url('./unbounded-latin.woff2') format('woff2');font-style:normal;font-weight:500 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{font-family:Manrope,Arial,sans-serif;color:#152126;background:#f6f7f5;font-synthesis:none;--ink:#152126;--muted:#5b696d;--line:#d9dfdc;--paper:#f6f7f5;--accent:#db5d36;--accent-ink:#fff;scroll-behavior:smooth}
*{box-sizing:border-box}
body{margin:0;min-width:320px}
a{color:inherit}
button,a{touch-action:manipulation}
button{font:inherit}
img,video,iframe{display:block;max-width:100%}
.skip-link{position:absolute;top:-50px;left:12px;background:var(--ink);color:white;padding:10px;z-index:50}
.skip-link:focus{top:12px}
.shell{width:min(1200px,calc(100% - 48px));margin-inline:auto}
.site-header{position:relative;z-index:10;border-bottom:1px solid var(--line);background:rgba(246,247,245,.94)}
.header-inner{min-height:78px;display:flex;align-items:center;gap:30px}
.brand{display:inline-flex;align-items:center;gap:11px;font:700 17px/1 Unbounded,Arial,sans-serif;text-decoration:none;letter-spacing:-.05em;white-space:nowrap}
.brand-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:9px;background:var(--ink);color:#fff;font:700 13px/1 Unbounded,Arial,sans-serif;letter-spacing:-.08em}
.brand small{display:block;margin-top:5px;font:600 10px/1.2 Manrope,Arial,sans-serif;letter-spacing:.14em;color:var(--muted)}
.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.main-nav a{padding:10px 12px;border-radius:9px;font-size:13px;font-weight:700;line-height:1.25;text-decoration:none;color:#39484b;transition:background .2s,color .2s}
.main-nav a:hover,.main-nav a:focus-visible{background:#e9edeb;color:var(--ink)}
.main-nav a[aria-current=page]{background:var(--ink);color:#fff}
.header-contact{border:1px solid var(--ink);padding:12px 16px;border-radius:9px;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap}
.header-contact:hover{background:var(--ink);color:#fff}
.eyebrow{display:inline-flex;gap:9px;align-items:center;margin:0 0 22px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.eyebrow:before{content:"";height:8px;width:8px;border-radius:50%;background:currentColor}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:Unbounded,Arial,sans-serif;letter-spacing:-.055em}
h1{font-size:clamp(2.35rem,5vw,4.7rem);line-height:1.1;margin-bottom:25px;font-weight:600}
.hero h1{font-size:clamp(2.2rem,4.2vw,4rem)}
h2{font-size:clamp(1.85rem,3vw,2.75rem);line-height:1.18;margin-bottom:0;font-weight:600}
h3{font-size:1.08rem;line-height:1.35;margin-bottom:10px}
.lead{font-size:clamp(1.06rem,1.45vw,1.3rem);line-height:1.65;color:#405155;max-width:590px}
.small{font-size:.9rem;line-height:1.6;color:var(--muted)}
.hero{padding:56px 0 78px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.96fr);gap:clamp(34px,5.5vw,78px);align-items:center}
.hero-copy{padding:25px 0}
.hero-copy .lead{margin-bottom:32px}
.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 20px;border-radius:10px;text-decoration:none;font-size:.92rem;font-weight:800;line-height:1.3;border:1px solid transparent;transition:transform .2s,background .2s,color .2s}
.button:hover{transform:translateY(-2px)}
.button:focus-visible,.video-launch:focus-visible,.header-contact:focus-visible,.main-nav a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.button-primary{background:var(--accent);color:var(--accent-ink)}
.button-primary:hover{background:var(--ink)}
.button-secondary{border-color:#bac4c1;background:transparent;color:var(--ink)}
.button-secondary:hover{border-color:var(--ink);background:#edf0ee}
.hero-note{display:flex;align-items:center;gap:12px;margin-top:33px;padding-top:20px;border-top:1px solid var(--line);font-size:.84rem;line-height:1.5;color:var(--muted)}
.hero-note strong{font-weight:800;color:var(--ink)}
.hero-media{min-width:0}
.media-frame{position:relative;overflow:hidden;border-radius:18px;background:#172127;box-shadow:0 22px 60px rgba(20,35,40,.13)}
.media-frame:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);border-radius:inherit;pointer-events:none}
.media-frame video{width:100%;aspect-ratio:16/10;object-fit:cover;background:#0b1418}
.media-frame .video-launch{width:100%;aspect-ratio:16/10}
.media-caption{display:flex;justify-content:space-between;gap:16px;padding:14px 3px;color:var(--muted);font-size:.79rem;line-height:1.5}
.media-caption b{color:var(--ink)}
.video-launch{position:relative;width:100%;border:0;padding:0;cursor:pointer;background:#132026;color:#fff;text-align:left;overflow:hidden}
.video-launch img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;opacity:.84;transition:transform .4s,opacity .4s}
.video-launch:hover img{transform:scale(1.035);opacity:1}
.video-launch:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.65))}
.play-icon{position:absolute;left:24px;bottom:24px;z-index:1;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--accent);box-shadow:0 8px 20px rgba(0,0,0,.2);font-size:1.1rem;padding-left:4px}
.video-label{position:absolute;z-index:1;left:102px;bottom:33px;font-size:.9rem;font-weight:800}
.video-embed{width:100%;aspect-ratio:16/10;border:0}
.section{padding:88px 0;border-top:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:36px}
.section-head p{max-width:410px;margin-bottom:0;color:var(--muted);line-height:1.65}
.section-kicker{display:block;margin-bottom:14px;color:var(--accent);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em}
.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.offer-card{padding:28px;min-height:270px;border:1px solid var(--line);border-radius:15px;background:#fff;display:flex;flex-direction:column}
.offer-card .num{font:600 .82rem/1 Unbounded,Arial,sans-serif;color:var(--accent);margin-bottom:34px}
.offer-card p{color:var(--muted);font-size:.95rem;line-height:1.65;margin-bottom:0}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.work-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}
.work-card video{width:100%;aspect-ratio:16/10;object-fit:contain;background:#0c1214}
.work-card .video-launch{aspect-ratio:16/10}
.work-card-body{padding:22px 24px 25px}
.work-card-body .overline{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:800;margin-bottom:9px}
.work-card-body p{color:var(--muted);font-size:.94rem;line-height:1.6;margin-bottom:0}
.work-card-body a{display:inline-block;margin-top:15px;font-size:.85rem;font-weight:800;text-underline-offset:4px}
.case-results{margin-bottom:32px;padding:30px;border-radius:17px;background:#152a2d;color:#fff}
.case-results-head{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:23px}
.case-results-head h3{font:600 clamp(1.25rem,2vw,1.65rem)/1.3 Unbounded,Arial,sans-serif;letter-spacing:-.04em;margin:0}
.case-results-head span{color:#b8ccca;font-size:.83rem;line-height:1.5}
.case-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#466064;border-radius:11px;overflow:hidden}
.case-metric{min-width:0;padding:24px 18px;background:#213a3d}
.case-metric strong{display:block;font:600 clamp(1.45rem,2.5vw,2.2rem)/1.15 Unbounded,Arial,sans-serif;letter-spacing:-.05em;color:#fff}
.case-metric span{display:block;margin-top:9px;font-size:.83rem;line-height:1.5;color:#c8d8d6}
.case-results-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:22px;margin-top:23px;font-size:.88rem;line-height:1.65;color:#c8d8d6}
.case-results-detail p{margin:0}
.case-results-detail strong{color:#fff}
.case-card-result{display:block;margin-top:14px;color:var(--ink);font-size:.82rem;font-weight:800}
.case-method{margin:23px 0 0;color:var(--muted);font-size:.76rem;line-height:1.65}
.proof-strip{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:20px;margin-top:22px;padding:22px 25px;border-radius:12px;background:#e9eeec;color:#425054;font-size:.87rem;line-height:1.55}
.proof-strip strong{color:var(--ink)}
.process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff}
.process-step{padding:27px;border-right:1px solid var(--line)}
.process-step:last-child{border-right:0}
.process-step .num{font:600 .75rem/1 Unbounded,Arial,sans-serif;color:var(--accent);display:block;margin-bottom:23px}
.process-step p{font-size:.88rem;line-height:1.6;color:var(--muted);margin-bottom:0}
.scope-band{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:38px 42px;border-radius:17px;background:#e8eeeb}
.scope-band h2{font-size:clamp(1.5rem,2.3vw,2.1rem)}
.scope-band p{font-size:.98rem;line-height:1.7;color:#46575a;margin-bottom:0}
.contact-section{background:#142328;color:#fff;border:0}
.contact-section .section-kicker{color:#f89670}
.contact-section h2{max-width:820px}
.contact-section p{max-width:700px;color:#b8c7ca;font-size:1.04rem;line-height:1.7;margin:23px 0 30px}
.contact-section .button-primary{background:#f17b51;color:#17272b}
.contact-section .button-secondary{color:#fff;border-color:#5e7378}
.contact-section .button-secondary:hover{background:#20383d}
.contact-line{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:31px;padding-top:22px;border-top:1px solid #41585d;color:#b8c7ca;font-size:.86rem}
.contact-line strong{color:#fff}
.site-footer{background:#142328;color:#8fa4a8;padding:24px 0 33px}
.footer-inner{border-top:1px solid #41585d;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:.8rem}
.footer-inner a{text-decoration:none;color:#dce6e6}
.footer-inner a:hover{text-decoration:underline}
.theme-product{--accent:#db5d36}
.theme-business{--accent:#2b62c7}
.theme-content{--accent:#177b68}
.theme-hub{--accent:#d86645}
.theme-expert{--accent:#7550a2}
.video-shell{width:100%;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;background:#10191c;overflow:hidden;border-radius:15px}
.video-shell video,.work-card .video-shell video{width:100%;height:100%;max-height:100%;aspect-ratio:auto;object-fit:contain;background:#10191c}
.work-card .video-shell{border-radius:0;aspect-ratio:16/10}
.work-card .video-shell.is-portrait video{width:auto;max-width:100%}
.portrait-grid{margin-top:20px}
.portrait-grid .video-shell{height:440px;aspect-ratio:auto}
.portrait-frame{position:relative;overflow:hidden;border-radius:18px;background:#162226}
.portrait-frame img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:56% center}
.portrait-frame span{position:absolute;left:24px;bottom:22px;padding:8px 12px;background:#152126d9;border-radius:7px;color:#fff;font-size:.8rem}
.home-hero h1{font-size:clamp(2.3rem,4.4vw,4.15rem)}
.direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.direction-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;text-decoration:none;transition:transform .2s,box-shadow .2s}
.direction-card:hover{transform:translateY(-3px);box-shadow:0 15px 40px #15212613}
.direction-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.direction-card>div{padding:25px 27px 28px}
.direction-card h2{font-size:clamp(1.35rem,2.1vw,1.9rem);margin-bottom:14px}
.direction-card p{color:var(--muted);line-height:1.65;margin-bottom:20px}
.direction-card span{font-size:.85rem;font-weight:800}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.about-grid>div{min-width:0}
.about-grid>div>img{width:100%;max-height:570px;object-fit:cover;border-radius:16px}
.about-grid p{color:var(--muted);line-height:1.8;margin:22px 0 0}
.about-grid .text-link{display:inline-block;margin-top:24px;font-weight:800;line-height:1.5;text-underline-offset:4px}
.location-frame{border-radius:18px;overflow:hidden;background:#142328}
.location-frame img{width:100%;max-height:620px;object-fit:cover;aspect-ratio:4/5}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.photo-grid figure{margin:0;min-width:0}
.photo-grid img{width:100%;height:310px;object-fit:cover;border-radius:13px}
.photo-grid figure:first-child img{object-position:center}
.photo-grid figcaption{padding-top:12px;color:var(--muted);font-size:.85rem;line-height:1.5}
.more-work{margin-top:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
.more-work summary{cursor:pointer;font-size:1rem;font-weight:800;line-height:1.6;padding:6px 0}
.more-work[open] summary{margin-bottom:22px}
.hero-note{display:block}
.hero-note strong{margin-right:8px}
@media(max-width:980px){.about-grid{gap:28px}.portrait-frame{max-width:720px}.portrait-frame img{aspect-ratio:4/3}.photo-grid img{height:250px}.location-frame img{aspect-ratio:4/3;max-height:500px}}
@media(max-width:650px){.main-nav{display:grid!important;grid-template-columns:1fr 1fr;gap:4px!important}.main-nav a{font-size:.76rem!important;min-height:42px!important}.direction-grid,.about-grid{grid-template-columns:1fr}.direction-card>div{padding:22px}.photo-grid{grid-template-columns:1fr}.photo-grid img{height:auto;max-height:430px;object-fit:contain;background:#152126}.portrait-grid .video-shell{height:430px}.work-card .video-shell.is-portrait{height:430px;aspect-ratio:auto}.about-grid{gap:25px}.home-hero h1{font-size:2.3rem}.portrait-frame img{aspect-ratio:4/3}.location-frame img{aspect-ratio:4/3}.direction-card h2{font-size:1.5rem}}
.theme-business .button-primary{color:#fff}
.theme-content .button-primary{color:#fff}
.hub-hero{padding:68px 0 46px}
.hub-hero h1{max-width:950px;margin-bottom:20px}
.hub-hero .lead{max-width:750px}
.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-bottom:105px}
.hub-card{min-height:315px;padding:26px;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.hub-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(20,35,40,.08)}
.hub-card .count{font:600 .77rem Unbounded,Arial,sans-serif;color:var(--accent)}
.hub-card h2{font-size:clamp(1.35rem,1.7vw,1.7rem);margin:32px 0 12px}
.hub-card p{font-size:.91rem;color:var(--muted);line-height:1.65}
.hub-card .go{margin-top:auto;padding-top:22px;font-size:.87rem;font-weight:800}
.hub-card:nth-child(2){background:#172a3b;color:#fff}
.hub-card:nth-child(2) p{color:#b2c2cc}
.hub-card:nth-child(2) .count{color:#85b5ff}
.hub-card:nth-child(3){background:#e6efeb}
@media(max-width:980px){.header-inner{flex-wrap:wrap;padding:16px 0;gap:12px}.main-nav{order:3;width:100%;overflow-x:auto;margin-left:0;justify-content:flex-start}.main-nav a{white-space:nowrap}.header-contact{margin-left:auto}.hero-grid{grid-template-columns:1fr;gap:36px}.hero{padding-top:42px}.hero-copy{padding:0}.hero-media{max-width:720px}.offer-grid{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.process-step:nth-child(2){border-right:0}.process-step:nth-child(-n+2){border-bottom:1px solid var(--line)}.hub-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.shell{width:min(100% - 32px,1200px)}.header-inner{min-height:66px}.brand{font-size:15px}.brand-mark{width:34px;height:34px}.header-contact{padding:10px 12px;font-size:.75rem}.main-nav{gap:1px}.main-nav a{padding:9px 10px;font-size:.76rem}.hero{padding:46px 0 57px}.eyebrow{font-size:.68rem}.lead{font-size:1rem}.hero-note{align-items:flex-start}.button{width:100%}.button-row{width:100%}.media-caption{font-size:.73rem}.section{padding:65px 0}.section-head{display:block;margin-bottom:27px}.section-head p{margin-top:17px}.offer-grid,.work-grid,.scope-band,.hub-grid{grid-template-columns:1fr}.offer-card{min-height:0;padding:23px}.offer-card .num{margin-bottom:25px}.proof-strip{grid-template-columns:1fr;gap:10px}.process{grid-template-columns:1fr}.process-step{border-right:0!important;border-bottom:1px solid var(--line)}.process-step:last-child{border-bottom:0}.scope-band{padding:29px;gap:14px}.hub-hero{padding:58px 0 34px}.hub-grid{padding-bottom:70px}.hub-card{min-height:260px}.footer-inner{flex-direction:column}.case-results{padding:23px}.case-results-head{display:block}.case-results-head span{display:block;margin-top:9px}.case-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.case-metric{padding:18px 14px}.case-results-detail{grid-template-columns:1fr;gap:10px}}
@media(max-width:650px){.main-nav{overflow:visible}.main-nav a{display:flex;align-items:center;justify-content:center;flex:1;min-height:47px;min-width:0;padding:8px 4px;white-space:normal;text-align:center;font-size:.69rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Revision: clear service copy, grouped portfolio and contact choice. */
.header-contact{display:inline-flex;align-items:center;gap:8px}
.portrait-frame span{right:20px;left:20px;line-height:1.45}
.text-hero .hero-copy{max-width:900px}.text-hero .lead{max-width:760px}
.featured-case-copy{padding:22px 3px 0}.featured-case-copy .section-kicker{margin-bottom:9px}.featured-case-copy h3{font-size:1.2rem}.featured-case-copy p{font-size:1rem;line-height:1.65;color:var(--muted);margin-bottom:12px}
.case-details{margin-top:12px}.case-details summary{font-size:.9rem;font-weight:800;text-underline-offset:4px;cursor:pointer}.case-details[open] p{margin-top:13px}
.about-story{max-width:1060px;margin:auto}.cinema-still{overflow:hidden;border-radius:18px}.cinema-still img{width:100%;aspect-ratio:40/17;object-fit:cover;object-position:center}
.about-text{max-width:850px;margin:40px auto 0}.about-text p{font-size:1.05rem;line-height:1.85;color:var(--muted);margin:24px 0 0}
.expert-hero-image{overflow:hidden;border-radius:17px;background:#111}.expert-hero-image img{width:100%;height:auto;aspect-ratio:2.4;object-fit:cover}
.single-still{margin:0;max-width:900px}.single-still img{width:100%;height:auto;border-radius:17px}
.theme-expert .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-collection{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white;margin:0 0 32px}
.project-collection>summary{position:relative;display:block;cursor:pointer;list-style:none;isolation:isolate;min-height:285px}
.project-collection>summary::-webkit-details-marker,.photo-collection>summary::-webkit-details-marker{display:none}
.project-collection>summary>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 39%;z-index:-2}
.collection-fade{position:absolute;inset:18% 0 0;background:linear-gradient(180deg,transparent 0%,rgba(246,247,245,.7) 52%,#f6f7f5 90%);z-index:-1}
.collection-fade:after{content:"";position:absolute;inset:25% 0 0;backdrop-filter:blur(5px);mask-image:linear-gradient(transparent,#000)}
.collection-caption{display:block;padding:130px 32px 26px}.collection-caption>.section-kicker{margin-bottom:10px}.collection-caption>strong{font:600 clamp(1.4rem,2.5vw,2rem)/1.3 Unbounded,Arial,sans-serif;letter-spacing:-.045em}
.collection-action{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font-weight:800;font-size:.9rem}.collection-plus{display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--ink);border-radius:50%;font-size:1.3rem;transition:transform .2s}
.when-open{display:none}.project-collection[open] .when-open{display:inline}.project-collection[open] .when-closed{display:none}.project-collection[open] .collection-plus{transform:rotate(45deg)}
.collection-body{padding:24px;border-top:1px solid var(--line)}
.project-collection summary:focus-visible,.photo-collection summary:focus-visible,.case-details summary:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}
.project-collection .portrait-grid{margin-top:0}.project-collection:has(img[src*="sportswear"])>summary>img{object-position:center 28%}
.visual-studies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.visual-studies figure{margin:0}.visual-studies>figure>img,.photo-collection>summary>img{width:100%;height:310px;object-fit:cover;border-radius:13px}.visual-studies figcaption,.photo-collection summary>span{display:block;font-size:.9rem;line-height:1.5;color:var(--muted);padding:12px 0}
.photo-collection>summary{list-style:none;cursor:pointer}.photo-collection summary>span{display:flex;justify-content:space-between;font-weight:700}.photo-collection[open]{grid-column:span 2}.photo-collection[open]>summary>img{height:210px}.photo-collection[open] summary b{transform:rotate(45deg)}
.still-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:8px 0 14px}.still-carousel figure{flex:0 0 86%;scroll-snap-align:start}.still-carousel img{width:100%;height:290px;object-fit:contain;background:#142328;border-radius:12px}.mini-fruits-study{max-width:780px;margin-top:36px}
.technical-story{max-width:940px;margin:auto}.technical-copy p,.case-intro p{font-size:1.04rem;line-height:1.8;color:var(--muted);margin:25px 0 0}.technical-copy .text-link{display:inline-block;margin-top:23px;font-weight:800;text-underline-offset:4px}
.case-intro{max-width:920px}.case-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:33px 0 40px}.case-journey article{padding:24px 0;border-top:1px solid var(--line)}.case-journey article>span{display:block;color:var(--accent);font-weight:800;margin-bottom:18px}.case-journey p{font-size:1rem;line-height:1.7;color:var(--muted);margin:0}
.case-metric:first-child strong{font-size:clamp(1rem,1.85vw,1.5rem);line-height:1.6;white-space:nowrap}.case-metric:nth-child(4) strong{font-size:clamp(1.05rem,1.75vw,1.5rem);line-height:1.6}
.case-records{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.case-records a{padding:25px 21px;border:1px solid var(--line);border-radius:14px;text-decoration:none;background:white}.case-records a:hover{border-color:var(--accent)}.case-records span{font-size:.83rem;color:var(--accent);font-weight:800}.case-records strong{display:block;font:600 clamp(1.4rem,2.3vw,2rem)/1.3 Unbounded,Arial,sans-serif;margin:18px 0}.case-records p{font-size:.93rem;line-height:1.55;color:var(--muted);margin:0}.metric-date{font-size:.82rem;line-height:1.5;color:var(--muted);margin:18px 0 35px}
.clicks-band{display:flex;align-items:center;gap:30px;padding:30px 35px;border-radius:16px;background:#e1ebe5;margin-bottom:30px}.clicks-band>strong{font:600 clamp(2.5rem,5vw,4rem)/1.2 Unbounded,Arial,sans-serif;color:#1b5a4d}.clicks-band h3{font-size:1.2rem}.clicks-band p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.6}.case-card-result{font-size:.95rem}.case-explanation{margin-top:17px!important}.analytics-scope{margin-top:18px!important}
.contact-dialog{width:min(470px,calc(100% - 32px));max-height:calc(100dvh - 40px);border:1px solid #fff8;border-radius:23px;padding:34px;background:#f8faf8;color:var(--ink);box-shadow:0 30px 100px #0004;overflow:auto}
.contact-dialog::backdrop{background:#0c1a21a6;backdrop-filter:blur(7px)}
.contact-dialog[open]{animation:contact-in .23s ease-out}.contact-dialog[open]::backdrop{animation:backdrop-in .2s ease-out}
.dialog-close{position:absolute;right:15px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:1.8rem;cursor:pointer}.dialog-close:hover{background:#e4eae7}.contact-dialog .section-kicker{margin:12px 20px 17px 0;font-size:.7rem}.contact-dialog h2{font-size:1.8rem;line-height:1.2}.contact-dialog>p{font-size:1rem;line-height:1.6;color:var(--muted);margin:17px 0 27px}
.contact-options{display:grid;gap:12px}.contact-option{display:flex;align-items:center;gap:14px;padding:17px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;transition:transform .18s,border-color .18s}.contact-option:hover{transform:translateY(-2px);border-color:var(--accent)}.contact-option>span:nth-child(2){min-width:0;flex:1}.contact-option strong{display:block;font-size:1rem}.contact-option small{display:block;font-size:.8rem;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.contact-icon{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:12px;background:#e9f4fb;color:#268bc2}.email-option .contact-icon{background:#e7ece8;color:#527467}.contact-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.dialog-close:focus-visible,.contact-option:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@keyframes contact-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
@media(max-width:980px){.case-records{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-studies{grid-template-columns:repeat(2,minmax(0,1fr))}.expert-hero-image{max-width:100%}}
@media(max-width:650px){.hero-work-link{display:none}.theme-expert .offer-grid,.case-journey,.visual-studies{grid-template-columns:1fr}.about-text{margin-top:27px}.about-text p{font-size:1rem;line-height:1.75}.cinema-still,.expert-hero-image{border-radius:12px}.project-collection>summary{min-height:260px}.collection-caption{padding:118px 22px 22px}.collection-caption>.section-kicker{font-size:.68rem;letter-spacing:.1em}.collection-body{padding:14px}.photo-collection[open]{grid-column:auto}.visual-studies>figure>img,.photo-collection>summary>img{height:auto;max-height:420px;object-fit:contain}.still-carousel img{height:250px}.case-journey{gap:0}.case-records{gap:10px}.case-records a{padding:18px 14px}.case-records p{font-size:.88rem}.case-records strong{font-size:1.4rem}.case-metric:first-child strong{font-size:1rem}.case-metric:nth-child(4) strong{font-size:1rem}.clicks-band{padding:25px;gap:17px;align-items:flex-start;flex-direction:column}.clicks-band h3{font-size:1.08rem}.contact-dialog{padding:28px 22px;border-radius:20px}.contact-dialog h2{font-size:1.65rem}.contact-option{padding:16px 11px;gap:10px}.contact-option strong{font-size:.92rem}.contact-option small{font-size:.76rem}.contact-dialog .section-kicker{font-size:.65rem}.header-contact>span{display:none}.portrait-frame span{font-size:.72rem;left:12px;right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){.contact-dialog[open],.contact-dialog[open]::backdrop{animation:none}.collection-plus,.contact-option{transition:none}}

/* Single-film card: the same cover treatment as the project collections. */
.project-film{height:285px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#10191c;margin:0 0 32px}
.project-film-trigger{display:block;position:relative;isolation:isolate;width:100%;height:100%;padding:0;border:0;text-align:left;color:var(--ink);background:var(--paper);cursor:pointer}
.project-film-trigger>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 47.62%;z-index:-2}
.project-film-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}
.project-film-trigger[hidden],.project-film>video[hidden]{display:none}
.project-film>video{display:block;width:100%;height:100%;object-fit:contain;background:#10191c}
.film-play{display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--ink);border-radius:50%;transition:background .2s,color .2s}
.film-play svg{width:17px;height:17px;fill:currentColor}
.project-film-trigger:hover .film-play{background:var(--ink);color:var(--paper)}
@media(max-width:650px){.project-film{height:260px}}
@media(prefers-reduced-motion:reduce){.film-play{transition:none}}

/* Personal channel is secondary to the project contact options. */
.about-channel a,.channel-note a,.dialog-channel a{font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.about-channel a:hover,.channel-note a:hover,.dialog-channel a:hover{text-decoration-thickness:2px}
.about-channel a:focus-visible,.channel-note a:focus-visible,.dialog-channel a:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}
.contact-section .channel-note{font-size:.9rem;line-height:1.7;max-width:620px;margin:26px 0 0;padding-top:22px;border-top:1px solid #ffffff26;color:#b8c7ca}
.channel-note a{color:#fff}
.dialog-channel{border-top:1px solid var(--line);margin-top:23px;padding-top:18px}
.dialog-channel p{margin:0;color:var(--muted);font-size:.875rem;line-height:1.65}
.dialog-channel a{color:var(--ink)}
