/* CineBar visual edition. Existing theme, media URLs and colour plates remain authoritative. */
/* One inherited colour policy on mouse and touch; section overrides remain authoritative. */
main img:not([data-logo]) { filter:var(--img-filter,grayscale(1))!important; }
html[data-smart-color="1"] main img.is-touch-color { filter:grayscale(0)!important; }
@media(hover:hover) and (pointer:fine) {
 html[data-smart-color="1"] main img:not([data-logo]):hover,
 html[data-smart-color="1"] main :is(.service-card,.visual-story,.portal,.hero,.artist,.work,.shot,.partner,.about__media,.svc__item,.member,.event,.reel__btn):hover img { filter:grayscale(0)!important; }
}
main :is(.service-card,.visual-story,.portal,.artist,.work,.shot,.partner):focus-visible img { filter:grayscale(0)!important; }
html[data-smart-color="0"] main :focus-visible img { filter:var(--img-filter,grayscale(1))!important; }
#gate[data-gate-tint="1"] :is(.gfade,.gwipe,.gtile,.gcard,.gate__panel) img { filter:grayscale(1) contrast(1.05)!important; }
#gate[data-gate-tint="0"] :is(.gfade,.gwipe,.gtile,.gcard,.gate__panel) img { filter:none!important; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.service-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px; }
.service-card { position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:390px;aspect-ratio:4/5;padding:26px;overflow:hidden;background:#181614;color:#fff;border-radius:var(--radius); }
.service-card::after,.visual-story::after { content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.2),transparent 30%,rgba(0,0,0,.82));transition:opacity .6s; }
.service-card img,.visual-story>img { position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .8s; }
.service-card__n { align-self:flex-end;font:12px var(--font-latin);letter-spacing:.13em; }
.service-card__body h3 { font:600 clamp(27px,2.8vw,44px)/1.4 var(--font-heading);margin-bottom:18px;text-wrap:balance; }
.service-card__body>span { display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;border-top:1px solid #ffffff65;padding-top:16px; }
.service-card__body svg { transition:transform .5s; }
.visual-section { padding-block:clamp(24px,4vw,60px); }
.visual-story { position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:480px;padding:clamp(24px,5vw,72px);overflow:hidden;background:#191713;color:#fff;border-radius:var(--radius); }
.visual-story__top { display:flex;justify-content:space-between;gap:16px;font-size:13px;letter-spacing:.05em; }
.visual-story__body { margin-top:100px;max-width:720px; }
.visual-story h2 { font:600 clamp(38px,5.2vw,78px)/1.3 var(--font-heading);text-wrap:balance; }
.visual-story p { margin-top:16px;max-width:48ch;font-size:clamp(14px,1.3vw,18px);line-height:1.9; }
.visual-story__cta { display:inline-flex;align-items:center;gap:32px;padding-top:24px;margin-top:20px;border-top:1px solid #ffffff70; }
.visual-story__cta svg { transition:translate .4s; }
.about__discover { margin-top:24px; }
.service-detail { display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,5vw,72px);align-items:center; }
.service-detail__image { width:100%;aspect-ratio:5/4;object-fit:cover; }
.service-detail__text .svc__points { font-size:clamp(17px,1.5vw,22px); }
.service-detail__text .btn,.service-detail__text .more { margin-top:28px; }
.detail-contact { padding-block:40px 80px; }
.detail-content .sec__head,.detail-content .split__head { margin-bottom:28px; }
.seal { width:var(--seal-size,168px);background:var(--seal-bg,#100e0d);color:var(--seal-fg,#f4eddf);translate:none;bottom:-5%;inset-inline-end:-3%;padding:0;isolation:isolate; }
.seal::before { content:"";position:absolute;inset:9%;border:1px solid currentColor;opacity:.3;border-radius:50%;pointer-events:none; }
.seal--empty::before { display:none; }
.seal__content { position:absolute;inset:22% 14%;display:grid;place-content:center;text-align:center;font:600 clamp(14px,1.5vw,21px)/1.6 var(--font-body);white-space:normal;overflow-wrap:anywhere; }
.seal__orbit { position:absolute;inset:1%;border-radius:50%;text-align:center;color:var(--seal-accent);font-size:12px;line-height:1;pointer-events:none; }
.seal svg.seal__ring { animation:none;inset:5%;width:90%;height:90%;color:var(--seal-fg); }
.seal svg.seal__ring.is-spinning { animation:turn 38s linear infinite; }
.seal .seal__ring text { fill:var(--seal-fg);font-size:13px;direction:ltr;unicode-bidi:embed; }
.seal__orbit.is-spinning { animation:turn 24s linear infinite; }
.seal__dot { position:absolute;width:6px;height:6px;bottom:17%;left:calc(50% - 3px);border-radius:50%;background:var(--seal-accent); }
.seal__image { position:absolute;inset:18%;width:64%;height:64%;object-fit:contain;border-radius:50%; }
.marquee--controlled { padding-block:var(--mq-pad); }
.marquee--controlled .marquee__track { animation-duration:var(--mq-speed);animation-direction:var(--mq-direction);gap:0; }
.marquee--controlled .marquee__track>* { margin:0; }
.marquee__group { display:flex;flex:none;align-items:center;gap:var(--mq-gap);padding-inline-end:var(--mq-gap); }
.marquee.marquee--controlled .marquee__track span { font-size:var(--mq-size);color:var(--mq-color,var(--text)); }
.marquee__group i { font:normal 22px var(--font-body);color:var(--mq-color,var(--accent)); }
.marquee.marquee--controlled.is-outline .marquee__track span { -webkit-text-stroke:1px var(--mq-color,var(--text));color:transparent; }
.marquee.pause-hover:hover .marquee__track,.marquee:focus-within .marquee__track,.marquee.is-paused .marquee__track { animation-play-state:paused; }
.marquee__pause { position:absolute;bottom:8px;right:12px;min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid currentColor;background:var(--bg);color:var(--text);font:16px var(--font-body);z-index:2; }
.cursor { --cs:1;width:var(--cursor-size,36px);height:var(--cursor-size,36px);margin:calc(var(--cursor-size,36px) / -2) 0 0 calc(var(--cursor-size,36px) / -2);border:0;border-radius:0;mix-blend-mode:difference;color:var(--cursor-color,#fff);transition:opacity .2s; }
.cursor::before { content:"";position:absolute;inset:0;border:1px solid currentColor;border-radius:8px;transform:rotate(-12deg) scale(.75);transition:transform .45s cubic-bezier(.16,1,.3,1),border-radius .4s,background .4s; }
.cursor i { position:absolute;width:4px;height:4px;background:currentColor;border-radius:1px;transition:transform .25s; }
.cursor.is-link { --cs:1; }.cursor.is-link::before { transform:rotate(0) scale(1.2);border-radius:50%; }
.cursor.is-label { --cs:1;mix-blend-mode:normal;background:transparent;border:0;width:var(--cursor-size,36px);height:var(--cursor-size,36px); }
.cursor.is-label::before { transform:rotate(0) scale(2.1);border-radius:50%;background:var(--cursor-color); }
.cursor.is-label span { position:relative;color:#111;font-size:11px;opacity:1;z-index:1; }
.cursor.is-label i { opacity:0; }.cursor.is-down::before { transform:rotate(45deg) scale(.65); }
.cursor--orb::before { border-radius:50%;transform:scale(.8); }.cursor--minimal::before { border-radius:0;transform:rotate(45deg) scale(.3); }
.cursor[hidden] { display:none!important; }
@media (hover:hover) and (pointer:fine) {
 html.has-cursor.cursor-active,html.has-cursor.cursor-active a,html.has-cursor.cursor-active button,html.has-cursor.cursor-active summary { cursor:none; }
 html.has-cursor input,html.has-cursor textarea { cursor:text; }
 .service-card:hover img,.service-card:focus-visible img,.visual-story:hover>img,.visual-story:focus-visible>img { transform:scale(1.065); }
 .service-card:hover .service-card__body svg,.visual-story:hover .visual-story__cta svg { transform:rotate(-35deg); }
}
html.is-editing .fnote--free,html.is-editing .floater--free,html.is-editing .poster__subject,html.is-editing [data-head],html.is-editing .soc { touch-action:none;user-select:none;-webkit-user-select:none; }
html.is-editing .floater--free { display:block!important; }
html.is-editing .fnote--free { inset-inline-start:calc(var(--fx,50) * 1%);top:calc(var(--fy,10) * 1%); }
@media(max-width:960px) { .service-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }.service-card { min-height:320px; } }
@media(max-width:760px) {
 .service-cards { gap:12px; }.service-card { min-height:270px;padding:18px;aspect-ratio:3/4; }.service-card__body h3 { font-size:26px; }.service-card__body>span { font-size:11px; }
 .visual-story { min-height:420px;padding:26px 22px; }.visual-story h2 { font-size:40px; }.visual-story__body { margin-top:100px; }
 .service-detail { grid-template-columns:1fr; }.seal { width:var(--seal-mobile,116px);padding:0;inset-inline-end:3%;bottom:-24px; }.seal__content { font-size:13px; }
 .about__figure { margin-bottom:24px; }
 .marquee.marquee--controlled .marquee__track span { font-size:var(--mq-mobile); }
 html.is-editing .fnote--free { inset-inline-start:calc(var(--mfx,var(--fx,50)) * 1%);top:calc(var(--mfy,var(--fy,10)) * 1%); }
 .socials .soc.has-mobile-position { left:calc(var(--mx) * 1vw);top:calc(var(--my) * 1svh);right:auto;bottom:auto;inset-inline-end:auto;margin:calc(var(--sz) / -2) 0 0 calc(var(--sz) / -2); }
}
@media(max-width:540px) { .service-cards { grid-template-columns:1fr;gap:18px; }.service-card { aspect-ratio:5/4;padding:24px; }.service-card__body h3 { font-size:34px; }.service-card__body>span { font-size:13px; } }
@media(max-width:380px) { .visual-story h2 { font-size:34px; } }
@media(prefers-reduced-motion:reduce) {
 .seal__orbit,.marquee--controlled .marquee__track { animation:none!important; }.service-card img,.visual-story>img,.cursor { transition:none; }
 .cursor { display:none!important; } html.has-cursor.cursor-active,html.has-cursor.cursor-active a,html.has-cursor.cursor-active button,html.has-cursor.cursor-active summary { cursor:auto; }
}
html[data-motion="0"] .seal__orbit,html[data-motion="0"] .seal svg.seal__ring,html[data-motion="0"] .marquee__track { animation:none; }
@media(prefers-reduced-motion:reduce) { .seal svg.seal__ring.is-spinning { animation:none; } }

/* Explicit coordinates must win over the poster's numbered default positions. */
.floater.floater--free { inset: auto; inset-inline-start: calc(var(--fx, 50) * 1%); top: calc(var(--fy, 10) * 1%); }
html.is-editing .floater { pointer-events:auto!important;touch-action:none;user-select:none;cursor:grab;outline:1px dashed var(--accent);outline-offset:6px;transition:none!important; }
html.is-editing .floater > span { animation:none!important; }
@media(max-width:760px) {
 .floater.floater--free,.floater.floater--mobile-free { inset:auto;inset-inline-start:calc(var(--mfx,var(--fx,50)) * 1%);top:calc(var(--mfy,var(--fy,10)) * 1%);translate:-50% 0;scale:var(--mfs,var(--fs,1));rotate:var(--mfr,var(--fr,0deg)); }
 [dir="rtl"] .floater.floater--free,[dir="rtl"] .floater.floater--mobile-free { translate:50% 0; }
 .service-cards--grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
 .service-cards--grid .service-card { min-height:205px;aspect-ratio:4/5;padding:14px; }
 .service-cards--grid .service-card__body h3 { font-size:clamp(20px,5.7vw,28px);line-height:1.45;margin-bottom:12px; }
 .service-cards--grid .service-card__body>span { font-size:11px;gap:6px;padding-top:10px; }
 .service-cards--large { grid-template-columns:1fr;gap:18px; }
 .service-cards--large .service-card { min-height:270px;aspect-ratio:5/4;padding:24px; }
 .service-cards--list { grid-template-columns:1fr;gap:12px; }
 .service-cards--list .service-card { min-height:116px;aspect-ratio:auto;padding:18px;padding-inline-start:124px;justify-content:center; }
 .service-cards--list .service-card img { width:106px;inset:0;inset-inline-start:0; }
 .service-cards--list .service-card::after { display:none; }
 .service-cards--list .service-card__n { display:none; }
 .service-cards--list .service-card__body h3 { font-size:24px;margin-bottom:10px; }
 .service-cards--list .service-card__body>span { font-size:12px;padding-top:8px; }
}
