.project-spot{--spot-bg:#17140f;--spot-panel:#221e18;--spot-ink:#fffaf1;--spot-muted:#bbb1a3;--spot-accent:#edaa35;overflow:hidden;border-radius:18px;background:var(--spot-bg);color:var(--spot-ink);box-shadow:0 24px 70px rgba(37,29,18,.16)}
.project-spot__stage{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.68fr);min-height:520px}
.project-spot__screen{position:relative;min-width:0;overflow:hidden;background:#090806;isolation:isolate}
.project-spot__media{position:absolute;inset:0}.project-spot__image,.project-spot__video{display:block;width:100%;height:100%;object-fit:cover;background:#090806}
.project-spot__image{transform:scale(1.04);transform-origin:50% 50%}.project-spot.is-running .project-spot__image{animation:project-spot-pan 12s ease-in-out alternate infinite}
.project-spot__shade{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(0,0,0,.58))}
.project-spot__media-label,.project-spot__frame-status{position:absolute;z-index:2;bottom:18px;padding:8px 11px;border-radius:999px;background:rgba(12,10,7,.72);backdrop-filter:blur(9px);color:#f8f1e7;font:650 11px/1.1 var(--body);letter-spacing:.035em}
.project-spot__media-label{left:18px}.project-spot__frame-status{right:18px;font-family:var(--mono);color:#d3c8b8}
.project-spot__copy{display:flex;min-width:0;flex-direction:column;padding:38px 32px 30px;background:var(--spot-panel)}
.project-spot__eyebrow{margin:0 0 18px;color:var(--spot-accent);font:650 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.project-spot__title{margin:0;font:740 clamp(34px,4vw,54px)/.94 var(--display);letter-spacing:-.055em;text-wrap:balance}
.project-spot__summary{margin:18px 0 0;color:var(--spot-muted);font-size:15px;line-height:1.58;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.project-spot__tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.project-spot__tags[hidden]{display:none}.project-spot__tags span{padding:7px 9px;border:1px solid #4b443a;border-radius:999px;color:#d5cabd;font:600 10px/1 var(--body)}
.project-spot__cta{display:inline-flex;width:max-content;align-items:center;justify-content:center;min-height:46px;margin-top:26px;padding:10px 17px;border-radius:999px;background:var(--spot-ink);color:#19150f;font:700 13px/1 var(--body)}.project-spot__cta:hover{background:#f2b34a;color:#17120b}
.project-spot__controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:30px}.project-spot__control{display:inline-flex;align-items:center;justify-content:center;min-width:72px;min-height:44px;padding:9px 13px;border:1px solid #554d42;border-radius:999px;background:transparent;color:var(--spot-ink);cursor:pointer;font:650 12px/1 var(--body)}.project-spot__control:hover{border-color:#8c7c67;background:#302a22}.project-spot__control:disabled{cursor:default;opacity:.4}
.project-spot__queue{display:flex;gap:2px;overflow-x:auto;padding:2px;background:#0e0c09;scrollbar-width:thin;scrollbar-color:#665b4c #18140f}.project-spot__queue-slot{flex:0 0 auto}.project-spot__queue-item{position:relative;display:grid;grid-template-columns:60px minmax(110px,1fr);gap:10px;align-items:center;min-width:210px;min-height:72px;padding:7px;border:1px solid transparent;background:#181510;color:#cfc5b8;cursor:pointer;text-align:left;font:650 12px/1.25 var(--body)}.project-spot__queue-item:hover{background:#28231d}.project-spot__queue-item[aria-pressed="true"]{border-color:var(--spot-accent);background:#30281e;color:#fff}.project-spot__queue-item img{width:60px;height:48px;object-fit:cover;background:#0b0907}.project-spot__live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.project-spot--media .project-spot__stage{position:relative;display:block;min-height:0}.project-spot--media .project-spot__screen{aspect-ratio:16/10}.project-spot--media .project-spot__copy{position:absolute;z-index:3;right:14px;bottom:14px;padding:0;background:transparent}.project-spot--media .project-spot__controls{margin:0;padding:0}.project-spot--media .project-spot__control{border-color:rgba(255,255,255,.55);background:rgba(16,13,9,.78);backdrop-filter:blur(8px)}.project-spot--media .project-spot__frame-status{right:auto;left:18px;bottom:54px}
.project-spot--media .project-spot__queue{display:none}.project-spot--media .project-spot__control{min-width:44px;width:44px;height:44px;padding:0;font-size:20px}.project-spot__side{position:absolute;z-index:4;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:56px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(16,13,9,.72);color:#fff;cursor:pointer;font:36px/1 system-ui}.project-spot__side--prev{left:14px}.project-spot__side--next{right:14px}.project-spot__side:disabled{display:none}.project-spot__side:hover{background:rgba(16,13,9,.9)}
@keyframes project-spot-pan{0%{transform:scale(1.04) translate3d(-1.3%,0,0)}100%{transform:scale(1.1) translate3d(1.5%,-.7%,0)}}
@media(max-width:820px){.project-spot__stage{grid-template-columns:1fr;min-height:0}.project-spot__screen{aspect-ratio:16/10}.project-spot__copy{padding:28px 24px 24px}.project-spot__controls{margin-top:24px;padding-top:0}.project-spot__queue-item{min-width:190px}}
@media(max-width:520px){.project-spot{margin-inline:-16px;border-radius:0}.project-spot__screen{aspect-ratio:4/3}.project-spot__copy{padding:24px 16px}.project-spot__title{font-size:38px}.project-spot__summary{-webkit-line-clamp:4}.project-spot__controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.project-spot__control{min-width:0;padding-inline:8px}.project-spot__media-label{left:12px;bottom:12px}.project-spot__frame-status{right:12px;bottom:12px}.project-spot--media{margin-inline:0}.project-spot--media .project-spot__copy{right:8px;bottom:8px;padding:0}.project-spot--media .project-spot__controls{display:flex}.project-spot--media .project-spot__control{min-width:66px}.project-spot--media .project-spot__media-label{bottom:62px}.project-spot--media .project-spot__frame-status{right:auto;left:12px;bottom:98px}}
@media(prefers-reduced-motion:reduce){.project-spot__image,.project-spot.is-running .project-spot__image{animation:none;transform:none}.project-spot *{scroll-behavior:auto!important}}
