/* =====================================================
   WHY CARDS — LIGHT PREMIUM SYSTEM (2026)
   Clean / Single Source / No Conflicts
===================================================== */


/* =========================
   SECTION
========================= */

.vl24-why-cards{
  position:relative;
  padding:120px 0;
  background-size:cover;
  background-position:center;
  overflow:hidden;
}

.vl24-why-cards > *{
  position:relative;
  z-index:2;
}


/* =========================
   WRAP / GRID
========================= */

.vl24-why-cards .vl24-wrap{
  max-width:1240px;
  margin:0 auto;

  display:grid;
  grid-template-columns: 420px 1fr;
  gap:72px;

  padding:0 40px;
  align-items:flex-start;

  position:relative;
  z-index:2;
}



/* ensure content stays above band */
.vl24-why-cards .vl24-wrap > *{
  position:relative;
  z-index:2;
}


/* =========================
   LEFT — GLASS CARD
========================= */

.why-left{
  position:sticky;
  top:120px;

  background:transparent;
  padding:50px 0 70px 0;

  box-shadow:none;
  border-radius:0;

  backdrop-filter:none;
}


/* =========================
   TITLE (GRADIENT)
========================= */



/* Intro text */

.why-intro{
  font-size:16px;
  line-height:1.7;

  color:#475569;
  max-width:42ch;
}


/* =========================
   RIGHT SIDE
========================= */

.why-right{
  min-width:0;
}


/* =========================
   TABS
========================= */

.why-tabs{

  display:inline-flex;

  background:rgba(255,255,255,.65);

  backdrop-filter:blur(14px) saturate(150%);
  -webkit-backdrop-filter:blur(14px) saturate(150%);

  border-radius:999px;

  padding:6px;

  box-shadow:
    0 12px 28px rgba(0,0,0,.10),
    inset 0 0 0 1px rgba(255,255,255,.6);

  margin:0 0 34px;

  gap:2px;
}



.why-tabs button{
  background:transparent;

  border:0;

  padding:11px 24px;

  border-radius:0;

  font-size:14px;
  font-weight:600;
  letter-spacing:.01em;

  color:#1e293b;

  box-shadow:none;

  transition:.25s;
}

.why-tabs button:hover{
    transform:none;
  filter:brightness(0.98);
}

.why-tabs button.active{
  background:#1a1205;
  color:#fff;

  border-radius:999px;

  box-shadow:
    0 6px 18px rgba(15,23,42,.25);
}



/* =========================
   PANELS
========================= */

.why-panels{
  position:relative;
}

.why-panel{
  display:none;
}

.why-panel.active{
  display:block;

  background: rgba(255,255,255,.32);

  backdrop-filter: blur(14px) saturate(120%);
  -webkit-backdrop-filter: blur(14px) saturate(120%);

  border-radius:26px;

  padding:26px;

  box-shadow:
    0 24px 60px rgba(0,0,0,.12);
}


@keyframes fadeUp{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:none}
}


/* =========================
   IMAGE CARD
========================= */

.why-img{
  border-radius:20px 20px 1px 1px;
  overflow:hidden;

  box-shadow:
    0 36px 90px rgba(0,0,0,.22);

  transform:translateY(-22px);
  margin:-26px -26px 0;
}

.why-img img{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover;
}


/* =========================
   TEXT CARD
========================= */

.why-text{
 
  border:0;
  border-radius:0;
  box-shadow:none;

  padding:0;
  margin-top:-14px; /* hoiab pildi ja teksti koos */

  color:#1e293b;
  line-height:1.7;
}



/* Collapsed */

.why-text.collapsed{
  max-height:12em;
  overflow:hidden;
  position:relative;
}





/* =========================
   READ MORE
========================= */

.why-readmore{

  display:inline-flex;
  align-items:center;
  gap:6px;

  font-weight:600;

  color:#7a5220;

  text-decoration:none;

  border-bottom:1px solid rgba(122,82,32,.35);

  padding-bottom:2px;

  transition:.25s;
}

.why-readmore::after{
  content:"→";
  transition:.25s;
}

.why-readmore:hover{
  color:#c9a15a;
  border-color:#c9a15a;
}

.why-readmore:hover::after{
  transform:translateX(4px);
}




/* =========================
   MOBILE
========================= */

