/* IDEKAS lehe stiilid. Laetakse peale StarHubi teema CSS-i, seega kirjutab selle üle. */

:root{
  --idekas-yellow:#f6b419;
  --idekas-dark:#212121;
}
body{font-family:'Manrope',sans-serif;color:var(--idekas-dark);}
/* Ainult lehe sisu – navigatsioon ja jalus jäävad StarHubi teema tüpograafiasse. */
.content-wrapper h1,.content-wrapper h2,.content-wrapper h3,.content-wrapper h4,.content-wrapper h5,.content-wrapper h6,
.content-wrapper .display-1,.content-wrapper .display-2,.content-wrapper .display-3,.content-wrapper .display-4{
  font-family:'Montserrat',sans-serif;font-weight:700;}

/* --- Hero --- */
.ide-hero{
  background-image:url('../idekas-desktop.webp');
  background-size:cover;background-position:center;position:relative;
  min-height:88vh;display:flex;align-items:stretch;
}
.ide-hero::after{content:"";position:absolute;inset:0;
  background:linear-gradient(270deg,rgba(20,27,45,.05) 0%,rgba(20,27,45,.15) 45%,rgba(20,27,45,.78) 100%);}
/* Kogu hero sisu (silt, pealkiri, tekst, nupud) püstsuunas keskel. */
.ide-hero .container{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;
  justify-content:center;padding-top:48px;padding-bottom:48px;}
