/*-----------------------------------*\
  ROOT VARIABLES
\*-----------------------------------*/
:root {
  /* gradients */
  --bg-gradient-onyx: linear-gradient(to bottom right,hsl(240,1%,25%) 3%,hsl(0,0%,19%) 97%);
  --bg-gradient-jet: linear-gradient(to bottom right,hsla(240,1%,18%,0.251) 0%,hsla(240,2%,11%,0) 100%),hsl(240,2%,13%);
  --bg-gradient-yellow-1: linear-gradient(135deg,hsla(45,100%,71%,0.251) 0%,hsla(35,100%,68%,0) 59.86%),hsl(240,2%,13%);
  --border-gradient-onyx: linear-gradient(to bottom right,hsl(0,0%,25%) 0%,hsla(0,0%,25%,0) 50%);
  --text-gradient-yellow: linear-gradient(to right,hsl(45,100%,72%),hsl(35,100%,68%));
  /* solids */
  --jet: hsl(0,0%,22%);
  --onyx: hsl(240,1%,17%);
  --eerie-black-1: hsl(240,2%,13%);
  --eerie-black-2: hsl(240,2%,12%);
  --smoky-black: hsl(0,0%,7%);
  --white-1: hsl(0,0%,100%);
  --white-2: hsl(0,0%,98%);
  --orange-yellow-crayola: hsl(45,100%,72%);
  --light-gray-70: hsla(0,0%,84%,0.7);
  --muted-text: hsla(0,0%,84%,0.85);
  /* typography */
  --ff-poppins:'Poppins',sans-serif;
  --fs-1:24px;--fs-2:18px;--fs-3:17px;--fs-4:16px;--fs-5:15px;--fs-6:14px;--fs-7:13px;--fs-8:11px;
  --fw-300:300;--fw-400:400;--fw-500:500;--fw-600:600;
  /* shadow */
  --shadow-1:-4px 8px 24px hsla(0,0%,0%,0.25);
  --shadow-2:0 16px 30px hsla(0,0%,0%,0.25);
  --shadow-3:0 16px 40px hsla(0,0%,0%,0.25);
  --shadow-4:0 25px 50px hsla(0,0%,0%,0.15);
  --shadow-5:0 24px 80px hsla(0,0%,0%,0.25);
  /* transition */
  --transition-1:0.25s ease;
  --transition-2:0.5s ease-in-out;
}

/*-----------------------------------*\
  RESET & GLOBALS
\*-----------------------------------*/
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
a{text-decoration:none}
li{list-style:none}
img,ion-icon,time,span{display:block}
button{font:inherit;background:none;border:none;text-align:left;cursor:pointer}
input,textarea{display:block;width:100%;background:none;font:inherit}
::selection{background:var(--orange-yellow-crayola);color:var(--smoky-black)}
:focus{outline-color:var(--orange-yellow-crayola)}
html{font-family:var(--ff-poppins)}
body{background:var(--smoky-black);color:var(--white-2);overflow-x:hidden}
img, ion-icon, time, span, a, p, li { color: inherit; }
article, .content-card, .sidebar, .info-content, .contact-info { color: var(--white-2); }
a:hover, a:focus { color: var(--orange-yellow-crayola); }

