*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --c1:#424A4D;--c2:#6A6A68;--c3:#98B29D;--c4:#BEC5A7;--c5:#F3E9C4;
  --bg:#272E30;--bg2:#2e3638;
}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--c5);font-family:'Jost',sans-serif;font-weight:300;overflow-x:hidden;cursor:none;}

/* Cursor */
#cur{width:7px;height:7px;background:var(--c3);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;will-change:transform;transition:background .2s;}
#cur2{width:30px;height:30px;border:1px solid rgba(152,178,157,.35);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9998;will-change:transform;transition:border-color .2s;}

/* Nav */
nav{position:fixed;top:0;left:0;right:0;z-index:500;padding:2.2rem 5rem;display:flex;justify-content:space-between;align-items:center;transition:all .4s ease;}
nav.stuck{background:rgba(39,46,48,.96);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:1.3rem 5rem;border-bottom:1px solid rgba(152,178,157,.12);}
.logo{font-family:'Cormorant Garamond',serif;font-size:1.55rem;font-weight:600;letter-spacing:.18em;color:var(--c5);text-decoration:none;cursor:none;}
.logo i{color:var(--c3);}
.nav-links{display:flex;gap:3rem;list-style:none;}
.nav-links a{font-size:.7rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--c4);text-decoration:none;position:relative;padding-bottom:4px;cursor:none;transition:color .3s;}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--c3);transition:width .35s cubic-bezier(.16,1,.3,1);}
.nav-links a:hover,.nav-links a.on{color:var(--c5);}
.nav-links a:hover::after,.nav-links a.on::after{width:100%;}

/* Curtain transition */
#curtain{position:fixed;inset:0;background:var(--c1);z-index:800;transform:scaleY(1);transform-origin:top;pointer-events:none;}
#curtain.hidden{transform:scaleY(0);}
#curtain.dn{transform-origin:bottom;animation:curtainDown .42s cubic-bezier(.86,0,.07,1) forwards;}
#curtain.up{animation:curtainUp .42s cubic-bezier(.86,0,.07,1) forwards;}
@keyframes curtainDown{from{transform:scaleY(0);}to{transform:scaleY(1);}}
@keyframes curtainUp{from{transform:scaleY(1);}to{transform:scaleY(0);}}

/* ── HOME ─────────────────── */
.hero{height:100vh;display:flex;align-items:center;padding:0 5rem;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 70% at 72% 55%,rgba(152,178,157,.07) 0%,transparent 65%),radial-gradient(ellipse 35% 50% at 15% 75%,rgba(190,197,167,.045) 0%,transparent 60%);}
.hero-grain{position:absolute;inset:0;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px;}
.hero-inner{position:relative;z-index:2;max-width:860px;}
.h-eyebrow{font-size:.68rem;letter-spacing:.38em;text-transform:uppercase;color:var(--c3);margin-bottom:2.2rem;opacity:0;transform:translateY(16px);animation:up .7s ease .25s forwards;display:flex;align-items:center;gap:1rem;}
.h-eyebrow::before{content:'';width:28px;height:1px;background:var(--c3);}
.h-title{font-family:'Cormorant Garamond',serif;font-size:clamp(3.8rem,8.5vw,9rem);font-weight:300;line-height:1;letter-spacing:-.02em;color:var(--c5);}
.h-title .ln{display:block;overflow:hidden;padding-bottom:.24em;margin-bottom:-.24em;}
.h-title .ln span{display:block;opacity:0;transform:translateY(105%);animation:slide .9s cubic-bezier(.16,1,.3,1) forwards;}
.h-title .ln:nth-child(1) span{animation-delay:.42s;}
.h-title .ln:nth-child(2) span{animation-delay:.56s;}
.h-title .ln:nth-child(3) span{animation-delay:.7s;}
.h-title em{font-style:italic;color:var(--c3);}
.h-sub{margin-top:2.2rem;font-size:.88rem;color:var(--c2);line-height:1.85;max-width:380px;opacity:0;transform:translateY(14px);animation:up .7s ease 1s forwards;}
.h-cta{margin-top:3rem;display:flex;align-items:center;gap:2.5rem;opacity:0;animation:up .7s ease 1.15s forwards;}
.btn{display:inline-flex;align-items:center;gap:.8rem;padding:1rem 2.4rem;border:1px solid var(--c3);color:var(--c5);font-family:'Jost',sans-serif;font-size:.7rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;cursor:none;position:relative;overflow:hidden;transition:color .35s;}
.btn::before{content:'';position:absolute;inset:0;background:var(--c3);transform:translateX(-101%);transition:transform .4s cubic-bezier(.16,1,.3,1);}
.btn:hover::before{transform:translateX(0);}
.btn:hover{color:var(--bg);}
.btn span{position:relative;z-index:1;}
.ghost-link{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--c2);text-decoration:none;cursor:none;transition:color .3s;display:flex;align-items:center;gap:.6rem;}
.ghost-link:hover{color:var(--c5);}
.ghost-link::after{content:'→';transition:transform .3s;}
.ghost-link:hover::after{transform:translateX(4px);}
.hero-stats{position:absolute;right:5rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.6rem;opacity:0;animation:up .7s ease 1.3s forwards;}
.stat{text-align:right;}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:3.2rem;font-weight:300;line-height:1;color:var(--c5);}
.stat-n em{font-size:2rem;color:var(--c3);font-style:italic;}
.stat-l{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c2);}
.stat-div{width:1px;height:52px;background:rgba(106,106,104,.25);margin-left:auto;}

