/* JEDNA ODRA — style strony: index */
/* ============ HOMEPAGE SPECIFIC ============ */

  /* NEWS - wider grid */
  .news{background:var(--cream)}
  .news-grid{
    display:grid;
    grid-template-columns:1.35fr 1fr 1fr;
    gap:24px;
  }
  .news-card.featured .news-img{aspect-ratio:4/5}
  .news-card.featured .news-body{padding:30px}
  .news-card.featured .news-title{font-size:2rem}

  /* TRIPS - Najbliższe wyjazdy */
  .trips-home{background:var(--paper)}
  .trips-grid{display:flex;flex-direction:column;gap:14px}
  .trip-card{
    background:#fff;
    border:1px solid var(--line-dark);
    border-radius:var(--radius);
    padding:22px 28px;
    display:grid;grid-template-columns:80px 1fr auto auto;
    gap:24px;align-items:center;
    transition:border-color .3s, transform .3s;
  }
  .trip-card:hover{
    border-color:var(--red);
    transform:translateX(6px);
  }
  .trip-date{
    text-align:center;
    border-right:1px dashed var(--line-dark);
    padding-right:20px;
  }
  .trip-day{
    font-family:var(--font-display);font-size:2.2rem;
    line-height:1;color:var(--navy-900);
  }
  .trip-month{
    font-size:0.7rem;letter-spacing:0.18em;
    text-transform:uppercase;font-weight:700;
    color:var(--red);margin-top:4px;
  }
  .trip-info h5{
    font-family:var(--font-display);font-size:1.25rem;
    letter-spacing:0.02em;color:var(--navy-900);margin-bottom:4px;
  }
  .trip-info span{
    font-size:0.82rem;color:var(--muted);
  }
  .trip-status{
    padding:6px 14px;
    border-radius:30px;
    font-size:0.7rem;font-weight:700;
    letter-spacing:0.14em;text-transform:uppercase;
  }
  .status-open{background:rgba(34,139,87,0.12);color:#2A8B5A}
  .status-few{background:rgba(215,154,38,0.15);color:#B8821A}
  .trip-cta{
    color:var(--navy-900);font-weight:700;font-size:0.74rem;
    letter-spacing:0.14em;text-transform:uppercase;
    padding:10px 16px;
    border:1px solid var(--navy-900);
    border-radius:var(--radius-sm);
    transition:all .25s;
  }
  .trip-cta:hover{background:var(--navy-900);color:#fff}

  /* SUPPORT - 3 karty */
  .support{background:var(--cream)}
  .support-grid{
    display:grid;grid-template-columns:repeat(3, 1fr);gap:20px;
  }
  .support-card{
    background:#fff;
    border:1px solid var(--line-dark);
    border-radius:var(--radius);
    padding:36px 30px;
    position:relative;
    transition:transform .3s, border-color .3s;
    overflow:hidden;
  }
  .support-card:hover{
    transform:translateY(-4px);
    border-color:var(--red);
  }
  .support-card.highlight{
    background:var(--navy-900);color:#fff;
    border-color:var(--navy-900);
  }
  .support-card.highlight::before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;
    background:var(--red);
  }
  .support-icon{
    width:54px;height:54px;
    background:var(--navy-900);color:#fff;
    border-radius:var(--radius);
    display:grid;place-items:center;
    margin-bottom:24px;
    font-family:var(--font-display);font-size:1.5rem;
  }
  .support-card.highlight .support-icon{background:var(--red)}
  .support-card h4{
    font-family:var(--font-display);font-size:1.6rem;
    line-height:1;margin-bottom:12px;letter-spacing:0.02em;
  }
  .support-card p{
    color:var(--muted);font-size:0.95rem;
    margin-bottom:22px;line-height:1.6;
  }
  .support-card.highlight p{color:#C8D5EC}
  .support-amount{
    display:block;
    font-family:var(--font-display);
    font-size:0.85rem;letter-spacing:0.16em;
    color:var(--red);margin-bottom:14px;
  }
  .support-card.highlight .support-amount{color:var(--red-bright)}
  .support-btn{
    display:inline-flex;align-items:center;gap:10px;
    color:var(--navy-900);font-weight:700;font-size:0.78rem;
    letter-spacing:0.14em;text-transform:uppercase;
    padding-top:18px;border-top:1px dashed var(--line-dark);
    width:100%;
  }
  .support-card.highlight .support-btn{color:#fff;border-top-color:rgba(255,255,255,0.2)}

  /* JOIN BANNER */
  .join-cta{
    background:var(--navy-900);color:#fff;
    position:relative;overflow:hidden;
    padding:80px 0;
  }
  .join-cta::before{
    content:"DZIAŁAJ";
    position:absolute;
    bottom:-30px;right:-30px;
    font-family:var(--font-display);
    font-size:24vw;line-height:0.8;
    color:rgba(255,255,255,0.025);
    pointer-events:none;
    user-select:none;
    white-space:nowrap;
  }
  .join-cta-inner{
    display:grid;grid-template-columns:1fr auto;gap:60px;
    align-items:center;position:relative;z-index:1;
  }
  .join-cta h2{
    font-family:var(--font-display);
    font-size:clamp(2.2rem, 5vw, 4rem);
    line-height:0.94;color:#fff;margin-bottom:16px;
  }
  .join-cta h2 em{font-family:var(--font-editorial);font-style:italic;color:var(--red-bright);font-weight:400}
  .join-cta p{color:#C8D5EC;font-size:1.05rem;max-width:540px;line-height:1.6}
  .join-cta-actions{display:flex;gap:14px;flex-wrap:wrap}

  @media (max-width:1024px){
    .news-grid{grid-template-columns:1fr 1fr}
    .news-card.featured{grid-column:1/-1}
    .news-card.featured .news-img{aspect-ratio:21/9}
    .support-grid{grid-template-columns:1fr}
    .join-cta-inner{grid-template-columns:1fr;gap:30px}
  }
  @media (max-width:680px){
    .news-grid{grid-template-columns:1fr}
    .trip-card{grid-template-columns:1fr;gap:14px}
    .trip-date{border-right:none;border-bottom:1px dashed var(--line-dark);padding:0 0 12px;text-align:left;display:flex;align-items:baseline;gap:12px}
  }