/*-----------------------------------*\
  REUSED STYLE / GENERICS
\*-----------------------------------*/
.sidebar,article{
  background:var(--eerie-black-2);
  border:1px solid var(--jet);
  border-radius:20px;
  padding:15px;
  box-shadow:var(--shadow-1);
  z-index:1;
}
.separator{width:100%;height:1px;background:var(--jet);margin:16px 0}
.icon-box{
  position:relative;background:var(--border-gradient-onyx);
  width:30px;height:30px;border-radius:8px;
  display:flex;justify-content:center;align-items:center;
  font-size:16px;color:var(--orange-yellow-crayola);
  box-shadow:var(--shadow-1);z-index:1;flex-shrink:0;
}
.icon-box::before{content:"";position:absolute;inset:1px;background:var(--eerie-black-1);border-radius:inherit;z-index:-1}
.icon-box ion-icon{--ionicon-stroke-width:35px}
article{display:none}
article.active{display:block;animation:fade .5s ease backwards}
@keyframes fade{0%{opacity:0}100%{opacity:1}}
.h2,.h3,.h4,.h5{color:var(--white-2);text-transform:capitalize}
.h2{font-size:var(--fs-1)}.h3{font-size:var(--fs-2)}.h4{font-size:var(--fs-4)}
.h5{font-size:var(--fs-7);font-weight:var(--fw-500)}
.article-title{position:relative;padding-bottom:7px}
.article-title::after{content:"";position:absolute;bottom:0;left:0;width:30px;height:3px;background:var(--text-gradient-yellow);border-radius:3px}
.has-scrollbar::-webkit-scrollbar{width:5px;height:5px}
.has-scrollbar::-webkit-scrollbar-track{background:var(--onyx);border-radius:5px}
.has-scrollbar::-webkit-scrollbar-thumb{background:var(--orange-yellow-crayola);border-radius:5px}
.has-scrollbar::-webkit-scrollbar-button{width:20px}
.content-card{
  position:relative;background:var(--border-gradient-onyx);
  padding:15px;padding-top:45px;border-radius:14px;box-shadow:var(--shadow-2);
  cursor:pointer;z-index:1;
}
.content-card::before{content:"";position:absolute;inset:1px;background:var(--bg-gradient-jet);border-radius:inherit;z-index:-1}

/*-----------------------------------*\
  MAIN & MAIN-CONTENT
\*-----------------------------------*/
main{
  margin:15px;
  margin-bottom:90px;
  padding:0;
  width:calc(100% - 30px);
}

