:root{
  --eds-bg:#f7fbff;
  --eds-surface:#ffffff;
  --eds-surface-soft:#f8fbff;
  --eds-text:#14213d;
  --eds-heading:#0f172a;
  --eds-muted:#64748b;
  --eds-primary:#2563eb;
  --eds-primary-dark:#1d4ed8;
  --eds-secondary:#7c3aed;
  --eds-cyan:#0891b2;
  --eds-border:#dbeafe;
  --eds-border-soft:#e7eef9;
  --eds-shadow:0 18px 50px rgba(37,99,235,.10);
  --eds-shadow-lg:0 30px 80px rgba(37,99,235,.16);
  --eds-radius:1.5rem;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#fff 0%,var(--eds-bg) 42%,#fff 100%);color:var(--eds-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{text-decoration:none}.text-secondary{color:var(--eds-muted)!important}
img{max-width:100%;height:auto}.skip-link{position:absolute;left:-999px;top:0}.skip-link:focus{left:1rem;top:1rem;z-index:9999;background:#fff;padding:.75rem 1rem;border-radius:.75rem;box-shadow:var(--eds-shadow)}
.glass-nav{background:rgba(255,255,255,.86);backdrop-filter:blur(16px);border-bottom:1px solid rgba(219,234,254,.82);transition:box-shadow .25s ease,background .25s ease}.glass-nav.scrolled{background:rgba(255,255,255,.96);box-shadow:0 10px 35px rgba(15,23,42,.06)}
.nav-shell{min-height:72px}.brand-lockup{display:inline-flex;align-items:center;gap:.7rem;color:var(--eds-heading)!important;font-weight:850;letter-spacing:-.025em}.brand-mark{width:2.15rem;height:2.15rem;border-radius:.8rem;display:grid;place-items:center;background:linear-gradient(135deg,var(--eds-primary),var(--eds-secondary));color:#fff;box-shadow:0 8px 24px rgba(37,99,235,.2);font-weight:900}.brand-word{font-size:1.13rem}.nav-link{color:#475569;font-weight:650;padding:.62rem .8rem!important;border-radius:.7rem;position:relative}.nav-link:hover,.nav-link.active{color:var(--eds-primary)}.nav-link.active{background:#eff6ff}.nav-cta{box-shadow:0 10px 24px rgba(37,99,235,.18)}
.btn-primary{--bs-btn-bg:var(--eds-primary);--bs-btn-border-color:var(--eds-primary);--bs-btn-hover-bg:var(--eds-primary-dark);--bs-btn-hover-border-color:var(--eds-primary-dark)}.btn-outline-primary{--bs-btn-color:var(--eds-primary);--bs-btn-border-color:#93c5fd;--bs-btn-hover-bg:var(--eds-primary);--bs-btn-hover-border-color:var(--eds-primary)}
.hero{position:relative;display:grid;align-items:center;padding:6.3rem 0 5.4rem;min-height:calc(100vh - 72px);overflow:hidden}.hero-phase2:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.032) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 80%)}.hero-orb{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.hero-orb-one{width:540px;height:540px;background:radial-gradient(circle,rgba(37,99,235,.14),rgba(37,99,235,0) 68%);right:-120px;top:-140px;animation:float 8s ease-in-out infinite}.hero-orb-two{width:420px;height:420px;background:radial-gradient(circle,rgba(124,58,237,.11),rgba(124,58,237,0) 68%);left:-180px;bottom:-120px;animation:float 11s ease-in-out infinite reverse}.eyebrow{display:inline-flex;gap:.55rem;align-items:center;background:#eff6ff;border:1px solid var(--eds-border);padding:.58rem .92rem;border-radius:999px;color:#1d4ed8;font-weight:750;font-size:.9rem}.status-dot{width:.62rem;height:.62rem;background:#16a34a;border-radius:50%;box-shadow:0 0 0 5px rgba(22,163,74,.12)}.hero-kicker{color:var(--eds-primary);font-weight:800;letter-spacing:-.01em}.hero-title{font-size:clamp(3rem,6.3vw,5.65rem);line-height:.95;letter-spacing:-.06em;font-weight:880;color:var(--eds-heading)}.hero-title span{background:linear-gradient(90deg,var(--eds-primary),var(--eds-secondary));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-copy{max-width:720px;font-size:1.14rem;line-height:1.78;color:var(--eds-muted)}.hero-btn{min-height:54px;display:inline-flex;align-items:center;gap:.45rem}.hero-proof{color:#475569;font-size:.93rem;font-weight:650}.hero-proof span{display:inline-flex;align-items:center;gap:.45rem}.hero-proof svg{width:19px;height:19px;fill:none;stroke:#16a34a;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.hero-visual{position:relative;max-width:550px;margin-inline:auto;padding:2rem}.browser-mockup{background:#fff;border:1px solid rgba(148,163,184,.24);border-radius:1.4rem;overflow:hidden;transform:perspective(1200px) rotateY(-5deg) rotateX(2deg);transition:transform .45s ease}.hero-visual:hover .browser-mockup{transform:perspective(1200px) rotateY(0) rotateX(0) translateY(-4px)}.browser-topbar{height:48px;display:flex;align-items:center;gap:.42rem;padding:0 1rem;border-bottom:1px solid #eef2f7;background:#fbfdff}.browser-topbar>span{width:.62rem;height:.62rem;border-radius:50%;background:#bfdbfe}.browser-topbar>span:nth-child(2){background:#ddd6fe}.browser-topbar>span:nth-child(3){background:#bbf7d0}.browser-url{margin-left:.7rem;background:#f1f5f9;color:#94a3b8;font-size:.72rem;border-radius:.5rem;padding:.32rem .65rem;flex:1;max-width:230px}.browser-body{height:360px;display:flex;background:linear-gradient(135deg,#fff,#f8fbff)}.mock-sidebar{width:68px;background:#0f172a;padding:1.1rem .8rem;display:flex;align-items:center;flex-direction:column;gap:1rem}.mock-logo{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,#60a5fa,#a78bfa);color:#fff;font-weight:900;margin-bottom:.75rem}.mock-sidebar span{display:block;width:32px;height:7px;background:#334155;border-radius:99px}.mock-main{flex:1;padding:2rem}.mock-pill{display:inline-block;font-size:.66rem;font-weight:750;color:#1d4ed8;background:#dbeafe;border-radius:99px;padding:.35rem .6rem;margin-bottom:1rem}.mock-title{height:16px;width:72%;background:#cbd5e1;border-radius:99px;margin-bottom:.6rem}.mock-title.short{width:48%;background:#e2e8f0}.mock-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:.8rem;margin-top:1.8rem}.mock-card{height:90px;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 8px 24px rgba(15,23,42,.04)}.mock-card.large{grid-row:span 2;height:194px;background:linear-gradient(180deg,#eff6ff,#fff);display:flex;align-items:flex-end;padding:1rem}.mock-card.accent{background:linear-gradient(135deg,#ede9fe,#fff)}.mock-chart{width:100%;height:100px;display:flex;gap:.45rem;align-items:flex-end}.mock-chart i{display:block;flex:1;background:linear-gradient(180deg,#60a5fa,#2563eb);border-radius:.4rem .4rem .2rem .2rem}.mock-chart i:nth-child(1){height:38%}.mock-chart i:nth-child(2){height:68%}.mock-chart i:nth-child(3){height:51%}.mock-chart i:nth-child(4){height:86%}.floating-badge{position:absolute;display:flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.96);border:1px solid #e2e8f0;border-radius:1rem;padding:.7rem .9rem;box-shadow:0 16px 38px rgba(15,23,42,.12);font-size:.78rem;color:#475569;animation:bob 4.8s ease-in-out infinite}.floating-badge strong{color:var(--eds-primary);font-size:1rem}.badge-code{left:-4px;top:13%}.badge-speed{right:-4px;top:35%;animation-delay:.7s}.badge-mobile{left:8%;bottom:2%;animation-delay:1.2s}
.trust-strip{padding:1rem 0 2.2rem}.trust-row{display:flex;align-items:center;justify-content:center;gap:clamp(1rem,3vw,2.6rem);flex-wrap:wrap;color:#64748b;font-weight:700;font-size:.88rem}.trust-row span:not(.trust-label){opacity:.85}.trust-label{color:#94a3b8;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}
.section-pad{padding:6.2rem 0}.section-tint{background:linear-gradient(180deg,rgba(239,246,255,.65),rgba(248,250,252,.78));border-top:1px solid rgba(219,234,254,.55);border-bottom:1px solid rgba(219,234,254,.55)}.section-heading{max-width:1100px}.section-heading.text-center{max-width:790px}.section-label{display:inline-block;color:var(--eds-primary);font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;font-weight:850;margin-bottom:.85rem}.section-title{font-size:clamp(2rem,4vw,3.45rem);line-height:1.06;letter-spacing:-.045em;font-weight:850;color:var(--eds-heading);margin-bottom:1rem}.section-copy{max-width:720px;color:var(--eds-muted);font-size:1.05rem;line-height:1.75}.text-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--eds-primary);font-weight:800}.text-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.text-link:hover svg{transform:translateX(4px)}
.service-card{position:relative;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;padding:1.55rem;box-shadow:0 10px 35px rgba(15,23,42,.04);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;overflow:hidden}.service-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:rgba(37,99,235,.05);right:-32px;bottom:-36px}.service-card:hover{transform:translateY(-7px);border-color:#bfdbfe;box-shadow:var(--eds-shadow)}.service-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:1rem;background:linear-gradient(135deg,#dbeafe,#ede9fe);color:var(--eds-primary);margin-bottom:2.1rem}.service-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.service-number{position:absolute;right:1.3rem;top:1.3rem;color:#cbd5e1;font-size:.74rem;font-weight:850;letter-spacing:.08em}.service-card h3{font-size:1.12rem;font-weight:800;color:var(--eds-heading)}.service-card p{font-size:.93rem;line-height:1.68;color:var(--eds-muted);margin:0}
.project-card,.module-card,.blog-preview{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.4rem;overflow:hidden;box-shadow:0 12px 40px rgba(15,23,42,.045);transition:transform .3s ease,box-shadow .3s ease}.project-card:hover,.module-card:hover,.blog-preview:hover{transform:translateY(-7px);box-shadow:var(--eds-shadow-lg)}.project-media{position:relative;overflow:hidden;background:#f8fafc}.project-media img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .45s ease}.project-card:hover .project-media img{transform:scale(1.035)}.project-type{position:absolute;left:1rem;top:1rem;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.8);border-radius:999px;padding:.4rem .75rem;font-size:.72rem;font-weight:800;color:#334155}.project-content{padding:1.45rem}.project-content h3,.module-card h3{font-size:1.22rem;font-weight:820;color:var(--eds-heading)}.project-content p,.module-card p{color:var(--eds-muted);font-size:.93rem;line-height:1.68}.tag-row{display:flex;gap:.45rem;flex-wrap:wrap}.tag-row span{font-size:.68rem;font-weight:750;color:#475569;background:#f1f5f9;border-radius:999px;padding:.36rem .62rem}
.process-note{padding:1rem 1.1rem;border-left:3px solid var(--eds-primary);background:#eff6ff;border-radius:0 1rem 1rem 0}.process-note span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--eds-primary);font-weight:850;margin-bottom:.3rem}.process-note strong{color:#334155}.process-list{border:1px solid var(--eds-border-soft);border-radius:1.4rem;background:#fff;overflow:hidden;box-shadow:0 18px 50px rgba(15,23,42,.045)}.process-item{display:flex;gap:1.3rem;padding:1.45rem 1.55rem;border-bottom:1px solid #eef2f7;transition:background .2s ease}.process-item:last-child{border-bottom:0}.process-item:hover{background:#f8fbff}.process-num{width:44px;height:44px;flex:0 0 44px;border-radius:.9rem;display:grid;place-items:center;background:linear-gradient(135deg,#eff6ff,#ede9fe);font-weight:850;color:var(--eds-primary)}.process-item h3{font-size:1rem;font-weight:800;margin:0 0 .35rem;color:var(--eds-heading)}.process-item p{font-size:.9rem;color:var(--eds-muted);line-height:1.55;margin:0}
.stats-section{padding:1.2rem 0}.stats-panel{background:linear-gradient(135deg,#172554,#312e81);color:#fff;border-radius:1.6rem;overflow:hidden;box-shadow:0 25px 65px rgba(30,41,59,.18)}.stat-cell{padding:2rem 1rem;border-right:1px solid rgba(255,255,255,.11)}.stat-cell:last-child{border-right:0}.stat-cell strong{display:block;font-size:clamp(2rem,4vw,3rem);line-height:1;font-weight:880;letter-spacing:-.04em}.stat-cell span{display:block;margin-top:.55rem;color:#c7d2fe;font-size:.82rem}
.module-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#f8fafc}.testimonial-card{position:relative;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.5rem;padding:2rem 2rem 2rem 2.4rem;box-shadow:var(--eds-shadow)}.quote-mark{font-family:Georgia,serif;font-size:5rem;line-height:.7;color:#bfdbfe;position:absolute;top:1.1rem;right:1.8rem}.testimonial-copy{font-size:clamp(1.25rem,2.3vw,1.8rem);line-height:1.5;font-weight:650;letter-spacing:-.025em;color:#334155;max-width:750px;padding-right:2.5rem}.testimonial-person{display:flex;align-items:center;gap:.8rem;margin-top:1.6rem}.avatar-initial{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--eds-primary),var(--eds-secondary));color:#fff;font-weight:900}.testimonial-person strong,.testimonial-person span{display:block}.testimonial-person strong{font-size:.92rem}.testimonial-person span{font-size:.78rem;color:var(--eds-muted)}
.blog-preview img{width:100%;height:100%;object-fit:cover;min-height:260px}.blog-preview-content{padding:1.55rem}.blog-preview-content>span{font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em;color:var(--eds-primary)}.blog-preview-content h3{font-size:1.35rem;font-weight:820;color:var(--eds-heading);margin:.55rem 0 .7rem}.blog-preview-content p{color:var(--eds-muted);line-height:1.65;font-size:.92rem}.blog-preview-content a{font-size:.84rem;font-weight:800;color:var(--eds-primary)}
.cta-panel{position:relative;overflow:hidden;background:linear-gradient(120deg,#1d4ed8,#4f46e5 55%,#7c3aed);color:#fff;border-radius:1.8rem;padding:clamp(2rem,5vw,4.2rem);box-shadow:0 30px 80px rgba(79,70,229,.25)}.cta-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.11);right:-140px;top:-250px}.cta-label{display:block;color:#dbeafe;font-size:.77rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850;margin-bottom:.75rem}.cta-panel h2{font-size:clamp(2rem,4vw,3.35rem);font-weight:860;letter-spacing:-.045em;max-width:800px}.cta-panel p{color:#e0e7ff;max-width:720px;line-height:1.7}
.soft-card{background:rgba(255,255,255,.94);border:1px solid var(--eds-border);border-radius:1.5rem;box-shadow:var(--eds-shadow);transition:transform .25s ease,box-shadow .25s ease}.soft-card:hover{transform:translateY(-5px);box-shadow:var(--eds-shadow-lg)}.icon-box{width:48px;height:48px;display:grid;place-items:center;border-radius:1rem;background:linear-gradient(135deg,#dbeafe,#ede9fe);font-weight:800;color:#4f46e5}.metric{font-size:2rem;font-weight:800}
.site-footer{border-top:1px solid var(--eds-border-soft);background:rgba(255,255,255,.78)}.footer-copy{max-width:500px;line-height:1.7}.footer-heading{font-size:.83rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#334155;margin-bottom:1rem}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:.65rem}.footer-links a{color:#64748b;font-size:.9rem}.footer-links a:hover{color:var(--eds-primary)}.footer-bottom{border-top:1px solid #e7eef9}.back-to-top{position:fixed;right:1.25rem;bottom:1.25rem;width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--eds-primary);box-shadow:0 12px 32px rgba(15,23,42,.14);z-index:1000;opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s ease}.back-to-top.visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:var(--eds-primary);color:#fff}
.fade-up{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.fade-up.visible{opacity:1;transform:none}
@keyframes float{50%{transform:translateY(24px) translateX(-12px)}}@keyframes bob{50%{transform:translateY(-9px)}}
@media (max-width:991.98px){.hero{min-height:auto;padding:5rem 0 4rem}.hero-title{font-size:clamp(3rem,10vw,5rem)}.hero-visual{margin-top:1rem;max-width:610px}.browser-mockup{transform:none}.nav-link.active{background:transparent}.stat-cell:nth-child(2){border-right:0}.stat-cell:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.11)}.section-pad{padding:5rem 0}}
@media (max-width:767.98px){.hero{padding-top:4.4rem}.hero-visual{padding:1.15rem .25rem 2.6rem}.browser-body{height:310px}.mock-sidebar{width:56px}.mock-main{padding:1.4rem}.floating-badge{font-size:.7rem;padding:.55rem .7rem}.badge-code{left:-5px;top:6%}.badge-speed{right:-4px;top:27%}.badge-mobile{left:3%;bottom:0}.trust-strip{padding-top:0}.section-pad{padding:4.2rem 0}.testimonial-copy{padding-right:0}.quote-mark{opacity:.45}.stat-cell{border-right:0!important}.stat-cell:nth-child(odd){border-right:1px solid rgba(255,255,255,.11)!important}.blog-preview img{min-height:220px}.cta-panel{text-align:center}}
@media (max-width:575.98px){.hero-title{font-size:2.9rem}.hero-copy{font-size:1rem}.hero-btn{width:100%;justify-content:center}.hero-proof{gap:.7rem!important}.hero-proof span{width:100%}.browser-body{height:250px}.mock-sidebar{display:none}.mock-grid{grid-template-columns:1fr 1fr}.floating-badge{display:none}.section-title{font-size:2.15rem}.service-card{padding:1.35rem}.process-item{padding:1.25rem;gap:.9rem}.testimonial-card{padding:1.6rem}.stat-cell{padding:1.5rem .7rem}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.fade-up{opacity:1!important;transform:none!important}.browser-mockup{transform:none!important}}
/* Phase 2 inner-page presentation */
.page-hero{position:relative;padding:5.4rem 0 3.8rem;overflow:hidden}.page-hero:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.11),transparent 68%);right:-180px;top:-220px;pointer-events:none}.page-hero .lead{max-width:760px;color:var(--eds-muted);line-height:1.75}.page-title{font-size:clamp(2.6rem,6vw,4.8rem);font-weight:870;letter-spacing:-.055em;line-height:1;color:var(--eds-heading)}.page-title span{background:linear-gradient(90deg,var(--eds-primary),var(--eds-secondary));-webkit-background-clip:text;background-clip:text;color:transparent}.mini-card{height:100%;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.25rem;padding:1.45rem;box-shadow:0 10px 35px rgba(15,23,42,.04);transition:.25s ease}.mini-card:hover{transform:translateY(-5px);border-color:#bfdbfe;box-shadow:var(--eds-shadow)}.mini-card .mini-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--eds-primary)}.mini-card h2,.mini-card h3{font-size:1.14rem;font-weight:820;color:var(--eds-heading);margin:.65rem 0}.mini-card p{color:var(--eds-muted);font-size:.92rem;line-height:1.65;margin-bottom:0}.page-callout{border-radius:1.5rem;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid #dbeafe;padding:clamp(1.5rem,4vw,2.8rem)}.page-callout h2{font-size:clamp(1.6rem,3vw,2.35rem);font-weight:840;letter-spacing:-.035em;color:var(--eds-heading)}.contact-options{display:grid;gap:1rem}.contact-option{display:flex;align-items:flex-start;gap:1rem;padding:1.2rem;border:1px solid var(--eds-border-soft);border-radius:1.1rem;background:#fff}.contact-option strong,.contact-option span{display:block}.contact-option span{color:var(--eds-muted);font-size:.88rem;margin-top:.2rem}.contact-option-icon{width:42px;height:42px;flex:0 0 42px;border-radius:.8rem;display:grid;place-items:center;background:#eff6ff;color:var(--eds-primary);font-weight:850}

/* ============================================================
   Phase 3 — Professional Profile CMS / About presentation
   ============================================================ */
.about-profile-hero{position:relative;overflow:hidden;padding:6rem 0 4.6rem;background:linear-gradient(180deg,#fff 0%,#f7fbff 100%)}
.about-profile-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.about-orb-one{width:420px;height:420px;right:-130px;top:-170px;background:radial-gradient(circle,rgba(124,58,237,.14),transparent 68%)}.about-orb-two{width:360px;height:360px;left:-150px;bottom:-210px;background:radial-gradient(circle,rgba(37,99,235,.13),transparent 68%)}
.profile-photo-shell{position:relative;max-width:440px;margin:auto}.profile-photo-frame{background:#fff;border:1px solid var(--eds-border);border-radius:2rem;padding:.7rem;box-shadow:var(--eds-shadow-lg);transform:rotate(-1.5deg)}.profile-photo-frame img{display:block;width:100%;aspect-ratio:9/10;object-fit:cover;border-radius:1.55rem;background:#eff6ff}.profile-status-card{position:absolute;right:-24px;bottom:34px;display:flex;align-items:flex-start;gap:.75rem;max-width:290px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border:1px solid #dbeafe;border-radius:1rem;padding:.9rem 1rem;box-shadow:0 18px 50px rgba(15,23,42,.14)}.profile-status-card strong,.profile-status-card span{display:block}.profile-status-card strong{font-size:.78rem;color:var(--eds-heading);margin-bottom:.2rem}.profile-status-card span:not(.status-dot){font-size:.73rem;line-height:1.45;color:var(--eds-muted)}
.about-profile-title{font-size:clamp(2.8rem,6.4vw,5.35rem);line-height:.98;letter-spacing:-.06em;font-weight:880;color:var(--eds-heading);margin:.8rem 0 1.25rem}.about-profile-title span{background:linear-gradient(90deg,var(--eds-primary),var(--eds-secondary));-webkit-background-clip:text;background-clip:text;color:transparent}.about-profile-lead{font-size:clamp(1.15rem,2.2vw,1.45rem);line-height:1.55;font-weight:650;color:#334155;max-width:720px}.about-short-bio{color:var(--eds-muted);line-height:1.78;max-width:760px;font-size:1rem}.profile-socials{display:flex;flex-wrap:wrap;gap:.6rem}.profile-socials a{display:inline-flex;align-items:center;border:1px solid #dbeafe;background:#fff;border-radius:999px;padding:.55rem .9rem;font-size:.78rem;font-weight:800;color:#475569;transition:.2s ease}.profile-socials a:hover{color:var(--eds-primary);border-color:#93c5fd;transform:translateY(-2px)}
.profile-metrics{margin-top:-1.7rem;position:relative;z-index:2}.profile-metrics-panel{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--eds-border);border-radius:1.5rem;box-shadow:var(--eds-shadow);overflow:hidden}.profile-metrics-panel>div{text-align:center;padding:1.4rem 1rem;border-right:1px solid var(--eds-border-soft)}.profile-metrics-panel>div:last-child{border-right:0}.profile-metrics-panel strong,.profile-metrics-panel span{display:block}.profile-metrics-panel strong{font-size:1.75rem;line-height:1;font-weight:880;color:var(--eds-heading)}.profile-metrics-panel span{margin-top:.45rem;color:var(--eds-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;font-weight:750}
.bio-copy{font-size:1.02rem;line-height:1.85;color:#475569}.bio-copy p:last-child{margin-bottom:0}.skill-card{height:100%;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.25rem;padding:1.35rem;box-shadow:0 10px 30px rgba(15,23,42,.04)}.skill-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.skill-meta span{font-size:.67rem;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:var(--eds-primary)}.skill-meta h3{font-size:1rem;font-weight:830;margin:.2rem 0 0;color:var(--eds-heading)}.skill-meta strong{font-size:.83rem;color:#475569}.skill-track{height:8px;border-radius:999px;background:#eaf2ff;overflow:hidden;margin-top:1rem}.skill-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--eds-primary),var(--eds-secondary))}
.technology-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.technology-chip{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.1rem;padding:1.05rem 1.15rem;transition:.2s ease}.technology-chip:hover{transform:translateY(-3px);border-color:#bfdbfe;box-shadow:0 12px 30px rgba(37,99,235,.08)}.technology-chip strong,.technology-chip span{display:block}.technology-chip strong{font-size:.95rem;color:var(--eds-heading)}.technology-chip span{font-size:.73rem;color:var(--eds-muted);margin-top:.25rem}
.profile-timeline{position:relative;padding-left:1.65rem}.profile-timeline:before{content:"";position:absolute;left:.35rem;top:.45rem;bottom:.45rem;width:2px;background:linear-gradient(var(--eds-primary),#ddd6fe)}.timeline-item{position:relative;padding:0 0 2rem 1.2rem}.timeline-item:last-child{padding-bottom:0}.timeline-dot{position:absolute;left:-1.67rem;top:.35rem;width:12px;height:12px;border:3px solid #fff;border-radius:50%;background:var(--eds-primary);box-shadow:0 0 0 2px #bfdbfe}.timeline-period{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--eds-primary)}.timeline-item h3{font-size:1.1rem;margin:.35rem 0 .2rem;color:var(--eds-heading);font-weight:830}.timeline-item strong{font-size:.82rem;color:#475569}.timeline-item p{font-size:.9rem;color:var(--eds-muted);line-height:1.65;margin:.55rem 0 0}.achievement-list{display:grid;gap:1rem}.achievement-card,.empty-profile-card{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.15rem;padding:1.25rem}.achievement-card>span{font-size:.67rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--eds-secondary)}.achievement-card h3{font-size:1rem;font-weight:830;margin:.35rem 0;color:var(--eds-heading)}.achievement-card p,.empty-profile-card{font-size:.86rem;line-height:1.6;color:var(--eds-muted);margin-bottom:0}

/* Phase 3 admin profile manager */
.admin-profile-page{background:linear-gradient(180deg,#fff,#f7fbff 32%,#fff)}.admin-hero{padding-bottom:2.8rem}.admin-section-nav{position:sticky;top:78px;z-index:10;display:flex;gap:.5rem;overflow:auto;padding:.65rem;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid var(--eds-border-soft);border-radius:1rem;box-shadow:0 10px 30px rgba(15,23,42,.05)}.admin-section-nav a{white-space:nowrap;padding:.5rem .75rem;border-radius:.7rem;font-size:.76rem;font-weight:800;color:#64748b}.admin-section-nav a:hover{background:#eff6ff;color:var(--eds-primary)}.admin-card,.admin-dashboard-card{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;padding:1.45rem;box-shadow:0 12px 38px rgba(15,23,42,.05)}.admin-dashboard-card h2{font-size:1.35rem;font-weight:850;color:var(--eds-heading);margin:.55rem 0}.admin-dashboard-card p{color:var(--eds-muted);line-height:1.65}.admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.admin-card-head h2{font-size:1.2rem;font-weight:850;color:var(--eds-heading);margin:.25rem 0 0}.admin-profile-page .form-label{font-size:.76rem;font-weight:800;color:#475569}.admin-profile-page .form-control{border-color:#dbe4f0;border-radius:.8rem;padding:.68rem .8rem}.admin-profile-page .form-control:focus{border-color:#93c5fd;box-shadow:0 0 0 .2rem rgba(37,99,235,.1)}.admin-profile-preview{display:block;width:100%;max-height:380px;object-fit:cover;border:1px solid var(--eds-border);border-radius:1.1rem;background:#eff6ff}.crud-row{display:grid;grid-template-columns:1.4fr 1fr 92px 82px auto;gap:.5rem;align-items:center;padding:1rem;border:1px solid var(--eds-border-soft);border-radius:1rem;background:#fff}.crud-new{background:#f8fbff;border-style:dashed}.crud-panel{padding:1rem;border:1px solid var(--eds-border-soft);border-radius:1rem;background:#fff}.crud-inline{display:grid;grid-template-columns:1fr 1fr 1.7fr 82px auto auto;gap:.5rem;align-items:center;padding:.75rem;border:1px solid var(--eds-border-soft);border-radius:.9rem;background:#fff}.sort-field{max-width:86px}.admin-status-line{display:flex;align-items:center;gap:.55rem;font-size:.82rem;font-weight:760;color:#475569}.admin-profile-page code{color:#6d28d9;background:#f5f3ff;padding:.12rem .3rem;border-radius:.35rem}
@media (max-width:1199.98px){.profile-status-card{right:0}.crud-row{grid-template-columns:1fr 1fr 90px 78px auto}.crud-inline{grid-template-columns:1fr 1fr 1.5fr 80px auto}.crud-inline .form-check{grid-column:auto}}
@media (max-width:991.98px){.about-profile-hero{padding-top:4.8rem}.profile-photo-shell{max-width:390px}.profile-metrics-panel{grid-template-columns:repeat(2,1fr)}.profile-metrics-panel>div:nth-child(2){border-right:0}.profile-metrics-panel>div:nth-child(-n+2){border-bottom:1px solid var(--eds-border-soft)}.technology-grid{grid-template-columns:1fr 1fr}.admin-section-nav{top:70px}.crud-row,.crud-inline{grid-template-columns:1fr 1fr}.crud-row button,.crud-inline button{width:max-content}}
@media (max-width:575.98px){.about-profile-hero{padding-top:3.8rem}.profile-status-card{position:relative;right:auto;bottom:auto;margin:-1.2rem .75rem 0}.about-profile-title{font-size:2.8rem}.profile-metrics{margin-top:0}.profile-metrics-panel{border-radius:1.1rem}.profile-metrics-panel strong{font-size:1.4rem}.profile-metrics-panel span{font-size:.64rem}.technology-grid{grid-template-columns:1fr}.admin-card,.admin-dashboard-card{padding:1rem}.admin-section-nav{top:64px}.crud-row,.crud-inline{grid-template-columns:1fr}.sort-field{max-width:none}}

/* Phase 4: services + module catalog */
.phase4-hero{overflow:hidden}.phase4-hero:after{content:"";position:absolute;right:-110px;top:-130px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.12),rgba(124,58,237,.03) 55%,transparent 70%);pointer-events:none}.service-detail-card{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;padding:1.5rem;box-shadow:0 12px 38px rgba(15,23,42,.045);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.service-detail-card:hover{transform:translateY(-5px);border-color:#bfdbfe;box-shadow:var(--eds-shadow)}.service-detail-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem}.service-glyph{width:48px;height:48px;border-radius:1rem;display:grid;place-items:center;background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#1d4ed8;font-size:.9rem;font-weight:900}.service-detail-card h2{font-size:1.25rem;font-weight:850;color:var(--eds-heading)}.service-short{color:#334155;line-height:1.65}.feature-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.6rem}.feature-list li{display:flex;gap:.55rem;align-items:flex-start;color:#64748b;font-size:.9rem}.feature-list li span{color:#16a34a;font-weight:900}
.module-filter-panel{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;padding:1.25rem;box-shadow:0 14px 40px rgba(15,23,42,.05)}.module-filter-panel .form-label{font-size:.77rem;font-weight:800;color:#475569}.module-filter-panel .form-control,.module-filter-panel .form-select{border-color:#dbe4f0;border-radius:.85rem}.module-filter-meta{display:flex;justify-content:space-between;gap:1rem;align-items:center;font-size:.82rem;font-weight:700;color:#475569}.catalog-card{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;overflow:hidden;box-shadow:0 12px 38px rgba(15,23,42,.045);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.catalog-card:hover{transform:translateY(-6px);border-color:#bfdbfe;box-shadow:var(--eds-shadow-lg)}.catalog-media{position:relative;display:block;background:#f8fafc;overflow:hidden}.catalog-media img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .4s ease}.catalog-card:hover .catalog-media img{transform:scale(1.035)}.catalog-media>span{position:absolute;left:1rem;top:1rem;padding:.38rem .7rem;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.9);box-shadow:0 5px 18px rgba(15,23,42,.08);font-size:.68rem;font-weight:850;color:#334155}.catalog-body{padding:1.3rem}.catalog-body h2{font-size:1.18rem;font-weight:850;line-height:1.25}.catalog-body h2 a{color:var(--eds-heading)}.catalog-body p{color:var(--eds-muted);font-size:.9rem;line-height:1.65}.catalog-tech{font-size:.72rem;font-weight:750;color:#475569;background:#f8fafc;border:1px solid #eef2f7;border-radius:.7rem;padding:.6rem .7rem}.soft-badge{display:inline-flex;align-items:center;min-height:27px;padding:.3rem .6rem;border-radius:999px;background:#f1f5f9;color:#475569;font-size:.66rem;font-weight:820}.soft-badge.featured{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.empty-state{text-align:center;padding:3.2rem 1.5rem;border:1px dashed #cbd5e1;border-radius:1.35rem;background:#fff}.empty-state h2{font-size:1.4rem;font-weight:850}.empty-state p{color:var(--eds-muted)}
.module-detail-hero{position:relative;padding:5.5rem 0 4rem;background:linear-gradient(180deg,#fff,#f7fbff);overflow:hidden}.module-detail-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.027) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.027) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent)}.module-detail-hero .container{position:relative}.module-detail-hero h1{font-size:clamp(2.6rem,5vw,4.7rem);font-weight:880;letter-spacing:-.055em;line-height:1;color:var(--eds-heading)}.module-detail-hero .lead{max-width:760px;color:#475569;line-height:1.7}.module-detail-image{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.6rem;padding:.8rem;box-shadow:var(--eds-shadow-lg);transform:rotate(1.3deg)}.module-detail-image img{width:100%;display:block;border-radius:1.15rem}.module-tech-line{display:inline-block;margin-top:.5rem;padding:.65rem .8rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:.8rem;color:#64748b;font-size:.82rem}.back-link{display:inline-flex;align-items:center;color:#64748b;font-size:.82rem;font-weight:780}.back-link:hover{color:var(--eds-primary)}.detail-sticky{top:96px}.spec-table{display:grid;border:1px solid var(--eds-border-soft);border-radius:1.2rem;overflow:hidden;background:#fff}.spec-row{display:grid;grid-template-columns:minmax(120px,.8fr) 1.2fr;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--eds-border-soft)}.spec-row:last-child{border-bottom:0}.spec-row span{color:#64748b;font-size:.8rem}.spec-row strong{color:#1e293b;font-size:.84rem}.usage-steps{display:grid;gap:1rem}.usage-step{display:grid;grid-template-columns:52px 1fr;gap:1rem;padding:1.2rem;border:1px solid var(--eds-border-soft);border-radius:1.1rem;background:#fff}.usage-step>span{width:44px;height:44px;border-radius:.9rem;display:grid;place-items:center;background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#1d4ed8;font-size:.72rem;font-weight:900}.usage-step h3{font-size:1rem;font-weight:850;color:var(--eds-heading);margin:.15rem 0 .35rem}.usage-step p{font-size:.88rem;line-height:1.62;color:var(--eds-muted);margin:0}

/* Phase 4 admin catalog management */
.admin-form-card .form-label{font-size:.76rem;font-weight:800;color:#475569}.admin-form-card .form-control,.admin-form-card .form-select,.category-edit-card .form-control{border-color:#dbe4f0;border-radius:.8rem}.admin-list-stack{display:grid;gap:.8rem}.admin-list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--eds-border-soft);border-radius:1rem;background:#fff}.admin-list-item h3{font-size:1rem;font-weight:850;color:var(--eds-heading);margin:.25rem 0}.admin-list-item p{font-size:.8rem;line-height:1.5;margin:0}.admin-list-actions{display:flex;flex-direction:column;gap:.45rem;align-items:stretch;min-width:74px}.admin-list-actions form{margin:0}.admin-list-actions button,.admin-list-actions a{width:100%}.admin-list-stack.compact{max-height:690px;overflow:auto;padding-right:.2rem}.category-edit-card{height:100%;padding:1rem;border:1px solid var(--eds-border-soft);border-radius:1rem;background:#fff}.category-new,.usage-new{background:#f8fbff;border-style:dashed}.crud-stack{display:grid;gap:.65rem}.crud-line{display:grid;grid-template-columns:1fr 1.25fr 78px auto;gap:.5rem;align-items:center;padding:.75rem;border:1px solid var(--eds-border-soft);border-radius:.9rem}.crud-delete{margin-top:-.35rem;margin-left:.8rem}.usage-admin-card{padding:.85rem;border:1px solid var(--eds-border-soft);border-radius:.9rem;background:#fff}
@media (max-width:991.98px){.detail-sticky{position:static!important}.admin-list-item{flex-direction:column}.admin-list-actions{flex-direction:row;min-width:0}.admin-list-actions button,.admin-list-actions a{width:auto}.crud-line{grid-template-columns:1fr 1fr}.module-filter-meta{align-items:flex-start;flex-direction:column}.module-detail-hero{padding-top:4rem}}
@media (max-width:575.98px){.service-detail-card,.module-filter-panel,.catalog-body{padding:1rem}.spec-row{grid-template-columns:1fr;gap:.25rem}.usage-step{grid-template-columns:44px 1fr;padding:1rem}.crud-line{grid-template-columns:1fr}.admin-list-actions{width:100%;flex-wrap:wrap}}

/* Phase 5: project portfolio + project CMS */
.phase5-hero{overflow:hidden}.phase5-hero:after{content:"";position:absolute;right:-80px;top:-120px;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.13),rgba(124,58,237,.035) 58%,transparent 72%);pointer-events:none}.portfolio-filter-panel{padding:1.25rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.3rem;box-shadow:0 14px 40px rgba(15,23,42,.05)}.portfolio-filter-panel .form-label{font-size:.76rem;font-weight:820;color:#475569}.portfolio-filter-panel .form-control,.portfolio-filter-panel .form-select{border-color:#dbe4f0;border-radius:.85rem}.portfolio-filter-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#64748b;font-size:.8rem;font-weight:760}.portfolio-filter-meta a{font-weight:820}.phase5-project-card .project-media{display:block;position:relative}.phase5-project-card .project-media img{width:100%;aspect-ratio:16/10;object-fit:cover}.project-featured-badge{position:absolute;right:1rem;top:1rem;padding:.38rem .7rem;border-radius:999px;background:#0f172a;color:#fff;font-size:.65rem;font-weight:850;box-shadow:0 5px 20px rgba(15,23,42,.18)}.project-meta-line{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.5rem;color:#64748b;font-size:.69rem;font-weight:760}.phase5-project-card .project-content h2{font-weight:850;line-height:1.3}.phase5-project-card .text-link{font-size:.8rem;font-weight:850}
.project-detail-hero{position:relative;padding:5.3rem 0 4.5rem;background:linear-gradient(180deg,#fff,#f7fbff);overflow:hidden}.project-detail-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.025) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent)}.project-detail-hero .container{position:relative}.project-detail-hero h1{font-size:clamp(2.6rem,5vw,4.8rem);font-weight:890;letter-spacing:-.055em;line-height:1;color:var(--eds-heading)}.project-detail-hero .lead{max-width:800px;color:#475569;line-height:1.7}.project-detail-cover{padding:.7rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.55rem;box-shadow:var(--eds-shadow-lg);transform:rotate(1deg)}.project-detail-cover img{display:block;width:100%;border-radius:1.15rem;aspect-ratio:16/10;object-fit:cover}.project-story-card,.project-facts-card{padding:1.5rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.3rem;box-shadow:0 12px 36px rgba(15,23,42,.045)}.project-story-card h2,.project-facts-card h2{font-weight:860;color:var(--eds-heading)}.project-story-card p{margin:0;color:#475569;line-height:1.8}.project-insight-card{padding:1.25rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.15rem}.project-insight-card>span{display:grid;width:38px;height:38px;place-items:center;margin-bottom:1rem;border-radius:.8rem;background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#1d4ed8;font-size:.66rem;font-weight:900}.project-insight-card h3{font-size:1rem;font-weight:850;color:var(--eds-heading)}.project-insight-card p{margin:0;color:var(--eds-muted);font-size:.86rem;line-height:1.65}.project-gallery-item{height:100%;margin:0;padding:.65rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.3rem;box-shadow:0 12px 34px rgba(15,23,42,.045)}.project-gallery-item img{display:block;width:100%;border-radius:.95rem;aspect-ratio:16/10;object-fit:cover}.project-gallery-item figcaption{padding:.8rem .35rem .2rem;color:#64748b;font-size:.78rem}.project-video-card{overflow:hidden;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.25rem}.project-video-card video{display:block;width:100%;aspect-ratio:16/9;background:#0f172a}.external-video-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:180px;padding:1.5rem;background:linear-gradient(135deg,#eff6ff,#f5f3ff)}.external-video-link span{font-weight:850;color:#334155}
.project-media-upload{padding:1rem;border:1px dashed #bfdbfe;border-radius:1rem;background:#f8fbff}.project-admin-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-admin-media-item{overflow:hidden;border:1px solid var(--eds-border-soft);border-radius:1rem;background:#fff}.project-admin-media-item>img,.project-admin-media-item>video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#0f172a}.external-media-box{display:grid;place-items:center;min-height:150px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);color:#475569;font-size:.78rem;font-weight:850}.project-media-actions{display:flex;gap:.5rem;flex-wrap:wrap}.project-media-actions form{margin:0}.technology-admin-row{border:1px solid var(--eds-border-soft);border-radius:.9rem;padding:.15rem;background:#fff}.technology-admin-row .crud-line{border:0;padding:.6rem}.technology-admin-row .crud-delete{margin:0;padding:0 .75rem .55rem}.admin-dashboard-card code{color:#6d28d9;background:#f5f3ff;padding:.12rem .3rem;border-radius:.35rem}
@media (max-width:991.98px){.project-detail-hero{padding-top:4rem}.project-detail-cover{transform:none}.portfolio-filter-meta{align-items:flex-start;flex-direction:column}.project-admin-media-grid{grid-template-columns:1fr}}
@media (max-width:575.98px){.portfolio-filter-panel,.project-story-card,.project-facts-card,.project-insight-card{padding:1rem}.project-meta-line{flex-direction:column;gap:.2rem}.external-video-link{align-items:flex-start;flex-direction:column}.project-detail-hero h1{font-size:2.55rem}}

/* Phase 6: digital products */
.phase6-hero{overflow:hidden}.phase6-hero:after{content:"";position:absolute;right:-90px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.13),rgba(37,99,235,.04) 58%,transparent 72%);pointer-events:none}.product-filter-panel{padding:1.25rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.3rem;box-shadow:0 14px 40px rgba(15,23,42,.05)}.product-filter-panel .form-label{font-size:.76rem;font-weight:820;color:#475569}.product-filter-panel .form-control,.product-filter-panel .form-select{border-color:#dbe4f0;border-radius:.85rem}.product-filter-meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#64748b;font-size:.8rem;font-weight:760}.catalog-loading{opacity:.55;pointer-events:none;transition:opacity .18s ease}.product-card{overflow:hidden;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.4rem;box-shadow:0 12px 38px rgba(15,23,42,.045);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.product-card:hover{transform:translateY(-7px);border-color:#bfdbfe;box-shadow:var(--eds-shadow-lg)}.product-media{position:relative;display:block;overflow:hidden;background:#f8fafc}.product-media img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .4s ease}.product-card:hover .product-media img{transform:scale(1.035)}.product-featured,.product-sale{position:absolute;top:1rem;padding:.4rem .7rem;border-radius:999px;font-size:.65rem;font-weight:850;box-shadow:0 5px 18px rgba(15,23,42,.1)}.product-featured{left:1rem;background:#0f172a;color:#fff}.product-sale{right:1rem;background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.product-card-body{padding:1.35rem}.product-card-meta{display:flex;justify-content:space-between;gap:.6rem;color:#64748b;font-size:.68rem;font-weight:780;margin-bottom:.65rem}.product-card-body h2{font-size:1.18rem;font-weight:860;line-height:1.3}.product-card-body h2 a{color:var(--eds-heading)}.product-card-body p{color:var(--eds-muted);font-size:.89rem;line-height:1.66;min-height:4.45em}.product-rating{display:inline-flex;align-items:center;gap:.3rem;color:#475569;font-size:.76rem;font-weight:780}.product-rating>span{color:#f59e0b;font-size:1rem}.product-rating small{color:#94a3b8}.product-card-footer{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-top:1.15rem}.product-price{display:flex;flex-direction:column}.product-price del{font-size:.72rem;color:#94a3b8}.product-price strong{font-size:1.18rem;color:#0f172a}.product-detail-hero{padding:5.5rem 0 3.2rem;background:linear-gradient(180deg,#fff,#f8fbff);position:relative;overflow:hidden}.product-detail-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.03) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent)}.product-detail-hero .container{position:relative}.product-detail-hero h1{font-size:clamp(2.7rem,5vw,4.9rem);font-weight:890;letter-spacing:-.055em;line-height:1;color:var(--eds-heading)}.product-detail-hero .lead{max-width:800px;color:#475569;line-height:1.7}.product-detail-cover{padding:.7rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.55rem;box-shadow:var(--eds-shadow-lg);transform:rotate(1deg)}.product-detail-cover img{display:block;width:100%;border-radius:1.15rem;aspect-ratio:3/2;object-fit:cover}.product-detail-rating{display:flex;align-items:center;gap:.45rem;color:#64748b;font-size:.86rem}.product-detail-rating>span{color:#f59e0b;font-size:1.15rem}.product-detail-rating strong{color:#334155}.product-detail-price{display:flex;align-items:baseline;gap:.8rem}.product-detail-price del{font-size:1rem;color:#94a3b8}.product-detail-price strong{font-size:2rem;color:#0f172a}.product-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.product-feature-list div{display:flex;gap:.7rem;align-items:flex-start;padding:.9rem 1rem;background:#f8fbff;border:1px solid #e5edf8;border-radius:.9rem;color:#475569;font-size:.88rem}.product-feature-list span{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#dcfce7;color:#166534;font-weight:900}.product-facts{margin:1rem 0 0}.product-facts>div{padding:.85rem 0;border-bottom:1px solid #eef2f7}.product-facts>div:last-child{border-bottom:0}.product-facts dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.product-facts dd{margin:.25rem 0 0;color:#334155;line-height:1.55;font-size:.86rem}.product-sticky{top:100px}.product-review-card{height:100%;padding:1.2rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.1rem}.product-review-card h3{font-size:.96rem;font-weight:850;margin:.7rem 0 .35rem}.product-review-card p{margin:0;color:#64748b;font-size:.86rem;line-height:1.65}
@media(max-width:991.98px){.product-detail-cover{transform:none}.product-sticky{position:static!important}.product-feature-list{grid-template-columns:1fr}}@media(max-width:575.98px){.product-filter-panel,.product-card-body{padding:1rem}.product-filter-meta,.product-card-footer{align-items:flex-start;flex-direction:column}.product-detail-hero h1{font-size:2.55rem}}

/* Phase 7: Blog & content management */
.blog-hero{overflow:hidden}.blog-hero:after{content:"";position:absolute;right:-120px;top:-150px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.13),rgba(124,58,237,.05) 55%,transparent 72%);pointer-events:none}.blog-hero-stat{padding:1.15rem 1.3rem;border:1px solid var(--eds-border-soft);border-radius:1.2rem;background:rgba(255,255,255,.84);box-shadow:0 12px 36px rgba(15,23,42,.05)}.blog-hero-stat strong{display:block;font-size:2rem;line-height:1;color:var(--eds-heading)}.blog-hero-stat span{display:block;margin-top:.3rem;color:var(--eds-muted);font-size:.82rem}.featured-article{overflow:hidden;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.6rem;box-shadow:var(--eds-shadow-lg)}.featured-article-media{display:block;height:100%;min-height:380px;overflow:hidden;background:#f8fafc}.featured-article-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.featured-article:hover .featured-article-media img{transform:scale(1.025)}.featured-article-copy{display:flex;flex-direction:column;justify-content:center;height:100%;padding:clamp(1.8rem,4vw,3.3rem)}.featured-article-copy h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.06;letter-spacing:-.045em;font-weight:880;margin:.9rem 0 1rem}.featured-article-copy h2 a{color:var(--eds-heading)}.featured-article-copy p{color:var(--eds-muted);font-size:1rem;line-height:1.75}.blog-filter-panel{padding:1.25rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.3rem;box-shadow:0 14px 40px rgba(15,23,42,.05)}.blog-filter-panel .form-label{font-size:.76rem;font-weight:820;color:#475569}.blog-filter-panel .form-control,.blog-filter-panel .form-select{border-color:#dbe4f0;border-radius:.85rem}.blog-loading{font-size:.78rem;font-weight:800;color:var(--eds-primary)}.blog-card{overflow:hidden;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;box-shadow:0 12px 38px rgba(15,23,42,.045);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.blog-card:hover{transform:translateY(-7px);border-color:#bfdbfe;box-shadow:var(--eds-shadow-lg)}.blog-card-media{position:relative;display:block;overflow:hidden;background:#f8fafc}.blog-card-media img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .4s ease}.blog-card:hover .blog-card-media img{transform:scale(1.035)}.blog-featured{position:absolute;left:1rem;top:1rem;padding:.4rem .7rem;border-radius:999px;background:#0f172a;color:#fff;font-size:.65rem;font-weight:850;box-shadow:0 5px 18px rgba(15,23,42,.12)}.blog-card-body{padding:1.35rem}.blog-card-meta{display:flex;flex-wrap:wrap;gap:.55rem .85rem;align-items:center;color:#64748b;font-size:.69rem;font-weight:780}.blog-card-meta a{color:var(--eds-primary)}.blog-card-body h2{font-size:1.24rem;font-weight:870;line-height:1.28;margin:.75rem 0}.blog-card-body h2 a{color:var(--eds-heading)}.blog-card-body p{color:var(--eds-muted);font-size:.89rem;line-height:1.68}.blog-card-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid #eef2f7;font-size:.75rem}.blog-card-footer span{color:#64748b}.blog-card-footer a{color:var(--eds-primary);font-weight:850}.empty-state{padding:3rem 1.5rem;text-align:center;border:1px dashed #bfdbfe;border-radius:1.25rem;background:#f8fbff}.empty-state h2{font-size:1.35rem;font-weight:850}.empty-state p{margin:0;color:var(--eds-muted)}
.article-header{padding:5.6rem 0 2.5rem;background:linear-gradient(180deg,#fff,#f8fbff)}.article-header-inner{max-width:900px;margin:0 auto;text-align:center}.article-category{display:inline-block;padding:.45rem .75rem;border-radius:999px;background:#eff6ff;border:1px solid #dbeafe;color:#1d4ed8;font-size:.72rem;font-weight:850}.article-header h1{font-size:clamp(2.7rem,5.8vw,5.2rem);font-weight:900;line-height:.98;letter-spacing:-.058em;color:var(--eds-heading);margin:1.15rem 0}.article-excerpt{max-width:780px;margin:0 auto;color:#64748b;font-size:1.12rem;line-height:1.75}.article-byline{display:flex;justify-content:center;align-items:center;gap:.8rem;margin-top:1.6rem}.article-byline img{width:54px;height:54px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 4px 18px rgba(15,23,42,.09)}.article-byline div{text-align:left}.article-byline strong,.article-byline span{display:block}.article-byline strong{font-size:.9rem;color:#334155}.article-byline span{font-size:.75rem;color:#94a3b8}.article-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}.article-tags a{padding:.35rem .62rem;border-radius:999px;background:#fff;border:1px solid #e2e8f0;color:#64748b;font-size:.7rem}.article-cover{max-width:1120px;margin:0 auto;padding:.75rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.6rem;box-shadow:var(--eds-shadow-lg)}.article-cover img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:1.15rem}.article-content-wrap{padding:4.4rem 0 6rem}.article-content{font-size:1.06rem;line-height:1.88;color:#334155}.article-content p{margin:0 0 1.5rem}.article-content h2,.article-content h3,.article-content h4{color:var(--eds-heading);font-weight:880;letter-spacing:-.03em;margin:2.3rem 0 1rem}.article-content h2{font-size:1.8rem}.article-content h3{font-size:1.4rem}.article-content ul,.article-content ol{padding-left:1.35rem;margin-bottom:1.6rem}.article-content li{margin:.45rem 0}.article-content blockquote{margin:2rem 0;padding:1.3rem 1.4rem;border-left:4px solid var(--eds-primary);background:#eff6ff;border-radius:0 1rem 1rem 0;color:#334155;font-weight:650}.article-content pre{overflow:auto;padding:1.2rem;border-radius:1rem;background:#0f172a;color:#e2e8f0}.article-content code{padding:.1rem .3rem;border-radius:.35rem;background:#f1f5f9;color:#6d28d9}.article-content pre code{padding:0;background:transparent;color:inherit}.article-content a{color:var(--eds-primary);text-decoration:underline;text-underline-offset:3px}.author-box{display:flex;gap:1.2rem;align-items:flex-start;margin-top:3rem;padding:1.5rem;border:1px solid var(--eds-border-soft);border-radius:1.25rem;background:#f8fbff}.author-box img{width:80px;height:80px;border-radius:1.2rem;object-fit:cover}.author-box h2{font-size:1.18rem;font-weight:850;margin:.15rem 0 .45rem}.author-box p{margin:0;color:#64748b;font-size:.88rem;line-height:1.65}.admin-blog-cover{display:block;max-width:420px;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:1rem;border:1px solid var(--eds-border-soft)}.code-textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.84rem;line-height:1.6}
@media(max-width:991.98px){.featured-article-media{min-height:300px}.featured-article-copy{padding:2rem}.article-header{padding-top:4.2rem}}@media(max-width:575.98px){.blog-filter-panel,.blog-card-body{padding:1rem}.blog-card-footer,.author-box{align-items:flex-start;flex-direction:column}.article-header h1{font-size:2.55rem}.article-content-wrap{padding-top:3rem}.article-content{font-size:1rem}.article-cover{padding:.45rem;border-radius:1.15rem}.article-cover img{border-radius:.85rem}}

/* Phase 8: social-style studio feed */
.social-hero{background:radial-gradient(circle at 85% 10%,rgba(124,58,237,.12),transparent 26%),radial-gradient(circle at 10% 20%,rgba(37,99,235,.10),transparent 30%)}
.social-filter{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;padding:1.2rem;box-shadow:0 14px 44px rgba(15,23,42,.04)}
.social-grid{columns:2 360px;column-gap:1.5rem}.social-card{break-inside:avoid;margin:0 0 1.5rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.45rem;overflow:hidden;box-shadow:0 14px 42px rgba(15,23,42,.055);transition:transform .25s ease,box-shadow .25s ease}.social-card:hover{transform:translateY(-4px);box-shadow:var(--eds-shadow-lg)}
.social-card-head{display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem}.social-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--eds-primary),var(--eds-secondary));color:#fff;font-weight:900}.social-meta{color:var(--eds-muted);font-size:.78rem}.social-media-frame{position:relative;display:block;background:#eef2f7;aspect-ratio:1/1;overflow:hidden}.social-media-frame img,.social-media-frame video{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.social-card:hover .social-media-frame img{transform:scale(1.02)}.video-chip{position:absolute;right:.8rem;top:.8rem;background:rgba(15,23,42,.8);color:#fff;border-radius:999px;padding:.35rem .65rem;font-size:.72rem;font-weight:800}.social-card-body{padding:1.15rem}.social-card-body h2{font-size:1.18rem;font-weight:820;margin:.65rem 0}.social-card-body h2 a{color:var(--eds-heading)}.social-card-body p{color:#475569;line-height:1.65;margin:0}.social-stats{display:flex;gap:1rem;font-size:.82rem;color:#64748b;font-weight:700}.social-tag-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.8rem}.social-tag-row a{font-size:.78rem;font-weight:750;color:var(--eds-primary);background:#eff6ff;border-radius:999px;padding:.3rem .55rem}
.social-detail-card,.social-panel{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.5rem;box-shadow:0 16px 48px rgba(15,23,42,.055);overflow:hidden}.social-carousel{background:#0f172a}.social-carousel .carousel-item{aspect-ratio:1/1}.social-carousel img,.social-carousel video{width:100%;height:100%;object-fit:contain;background:#0f172a}.social-media-caption{position:absolute;left:1rem;right:1rem;bottom:1rem;background:rgba(15,23,42,.72);color:#fff;padding:.7rem .9rem;border-radius:.8rem;font-size:.85rem;backdrop-filter:blur(8px)}.social-detail-copy{padding:1.4rem}.social-detail-copy h1{font-weight:850;letter-spacing:-.035em;margin:.8rem 0}.social-detail-copy p{font-size:1.02rem;line-height:1.75;color:#475569}.social-detail-stats{font-size:.86rem;color:#64748b;font-weight:750}.social-side-stack{display:grid;gap:1.25rem;position:sticky;top:96px}.social-panel{padding:1.25rem}.reaction-row{display:grid;gap:.65rem}.reaction-btn{border:1px solid #dbeafe;background:#f8fbff;border-radius:.85rem;padding:.7rem .85rem;display:flex;justify-content:space-between;align-items:center;font-weight:750;color:#334155}.reaction-btn:hover{border-color:#93c5fd;background:#eff6ff;color:var(--eds-primary)}.reaction-btn span{font-size:.8rem;color:#64748b}.comment-list{display:grid;gap:1rem}.comment-card{display:flex;gap:1rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.15rem;padding:1rem}.comment-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:50%;display:grid;place-items:center;background:#eff6ff;color:var(--eds-primary);font-weight:900}.empty-state.compact{padding:1.25rem}
.admin-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-media-card{border:1px solid var(--eds-border-soft);border-radius:1.1rem;overflow:hidden;background:#fff}.admin-media-card>img,.admin-media-card>video{width:100%;height:210px;object-fit:cover;background:#0f172a}.soft-badge{display:inline-flex;align-items:center;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:.28rem .55rem;font-size:.72rem;font-weight:800}
@media(max-width:991.98px){.social-grid{columns:1}.social-side-stack{position:static}.admin-media-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.social-card-head,.social-card-body,.social-detail-copy,.social-panel{padding:1rem}.social-detail-copy h1{font-size:1.65rem}}


/* Phase 9: centralized media library */
.media-admin-hero{background:radial-gradient(circle at 82% 10%,rgba(14,165,233,.12),transparent 28%),radial-gradient(circle at 12% 35%,rgba(124,58,237,.09),transparent 30%)}
.media-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.media-library-card{overflow:hidden;border:1px solid var(--eds-border-soft);border-radius:1.15rem;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.04);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.media-library-card:hover,.media-library-card.is-selected{transform:translateY(-3px);border-color:#93c5fd;box-shadow:0 16px 40px rgba(37,99,235,.10)}.media-library-preview{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#e2e8f0}.media-library-preview img,.media-library-preview video{width:100%;height:100%;object-fit:cover}.media-library-card h3{font-size:.92rem;font-weight:830;line-height:1.35;margin:0 0 .3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-editor-preview{overflow:hidden;border:1px solid var(--eds-border-soft);border-radius:1.2rem;background:#0f172a}.media-editor-preview img,.media-editor-preview video{display:block;width:100%;max-height:520px;object-fit:contain}.media-file-facts{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.media-file-facts span{padding:.35rem .6rem;border-radius:999px;background:#f1f5f9;color:#475569;font-size:.7rem;font-weight:750}.editor-tool-card{padding:1rem;border:1px solid var(--eds-border-soft);border-radius:1rem;background:#f8fbff}.editor-tool-card h3{font-size:.95rem;font-weight:840;margin:0 0 .75rem}.usage-list{display:grid;gap:.65rem}.usage-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid #e2e8f0;border-radius:.9rem;background:#f8fafc}.usage-row strong,.usage-row span{display:block}.usage-row strong{font-size:.84rem;color:#334155}.usage-row span{font-size:.7rem;color:#64748b;margin-top:.15rem}
@media(max-width:1199.98px){.media-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575.98px){.media-library-grid{grid-template-columns:1fr}.usage-row{align-items:flex-start;flex-direction:column}}

/* Phase 10: contact, enquiry and lead management */
.contact-hero{background:radial-gradient(circle at 82% 15%,rgba(37,99,235,.13),transparent 28%),radial-gradient(circle at 10% 45%,rgba(14,165,233,.10),transparent 30%)}
.contact-info-stack{display:grid;gap:.85rem}.contact-info-card{padding:1.05rem 1.15rem;background:rgba(255,255,255,.86);border:1px solid var(--eds-border-soft);border-radius:1.05rem;box-shadow:0 12px 32px rgba(15,23,42,.045)}.contact-info-card span,.contact-info-card small,.contact-info-card strong,.contact-info-card a{display:block}.contact-info-card a,.contact-info-card strong{font-weight:820;color:var(--eds-heading);margin-top:.2rem}.contact-info-card small{color:#64748b;margin-top:.2rem;line-height:1.5}.contact-form-shell,.contact-side-panel{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.5rem;box-shadow:0 18px 52px rgba(15,23,42,.055)}.contact-form-shell{padding:1.5rem}.contact-side-panel{padding:1.35rem;position:sticky;top:96px}.contact-form .form-control,.contact-form .form-select{min-height:48px;border-radius:.85rem;border-color:#dbe4ef}.contact-form textarea.form-control{min-height:168px}.contact-form .form-control:focus,.contact-form .form-select:focus{border-color:#93c5fd;box-shadow:0 0 0 .2rem rgba(37,99,235,.10)}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.status-chip{display:inline-flex;padding:.38rem .65rem;border-radius:999px;font-size:.72rem;font-weight:850}.status-chip-success{background:#ecfdf5;color:#047857}.status-chip-warning{background:#fff7ed;color:#c2410c}.contact-step{display:flex;gap:.85rem;padding:1rem 0;border-bottom:1px solid #edf2f7}.contact-step:last-child{border-bottom:0}.contact-step b{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;background:#eff6ff;color:var(--eds-primary);font-size:.72rem}.contact-step strong{display:block;color:var(--eds-heading);font-size:.9rem}.contact-step p{margin:.2rem 0 0;color:#64748b;font-size:.8rem;line-height:1.55}
.contact-admin-hero{background:radial-gradient(circle at 80% 20%,rgba(16,185,129,.10),transparent 28%),radial-gradient(circle at 10% 30%,rgba(37,99,235,.09),transparent 30%)}.lead-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}.lead-stat-card{padding:1rem;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1rem;box-shadow:0 10px 32px rgba(15,23,42,.04);color:inherit}.lead-stat-card span,.lead-stat-card strong{display:block}.lead-stat-card span{font-size:.72rem;color:#64748b;font-weight:750}.lead-stat-card strong{font-size:1.65rem;color:var(--eds-heading);margin-top:.2rem}.admin-lead-table td>small,.admin-lead-table td>span{display:block}.admin-lead-table td>small{color:#64748b;font-size:.72rem}.admin-lead-table td>span{font-size:.8rem;color:#475569;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lead-status{display:inline-flex!important;width:max-content;padding:.3rem .55rem;border-radius:999px;font-size:.68rem!important;font-weight:850}.lead-status-new{background:#eff6ff;color:#1d4ed8!important}.lead-status-read{background:#f1f5f9;color:#475569!important}.lead-status-replied{background:#ecfdf5;color:#047857!important}.lead-status-closed{background:#f3e8ff;color:#7e22ce!important}.lead-status-spam{background:#fff1f2;color:#be123c!important}.lead-detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.lead-detail-facts>div{padding:.7rem;border:1px solid #e2e8f0;border-radius:.8rem;background:#f8fafc}.lead-detail-facts span,.lead-detail-facts strong{display:block}.lead-detail-facts span{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-weight:800}.lead-detail-facts strong{font-size:.78rem;color:#334155;margin-top:.12rem}.lead-message{padding:1rem;border-radius:1rem;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;line-height:1.7;white-space:normal}.lead-activity{display:grid;gap:.5rem}.lead-activity>div{display:flex;justify-content:space-between;gap:.75rem;padding:.6rem .7rem;border-radius:.7rem;background:#f8fafc;border:1px solid #e2e8f0}.lead-activity span{font-size:.76rem;font-weight:750;color:#334155}.lead-activity small{font-size:.68rem;color:#94a3b8}.category-admin-list{display:grid;gap:.55rem}.category-admin-list>div{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;border:1px solid #e2e8f0;border-radius:.85rem;background:#f8fafc}.category-admin-list strong,.category-admin-list small{display:block}.category-admin-list small{font-size:.68rem;color:#64748b;margin-top:.12rem}
@media(max-width:1199.98px){.lead-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-side-panel{position:static}}@media(max-width:767.98px){.lead-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-detail-facts{grid-template-columns:1fr}.category-admin-list>div{align-items:flex-start;flex-direction:column}}@media(max-width:575.98px){.contact-form-shell,.contact-side-panel{padding:1rem}.lead-stat-grid{grid-template-columns:1fr 1fr}.lead-stat-card{padding:.8rem}}

/* Phase 11: member accounts, comments and review media */
.auth-card{padding:clamp(1.4rem,4vw,2.25rem)}
.community-comment-list{display:grid;gap:.85rem}
.review-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,140px));gap:.65rem;margin-top:1rem}
.review-media-grid a{display:block;border-radius:1rem;overflow:hidden;border:1px solid rgba(44,91,255,.12);background:#fff;aspect-ratio:1/1}
.review-media-grid img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:991.98px){.auth-card{padding:1.25rem}.community-comment-list{margin-bottom:1rem}}

/* Phase 12: advanced site search */
.search-hero{background:radial-gradient(circle at 84% 12%,rgba(37,99,235,.12),transparent 30%),radial-gradient(circle at 12% 44%,rgba(124,58,237,.09),transparent 32%)}
.search-panel{position:relative;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.4rem;padding:1.15rem;box-shadow:0 18px 50px rgba(15,23,42,.055)}
.search-panel.is-searching{opacity:.86}.search-box-wrap{position:relative;display:flex;gap:.75rem;align-items:center}.search-box-icon{position:absolute;left:1rem;z-index:2;font-size:1.4rem;color:var(--eds-primary);pointer-events:none}.search-box-input{min-height:58px!important;padding-left:3rem!important;border-radius:1rem!important;border-color:#dbe4ef!important;font-size:1.05rem!important}.search-box-input:focus{border-color:#93c5fd!important;box-shadow:0 0 0 .2rem rgba(37,99,235,.10)!important}.search-type-filters{display:flex;flex-wrap:wrap;gap:.55rem}.search-type-chip{cursor:pointer}.search-type-chip input{position:absolute;opacity:0;pointer-events:none}.search-type-chip span{display:inline-flex;padding:.48rem .78rem;border:1px solid #dbe4ef;border-radius:999px;background:#fff;color:#475569;font-size:.75rem;font-weight:800;transition:.2s ease}.search-type-chip input:checked+span{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8;box-shadow:0 0 0 2px rgba(37,99,235,.05)}
.search-suggestions{position:absolute;left:0;right:120px;top:calc(100% + .5rem);z-index:50;background:#fff;border:1px solid #dbe4ef;border-radius:1rem;box-shadow:0 22px 60px rgba(15,23,42,.16);overflow:hidden}.search-suggestions a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.82rem 1rem;border-bottom:1px solid #edf2f7;color:#334155}.search-suggestions a:last-child{border-bottom:0}.search-suggestions a:hover{background:#f8fbff;color:var(--eds-primary)}.search-suggestions span{font-weight:800;font-size:.9rem}.search-suggestions small{color:#94a3b8;text-align:right}
.search-result-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:1rem 0}.search-results{display:grid;gap:1rem}.search-result-card{display:grid;grid-template-columns:220px minmax(0,1fr);overflow:hidden;background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.2rem;box-shadow:0 10px 30px rgba(15,23,42,.035);transition:.2s ease}.search-result-card:hover{transform:translateY(-2px);border-color:#bfdbfe;box-shadow:0 16px 38px rgba(37,99,235,.08)}.search-result-media{display:block;background:#f1f5f9;min-height:170px}.search-result-media img{width:100%;height:100%;min-height:170px;object-fit:cover}.search-result-body{padding:1.15rem 1.25rem}.search-result-body h2{font-size:1.2rem;font-weight:850;letter-spacing:-.02em;margin:.3rem 0 .55rem}.search-result-body h2 a{color:var(--eds-heading)}.search-result-body p{color:#64748b;line-height:1.65;font-size:.9rem;margin-bottom:.55rem}.search-result-meta{font-size:.72rem;color:#64748b;font-weight:750}.search-result-body mark{background:#fff2a8;color:inherit;border-radius:.2rem;padding:0 .08em}.search-pagination{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1.25rem}.search-empty{padding:2rem;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:1.25rem;color:#64748b}.search-empty img{display:block;max-width:360px;width:100%;height:auto;margin:0 auto 1rem}.search-empty h2{color:var(--eds-heading);font-weight:850}.search-empty p{max-width:650px;margin:0 auto;line-height:1.7}.search-side-stack{display:grid;gap:1rem;position:sticky;top:96px}.search-query-list{display:flex;flex-wrap:wrap;gap:.5rem}.search-query-list a{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border-radius:999px;border:1px solid #dbe4ef;background:#fff;color:#475569;font-size:.74rem;font-weight:800}.search-query-list a:hover{color:var(--eds-primary);border-color:#93c5fd}.search-query-list a span{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.65rem}.search-feature-list{margin:.8rem 0 0;padding-left:1.1rem;color:#475569}.search-feature-list li{margin:.45rem 0}.search-admin-table td small{display:block;color:#94a3b8}.search-analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.search-analytics-card{padding:1.1rem;border:1px solid var(--eds-border-soft);background:#fff;border-radius:1rem}.search-analytics-card span,.search-analytics-card strong{display:block}.search-analytics-card span{font-size:.72rem;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.search-analytics-card strong{font-size:1.9rem;color:var(--eds-heading);margin-top:.2rem}
@media(max-width:991.98px){.search-result-card{grid-template-columns:170px minmax(0,1fr)}.search-side-stack{position:static}.search-analytics-grid{grid-template-columns:1fr 1fr 1fr}}@media(max-width:767.98px){.search-box-wrap{align-items:stretch;flex-direction:column}.search-box-icon{top:16px}.search-box-wrap>.btn{width:100%}.search-suggestions{right:0;top:64px}.search-result-card{grid-template-columns:1fr}.search-result-media,.search-result-media img{min-height:200px;max-height:260px}.search-result-toolbar{align-items:flex-start;flex-direction:column}.search-analytics-grid{grid-template-columns:1fr}}@media(max-width:575.98px){.search-panel{padding:.85rem}.search-result-body{padding:1rem}.search-suggestions small{display:none}}

/* Phase 13: recommendation engine */
.recommendation-section{position:relative;overflow:hidden}.recommendation-section:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.08),transparent 70%);right:-170px;top:-170px;pointer-events:none}.recommendation-card{background:#fff;border:1px solid var(--eds-border-soft);border-radius:1.35rem;overflow:hidden;box-shadow:0 12px 38px rgba(15,23,42,.045);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.recommendation-card:hover{transform:translateY(-6px);border-color:#c4b5fd;box-shadow:var(--eds-shadow-lg)}.recommendation-media{display:block;overflow:hidden;background:#f8fafc}.recommendation-media img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .4s ease}.recommendation-card:hover .recommendation-media img{transform:scale(1.035)}.recommendation-body{padding:1.3rem}.recommendation-body h3{font-size:1.12rem;font-weight:820;letter-spacing:-.02em}.recommendation-body h3 a{color:var(--eds-heading)}.recommendation-body p{color:var(--eds-muted);font-size:.92rem;line-height:1.65}.recommendation-reason{font-size:.72rem;color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;padding:.28rem .55rem;font-weight:750}.recommendation-score-note{font-size:.78rem;color:#64748b}

/* Phase 14 — Chatbot + live chat */
.chat-hero{background:radial-gradient(circle at 82% 20%,rgba(37,99,235,.13),transparent 36%),radial-gradient(circle at 20% 64%,rgba(34,197,94,.08),transparent 35%),#f8fbff}
.chat-workspace,.eds-chat-widget{background:white;border:1px solid #dbe7fb;border-radius:22px;box-shadow:0 25px 60px rgba(15,23,42,.08);overflow:hidden;display:flex;flex-direction:column;min-height:510px}
.eds-chat-head{background:linear-gradient(120deg,#1256c8,#277fe7);padding:17px 20px;display:flex;align-items:center;gap:12px;color:white}.eds-chat-head strong,.eds-chat-head span{display:block}.eds-chat-head .eds-chat-status{color:#dbeafe;font-size:.76rem}.eds-chat-avatar{width:43px;height:43px;flex:0 0 43px;display:grid!important;place-items:center;background:rgba(255,255,255,.19);border:1px solid rgba(255,255,255,.4);border-radius:14px;font-weight:900;font-size:1.3rem}
.eds-chat-tabs{display:flex;background:#f8fbff;border-bottom:1px solid #e2e8f0}.eds-chat-tab{flex:1;border:0;padding:12px;background:transparent;color:#64748b;font-size:.84rem;font-weight:800}.eds-chat-tab.active{color:#1256c8;background:#fff;box-shadow:inset 0 -3px #2563eb}
.eds-chat-banner{font-size:.76rem;line-height:1.5;color:#475569;background:#f1f7ff;border-bottom:1px solid #e2e8f0;padding:9px 16px}.eds-chat-banner.is-error{background:#fff1f2;color:#be123c}
.eds-chat-identity{background:#fff;border-bottom:1px solid #edf2f7;padding:12px 16px}.eds-chat-identity[hidden]{display:none}
.eds-chat-messages{height:350px;min-height:220px;overflow:auto;padding:17px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#f9fbff,#fff)}
.eds-chat-message{max-width:86%;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px 14px;border-radius:14px;font-size:.88rem;line-height:1.55;box-shadow:0 3px 11px rgba(15,23,42,.035)}.eds-chat-message.assistant{align-self:flex-start;border:1px solid #e2e8f0;background:#fff;color:#334155;border-bottom-left-radius:3px}.eds-chat-message.visitor{align-self:flex-end;background:linear-gradient(115deg,#2563eb,#1d4ed8);color:white;border-bottom-right-radius:3px}.eds-chat-links{margin-top:9px;display:flex;flex-wrap:wrap;gap:6px}.eds-chat-links a{display:inline-block;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:50px;text-decoration:none;font-weight:800;font-size:.75rem;padding:5px 9px}
.eds-chat-form{border-top:1px solid #e2e8f0;padding:12px;display:flex;gap:9px;align-items:end}.eds-chat-form textarea{resize:vertical;max-height:120px;min-height:47px;font-size:.88rem}.eds-chat-form .btn{white-space:nowrap;min-height:45px}.eds-chat-bottom{padding:0 13px 11px;display:flex;justify-content:space-between;align-items:center}.eds-chat-bottom a,.eds-chat-bottom button{border:none;background:none;color:#2563eb;font-size:.74rem;text-decoration:none;font-weight:750}.eds-chat-widget-shell{position:fixed;z-index:1050;right:22px;bottom:93px;width:min(410px,calc(100vw - 28px));max-height:calc(100dvh - 115px)}.eds-chat-widget-shell[hidden]{display:none}.eds-chat-widget{min-height:0;max-height:calc(100dvh - 115px);box-shadow:0 28px 85px rgba(15,23,42,.23)}.eds-chat-widget .eds-chat-messages{height:min(300px,calc(100dvh - 400px));min-height:100px}.eds-chat-launcher{position:fixed;right:22px;bottom:22px;z-index:1050;background:linear-gradient(115deg,#2563eb,#1d4ed8);color:white;border:0;border-radius:999px;padding:13px 20px;font-weight:850;box-shadow:0 14px 40px rgba(37,99,235,.3)}.eds-chat-dismiss{position:absolute;right:10px;top:9px;z-index:2;background:rgba(255,255,255,.15);color:white;border:1px solid rgba(255,255,255,.45);border-radius:50%;width:27px;height:27px;line-height:1}.eds-chat-widget .eds-chat-head{padding-right:44px}
.chat-manager-card{background:white;border:1px solid #e2e8f0;border-radius:18px;padding:19px;box-shadow:0 12px 40px rgba(15,23,42,.04)}.chat-manager-thread{height:320px;overflow:auto;background:#f8fbff;border:1px solid #e2e8f0;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.chat-manager-thread .eds-chat-message{max-width:80%}.chat-manager-list a{display:block;border:1px solid #e2e8f0;border-radius:12px;padding:10px;margin-bottom:8px;color:#334155}.chat-manager-list a.active{border-color:#93c5fd;background:#eff6ff}.chat-manager-list small{display:block;color:#64748b}
@media(max-width:575.98px){.eds-chat-launcher{right:12px;bottom:12px}.eds-chat-widget-shell{right:12px;bottom:74px;width:calc(100vw - 24px)}.chat-workspace{min-height:470px}.eds-chat-messages{height:310px}}
@media(prefers-reduced-motion:reduce){.eds-chat-launcher,.eds-chat-tab{transition:none!important}}

/* Phase 15 — secure, bright administration workspace */
.eds-admin-nav{background:rgba(255,255,255,.97);box-shadow:0 6px 24px rgba(34,54,112,.07);border-bottom:1px solid #e3eaf5;z-index:1030;backdrop-filter:blur(18px)}
.eds-admin-nav .nav-link{color:#364b71;font-weight:650}.eds-admin-nav .nav-link:hover{color:#365ee5}.admin-brand-label{font-size:.6rem;letter-spacing:.14em;background:#e7ecff;padding:5px 7px;color:#365ee5;border-radius:7px;vertical-align:middle}.admin-menu-dropdown{max-height:65vh;overflow-y:auto;width:230px;border:1px solid #e3eaf5;box-shadow:0 14px 38px rgba(31,49,105,.14);border-radius:16px}.admin-menu-dropdown .dropdown-item{font-size:.92rem;padding:9px 18px}.admin-login-bg{background:radial-gradient(circle at 13% 20%,#e7ecff 0,transparent 38%),radial-gradient(circle at 80% 65%,#e7fcf5 0,transparent 30%),#f7faff;min-height:calc(100vh - 170px);display:flex;align-items:center}.admin-sign-card{max-width:520px;background:#fff;border:1px solid #e2e9f6;border-radius:26px;box-shadow:0 24px 55px rgba(41,64,126,.1);padding:clamp(24px,4vw,46px)}.admin-dashboard-hero{background:linear-gradient(113deg,#263eaa,#355fe6 55%,#247cca);padding:65px 0 93px;color:#fff;position:relative;overflow:hidden}.admin-dashboard-hero:before{content:'';position:absolute;width:380px;height:380px;border-radius:50%;background:#ffffff15;right:-80px;top:-160px;pointer-events:none}.admin-dashboard-hero .admin-kicker{font-size:.75rem;letter-spacing:.19em;color:#b6eeff;font-weight:750}.admin-dashboard-hero h1{font-size:clamp(2rem,4vw,3.7rem);font-weight:830;letter-spacing:-.04em;margin:14px 0}.admin-dashboard-hero h1 span{color:#b1ffdc}.admin-dashboard-hero p{font-size:1.06rem;max-width:650px;color:#e8efff}.admin-welcome-panel{border:1px solid #ffffff70;background:#ffffff17;border-radius:24px;padding:25px;display:flex;flex-direction:column;gap:8px;backdrop-filter:blur(10px)}.admin-welcome-panel strong{font-size:1.25rem}.admin-welcome-panel .admin-welcome-label{font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;color:#cfdaff}.admin-role-pill{background:#eaffff22;border:1px solid #ffffff55;border-radius:99px;padding:6px 12px;align-self:start}.admin-dashboard-body{position:relative;margin-top:-46px;padding-bottom:60px}.admin-metric-card{display:flex;height:100%;background:#fff;border:1px solid #e1e8f8;border-radius:20px;padding:23px;flex-direction:column;box-shadow:0 15px 26px #26388b0c;text-decoration:none;transition:transform .18s,box-shadow .18s}.admin-metric-card:hover{transform:translateY(-3px);box-shadow:0 19px 35px #26388b16}.admin-metric-card>span{font-weight:650;color:#516487}.admin-metric-card strong{font-size:2.2rem;color:#243c87;line-height:1.4}.admin-metric-card small{color:#5474d6}.admin-tool-card{display:flex;flex-direction:column;border:1px solid #e4eafa;border-radius:22px;padding:26px;background:#fff;box-shadow:0 9px 28px rgba(42,63,112,.055);transition:transform .2s,border-color .2s}.admin-tool-card:hover{transform:translateY(-3px);border-color:#b6c9ff}.admin-tool-card h3{font-size:1.18rem;font-weight:750;color:#243968;margin:16px 0 10px}.admin-tool-card p{color:#667590;line-height:1.65;font-size:.93rem;flex:1}.admin-tool-icon{width:49px;height:49px;border-radius:15px;background:#ecf2ff;color:#385cdb;display:grid;place-items:center;font-size:1.5rem}.admin-tool-link{font-weight:750;color:#315be2;text-decoration:none}.admin-tool-link:hover{text-decoration:underline}.admin-safety-strip{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#edf7ff;border:1px solid #cde9fd;border-radius:17px;padding:20px 26px;color:#334a73}.admin-mini-footer{background:#f0f5fd;color:#6a7b98;border-top:1px solid #e1e9f5}.admin-mini-footer a{color:#365de4}@media(max-width:575px){.admin-dashboard-body{margin-top:-25px}.admin-dashboard-hero{padding:42px 0 60px}.admin-safety-strip{flex-direction:column;align-items:start}.admin-sign-card{border-radius:16px}}
@media(prefers-reduced-motion:reduce){.admin-metric-card,.admin-tool-card{transition:none!important}.admin-metric-card:hover,.admin-tool-card:hover{transform:none!important}}

/* Phase 17 — mobile-first private analytics dashboard (no external charting dependency) */
.analytics-workspace{background:#f6f9fe;min-height:calc(100vh - 120px)}
.analytics-hero{background:radial-gradient(circle at 75% 18%,#7dd3fc55,transparent 28%),linear-gradient(118deg,#eff5ff,#f8fcff 70%);border-bottom:1px solid #dde8f8;padding:56px 0 76px}
.analytics-hero .section-label{letter-spacing:.18em;color:#4763ce;font-size:.73rem;font-weight:800}
.analytics-hero h1{font-weight:850;letter-spacing:-.048em;font-size:clamp(2.2rem,5vw,3.5rem);color:#172c5b;margin:10px 0}
.analytics-hero h1 span{color:#325de7}.analytics-hero p{color:#61718c;max-width:640px;font-size:1.04rem}
.analytics-private-pill{display:inline-block;padding:11px 19px;background:#fff;border:1px solid #cfddf3;border-radius:99px;color:#4d5f8c;font-weight:720;font-size:.82rem}
.analytics-main{position:relative;margin-top:-43px}
.report-panel,.analytics-stat{background:#fff;border:1px solid #e0e8f5;border-radius:20px;padding:clamp(18px,2.5vw,26px);box-shadow:0 9px 28px #1f396c0b}
.report-filter-panel{box-shadow:0 14px 35px #1f396c14}
.analytics-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.analytics-stat{display:flex;flex-direction:column;min-height:134px;gap:6px}
.analytics-stat-title{font-size:.8rem;text-transform:uppercase;font-weight:750;letter-spacing:.05em;color:#697b9d}
.analytics-stat strong{font-size:clamp(1.5rem,2.7vw,2.25rem);color:#2048b3;line-height:1.1}
.analytics-stat small{color:#617391;font-size:.79rem}
.report-panel-heading{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:20px}
.report-panel-heading h2{font-size:1.22rem;font-weight:800;letter-spacing:-.02em;color:#213b70;margin:4px 0}
.report-panel-heading .mini-label{font-size:.67rem;color:#7485a4;letter-spacing:.14em}
.report-rows{display:flex;flex-direction:column;gap:13px}
.report-data-row{min-width:0}
.report-row-text{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:6px}
.report-row-text strong{display:block;font-size:.87rem;font-weight:650;overflow-wrap:anywhere;color:#34466a}
.report-row-text b{font-size:.84rem;color:#203f8a;white-space:nowrap}
.report-track{height:7px;background:#eef3fc;border-radius:99px;overflow:hidden}
.report-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#80b7ff,#465ee2)}
.report-kpi-line{border-bottom:1px solid #edf1fa;display:flex;justify-content:space-between;gap:20px;padding:11px 0;font-size:.91rem;color:#516382}
.report-kpi-line strong{color:#2945a4;white-space:nowrap}
.analytics-bars{height:205px;display:flex;gap:3px;align-items:stretch;padding-top:10px;border-bottom:1px solid #d9e3f5}
.analytics-bar{flex:1;min-width:0;display:flex;justify-content:flex-end;flex-direction:column;align-items:center;position:relative}
.analytics-bar-column{display:block;width:min(100%,26px);border-radius:7px 7px 0 0;background:linear-gradient(180deg,#60a5fa,#3053e1);min-height:0;transition:background .2s}
.analytics-bar-column:hover{background:linear-gradient(180deg,#7dd3fc,#1d4ed8)}
.analytics-bar small{height:18px;font-size:.57rem;color:#607398;white-space:nowrap;overflow:visible}
@media(max-width:991px){.analytics-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.analytics-stat-grid{grid-template-columns:1fr 1fr;gap:10px}.analytics-stat{min-height:105px;padding:14px}.analytics-stat small{font-size:.72rem}.analytics-stat strong{font-size:1.65rem}.analytics-hero{padding:38px 0 66px}.report-panel-heading{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.analytics-bar-column{transition:none}}

/* Easy upload — simple, accessible uploading for the administration area. */
.easy-upload-zone {
  border: 2px dashed #91aff4;
  background: linear-gradient(155deg,#f5f9ff,#edf4ff);
  color: #233e69;
  border-radius: 19px;
  padding: 24px 17px;
  text-align: center;
  display: grid;
  gap: 8px;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease;
}
.easy-upload-zone:hover,.easy-upload-zone.is-dragover { border-color:#2563eb; background:#e1edff; }
.easy-upload-zone:focus-visible { outline: 3px solid #2563eb; outline-offset: 4px; }
.easy-upload-zone strong { font-size:1.1rem; }
.easy-upload-zone > span:not(.easy-upload-icon) { font-size:.85rem; opacity:.8; }
.easy-upload-zone .easy-upload-icon { font-size:2.2rem; color:#2563eb; font-weight:700; }
.easy-upload-zone .form-control { margin-top:8px; background:#fff; font-size:.88rem; cursor:pointer; }
.easy-upload-previews { display:flex; flex-wrap:wrap; gap:9px; margin-top:10px; }
.easy-upload-previews:empty {display:none;}
.easy-upload-file { display:flex; gap:8px; align-items:center; min-width:0; max-width:100%; border:1px solid #dbe4f3; border-radius:10px; padding:5px 8px; background:#fff; }
.easy-upload-file img {width:40px; height:38px; object-fit:cover; border-radius:5px; }
.easy-upload-video { display:grid; place-items:center; min-width:36px; height:36px; border-radius:7px; background:#e6eefd; color:#2054a0; font-weight:750; }
.easy-upload-filename { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.78rem; max-width:180px; }
.easy-upload-progress {margin-top:8px;}
.easy-upload-progress-track {height:9px; border-radius:99px; background:#dbe7ff; overflow:hidden; margin-bottom:5px;}
.easy-upload-progress-track > div {width:0%; height:100%; background:#2876ee; transition:width .12s linear;}
.easy-upload-progress > span { font-size:.82rem; color:#466083; }
.easy-blog-quick {border:1px solid #dce6f7; border-radius:16px; background:#f8fbff;}
@media (prefers-reduced-motion: reduce) {.easy-upload-zone,.easy-upload-progress-track > div {transition:none;}}


/* EkDevStudio 2026 Easy Admin Upload Refresh - deliberately visible on all admin pages */
.eds-admin-upload-link{background:#2053e8;color:#fff!important;font-weight:800;border-radius:14px;padding:10px 15px;box-shadow:0 8px 20px #3766e42a;text-decoration:none;white-space:nowrap}
.eds-admin-upload-link:hover{background:#123cc3;color:#fff}.eds-new-pill{display:inline-block;background:#e5fdf1;color:#05704d;border-radius:6px;font-size:.62rem;padding:2px 5px;letter-spacing:.03em;margin-left:4px}
.eds-upload-workspace,.eds-upload-content{background:#f5f8fe}.eds-upload-workspace{min-height:75vh;padding-bottom:72px}
.eds-upload-hero{background:linear-gradient(118deg,#152c75 0%,#315be0 64%,#258aa9 100%);color:#fff;padding:55px 0 115px}
.eds-upload-eyebrow{font-size:.75rem;letter-spacing:.16em;color:#a7f3d0;font-weight:800}.eds-upload-hero h1{font-size:clamp(2.35rem,5vw,4rem);font-weight:850;letter-spacing:-.05em;margin:12px 0}.eds-upload-hero h1 span{color:#9df2cd}.eds-upload-hero p{font-size:1.04rem;color:#e5edff;max-width:650px;margin-bottom:0;line-height:1.7}
.eds-upload-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.eds-upload-stats span{background:#ffffff22;border:1px solid #ffffff30;border-radius:100px;padding:6px 13px;font-weight:650;font-size:.78rem}
.eds-upload-content{position:relative;margin-top:-66px}.eds-upload-panel,.eds-dashboard-upload{background:#fff;border:1px solid #e0e9fa;box-shadow:0 18px 48px #163c8a10;border-radius:25px;padding:clamp(18px,3vw,32px)}
.eds-upload-step{display:grid;place-items:center;flex:none;width:47px;height:47px;border-radius:14px;background:#eaf1ff;color:#2351cd;font-size:1.35rem;font-weight:850}
.eds-upload-mini{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:900;color:#4273cc;margin-bottom:6px}
.eds-upload-panel h2,.eds-dashboard-upload h2{font-size:clamp(1.2rem,2vw,1.55rem);font-weight:820;color:#1c315b;letter-spacing:-.03em;margin-bottom:4px}
.eds-upload-drop,.eds-dashboard-drop{border:2px dashed #8eaff7!important;background:linear-gradient(170deg,#f3f7ff,#eaf4ff)!important;border-radius:20px!important;min-height:205px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:8px;text-align:center;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.eds-dashboard-drop{min-height:125px}.eds-upload-drop.is-dragover,.eds-dashboard-drop.is-dragover,.eds-upload-drop:hover,.eds-dashboard-drop:hover{background:#e2edff!important;border-color:#2156d8!important;transform:translateY(-2px)}
.eds-upload-drop strong,.eds-dashboard-drop strong{font-size:1.15rem;font-weight:830;color:#1b3d8f}.eds-upload-drop>span,.eds-dashboard-drop>span{color:#536a91;font-size:.9rem}.eds-upload-drop-icon{font-size:2rem;display:grid;place-items:center;width:65px;height:65px;background:#315be0;color:#fff!important;border-radius:18px}
.eds-upload-drop input[type=file],.eds-dashboard-drop input[type=file]{max-width:350px;border-color:#cedcf8;background:#fff}
.eds-upload-preview-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;margin:18px 0 5px}.eds-upload-preview-grid .easy-upload-file{min-height:145px;display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid #dbe7fc;background:#f9fbff;border-radius:14px;overflow:hidden}
.eds-upload-preview-grid .easy-upload-file img{width:100%;height:105px;object-fit:contain;border-radius:9px;background:#eef2fa}.eds-upload-preview-grid .easy-upload-filename{font-size:.76rem;color:#28436e;font-weight:700;overflow-wrap:anywhere}.eds-upload-preview-grid .eds-file-info{font-size:.7rem;color:#4f6584}
.eds-upload-feedback{padding:10px 14px;background:#eff5ff;border-left:3px solid #3a70ec;border-radius:9px;font-size:.88rem;color:#405b87;margin-top:14px;margin-bottom:12px}
.eds-upload-step-hint{margin-top:16px;background:#e9faf1;border-radius:13px;padding:15px;color:#165841;font-size:.83rem;line-height:1.65}.eds-upload-destinations{display:flex;flex-direction:column;gap:7px}.eds-upload-destinations a{display:flex;align-items:center;gap:13px;background:#f6f9ff;border:1px solid #e3ebf9;padding:11px 13px;border-radius:12px;text-decoration:none;color:#213862}.eds-upload-destinations a:hover{background:#ebf3ff;border-color:#bbd0ff}.eds-upload-destinations a>span:first-child{width:37px;height:37px;display:grid;place-items:center;background:#e7eeff;border-radius:10px;color:#2354d6}.eds-upload-destinations a span:nth-child(2){flex:1}.eds-upload-destinations strong,.eds-upload-destinations small{display:block}.eds-upload-destinations small{font-size:.73rem;color:#6a7996}.eds-upload-destinations a b{color:#3860bd}.eds-upload-size-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e9eff8;padding:12px 0;font-size:.85rem}.eds-upload-size-row strong{color:#244aa5;font-variant-numeric:tabular-nums}
.eds-upload-recent{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px}.eds-upload-recent-card{display:flex;flex-direction:column;gap:6px;text-decoration:none;background:#f7f9fe;border:1px solid #e3e9f4;border-radius:13px;padding:8px;color:#243c67;overflow:hidden}.eds-upload-recent-card img,.eds-video-label{height:96px;object-fit:cover;width:100%;border-radius:8px;background:#eaf1fd;display:grid;place-items:center}.eds-upload-recent-card span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.eds-upload-empty{background:#f7f9ff;border:1px dashed #d2e0f8;padding:30px;border-radius:12px;text-align:center;color:#7384a2}
.eds-dashboard-upload{position:relative;border:2px solid #98b7ff;background:linear-gradient(125deg,#fff 65%,#edf4ff);box-shadow:0 23px 50px #183e8a18}.eds-dashboard-upload h2{font-size:1.55rem}.eds-dashboard-upload p{margin:4px 0 0;color:#60718e;font-size:.9rem}
.eds-editor-update{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border:1px solid #a6c9ed;border-left:5px solid #2766eb;border-radius:13px;background:#ecf5ff;padding:14px 18px}.eds-editor-update strong,.eds-editor-update span{display:block}.eds-editor-update strong{color:#204b9f}.eds-editor-update span{font-size:.83rem;color:#496889}.eds-editor-update a{font-weight:800;color:#1b51d5}
@media(max-width:767px){.eds-upload-hero{padding:42px 0 100px}.eds-upload-content{margin-top:-58px}.eds-upload-panel,.eds-dashboard-upload{padding:18px}.eds-upload-drop{min-height:185px}.eds-upload-hero .btn{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.eds-upload-drop,.eds-dashboard-drop{transition:none}}