/* Capability index — replaces the old scrolling marquee */
.cap-index{border-top:1px solid rgba(152,178,157,.1);border-bottom:1px solid rgba(152,178,157,.1);}
.cap-row{display:grid;grid-template-columns:70px 220px 1fr;align-items:center;gap:2rem;padding:1.7rem 5rem;border-bottom:1px solid rgba(152,178,157,.08);transition:background .3s;}
.cap-row:last-child{border-bottom:none;}
.cap-row:hover{background:rgba(152,178,157,.045);}
.cap-n{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1rem;color:var(--c3);}
.cap-t{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:400;color:var(--c5);}
.cap-d{font-size:.8rem;color:var(--c2);line-height:1.7;max-width:480px;}

/* Mobile menu toggle */
.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;background:transparent;border:none;cursor:none;z-index:601;}
.menu-toggle span{display:block;width:100%;height:1px;background:var(--c5);transition:transform .3s ease,opacity .3s ease;}
.menu-toggle.open span:nth-child(1){transform:translateY(6px) rotate(45deg);}
.menu-toggle.open span:nth-child(2){opacity:0;}
.menu-toggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
#nav-overlay{display:none;position:fixed;inset:0;background:rgba(20,24,25,.55);z-index:590;opacity:0;transition:opacity .3s ease;pointer-events:none;}
#nav-overlay.on{opacity:1;pointer-events:auto;}

/* Sections */
.sec{padding:8rem 5rem;}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:5rem;}
.sec-label{font-size:.62rem;letter-spacing:.32em;text-transform:uppercase;color:var(--c3);margin-bottom:.8rem;}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2.8rem,5vw,4.8rem);font-weight:300;line-height:1.05;color:var(--c5);}
.sec-sub{margin-top:1.4rem;font-size:.85rem;color:var(--c2);line-height:1.85;max-width:460px;}
.sec-link{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c4);text-decoration:none;cursor:none;border-bottom:1px solid rgba(190,197,167,.28);padding-bottom:3px;transition:color .3s,border-color .3s;}
.sec-link:hover{color:var(--c5);border-color:var(--c3);}