/*-----------------------------------*\
  SIDEBAR
\*-----------------------------------*/
.sidebar {
  margin-bottom: 15px;
  max-height: none;
  overflow: visible;
  transition: var(--transition-2);
  width: 100%;
}
.sidebar.active {
  max-height: none;
}
.avatar-box {
  display: flex;
  justify-content: center;
  align-items: center;
  background: none;
  border-radius: 0;
  overflow: visible;
}
.avatar-box img {
  width: 80px;
  height: auto;
}
.info-content .title {
  word-break: break-word;
  white-space: normal;
  font-size: var(--fs-7);
}
.sidebar-info_more {
  opacity: 0;
  visibility: hidden;
  transition: var(--transition-2);
  margin-top: 20px;
  overflow: visible;
  max-height: 0;
}
.sidebar.active .sidebar-info_more {
  opacity: 1;
  visibility: visible;
  max-height: 500px;
}
.contacts-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
.contact-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.icon-box {
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg-gradient-onyx);
  border-radius: 10px;
  flex-shrink: 0;
}
.contact-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
}
.contact-title {
  color: var(--light-gray-70);
  font-size: var(--fs-8);
  text-transform: uppercase;
  margin-bottom: 2px;
}
.contact-info :is(.contact-link, time, address) {
  color: var(--white-2);
  font-size: var(--fs-7);
  word-break: break-word;
  overflow-wrap: break-word;
}
.social-list{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:12px 0;
}
.social-item .social-link{
  color:#fff;
  font-size:16px;
  transition:color .3s ease;
}
.social-item .social-link:hover{color:#F4C542}

/*-----------------------------------*\
  NAVBAR
\*-----------------------------------*/
.navbar{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  background:hsla(240,1%,17%,0.95);
  backdrop-filter:blur(10px);
  border:1px solid var(--jet);
  border-top:1px solid var(--jet);
  box-shadow:var(--shadow-2);
  z-index:5;
  padding:10px 8px;
}
.navbar-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:6px;
}
.navbar-link{
  color:var(--light-gray-70);
  font-size:12px;
  padding:8px 8px;
  font-weight:var(--fw-500);
  border-radius:6px;
  transition:color var(--transition-1);
  white-space:nowrap;
}
.navbar-link:hover,.navbar-link:focus{color:var(--white-2)}
.navbar-link.active{color:var(--orange-yellow-crayola)}
.download-cv-link{
  background-color:#F4C542;
  color:#000;
  font-weight:bold;
  padding:8px 12px;
  border-radius:6px;
  font-size:12px;
  transition:background-color .3s,color .3s;
}
.download-cv-link:hover{background-color:#e0b72f;color:#000}

.navbar-toggle {
  display: none;
  background: var(--border-gradient-onyx);
  color: var(--orange-yellow-crayola);
  width: 44px;
  height: 44px;
  border-radius: 10px;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  cursor: pointer;
  transition: background-color var(--transition-1), transform var(--transition-1);
  border: 1px solid var(--jet);
}

.navbar-toggle:hover {
  background: var(--bg-gradient-yellow-1);
  color: #000;
}

.navbar-toggle.active {
  background: var(--orange-yellow-crayola);
  color: #000;
}

@media (max-width: 1023px) {
  .navbar-toggle {
    display: flex;
  }
}

/*-----------------------------------*\
  ABOUT
\*-----------------------------------*/
.about .article-title{margin-bottom:15px}
.about-text{color:var(--muted-text);font-size:var(--fs-6);font-weight:var(--fw-300);line-height:1.6}
.about-text p{margin-bottom:15px}

/*-----------------------------------*\
  SERVICE
\*-----------------------------------*/
.service{margin-bottom:25px}
.service-title{margin-bottom:20px}
.service-list{display:grid;grid-template-columns:1fr;gap:15px}
.service-item{
  position:relative;background:var(--border-gradient-onyx);
  padding:15px;border-radius:12px;box-shadow:var(--shadow-2);z-index:1;
}
.service-item::before{content:"";position:absolute;inset:1px;background:var(--bg-gradient-jet);border-radius:inherit;z-index:-1}
.service-icon-box{margin-bottom:10px;text-align:center}
.service-icon-box img{display:block;margin:0 auto;width:35px}
.service-content-box{text-align:center}
.service-item-title{margin-bottom:7px;font-size:var(--fs-6)}
.service-item-text{color:var(--muted-text);font-size:var(--fs-7);font-weight:var(--fw-300);line-height:1.5}

/*-----------------------------------*\
  LANGUAGES & CERTIFICATES
\*-----------------------------------*/
.languages,.certificates{margin-bottom:2rem;padding:0 10px;color:var(--white-2)}
.languages-title,.certificates-title{font-size:1.2rem;margin-bottom:1.5rem;text-align:left;font-weight:var(--fw-600)}
.languages-list{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:12px;
  overflow-x:auto;
  scroll-behavior:smooth;
  padding:15px 5px;
  -webkit-overflow-scrolling:touch;
}
.languages-item{
  flex:0 0 auto;
  width:70px;
  scroll-snap-align:start;
}
.languages-item img{
  width:100%;
  filter:grayscale(1);
  transition:filter .3s ease;
}
.languages-item img:hover{filter:grayscale(0)}
.certificates-list{
  display:flex;
  gap:1.5rem;
  padding:15px 5px;
  overflow-x:auto;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
}
.certificates-item{
  flex:0 0 auto;
  width:180px;
  text-align:center;
  scroll-snap-align:start;
}
.certificates-item img{
  width:100%;
  height:auto;
  border-radius:6px;
  box-shadow:0 4px 10px rgba(0,0,0,.1);
  transition:transform .3s;
}
.certificates-item img:hover{transform:scale(1.05)}
.certificate-info,.certificate-date,.certificate-desc{color:var(--muted-text)}
.certificate-date{font-weight:bold;font-size:.85rem;margin-bottom:.25rem}
.certificate-desc{font-size:.8rem}

/*-----------------------------------*\
  PROJECTS
\*-----------------------------------*/
.filter-list{display:none}
.filter-select-box{position:relative;margin-bottom:20px}
.filter-select{
  background:var(--eerie-black-2);
  color:var(--light-gray-70);
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:100%;
  padding:12px;
  border:1px solid var(--jet);
  border-radius:12px;
  font-size:var(--fs-6);
  font-weight:var(--fw-300);
}
.filter-select.active .select-icon{transform:rotate(.5turn)}
.select-list{
  background:var(--eerie-black-2);
  position:absolute;
  top:calc(100% + 6px);
  width:100%;
  padding:6px;
  border:1px solid var(--jet);
  border-radius:12px;
  z-index:2;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:.15s ease-in-out;
}
.filter-select.active + .select-list{opacity:1;visibility:visible;pointer-events:all}
.select-item button{
  background:var(--eerie-black-2);
  color:var(--light-gray-70);
  font-size:var(--fs-6);
  font-weight:var(--fw-300);
  text-transform:capitalize;
  width:100%;
  padding:8px 10px;
  border-radius:8px;
  text-align:left;
  cursor:pointer;
}
.select-item button:hover{background-color:hsl(240,2%,20%)}
.project-list{display:grid;grid-template-columns:1fr;gap:20px;margin-bottom:10px}
.project-item{display:none}
.project-item.active{display:block;animation:scaleUp .25s ease forwards}
@keyframes scaleUp{0%{transform:scale(.95)}100%{transform:scale(1)}}
.project-item>a{display:block;width:100%}
.project-img{position:relative;width:100%;height:180px;border-radius:12px;overflow:hidden;margin-bottom:12px}
.project-img::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;z-index:1;transition:var(--transition-1)}
.project-item>a:hover .project-img::before{background:hsla(0,0%,0%,0.5)}
.project-item-icon-box{
  --scale:.8;
  background:var(--jet);
  color:var(--orange-yellow-crayola);
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) scale(var(--scale));
  font-size:20px;
  padding:16px;
  border-radius:10px;
  opacity:0;
  z-index:1;
  transition:var(--transition-1);
}
.project-item>a:hover .project-item-icon-box{--scale:1;opacity:1}
.project-img img{width:100%;height:100%;object-fit:cover;transition:var(--transition-1)}
.project-item>a:hover img{transform:scale(1.1)}
.project-title{color:var(--white-2);font-size:var(--fs-6);font-weight:var(--fw-500);text-transform:capitalize;margin:8px 10px 4px}
.project-category{color:var(--muted-text);font-size:var(--fs-7);font-weight:var(--fw-300);margin-left:10px}

