:root{
  --navy:#0a1d39;
  --navy2:#11214e;
  --ink:#12263f;
  --blue:#1366e8;
  --purple:#8248f2;
  --purple2:#a24ff2;
  --muted:#627891;
  --line:#dfe8f2;
  --soft:#f6f9fd;
  --white:#fff;
  --shadow:0 15px 40px rgba(25,50,80,.08);
  --max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
.shell{width:min(var(--max),calc(100% - 48px));margin:0 auto}

/* HEADER */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid #eaf0f6;
  backdrop-filter:blur(12px);
}
.nav-wrap{
  height:70px;display:grid;grid-template-columns:230px 1fr auto;align-items:center;gap:28px;
}
.brand{display:flex;flex-direction:column;line-height:1}
.brand-name{font-family:"Playfair Display",serif;font-weight:700;font-size:1.05rem;color:#111827}
.brand-role{font-size:.61rem;text-transform:uppercase;letter-spacing:.15em;font-weight:700;margin-top:5px}
.desktop-nav{display:flex;justify-content:center;gap:26px;font-size:.78rem;font-weight:600;color:#5d738a}
.desktop-nav a{padding:26px 0 22px;border-bottom:2px solid transparent}
.desktop-nav a:hover,.desktop-nav a.active{color:#1b61df;border-color:#1b61df}
.nav-actions{display:flex;align-items:center;gap:10px}
.icon-link{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  font-size:.72rem;font-weight:800;color:#0a1d39
}
.resume-nav{
  background:linear-gradient(135deg,var(--purple),var(--purple2));color:#fff;
  padding:10px 15px;border-radius:8px;font-size:.72rem;font-weight:700;
  box-shadow:0 10px 22px rgba(130,72,242,.24)
}
.menu-button,.mobile-nav{display:none}

/* HERO */
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 76% 30%,rgba(85,82,230,.34),transparent 28%),
    linear-gradient(110deg,#06152c 0%,#0a2144 50%,#111c45 100%);
  color:#fff;
}
.hero:after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    radial-gradient(circle at 20% 30%,rgba(25,113,234,.08),transparent 22%),
    linear-gradient(90deg,rgba(4,14,34,.9) 0%,rgba(4,14,34,.4) 48%,rgba(4,14,34,.05) 100%);
}
.hero-grid{
  min-height:390px;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;position:relative;z-index:2
}
.hero-copy{padding:42px 0 40px;max-width:610px}
.hero-kicker{font-size:.66rem;font-weight:700;letter-spacing:.15em;color:#c7d6ec;margin:0 0 11px}
.hero-kicker span{margin:0 7px}
.hero h1{
  font-family:"Playfair Display",serif;font-size:clamp(3.45rem,5.1vw,5.45rem);
  line-height:.83;letter-spacing:-.04em;margin:0 0 13px;color:#fff
}
.hero h2{
  font-family:"Playfair Display",serif;font-size:clamp(1.25rem,2.15vw,1.85rem);
  line-height:1.08;margin:0 0 13px;color:#bd66f3
}
.hero-description{font-size:.95rem;line-height:1.5;color:#f1f5fa;margin:0;max-width:570px}
.hero-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 14px}
.button{
  display:inline-flex;align-items:center;gap:7px;padding:11px 16px;border-radius:7px;font-size:.76rem;font-weight:700
}
.button.primary{background:linear-gradient(135deg,#7254f6,#a645ef);color:#fff;box-shadow:0 10px 28px rgba(111,77,247,.3)}
.button.light{background:#fff;color:#14243b}
.button.outline{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.04)}
.hero-meta{display:flex;flex-wrap:wrap;gap:18px;font-size:.65rem;color:#d7e2ef}
.hero-art{position:relative;height:390px;overflow:hidden}
.hero-art-inner{position:absolute;inset:-30px -80px -25px -60px}
.hero-art-inner img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.22) contrast(1.08) brightness(.78)}
.hero-art-inner:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,#081b38 0%,rgba(8,27,56,.18) 20%,rgba(8,27,56,.02) 75%,rgba(8,27,56,.4) 100%)
}
.hero-art p{
  position:absolute;right:8px;top:72px;margin:0;padding:0 0 0 18px;border-left:1px solid rgba(255,255,255,.3);
  font-family:"Playfair Display",serif;font-style:italic;font-size:1.55rem;line-height:1.06;color:#fff;text-align:left
}

/* SHARED SECTION HEADERS */
.section-title-row{display:flex;justify-content:space-between;align-items:end;gap:30px}
.section-title-row h2,.projects-title h2,.notes-heading h2{
  font-family:"Playfair Display",serif;margin:0;color:#102647;font-size:2.15rem;line-height:1
}
.section-title-row p{margin:5px 0 0;color:#667f98;font-size:.82rem}
.text-link,.small-outline{font-size:.74rem;font-weight:700;color:#1466df}
.small-outline{padding:8px 13px;border:1px solid #8f84ff;border-radius:6px}

/* PIPELINE */
.pipeline-section{padding:22px 0 36px;background:#fff}
.pipeline-grid{
  display:grid;grid-template-columns:1fr 18px 1fr 18px 1fr 18px 1fr 18px 1fr;
  align-items:center;margin-top:18px
}
.pipeline-arrow{font-size:1.65rem;color:#1466df;text-align:center;font-weight:700}
.pipeline-card{
  height:258px;border:1px solid var(--line);border-radius:12px;padding:12px 12px 13px;
  box-shadow:0 8px 24px rgba(35,67,100,.04);overflow:hidden
}
.pipeline-card.blue{background:linear-gradient(180deg,#f8fbff,#fff)}
.pipeline-card.lavender{background:linear-gradient(180deg,#faf8ff,#fff)}
.pipeline-card.mint{background:linear-gradient(180deg,#f6fcfa,#fff)}
.pipeline-card.peach{background:linear-gradient(180deg,#fff9f4,#fff)}
.pipeline-card.sky{background:linear-gradient(180deg,#f7fbff,#fff)}
.pipeline-top{min-height:47px}
.step{font-weight:700;font-size:.73rem;color:#1d62d4;display:block}
.pipeline-card:nth-of-type(2) .step{color:#7e42df}
.pipeline-card:nth-of-type(3) .step{color:#23904b}
.pipeline-card:nth-of-type(4) .step{color:#e0662f}
.pipeline-card:nth-of-type(5) .step{color:#235dd5}
.pipeline-card h3{font-family:"Playfair Display",serif;font-size:1rem;line-height:.98;margin:3px 0 0;color:#112643}
.pipeline-visual{height:88px;display:flex;align-items:center;justify-content:center;margin:1px 0 8px;overflow:hidden}
.pipeline-visual img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.pipeline-card.peach .pipeline-visual img{object-fit:contain}
.pipeline-card p{font-size:.67rem;line-height:1.43;color:#657b91;margin:0}

/* PROJECTS */
.projects-section{padding:2px 0 18px}
.projects-title{margin-bottom:12px}
.project-grid{display:grid;grid-template-columns:1.15fr .92fr .92fr;gap:14px}
.project-card{
  border:1px solid #dbe6f1;border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(25,55,85,.05);overflow:hidden
}
.project-image{height:154px;position:relative;background:#f7fbff;overflow:hidden}
.project-image>img{width:100%;height:100%;object-fit:cover}
.flagship-image>img{object-position:center 45%}
.project-badge{
  position:absolute;left:12px;top:10px;z-index:2;padding:5px 9px;border-radius:4px;color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.04em
}
.project-badge.purple{background:linear-gradient(135deg,#7c4cf3,#a946ee)}
.project-badge.blue-badge{background:#eef4ff;color:#1366e8}
.project-num{position:absolute;right:13px;top:13px;z-index:2;font-size:.58rem;font-weight:700;color:#1867dc}
.gnn-media{display:flex;align-items:center}
.gnn-split{display:grid;grid-template-columns:1fr 1fr;height:100%;width:100%;gap:3px;padding:8px 7px 5px}
.gnn-split img{width:100%;height:100%;object-fit:contain;background:white;border-radius:5px}
.project-body{padding:12px 13px 12px}
.project-body h3{font-family:"Playfair Display",serif;font-size:1.22rem;line-height:1.03;margin:0 0 6px;color:#10213b}
.project-body p{font-size:.68rem;line-height:1.42;color:#5d7288;margin:0 0 10px}
.metrics{display:grid;border-top:1px solid #e5edf5;border-bottom:1px solid #e5edf5;margin:8px 0}
.metrics.four{grid-template-columns:repeat(4,1fr)}
.metrics.three{grid-template-columns:repeat(3,1fr)}
.metrics.one{grid-template-columns:1fr}
.metrics>div{padding:8px 7px;border-right:1px solid #e5edf5}
.metrics>div:last-child{border-right:0}
.metrics strong{display:block;font-size:.92rem;color:#122239}
.metrics span{display:block;font-size:.53rem;color:#63788d;line-height:1.15;margin-top:2px}
.tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}
.tags span{font-size:.53rem;background:#f0f5fa;color:#54708d;padding:4px 6px;border-radius:5px;font-weight:600}
.project-links{display:flex;flex-wrap:wrap;gap:14px;font-size:.61rem;font-weight:700;color:#1265dc}
.project-links a:hover{text-decoration:underline}

/* ABOUT + EXPERTISE */
.about-section{padding:20px 0 16px;border-top:1px solid #eef2f7;border-bottom:1px solid #eef2f7}
.about-grid{display:grid;grid-template-columns:150px 1.15fr .95fr;gap:25px;align-items:center}
.portrait-wrap{
  width:134px;height:134px;border-radius:50%;padding:5px;background:#fff;
  box-shadow:0 12px 30px rgba(27,54,83,.14);position:relative
}
.portrait-wrap:before{
  content:"";position:absolute;width:90px;height:90px;border-radius:50%;left:-10px;bottom:-5px;
  background:linear-gradient(135deg,#dacdfd,#efe8ff);z-index:-1
}
.portrait-wrap img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.about-copy h2,.expertise h2{font-family:"Playfair Display",serif;font-size:1.55rem;margin:0 0 6px}
.about-copy>p{font-size:.72rem;line-height:1.48;color:#51677d;margin:0 0 11px}
.credential-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.credential{display:flex;align-items:center;gap:6px;border:1px solid #e3ebf4;border-radius:8px;padding:7px 7px;background:#fff}
.credential b{font-size:1rem;color:#784cf0}
.credential span{font-size:.53rem;color:#536b83;line-height:1.15}
.credential strong{display:block;font-size:.53rem;color:#24425f}
.expertise{padding-left:18px;border-left:1px solid #dbe5ef}
.expertise-title{display:flex;align-items:center;justify-content:space-between;gap:10px}
.expertise-title a{font-size:.56rem;font-weight:700;color:#1e66d7}
.expertise ul{list-style:none;padding:0;margin:7px 0 0}
.expertise li{font-size:.68rem;color:#4e647a;margin:5px 0;padding-left:19px;position:relative}
.expertise li:before{
  content:"✓";position:absolute;left:0;top:-1px;width:13px;height:13px;border-radius:50%;
  background:#6f50ef;color:#fff;display:grid;place-items:center;font-size:.5rem;font-weight:700
}

/* NOTES */
.notes-section{padding:12px 0 14px}
.notes-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:8px}
.notes-heading a{font-size:.58rem;font-weight:700;color:#1766dd}
.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.note-card{border:1px solid #dfe8f2;border-radius:9px;padding:12px;background:#fff;min-height:112px;position:relative}
.note-meta{display:flex;justify-content:space-between;font-size:.5rem;font-weight:700;color:#1666dd}
.note-card h3{font-family:"Playfair Display",serif;font-size:.92rem;line-height:1.04;margin:7px 0 5px}
.note-card p{font-size:.61rem;line-height:1.32;color:#61768b;margin:0 0 6px}
.note-card>strong{font-size:.56rem;color:#1366df;position:absolute;right:12px;bottom:10px}

/* CONTACT */
.contact-section{
  position:relative;background:linear-gradient(115deg,#081932,#0e2b51 65%,#111b42);color:#fff;overflow:hidden
}
.contact-bg{
  position:absolute;inset:0;background:
    radial-gradient(circle at 60% 50%,rgba(80,61,234,.25),transparent 25%),
    radial-gradient(circle at 45% 70%,rgba(22,113,230,.17),transparent 28%);
}
.contact-grid{min-height:94px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;gap:25px}
.contact-eyebrow{font-size:.5rem;letter-spacing:.14em;margin:0 0 3px;color:#b6c9de}
.contact-section h2{font-family:"Playfair Display",serif;font-size:1.45rem;margin:0 0 4px}
.contact-section p{font-size:.61rem;color:#d7e2ef;max-width:590px;margin:0;line-height:1.35}
.contact-actions{display:flex;align-items:center;gap:10px}
.contact-button{background:#fff;color:#10223b;border-radius:7px;padding:11px 20px;font-size:.68rem;font-weight:700}
.social-circle{width:31px;height:31px;border-radius:50%;border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;font-size:.62rem;font-weight:700}

/* FOOTER */
footer{background:#061426;color:#9fb1c3;font-size:.52rem}
.footer-row{min-height:30px;display:flex;align-items:center;justify-content:space-between}

/* RESPONSIVE */
@media(max-width:1160px){
  .nav-wrap{grid-template-columns:210px 1fr auto}
  .desktop-nav{gap:16px}
  .nav-actions .icon-link{display:none}
  .pipeline-grid{grid-template-columns:repeat(5,1fr);gap:9px}
  .pipeline-arrow{display:none}
  .project-grid{grid-template-columns:1fr 1fr}
  .project-card:first-child{grid-column:1/-1}
  .about-grid{grid-template-columns:130px 1fr}
  .expertise{grid-column:1/-1;border-left:0;border-top:1px solid #e3ebf3;padding:12px 0 0}
}
@media(max-width:900px){
  .desktop-nav,.nav-actions{display:none}
  .nav-wrap{grid-template-columns:1fr auto}
  .menu-button{display:flex;flex-direction:column;gap:4px;background:none;border:0;padding:9px}
  .menu-button span{width:23px;height:2px;background:#13263e}
  .mobile-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:14px 24px;border-bottom:1px solid #e6edf5}
  .mobile-nav.open{display:grid}
  .mobile-nav a{padding:10px 0;border-bottom:1px solid #edf2f7;font-size:.82rem}
  .hero-grid{grid-template-columns:1fr}
  .hero-art{display:none}
  .hero-copy{max-width:740px}
  .pipeline-grid{grid-template-columns:repeat(2,1fr)}
  .pipeline-card{height:auto;min-height:245px}
  .project-grid{grid-template-columns:1fr}
  .project-card:first-child{grid-column:auto}
  .about-grid{grid-template-columns:120px 1fr}
  .credential-row{grid-template-columns:1fr 1fr}
  .notes-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .shell{width:min(var(--max),calc(100% - 24px))}
  .hero h1{font-size:3.35rem}
  .hero h2{font-size:1.3rem}
  .hero-description{font-size:.88rem}
  .section-title-row{display:block}
  .section-title-row .text-link,.section-title-row .small-outline{display:inline-block;margin-top:9px}
  .pipeline-grid{grid-template-columns:1fr}
  .pipeline-card{min-height:0}
  .pipeline-visual{height:130px}
  .project-image{height:180px}
  .about-grid{grid-template-columns:1fr}
  .portrait-wrap{margin:auto}
  .expertise{grid-column:auto}
  .credential-row{grid-template-columns:1fr}
  .contact-grid{display:block;padding:18px 0}
  .contact-actions{margin-top:12px}
  .footer-row{display:block;padding:8px 0;text-align:center}
}


/* ---------------------------------------------------------
   CLEANER FLAGSHIP PROJECT 01
--------------------------------------------------------- */
.flagship-image {
  height: 176px;
  background: linear-gradient(180deg, #f8fbff, #eef5fb);
}
.flagship-image > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.project-card:first-child .project-body {
  padding-top: 15px;
}
.project-card:first-child .project-body h3 {
  font-size: 1.38rem;
  line-height: 1.05;
  margin-bottom: 5px;
}
.project-subtitle-clean {
  color: #37699b !important;
  font-weight: 700;
  font-size: .68rem !important;
  margin-bottom: 7px !important;
}
.project-card:first-child .project-badge {
  top: 12px;
  left: 12px;
  padding: 5px 10px;
  box-shadow: 0 5px 14px rgba(110, 73, 235, .16);
}


/* Two-card notes layout after removing IC50/pIC50 note */
.notes-grid{grid-template-columns:repeat(2,1fr);}
@media(max-width:900px){.notes-grid{grid-template-columns:1fr;}}

/* FINAL NO-IC50 OVERRIDE */
.notes-grid{grid-template-columns:repeat(2,1fr)!important;}
@media(max-width:900px){.notes-grid{grid-template-columns:1fr!important;}}


/* ---------------------------------------------------------
   CLEAN PROJECTS 02 & 03
--------------------------------------------------------- */
.project-clean-media {
  height: 176px;
  background: linear-gradient(180deg, #fbfdff, #f3f8fd);
  padding: 9px 10px 7px;
}
.project-clean-media > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  border-radius: 7px;
}
.project-grid .project-card:nth-child(2) .project-body,
.project-grid .project-card:nth-child(3) .project-body {
  padding-top: 15px;
}
.project-grid .project-card:nth-child(2) .project-body h3,
.project-grid .project-card:nth-child(3) .project-body h3 {
  margin-bottom: 7px;
}
.project-grid .project-card:nth-child(2) .project-badge,
.project-grid .project-card:nth-child(3) .project-badge {
  top: 12px;
  left: 12px;
  z-index: 5;
}


/* ---------------------------------------------------------
   FOUR-PROJECT FEATURED LAYOUT
   Project 01 spans the row; Projects 02–04 sit evenly below.
--------------------------------------------------------- */
.project-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
}
.project-grid > .project-card:first-child {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.08fr .92fr;
}
.project-grid > .project-card:first-child .project-image {
  height: 100%;
  min-height: 330px;
}
.project-grid > .project-card:first-child .project-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 24px 26px;
}
.project-grid > .project-card:nth-child(2),
.project-grid > .project-card:nth-child(3),
.project-grid > .project-card:nth-child(4) {
  grid-column: span 2;
}
.project-grid > .project-card:nth-child(2) .project-body h3,
.project-grid > .project-card:nth-child(3) .project-body h3,
.project-grid > .project-card:nth-child(4) .project-body h3 {
  font-size: 1.18rem;
}
.project-grid > .project-card:nth-child(2) .project-subtitle-clean {
  margin-bottom: 7px !important;
}

/* Keep all three lower cards visually aligned. */
.project-grid > .project-card:nth-child(2),
.project-grid > .project-card:nth-child(3),
.project-grid > .project-card:nth-child(4) {
  display: flex;
  flex-direction: column;
}
.project-grid > .project-card:nth-child(2) .project-body,
.project-grid > .project-card:nth-child(3) .project-body,
.project-grid > .project-card:nth-child(4) .project-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.project-grid > .project-card:nth-child(2) .project-links,
.project-grid > .project-card:nth-child(3) .project-links,
.project-grid > .project-card:nth-child(4) .project-links {
  margin-top: auto;
}

@media(max-width:1160px){
  .project-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .project-grid > .project-card:first-child{
    grid-column:1/-1;
  }
  .project-grid > .project-card:nth-child(2),
  .project-grid > .project-card:nth-child(3),
  .project-grid > .project-card:nth-child(4){
    grid-column:auto;
  }
  .project-grid > .project-card:nth-child(4){
    grid-column:1/-1;
  }
}
@media(max-width:900px){
  .project-grid{
    grid-template-columns:1fr;
  }
  .project-grid > .project-card:first-child{
    grid-column:auto;
    display:block;
  }
  .project-grid > .project-card:first-child .project-image{
    min-height:0;
    height:210px;
  }
  .project-grid > .project-card:nth-child(4){
    grid-column:auto;
  }
}


/* ---------------------------------------------------------
   FIVE FEATURED PROJECTS
   Project 01 spans full width; Projects 02–05 form a 2x2 grid.
--------------------------------------------------------- */
.project-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
}
.project-grid > .project-card{
  grid-column:auto !important;
}
.project-grid > .project-card:first-child{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:1.05fr .95fr !important;
}
.project-grid > .project-card:first-child .flagship-image{
  height:100% !important;
  min-height:320px !important;
}
.project-grid > .project-card:first-child .project-body{
  padding:24px 26px !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.project-grid > .project-card:not(:first-child){
  display:flex;
  flex-direction:column;
}
.project-grid > .project-card:not(:first-child) .project-body{
  flex:1;
  display:flex;
  flex-direction:column;
  padding-top:15px;
}
.project-grid > .project-card:not(:first-child) .project-links{
  margin-top:auto;
}
.project-grid > .project-card:not(:first-child) .project-clean-media{
  height:190px;
}
.project-grid > .project-card:not(:first-child) .project-body h3{
  font-size:1.22rem;
  line-height:1.04;
}
@media(max-width:900px){
  .project-grid{
    grid-template-columns:1fr !important;
  }
  .project-grid > .project-card:first-child{
    grid-column:auto !important;
    display:block !important;
  }
  .project-grid > .project-card:first-child .flagship-image{
    height:210px !important;
    min-height:0 !important;
  }
}


/* ---------------------------------------------------------
   PROJECT 01 — PREMIUM FEATURED CARD
--------------------------------------------------------- */
.project-featured-premium{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr) !important;
  min-height:360px;
  overflow:hidden;
  border-radius:18px;
  border:1px solid #dbe7f3;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  box-shadow:0 18px 45px rgba(26,58,91,.08);
}
.featured-media{
  position:relative;
  min-height:360px;
  overflow:hidden;
  background:linear-gradient(180deg,#f5f9fe,#eef5fb);
}
.featured-media > img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.featured-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 58%,rgba(7,24,49,.58) 100%);
  pointer-events:none;
}
.featured-badge-row{
  position:absolute;
  top:18px;
  left:18px;
  right:18px;
  z-index:3;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.featured-badge-row .project-badge{
  position:static;
  padding:6px 11px;
  border-radius:999px;
  box-shadow:0 6px 18px rgba(111,77,236,.18);
}
.featured-label{
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.12em;
  color:#305f92;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(216,229,242,.95);
  padding:6px 10px;
  border-radius:999px;
  backdrop-filter:blur(7px);
}
.featured-media-caption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:3;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.featured-media-caption span{
  font-size:.58rem;
  font-weight:700;
  color:#fff;
  background:rgba(8,27,56,.62);
  border:1px solid rgba(255,255,255,.22);
  padding:6px 9px;
  border-radius:999px;
  backdrop-filter:blur(6px);
}
.featured-content{
  padding:34px 34px 30px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.featured-eyebrow{
  margin:0 0 8px;
  font-size:.64rem !important;
  font-weight:800;
  letter-spacing:.13em;
  color:#2772d6 !important;
}
.featured-content h3{
  font-family:"Playfair Display",serif;
  font-size:2rem !important;
  line-height:1 !important;
  margin:0 0 8px !important;
  color:#10223d;
}
.featured-subtitle{
  color:#416f9d !important;
  font-weight:700;
  font-size:.76rem !important;
  margin:0 0 12px !important;
}
.featured-description{
  color:#536a81 !important;
  font-size:.75rem !important;
  line-height:1.52 !important;
  margin:0 0 18px !important;
}
.featured-metrics{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #e2ebf4;
  border-bottom:1px solid #e2ebf4;
  margin:0 0 14px;
}
.featured-metrics > div{
  padding:12px 10px;
  border-right:1px solid #e2ebf4;
}
.featured-metrics > div:last-child{border-right:0}
.featured-metrics strong{
  display:block;
  font-size:1rem;
  color:#12243b;
}
.featured-metrics span{
  display:block;
  margin-top:3px;
  font-size:.56rem;
  line-height:1.2;
  color:#6f8296;
}
.featured-tech{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:17px;
}
.featured-tech span{
  font-size:.55rem;
  font-weight:700;
  color:#536f8b;
  background:#f0f5fa;
  padding:5px 7px;
  border-radius:6px;
}
.featured-actions{
  display:flex;
  align-items:center;
  gap:18px;
  font-size:.68rem;
  font-weight:800;
  color:#1467dc;
}
.featured-primary{
  display:inline-flex;
  align-items:center;
  padding:9px 13px;
  border-radius:7px;
  background:#1467dc;
  color:#fff !important;
  box-shadow:0 7px 18px rgba(20,103,220,.18);
}
@media(max-width:900px){
  .project-featured-premium{
    grid-template-columns:1fr !important;
  }
  .featured-media{
    min-height:250px;
  }
  .featured-content{
    padding:24px 22px 22px;
  }
  .featured-metrics{
    grid-template-columns:repeat(2,1fr);
  }
  .featured-metrics > div:nth-child(2){
    border-right:0;
  }
  .featured-metrics > div:nth-child(-n+2){
    border-bottom:1px solid #e2ebf4;
  }
}


/* =========================================================
   FINAL PROJECT CARD ALIGNMENT
   Project 01 now uses exactly the same card footprint as Project 02.
========================================================= */
.project-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
}
.project-grid > .project-card,
.project-grid > .project-card:first-child,
.project-featured-premium{
  grid-column:auto !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:0 !important;
  border-radius:12px !important;
  overflow:hidden !important;
  box-shadow:0 10px 30px rgba(25,55,85,.05) !important;
}
.project-grid > .project-card .project-clean-media,
.project-grid > .project-card:first-child .project-clean-media,
.project01-media{
  height:190px !important;
  min-height:190px !important;
  padding:9px 10px 7px !important;
  background:linear-gradient(180deg,#fbfdff,#f3f8fd) !important;
  border-bottom:1px solid #e7eef6 !important;
  position:relative !important;
}
.project01-media > img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:7px !important;
}
.project01-number{
  position:absolute;
  right:12px;
  top:12px;
  z-index:5;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.08em;
  color:#1767d9;
  background:rgba(255,255,255,.9);
  border:1px solid #dce8f5;
  border-radius:6px;
  padding:5px 8px;
}
.project-grid > .project-card .project-body,
.project-grid > .project-card:first-child .project-body{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  padding:15px 13px 12px !important;
}
.project-grid > .project-card .project-body h3,
.project-grid > .project-card:first-child .project-body h3{
  font-size:1.22rem !important;
  line-height:1.04 !important;
  margin:0 0 7px !important;
}
.project-grid > .project-card .project-links,
.project-grid > .project-card:first-child .project-links{
  margin-top:auto !important;
}
.project01-metrics{
  grid-template-columns:repeat(4,1fr) !important;
}
.project01-metrics > div{
  padding:8px 6px !important;
}

/* Remove all legacy flagship-only visual rules. */
.project-featured-premium,
.featured-media,
.featured-content,
.featured-badge-row,
.featured-media-caption,
.featured-eyebrow,
.featured-subtitle,
.featured-description,
.featured-metrics,
.featured-tech,
.featured-actions{
  all:unset;
}

/* Clean About portrait: simple white ring, no purple blob. */
.portrait-wrap{
  width:132px !important;
  height:132px !important;
  padding:4px !important;
  border-radius:50% !important;
  background:#fff !important;
  border:1px solid #e5edf5 !important;
  box-shadow:0 10px 25px rgba(27,54,83,.10) !important;
  position:relative !important;
}
.portrait-wrap:before,
.portrait-wrap:after{
  display:none !important;
  content:none !important;
}
.portrait-wrap img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  border-radius:50% !important;
  object-fit:cover !important;
}

@media(max-width:900px){
  .project-grid{
    grid-template-columns:1fr !important;
  }
}
