/* EUTYCH V9.9.1 — stable rotating project screen stack
   Panels stay front-facing while travelling through depth. This prevents
   mirrored text / edge-on cards and keeps the composition readable. */
.eutych-rs-section{position:relative;overflow:hidden;scroll-margin-top:96px;background:#070708;color:#fff;border-block:1px solid rgba(255,255,255,.06)}
.eutych-rs-section:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 58%,rgba(255,212,0,.06),transparent 45%)}
.eutych-rs-shell{position:relative;z-index:1;min-width:0}
.eutych-rs-heading{max-width:900px;margin:0 auto;text-align:center;padding:72px 18px 8px}
.eutych-rs-heading>span{display:inline-block;color:#ffd400;font-size:11px;font-weight:800;letter-spacing:.16em;margin-bottom:11px}
.eutych-rs-heading h2{margin:0;font-size:clamp(2rem,4.2vw,4.35rem);line-height:1.02;letter-spacing:-.05em;font-weight:800;overflow-wrap:anywhere}
.eutych-rs-heading p{max-width:720px;margin:15px auto 0;color:#9d9da6;font-size:15px;line-height:1.65}
.eutych-rs-stage{height:var(--rs-stage-h);position:relative;display:grid;place-items:center;perspective:var(--rs-perspective);perspective-origin:50% 48%;outline:none;touch-action:pan-y;user-select:none;overflow:hidden;isolation:isolate}
.eutych-rs-stage:after{content:"";position:absolute;z-index:-1;width:min(780px,72vw);height:58%;left:50%;top:50%;translate:-50% -50%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,212,0,.065),rgba(255,212,0,.018) 46%,transparent 73%);filter:blur(18px);pointer-events:none}
.eutych-rs-stage:focus-visible{box-shadow:inset 0 0 0 1px #ffd400}
.eutych-rs-world{position:relative;width:var(--rs-card-w);height:var(--rs-card-h);max-width:calc(100vw - 76px);transform-style:preserve-3d;will-change:transform}
.eutych-rs-card{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform,opacity,filter;transform-origin:50% 50%;backface-visibility:hidden;transition:filter .18s ease,opacity .18s ease}
.eutych-rs-card-button{appearance:none;border:0;background:transparent;padding:0;width:100%;height:100%;cursor:pointer;color:inherit;text-align:inherit;transform-style:preserve-3d;border-radius:30px}
.eutych-rs-card-button:focus-visible{outline:2px solid #ffd400;outline-offset:5px}
.eutych-rs-device{position:relative;display:block;width:100%;height:100%;border:1px solid rgba(255,255,255,.42);border-radius:30px;background:linear-gradient(145deg,#55555b,#17171a 8%,#08080a 91%,#4c4c52);padding:9px;box-shadow:0 30px 76px rgba(0,0,0,.54),0 0 0 1px rgba(255,255,255,.07) inset;overflow:visible;transform-style:preserve-3d}
.eutych-rs-screen{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:21px;background:#0d0d10;backface-visibility:hidden}
.eutych-rs-media{display:block;width:100%;height:100%;object-fit:cover;backface-visibility:hidden}
.eutych-rs-vignette{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 46%,rgba(0,0,0,.12) 61%,rgba(0,0,0,.82));pointer-events:none}
.eutych-rs-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:22px 24px;display:flex;flex-direction:column;gap:5px;text-shadow:0 2px 18px #000;backface-visibility:hidden}
.eutych-rs-copy em{align-self:flex-start;font-style:normal;font-size:10px;line-height:1;padding:5px 8px;border-radius:999px;background:#ffd400;color:#09090b;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-shadow:none}
.eutych-rs-copy strong{font-size:clamp(18px,2.1vw,29px);line-height:1.05}
.eutych-rs-copy small{font-size:13px;color:rgba(255,255,255,.74);line-height:1.42;max-width:75%}
.eutych-rs-edge{position:absolute;left:13%;right:13%;height:16px;bottom:-13px;border-radius:0 0 12px 12px;background:linear-gradient(90deg,#111114,#7e7e84 28%,#29292d 64%,#0b0b0e);transform:translateZ(-12px);opacity:.9}
.eutych-rs-card[data-front="1"] .eutych-rs-device{box-shadow:0 38px 100px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.12) inset,0 0 44px rgba(255,212,0,.045)}
.eutych-rs-card:hover{filter:brightness(1.07)!important}
.eutych-rs-hint{position:absolute;bottom:24px;left:50%;translate:-50% 0;color:#777780;font-size:11px;letter-spacing:.09em;text-transform:uppercase;pointer-events:none;white-space:nowrap}
.eutych-rs-modal[hidden]{display:none}.eutych-rs-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:28px}.eutych-rs-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.86);backdrop-filter:blur(9px)}
.eutych-rs-modal-card{position:relative;z-index:1;width:min(1050px,94vw);max-height:88vh;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:26px;background:#101012;box-shadow:0 35px 100px rgba(0,0,0,.7)}
.eutych-rs-modal-media{min-height:420px;background:#070708}.eutych-rs-modal-media img,.eutych-rs-modal-media video{display:block;width:100%;height:100%;max-height:78vh;object-fit:cover}
.eutych-rs-modal-copy{padding:38px 32px;display:flex;flex-direction:column;justify-content:flex-end;min-width:0}.eutych-rs-modal-copy>span:not(:empty){align-self:flex-start;background:#ffd400;color:#08080a;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase}.eutych-rs-modal-copy h3{font-size:clamp(1.7rem,3.5vw,3.4rem);line-height:.96;letter-spacing:-.05em;margin:13px 0 0}.eutych-rs-modal-copy p{color:#a0a0a8;line-height:1.6;margin:15px 0 0}.eutych-rs-modal-copy a{color:#ffd400;font-weight:700;margin-top:24px;text-decoration:none}.eutych-rs-modal-close{position:absolute;z-index:3;right:14px;top:14px;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(8,8,10,.72);color:#fff;font-size:28px;line-height:1;cursor:pointer}
body.eutych-rs-modal-open{overflow:hidden}
@media(max-width:900px){.eutych-rs-heading{padding-top:54px}.eutych-rs-stage{height:min(var(--rs-stage-h),660px)}.eutych-rs-world{scale:.76}.eutych-rs-modal-card{grid-template-columns:1fr;max-height:92vh;overflow:auto}.eutych-rs-modal-media{min-height:280px}.eutych-rs-modal-copy{padding:24px}}
@media(max-width:600px){.eutych-rs-section{scroll-margin-top:76px}.eutych-rs-heading{padding:44px 14px 0}.eutych-rs-heading p{font-size:13px}.eutych-rs-stage{height:520px}.eutych-rs-world{scale:.54}.eutych-rs-hint{bottom:13px}.eutych-rs-modal{padding:12px}.eutych-rs-modal-card{border-radius:18px}.eutych-rs-modal-media{min-height:240px}.eutych-rs-copy small{max-width:90%}}
@media(prefers-reduced-motion:reduce){.eutych-rs-world,.eutych-rs-card{transition:none!important}.eutych-rs-hint{display:none}}

/* V9.9.2 — optional project labels */
.eutych-rs-modal-copy h3:empty,.eutych-rs-modal-copy p:empty,.eutych-rs-modal-copy>span:empty{display:none}

/* EUTYCH V12.6.2 — MOBILE ALWAYS-RUN PATCH */
@media (max-width: 900px){
  .eutych-rs-stage{
    touch-action:pan-y;
    -webkit-user-select:none;
    user-select:none;
  }
  .eutych-rs-world,
  .eutych-rs-card,
  .eutych-rs-device,
  .eutych-rs-screen{
    -webkit-transform-style:preserve-3d;
    transform-style:preserve-3d;
    will-change:transform;
  }
}