/*-----------------------------------*\
  CONTACT
\*-----------------------------------*/
.mapbox{
  position:relative;
  height:220px;
  width:100%;
  border-radius:12px;
  margin-bottom:25px;
  border:1px solid var(--jet);
  overflow:hidden;
}
.mapbox figure{height:100%;margin:0}
.mapbox iframe{width:100%;height:100%;border:none;filter:grayscale(1) invert(1)}
.contact-form{margin-bottom:10px}
.form-title{margin-bottom:15px}
.input-wrapper{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:15px}
.form-input{
  background:transparent;
  color:var(--white-2);
  font-size:var(--fs-6);
  font-weight:var(--fw-400);
  padding:12px 15px;
  border:1px solid var(--jet);
  border-radius:10px;
  outline:none;
  width:100%;
}
.form-input::placeholder{font-weight:var(--fw-500);font-size:var(--fs-7)}
.form-input:focus{border-color:var(--orange-yellow-crayola)}
textarea.form-input{
  min-height:100px;
  max-height:200px;
  resize:vertical;
  margin-bottom:15px;
}
.form-btn{
  position:relative;
  width:100%;
  background:var(--border-gradient-onyx);
  color:var(--orange-yellow-crayola);
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:12px 15px;
  border-radius:10px;
  font-weight:var(--fw-500);
  cursor:pointer;
  transition:var(--transition-1);
  font-size:var(--fs-6);
}
.form-btn:hover,.form-btn:focus{background:var(--bg-gradient-yellow-1);color:#000}

/*-----------------------------------*\
  CAPTCHA
\*-----------------------------------*/
.captcha-box {
  max-width: 100%;
  margin: 20px auto;
  padding: 15px;
  background: var(--border-gradient-onyx);
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#captcha {
  border: 1px solid var(--jet);
  border-radius: 10px;
  background: transparent;
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 200px;
}
#captcha-input {
  background: transparent;
  color: var(--white-2);
  font-size: var(--fs-6);
  font-weight: var(--fw-400);
  padding: 12px 15px;
  border: 1px solid var(--jet);
  border-radius: 10px;
  outline: none;
  transition: border-color var(--transition-1);
  text-align: center;
  width: 100%;
}
#captcha-input::placeholder {
  font-size: 0.9rem;
  font-weight: var(--fw-500);
  color: var(--white-2);
  opacity: 0.7;
}
#captcha-input:focus { border-color: var(--orange-yellow-crayola); }
#refresh-captcha {
  background: var(--border-gradient-onyx);
  color: var(--orange-yellow-crayola);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 15px;
  border-radius: 10px;
  font-weight: var(--fw-500);
  cursor: pointer;
  transition: var(--transition-1);
  border: none;
  width: 100%;
  font-size: var(--fs-6);
}
#refresh-captcha:hover, #refresh-captcha:focus {
  background: var(--bg-gradient-yellow-1);
  color: #000;
}

