/* ZIAD Studio Edition / V22 — design enhancements with no external runtime */
:root{--v22-accent:#dbd1bc;--v22-ink:#0d0d0d}
html{scroll-padding-top:94px}
body{overflow-x:clip}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid currentColor!important;outline-offset:4px}
.v17-hero .v17-feature-main video{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;transition:transform .8s cubic-bezier(.2,.8,.2,1);filter:saturate(.83) contrast(1.07)}
.v17-feature-main:hover video{transform:scale(1.04)}
.v17-feature-main .v22-hero-video-tag{position:absolute;z-index:2;top:14px;left:14px;font:700 10px/1.2 'DM Sans',sans-serif;letter-spacing:.14em;color:white;background:#0b0b0bba;padding:9px 11px;border:1px solid #ffffff3d;backdrop-filter:blur(10px)}
.v22-inline-cta{display:inline-flex;gap:12px;align-items:center;justify-content:space-between;text-decoration:none;border:1px solid currentColor;padding:13px 18px;border-radius:2px;color:inherit;transition:background .25s,color .25s}
.v22-inline-cta:hover{background:var(--text,#eee);color:var(--bg,#111)}
.v22-reels{padding:100px 0 108px;position:relative;background:#0b0b0b;color:#f4f1eb;overflow:hidden;isolation:isolate}
.v22-reels:before{content:'MOTION';position:absolute;inset:0 auto auto -2vw;font:900 clamp(170px,24vw,380px)/1 'DM Sans',sans-serif;letter-spacing:-.11em;color:#ffffff08;z-index:-1;pointer-events:none}
.v22-reels-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}
.v22-kicker{font:700 11px/1.4 'DM Sans',sans-serif;letter-spacing:.19em;text-transform:uppercase;color:#c4b7a2}
.v22-reels h2{font-size:clamp(36px,5.8vw,80px);font-weight:800;line-height:1.13;letter-spacing:-.04em;margin:12px 0 14px}
.v22-reels h2 em{font-style:normal;color:#b2aa9f}
.v22-reels-intro{max-width:480px;color:#b7b2aa;font-size:15px;line-height:1.9}
.v22-reels-link{color:#eee;font-size:13px;text-decoration:none;border-bottom:1px solid #8a8478;padding-bottom:12px;white-space:nowrap;flex-shrink:0}
.v22-reels-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.v22-reel-card{position:relative;min-width:0}
.v22-reel-cover{position:relative;overflow:hidden;aspect-ratio:9/13.4;background:#222;border-radius:3px;isolation:isolate}
.v22-reel-cover img,.v22-reel-cover video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;display:block;transition:transform .65s ease,opacity .3s ease}
.v22-reel-cover:after{content:'';background:linear-gradient(transparent 50%,#0009);position:absolute;inset:0;pointer-events:none}
.v22-reel-card:hover img{transform:scale(1.05)}
.v22-reel-cover .v22-preview-video{z-index:1;object-fit:cover}
.v22-reel-cover button{position:absolute;z-index:3;inset:0;display:flex;justify-content:center;align-items:center;width:100%;height:100%;border:0;background:transparent;color:#fff;cursor:pointer}
.v22-play{display:grid;place-items:center;width:66px;height:66px;border:1px solid #fff9;background:#0005;border-radius:50%;backdrop-filter:blur(10px);font-size:20px;transition:transform .25s ease,background .25s ease}
.v22-reel-cover button:hover .v22-play{transform:scale(1.11);background:#fff3}
.v22-reel-chip{position:absolute;z-index:2;top:14px;right:14px;display:flex;gap:7px;color:#fff;background:#1119;padding:8px 11px;backdrop-filter:blur(8px);font:700 10px/1 'DM Sans',sans-serif;letter-spacing:.11em;pointer-events:none}
.v22-reel-time{position:absolute;z-index:2;bottom:15px;left:14px;color:white;font:700 11px/1 'DM Sans',sans-serif;background:#1119;padding:8px 10px;pointer-events:none}
.v22-reel-info{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 2px 0}
.v22-reel-info h3{font:800 clamp(19px,2.5vw,32px)/1.15 'DM Sans',sans-serif;letter-spacing:-.03em;margin:5px 0 0}
.v22-reel-info small{color:#aaa;font-size:11px;letter-spacing:.1em}
.v22-reel-case{width:42px;height:42px;display:grid;place-items:center;border:1px solid #fff5;color:#fff;text-decoration:none;font-size:21px;border-radius:50%;flex-shrink:0;transition:background .2s}
.v22-reel-case:hover{background:#ffffff25}
.v22-reels-caption{color:#969087;font-size:12px;margin-top:20px}
.v22-process{padding:96px 0;position:relative}
.v22-process-title{font-size:clamp(30px,4vw,56px);line-height:1.2;letter-spacing:-.035em;margin:14px 0 35px;font-weight:800}
.v22-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.v22-process-item{min-width:0;padding:25px 23px 28px;border:1px solid currentColor;opacity:.94;min-height:190px;display:flex;flex-direction:column;align-items:start;justify-content:space-between}
.v22-process-item .num{font:700 12px 'DM Sans',sans-serif;opacity:.55;letter-spacing:.1em}
.v22-process-item h3{font-size:21px;margin:15px 0 5px;font-weight:750}
.v22-process-item p{margin:0;font-size:13px;line-height:1.9;opacity:.7}
.v22-process-end{margin-top:22px;display:flex;justify-content:flex-end}
.v22-quick-steps{margin:16px auto 45px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.v22-quick-step{display:flex;align-items:center;gap:13px;border:1px solid currentColor;padding:18px 20px;min-width:0}
.v22-quick-step b{font:800 21px 'DM Sans',sans-serif;opacity:.55}
.v22-quick-step span{font-size:13px;line-height:1.7}
.v22-pricing-note{padding:20px 22px;border:1px solid currentColor;opacity:.8;font-size:13px;line-height:1.9;margin:28px auto 0}
.project-footer a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:12px;opacity:.9;transition:opacity .2s}
.project-footer a:hover{opacity:.55}
.v22-film-story-link{display:inline-flex;gap:7px;text-decoration:none;font:700 12px 'DM Sans',sans-serif;border-bottom:1px solid currentColor;padding:9px 0;margin:12px 0 0;color:inherit}
.v22-case{padding:30px 0 100px}
.v22-case-head{padding:70px 0 46px;border-bottom:1px solid currentColor}
.v22-case-head h1{font:850 clamp(64px,12vw,170px)/.97 'DM Sans',sans-serif;letter-spacing:-.085em;margin:24px 0 23px;overflow-wrap:anywhere}
.v22-case-sub{max-width:780px;font-size:clamp(16px,2.3vw,24px);line-height:1.8;opacity:.83}
.v22-case-metas{display:flex;gap:15px 48px;flex-wrap:wrap;margin-top:40px}
.v22-case-meta{display:flex;flex-direction:column;gap:10px}
.v22-case-meta small{font:700 10px 'DM Sans',sans-serif;letter-spacing:.18em;opacity:.56}
.v22-case-meta b{font-size:14px;font-weight:600}
.v22-case-hero{padding:28px 0 60px}
.v22-case-hero img{width:100%;max-height:720px;object-fit:cover;display:block;background:#222}
.v22-case-hero video{width:100%;max-width:620px;max-height:82vh;display:block;margin:auto;background:#111;aspect-ratio:9/16;object-fit:contain}
.v22-case-section{margin:20px 0 50px;display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.8fr);gap:35px;align-items:start}
.v22-case-section h2{font-size:clamp(24px,3vw,40px);margin:0;line-height:1.2}
.v22-case-section p{font-size:clamp(15px,1.7vw,19px);line-height:1.95;max-width:680px;margin:0;opacity:.85}
.v22-case-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:32px 0 85px}
.v22-case-gallery img{width:100%;display:block;object-fit:cover;background:#222}
.v22-case-gallery img:first-child:nth-last-child(odd){grid-column:1/-1}
.v22-case-next{border-top:1px solid currentColor;padding-top:35px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.v22-case-next a{text-decoration:none;color:inherit;font-weight:700;display:inline-flex;gap:13px;align-items:center;border-bottom:1px solid currentColor;padding:12px 0}
.v22-reel-film-viewer{margin-bottom:20px}
.v22-skip{position:absolute;top:-100px;right:15px;background:#fff;color:#000;z-index:99999;padding:12px 20px}
.v22-skip:focus{top:15px}
.v22-mobile-cta{display:none}
@media(max-width:820px){.v22-reels{padding:70px 0 74px}.v22-reels-grid{gap:11px}.v22-reels-head{align-items:start}.v22-reels h2{font-size:clamp(32px,8vw,60px)}.v22-process{padding:65px 0}.v22-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v22-quick-steps{grid-template-columns:1fr}.v22-case-head{padding-top:40px}}
@media(max-width:580px){.v22-reels-head{flex-direction:column;gap:10px}.v22-reels-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.v22-reel-card:first-child{grid-column:1/-1}.v22-reel-card:first-child .v22-reel-cover{aspect-ratio:9/11.4}.v22-reel-cover{aspect-ratio:9/14}.v22-reel-info h3{font-size:18px}.v22-reel-chip{top:8px;right:8px;font-size:9px;padding:6px}.v22-reel-time{bottom:9px;left:9px}.v22-play{width:53px;height:53px}.v22-process-grid{gap:9px}.v22-process-item{padding:17px 14px;min-height:170px}.v22-process-item h3{font-size:17px}.v22-process-item p{font-size:12px}.v22-case-head h1{font-size:clamp(48px,15vw,85px)}.v22-case-section{grid-template-columns:1fr;gap:15px}.v22-case-gallery{gap:8px}.v22-case-metas{gap:20px}.v22-mobile-cta{display:flex;align-items:center;justify-content:center;position:fixed;bottom:16px;left:16px;right:16px;z-index:80;border-radius:100px;padding:13px 20px;background:#efebe3!important;color:#111!important;border:1px solid #7776;box-shadow:0 10px 36px #0008;text-decoration:none;letter-spacing:0;gap:18px;font-size:13px;font-weight:750}.v17-backtop{bottom:85px!important}body{padding-bottom:48px}}
@media(prefers-reduced-motion:reduce){.v22-reel-cover img,.v22-reel-cover video,.v17-hero .v17-feature-main video{transition:none!important}.v22-reels:before{display:none}}

/* Unified play overlays and resource-conscious desktop previews */
.v22-reel-cover>a.v22-play,.v22-reel-cover>.v22-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3}
.v22-reel-cover>a:hover>.v22-play{transform:translate(-50%,-50%) scale(1.1)}
.film-card .film-open{position:relative;overflow:hidden}
.film-card .film-open .v22-preview-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;pointer-events:none}
.film-card .film-open .film-play-badge,.film-card .film-open .video-duration{position:absolute;z-index:3}
@view-transition{navigation:auto}
::view-transition-old(root){animation:v22-page-out .18s ease-out both}
::view-transition-new(root){animation:v22-page-in .28s ease-out both}
@keyframes v22-page-out{to{opacity:.15;transform:translateY(-7px)}}
@keyframes v22-page-in{from{opacity:.15;transform:translateY(7px)}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}}