@media(max-width:900px){

  .vl24-why-cards{
    padding:80px 0;
  }

  .vl24-why-cards .vl24-wrap{
    grid-template-columns:1fr;
    gap:46px;

    padding:0 22px;
  }

  .why-left{
    position:static;
    padding:34px 28px;
  }

  .why-left h2{
    font-size:34px;
  }

  .why-tabs{
    overflow-x:auto;
    flex-wrap:nowrap;
    padding-bottom:6px;
  }

  .why-tabs::-webkit-scrollbar{
    display:none;
  }

  .vl24-why-cards .vl24-wrap::before{
    top:-34px;
    bottom:-24px;
  }

  .why-panel.active{
    padding:18px;
  }

  .why-img{
    margin:0 0 14px;
    transform:none;
  }

  .why-text{
    padding:10px 2px 0;
  }

  /* Pilt täidab kaardi laiuse */
  .why-panel.active{
    overflow:hidden; /* et nurgad jääks */
  }

  .why-img{
    margin:
      -18px   /* top */
      -18px   /* left/right */
      14px    /* bottom */
      -18px;

    border-radius:20px 20px 1px 1px;
  }

}

/* =========================
   TABLET FIX — stop overlap
   (901px–1200px)
========================= */
@media (max-width:1200px) and (min-width:901px){

  /* anna vasakule rohkem ruumi */
  .vl24-why-cards .vl24-wrap{
    grid-template-columns: 1fr;   /* kindel: tekst ei saa enam kaduda */
    gap:28px;
  }

  .why-left{
    position:static;             /* sticky OFF tabletis */
    padding:30px 0 10px;
  }

  /* tabs jäävad kenasti vasaku teksti alla */
  .why-tabs{
    margin:10px 0 18px;
  }

  /* parempoolne kaart ei tohi "välja joosta" */
  .why-panel.active{
    overflow:hidden;             /* lõikab box-shadow/overlap'i ära */
  }

  /* nulli desktop-overlap tabletis */
  .why-img{
    transform:none !important;
    margin: -22px -22px 14px -22px !important; /* pilt täidab kaardi laiuse */
    border-radius:22px 22px 1px 1px;
  }

  .why-text{
    margin-top:0 !important;
    padding:0 2px 0;
  }
}

/* KILL GLOBAL BG BLUR */
.vl24-why-cards::before{
  display:none !important;
}

.why-text.collapsed{
  max-height:18em;
}

.vl24-why-cards{
  isolation:isolate;
}

/* 1. remove global blur */
.vl24-why-cards::before{
  display:none !important;
}

/* 2. isolate section */
.vl24-why-cards{
  isolation:isolate;
}

/* 3. more collapsed text */
.why-text.collapsed{
  max-height:18em;
}

/* 4. better readmore */
.why-readmore{
  color:#6b4a1f;
  text-decoration:none;
  border-bottom:1px solid rgba(107,74,31,.35);
  padding-bottom:1px;
  transition:.2s;
}

.why-readmore:hover{
  color:#8a5a22;
  border-color:#8a5a22;
}



@media (max-width:1200px){

  .why-left{
    position:relative !important;
    top:auto !important;
  }

}

.vl24-why-cards::after{
  content:"";
  position:absolute;
  inset:0;

  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(255,220,160,.25),
      transparent 55%
    );

  pointer-events:none;
  z-index:1;
}

.why-img img{
  transition:transform 1.6s ease;
}

.why-panel.active:hover .why-img img{
  transform:scale(1.04);
}

.why-img{
  box-shadow:
    0 40px 100px rgba(0,0,0,.25),
    0 0 40px rgba(255,200,120,.15);
}

.vl24-why-cards{
  animation:sectionFade .8s ease both;
}

@keyframes sectionFade{
  from{
    opacity:0;
    transform:translateY(30px);
  }
  to{
    opacity:1;
    transform:none;
  }
}

/* =====================================
   MOBILE + TABLET — PRO LAYOUT FIX
===================================== */