/*-----------------------------------*\
  BLOG
\*-----------------------------------*/
.blog-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
  margin-bottom: 15px;
}
.blog-item {
  background: var(--eerie-black-2);
  border: 1px solid var(--jet);
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.2s ease;
}
.blog-item:hover { transform: translateY(-3px); }
.blog-img {
  position: relative;
  width: 100%;
  height: 130px;
  overflow: hidden;
}
.blog-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.blog-content { padding: 10px 12px; }
.blog-title {
  color: var(--white-2);
  font-size: var(--fs-7);
  font-weight: var(--fw-500);
  margin-bottom: 6px;
  line-height: 1.3;
}
.blog-excerpt {
  color: var(--muted-text);
  font-size: var(--fs-8);
  line-height: 1.3;
}

/*-----------------------------------*\
  RESPONSIVE: TABLET (580px+)
\*-----------------------------------*/
@media (min-width: 580px) {
  :root {
    --fs-1: 28px;
    --fs-2: 22px;
    --fs-3: 24px;
    --fs-4: 17px;
    --fs-5: 16px;
    --fs-6: 15px;
    --fs-7: 14px;
    --fs-8: 12px;
  }
  
  main {
    margin: 20px auto;
    width: calc(100% - 40px);
    margin-bottom: 100px;
  }
  
  .sidebar, article {
    width: 100%;
    max-width: 540px;
    margin: 0 auto 20px;
    padding: 25px;
  }
  
  .article-title {
    font-weight: var(--fw-600);
    padding-bottom: 12px;
    margin-bottom: 20px;
  }
  
  .article-title::after {
    width: 40px;
    height: 4px;
  }
  
  .sidebar-info_more {
    margin-top: 25px;
  }
  
  .contacts-list {
    gap: 15px;
  }
  
  .info-content .title {
    font-size: var(--fs-6);
  }
  
  .navbar {
    padding: 12px 10px;
  }
  
  .navbar-link {
    font-size: 13px;
    padding: 10px 10px;
  }
  
  .download-cv-link {
    font-size: 13px;
    padding: 10px 14px;
  }
  
  .service-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .service-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 20px;
  }
  
  .service-icon-box {
    margin: 0;
    flex-shrink: 0;
  }
  
  .service-content-box {
    text-align: left;
  }
  
  .languages-item {
    width: 75px;
  }
  
  .certificates-item {
    width: 200px;
  }
  
  .mapbox {
    height: 320px;
  }
  
  .input-wrapper {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .blog-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  
  .project-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
  }
}

