/* Studio motion edition — self-contained adaptations of user-provided React Bits styles */
.discipline-strip{display:none!important}
/* Aurora: the GPU canvas is purely decorative; CSS stays visible if WebGL is blocked. */
.aurora-layer{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse 70% 62% at 51% 78%,rgba(146,110,65,.15),transparent 71%),radial-gradient(ellipse 45% 68% at 13% 18%,rgba(56,80,70,.14),transparent 80%)}
.aurora-layer::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,10,10,.35),transparent 62%),linear-gradient(0deg,#0d0e0d,transparent 22%);z-index:1}
.aurora-layer canvas{position:absolute;width:100%;height:100%;display:block;opacity:.48;mix-blend-mode:screen}
.hero-grid{z-index:3}.hero-orbit{z-index:1}.hero::before{z-index:1}.hero-side-label{z-index:3}
.hero{background-color:#0d0e0d;background-image:radial-gradient(ellipse at 57% 60%,#191914 0%,#0b0d0c 75%)}
.hero-title{isolation:isolate}.hero-title .split-chars{display:inline}.split-char,.split-word{display:inline-block;will-change:transform,opacity}.hero-title .split-char{transform-origin:center bottom}
.split-run .split-char{animation:split-rise var(--split-duration,.75s) cubic-bezier(.16,1,.3,1) both;animation-delay:var(--split-delay,0s)}
.split-run .split-word{animation:split-rise .82s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--split-delay,0s)}
@keyframes split-rise{from{opacity:0;transform:translate3d(0,.48em,0) rotate(3deg);filter:blur(4px)}to{opacity:1;transform:translate3d(0,0,0) rotate(0);filter:blur(0)}}
/* Bento system */
.studio-capabilities{background:#101110;padding-top:112px;padding-bottom:136px;border-top:1px solid rgba(239,230,208,.07)}
.studio-capabilities .section-heading{margin-bottom:45px}
.magic-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row dense;gap:14px;position:relative;isolation:isolate}
.bento-tile{--glow-x:50%;--glow-y:50%;--tilt-x:0deg;--tilt-y:0deg;position:relative;grid-column:span 5;min-height:340px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:30px 35px;color:#f4eee2;border:1px solid rgba(217,195,155,.17);background:#1b1d1a;transform:perspective(950px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateZ(0);transition:transform .32s cubic-bezier(.2,.8,.2,1),border-color .24s,background .25s;contain:paint}
.bento-tile.bento-wide{grid-column:span 7}
.bento-tile::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;opacity:0;transition:opacity .25s;background:radial-gradient(420px circle at var(--glow-x) var(--glow-y),rgba(216,186,131,.24),rgba(216,186,131,.035) 33%,transparent 68%)}
.bento-tile:hover,.bento-tile:focus-visible{border-color:rgba(225,193,137,.63)}.bento-tile:hover::after,.bento-tile:focus-visible::after{opacity:1}
.bento-no{position:relative;z-index:2;font:10px var(--mono);letter-spacing:1.9px;color:#d9c39b;line-height:1.5}
.bento-contents{position:relative;z-index:2;max-width:440px;margin-top:40px}
.bento-overline{font:10px var(--mono);letter-spacing:1.5px;color:#c6b798}
.bento-tile h3{font:normal clamp(32px,3.5vw,58px)/1.05 var(--serif);letter-spacing:-.062em;margin:16px 0 17px}
.bento-tile h3 em{color:#e3cb9d;font-weight:400}.bento-tile p{font-size:13px;line-height:1.8;max-width:360px;color:#c1c0b8;margin:0 0 22px}
.bento-link{display:inline-block;font-size:12px;font-weight:600;border-bottom:1px solid #ac9a79;padding-bottom:9px;letter-spacing:.4px;transition:letter-spacing .25s}
.bento-tile:hover .bento-link{letter-spacing:1px}.bento-symbol{position:absolute;right:35px;top:17px;font:clamp(160px,23vw,300px)/1 var(--serif);color:rgba(228,209,176,.085);transition:transform .7s;pointer-events:none}.bento-tile:hover .bento-symbol{transform:rotate(22deg) scale(1.08)}
.bento-wide:first-child{background:radial-gradient(ellipse at 94% 45%,rgba(112,98,70,.44),transparent 55%),linear-gradient(135deg,#22221e,#151714 72%)}
.bento-photo{background:linear-gradient(0deg,rgba(17,17,16,.97),rgba(17,17,16,.12) 100%),url('assets/thumbs/portrait_editorial_01.webp') center 35%/cover;min-height:410px}
.bento-photo::before,.bento-film::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,11,11,.88) 0%,transparent 80%);transition:opacity .35s}
.bento-photo .bento-contents,.bento-film .bento-contents{margin-top:auto}
.bento-film{background:linear-gradient(0deg,rgba(17,17,16,.97),rgba(17,17,16,.1) 100%),url('assets/reels/reel_03.jpg') center/cover;min-height:390px}
.bento-contact{background:radial-gradient(ellipse at 85% 30%,rgba(194,162,114,.24),transparent 65%),#242019}
.bento-contact h3{font-size:clamp(32px,3.5vw,55px)}.bento-big-arrow{position:absolute;right:38px;bottom:29px;font-size:clamp(110px,13vw,170px);line-height:.85;color:rgba(232,201,159,.12);z-index:1;transition:transform .35s}.bento-contact:hover .bento-big-arrow{transform:translate(12px,-12px)}
.bento-ripple{position:absolute;width:20px;height:20px;z-index:6;pointer-events:none;border:1px solid rgba(243,212,162,.55);border-radius:50%;transform:translate(-50%,-50%);animation:bento-ripple .65s ease-out forwards}
@keyframes bento-ripple{to{opacity:0;width:450px;height:450px}}
/* Featured liquid / arc carousel */
.featured-gallery{position:relative;margin:5px 0 74px;padding:26px 0 30px;border-top:1px solid rgba(217,195,155,.22);border-bottom:1px solid rgba(217,195,155,.16)}
.featured-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:15px}
.featured-gallery-sub{color:#bbb8ae;font-size:13px;line-height:1.7;margin:12px 0 0;max-width:520px}
.gallery-mode-switch{border:1px solid rgba(217,195,155,.25);display:inline-flex;padding:3px;gap:2px;flex-shrink:0}
.gallery-mode{color:#aaa79e;background:transparent;border:0;padding:11px 21px;min-height:42px;letter-spacing:.6px;font-size:11px;transition:background .25s,color .25s}
.gallery-mode.active{color:#111;background:var(--gold);font-weight:700}.gallery-mode:not(.active):hover{color:#faf7ee}
.featured-viewport{position:relative;height:480px;overflow:hidden;touch-action:pan-y;isolation:isolate;cursor:grab;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.featured-viewport.dragging{cursor:grabbing}
.featured-viewport::before{content:"";position:absolute;inset:auto 0 0;height:160px;background:radial-gradient(ellipse at center,rgba(193,158,104,.09),transparent 61%);pointer-events:none}
.featured-stage{position:relative;height:100%;outline-offset:-6px}
.featured-card{--x:0px;--rotate:0deg;--y:0px;--scale:1;--opacity:1;position:absolute;left:50%;top:50%;width:clamp(200px,26vw,340px);height:clamp(270px,29vw,380px);overflow:hidden;transform:translate(-50%,-50%) translate3d(var(--x),var(--y),0) rotate(var(--rotate)) scale(var(--scale));border:1px solid rgba(216,193,156,.22);background:#1b1d1b;color:white;text-align:left;padding:0;opacity:var(--opacity);transition:transform .72s cubic-bezier(.22,1,.36,1),opacity .58s ease,filter .58s;box-shadow:0 24px 72px rgba(0,0,0,.35);will-change:transform;z-index:var(--order,2)}
.featured-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86) brightness(.9);transition:filter .4s,transform .7s}
.featured-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.81),transparent 50%)}
.featured-card .featured-caption{position:absolute;bottom:21px;left:22px;right:18px;z-index:2;display:grid;gap:7px}
.featured-card .featured-caption small{color:#e5ceaa;font:10px var(--mono);letter-spacing:1px}
.featured-card .featured-caption strong{font:normal clamp(20px,2.5vw,28px)/1.1 var(--serif)}
.featured-card .featured-open{position:absolute;top:17px;right:17px;width:36px;height:36px;border:1px solid rgba(255,255,255,.72);border-radius:50%;z-index:2;display:grid;place-items:center;font-size:17px}
.featured-card[data-active="true"]{border-color:#e4c99c}.featured-card[data-active="true"] img{filter:saturate(1) brightness(1)}.featured-card[data-active="true"]:hover img{transform:scale(1.045)}
.featured-card:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.featured-controls{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:0}
.featured-arrow{width:49px;height:49px;border-radius:50%;border:1px solid rgba(217,195,155,.55);display:grid;place-items:center;background:transparent;color:#e9ddc9;font-size:22px;transition:background .25s,color .25s}
.featured-arrow:hover{background:var(--gold);color:#161410}.gallery-progress{display:flex;align-items:center;gap:17px;color:#c9b99b;font:12px var(--mono);font-variant-numeric:tabular-nums}
.gallery-progress-track{width:110px;height:2px;background:rgba(217,195,155,.2);overflow:hidden}.gallery-progress-track i{display:block;height:100%;background:var(--gold);width:10%;transition:width .4s}
@media (max-width:1100px){.bento-tile{padding:25px}.bento-tile h3{font-size:clamp(31px,3.6vw,47px)}}
@media (max-width:768px){.aurora-layer canvas{opacity:.34}.studio-capabilities{padding-top:88px;padding-bottom:92px}.magic-bento{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bento-tile,.bento-tile.bento-wide{grid-column:span 1;min-height:320px;padding:24px}.bento-tile.bento-wide:first-child,.bento-tile.bento-contact{grid-column:span 2;min-height:290px}.bento-film,.bento-photo{min-height:370px}.bento-tile h3{font-size:34px}.bento-tile p{font-size:12px}.featured-gallery{margin-bottom:52px}.featured-viewport{height:400px}.featured-card{width:clamp(205px,43vw,300px);height:320px}}
@media (max-width:520px){.magic-bento{display:flex;flex-direction:column}.bento-tile,.bento-tile.bento-wide{width:100%;min-height:280px;padding:26px}.bento-photo,.bento-film{min-height:320px}.bento-tile h3{font-size:37px}.bento-wide:first-child .bento-contents{max-width:270px}.featured-gallery-head{align-items:start;flex-direction:column;gap:14px}.featured-viewport{height:330px;mask-image:none}.featured-card{width:min(66vw,265px);height:275px}.featured-controls{gap:17px}.featured-arrow{width:43px;height:43px}.featured-gallery-sub{font-size:12px}.gallery-mode{padding:9px 18px}.bento-symbol{right:15px;font-size:180px}}
@media (prefers-reduced-motion:reduce){.aurora-layer canvas{display:none}.split-run .split-char,.split-run .split-word{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}.featured-card{transition:none!important}.bento-tile,.bento-symbol,.bento-big-arrow{transition:none!important;transform:none!important}.bento-ripple{display:none}}