@media (max-width:1200px){

  /* GRID → SINGLE COLUMN */
  .vl24-why-cards .vl24-wrap{
    grid-template-columns: 1fr !important;
    gap:32px;
  }


  /* LEFT BLOCK NORMAL FLOW */
  .why-left{
    position:relative !important;
    top:auto !important;

    padding:20px 0 10px;
  }


  /* RIGHT BLOCK FULL WIDTH */
  .why-right{
    width:100%;
    min-width:0;
  }


  /* ---------------------------
     STICKY TABS BAR
  --------------------------- */

  .why-tabs-wrap{
    position:sticky;
    top:64px; /* header kõrgus */

    z-index:50;

    margin:0 -22px -10px;
    padding:6px 22px;

    background: transparent !important;

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    border-bottom:0 !important;
  box-shadow:none !important;
  }


  /* HORIZONTAL SCROLL TABS */

  .why-tabs{
    width:100%;

    overflow-x:auto;
    overflow-y:hidden;

    -webkit-overflow-scrolling:touch;

    scroll-snap-type:x mandatory;

    padding:6px 4px;

    gap:8px;
  }


  .why-tabs::-webkit-scrollbar{
    display:none;
  }


  .why-tabs button{
    flex:0 0 auto;

    scroll-snap-align:start;

    white-space:nowrap;

    font-size:13px;

    padding:9px 18px;
  }


  /* ACTIVE TAB STRONGER */

  .why-tabs button.active{
    box-shadow:
      0 4px 14px rgba(0,0,0,.25);
  }


  /* ---------------------------
     PANELS
  --------------------------- */

  .why-panels{
    padding-top:8px;
  }


  .why-panel.active{
    border-radius:22px;

    padding:18px;
  }


  /* IMAGE FULL WIDTH */

  .why-img{
    margin:
      -18px
      -18px
      14px
      -18px;

    border-radius:18px 18px 2px 2px;
  }


  /* TEXT */

  .why-text{
    font-size:15px;
    line-height:1.65;

    padding:6px 2px 0;
  }


  /* TITLE MOBILE */

  .why-left h2{
    font-size:clamp(28px,7vw,34px);
  }


  /* INTRO */

  .why-intro{
    max-width:100%;
  }

}


/* SHINE MOVE */

@keyframes goldShine{

  0%   { background-position:0% 0; }
  50%  { background-position:100% 0; }
  100% { background-position:0% 0; }

}