/* Home preview grid */
.pg-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.4rem;}
.pc{position:relative;overflow:hidden;cursor:none;}
.pc:nth-child(1){grid-column:1/8;grid-row:1;aspect-ratio:16/10;}
.pc:nth-child(2){grid-column:8/13;grid-row:1;aspect-ratio:4/5;}
.pc:nth-child(3){grid-column:1/5;grid-row:2;aspect-ratio:4/5;}
.pc:nth-child(4){grid-column:5/13;grid-row:2;aspect-ratio:16/10;}
.pc-bg{position:absolute;inset:0;transition:transform .7s cubic-bezier(.16,1,.3,1);}
.pc:nth-child(1) .pc-bg{background:linear-gradient(140deg,#3c4548 0%,#2d3638 100%);}
.pc:nth-child(2) .pc-bg{background:linear-gradient(140deg,#424a4d 0%,#354044 60%,rgba(152,178,157,.12) 100%);}
.pc:nth-child(3) .pc-bg{background:linear-gradient(140deg,#353e41 0%,#2b3335 100%);}
.pc:nth-child(4) .pc-bg{background:linear-gradient(140deg,#3e4649 0%,#323b3e 60%,rgba(190,197,167,.08) 100%);}
.pc:hover .pc-bg{transform:scale(1.05);}
.pc-corner{position:absolute;bottom:1.4rem;right:1.4rem;font-size:.55rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(152,178,157,.25);font-family:'Jost',sans-serif;}

/* About strip */
.ab{background:var(--c1);padding:6rem 5rem;display:grid;grid-template-columns:1fr 1fr;gap:8rem;align-items:center;position:relative;overflow:hidden;}
.ab::before{content:'';position:absolute;top:-60%;right:-8%;width:480px;height:480px;border-radius:50%;border:1px solid rgba(152,178,157,.07);}
.ab::after{content:'';position:absolute;top:-35%;right:-3%;width:280px;height:280px;border-radius:50%;border:1px solid rgba(152,178,157,.05);}
.ab-quote{font-family:'Cormorant Garamond',serif;font-size:1.75rem;font-weight:300;line-height:1.55;font-style:italic;color:var(--c5);}
.ab-quote em{color:var(--c3);font-style:normal;}
.ab-details{display:flex;flex-direction:column;gap:2rem;}
.ab-item{border-top:1px solid rgba(152,178,157,.14);padding-top:1.4rem;}
.ab-lbl{font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--c3);margin-bottom:.45rem;}
.ab-val{font-size:.87rem;color:var(--c4);line-height:1.65;}

/* ── WORK PAGE ─────────────── */
.pg-hero{padding:14rem 5rem 5rem;position:relative;}
.pg-title{font-family:'Cormorant Garamond',serif;font-size:clamp(3.2rem,7.5vw,7.5rem);font-weight:300;color:var(--c5);line-height:.98;}
.pg-title em{color:var(--c3);font-style:italic;}
.work-grid{padding:2rem 5rem 8rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1.8rem;}
.wi{position:relative;overflow:hidden;cursor:none;aspect-ratio:4/3;}
.wi-bg{position:absolute;inset:0;transition:transform .8s cubic-bezier(.16,1,.3,1);}
.wi:hover .wi-bg{transform:scale(1.04);}
.wi:nth-child(1) .wi-bg{background:linear-gradient(145deg,#3a4448 0%,#2d3638 55%,rgba(152,178,157,.08) 100%);}
.wi:nth-child(2) .wi-bg{background:linear-gradient(145deg,#404a4d 0%,#333d40 55%,rgba(190,197,167,.06) 100%);}
.wi:nth-child(3) .wi-bg{background:linear-gradient(145deg,#363f42 0%,#2c3538 55%,rgba(243,233,196,.05) 100%);}
.wi:nth-child(4) .wi-bg{background:linear-gradient(145deg,#3c4649 0%,#303a3d 55%,rgba(152,178,157,.07) 100%);}
.wi:nth-child(5) .wi-bg{background:linear-gradient(145deg,#42494c 0%,#363f42 55%,rgba(190,197,167,.05) 100%);}
.wi:nth-child(6) .wi-bg{background:linear-gradient(145deg,#3e4649 0%,#333c3e 55%,rgba(243,233,196,.06) 100%);}
.wi-num{position:absolute;top:1.2rem;right:1.4rem;font-family:'Cormorant Garamond',serif;font-size:4.5rem;font-weight:300;color:rgba(243,233,196,.055);line-height:1;transition:opacity .4s;}
.wi:hover .wi-num{opacity:.4;}
.wi-soon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s;}
.wi:hover .wi-soon{opacity:1;}
.wi-soon span{font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;color:rgba(152,178,157,.5);border:1px solid rgba(152,178,157,.2);padding:.5rem 1.2rem;}

/* ── CREDENTIALS ─────────────── */
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid rgba(152,178,157,.1);}
.sc{padding:4rem 5rem;border-right:1px solid rgba(152,178,157,.1);position:relative;overflow:hidden;}
.sc:last-child{border-right:none;}
.sc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--c3),transparent);transform:scaleX(0);transform-origin:left;transition:transform .5s ease;}
.sc:hover::after{transform:scaleX(1);}
.sc-num{font-family:'Cormorant Garamond',serif;font-size:5.5rem;font-weight:300;line-height:.95;color:var(--c5);margin-bottom:.5rem;}
.sc-num em{font-size:2.8rem;color:var(--c3);font-style:italic;}
.sc-lbl{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c2);}
.certs-sec{padding:6rem 5rem;}
.certs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(152,178,157,.07);margin-top:4rem;}
.cw{background:var(--bg);padding:2rem;position:relative;overflow:hidden;transition:background .3s;min-height:310px;display:flex;flex-direction:column;align-items:center;}
.cw:hover{background:var(--c1);}
.cw-idx{align-self:flex-start;font-family:'Cormorant Garamond',serif;font-size:.78rem;font-style:italic;color:rgba(152,178,157,.35);margin-bottom:1rem;}
.cw-badge{display:flex;justify-content:center;align-items:center;flex:1;}
.cw-badge iframe{border:4px solid var(--c3);border-radius:8px;box-shadow:0 6px 22px rgba(0,0,0,.28);}
.skills-sec{padding:0 5rem 6rem;border-top:1px solid rgba(152,178,157,.08);}
.skills-grid{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:3rem;}
.sk{padding:.55rem 1.4rem;border:1px solid rgba(152,178,157,.18);font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c2);transition:all .3s;cursor:none;}
.sk:hover{border-color:var(--c3);color:var(--c5);background:rgba(152,178,157,.06);}

/* ── CONTACT ────────────────── */
.contact-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;padding-top:8rem;}
.cl{padding:6rem 5rem;background:var(--c1);position:relative;overflow:hidden;}
.cl::before{content:'';position:absolute;bottom:-80px;right:-80px;width:380px;height:380px;border-radius:50%;border:1px solid rgba(152,178,157,.07);}
.cl-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,4.5vw,4.8rem);font-weight:300;line-height:1.1;color:var(--c5);margin-bottom:1.8rem;}
.cl-title em{font-style:italic;color:var(--c3);}
.cl-text{font-size:.85rem;color:var(--c2);line-height:1.9;max-width:380px;margin-bottom:4rem;}
.ci-list{display:flex;flex-direction:column;gap:2rem;}
.ci{border-top:1px solid rgba(152,178,157,.12);padding-top:1.4rem;}
.ci-l{font-size:.57rem;letter-spacing:.28em;text-transform:uppercase;color:var(--c3);margin-bottom:.38rem;}
.ci-v{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--c5);}
.cr{padding:6rem 5rem;background:var(--bg2);}
.form-title{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:300;color:var(--c5);margin-bottom:3rem;}
.fg{margin-bottom:2.4rem;position:relative;}
.hp-field{position:absolute;left:-9999px;top:-9999px;opacity:0;pointer-events:none;}
.fl{display:block;font-size:.58rem;letter-spacing:.28em;text-transform:uppercase;color:var(--c3);margin-bottom:.7rem;}
.fi{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(152,178,157,.22);padding:.75rem 0;color:var(--c5);font-family:'Jost',sans-serif;font-size:.93rem;font-weight:300;outline:none;transition:border-color .3s;}
.fi:focus{border-color:var(--c3);}
.fi::placeholder{color:rgba(106,106,104,.45);}
textarea.fi{resize:none;height:110px;}
.fi-line{position:absolute;bottom:0;left:0;height:1px;width:0;background:var(--c3);transition:width .4s ease;pointer-events:none;}
.fi:focus~.fi-line{width:100%;}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:2rem;}
.btn-sub{display:inline-flex;align-items:center;gap:.85rem;padding:1.1rem 2.8rem;background:var(--c3);border:none;color:var(--bg);font-family:'Jost',sans-serif;font-size:.7rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;cursor:none;transition:background .3s,gap .3s;margin-top:1rem;}
.btn-sub:hover{background:var(--c4);gap:1.3rem;}
.btn-sub .arr{transition:transform .3s;}
.btn-sub:hover .arr{transform:translateX(3px);}

/* Footer */
footer{background:var(--bg);border-top:1px solid rgba(152,178,157,.1);padding:2.8rem 5rem;display:flex;justify-content:space-between;align-items:center;}
.f-logo{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;letter-spacing:.16em;color:var(--c5);}
.f-logo i{color:var(--c3);}
.f-copy{font-size:.63rem;letter-spacing:.14em;color:var(--c2);text-transform:uppercase;}
.f-links{display:flex;gap:2rem;list-style:none;}
.f-links a{font-size:.63rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c2);text-decoration:none;cursor:none;transition:color .3s;}
.f-links a:hover{color:var(--c3);}

/* Reveal */
.rv{opacity:0;transform:translateY(36px);transition:opacity .8s ease,transform .85s cubic-bezier(.16,1,.3,1);}
.rv.vis{opacity:1;transform:translateY(0);}

@keyframes up{to{opacity:1;transform:translateY(0);}}
@keyframes slide{to{opacity:1;transform:translateY(0);}}

/* Respect reduced-motion preference: kill decorative motion, keep content usable */
@media (prefers-reduced-motion: reduce){
  #cur,#cur2{display:none;}
  body{cursor:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
  .rv{opacity:1;transform:none;}
}

/* ══════════════════════════════════════════════════════════
   MOBILE / TABLET — covers portrait & landscape phones+tablets
   ══════════════════════════════════════════════════════════ */
@media (hover:none), (pointer:coarse){
  body{cursor:auto;}
  #cur,#cur2{display:none;}
  a,button,.logo,.pc,.wi,.cw,.sk,.menu-toggle,.btn,.btn-sub{cursor:pointer;}
}

@media (max-width:860px){
  nav{padding:1.4rem 1.5rem;}
  nav.stuck{padding:1.1rem 1.5rem;}
  .menu-toggle{display:flex;}

  .nav-links{
    position:fixed;top:0;right:0;height:100vh;width:min(78vw,320px);
    background:rgba(39,46,48,.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
    flex-direction:column;justify-content:center;align-items:flex-start;
    gap:2.2rem;padding:6rem 2.5rem 2.5rem;
    transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);
    z-index:600;border-left:1px solid rgba(152,178,157,.15);
    overflow-y:auto;
  }
  .nav-links.open{transform:translateX(0);}
  .nav-links a{font-size:.85rem;}

  /* ── Hero ── */
  .hero{height:auto;min-height:100vh;padding:7rem 1.5rem 3rem;display:block;}
  .hero-inner{max-width:100%;}
  .h-title{font-size:clamp(2.6rem,13vw,4.2rem);}
  .h-sub{max-width:100%;}
  .hero-stats{
    position:static;transform:none;flex-direction:row;gap:2.2rem;
    margin-top:3rem;opacity:1;animation:none;
  }
  .stat{text-align:left;}
  .stat-div{margin-left:0;}
  .h-cta{flex-wrap:wrap;gap:1.4rem;}

  /* ── Capability index ── */
  .cap-row{grid-template-columns:1fr;gap:.4rem;padding:1.4rem 1.5rem;text-align:left;}
  .cap-n{order:1;}
  .cap-t{order:2;font-size:1.25rem;}
  .cap-d{order:3;max-width:100%;}

  /* ── Generic section padding ── */
  .sec{padding:4.5rem 1.5rem;}
  .sec-head{flex-direction:column;align-items:flex-start;gap:1.6rem;margin-bottom:3rem;}
  .sec-title{font-size:clamp(2.2rem,8vw,3rem);}

  /* ── Home preview grid ── */
  .pg-grid{grid-template-columns:1fr;gap:1rem;}
  .pc:nth-child(1),.pc:nth-child(2),.pc:nth-child(3),.pc:nth-child(4){grid-column:1/-1;aspect-ratio:16/11;}

  /* ── About strip ── */
  .ab{grid-template-columns:1fr;gap:3rem;padding:4rem 1.5rem;}
  .ab::before,.ab::after{display:none;}

  footer{flex-direction:column;gap:1.4rem;padding:2.4rem 1.5rem;text-align:center;}
  .f-links{flex-wrap:wrap;justify-content:center;}

  /* ── Work page ── */
  .pg-hero{padding:8rem 1.5rem 3rem;}
  .pg-title{font-size:clamp(2.6rem,12vw,4.5rem);}
  .work-grid{padding:1.5rem 1.5rem 4rem;grid-template-columns:1fr;gap:1rem;}

  /* ── Credentials page ── */
  .stats-row{grid-template-columns:1fr;}
  .sc{border-right:none;border-bottom:1px solid rgba(152,178,157,.1);padding:2.4rem 1.5rem;}
  .certs-sec{padding:3.5rem 1.5rem;}
  .certs-grid{grid-template-columns:1fr 1fr;}
  .cw{padding:1.5rem;min-height:290px;}
  .skills-sec{padding:0 1.5rem 4rem;}

  /* ── Contact page ── */
  .contact-wrap{grid-template-columns:1fr;padding-top:5.5rem;}
  .cl,.cr{padding:3.5rem 1.5rem;}
  .cl::before{display:none;}
  .fr{grid-template-columns:1fr;gap:0;}
}

@media (max-width:480px){
  .certs-grid{grid-template-columns:1fr;}
  .hero-stats{flex-direction:column;gap:1.4rem;}
  .stat-div{display:none;}
}