.ide-hero h1{color:#fff;font-size:clamp(41.6px,7vw,80px);font-weight:800;letter-spacing:-.5px;text-shadow:0 2px 30px rgba(0,0,0,.35);margin-bottom:9.6px;}
.ide-hero .lead{color:#fff;font-size:clamp(16.8px,2.2vw,24px);max-width:640px;text-shadow:0 2px 20px rgba(0,0,0,.4);}
/* Lauaarvutis täidab hero ekraani põhjani: aken miinus navigatsiooniriba (95px). */
@media(min-width:992px){
  .ide-hero{min-height:calc(100vh - 95px);}
}
/* Mobiilis püstine pilt, keskjoondatud tekst ja nupud ekraani alaservas.
   Navigatsiooniriba on mobiilis 65px. */
@media(max-width:991.98px){
  .ide-hero{
    background-image:url('../idekas-mobile.webp');
    min-height:calc(100vh - 65px);
    min-height:calc(100svh - 65px);
    text-align:center;
  }
  .ide-hero::after{
    background:linear-gradient(180deg,rgba(20,27,45,0) 0%,rgba(20,27,45,.18) 35%,rgba(20,27,45,.68) 70%,rgba(20,27,45,.9) 100%);
  }
  /* Mobiilis: silt üleval, pealkiri ja tekst kohe nuppude kohal.
     Vaba ruum koguneb pealkirja kohale (margin-top:auto). */
  .ide-hero .container{align-items:center;justify-content:flex-start;padding-top:64px;padding-bottom:72px;}
  .ide-hero .ide-badge{margin-top:0;}
  .ide-hero h1{margin-top:auto;}
  .ide-hero .lead{margin-left:auto;margin-right:auto;}
  .ide-hero .container .d-flex{justify-content:center;margin-top:0;}
}
.ide-badge{display:inline-block;background:var(--idekas-yellow);color:#141b2d;font-weight:700;
  font-family:'Montserrat',sans-serif;letter-spacing:1px;text-transform:uppercase;font-size:12.48px;
  padding:6.4px 16px;border-radius:800px;margin-bottom:17.6px;}

/* --- Buttons --- */
.btn-idekas{background:var(--idekas-yellow);border:none;color:#141b2d;font-weight:700;
  padding:13.6px 32px;border-radius:800px;box-shadow:0 8px 24px rgba(246,180,25,.35);transition:.2s;}
.btn-idekas:hover{background:#e5a50c;color:#141b2d;transform:translateY(-2px);box-shadow:0 12px 28px rgba(246,180,25,.45);}
.btn-idekas-ghost{background:transparent;border:2px solid #fff;color:#fff;font-weight:700;
  padding:12px 28.8px;border-radius:800px;transition:.2s;}
.btn-idekas-ghost:hover{background:#fff;color:#141b2d;}
.btn-idekas-outline{background:transparent;border:2px solid var(--idekas-yellow);color:#141b2d;font-weight:700;
  padding:12px 28.8px;border-radius:800px;transition:.2s;}
.btn-idekas-outline:hover{background:var(--idekas-yellow);color:#141b2d;}

/* --- Sections --- */
.section{padding:88px 0;}
.eyebrow{color:var(--idekas-yellow);font-family:'Montserrat',sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:2px;font-size:13.12px;margin-bottom:11.2px;}
.section h2{font-size:clamp(28.8px,4vw,41.6px);margin-bottom:16px;}
.lead-text{font-size:17.28px;line-height:1.85;color:#4b5563;}
.prize-box{background:linear-gradient(135deg,#fff8e6,#fff);border:1px solid #ffe9b0;border-radius:20px;
  padding:32px;box-shadow:0 12px 40px rgba(246,180,25,.12);}
.prize-amount{font-family:'Montserrat',sans-serif;font-weight:800;font-size:38.4px;color:#141b2d;line-height:1;}

/* --- Timeline cards --- */
.tl-card{background:#fff;border:1px solid #eef0f4;border-radius:17.6px;padding:25.6px;height:100%;
  transition:.25s;box-shadow:0 6px 20px rgba(30,34,40,.04);}
.tl-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(30,34,40,.09);border-color:#ffe3a1;}
.tl-emoji{font-size:27.2px;margin-bottom:9.6px;display:block;}
.tl-date{color:var(--idekas-yellow);font-weight:800;font-family:'Montserrat',sans-serif;font-size:16.8px;}

/* --- Timeline (mobiil = vertikaalne, desktop = horisontaalne) --- */
.ide-timeline{position:relative;list-style:none;margin:0;padding:0;}
.ide-timeline .tl-item{position:relative;padding:0 0 32px 68px;}
.ide-timeline .tl-item:last-child{padding-bottom:0;}
.ide-timeline::before{content:"";position:absolute;left:23px;top:10px;bottom:10px;width:3px;background:#ffe3a1;border-radius:2px;}
.tl-node{position:absolute;left:0;top:0;width:48px;height:48px;border-radius:50%;background:#fff;
  border:3px solid var(--idekas-yellow);display:flex;align-items:center;justify-content:center;
  font-size:21.6px;box-shadow:0 6px 16px rgba(246,180,25,.28);z-index:2;}
.tl-content{background:#fff;border:1px solid #eef0f4;border-radius:16px;padding:19.2px 21.6px;
  box-shadow:0 6px 20px rgba(30,34,40,.05);transition:.25s;}
.tl-content:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(30,34,40,.09);border-color:#ffe3a1;}
.tl-content .tl-date{color:#e0a20c;font-size:16px;margin-bottom:5.6px;}
.tl-content p{margin:0;color:#4b5563;font-size:15.2px;line-height:1.6;}
@media(min-width:992px){
  .ide-timeline{display:flex;padding-top:80px;}
  .ide-timeline::before{left:8.33%;right:8.33%;top:48px;bottom:auto;width:auto;height:3px;}
  .ide-timeline .tl-item{flex:1 1 0;padding:0 8.8px;text-align:left;}
  .tl-node{left:50%;top:-56px;transform:translateX(-50%);}
  .tl-content{min-height:172px;}
}

/* --- Galerii + lightbox --- */
.ide-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
@media(max-width:991px){.ide-gallery{grid-template-columns:repeat(3,1fr);}}
@media(max-width:575px){.ide-gallery{grid-template-columns:repeat(2,1fr);gap:10px;}}
.gal-thumb{padding:0;border:none;background:#eef0f4;cursor:pointer;border-radius:11.2px;overflow:hidden;
  aspect-ratio:4/3;box-shadow:0 6px 18px rgba(30,34,40,.08);position:relative;}
.gal-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.gal-thumb:hover img{transform:scale(1.07);}
.gal-thumb::after{content:"";position:absolute;inset:0;background:rgba(20,27,45,0);transition:.25s;}
.gal-thumb:hover::after{background:rgba(20,27,45,.12);}
.lightbox{position:fixed;inset:0;background:rgba(15,18,28,.94);z-index:1080;display:none;
  align-items:center;justify-content:center;}
.lightbox.open{display:flex;}
.lb-img{max-width:88vw;max-height:82vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.lb-close{position:absolute;top:16px;right:24px;background:none;border:none;color:#fff;font-size:41.6px;
  line-height:1;cursor:pointer;opacity:.85;}
.lb-close:hover{opacity:1;}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:none;
  color:#fff;font-size:32px;width:56px;height:56px;border-radius:50%;cursor:pointer;transition:.2s;display:flex;
  align-items:center;justify-content:center;}
.lb-nav:hover{background:var(--idekas-yellow);color:#141b2d;}
.lb-prev{left:24px;} .lb-next{right:24px;}
.lb-counter{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#fff;font-size:14.72px;
  opacity:.85;font-family:'Montserrat',sans-serif;}
@media(max-width:575px){.lb-nav{width:42px;height:42px;font-size:24px;}.lb-prev{left:8px;}.lb-next{right:8px;}.lb-img{max-width:94vw;}}

/* --- Testimonials --- */
.quote-card{background:#fff;border-radius:20px;padding:32px;height:100%;border:1px solid #eef0f4;
  box-shadow:0 10px 34px rgba(30,34,40,.06);position:relative;
  display:flex;flex-direction:column;}
.quote-card .qmark{color:var(--idekas-yellow);font-family:Georgia,serif;font-size:54.4px;line-height:.6;
  display:block;height:22.4px;}
.quote-card p{color:#3b4453;font-size:16.32px;line-height:1.7;}
/* Autor kaardi alaserva, et lühema tsitaadi puhul ei jääks alla tühja ruumi. */
.quote-person{display:flex;align-items:center;gap:13.6px;margin-top:auto;padding-top:19.2px;}
.quote-avatar{flex:0 0 auto;width:100px;height:100px;border-radius:50%;background:var(--idekas-yellow);color:#141b2d;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:28px;
  font-family:'Montserrat',sans-serif;}
img.quote-avatar{display:block;object-fit:cover;}

/* --- Jury --- */
.jury-card{text-align:center;}
.jury-photo{width:220px;height:220px;max-width:100%;border-radius:50%;object-fit:cover;
  display:block;margin:0 auto 20px;
  border:4px solid #fff;box-shadow:0 10px 30px rgba(30,34,40,.14);background:#f1f2f5;}
@media(max-width:575px){.jury-photo{width:150px;height:150px;}}
.jury-name{font-family:'Montserrat',sans-serif;font-weight:700;font-size:17.6px;margin-bottom:2.4px;}
.jury-role{color:#8a92a0;font-size:14.72px;}

/* --- Gallery --- */
.gallery-img{border-radius:16px;overflow:hidden;box-shadow:0 14px 40px rgba(30,34,40,.14);}
.gallery-img img{width:100%;display:block;}

/* --- Partners --- */
.partner-chip{background:#fff;border:1px solid #eef0f4;border-radius:12.8px;padding:16px 22.4px;
  font-family:'Montserrat',sans-serif;font-weight:600;color:#3b4453;text-align:center;height:100%;
  min-height:104px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;transition:.25s;}
a.partner-chip:hover{border-color:#ffe3a1;box-shadow:0 12px 30px rgba(30,34,40,.09);transform:translateY(-3px);}
.partner-chip img{max-width:100%;max-height:64px;width:auto;height:auto;object-fit:contain;}

/* --- KKK (akordion) --- */
.faq{max-width:820px;}
.faq-item{background:#fff;border:1px solid #eef0f4;border-radius:16px;overflow:hidden;
  box-shadow:0 6px 20px rgba(30,34,40,.04);margin-bottom:12px;transition:.25s;}
.faq-item:hover{border-color:#ffe3a1;}
.faq-item:has(.faq-q[aria-expanded="true"]){border-color:#ffe3a1;box-shadow:0 12px 32px rgba(30,34,40,.08);}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:none;border:0;text-align:left;cursor:pointer;padding:20px 24px;
  font-family:'Montserrat',sans-serif;font-weight:700;font-size:17px;line-height:1.45;color:#141b2d;}
.faq-q:focus-visible{outline:2px solid var(--idekas-yellow);outline-offset:-2px;}
.faq-icon{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:#fff8e6;position:relative;transition:.25s;}
.faq-icon::before,.faq-icon::after{content:"";position:absolute;left:50%;top:50%;
  background:var(--idekas-yellow);border-radius:2px;transform:translate(-50%,-50%);transition:.25s;}
.faq-icon::before{width:12px;height:2px;}
.faq-icon::after{width:2px;height:12px;}
.faq-q[aria-expanded="true"] .faq-icon{background:var(--idekas-yellow);}
.faq-q[aria-expanded="true"] .faq-icon::before,
.faq-q[aria-expanded="true"] .faq-icon::after{background:#141b2d;}
.faq-q[aria-expanded="true"] .faq-icon::after{transform:translate(-50%,-50%) scaleY(0);}
.faq-a{padding:0 24px 22px;color:#4b5563;font-size:16.32px;line-height:1.8;}
.faq-a p:last-child{margin-bottom:0;}
.faq-a a{color:#141b2d;text-decoration:underline;text-underline-offset:3px;word-break:break-word;}
.faq-a a:hover{color:#e0a20c;}
@media(max-width:575px){
  .faq-q{padding:16px 18px;font-size:15.5px;}
  .faq-a{padding:0 18px 18px;font-size:15.5px;}
}

/* --- CTA --- */
.cta-band{background:linear-gradient(135deg,#141b2d 0%,#28304a 100%);color:#fff;border-radius:24px;
  padding:56px 32px;position:relative;overflow:hidden;}
.cta-band::before{content:"🦄";position:absolute;right:-10px;bottom:-30px;font-size:192px;opacity:.06;}
.cta-band h2{color:#fff;}

.placeholder-note{background:#fff8e6;border:1px dashed #f6b419;color:#8a6d1a;border-radius:9.6px;
  padding:8px 14.4px;font-size:13.12px;display:inline-block;}

@media(max-width:575px){.section{padding:64px 0;}}
  
