
/* ==========================
   FONTS
========================== */

@font-face {
    font-family: 'cooper-hewitt';
    src: url(../webfonts/CooperHewitt-Bold.otf);
    font-weight: 700;
    font-display: swap;
  }
  
  @font-face {
    font-family: 'cooper-hewitt';
    src: url(../webfonts/CooperHewitt-Light.otf);
    font-weight: 200;
    font-display: swap;
  }
  
  @font-face {
    font-family: 'cooper-hewitt';
    src: url(../webfonts/CooperHewitt-Book.otf);
    font-weight: 400;
    font-display: swap;
  }
  /* ==========================
   BASE
  ========================== */
  
  html, body {
    height: 100%;
    max-width: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
    font-family: 'cooper-hewitt', sans-serif;
    background-color: rgb(246, 246, 246);
    color: #000000;
    font-size: 1.2em;
    
  }
  
  
  
  main {
    flex: 1;
    width: 100%;
    margin: auto;
  }
  
  
  
  /* ==========================
     SAFE OVERFLOW FIX
     (არ ეხება შენს დიზაინს)
  ========================== */
  
  /* box sizing — layout არ დაიწევს */
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  
  /* სურათები აღარ გადაცდება */
  img {
    max-width: 100%;
    height: auto;
    display: block;
  }
  
  /* ჰორიზონტალური scroll FIX — არაფერს ჭრის */
  html {
    overflow-x: hidden;
  }
  
  /* body არ ვეხებით შენს ფონს */
  body {
    max-width: 100vw;
  }
  
  /* grid overflow fix */
  .works-grid {
    overflow: hidden;
  }
  
  /* hover scale აღარ დაწევს გვერდს */
  .work-item {
    overflow: hidden;
  }
  
  /* header push fix */
  .white-header,
  .header-inner {
    max-width: 100%;
  }
  
  /* category object push fix */
  .category-grid {
    overflow: hidden;
  }
  
  
  
  /* ==========================
   HEADER — FINAL CLEAN VERSION
  ========================== */
  
  .white-header {
    width: 100%;
    background-color: rgb(255, 255, 255);
    padding: 24px 0; /* გვერდებზე padding აღარ გვინდა */
    display: flex;
    align-items: center;
    justify-content: center; /* ცენტრში მოტანა */
  }
  
  /* შიგნით ვქმნით კონტეინერს */
  .header-inner {
    width: 90%;
    max-width: 1400px; /* ✅ აღარ გაწელავს ეკრანის კიდემდე */
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  
  .logo-block {
    display: flex;
    align-items: center;
    gap: 18px;
  }
  
  /* LOGO SIZE */
  .IMD_logo img {
    height: 100px;
    width: auto;
    display: block;
  }
  
  /* NAME + ROLE (STACKED) */
  .logo-text {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    text-transform: uppercase;
  }
  
  .logo-text .name {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.20em;
    color: #000000;
  }
  
  .logo-text .role {
    font-size: 12px;
    font-weight: 300;
    letter-spacing: 0.18em;
    color: #000000;
    margin-top: 4px;
  }
  
  /* NAVIGATION */
  .navbar {
    display: flex;
    align-items: center;
    gap: 28px;
  }
  
  .encadre-nav {
    padding: 6px 12px;
    border: 1px solid transparent;
    transition: 0.3s ease;
    letter-spacing: 4px;
  }
  
  .encadre-nav:hover {
    border-color: #000000;
    background: none;
  }
  
  .encadre-nav a {
    text-decoration: none;
    color: #000000;
    font-size: 0.9rem;
  }
  
  
  
  
  /* ================= BACK BUTTON FIX ================= */
  
  .nav-button {
    display: inline-flex;
    align-items: center;
    gap: 12px;
  
    /* პოზიცია */
    margin-left: 70px;     /* მარცხნიდან დაშორება */
    margin-top: 18px;      /* ქვემოთ ჩამოწევა */
  
    text-decoration: none;
    color: #000;
    font-size: 18px;
    letter-spacing: 0.08em;   /* ასოებს შორის დაშორება */
  }
  
  .icon-arrow {
    width: 20px;
    height: auto;
    display: block;
  }
  
  .nav-button:hover .icon-arrow {
    transform: translateX(-4px);
    transition: 0.2s;
  }
  
  
  
  /* ==========================
   WORKS INTRO
  ========================== */
  .works {
    padding-top: 120px;
  }
  
  .works-intro {
    text-align: center;
    margin-bottom: 60px;
  }
  
  .works-intro h1 {
    font-size: 72px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #000;
  }
  
  .works-intro p {
    margin-top: 16px;
    font-size: 18px;
    color: rgba(0,0,0,0.6);
  }
  
  /* ==========================
     WORKS FILTERS LINKS
  ========================== */
  .works-filters {
    display: flex;
    justify-content: center;
    gap: 32px;
    list-style: none;
    margin-bottom: 80px;
    padding: 0;
  }
  
  .works-filters li a {
    text-decoration: none;
    color: #000;
    font-size: 18px;
    letter-spacing: 0.15em;
    cursor: pointer;
    display: inline-block;
    transition: color 0.3s ease, opacity 0.3s ease; /* ნაზი გადასვლა */
  }
  
  /* hover — მხოლოდ ფერის შეცვლა */
  .works-filters li a:hover {
    color: #767575 !important;
    opacity: 0.7;
  }
  
  /* active — იგივე ფერი */
  .works-filters li a.active {
    color: #767575 !important;
  }
  
  /* remove transform completely */
  .works-filters li a:hover,
  .works-filters li a.active {
    transform: none !important;
  }
  
  
  
  /* ==========================
   GRID
  ========================== */
  .works-grid {
    width: 90%;
    overflow-x: clip;  
    max-width: 1400px;
    margin: 0 auto 120px;
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 🔥 ზუსტად 3 column */
    gap: 40px;
    margin-top: 100px;
  }
  
  
  /* ==========================
   PROJECT ITEM
  ========================== */
  .work-item {
    text-decoration: none;
    overflow: hidden;
    color: #000;
  }
  
  .work-item img {
    width: 100%;
    aspect-ratio: 4 / 3;   /* 800x600 პროპორცია */
    object-fit: cover;
    filter: grayscale(100%) brightness(0.95);
    transition: transform 0.6s ease, filter 0.6s ease;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2); /* x-offset, y-offset, blur, opacity */
      border-radius: 4px; /* თუ გინდა კიდეები რბილი */
  
  }
  
  
  /* ==========================
   PROJECT TEXT
  ========================== */
  .work-info {
    margin-top: 16px;
  }
  
  .work-info h3 {
    font-size: 22px;
    font-weight: 400;
    color: #000;
  }
  
  .work-info span {
    display: block;
    margin-top: 6px;
    font-size: 20px;
    color: rgba(0,0,0,0.55);
  }
  
  
  
  
  /* ==========================
   HOVER EFFECTS
  ========================== */
  .work-item:hover img {
    transform: scale(1.05);
    filter: grayscale(0%) brightness(1);
  }
  
  
  
  /* მხოლოდ media ელემენტები */
  .video-section video,
  .video-section img {
    transition: transform 0.35s ease;
  }
  
  /* hover effect */
  .video-section figure:hover video,
  .video-section figure:hover img {
    transform: scale(1.06);
  }
  
  
  /* მხოლოდ grid მოძრაობს */
  .works-grid {
    opacity: 0;
    transform: translateY(80px);
    transition: opacity 1s ease, transform 1s ease;
  }
  
  .works-grid.visible {
    opacity: 1;
    transform: translateY(0);
  }
  
  
  /* ==========================
   CATEGORY GRID SECTION
  ========================== */
  
  
  .category-row {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin-bottom: 40px;
    position: relative;
    flex-wrap: wrap;
  }
  
  
  .category-item a {
    font-family: 'cooper-hewitt', sans-serif;
    font-weight: 400;
    letter-spacing: 1px;
    color: #767575;
    font-size: 58px;
    text-decoration: none;
    position: relative;
    display: inline-block;
    transition: opacity 0.3s ease;
  }
  
  .category-item a .number {
    display: block;
    font-size: 16px;
    font-weight: 400;
    opacity: 0.6;
    margin-bottom: 6px;
    transition: opacity 0.3s ease;
  }
  
  /* HOVER EFFECT */
  .category-item a:hover {
    opacity: 0.6;
  }
  
  .category-item a:hover .number {
    opacity: 1;
  }
  
  
  
  
  .category-object {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: auto;
  }
  
  .category-object img {
    width: 100%;
    height: auto;
    opacity: 0.8;
  }
  
  
  .social-links {
    background-color: rgb(0, 0, 0);
    padding: 60px 20px;
    text-align: center;
  }
  
  .social-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
  }
  
  .social-links li a {
    font-family: 'cooper-hewitt', sans-serif;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 2px;
    color: #a3a3a3;
    text-decoration: none;
    transition: opacity 0.3s ease;
  }
  
  .social-links li a:hover {
    opacity: 0.6;
  }
  
  
  .category-grid {
    position: relative;
  }
  
  
  .about-section {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1s ease, transform 1s ease;
  }
  
  .about-section.visible {
    opacity: 1;
    transform: translateY(0);
  }
  
  
  
  
  
  
  /* ================= VIDEO SECTION ================= */
  
  .video-section {
    width: 100%;
    max-width: 1300px;
    margin: 60px auto;
    padding: 0 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 68px;
  }
  
  /* თითო video card */
  .video-section figure {
    display: flex;
    flex-direction: column;   /* ⬅ ვიდეო ზემოთ, ტექსტი ქვემოთ */
    margin: 0;
    border-radius: 4px;
    overflow: hidden;
  
  }
  
  /* video */
  .video-section video {
    width: 100%;
    height: auto;             /* აღარ გაიწელოს */
    display: block;
    object-fit: cover;
    border-radius: 4px;
    transition: transform 0.35s ease;
  }
  
  /* hover zoom */
  .video-section figure:hover video {
    transform: scale(1.06);
  }
  
  /* TEXT — ქვემოთ */
  .video-section .work-info {
    position: static;         /* ❌ აღარ იყოს absolute */
    margin-top: 14px;
    color: #000000;              /* შავი ტექსტი */
    text-align: left;
  }
  
  /* title */
  .video-section .work-info h3 {
    margin: 0;
    font-size: 22px;
    font-weight: 400;
  }
  
  /* subtitle */
  .video-section .work-info span {
    font-size:20px;
  
  }
  
  
  
  /* ================= MOBILE ================= */
  
  @media (max-width: 768px) {
  
    .video-section {
      grid-template-columns: 1fr;
      gap: 20px;
    }
  
    .video-section .work-info {
      bottom: 14px;
      left: 14px;
    }
  
    .video-section .work-info h3 {
      font-size: 16px;
    }
  
    .video-section .work-info span {
      font-size: 12px;
    }
  }
  
  /* ==========================
   RESPONSIVE
  ========================== */
  @media (max-width: 768px) {
    .works-intro h1 {
        font-size: 48px;
    }
  
    .work-item img {
        height: 300px;
    }
  }
  
  /* DESKTOP — hamburger menu დამალული */
  @media (min-width: 769px) {
    .mobile-menu-toggle {
      display: none !important;
    }
  
    .navbar {
      display: flex !important;
    }
  }
  
  /* MOBILE — navbar დამალული, hamburger menu გამოჩნდეს */
  @media (max-width: 768px) {
    .mobile-menu-toggle {
      display: block !important;
      font-size: 38px;
      cursor: pointer;
      padding: 10px 20px;
      z-index: 9999;
    }
  
    .navbar {
      display: none;
      flex-direction: column;
      gap: 0px;
      background: #fff;
      padding: 0px;
      position: absolute;
      top: 120px;
      right: 0;
      width: 100%;
      border-top: 1px solid rgba(0,0,0,0.1);
    }
  }
  
  .mobile-menu-toggle {
    transition: transform 0.25s ease, opacity 0.25s ease;
  }
  
  .mobile-menu-toggle:hover {
    transform: scale(1.15);
    opacity: 0.7;
  }
  
  @media (max-width: 768px) {
  
    .works-filters {
      display: flex;
      justify-content: flex-start;   /* ცენტრი არა */
      gap: 24px;
      overflow-x: auto;              /* ← ჰორიზონტალური scroll */
      overflow-y: hidden;
      white-space: nowrap;           /* ერთ ხაზზე დარჩეს */
      padding: 0 20px 10px;
      margin-bottom: 40px;
  
      -webkit-overflow-scrolling: touch; /* smooth iOS */
      scrollbar-width: none;              /* Firefox */
    }
  
    /* Chrome / Safari scrollbar hide */
    .works-filters::-webkit-scrollbar {
      display: none;
    }
  
    .works-filters li {
      flex: 0 0 auto;   /* არ შეიკუმშოს */
    }
  
    .works-filters li a {
      font-size: 16px;
      letter-spacing: 0.12em;
    }
  }
  
  @media (max-width: 768px) {
    .works-filters {
      mask-image: linear-gradient(to right, black 85%, transparent);
    }
  }
  
  
  /* ==========================
    MOBILE RESPONSIVE
  ========================== */
  @media (max-width: 768px) {
  
    /* ==========================
       WORKS INTRO
    ========================= */
    .works {
      padding-top: 60px; /* ცოტა უფრო კომპაქტური */
    }
  
    .works-intro {
      text-align: center;
      margin-bottom: 40px;
    }
  
    .works-intro h1 {
      font-size: 36px;        /* დიდი, მაგრამ არ გაიფილოს */
      letter-spacing: 0.05em;
      line-height: 1.2;
    }
  
    .works-intro p {
      font-size: 16px;
      margin-top: 12px;
      line-height: 1.4;
    }
  
  
  
    /* ==========================
     GRID / WORK ITEMS — MOBILE
  ========================== */
  .works-grid {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 90%;
    max-width: 95%;
    margin: 0 auto 60px;
    opacity: 1;
    transform: translateY(0);
  }
  
  .work-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;   /* 🔥 ცენტრის ნაცვლად მარცხენა */
    text-align: left;          /* 🔥 ტექსტი მარცხნიდან */
    gap: 4px;
  }
  
  .work-item img {
    width: 100%;
    height: auto;
    max-height: 400px;
    object-fit: cover;
    border-radius: 4px;
    box-shadow: 0 6px 16px rgba(0,0,0,0.15);
  }
  
  .work-info {
    max-width: 90%;
    margin-top: 1px;
    text-align: left;          /* 🔥 ტექსტი მარცხნიდან */
  }
  
  .work-info h3 {
    font-size: 18px;
    margin-top: 8px;
    line-height: 1.2;
  }
  
  .work-info span {
    font-size: 16px;
    margin-top: 1px;
    color: rgba(0,0,0,0.6);
  
  }
  
  
    /* ==========================
       SOCIAL LINKS / FOOTER
    ========================= */
    .social-links {
      padding: 30px 10px;
    }
  
    .social-links ul {
      gap: 12px;
    }
  
    .social-links li a {
      font-size: 14px;
      letter-spacing: 1.5px;
    }
  
  }
  
  /* ================= BACK BUTTON — MOBILE ================= */
  @media (max-width: 768px) {
    .nav-button {
      display: inline-flex;
      align-items: center;
      gap: 12px;
  
      /* მობილურზე განსხვავებული პოზიცია */
      margin-left: 20px;  /* მარცხნიდან დაშორება */
      margin-top: 14px;   /* ქვემოთ ჩამოწევა */
  
      text-decoration: none;
      color: #000;
      font-size: 16px;        /* ცოტა პატარა მობილურზე */
      letter-spacing: 0.08em; /* ასოებს შორის დაშორება */
    }
  
    .icon-arrow {
      width: 18px;   /* პატარა მობილურზე */
      height: auto;
      display: block;
    }
  
    .nav-button:hover .icon-arrow {
      transform: translateX(-4px);
      transition: 0.2s;
    }
  }
  /* Mobile responsive */
  @media (max-width: 768px) {
  
    .espace {
      margin: 0px;
    }
  
    .nav-button {
      font-size: 16px;
    }
  
    .icon-arrow {
      width: 16px;
    }
  
  }
  
  .works-filters {
    display: flex;
    max-width: 100%;
    overflow-x: auto;
    flex-wrap: wrap;
    gap: 24px;
    margin-bottom: 40px;
    padding: 0;
    list-style: none;
  }
  
  .works-filters li {
    position: relative;
  }
  
  .works-filters a {
    text-decoration: none;
    color: #000;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  
  /* ACTIVE FILTER */
  .works-filters li.active a {
    font-weight: 600;
  }
  
  
  /* ==========================
    MOBILE RESPONSIVE — WORKS FILTERS & NAVBAR
  ========================== */
  @media (max-width: 768px) {
  
    /* ==========================
       NAVBAR LINKS
    ========================= */
    .navbar a {
      font-size: 18px;           /* უფრო დიდი ტექსტი */
      letter-spacing: 0.08em;
      padding: 6px 8px;
    }
  
    .navbar a::after {
      display: none;             /* ჰოვერის ქვემოთ ნაზი effect-ი */
    }
  
  }
  /* ==========================
     MOBILE — HORIZONTAL SCROLL FILTERS
  ========================== */
  @media (max-width: 768px) {
  
    .works-filters {
      display: flex;
      flex-wrap: nowrap;              /* აღარ გადავა ქვემოთ */
      overflow-x: auto;               /* ჰორიზონტალური scroll */
      overflow-y: hidden;
      gap: 18px;
      padding: 0 16px 12px;
      margin-bottom: 30px;
      white-space: nowrap;
      -webkit-overflow-scrolling: touch; /* smooth iPhone scroll */
  
      /* right fade (როგორც გინდოდა) */
      mask-image: linear-gradient(to right, black 85%, transparent);
    }
  
    .works-filters::-webkit-scrollbar {
      display: none;                  /* scrollbar დამალვა */
    }
  
    .works-filters li {
      flex: 0 0 auto;                 /* ელემენტები არ დაპატარავდეს */
    }
  
    .works-filters a {
      font-size: 17px;                /* ცოტა დიდი ტექსტი */
      letter-spacing: 0.06em;
      padding-bottom: 2px;
    }
  
  }
  
  
  .social-links {
    background-color: rgb(0, 0, 0);
    padding: 60px 20px;
    text-align: center;
  }
  
  .social-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
  }
  
  .social-links li a {
    font-family: 'cooper-hewitt', sans-serif;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 2px;
    color: #a3a3a3;
    text-decoration: none;
    transition: opacity 0.3s ease;
  }
  
  .social-links li a:hover {
    opacity: 0.6;
  }
  
  
  .category-grid {
    position: relative;
  }
  
  
  .about-section {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1s ease, transform 1s ease;
  }
  
  .about-section.visible {
    opacity: 1;
    transform: translateY(0);
  }
  
  
  
  
  /* ==========================
     FOOTER
  ========================== */
  footer {
    background-color: rgb(0, 0, 0);
    width: 100%;
    padding: 60px 20px;   /* სიმაღლე padding-ით, არა height-ით */
    margin-top: 4em;
    text-align: center;
  }
  
  footer p {
    margin: 0;            /* ზედმეტი სივრცე აღარ იქნება */
    letter-spacing: 1px;
    font-weight: 200;
    font-size: 0.9rem;
    color: #fff;
    opacity: 0.7;         /* უფრო light ეფექტი */
  }
  
  
  .video-item{
    position:relative;
    }
    
    .video-item video{
    width:100%;
    display:block;
    }
    
    .play-btn{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    font-size:32px;
    background:rgba(0,0,0,0.6);
    color:white;
    border:none;
    border-radius:50%;
    width:70px;
    height:70px;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:opacity 0.3s;
    }
    
    /* როცა ვიდეო თამაშობს icon დაიმალოს */
    .video-item.playing .play-btn{
    opacity:0;
    }
    
    /* hover-ზე ისევ გამოჩნდეს */
    .video-item.playing:hover .play-btn{
    opacity:1;
    }
  
  
  
    /* ================= FOOTER — MOBILE ================= */
@media (max-width: 768px) {

  footer {
    padding: 20px 10px;   /* ქვემოთ + გვერდებზე ნაკლები padding */
  }

  footer p {
    font-size: 16px;      /* პატარა ტექსტი */
    opacity: 0.7;         /* ცოტა მკაფიო */
  }

  /* SOCIAL LINKS */
  .social-links ul {
    flex-direction: column;   /* სია ქვემოთ გრძელდება */
    gap: 12px;                /* spacing აქ */
  }

  .social-links li a {
    font-size: 18px;          /* ტექსტი პატარა */
    letter-spacing: 1px;
  }
}