.vl24-why-cards .why-left h2{
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.vl24-why-cards{
  padding:40px 0 110px;
}

/* =====================================
   TABLET = DESKTOP LAYOUT (901px–1200px)
   Pane faili kõige lõppu
===================================== */

@media (min-width:901px) and (max-width:1200px){

  /* restore 2 column layout */
  .vl24-why-cards .vl24-wrap{
    grid-template-columns: 420px 1fr !important;
    gap:56px;
  }

  /* vasak sticky nagu desktop */
  .why-left{
    position:sticky !important;
    top:120px;
    padding:50px 0 70px 0;
  }

  /* tabs ei ole sticky mobile bar */
  .why-tabs-wrap{
    position:static !important;
    margin:0;
    padding:0;
    backdrop-filter:none;
  }

  /* parem blokk */
  .why-right{
    width:auto;
  }

}

/* =====================================
WHY CARDS — HERO EYEBROW STYLE OVERRIDE
green border + black text
===================================== */

.vl24-why-cards .vl24-eyebrow-pill{
  background:rgba(255,255,255,.65); /* hele pill */
  border:1px solid var(--brand-primary);
  backdrop-filter:blur(12px);
}

.vl24-why-cards .hero-eyebrow{
  color:#111; /* must tekst */
}

/* kui tahad rohkem kontrasti */
.vl24-why-cards .vl24-eyebrow-pill:hover{
  background:rgba(255,255,255,.85);
}

/* =====================================
WHY EYEBROW — SCROLL SPEED
===================================== */

.vl24-why-cards .vl24-eyebrow-track{
  animation-duration:12s; /* väiksem = kiirem */
}

/* =====================================
WHY CARDS — TITLE
black → brand yellow → black
===================================== */

.vl24-why-cards .why-left h2{
  font-family:"Inter",sans-serif !important;
  font-size:clamp(30px,3.2vw,46px) !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:-.02em !important;

  background:linear-gradient(
  90deg,
  #f5f4f4 0%,
  #d0cfcf 20%,
  var(--brand-primary) 50%,
  #f5f576 60%,
  var(--brand-primary) 70%,
  #000 100%
) !important;

  -webkit-background-clip:text !important;
  background-clip:text !important;

  color:transparent !important;
  -webkit-text-fill-color:transparent !important;

  text-shadow:none !important;
  animation:none !important;
}


/* =====================================
WHY CARDS — INTRO TEXT (WHY STATS STYLE)
===================================== */

.vl24-why-cards .why-intro{

  font-family:"Inter",sans-serif;
  font-size:16px;
  line-height:1.75;

  /* sama nagu why-stats header text */
  color:rgba(255,255,255,.85);
}

/* =====================================
WHY CARDS — DARK GLASS BAND (WHITE TEXT READABLE)
===================================== */

.vl24-why-cards .vl24-wrap::before{
  content:"" !important;
  position:absolute !important;

  left:50% !important;
  transform:translateX(-50%) !important;

  top:-40px !important;
  bottom:-34px !important;

  width:100vw !important;

  background: linear-gradient(
  to bottom,
  rgba(0,0,0,.45) 0%,   /* ⭐ ülevalt palju heledam (oli .82) */
  rgba(0,0,0,.55) 30%,  /* smooth üleminek */
  rgba(0,0,0,.68) 60%,  /* tume kestab kauem */
  rgba(0,0,0,.45) 80%,
  rgba(0,0,0,.18) 95%,
  rgba(0,0,0,0) 100%
) !important;

  backdrop-filter: blur(14px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(120%) !important;

  /* keep your fade mask */
  mask-image: linear-gradient(
    to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 42%,
    rgba(0,0,0,.75) 60%,
    rgba(0,0,0,.35) 74%,
    rgba(0,0,0,0) 90%,
    rgba(0,0,0,0) 100%
  ) !important;

  -webkit-mask-image: linear-gradient(
    to bottom,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 42%,
    rgba(0,0,0,.75) 60%,
    rgba(0,0,0,.35) 74%,
    rgba(0,0,0,0) 90%,
    rgba(0,0,0,0) 100%
  ) !important;

  pointer-events:none !important;
  z-index:0 !important;
}

/* =================================
WHY CARDS TITLE — SAME AS SERVICES
================================= */

.vl24-why-cards .why-left h2{

  /* ⭐ IDENTNE SERVICES TITLE */
  font-family:"Outfit",sans-serif !important;
  font-weight:600 !important;

  font-size:clamp(36px,4vw,56px) !important;
  line-height:1.1 !important;

  letter-spacing:-0.02em !important;
  margin:0 0 16px !important;

  /* ⭐ sama gradient */
  background:linear-gradient(
    90deg,
    #f9f7f7 0%,
    #bab9b9 10%,
    #58752d 25%,
    var(--brand-primary) 50%,
    #5b7b2c 70%,
    #edebeb 90%
  ) !important;

  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;

  text-shadow:none !important;
  animation:none !important;
}

/* =====================================
WHY TABS — VISUALLY ON IMAGE TOP
(works with current HTML structure)
===================================== */

/* tabs jäävad õigesse kohta */
.why-tabs-wrap{
  position:relative;
  z-index:20;
}

/* liigutame visuaalselt pildi peale */
.why-tabs{
  margin-bottom:-50px;   /* ⭐ tõmbab pildi peale */
  transform:translateY(25px);

  /* sama nurga kumerus kui kaardil */
  border-radius:20px 20px 0 0;

  background:rgba(255,255,255,.9);
  backdrop-filter:blur(16px);
}

/* et pilt ei läheks tabsiga konflikti */
.why-panel.active{
  padding-top:60px;
}

/* =====================================
WHY TABS — BRAND GREEN BACKGROUND
===================================== */

.why-tabs{

  /* ⭐ sinu keskkonna roheline */
  background:var(--brand-primary) !important;

  /* glass premium feel */
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);

  border-radius:20px 20px 0 0;

  box-shadow:
    0 20px 40px rgba(0,0,0,.25),
    inset 0 1px rgba(255,255,255,.25);
}

/* tab tekst */
.why-tabs button{
  color:#111 !important; /* must tekst rohelisel */
}

/* aktiivne tab */
.why-tabs button.active{
  background:#1a1205 !important;
  color:#fff !important;
}



/* =================================
WHY PANEL — FULL DARK CARD
removes glass completely
================================= */

.vl24-why-cards .why-panel.active{

  /* ❌ eemaldab klaasi */
  background:#1c1c1c !important;

  /* eemaldab blur */
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;

  /* jätab premium depth */
  box-shadow:
    0 40px 100px rgba(0,0,0,.55);

  border-radius:26px;
}

.vl24-why-cards .why-text{
  color:#fff;
}

/* =================================
WHY READMORE — BRAND GREEN
================================= */

.vl24-why-cards .why-readmore{
  color:var(--brand-primary) !important;

  border-bottom:1px solid rgba(212,225,87,.45) !important;
}


/* hover — tugevam roheline */

.vl24-why-cards .why-readmore:hover{
  color:#e6f27a !important;
  border-color:#e6f27a !important;
}