/*-----------------------------------*\
  RESPONSIVE: TABLET LARGE (768px+)
\*-----------------------------------*/
@media (min-width: 768px) {
  :root {
    --fs-1: 32px;
    --fs-2: 24px;
  }
  
  .sidebar, article {
    max-width: 650px;
  }
  
  .filter-select-box {
    display: none;
  }
  
  .filter-list {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    padding: 0;
    margin-bottom: 25px;
  }
  
  .filter-item button {
    color: var(--light-gray-70);
    font-size: var(--fs-6);
    transition: var(--transition-1);
  }
  
  .filter-item button:hover {
    color: var(--white-2);
  }
  
  .filter-item button.active {
    color: var(--orange-yellow-crayola);
  }
  
  .input-wrapper {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  
  .form-btn {
    width: auto;
    margin-left: auto;
  }
}

/*-----------------------------------*\
  RESPONSIVE: DESKTOP (1024px+)
\*-----------------------------------*/
@media (min-width: 1024px) {
  :root {
    --shadow-1: -4px 8px 24px hsla(0, 0%, 0%, 0.125);
    --shadow-2: 0 16px 30px hsla(0, 0%, 0%, 0.125);
    --shadow-3: 0 16px 40px hsla(0, 0%, 0%, 0.125);
  }
  
  main {
    margin: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
    padding: 25px;
    max-width: 1400px;
    margin: 0 auto;
    margin-bottom: 60px;
  }
  
  .sidebar, article {
    max-width: 900px;
    width: 100%;
    box-shadow: var(--shadow-5);
    padding: 40px;
  }
  
  .main-content {
    flex: 1;
    width: 100%;
  }
  
  .navbar {
    position: static;
    width: 100%;
    background: transparent;
    border: none;
    padding: 0;
    margin-bottom: 20px;
    display: flex;
    justify-content: flex-end;
  }
  
  .navbar-list {
    justify-content: flex-end;
    gap: 25px;
    flex-wrap: nowrap;
  }
  
  .navbar-link {
    font-size: 14px;
    padding: 10px 12px;
    font-weight: var(--fw-500);
  }
  
  .download-cv-link {
    font-size: 14px;
    padding: 12px 16px;
  }
  
  .sidebar {
    position: sticky;
    top: 25px;
    height: max-content;
    width: 280px;
    margin: 0;
    flex-shrink: 0;
  }
  
  .sidebar-info_more {
    max-height: 500px;
    opacity: 1;
    visibility: visible;
  }
  
  .avatar-box img {
    width: 120px;
  }
  
  .info-content .title {
    font-size: var(--fs-6);
    padding: 5px 15px;
    text-align: center;
  }
  
  .contacts-list {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  
  .contact-item {
    gap: 15px;
  }
  
  .social-list {
    justify-content: center;
  }
  
  .service-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
  }
  
  .service-item {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .service-content-box {
    text-align: center;
  }
  
  .languages-item {
    width: 80px;
  }
  
  .certificates-item {
    width: 220px;
  }
  
  .mapbox {
    height: 380px;
  }
  
  .project-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
  
  .blog-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
  }
}

/*-----------------------------------*\
  RESPONSIVE: DESKTOP EXTRA LARGE (1250px+)
\*-----------------------------------*/
@media (min-width: 1250px) {
  body::-webkit-scrollbar {
    width: 20px;
  }
  
  body::-webkit-scrollbar-track {
    background: var(--smoky-black);
  }
  
  body::-webkit-scrollbar-thumb {
    border: 5px solid var(--smoky-black);
    background: hsla(0, 0%, 100%, 0.1);
    border-radius: 20px;
    box-shadow: inset 1px 1px 0 hsla(0, 0%, 100%, 0.11);
  }
  
  body::-webkit-scrollbar-thumb:hover {
    background: hsla(0, 0%, 100%, 0.15);
  }
  
  .sidebar, article {
    width: auto;
  }
  
  article {
    min-height: 100%;
  }
}
