/* The visual layer: warm light, dark blue shadows and quiet, rounded surfaces. */
.cinema-design {
  --paper: #f4f0e8;
  --ink: #172b34;
  --orange: #966344;
  --muted: #647077;
  --night: #0c1418;
  --night-text: #f0e8da;
  --warm: #e9bea0;
  background: var(--night);
  color: var(--night-text);
}
.cinema-design h1, .cinema-design h2 { font-weight: 400; letter-spacing: -.045em; }
.cinema-design h1 em, .cinema-design h2 em { color: var(--warm); }
.cinema-design .site-header { height: 104px; border-color: #e9d9bf25; }
.home-page .site-header { position: absolute; left: 0; right: 0; top: 0; }
.cinema-design .wordmark { font-size: 29px; letter-spacing: -.025em; }
.cinema-design .wordmark span { font-size: 10px; letter-spacing: .22em; }
.cinema-design .header-note { color: #b2b8b7; font-size: 8px; }
.cinema-design .site-header nav a { font-size: 12px; }
.cinema-design .site-header nav a:hover,
.cinema-design .site-header nav a[aria-current] { border-color: var(--warm); }
.cinema-design .site-header nav a:last-child { border-color: #e9d9bf40; }
.cinema-design .eyebrow { font-size: 9px; letter-spacing: .21em; font-weight: 500; }
.cinema-design .button {
  border-radius: 50px;
  background: linear-gradient(110deg, #e0c5be, #f6d4b1);
  color: #162329;
  padding: 17px 25px;
  font-size: 13px;
  border: 1px solid #fff7e852;
  position: relative;
  overflow: hidden;
  transition: transform .35s, box-shadow .35s, background .35s;
}
.cinema-design .button::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 25%, #ffffff70 50%, transparent 75%);
  transform: translateX(-110%);
  transition: transform .65s;
}
.cinema-design .button:hover { transform: translateY(-3px); box-shadow: 0 8px 32px #e7b28d30; }
.cinema-design .button:hover::before { transform: translateX(110%); }
.cinema-design .button > span { transition: transform .3s; }
.cinema-design .button:hover > span { transform: translate(3px, -3px); }
.cinema-design .text-link { font-size: 12px; border-color: #d8d6c95c; }
.cinema-design .text-link:hover { color: var(--warm); }
.cinema-design .section { padding: 100px 6%; }
.cinema-design .section-label { border-color: #dacbb830; color: #aeb7b8; font-size: 8px; }
.cinema-design .section-heading p { font-size: 14px; line-height: 1.85; }
.cinema-design h2 { font-size: clamp(40px, 4.3vw, 65px); }

/* One continuous, full-height introductory scene. */
.cinema-hero {
  min-height: 100svh;
  min-height: max(780px, 100svh);
  position: relative;
  display: grid;
  grid-template-columns: 48% 52%;
  align-items: center;
  padding: 150px 6% 115px;
  overflow: hidden;
  isolation: isolate;
  background: #0a1115;
}
.hero-atmosphere {
  position: absolute; inset: 0; z-index: -2;
  background: radial-gradient(ellipse at 91% 32%, #875a3f55 0%, transparent 48%), radial-gradient(ellipse at 75% 100%, #2a536050, transparent 55%);
}
.cinema-copy { position: relative; z-index: 6; max-width: 560px; padding-bottom: 5px; }
.cinema-copy .eyebrow { color: #d6c6b3; font-size: 8px; }
.cinema-copy h1 { font-size: clamp(60px, 6.2vw, 98px); line-height: 1.06; margin: 28px 0; }
.cinema-copy h1 em { white-space: nowrap; font-size: .87em; color: #e9c4b0; }
.cinema-copy p { max-width: 395px; font-size: 14px; line-height: 1.9; color: #bcc5c6; margin-bottom: 32px; }
.cinema-copy .actions { gap: 27px; }
.cinema-scene { position: absolute; top: 85px; bottom: 65px; width: 54%; right: 0; isolation: isolate; }
.scene-light { position: absolute; inset: -10% -15% 0 -15%; background: radial-gradient(ellipse at 62% 30%, #edb59530, transparent 63%); z-index: -2; }
.scene-arch {
  position: absolute; inset: 1% 5% 12% 12%; border-radius: 48% 48% 20px 20px;
  background: linear-gradient(145deg, #665b66 0%, #e6af84 45%, #50717a 100%);
  box-shadow: -25px 0 0 #d4a17108, -27px 0 0 #e0bc8b1a, 0 0 110px #d99d6240;
  overflow: hidden;
}
.scene-arch::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#102028 0%,transparent 70%); }
.scene-house { width: 100%; height: 100%; object-fit: cover; object-position: 83% center; opacity: .45; filter: saturate(.65); mix-blend-mode: multiply; }
.scene-people { position: absolute; inset: 8% 0 5% 0; }
.scene-people img { position: absolute; height: auto; filter: saturate(.8) brightness(.86) contrast(1.03); }
.scene-couple { width: 98%; left: 0; bottom: 0; z-index: 2; }
.scene-olya { width: 17%; left: 46%; bottom: -1%; z-index: 4; }
.scene-ron { width: 28%; right: -1%; bottom: -2%; z-index: 3; }
.scene-zeus { width: 23%; left: 0; bottom: -3%; z-index: 3; }
.scene-vignette { position: absolute; inset: 0; z-index: 5; pointer-events: none; background: linear-gradient(0deg, #0b151b 0%, #0b151bd4 6%, transparent 28%), linear-gradient(90deg,#0a1115 0%,transparent 12%); }
.scene-signature { position: absolute; bottom: 2%; left: 31%; font: 25px var(--serif); letter-spacing: .01em; z-index: 6; color: #f3e0c9; }
.scene-signature i { color: #bca086; font-size: 20px; }
.scene-signature small { display: block; font: 7px var(--sans); letter-spacing: .32em; margin-top: 11px; text-align: center; color: #b7bebc; }
.scene-replay { position: absolute; bottom: 3%; right: 8%; z-index: 7; background: #101c2480; border: 1px solid #d2c4ae38; color: #c9c9bd; padding: 8px 13px; border-radius: 30px; font-size: 10px; }
.scene-replay span { margin-right: 5px; }
.cinema-bottom { position: absolute; bottom: 0; left: 6%; right: 6%; min-height: 78px; display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #d9c6a324; z-index: 8; }
.cinema-bottom > span { font-size: 8px; letter-spacing: .14em; color: #9eaaa9; }
.cinema-bottom b { color: #dfb394; margin: 0 16px; }
.cinema-bottom > a { font-size: 11px; color: #e8d9c5; display: flex; align-items: center; gap: 25px; }
.cinema-bottom > a span { display: grid; place-items: center; width: 35px; height: 35px; border-radius: 50%; border: 1px solid #d9c6a342; }
.scene-await .scene-people img { opacity: 0; }
.scene-ready .scene-couple { animation: scene-emerge 1.6s cubic-bezier(.16,.8,.25,1) both; }
.scene-ready .scene-olya { animation: scene-emerge 1.3s .45s cubic-bezier(.16,.8,.25,1) both; }
.scene-ready .scene-ron { animation: scene-right 1.4s .7s cubic-bezier(.16,.8,.25,1) both; }
.scene-ready .scene-zeus { animation: scene-left 1.4s .9s cubic-bezier(.16,.8,.25,1) both; }
.scene-ready .scene-signature { animation: scene-emerge 1s 1.1s both; }
.scene-ready .scene-arch { animation: scene-light 2s both; }
@keyframes scene-emerge { from { opacity: 0; transform: translateY(65px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes scene-right { from { opacity: 0; transform: translateX(65px); } to { opacity: 1; transform: none; } }
@keyframes scene-left { from { opacity: 0; transform: translateX(-65px); } to { opacity: 1; transform: none; } }
@keyframes scene-light { from { opacity: .4; transform: scale(.98); } to { opacity: 1; transform: none; } }

/* Carousel: central television, neighbouring silhouettes and channel details. */
.channel-showcase { background: var(--paper); color: var(--ink); overflow: hidden; }
.channel-showcase h2 em { color: #956c52; }
.channel-showcase .section-label { border-color: #142d352e; color: #657078; }
.broadcast-layout { display: grid; grid-template-columns: 61% 33%; gap: 6%; align-items: center; }
.broadcast-gallery { min-width: 0; }
.broadcast-track { position: relative; height: 410px; overflow: hidden; touch-action: pan-y; }
.broadcast-track::before, .broadcast-track::after { content: ''; position: absolute; top: 0; bottom: 0; width: 9%; z-index: 8; pointer-events: none; }
.broadcast-track::before { left: 0; background: linear-gradient(90deg,var(--paper),transparent); }
.broadcast-track::after { right: 0; background: linear-gradient(-90deg,var(--paper),transparent); }
.broadcast-slide { width: 380px; position: absolute; left: 50%; top: 27px; transform: translateX(-50%); transition: transform .6s cubic-bezier(.2,.8,.2,1), opacity .5s, filter .5s; will-change: transform; }
.broadcast-slide:not(.selected) { pointer-events: none; }
.broadcast-power { width: 100%; background: transparent; display: block; padding: 26px 0 22px; position: relative; text-align: left; transition: transform .4s; }
.broadcast-power:hover { transform: translateY(-4px); }
.broadcast-slide.on .broadcast-power { transform: scale(1.035); }
.broadcast-body { position: relative; display: grid; grid-template-columns: 1fr 14%; gap: 5%; padding: 25px 20px 32px; background: linear-gradient(125deg,#ffffff30,transparent 60%), var(--cabinet); border: 3px solid #4b483f; border-radius: 32px; box-shadow: inset 0 0 0 3px #f2d9b14a, 0 16px 30px #102f3a30; }
.broadcast-bezel { display: block; border-radius: 24px; padding: 8px; background: #182627; box-shadow: 0 0 0 2px #e3ccb44a; }
.broadcast-screen { display: block; position: relative; aspect-ratio: 1.25; border-radius: 36% / 14%; background: radial-gradient(ellipse at 35% 20%,#31494b,#101b22); overflow: hidden; }
.broadcast-screen>img { width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .5s, transform 3s; transform: scale(1.1); }
.broadcast-shade { position: absolute; inset: 0; background: linear-gradient(0deg,#102431c9,transparent 90%); opacity: 0; transition: opacity .4s; }
.broadcast-station { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; color: #f5eee3; opacity: 0; transition: opacity .4s; }
.broadcast-station b { font: 43px var(--sans); line-height: 1; }
.broadcast-station>span { font-size: 15px; margin-top: 12px; }
.broadcast-off { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; color: #c7cebe; font: 29px var(--serif); transition: opacity .3s; }
.broadcast-off small { margin-top: 16px; font: 7px var(--sans); letter-spacing: .1em; color: #a5b2ab; }
.broadcast-lines { position: absolute; inset: 0; background: repeating-linear-gradient(0deg,transparent 0px,transparent 2px,#00000012 3px,#00000012 4px); pointer-events: none; }
.broadcast-control { display: flex; flex-direction: column; align-items: center; gap: 13px; padding: 3px 0; }
.broadcast-dial { display: block; width: 38px; aspect-ratio: 1; background: linear-gradient(135deg,#e5d6b9,#8d958c); border: 2px solid #263637; border-radius: 50%; box-shadow: 2px 3px 4px #19333e70; position: relative; }
.broadcast-dial::after { content: ''; position: absolute; width: 3px; height: 67%; top: 16%; left: 46%; background: #2c3e3b; transform: rotate(35deg); transition: transform .5s; }
.broadcast-dial.smaller { width: 28px; }
.broadcast-grille { flex: 1; width: 100%; min-height: 35px; background: repeating-linear-gradient(0deg,transparent,transparent 3px,#253d3c70 3px,#253d3c70 5px); border-radius: 3px; }
.broadcast-led { width: 6px; height: 6px; background: #523a2d; border-radius: 50%; }
.broadcast-brand { position: absolute; left: 25px; bottom: 10px; font-size: 6px; letter-spacing: .17em; color: #f3e6ce; }
.broadcast-antenna { position: absolute; top: 0; left: 46%; width: 1px; height: 48px; background: #5c6b68; transform: rotate(-35deg); transform-origin: bottom; }
.broadcast-antenna::after { content: ''; width: 1px; height: 48px; background: #5c6b68; position: absolute; bottom: 0; transform: rotate(70deg); transform-origin: bottom; }
.broadcast-legs { position: absolute; left: 16%; bottom: 9px; width: 68%; height: 25px; border-left: 10px solid #24393c; border-right: 10px solid #24393c; transform: perspective(60px) rotateX(15deg); z-index: -1; }
.broadcast-slide.on .broadcast-screen { animation: crt-start .6s ease-out; }
.broadcast-slide.on .broadcast-screen>img { opacity: 1; transform: scale(1); }
.broadcast-slide.on .broadcast-shade, .broadcast-slide.on .broadcast-station { opacity: 1; }
.broadcast-slide.on .broadcast-off { opacity: 0; }
.broadcast-slide.on .broadcast-led { background: #f7d698; box-shadow: 0 0 10px #f5c56e; }
.broadcast-slide.on .broadcast-dial::after { transform: rotate(95deg); }
@keyframes crt-start { 0% { transform: scaleY(.02); filter: brightness(2); } 45% { transform: scaleY(1); filter: brightness(1.5); } 100% { transform: none; filter: none; } }
.broadcast-navigation { display: flex; align-items: center; justify-content: center; gap: 28px; margin: 0 0 10px; }
.round-button { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #17333c40; background: transparent; font-size: 20px; transition: background .25s,color .25s,transform .25s; }
.round-button:hover { background: #18333e; color: #f5e6cf; transform: scale(1.08); }
.carousel-count { font-size: 12px; letter-spacing: .1em; min-width: 65px; text-align: center; }
.carousel-count i { font-style: normal; color: #89918e; }
.channel-panels { min-height: 340px; display: flex; align-items: center; }
.channel-panel { animation: channel-in .4s both; }
.channel-panel .eyebrow { font-size: 8px; color: #697778; }
.channel-panel h3 { font: 52px/1.1 var(--serif); letter-spacing: -.04em; margin: 15px 0 24px; }
.channel-panel h4 { font: 23px/1.35 var(--serif); margin: 0 0 17px; }
.channel-panel p { font-size: 13px; line-height: 1.85; color: #647075; margin-bottom: 24px; }
.channel-panel .channel-link { background: #18333e; color: #f6eee0; border-color: transparent; padding: 15px 22px; }
.channel-panel .watch-example { display: flex; margin-top: 14px; font-size: 11px; color: #516771; border-color: #53666c60; }
.channel-dots { display: flex; justify-content: center; gap: 30px; border-top: 1px solid #15374325; padding-top: 26px; margin-top: 40px; }
.channel-dot { background: transparent; color: #667477; display: flex; gap: 9px; align-items: center; font-size: 9px; padding: 8px 4px; border-bottom: 1px solid transparent; }
.channel-dot span { font-size: 11px; }
.channel-dot[aria-pressed=true] { color: #263f49; border-color: #a87758; }
.channel-fallback { display: flex; flex-wrap: wrap; gap: 25px; padding-top: 25px; }
@keyframes channel-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

/* Alternating editorial sections, using photographs without cutout portraits. */
.cinema-design .story { background: #10212b; }
.cinema-design .story-copy p:not(.lead) { color: #b4c1c5; line-height: 1.9; }
.cinema-design .story-copy .lead { font-size: 22px; color: #dacbb8; }
.cinema-design .photo-stack { padding: 0; }
.cinema-design .photo-main { background: none; padding: 0; transform: none; box-shadow: none; }
.cinema-design .photo-main img { border-radius: 22px; height: 470px; object-position: 50% 50%; }
.cinema-design .photo-main figcaption { font: 11px var(--sans); color: #a3b1b6; padding-top: 18px; }
.cinema-design .life { background: #f7f4ed; color: #20343d; }
.cinema-design .life h2 em { color: #966e53; }
.cinema-design .life .section-label { border-color: #15374325; color: #647075; }
.cinema-design .life-card { border-radius: 22px; height: 450px; }
.cinema-design .life-overlay strong { font-size: 30px; }
.cinema-design .life-overlay>span { font-size: 10px; }
.village-world { padding: 88px 5.5%; background: #12271f; color: #1e342d; }
.village-world-inner { position: relative; overflow: hidden; min-height: 570px; max-width: 1460px; margin: auto; padding: 70px 6.5%; display: grid; grid-template-columns: minmax(280px,.78fr) minmax(420px,1.22fr); align-items: center; gap: 4%; background: #f2eee4; border-radius: 34px; box-shadow: 0 35px 90px #06120d65; }
.diorama-copy { position: relative; z-index: 3; max-width: 420px; }
.diorama-copy .eyebrow { color: #66796d; font-size: 8px; letter-spacing: .19em; }
.diorama-copy h2 { font: 400 clamp(40px,4.2vw,62px)/1.06 var(--serif); margin: 24px 0; }
.diorama-copy h2 em { color: #8b7054; }
.diorama-copy p { max-width: 400px; margin-bottom: 28px; color: #5f6c64; font-size: 13px; line-height: 1.9; }
.diorama-copy .button { background: #284438; color: #fbf7ed; border-color: transparent; padding: 15px 21px; }
.diorama-note { display: flex; align-items: center; gap: 15px; margin-top: 30px; color: #69746b; font: 10px/1.55 var(--sans); }
.diorama-note span:first-child { color: #8a7056; font: 45px/.9 var(--serif); letter-spacing: -.05em; }
.diorama-scene { position: relative; height: 460px; overflow: hidden; isolation: isolate; border-radius: 46% 46% 24px 24px / 28% 28% 24px 24px; background: linear-gradient(180deg,#c9d8d0 0%,#e8d9bd 53%,#a2ad8c 100%); box-shadow: inset 0 0 0 1px #fff8,0 22px 40px #283b3020; animation: diorama-arrive 1.1s .12s both cubic-bezier(.2,.7,.25,1); }
.diorama-sky { position:absolute; z-index:-2; inset:0; background: radial-gradient(ellipse at 65% 20%,#fff5d89c,transparent 33%),linear-gradient(180deg,#aec5bd 0%,#e2d6bd 51%,#82977a 100%); }
.diorama-photo { position:absolute; z-index:-1; inset:12% 5% 20%; overflow:hidden; border-radius:48% 48% 7px 7px/34% 34% 7px 7px; box-shadow:0 20px 55px #16261b36; }
.diorama-photo img { width:100%; height:100%; object-fit:cover; object-position:54% 55%; filter:saturate(.76) contrast(.94); }
.diorama-ridge { position:absolute; left:-8%; width:116%; pointer-events:none; }
.ridge-back { z-index:0; height:40%; bottom:12%; background:linear-gradient(165deg,#869b77,#667c60); clip-path:polygon(0 74%,10% 48%,22% 63%,33% 35%,46% 57%,58% 30%,68% 54%,81% 24%,92% 48%,100% 38%,100% 100%,0 100%); opacity:.86; }
.ridge-front { z-index:1; height:31%; bottom:-2%; background:linear-gradient(174deg,#8b9666,#657653 62%,#4d6248); clip-path:polygon(0 30%,12% 45%,26% 21%,39% 42%,53% 17%,68% 39%,80% 18%,92% 37%,100% 25%,100% 100%,0 100%); }
.diorama-pine { position:absolute; z-index:2; bottom:20%; width:0; height:0; border-left:22px solid transparent; border-right:22px solid transparent; border-bottom:106px solid #31523e; filter:drop-shadow(6px 7px 4px #26372c66); }
.diorama-pine:before,.diorama-pine:after { content:""; position:absolute; left:-31px; border-left:31px solid transparent; border-right:31px solid transparent; }
.diorama-pine:before { top:27px; border-bottom:66px solid #456b4d; }
.diorama-pine:after { top:52px; left:-39px; border-left-width:39px; border-right-width:39px; border-bottom:51px solid #365c43; }
.pine-one { left:8%; transform:scale(.78); transform-origin:bottom; }.pine-two { right:9%; bottom:22%; transform:scale(1.08); transform-origin:bottom; }.pine-three { right:27%; bottom:23%; transform:scale(.58); transform-origin:bottom; }
.diorama-path { position:absolute; z-index:3; bottom:-11%; left:35%; width:38%; height:41%; background:linear-gradient(173deg,#cabb9e,#eadcc2 70%); clip-path:polygon(40% 0,59% 0,100% 100%,0 100%); opacity:.85; }
.diorama-caption { position:absolute; z-index:4; left:25px; bottom:22px; color:#f5eddb; font:8px var(--sans); letter-spacing:.16em; text-shadow:0 1px 8px #102016; }
.village-world-inner:after { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; border-radius:inherit; box-shadow:inset 0 0 0 1px #fff9; }
@keyframes diorama-arrive { from { opacity:0; transform:translateY(18px) scale(.98); } to { opacity:1; transform:translateY(0) scale(1); } }
.cinema-design .album { background: #111b21; }
.cinema-design .album .section-heading p { color: #afbdc3; }
.cinema-design .album-grid { gap: 20px; }
.cinema-design .album-photo { background: transparent; transform: none; box-shadow: none; padding: 0; color: #e4ddd0; }
.cinema-design .album-photo:nth-child(even) { transform: none; margin-top: 35px; }
.cinema-design .album-photo:hover { transform: translateY(-6px); }
.cinema-design .album-photo img { border-radius: 18px; height: 280px; }
.cinema-design .album-photo span { font: 12px var(--sans); padding-top: 17px; }
.cinema-design .collab-band { background: radial-gradient(ellipse at 80% 0,#3d5a6850,transparent 60%),#0a1319; padding: 85px 6%; border-top: 1px solid #e8d3b42a; }
.cinema-design .collab-band h2 { max-width: 820px; }
.cinema-design .band-flower { display: none; }
.cinema-design .site-footer { background: #080f13; color: #ddd8ca; padding-left: 6%; padding-right: 6%; }
.cinema-design .footer-top p { color: #8f9fa6; }
.cinema-design .footer-top .eyebrow { color: #99a7ac; }
.cinema-design .footer-bottom { border-color: #d8c7b420; color: #a7b1b3; }
.cinema-design .footer-mail { color: #e4c9ad; }
.cinema-design .other-contacts { color: #929e9f; }
.cinema-design .page-intro { padding: 75px 6% 70px; background: radial-gradient(ellipse at 100% 0,#71503e30,transparent 60%); }
.cinema-design .page-intro h1 { font-size: clamp(54px,6.3vw,94px); }
.cinema-design .page-intro>p,.cinema-design .page-intro>div>p { color: #b6c0c4; font-size: 15px; line-height: 1.9; }
.cinema-design .channels-intro { background: #0d1b23; }
.cinema-design .channels-intro+.channel-showcase { padding-top: 50px; }
.cinema-design .about-spread { background: #f5f1e9; color: #233741; padding-top: 85px; }
.cinema-design .about-spread h2 em { color: #926949; }
.cinema-design .about-spread figure img { border-radius: 24px; height: 530px; }
.cinema-design .about-spread .button { background: #203c49; color: #f5ebd9; }
.cinema-design .family-section { background: #10212b; }
.cinema-design .family-section .section-heading p { color: #b5c3c9; }
.family-photo-grid { display: grid; grid-template-columns: 1.15fr 1.15fr .8fr; gap: 24px; }
.family-photo-grid img { width: 100%; height: 320px; object-fit: cover; border-radius: 20px; }
.family-photo-grid figcaption { padding-top: 21px; }
.family-photo-grid strong { display: block; font: 23px var(--serif); margin-bottom: 9px; }
.family-photo-grid figcaption span { font-size: 11px; color: #acbbc1; }
.cinema-design .chapter { background: #f6f2ea; color: #243a44; }
.cinema-design .chapter h2 em { color: #90684d; }
.cinema-design .chapter>img { border-radius: 24px; }
.cinema-design .chapter.reverse { background: #e7e8e2; padding-top: 90px; }
.cinema-design .chapter .text-link { border-color: #243a4450; }
.cinema-design .video-card>img { border-radius: 22px; }
.cinema-design .video-card>strong { font-size: 15px; max-width: 90%; line-height: 1.5; }
.cinema-design .video-play { width: 60px; height: 60px; border-radius: 50%; border: 1px solid #f8e5cc70; background: #142e3c66; backdrop-filter: blur(8px); display: grid; place-items: center; font-size: 19px; left: calc(50% - 30px); top: calc(45% - 30px); }
.cinema-design .collab-intro img { border-radius: 24px; }
.cinema-design .collab-intro figcaption { color: #a8b6bc; font: 11px var(--sans); }
.cinema-design .formats { color: #e7ddd0; }
.cinema-design .formats p { color: #acbac1; line-height: 1.9; }
.cinema-design .formats article>span { color: #d9b895; }
.cinema-design .topics-line span { border-color: #bfc9c63b; color: #b9c4c5; }
.cinema-design .cases { background: #f4f0e7; color: #233b46; }
.cinema-design .cases h2 em { color: #986d50; }
.cinema-design .case-card { border-radius: 18px; background: #fffcf6; border: 1px solid #1e343d12; }
.cinema-design .case-card h3 { font-size: 25px; }
.cinema-design .case-card .text-link { border-color: #48616b50; }
.cinema-design .contact-band { background: #122630; padding: 80px 6%; }
.cinema-design .contact-band p { color: #b4c1c5; }
.cinema-design .support-layout { background: #f4f0e7; color: #233b46; padding-top: 75px; }
.cinema-design .support-note { border-radius: 24px; padding: 0 0 28px; background: #e0e5e2; overflow: hidden; }
.cinema-design .support-note img { width: 100%; max-height: none; height: 430px; object-fit: cover; }
.cinema-design .support-note>span { font-size: 25px; padding: 0 20px; }
.cinema-design .support-options .text-link { border-color: #29455360; }
.cinema-design .photo-dialog { border-radius: 22px; background: #15252e; color: #f5eadb; }
.cinema-design .photo-dialog>img { border-radius: 12px; }
.video-dialog { padding: 20px; border: 1px solid #eadbc22d; border-radius: 22px; background: #11202a; color: #f2e9db; width: min(1000px,94vw); max-height: 94svh; }
.video-dialog::backdrop { background: #040a0fee; backdrop-filter: blur(10px); }
.video-dialog-bar { display: flex; justify-content: space-between; gap: 25px; align-items: center; margin-bottom: 20px; }
.video-dialog-title { font-size: 13px; }
.close-video { background: transparent; color: #edddc7; font-size: 12px; white-space: nowrap; padding: 8px; }
.video-container { aspect-ratio: 16/9; background: #050b0f; border-radius: 15px; overflow: hidden; }
.video-container iframe { width: 100%; height: 100%; border: 0; }
.video-original { display: inline-block; margin-top: 15px; font-size: 12px; color: #dfbc97; }

@media (min-width:1600px) { .cinema-copy h1 { font-size: 106px; }.cinema-scene { width: 53%; }.broadcast-slide { width: 450px; }.broadcast-track { height: 460px; } }
@media (max-width:1150px) {
  .cinema-hero { min-height: max(740px,100svh); padding-left: 5%; padding-right: 5%; }
  .cinema-copy h1 { font-size: 6.2vw; }.cinema-copy p { font-size: 13px; max-width: 330px; }
  .cinema-scene { width: 55%; bottom: 85px; top: 130px; }.scene-signature { font-size: 22px; left: 29%; }
  .cinema-copy .actions { gap: 18px; }.cinema-copy .button { padding: 15px 21px; font-size: 12px; }
  .broadcast-layout { grid-template-columns: 60% 35%; gap: 5%; }.broadcast-slide { width: 330px; }.broadcast-track { height: 355px; }
  .broadcast-body { padding: 20px 17px 29px; }.broadcast-dial { width: 32px; }.broadcast-dial.smaller { width: 25px; }
  .channel-panel h3 { font-size: 46px; }.channel-panel h4 { font-size: 21px; }.channel-panel p { font-size: 12px; }
  .channel-dots { gap: 22px; }.family-photo-grid { gap: 20px; }.family-photo-grid img { height: 280px; }.family-photo-grid strong { font-size: 21px; }
  .cinema-design .section { padding: 80px 5%; }.cinema-design .photo-main img { height: 420px; }
  .cinema-design .life-card { height: 400px; }.cinema-design .album-photo img { height: 230px; }
}
@media (max-width:800px) {
  .cinema-design .site-header { height: 85px; }.home-page .site-header { z-index: 30; }
  .cinema-design .site-header nav { background: #10212b; color: #f0e5d3; border-color: #d8bb8f30; }
  .cinema-design .site-header nav a { font-size: 14px; padding: 12px; }.cinema-design .site-header nav a:last-child { padding: 12px; }
  .cinema-hero { min-height: 1080px; display: flex; flex-direction: column; align-items: stretch; padding: 135px 6% 100px; }
  .cinema-copy { max-width: 620px; z-index: 10; }.cinema-copy h1 { font-size: 67px; margin: 22px 0; }.cinema-copy h1 br:nth-of-type(2) { display: none; }
  .cinema-copy h1 em { display: block; white-space: normal; font-size: .9em; }.cinema-copy p { max-width: 450px; font-size: 13px; margin-bottom: 24px; }
  .cinema-scene { position: relative; width: 100%; height: 510px; top: auto; right: auto; bottom: auto; margin-top: 30px; align-self: center; max-width: 640px; }
  .scene-arch { inset: 0 8% 3% 10%; }.scene-people { inset: 0 3% 5%; }.scene-couple { width: 95%; left: 2%; }
  .scene-signature { left: 33%; bottom: 1%; }.scene-replay { bottom: 2%; right: 5%; }.scene-vignette { background: linear-gradient(0deg,#0b151b,transparent 25%); }
  .cinema-bottom { left: 6%; right: 6%; min-height: 70px; }.cinema-bottom b { margin: 0 8px; }.cinema-bottom>span { font-size: 7px; }.cinema-bottom>a { font-size: 10px; gap: 15px; }
  .cinema-design .section { padding: 65px 6%; }.cinema-design h2 { font-size: 47px; }
  .broadcast-layout { grid-template-columns: 1fr; gap: 25px; }.broadcast-track { height: 400px; }.broadcast-slide { width: 380px; }
  .broadcast-body { padding: 25px 20px 32px; }.broadcast-dial { width: 38px; }.broadcast-dial.smaller { width: 28px; }
  .channel-panels { min-height: 300px; max-width: 540px; margin: 0 auto; text-align: center; }.channel-panel h3 { font-size: 46px; margin-bottom: 16px; }
  .channel-panel h4 br { display: none; }.channel-panel p { font-size: 13px; }.channel-panel .watch-example { margin-left: auto; margin-right: auto; }
  .channel-dots { flex-wrap: wrap; gap: 15px 24px; margin-top: 30px; }.channel-dot span { font-size: 11px; }
  .cinema-design .story-grid { gap: 40px; }.cinema-design .photo-main img { height: 440px; }.cinema-design .story-copy .lead { font-size: 22px; }
  .cinema-design .life-grid { grid-template-columns: repeat(3,1fr); gap: 13px; }.cinema-design .life-card { height: 360px; }.cinema-design .life-overlay { padding: 20px; }.cinema-design .life-overlay strong { font-size: 25px; }.cinema-design .life-overlay>span { font-size: 9px; }
  .cinema-design .album-photo img { height: 290px; }.cinema-design .collab-band,.cinema-design .contact-band { padding: 65px 6%; }.cinema-design .collab-band h2 { font-size: 47px; }
  .cinema-design .page-intro { padding: 60px 6%; }.cinema-design .page-intro h1 { font-size: 65px; }.cinema-design .page-intro>p,.cinema-design .page-intro>div>p { font-size: 14px; }
  .cinema-design .about-spread figure img { height: 480px; }.family-photo-grid { grid-template-columns: 1fr 1fr; gap: 30px 20px; }.family-photo-grid figure:last-child { grid-column: 1/-1; width: 50%; }.family-photo-grid img { height: 340px; }
  .cinema-design .chapter.reverse { padding-top: 65px; }.cinema-design .collab-intro figure { display: block; }.cinema-design .collab-intro img { height: 400px; }
  .cinema-design .formats article { border-color: #ded4ba30; }.cinema-design .support-note { max-width: 500px; }.cinema-design .support-note img { height: 400px; }
}
@media (max-width:480px) {
  .cinema-design .wordmark { font-size: 26px; }.cinema-design .wordmark span { font-size: 9px; }.cinema-design .site-header { margin: 0 6%; }
  .cinema-hero { padding: 122px 6% 95px; min-height: max(950px,100svh); }
  .cinema-copy .eyebrow { font-size: 7px; letter-spacing: .13em; }.cinema-copy h1 { font-size: 47px; line-height: 1.09; margin: 22px 0; }.cinema-copy h1 em { font-size: .9em; }
  .cinema-copy p { font-size: 12px; line-height: 1.85; margin-bottom: 25px; }.cinema-copy .actions { gap: 23px; }.cinema-copy .text-link { font-size: 11px; gap: 12px; }
  .cinema-scene { height: 370px; margin-top: 35px; width: 114%; max-width: none; }.scene-arch { inset: 0 8% 5% 9%; }.scene-people { inset: 0 3% 7%; }
  .scene-couple { width: 98%; left: 0; }.scene-olya { width: 18%; bottom: 0; }.scene-zeus { width: 23%; left: 1%; bottom: -1%; }.scene-ron { width: 29%; bottom: 0; right: 0; }
  .scene-signature { font-size: 20px; left: 28%; bottom: 2%; }.scene-signature small { font-size: 6px; }.scene-replay { font-size: 8px; right: 6%; padding: 7px 9px; bottom: 1%; }
  .cinema-bottom { gap: 18px; min-height: 75px; }.cinema-bottom>span { max-width: 145px; font-size: 6px; line-height: 2; }.cinema-bottom b { margin: 0 5px; }.cinema-bottom>a { font-size: 9px; gap: 10px; }.cinema-bottom>a span { width: 30px; height: 30px; }
  .cinema-design .section { padding: 52px 6%; }.cinema-design h2 { font-size: 37px; }.cinema-design .section-label { font-size: 7px; letter-spacing: .1em; }.cinema-design .section-heading p { font-size: 12px; }
  .channel-showcase .section-heading { margin-bottom: 20px; }.broadcast-layout { gap: 22px; }.broadcast-track { height: 320px; margin: 0 -6.8%; }.broadcast-slide { width: 285px; top: 20px; }
  .broadcast-body { padding: 19px 14px 27px; border-radius: 26px; }.broadcast-bezel { padding: 6px; border-radius: 19px; }.broadcast-dial { width: 29px; }.broadcast-dial.smaller { width: 23px; }.broadcast-control { gap: 9px; }
  .broadcast-brand { font-size: 5px; left: 19px; bottom: 8px; }.broadcast-off { font-size: 26px; }.broadcast-off small { font-size: 6px; letter-spacing: 0; }
  .broadcast-station b { font-size: 37px; }.broadcast-station>span { font-size: 12px; }.broadcast-navigation { gap: 25px; }.round-button { width: 43px; height: 43px; }
  .channel-panels { min-height: 315px; }.channel-panel .eyebrow { font-size: 7px; }.channel-panel h3 { font-size: 41px; }.channel-panel h4 { font-size: 21px; }.channel-panel p { font-size: 12px; }
  .channel-panel .channel-link { font-size: 12px; }.channel-dots { gap: 9px 14px; padding-top: 20px; }.channel-dot { font-size: 8px; gap: 6px; }.channel-dot span { font-size: 10px; }
  .cinema-design .photo-main img { height: 340px; border-radius: 18px; }.cinema-design .story-copy p:not(.lead) { font-size: 13px; }.cinema-design .story-copy .lead { font-size: 21px; }
  .cinema-design .life-grid { grid-template-columns: 1fr; gap: 20px; }.cinema-design .life-card { height: 390px; }.cinema-design .life-overlay { padding: 28px; }.cinema-design .life-overlay strong { font-size: 32px; }.cinema-design .life-overlay>span { font-size: 10px; }
  .cinema-design .album-grid { gap: 24px 15px; }.cinema-design .album-photo img { height: 210px; border-radius: 15px; }.cinema-design .album-photo span { font-size: 11px; line-height: 1.4; }.cinema-design .album-photo:nth-child(even) { margin-top: 25px; }
  .cinema-design .collab-band h2 { font-size: 37px; }.cinema-design .collab-band p { font-size: 12px; }.cinema-design .footer-mail { font-size: 21px; }
  .cinema-design .page-intro { padding: 48px 6%; }.cinema-design .page-intro h1 { font-size: 47px; }.cinema-design .page-intro>p,.cinema-design .page-intro>div>p { font-size: 13px; }.cinema-design .page-intro .eyebrow { font-size: 7px; }
  .cinema-design .about-spread figure img { height: 350px; border-radius: 19px; }.cinema-design .about-spread .button { font-size: 11px; }
  .family-photo-grid { grid-template-columns: 1fr; gap: 35px; }.family-photo-grid figure:last-child { grid-column: auto; width: 100%; }.family-photo-grid img { height: 350px; }.family-photo-grid strong { font-size: 25px; }
  .cinema-design .chapter>img { height: 360px; border-radius: 19px; }.cinema-design .chapter.reverse { padding-top: 52px; }.cinema-design .video-card>strong { font-size: 14px; }
  .cinema-design .collab-intro img { height: 350px; }.cinema-design .contact-band { padding: 55px 6%; }.cinema-design .support-options h2 { font-size: 28px; }.cinema-design .support-note img { height: 350px; }.cinema-design .support-note>span { font-size: 23px; }
  .video-dialog { padding: 12px; border-radius: 15px; }.video-dialog-title { font-size: 10px; }.close-video { font-size: 10px; }.video-dialog-bar { gap: 14px; margin-bottom: 12px; }
}
@media (max-width:360px) { .cinema-copy h1 { font-size: 41px; }.cinema-copy .actions { gap: 15px; }.cinema-scene { height: 330px; }.cinema-hero { min-height: 930px; }.broadcast-slide { width: 255px; }.broadcast-track { height: 295px; }.scene-signature { font-size: 17px; left: 26%; }.cinema-design .page-intro h1 { font-size: 41px; }.cinema-design .support-options h2 { font-size: 25px; } }
@media (prefers-reduced-motion:reduce) { .scene-await .scene-people img { opacity: 1; }.scene-replay { display: none; }.broadcast-slide { will-change: auto; }.cinema-design * { animation: none!important; transition: none!important; } }
@media (max-width:900px) { .village-world { padding:65px 4%; }.village-world-inner { grid-template-columns:1fr 1fr; gap:25px; padding:48px 5%; min-height:500px; }.diorama-scene { height:400px; } }
@media (max-width:640px) { .village-world { padding:46px 5%; }.village-world-inner { display:flex; flex-direction:column; align-items:stretch; gap:30px; padding:36px 25px 24px; border-radius:25px; }.diorama-copy { max-width:none; }.diorama-copy h2 { font-size:42px; margin:18px 0; }.diorama-copy p { font-size:12px; }.diorama-note { margin-top:21px; }.diorama-note span:first-child { font-size:38px; }.diorama-scene { height:330px; border-radius:47% 47% 17px 17px/24% 24% 17px 17px; }.diorama-photo { inset:12% 4% 21%; }.diorama-pine { transform:scale(.75); transform-origin:bottom; }.pine-two { transform:scale(.85); transform-origin:bottom; }.pine-three { transform:scale(.48); transform-origin:bottom; } }
