@font-face{font-family:Outfit;src:url("./public/fonts/outfit-500.ttf") format("truetype");font-weight:500;font-display:swap}
:root{color-scheme:dark;--detail-width:min(83.4375vw,1602px);--detail-top:80px;--detail-radius:0}
*{box-sizing:border-box}
html{background:#080b10;scrollbar-gutter:stable}
body{min-width:320px;margin:0;background:#080b10;color:#fff;font-family:Outfit,"PingFang SC",sans-serif}
.detail-background{position:fixed;inset:0;background:#0e1117 url("./public/assets/project-detail/site-background-long.png") center top/cover no-repeat;filter:blur(2px);transform:scale(1.012);transform-origin:center top}
.detail-background-frame{position:fixed;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);border:0;background:#0e1117;filter:blur(2px);pointer-events:none}
.detail-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.detail-close{position:fixed;z-index:10;top:40px;right:40px;display:grid;width:64px;height:64px;padding:16px;border:.5px solid rgba(255,255,255,.29);border-radius:50%;background:#262626;place-items:center;cursor:pointer;transition:background-color .24s ease,transform .24s cubic-bezier(.22,1,.36,1)}
.detail-close:hover{background:#343434;transform:scale(1.05)}
.detail-close:focus-visible{outline:2px solid #3ba9fd;outline-offset:4px}
.detail-close img{position:absolute;top:50%;left:50%;display:block;width:32px;height:32px;transform:translate(-50%,-50%)}
.detail-shell{position:relative;z-index:2;width:var(--detail-width);min-height:calc(100vh - var(--detail-top));margin:var(--detail-top) auto 0;padding-bottom:80px}
.detail-content{display:flex;width:100%;overflow:hidden;border-radius:var(--detail-radius);background:#f4f4f4;box-shadow:0 4px 42px rgba(255,255,255,.14);flex-direction:column}
.detail-media{display:block;width:calc(100% + 4px);max-width:none;height:auto;margin:0 0 0 -2px;border:0;background:#111}
.detail-media+.detail-media{margin-top:-1px}
.detail-page-frame{width:100%;height:1000px;margin:0;background:#000;overflow:hidden}
video.detail-media{aspect-ratio:16/9;object-fit:cover}
.detail-composite{position:relative;overflow:hidden;background-position:center;background-size:100% 100%;background-repeat:no-repeat}
.detail-composite-layer{position:absolute;z-index:1;display:block;max-width:none;object-fit:cover;border:0;pointer-events:none}
.detail-composite-layer+img{z-index:2;object-fit:fill}
.detail-composite .path-text-layer{inset:0;width:100%;height:100%;overflow:visible}
.detail-composite .path-text-layer>path{fill:none;stroke:none}
.detail-placeholder{display:grid;min-height:min(82vh,900px);padding:clamp(44px,7vw,110px);align-content:end;background:#f4f4f4 var(--cover) center/cover no-repeat;color:#fff;isolation:isolate;position:relative}
.detail-placeholder::before{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.04) 35%,rgba(0,0,0,.8));content:""}
.detail-placeholder h1{max-width:900px;margin:0;font-size:clamp(42px,6vw,92px);line-height:.95}
.detail-placeholder p{margin:22px 0 0;font-size:clamp(16px,1.5vw,24px);opacity:.78}
@media(max-width:900px){:root{--detail-width:calc(100vw - 32px);--detail-top:72px}.detail-close{top:16px;right:16px;width:48px;height:48px;padding:12px}.detail-close img{width:24px;height:24px}.detail-shell{padding-bottom:32px}}
@media(prefers-reduced-motion:reduce){.detail-close{transition:none}}
