/* Light polish only: restrained glass reflections and micro-interactions. */
:root{--glass-shine:rgba(255,255,255,.06)}
body:before{content:"";position:fixed;inset:0;z-index:80;pointer-events:none;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.shine-card{position:relative;isolation:isolate;overflow:hidden}
.shine-card:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(260px circle at var(--shine-x,50%) var(--shine-y,50%),var(--glass-shine),transparent 65%);opacity:0;transition:opacity .35s ease}
.shine-card:hover:after{opacity:1}
.code-window{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}
.code-window:hover{box-shadow:0 36px 82px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.035)}
.button.micro-magnetic{will-change:transform;transition:background .2s,border-color .2s,box-shadow .2s,transform .28s cubic-bezier(.2,.8,.2,1)}
.button.primary.micro-magnetic:hover{box-shadow:0 12px 28px rgba(45,125,255,.2)}
.project-card .project-image img,.example-card img{transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s ease}
.project-card:hover .project-image img,.example-card:hover img{transform:scale(1.025)}
.navbar{box-shadow:0 8px 30px rgba(0,0,0,.08)}
.signature-logo{display:flex;align-items:center;width:152px;height:48px;transform:none!important;overflow:visible}
.signature-logo img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(145,178,238,.12))}
.footer-grid .signature-logo{width:184px;height:62px;margin:-12px 0 3px!important}
.footer-grid .signature-logo img{width:100%;height:100%}
@media(max-width:540px){.shine-card:after{display:none}.button.micro-magnetic{transform:none!important}}
@media(max-width:540px){.signature-logo{width:128px;height:42px}.footer-grid .signature-logo{width:158px;height:54px}}
@media(prefers-reduced-motion:reduce){.code-window,.button.micro-magnetic,.project-card .project-image img,.example-card img{transform:none!important;transition:none!important}}

/* Lightweight project detail routes */
.project-detail{min-height:100vh;padding:110px 0 0;background:linear-gradient(180deg,#070b14,#090f1b 65%,#070b14)}
.project-detail .back{display:inline-flex;margin-bottom:58px}
.project-detail-head{max-width:850px;margin-bottom:45px}
.project-detail-head h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.94;margin-bottom:24px}
.project-detail-head>p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:1rem}
.project-detail-head .tags{margin-top:25px}
.project-detail-visual{height:min(65vw,620px);min-height:390px;border:1px solid var(--line);border-radius:28px;position:relative;overflow:hidden;display:grid;place-items:center;box-shadow:0 35px 90px rgba(0,0,0,.28)}
.project-detail-visual:after{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.13);border-radius:20px;pointer-events:none}
.project-detail-visual img{width:100%;height:100%;object-fit:cover;object-position:top}
.project-detail-visual .project-preview{width:min(70%,580px);height:58%;border-radius:18px;transform:scale(1.15)}
.project-detail-info{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:18px;padding:75px 0}
.project-detail-info>div{padding:28px;border:1px solid var(--line);border-radius:22px;background:rgba(14,22,37,.72)}
.project-detail-info span{font-size:.65rem;color:var(--blue-soft);letter-spacing:.12em}
.project-detail-info h2{font-size:1.15rem;margin:18px 0 10px;letter-spacing:-.02em}
.project-detail-info p{font-size:.84rem;color:var(--muted);margin:0}
.project-detail-cta{padding:75px 0 110px;text-align:center;border-top:1px solid var(--line)}
.project-detail-cta h2{font-size:clamp(2rem,4vw,3.7rem);margin-bottom:30px}
@media(max-width:800px){.project-detail{padding-top:80px}.project-detail-info{grid-template-columns:1fr;padding:48px 0}.project-detail-visual{height:430px;min-height:0}.project-detail-cta{padding:55px 0 80px}}
@media(max-width:540px){.project-detail-head h1{font-size:3rem}.project-detail-visual{height:285px;border-radius:22px}.project-detail-visual:after{inset:10px;border-radius:15px}.project-detail .back{margin-bottom:38px}}
