@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{
  --bg:#061018;
  --bg2:#0a1620;
  --panel:#0f1d28cc;
  --panel-strong:#122433;
  --panel-soft:#132838;
  --ink:#eef6f8;
  --muted:#9cb2bc;
  --line:#26424e;
  --line-soft:#325463;
  --lime:#caf58f;
  --aqua:#74e0d3;
  --blue:#90c6ff;
  --shadow:0 22px 60px rgba(0,0,0,.28);
  --radius:24px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'DM Sans',sans-serif;
  line-height:1.65;
  color:var(--ink);
  background:
    radial-gradient(circle at 15% 0%, rgba(114,224,211,.08), transparent 28%),
    radial-gradient(circle at 85% 10%, rgba(202,245,143,.08), transparent 22%),
    linear-gradient(180deg, #07111a 0%, #07121b 36%, #08131d 100%);
  overflow-x:hidden;
}

.page-glow{position:fixed;inset:auto;pointer-events:none;filter:blur(80px);opacity:.36;z-index:-1}
.glow-1{width:360px;height:360px;left:-120px;top:80px;background:#1d7d8b}
.glow-2{width:300px;height:300px;right:-90px;top:180px;background:#688f5b}

a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{font-family:'Manrope',sans-serif;line-height:1.08;letter-spacing:-.04em}
h1{font-size:clamp(3.25rem,6.2vw,6.25rem);font-weight:800;letter-spacing:-.08em;margin-bottom:24px}
h2{font-size:clamp(2.2rem,4.2vw,3.7rem);margin-bottom:0}
h3{font-size:1.18rem;letter-spacing:-.03em;margin-bottom:10px}
p{color:var(--muted)}

.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.section-band{position:relative}
.section-band:before{content:'';position:absolute;inset:22px 20px;border-radius:36px;background:linear-gradient(180deg,rgba(18,36,51,.38),rgba(9,20,30,.18));border:1px solid rgba(58,88,101,.36);z-index:-1}

.nav{position:sticky;top:0;z-index:30;background:rgba(6,16,24,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(40,66,78,.65)}
.navin{height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.logo{display:flex;align-items:center;gap:12px;font:800 18px Manrope;letter-spacing:-.04em}
.monogram{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--lime),#eaf7d5);color:#091318;font-weight:800;box-shadow:0 8px 25px rgba(202,245,143,.25)}
.navlinks{display:flex;gap:24px;color:#b9ccd2;font-size:.92rem}
.navlinks a{position:relative}
.navlinks a:after{content:'';position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--lime);transition:.25s}
.navlinks a:hover{color:#fff}
.navlinks a:hover:after{width:100%}

.btn,.pill{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:1px solid rgba(74,106,119,.8);border-radius:999px;padding:12px 18px;
  font-weight:700;font-size:.9rem;background:rgba(18,34,47,.36);color:var(--ink);
  transition:transform .18s ease, border-color .18s ease, background .18s ease, filter .18s ease;
}
.btn.primary{background:linear-gradient(135deg,var(--lime),#e7f9ca);color:#112126;border-color:transparent;box-shadow:0 10px 30px rgba(202,245,143,.18)}
.btn.small{padding:9px 13px;font-size:.82rem}
.btn:hover{transform:translateY(-2px);border-color:var(--aqua);filter:brightness(1.04)}

.hero-shell{padding:28px 0 8px}
.hero{padding:72px 0 88px;display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:center}
.eyebrow{color:var(--lime);text-transform:uppercase;letter-spacing:.19em;font-weight:800;font-size:.74rem;display:flex;align-items:center;gap:10px;margin-bottom:22px}
.eyebrow:before{content:'';width:30px;height:1px;background:var(--lime)}
.accent{color:var(--lime)}
.lead{font-size:1.16rem;line-height:1.9;max-width:690px}
.hero-highlights{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.highlight-chip{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(18,42,50,.86);border:1px solid rgba(65,100,112,.6);font-size:.8rem;color:#d7e8e8}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.statrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:42px}
.stat{padding:16px 18px;border:1px solid rgba(58,87,99,.5);border-radius:20px;background:rgba(11,24,34,.56);box-shadow:var(--shadow)}
.stat strong{display:block;font-size:1.95rem;font-family:'Manrope',sans-serif;color:#fff;letter-spacing:-.05em;margin-bottom:4px}
.stat span{font-size:.84rem;color:var(--muted)}
.hero-stack{display:flex;flex-direction:column;gap:16px}
.hero-panel,.card,.quote,.portrait-card{box-shadow:var(--shadow)}
.portrait-card{position:relative;border:1px solid rgba(76,108,118,.7);background:linear-gradient(150deg,#173240,#0d1d28 72%);border-radius:32px;padding:28px;min-height:520px;display:flex;align-items:flex-end;overflow:hidden}
.portrait-card:before{content:'';position:absolute;inset:-1px;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 30%);pointer-events:none}
.portrait-card img{position:absolute;width:76%;height:79%;object-fit:cover;object-position:center top;top:0;left:12%;border-radius:20px;filter:saturate(.88)}
.portrait-label{position:relative;z-index:1;background:rgba(9,19,29,.88);border:1px solid rgba(89,116,123,.8);border-radius:20px;padding:20px;backdrop-filter:blur(8px)}
.portrait-label strong{display:block;font:800 1.06rem Manrope}
.portrait-label span{display:block;color:#bdd0d3;font-size:.84rem;margin-top:5px}
.compact-panel{background:rgba(14,27,38,.8);border:1px solid rgba(54,83,97,.7);border-radius:24px;padding:24px 24px 20px}
.panel-kicker{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--aqua);font-weight:800;margin-bottom:14px}
.bullet-clean{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.bullet-clean li{position:relative;padding-left:18px;color:#c4d4d9}
.bullet-clean li:before{content:'•';position:absolute;left:0;top:0;color:var(--lime)}

section{padding:86px 0}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}
.section-heading p{max-width:540px;margin:0}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{background:linear-gradient(180deg,rgba(17,31,43,.92),rgba(13,24,34,.94));border:1px solid rgba(49,75,86,.78);border-radius:24px;padding:26px;min-width:0;transition:transform .2s ease,border-color .2s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-4px);border-color:#5f909a}
.iconbox{display:grid;place-items:center;background:linear-gradient(135deg,#223c46,#1a3039);width:48px;height:48px;border-radius:14px;color:var(--lime);font-size:1.35rem;margin-bottom:28px;border:1px solid rgba(90,120,128,.5)}
.feature-card p,.research-card p,.project p,.publication p{font-size:.93rem;line-height:1.82}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.filter{border:1px solid rgba(63,93,104,.85);border-radius:999px;background:rgba(14,26,37,.6);color:#c3d4d8;padding:10px 15px;font-size:.84rem}
.filter.active{background:linear-gradient(135deg,var(--lime),#e7f8cd);color:#122126;border-color:transparent}
.project{display:flex;flex-direction:column;min-height:286px}
.project .category{color:var(--aqua);font-weight:800;font-size:.77rem;letter-spacing:.11em;text-transform:uppercase;margin-bottom:18px}
.project h3{font-size:1.24rem}
.project .tags{margin-top:auto;padding-top:18px}
.tag{display:inline-flex;border:1px solid rgba(72,103,111,.75);background:#152a34;color:#c9ddd8;padding:6px 11px;border-radius:999px;font-size:.75rem;margin:0 6px 7px 0}
.tag-cloud{display:flex;flex-wrap:wrap;gap:0;margin-top:6px}
.big-cloud .tag{font-size:.78rem}
.topline{font-size:.78rem;letter-spacing:.12em;color:var(--aqua);font-weight:800;text-transform:uppercase}
.status{display:inline-block;border-radius:999px;padding:6px 11px;font-size:.74rem;background:#1e3a35;color:#cff6a1}
.alt-status{background:#213847;color:#b9dafc}
.highlight-slab{margin-top:20px;padding:26px 28px;border:1px solid rgba(74,108,120,.7);border-radius:24px;background:linear-gradient(130deg,#15303a,#10212d);display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;box-shadow:var(--shadow)}

.publication-profiles{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.pub-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end;margin-bottom:18px}
.field{display:flex;flex-direction:column;gap:7px}
.field label{font-size:.83rem;color:#d2e0e4}
.field input,.field select,.field textarea{border:1px solid rgba(67,98,111,.9);background:#091722;color:#fff;padding:12px 14px;border-radius:12px;outline:none;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--lime)}
.search-field input{padding-left:15px}
.pub-summary{min-width:140px;padding-bottom:4px}
.pub-summary strong{display:block;font:800 1rem Manrope;margin-top:6px}
.publication-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.publication{display:flex;flex-direction:column;gap:12px;min-height:220px}
.publication-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.publication h3{margin:0;line-height:1.35}
.publication p{margin:0}
.mini-link{color:var(--aqua);text-decoration:underline;text-underline-offset:3px;font-weight:700;margin-top:auto;align-self:flex-start}
.empty{border:1px dashed rgba(79,112,124,.8);border-radius:20px;padding:32px;text-align:center;color:var(--muted);background:rgba(12,24,34,.35)}
.hidden{display:none!important}

.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.span-2{grid-column:1/-1}
.stack-list{display:grid;gap:18px;margin-top:20px}
.stack-list p{margin-bottom:0}

.quote{padding:42px;border:1px solid rgba(82,113,113,.75);border-radius:28px;background:linear-gradient(130deg,#16353a,#10212b);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.quote h2{margin-bottom:14px}
.quote p{max-width:680px;margin-bottom:0}

.foot{padding:34px 0 44px;border-top:1px solid rgba(38,66,78,.8);color:#9db2ba;font-size:.84rem}
.footin{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:flex-start}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a:hover,.mini-link:hover{color:var(--lime)}
.note{font-size:.82rem;color:#9fb1b8}

/* admin pages retained */
.dash-layout{display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 79px)}
.sidebar{border-right:1px solid var(--line);padding:32px 19px}
.sidebar a,.sidebar button{display:flex;padding:12px 16px;width:100%;border:0;background:transparent;border-radius:11px;color:#aebfc6;text-align:left;font-size:.91rem;margin-bottom:6px}
.sidebar .active,.sidebar button:hover{background:#1c353b;color:var(--lime)}
.main{padding:43px 46px;max-width:1200px;width:100%}
.main h1{font-size:2.65rem;letter-spacing:-.06em}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:27px}
.dashstats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:25px}
.dashstat{background:var(--panel);border:1px solid var(--line);padding:22px;border-radius:17px}
.dashstat b{font-size:2rem;font-family:Manrope}
.dashstat span{display:block;font-size:.84rem;color:var(--muted)}
.apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.app-card{background:var(--panel);border:1px solid var(--line);border-radius:19px;padding:22px;display:flex;flex-direction:column;gap:10px;min-height:220px}
.app-card h3{margin-bottom:0}
.app-card p{font-size:.86rem;margin:0}.app-card .app-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-actions{display:flex;gap:10px;margin-top:17px;flex-wrap:wrap}
.alert{padding:14px 17px;border-radius:12px;background:#18343b;border:1px solid #42676b;color:#ddf8f4;font-size:.9rem;margin-bottom:18px}.alert.error{background:#40232b;border-color:#9d5860}
.dialog{border:1px solid #54737a;border-radius:22px;background:#11212c;color:#fff;max-width:650px;width:calc(100% - 25px);padding:28px;box-shadow:0 40px 100px #000a}.dialog::backdrop{background:#02070bd8}
.preview{width:100%;height:65vh;border:1px solid #3b4d52;border-radius:12px;background:#fff}
.login{max-width:450px;margin:110px auto;padding:33px}.login h1{font-size:2rem}

@media(max-width:1050px){
  .hero{grid-template-columns:1fr}
  .hero-stack{max-width:520px}
  .statrow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pub-toolbar{grid-template-columns:1fr 1fr}
  .pub-summary{grid-column:1/-1}
}
@media(max-width:900px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-grid{grid-template-columns:1fr}
  .dash-layout{grid-template-columns:1fr}
  .sidebar{border-right:0;border-bottom:1px solid var(--line);display:flex;gap:5px;flex-wrap:wrap;padding:12px 20px}
  .sidebar a,.sidebar button{width:auto}
  .apps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .wrap{padding:0 18px}
  .navin{height:68px}
  .navlinks{display:none}
  .nav .btn{padding:9px 12px;font-size:.77rem}
  section{padding:64px 0}
  .hero{padding:54px 0 68px}
  .hero h1{font-size:3.25rem}
  .grid,.publication-list,.apps,.dashstats,.form-grid,.statrow{grid-template-columns:1fr}
  .section-heading,.quote{display:block}
  .section-heading p{margin-top:12px}
  .quote .btn{margin-top:18px}
  .main{padding:28px 18px}
  .portrait-card{min-height:440px}
  .pub-toolbar{grid-template-columns:1fr}
  .highlight-slab{display:block}
  .highlight-slab .status{margin-top:16px}
  .section-band:before{inset:14px 10px;border-radius:28px}
}

/* 2026 DESIGN REBUILD — PUBLIC PORTFOLIO */
:root{--bg:#f6f5f0;--bg2:#efeee7;--panel:#ffffff;--panel-strong:#e9ede7;--panel-soft:#e8eeeb;--ink:#153430;--muted:#647771;--line:#d6ddd6;--line-soft:#bacbc3;--lime:#b86a4c;--aqua:#2c7166;--blue:#245d59;--shadow:0 12px 38px rgba(19,47,40,.06);--radius:8px}
body{background:#f6f5f0;color:#153430;font-family:'DM Sans',sans-serif;line-height:1.65}
p{color:#63766e}h1,h2,h3{font-family:'Manrope',sans-serif}h1{font-weight:700;font-size:clamp(3.3rem,5.6vw,6.3rem);letter-spacing:-.072em;line-height:1.06}h2{font-size:clamp(2.15rem,3.5vw,3.7rem);font-weight:700;letter-spacing:-.065em}h3{font-weight:700;letter-spacing:-.025em}section{padding:104px 0;scroll-margin-top:82px}.wrap{max-width:1320px;padding:0 50px}
.nav{background:#f6f5f0ed;border-bottom:1px solid #dfe2dc;box-shadow:none}.navin{height:84px}.logo{font-size:17px;color:#173a33;letter-spacing:-.055em}.logo span[style]{color:#bb7256!important}.monogram{border-radius:4px;background:#193d36;color:#fff;box-shadow:none;font-size:14px;width:39px;height:39px}.navlinks{color:#536860;font-size:.86rem;gap:25px}.navlinks a:hover{color:#ad674c}.navlinks a:after{background:#b86a4c}
.btn,.pill{background:transparent;border:1px solid #83978d;color:#1c4038;border-radius:3px;font-size:.82rem;letter-spacing:.015em;padding:13px 20px}.btn.primary{background:#b86a4c;color:#fff;border-color:#b86a4c;box-shadow:none}.btn:hover{background:#eaece7;border-color:#355950;filter:none}.btn.primary:hover{background:#98573f;color:white;border-color:#98573f}.btn.small{font-size:.79rem;padding:10px 13px}
.hero-shell{padding:0;background:#f6f5f0}.hero{grid-template-columns:1.08fr .92fr;gap:65px;padding-top:88px;padding-bottom:83px}.eyebrow{color:#b16b50;font-size:.74rem;letter-spacing:.145em;margin-bottom:25px}.eyebrow:before{background:#ae6a50;width:24px}.accent{color:#b2694e}.hero h1{margin-bottom:30px}.lead{color:#536a61;font-size:1.12rem;line-height:1.84;max-width:630px}.lead strong{color:#193b33}.hero-highlights{margin-top:26px;gap:8px}.highlight-chip{background:#eaece5;border:1px solid #d6ded4;color:#3a5d52;border-radius:2px;font-size:.75rem;padding:7px 10px}.actions{margin-top:28px}.statrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:48px;border-top:1px solid #cbd5cc}.stat{border:0;background:none;border-radius:0;box-shadow:none;padding:20px 9px 0 0}.stat strong{font-size:1.8rem;color:#183e34}.stat span{font-size:.75rem;color:#778780;line-height:1.3;display:block}
.hero-stack{position:relative;display:block;max-width:none}.schematic-panel{background:#e9ebe3;border:1px solid #cad4cc;padding:15px;position:relative;box-shadow:0 26px 60px #2041341b;transform:rotate(1deg)}.schematic-panel>img{display:block;width:100%;aspect-ratio:1.28/1;object-fit:cover;border:1px solid #cfdbd4}.diagram-caption,.diagram-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:Manrope,sans-serif;text-transform:uppercase;letter-spacing:.13em;font-size:.67rem;color:#365c53;padding:5px 6px 14px}.diagram-bottom{padding:14px 6px 3px;letter-spacing:0;text-transform:none}.diagram-bottom strong{font-size:.83rem}.diagram-bottom span{font-size:.69rem;color:#6a7971}.hero-stack .portrait-card{position:absolute;right:-17px;bottom:-32px;width:178px;height:213px;min-height:0;padding:7px;border-radius:2px;border:6px solid #f6f5f0;box-shadow:0 10px 40px #183f393d;background:#f3f0e8;transform:rotate(-4deg)}.hero-stack .portrait-card img{position:static;width:100%;height:100%;object-position:center top;border-radius:0;filter:none}.hero-stack .portrait-label{display:none}.hero-stack .compact-panel{display:none}
.section-band{background:#e9ede8}.section-band:before{display:none}.section-heading{margin-bottom:37px;align-items:end}.section-heading p{max-width:430px;color:#536d64;font-size:.95rem}.grid{gap:1px;background:#d9dfd6;border:1px solid #d9dfd6}.card{background:#fff;border:0;border-radius:0;padding:32px;box-shadow:none;transition:background .2s,transform .2s}.card:hover{transform:none;background:#fcfcf8;border:0}.feature-grid .card{min-height:280px}.iconbox{width:45px;height:45px;margin-bottom:32px;background:#e4eae2;color:#266354;border:0;border-radius:4px;font-size:1.3rem}.card h3{color:#173d35;font-size:1.12rem}.card p{color:#62776e;font-size:.92rem}.filters{gap:5px;margin-bottom:24px}.filter{border-radius:3px;border:1px solid #d4dbd4;background:#edf0eb;color:#526b60;font-size:.79rem;padding:10px 15px}.filter.active{background:#1d493f;color:white;border-color:#1d493f}.project{min-height:275px}.project .category{color:#b57056;font-size:.72rem;letter-spacing:.12em}.project h3{font-size:1.15rem}.tag{border:1px solid #d4ddd4;background:#edf1ed;color:#45665b;border-radius:2px;font-size:.72rem;padding:5px 9px}.note{color:#7e8b85}.research-card{min-height:260px}.topline{color:#af6b52;font-size:.73rem}.research-card h3{margin-top:28px;font-size:1.24rem}.highlight-slab{box-shadow:none;border:0;border-left:5px solid #b66b50;border-radius:0;background:#173b34;color:white;padding:35px 37px}.highlight-slab h3{color:white;margin-top:13px}.highlight-slab p{color:#b8d1c7;max-width:810px}.status{border-radius:2px;background:#e3eae3;color:#326252}.highlight-slab .status{background:#31584e;color:#e3efdc}.publication-profiles{margin:23px 0 28px}.pub-toolbar{border:1px solid #d4ddd3;background:#edf0ea;gap:13px;margin-bottom:1px;padding:23px 25px;box-shadow:none}.field label{color:#52695f;font-size:.79rem}.field input,.field select,.field textarea{background:white;border:1px solid #c8d4cb;color:#153a32;border-radius:2px;padding:13px 14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#b36c50}.pub-summary strong{font-size:.99rem}.publication-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#d9dfd6;border:1px solid #d9dfd6}.publication{min-height:210px;gap:13px}.publication h3{line-height:1.43;font-size:1.08rem}.publication p{color:#839089;font-size:.83rem}.mini-link{color:#a35e44;text-decoration:none;font-size:.8rem}.mini-link:hover{color:#173d35}.alt-status{background:#e8eee9;color:#476e5f}.empty{border:1px solid #d3ded5;border-radius:0;background:#eef0eb;color:#61766b}.about-grid{gap:1px;background:#d9dfd6;border:1px solid #d9dfd6}.stack-list{margin-top:24px}.stack-list h3{font-size:1.06rem}.quote{box-shadow:none;border:0;border-radius:0;padding:58px 62px;background:#173b34}.quote h2{color:#fff}.quote p{color:#b9d0c3}.quote .eyebrow{color:#e0aa8b}.foot{background:#102e29;border:0;color:#a3bdb0;padding:48px 0}.footer-links a:hover{color:#fff}
/* Preserve functional admin UI with compatible light controls */
.dash-layout,.sidebar,.main{color:#173b34}.sidebar{background:#eef1ec;border-color:#d0dad1}.sidebar a,.sidebar button{color:#436359}.sidebar .active,.sidebar button:hover{background:#d7e4da;color:#173b34}.dashstat,.app-card,.login{background:white;color:#16392f;border-color:#d2dcd2}.dashstat span{color:#73887b}.alert{background:#e1eee7;color:#1b4f42;border-color:#a2bfaa}.alert.error{background:#fae6e0;color:#873e34}.dialog{background:#fff;color:#173b34;border-color:#b6c9ba}.app-card h3{color:#173b34}.app-card p{color:#6e8276}
@media(max-width:1120px){.hero{gap:38px}.navlinks{gap:12px}.statrow{grid-template-columns:repeat(2,1fr)}.hero-stack .portrait-card{right:-5px}}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:36px}.hero-stack{max-width:630px}.grid{grid-template-columns:repeat(2,1fr)}.section-heading{display:block}.section-heading p{margin-top:20px}.about-grid{grid-template-columns:1fr}}
@media(max-width:680px){.wrap{padding:0 20px}.navin{height:67px}.navlinks{display:none}.hero{padding:58px 0 65px}.hero h1{font-size:3.2rem}.statrow{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stack{margin-right:15px}.hero-stack .portrait-card{width:130px;height:160px;right:-12px;bottom:-24px}.grid,.publication-list,.apps,.dashstats,.form-grid{grid-template-columns:1fr}.pub-toolbar{grid-template-columns:1fr}.section-heading p{margin-top:15px}.quote{padding:38px 25px}.quote .btn{margin-top:22px}section{padding:68px 0}.publication-meta{align-items:flex-start}.publication{min-height:190px}.hero-highlights{display:none}.footer-links{gap:12px}.footer-links a{font-size:.8rem}}

/* COLORFUL PROFESSIONAL EDITION — applies to public portfolio only */
body:has(.hero-shell){background:#f7f9ff;color:#152844}
body:has(.hero-shell) .nav{background:rgba(255,255,255,.94);border-bottom:1px solid #d9e6ff}
body:has(.hero-shell) .logo{color:#123265}
body:has(.hero-shell) .monogram{background:linear-gradient(135deg,#1367df,#742be3);border-radius:12px;color:#fff;box-shadow:0 7px 19px #2461c733}
body:has(.hero-shell) .navlinks{color:#334f76}
body:has(.hero-shell) .navlinks a:hover{color:#6b35ce}
body:has(.hero-shell) .btn{border-radius:12px;background:#fff;color:#174b91;border-color:#a8bfea;font-weight:800}
body:has(.hero-shell) .btn.primary{color:#fff;border-color:transparent;background:linear-gradient(115deg,#125ee0,#7542e7);box-shadow:0 12px 26px #355ac633}
body:has(.hero-shell) .btn.primary:hover{background:linear-gradient(115deg,#084cbb,#5b2fc4);color:#fff}
body:has(.hero-shell) .hero-shell{background:radial-gradient(ellipse 60% 65% at 94% 12%,#b5f7ef88,transparent 80%),radial-gradient(ellipse 55% 55% at 8% 8%,#d9ccffae,transparent 75%),linear-gradient(120deg,#f5f8ff 0%,#e9f1ff 55%,#faf7ff 100%);border-bottom:1px solid #d7e3ff}
body:has(.hero-shell) .hero{padding-top:94px;padding-bottom:102px}
body:has(.hero-shell) .eyebrow{color:#6750d5}
body:has(.hero-shell) .eyebrow:before{background:#6750d5}
body:has(.hero-shell) h1{color:#11274f}
body:has(.hero-shell) .accent{color:#1477d0;background:linear-gradient(110deg,#116be0,#6235c8 62%,#dd5e84);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
body:has(.hero-shell) .lead{color:#415775}
body:has(.hero-shell) .lead strong{color:#153471}
body:has(.hero-shell) .highlight-chip{background:#ffffffb8;color:#4c3caa;border:1px solid #ccc4ff;border-radius:99px}
body:has(.hero-shell) .statrow{border-top:2px solid #b8cff5}
body:has(.hero-shell) .stat strong{color:#1268ce}
body:has(.hero-shell) .stat:nth-child(2) strong{color:#733bd9}
body:has(.hero-shell) .stat:nth-child(3) strong{color:#079b92}
body:has(.hero-shell) .stat:nth-child(4) strong{color:#e17833}
body:has(.hero-shell) .stat span{color:#55708d}
body:has(.hero-shell) .schematic-panel{background:linear-gradient(135deg,#0f4a8e,#175f9b 55%,#30a5a3);border:6px solid #fff;border-radius:22px;padding:17px;box-shadow:0 30px 70px #1354a83b;transform:rotate(1deg)}
body:has(.hero-shell) .diagram-caption,body:has(.hero-shell) .diagram-bottom,body:has(.hero-shell) .diagram-bottom span{color:#fff}
body:has(.hero-shell) .schematic-panel>img{border-radius:8px;border-color:#c5def4}
body:has(.hero-shell) .portrait-card{border-color:white;border-radius:16px;box-shadow:0 20px 40px #104a9160}
body:has(.hero-shell) section:not(.hero-shell):not(.section-band){background:#fff}
body:has(.hero-shell) .section-band{background:linear-gradient(130deg,#ebf2ff 0%,#f2ecff 58%,#e5faf8 100%)}
body:has(.hero-shell) #research{background:linear-gradient(125deg,#102f62 0%,#203f86 49%,#39277a 100%);color:#fff}
body:has(.hero-shell) #research .eyebrow{color:#7ff5df}
body:has(.hero-shell) #research .eyebrow:before{background:#7ff5df}
body:has(.hero-shell) #research h2{color:#fff}
body:has(.hero-shell) #research h2 .accent{background:linear-gradient(110deg,#62f7d7,#d8b1ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
body:has(.hero-shell) #research .section-heading p{color:#d3dff6}
body:has(.hero-shell) #research .grid{background:none;border:0;gap:18px}
body:has(.hero-shell) #research .card{background:#ffffff12;border:1px solid #a7bbff55;color:#fff;border-radius:18px;backdrop-filter:blur(3px)}
body:has(.hero-shell) #research .card h3{color:#fff}
body:has(.hero-shell) #research .card p{color:#d1dff3}
body:has(.hero-shell) #research .topline{color:#81efda}
body:has(.hero-shell) #research .highlight-slab{background:#ffffff17;border:1px solid #9cb5ff77;border-left:5px solid #7df1d0;border-radius:16px}
body:has(.hero-shell) #research .highlight-slab p{color:#e0e9fa}
body:has(.hero-shell) .section-heading h2{color:#183663}
body:has(.hero-shell) .section-heading p{color:#546d89}
body:has(.hero-shell) .grid{background:transparent;border:0;gap:17px}
body:has(.hero-shell) .card{background:#fff;border:1px solid #dce5f4;border-radius:18px;box-shadow:0 10px 32px #264b9220}
body:has(.hero-shell) .card:hover{transform:translateY(-5px);border-color:#a4b8fb;box-shadow:0 18px 38px #264b9233}
body:has(.hero-shell) .card h3{color:#15356f}
body:has(.hero-shell) .card p{color:#5c728b}
body:has(.hero-shell) .feature-card:nth-child(1){border-top:5px solid #1677e6}
body:has(.hero-shell) .feature-card:nth-child(2){border-top:5px solid #7b48e6}
body:has(.hero-shell) .feature-card:nth-child(3){border-top:5px solid #ed6e8d}
body:has(.hero-shell) .feature-card:nth-child(4){border-top:5px solid #11a9aa}
body:has(.hero-shell) .feature-card:nth-child(5){border-top:5px solid #f29e3d}
body:has(.hero-shell) .feature-card:nth-child(6){border-top:5px solid #536deb}
body:has(.hero-shell) .iconbox{background:linear-gradient(135deg,#d8e9ff,#e7e0ff);color:#4a52ca;border-radius:14px;font-weight:bold}
body:has(.hero-shell) .filter{background:#ecf2ff;color:#315b9f;border-color:#bfd0f3;border-radius:99px}
body:has(.hero-shell) .filter.active{background:linear-gradient(120deg,#135fd7,#7443e5);border-color:transparent;color:#fff}
body:has(.hero-shell) .project{border-bottom:5px solid #c7d6f5}
body:has(.hero-shell) .project:nth-child(3n+1){border-bottom-color:#3e8df1}
body:has(.hero-shell) .project:nth-child(3n+2){border-bottom-color:#9270ed}
body:has(.hero-shell) .project:nth-child(3n+3){border-bottom-color:#16b9ac}
body:has(.hero-shell) .project .category{color:#6a49c9}
body:has(.hero-shell) .tag{color:#3c57a7;background:#eef1ff;border:1px solid #d8dffa;border-radius:99px}
body:has(.hero-shell) #publications{background:linear-gradient(160deg,#ffffff,#f0f5ff 53%,#f9f3ff)}
body:has(.hero-shell) .pub-toolbar{background:#ffffff;border:1px solid #c5d6ef;border-radius:16px;box-shadow:0 8px 26px #345bb01a}
body:has(.hero-shell) .field label{color:#35557a}
body:has(.hero-shell) .field input,body:has(.hero-shell) .field select{background:#f7f9ff;color:#183762;border:1px solid #bccce5;border-radius:10px}
body:has(.hero-shell) .publication-list{background:none;border:0;gap:16px}
body:has(.hero-shell) .publication{border-left:5px solid #376fe5}
body:has(.hero-shell) .publication:nth-child(3n+2){border-left-color:#9657d9}
body:has(.hero-shell) .publication:nth-child(3n+3){border-left-color:#06a99c}
body:has(.hero-shell) .topline{color:#6d4bc8}
body:has(.hero-shell) .mini-link{color:#155eca}
body:has(.hero-shell) .alt-status{background:#ebe5ff;color:#6142b0}
body:has(.hero-shell) .about-grid{background:transparent;border:0;gap:18px}
body:has(.hero-shell) .quote{background:linear-gradient(115deg,#145ad5,#4b3bad 55%,#a43a93);border-radius:25px;box-shadow:0 25px 50px #253daa45}
body:has(.hero-shell) .quote h2{color:#fff}
body:has(.hero-shell) .quote h2 .accent{background:linear-gradient(110deg,#9cffdf,#ffe4a7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
body:has(.hero-shell) .quote p{color:#edf0ff}
body:has(.hero-shell) .quote .eyebrow{color:#b8ffe9}
body:has(.hero-shell) .quote .btn.primary{background:#fff;color:#1853b3}
body:has(.hero-shell) .foot{background:#102b56;color:#c2d5f5}
body:has(.hero-shell) .footer-links a{color:#c3e9ff}
@media(max-width:680px){body:has(.hero-shell) .hero{padding-top:62px;padding-bottom:70px}body:has(.hero-shell) .statrow{grid-template-columns:repeat(2,1fr)}body:has(.hero-shell) .schematic-panel{padding:8px}}


/* FINAL COLOR LAYER — explicit section backgrounds for the public portfolio */
body.portfolio-site{
  background:linear-gradient(180deg,#f5f8ff 0%, #eef4ff 32%, #f9fbff 100%);
  color:#143056;
}
body.portfolio-site .page-glow{display:none}
body.portfolio-site .nav{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid #d8e4fb;
}
body.portfolio-site .logo{color:#17386f}
body.portfolio-site .navlinks{color:#436087}
body.portfolio-site .navlinks a:hover{color:#6a37d8}
body.portfolio-site .monogram{
  background:linear-gradient(135deg,#0f6be8,#7137dd);
  color:#fff;
  box-shadow:0 10px 24px rgba(64,93,210,.28);
}
body.portfolio-site .btn{
  background:#fff;
  color:#1f4d95;
  border:1px solid #bfd0f0;
  border-radius:14px;
}
body.portfolio-site .btn.primary{
  background:linear-gradient(120deg,#1264df,#6b3ee4 58%,#19a5b5 100%);
  color:#fff;
  border-color:transparent;
}
body.portfolio-site .btn.small{background:#f9fbff}

body.portfolio-site .hero-shell{
  background:
    radial-gradient(circle at 12% 10%, rgba(143,111,255,.20), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(28,203,196,.24), transparent 26%),
    linear-gradient(135deg,#eff4ff 0%, #edf2ff 42%, #f6f0ff 100%);
  border-bottom:1px solid #d9e5fb;
}
body.portfolio-site .hero{padding-top:92px;padding-bottom:98px}
body.portfolio-site h1{color:#112d59}
body.portfolio-site .accent{
  background:linear-gradient(95deg,#0e75de,#6a37d8 58%,#13a7ab);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
body.portfolio-site .eyebrow{color:#6b41d7}
body.portfolio-site .eyebrow:before{background:#6b41d7}
body.portfolio-site .lead{color:#4e6687}
body.portfolio-site .lead strong{color:#17376c}
body.portfolio-site .highlight-chip{
  background:rgba(255,255,255,.85);
  border:1px solid #cfd5ff;
  color:#5b41b6;
}
body.portfolio-site .statrow{border-top:2px solid #c8d7f8}
body.portfolio-site .stat{background:transparent}
body.portfolio-site .stat strong{color:#126be1}
body.portfolio-site .stat:nth-child(2) strong{color:#7a3ee7}
body.portfolio-site .stat:nth-child(3) strong{color:#0f9d9b}
body.portfolio-site .stat:nth-child(4) strong{color:#ef8a34}
body.portfolio-site .stat span{color:#607997}
body.portfolio-site .schematic-panel{
  background:linear-gradient(145deg,#0f67dd,#3758d0 55%,#11a3ae 100%);
  border:6px solid #fff;
  border-radius:24px;
  box-shadow:0 30px 70px rgba(39,85,184,.24);
}
body.portfolio-site .diagram-caption,
body.portfolio-site .diagram-bottom,
body.portfolio-site .diagram-bottom span{color:#fff}
body.portfolio-site .portrait-card{box-shadow:0 24px 50px rgba(42,87,188,.22)}

body.portfolio-site section{position:relative}
body.portfolio-site #expertise.section-band{
  background:linear-gradient(135deg,#eaf7ff 0%, #eaf3ff 52%, #eef0ff 100%);
}
body.portfolio-site #work{
  background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%);
}
body.portfolio-site #research.section-band{
  background:linear-gradient(130deg,#102f63 0%, #24498f 48%, #4f2f89 100%);
}
body.portfolio-site #publications{
  background:linear-gradient(135deg,#f2edff 0%, #eef7ff 54%, #f7f6ff 100%);
}
body.portfolio-site #about.section-band{
  background:linear-gradient(135deg,#ebfbf6 0%, #eef8ff 60%, #f4fffd 100%);
}
body.portfolio-site #tools{
  background:linear-gradient(180deg,#ffffff 0%, #f6faff 100%);
}
body.portfolio-site main > section:last-of-type{
  background:linear-gradient(135deg,#153b7a 0%, #283b8f 50%, #0c7a85 100%);
}
body.portfolio-site main > section:last-of-type .eyebrow{color:#9ef2ec}
body.portfolio-site main > section:last-of-type .eyebrow:before{background:#9ef2ec}

body.portfolio-site .section-band:before{display:none}
body.portfolio-site .section-heading p{color:#58708c}
body.portfolio-site .card{
  background:rgba(255,255,255,.9);
  border:1px solid #dbe5f6;
  border-radius:22px;
  box-shadow:0 18px 35px rgba(34,69,143,.08);
}
body.portfolio-site .card:hover{border-color:#b8cdf3;background:#fff}
body.portfolio-site .feature-grid,
body.portfolio-site .publication-list,
body.portfolio-site .about-grid{background:transparent;border:0;gap:18px}
body.portfolio-site .iconbox{
  background:linear-gradient(135deg,#e7f0ff,#efe8ff);
  color:#5b41b7;
  border:1px solid #d4d9fb;
}
body.portfolio-site .card h3{color:#193766}
body.portfolio-site .card p{color:#5d738d}
body.portfolio-site .topline{color:#7a43d9}
body.portfolio-site .filter{
  background:#fff;
  border-color:#cddbf3;
  color:#567193;
  border-radius:999px;
}
body.portfolio-site .filter.active{
  background:linear-gradient(120deg,#1168df,#6e3fe3);
  color:#fff;
  border-color:transparent;
}
body.portfolio-site .project{
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
}
body.portfolio-site .project:nth-child(3n+1){border-top:4px solid #1984e6}
body.portfolio-site .project:nth-child(3n+2){border-top:4px solid #7b42e7}
body.portfolio-site .project:nth-child(3n+3){border-top:4px solid #13a5ab}
body.portfolio-site .project .category{color:#ef7d31}
body.portfolio-site .tag{background:#eef5ff;border-color:#d5e2f9;color:#47688d}

body.portfolio-site #research .section-heading p,
body.portfolio-site #research .card p,
body.portfolio-site #research p{color:#c8d7f3}
body.portfolio-site #research h2,
body.portfolio-site #research h3,
body.portfolio-site #research .topline{color:#fff}
body.portfolio-site #research .eyebrow{color:#91f0e6}
body.portfolio-site #research .eyebrow:before{background:#91f0e6}
body.portfolio-site #research .card{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(193,214,255,.18);
  box-shadow:none;
}
body.portfolio-site #research .iconbox{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.1)}
body.portfolio-site .highlight-slab{
  background:linear-gradient(120deg,#0b274a,#0b6f7f);
  border-left:0;
  border:1px solid rgba(171,220,246,.24);
  border-radius:22px;
}
body.portfolio-site .highlight-slab .status{background:#ffffff22;color:#fff}

body.portfolio-site .pub-toolbar{
  background:rgba(255,255,255,.82);
  border:1px solid #d8e1f6;
  border-radius:22px;
  padding:22px;
}
body.portfolio-site .field label{color:#4e6484}
body.portfolio-site .field input,
body.portfolio-site .field select,
body.portfolio-site .field textarea{
  background:#fff;
  border:1px solid #d0dcf2;
  color:#193760;
  border-radius:14px;
}
body.portfolio-site .publication{
  background:linear-gradient(180deg,#ffffff 0%, #fbfcff 100%);
}
body.portfolio-site .publication:nth-child(odd){border-top:4px solid #6d41e3}
body.portfolio-site .publication:nth-child(even){border-top:4px solid #13a2ad}
body.portfolio-site .mini-link{color:#1d6fda}
body.portfolio-site .alt-status{background:#eef3ff;color:#506fb1}

body.portfolio-site #about .card:nth-child(1){background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%)}
body.portfolio-site #about .card:nth-child(2){background:linear-gradient(180deg,#fcfbff 0%, #f4f0ff 100%)}
body.portfolio-site #about .card:nth-child(3){background:linear-gradient(180deg,#fbfffe 0%, #effaf7 100%)}
body.portfolio-site .quote{
  background:transparent;
  box-shadow:none;
  border:none;
}
body.portfolio-site .quote h2,
body.portfolio-site .quote p{color:#fff}
body.portfolio-site .quote .btn{background:#fff;color:#18488f;border-color:#fff}
body.portfolio-site .quote .btn.primary{background:#fff;color:#1f49a0}

body.portfolio-site .foot{
  background:#102a4c;
  color:#c7d7f1;
  border-top:0;
}
body.portfolio-site .footer-links a:hover{color:#fff}

@media (max-width: 680px){
  body.portfolio-site .hero-shell{background:linear-gradient(160deg,#eef3ff 0%, #f7f2ff 48%, #e8fbf9 100%)}
}


/* PREMIUM REFINEMENT LAYER */
body.portfolio-site{
  --premium-purple:#6a40df;
  --premium-blue:#0f6bdf;
  --premium-teal:#10a6ad;
  --premium-orange:#f18a34;
}
body.portfolio-site,
body.portfolio-site p,
body.portfolio-site .card p,
body.portfolio-site .section-heading p{font-family:'DM Sans',sans-serif}
body.portfolio-site h1,
body.portfolio-site h2,
body.portfolio-site h3,
body.portfolio-site .logo,
body.portfolio-site .stat strong,
body.portfolio-site .pub-summary strong{font-family:'Manrope',sans-serif}
body.portfolio-site .hero-shell,
body.portfolio-site #expertise,
body.portfolio-site #work,
body.portfolio-site #publications,
body.portfolio-site #about,
body.portfolio-site #tools,
body.portfolio-site main > section:last-of-type{overflow:hidden}
body.portfolio-site .hero-shell::before,
body.portfolio-site .hero-shell::after,
body.portfolio-site #publications::before,
body.portfolio-site #about::before,
body.portfolio-site #tools::before{
  content:"";
  position:absolute;
  inset:auto;
  pointer-events:none;
  z-index:0;
}
body.portfolio-site .hero-shell::before{
  width:520px;height:520px;border-radius:50%;
  right:-160px;top:-150px;
  background:radial-gradient(circle,#75d5ff55 0%,#7550ea33 48%,transparent 70%);
  animation:floatPulse 16s ease-in-out infinite;
}
body.portfolio-site .hero-shell::after{
  width:440px;height:440px;border-radius:50%;
  left:-120px;bottom:-170px;
  background:radial-gradient(circle,#6c42df22 0%,#18a9b544 38%,transparent 72%);
  animation:floatPulse 18s ease-in-out infinite reverse;
}
body.portfolio-site #publications::before{
  width:380px;height:380px;border-radius:50%;right:-110px;top:10%;
  background:radial-gradient(circle,#7d46ef22 0%,transparent 72%);
}
body.portfolio-site #about::before{
  width:320px;height:320px;border-radius:50%;left:-90px;top:18%;
  background:radial-gradient(circle,#0ea7b51e 0%,transparent 74%);
}
body.portfolio-site #tools::before{
  inset:0;
  background-image:linear-gradient(rgba(19,85,170,.045) 1px, transparent 1px),linear-gradient(90deg, rgba(19,85,170,.045) 1px, transparent 1px);
  background-size:28px 28px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 100%);
}
@keyframes floatPulse{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,22px,0) scale(1.06)}
}
body.portfolio-site .wrap,
body.portfolio-site .hero>*{position:relative;z-index:1}
body.portfolio-site h1{line-height:.98;letter-spacing:-.07em}
body.portfolio-site h2{letter-spacing:-.055em}
body.portfolio-site .lead{max-width:700px}
body.portfolio-site .hero-highlights{gap:12px}
body.portfolio-site .highlight-chip{box-shadow:0 8px 20px rgba(97,108,180,.08)}
body.portfolio-site .statrow{gap:18px}
body.portfolio-site .stat{padding:18px 14px 4px 0;position:relative}
body.portfolio-site .stat::after{content:'';display:block;width:54px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--premium-blue),var(--premium-purple));margin-top:10px;opacity:.6}
body.portfolio-site .schematic-panel>img{background:#fff}
body.portfolio-site .schematic-panel{position:relative;overflow:hidden}
body.portfolio-site .schematic-panel::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 30%,rgba(255,255,255,.1) 70%,transparent 100%);mix-blend-mode:screen;pointer-events:none}
body.portfolio-site .card{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body.portfolio-site .feature-grid .card,
body.portfolio-site .publication,
body.portfolio-site .about-grid .card,
body.portfolio-site .project,
body.portfolio-site #public-apps .card{position:relative;overflow:hidden}
body.portfolio-site .feature-grid .card::before,
body.portfolio-site .publication::before,
body.portfolio-site .about-grid .card::before,
body.portfolio-site .project::before,
body.portfolio-site #public-apps .card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(17,107,223,.18),rgba(106,64,223,.28),rgba(16,166,173,.18));
}
body.portfolio-site .iconbox{
  width:58px;height:58px;border-radius:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 12px 24px rgba(110,92,190,.10);
  font-size:1.45rem;
}
body.portfolio-site .iconbox::after{
  content:'';position:absolute;width:74px;height:74px;border-radius:22px;border:1px solid rgba(123,66,231,.14);transform:translate(-8px,-8px);
}
body.portfolio-site .feature-card:nth-child(1) .iconbox{background:linear-gradient(135deg,#eef6ff,#dff1ff);color:#0f6cdf}
body.portfolio-site .feature-card:nth-child(2) .iconbox{background:linear-gradient(135deg,#f2edff,#e8e0ff);color:#7241e4}
body.portfolio-site .feature-card:nth-child(3) .iconbox{background:linear-gradient(135deg,#ecfeff,#d8f8f7);color:#0da1a8}
body.portfolio-site .feature-card:nth-child(4) .iconbox{background:linear-gradient(135deg,#fff3e8,#ffead8);color:#eb7f30}
body.portfolio-site .feature-card:nth-child(5) .iconbox{background:linear-gradient(135deg,#edf6ff,#e2eaff);color:#4258d7}
body.portfolio-site .feature-card:nth-child(6) .iconbox{background:linear-gradient(135deg,#eefdf6,#def8eb);color:#1c9876}
body.portfolio-site .feature-card h3,
body.portfolio-site .research-card h3,
body.portfolio-site .publication h3{font-size:1.17rem}
body.portfolio-site .featured-case{
  margin:10px 0 28px;
  display:grid;grid-template-columns:1.3fr .9fr;gap:24px;
  padding:28px;border-radius:28px;
  background:linear-gradient(135deg,#143f82 0%,#284a98 40%,#4e2f89 100%);
  box-shadow:0 24px 48px rgba(33,57,130,.18);
  color:#fff;position:relative;overflow:hidden;
}
body.portfolio-site .featured-case::before{
  content:'';position:absolute;right:-60px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%);
}
body.portfolio-site .case-kicker{
  display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px
}
body.portfolio-site .featured-case h3{font-size:1.55rem;color:#fff;margin-bottom:12px}
body.portfolio-site .featured-case p{color:#d6e4ff;max-width:690px;margin-bottom:18px}
body.portfolio-site .featured-tags .tag{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.16);color:#fff}
body.portfolio-site .featured-metrics{display:grid;gap:12px;align-content:start}
body.portfolio-site .metric-card{
  padding:18px 18px;border-radius:20px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(8px)
}
body.portfolio-site .metric-card strong{display:block;font:800 1.2rem Manrope;color:#fff;margin-bottom:4px}
body.portfolio-site .metric-card span{display:block;color:#d6e3ff;font-size:.86rem;line-height:1.45}
body.portfolio-site .project{transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
body.portfolio-site .project:hover{transform:translateY(-6px);box-shadow:0 20px 34px rgba(46,74,140,.12)}
body.portfolio-site .project .category{font-weight:900}
body.portfolio-site .highlight-slab{box-shadow:0 18px 38px rgba(8,44,81,.20)}
body.portfolio-site .pub-toolbar{box-shadow:0 18px 38px rgba(49,82,155,.08)}
body.portfolio-site .publication-profiles .btn:first-child,
body.portfolio-site .publication-profiles .btn:nth-child(2),
body.portfolio-site .publication-profiles .btn:nth-child(3){position:relative;padding-left:40px}
body.portfolio-site .publication-profiles .btn:first-child::before,
body.portfolio-site .publication-profiles .btn:nth-child(2)::before,
body.portfolio-site .publication-profiles .btn:nth-child(3)::before{
  content:'';position:absolute;left:16px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background:currentColor;opacity:.9
}
body.portfolio-site .publication-profiles .btn.primary::before{background:#fff}
body.portfolio-site .publication:nth-child(odd){background:linear-gradient(180deg,#ffffff 0%, #fbfcff 72%, #f6f1ff 100%)}
body.portfolio-site .publication:nth-child(even){background:linear-gradient(180deg,#ffffff 0%, #fbfcff 72%, #eefcfc 100%)}
body.portfolio-site .about-grid .card,
body.portfolio-site #public-apps .card{box-shadow:0 18px 34px rgba(42,77,137,.08)}
body.portfolio-site .tag-cloud{gap:6px}
body.portfolio-site .quote{position:relative}
body.portfolio-site .quote::before{
  content:'';position:absolute;right:-60px;bottom:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 65%);
}
body.portfolio-site .quote .btn{box-shadow:0 16px 30px rgba(9,32,95,.16)}
body.portfolio-site .foot{
  position:relative;
  background:linear-gradient(135deg,#102a4c 0%,#16376b 100%);
}
body.portfolio-site .foot::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);background-size:34px 34px;mask-image:linear-gradient(180deg,rgba(0,0,0,.35),transparent 100%)}

@media(max-width:900px){
  body.portfolio-site .featured-case{grid-template-columns:1fr}
}
@media(max-width:680px){
  body.portfolio-site .featured-case{padding:22px;border-radius:24px}
  body.portfolio-site .featured-case h3{font-size:1.32rem}
  body.portfolio-site .iconbox{width:54px;height:54px}
}
