/*
Theme Name: Divi Portfolio Child
Description: Premium dark glassmorphism portfolio styling and Projects system for Divi.
Template: Divi
Version: 1.0
*/
:root{--bg:#070912;--tx:#eef1ff;--mut:#97a0c0;--glass:rgba(255,255,255,.06);--bd:rgba(255,255,255,.12);--grad:linear-gradient(135deg,#7c5cff,#00d4ff)}
[data-theme=light]{--bg:#f4f5fb;--tx:#12162b;--mut:#525b7a;--glass:rgba(255,255,255,.72);--bd:rgba(20,25,60,.12)}
html{scroll-behavior:smooth}
body{background:var(--bg)!important;color:var(--tx)}
body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(600px 420px at 12% 8%,rgba(124,92,255,.28),transparent),radial-gradient(520px 420px at 88% 30%,rgba(0,212,255,.18),transparent),radial-gradient(520px 420px at 50% 95%,rgba(255,92,168,.14),transparent)}
#page-container,#et-main-area,#main-content,.et_pb_section{background:transparent}
body h1,body h2,body h3,body h4,body p,body li,.et_pb_text,#main-content .container{color:var(--tx)}
#main-header,#main-header.et-fixed-header{background:var(--glass)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--bd);box-shadow:none!important}
#top-menu a,#top-menu-nav a{color:var(--tx)!important}
#top-menu li.current-menu-item>a{color:#00d4ff!important}
.glass{background:var(--glass);border:1px solid var(--bd);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:18px}
.pad{padding:26px}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.btn-grad,.pf-filters button{display:inline-block;padding:11px 26px;border-radius:999px;border:1px solid var(--bd);background:var(--glass);color:var(--tx);font-weight:600;cursor:pointer;transition:.25s;text-decoration:none}
.btn-grad,.pf-filters button.on{background:var(--grad);border:0;color:#fff}
.btn-grad:hover,.pf-filters button:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(124,92,255,.35)}
.pf-eye{color:#00d4ff;font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.85rem}
.pf-lead{color:var(--mut)!important;font-size:1.15rem;max-width:560px}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{font-size:.78rem;padding:3px 11px;border-radius:999px;background:rgba(124,92,255,.16);border:1px solid rgba(124,92,255,.35)}
.pf-sg,.pf-tg{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.pf-sk{padding:24px;transition:.3s}.pf-sk:hover{transform:translateY(-6px)}
.pf-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.pf-grid{columns:3 300px;column-gap:20px}
.pf-card{break-inside:avoid;margin-bottom:20px;overflow:hidden;cursor:pointer;transition:.3s}
.pf-card[hidden]{display:none}
.pf-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.pf-th{position:relative;aspect-ratio:16/10;background:var(--grad)}
.pf-th img{width:100%;height:100%;object-fit:cover;display:block}
.badge{position:absolute;top:10px;left:10px;font-size:.75rem;padding:3px 12px;border-radius:999px;background:rgba(0,0,0,.6);color:#fff}
.cb{padding:18px}.meta{color:var(--mut)!important;font-size:.85rem}
#pf-dlg{max-width:min(760px,94vw);max-height:90vh;overflow:auto;color:var(--tx);background:var(--bg);padding:0}
#pf-dlg::backdrop{background:rgba(0,0,0,.7)}
#pf-dlg img{max-width:100%;display:block}.pf-in{padding:24px}
.pf-x{float:right;margin:12px;cursor:pointer;border:1px solid var(--bd);background:var(--glass);color:var(--tx);border-radius:999px;padding:6px 14px}
.pf-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:14px 0}
#pf-bar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--grad);z-index:100000}
#pf-top,#pf-theme{position:fixed;right:20px;width:46px;height:46px;border-radius:50%;border:0;background:var(--grad);color:#fff;font-size:1.1rem;cursor:pointer;z-index:9999}
#pf-top{bottom:20px;opacity:0;visibility:hidden;transition:.3s}#pf-top.show{opacity:1;visibility:visible}
#pf-theme{bottom:76px}
#pf-pre{position:fixed;inset:0;z-index:100001;background:var(--bg);display:grid;place-items:center;transition:opacity .5s,visibility .5s}
#pf-pre.done{opacity:0;visibility:hidden}
#pf-pre i{width:54px;height:54px;border-radius:50%;border:4px solid var(--bd);border-top-color:#00d4ff;animation:pfs 1s linear infinite}
@keyframes pfs{to{transform:rotate(360deg)}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
:focus-visible{outline:2px solid #00d4ff;outline-offset:3px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
.pf-stats{display:grid;grid-template-columns:repeat(3,auto);gap:16px;justify-content:start;margin-top:40px}
.pf-stats>div{padding:18px 28px;text-align:left}
.pf-stats b{display:block;font-size:2rem;line-height:1.2}
.pf-stats small{color:var(--mut);font-size:.9rem}
@media(max-width:600px){.pf-stats{grid-template-columns:repeat(3,1fr);gap:8px}.pf-stats>div{padding:14px 10px;text-align:center}.pf-stats b{font-size:1.5rem}}
body,button,input,select,textarea,#main-header,#top-menu a,.et_pb_module,.et_pb_button,
h1,h2,h3,h4,h5,h6,p,a,li,blockquote,cite,small,.tag,.badge,.btn-grad,.pf-filters button,#pf-dlg{
 font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif!important}