/* OIRT's latest approved home structure, connected to WordPress. */
body.oirt-rack{background:#f5f5f5;color:#222;font:400 14px/1.65 Montserrat,Arial,sans-serif}.oirt-rack h1,.oirt-rack h2{font-family:Oswald,sans-serif}.oirt-rack h3{font-family:Montserrat,sans-serif}
.languages a{padding:12px 8px;color:#b7b7b7;min-height:44px;display:inline-flex;align-items:center;font-size:11px}.languages a[aria-current]{color:white;border-bottom:1px solid #42e9d5}
.hero .ocn-object{height:500px;align-self:center}.hero-description{font-size:14px;max-width:380px}.hero .text-link{font-size:13px}.hero .eyebrow{font-size:11px}.ocn-object-controls{color:#b5b5b5;font-size:11px}.ocn-object-controls button{min-height:44px;color:#ccc}
.section-label{font-size:10px}.section-description,.process-intro,.original-intro{font-size:14px}.brand-services{font-size:12px}.text-link{font-size:12px}.desktop-nav a{font-size:12px}.book-controls p,.reel-foot p,.visual-caption p{font-size:11px;color:#606060}.reel-card h3,.visual-caption h3{font-size:13px}.motion-toggle{font-size:11px;color:#b7b7b7}
.film-track>.ol-card{flex:0 0 calc((100% - 24px)/2)}.reel-track>.ol-card{width:clamp(198px,18.5vw,280px);flex:0 0 auto}.showreel .ol-caption{display:block;color:#222}.showreel .ol-caption h3{font-size:13px}.showreel .ol-caption p{font-size:11px;color:#606060}
.rack-film-empty{position:relative;width:100%;min-height:300px;background:#222;color:#f5f5f5;padding:42px clamp(28px,6vw,90px);display:flex;align-items:center;gap:clamp(32px,8vw,140px)}.rack-film-empty>img{width:90px;height:auto;opacity:.75}.rack-film-empty h3{font:500 clamp(35px,4vw,64px)/1.1 Oswald,sans-serif}.rack-film-empty p{font-size:13px;color:#bbb;margin:18px 0 14px}.rack-film-empty a{font-size:12px;color:#fcff12;display:inline-block;padding:10px 0}.rack-format{position:absolute;right:24px;top:20px;color:#999;font-size:11px}
.process{background-color:#ededE8;background-image:url(rack-assets/oirt-star-grid.svg);background-size:190px;position:relative}.process-step strong{max-width:100%;overflow-wrap:normal}.step-detail p{font-size:13px}.step-detail>span{font-size:11px}.logo-track{animation-duration:100s}.partner-logo img{opacity:.85}.partners .section-label{max-width:500px}
.originals .original-intro{max-width:320px}.brand-film>img{height:100%;width:100%;object-fit:cover;object-position:center}.brand-film{aspect-ratio:1.45}.contact{background:#222}.contact h2{color:#fcff12}.footer-bottom{background:#222;color:#bbb;font-size:11px}.contact-button,.contact-email{font-size:13px}.ol-support{box-shadow:none;padding:11px 14px;font-size:11px}
#rack-image-dialog{width:min(1100px,94vw);max-height:94dvh;background:#222;color:#fff;padding:20px;border:1px solid #555}#rack-image-dialog::backdrop{background:#000d}.rack-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px}.rack-dialog-head h2{font:500 16px/1.5 Montserrat,sans-serif}.rack-dialog-head button{background:none;border:1px solid #888;color:white;min-height:44px;padding:10px 16px;flex-shrink:0}#rack-image-view{width:100%;max-height:75dvh;object-fit:contain}
@media(min-width:1600px){.hero{min-height:760px}.hero .ocn-object{height:570px}.hero-copy{align-self:center}}
@media(max-width:1100px){.desktop-nav{display:none}.header-actions{margin-left:auto}.menu-button{display:flex}}
@media(max-width:760px){.hero .ocn-object{height:310px;margin:10px 0 12px}.hero-description{font-size:13px}.hero .eyebrow{font-size:9px}.hero .text-link{font-size:12px}.hero-bottom{font-size:8px}.section-description,.process-intro,.original-intro{font-size:13px}.film-track>.ol-card{flex-basis:calc(100vw - 72px)}.rack-film-empty{min-width:100%;min-height:260px;padding:48px 24px 32px;gap:24px;align-items:flex-start}.rack-film-empty>img{width:40px;margin-top:5px}.rack-film-empty h3{font-size:32px}.rack-film-empty p{font-size:12px;line-height:1.65}.rack-film-empty a{font-size:11px}.reel-foot{align-items:flex-start;gap:10px}.reel-foot p{font-size:10px}.partner-heading{display:block}.partner-heading .motion-toggle{margin-top:12px}.book-controls p{max-width:140px;font-size:10px}.book-controls>div:last-child{gap:4px}.book-controls .circle-button{width:36px;height:44px}.step-detail p{font-size:12px}.contact-button{font-size:12px}.footer-bottom{padding-bottom:72px}.section-heading h2{overflow-wrap:normal}.originals .original-intro{max-width:none}}
@media(prefers-reduced-motion:reduce){.logo-track{animation:none!important}.logo-marquee{overflow-x:auto}.ocn-object canvas{transition:none}.rack-film-empty img{transform:none}}
/* The flow responds to a pointer or touch, without blocking vertical scrolling. */
.hero .ocn-object canvas{cursor:crosshair}.hero .ocn-object canvas:active{cursor:crosshair}.ocn-object-controls{z-index:2;background:#222}.ow-home .ow-grid-tvc>.ow-card:only-child{grid-column:1/-1;max-width:100%}

@media(max-width:760px){.ocn-object-controls{left:0;right:auto;align-items:flex-start;flex-direction:column;gap:0;bottom:0}.ocn-object-controls p{font-size:10px}.ocn-object-controls button{padding:5px 0;min-height:34px}}

/* Large approved lockup, with the interactive current behind it. */
.hero.hero-logo{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:720px;height:calc(100svh - 100px);max-height:1050px;padding-top:30px;padding-bottom:0;overflow:hidden}
.hero-logo .ocn-object{position:absolute;inset:0;height:100%;margin:0;z-index:0}
.hero-logo .ocn-mark{display:none}
.hero-logo-stage{position:relative;z-index:1;pointer-events:none;text-align:center;width:100%;margin:auto 0}
.hero-logo-stage .eyebrow{justify-content:center;margin:0 0 12px;color:#c1c1c1;letter-spacing:.13em}
.hero-logo #hero-title{font-size:inherit;line-height:1;margin:0}
.hero-logo .hero-lockup{width:min(70vw,950px);height:auto;max-height:46svh;object-fit:contain;margin:0 auto;display:block;filter:drop-shadow(0 4px 30px #2229)}
.hero-logo-caption{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:20px 0 52px;pointer-events:none}
.hero-logo-caption .hero-description{color:#ddd;max-width:460px;margin:0;font-size:13px;line-height:1.8}
.hero-logo-caption .text-link{pointer-events:auto;margin:0;white-space:nowrap}
.hero-logo .hero-bottom{position:relative;inset:auto;z-index:1;width:100%;margin:0;padding:20px 0;border-color:#ffffff25;pointer-events:none}
.hero-logo .ocn-object-controls{bottom:78px;left:50%;right:auto;transform:translateX(-50%);background:transparent;white-space:nowrap;gap:18px;font-size:10px}
.hero-logo .ocn-object-controls p{color:#aaa}.hero-logo .ocn-object-controls button{min-height:44px}
@media(min-width:1600px){.hero.hero-logo{min-height:780px}}
@media(max-width:1000px){.hero-logo .ocn-object-controls{bottom:74px}.hero-logo-caption .hero-description{font-size:12px;max-width:320px}.hero-logo-caption .text-link{font-size:11px}}
@media(max-width:760px){.hero.hero-logo{height:auto;min-height:650px;padding-top:34px}.hero-logo-stage{margin:45px 0 70px}.hero-logo-stage .eyebrow{font-size:8px;letter-spacing:.09em}.hero-logo .hero-lockup{width:100%;max-height:none}.hero-logo-caption{display:block;margin:0 0 88px}.hero-logo-caption .hero-description{font-size:12px;max-width:100%;margin-bottom:22px}.hero-logo-caption .text-link{font-size:12px}.hero-logo .ocn-object-controls{left:24px;right:auto;bottom:68px;transform:none;flex-direction:row;gap:18px;align-items:center}.hero-logo .ocn-object-controls p{font-size:9px}.hero-logo .hero-bottom{margin-top:auto;gap:18px;font-size:7px;padding:18px 0}.hero-logo .hero-bottom span:last-child{max-width:110px;text-align:right}}

/* v20 fluid: the logo remains the clear foreground. */
.hero-logo .ocn-object canvas{cursor:default}.hero-logo .ocn-object canvas:active{cursor:default}.hero-logo .ocn-object-controls{z-index:4}

.hero-logo-stage{user-select:none;-webkit-user-select:none}
