
/* ============================================================
   Campaign public list / detail pages
   ============================================================ */
.cg-campaign-page,.cg-campaign-detail{min-height:70vh;background:#f6f8fc;color:#10233f}
.cg-campaign-page__hero{position:relative;overflow:hidden;padding:82px 24px 76px;background:linear-gradient(128deg,#061a38 0%,#063b7b 52%,#0069b9 100%);color:#fff}
.cg-campaign-page__hero:after{content:"";position:absolute;inset:-40% -10% auto auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,216,0,.22),rgba(255,216,0,0) 68%);pointer-events:none}
.cg-campaign-page__hero-inner{position:relative;z-index:1;width:min(1320px,100%);margin:0 auto}
.cg-campaign-page__eyebrow,.cg-campaign-page__heading span,.cg-campaign-detail__section-title span{display:block;color:#ffd800;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.cg-campaign-page__hero h1{margin:10px 0 14px;font-size:clamp(42px,5vw,68px);line-height:1;font-weight:950;letter-spacing:-.045em}
.cg-campaign-page__hero p{max-width:720px;margin:0;color:rgba(255,255,255,.82);font-size:17px;line-height:1.7}
.cg-campaign-page__content{width:min(1320px,calc(100% - 40px));margin:0 auto;padding:46px 0 82px}
.cg-campaign-page__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.cg-campaign-page__heading h2{margin:5px 0 0;color:#082b63;font-size:clamp(28px,3vw,42px);line-height:1.1;font-weight:950;letter-spacing:-.035em}
.cg-campaign-page__heading>strong{padding:9px 14px;border-radius:999px;background:#fff;color:#52647d;font-size:12px;box-shadow:0 6px 18px rgba(15,43,82,.08)}
.cg-campaign-page__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.cg-campaign-list-card{position:relative;isolation:isolate;overflow:hidden;min-width:0;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(15,43,82,.09);transition:transform .25s ease,box-shadow .25s ease}
.cg-campaign-list-card:hover{transform:translateY(-7px);box-shadow:0 22px 48px rgba(15,43,82,.17)}
.cg-campaign-list-card__visual{position:relative;overflow:hidden;aspect-ratio:4/3;background:linear-gradient(145deg,#eaf0f7,#f9fbfd)}
.cg-campaign-list-card__visual>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.cg-campaign-list-card:hover .cg-campaign-list-card__visual>img{transform:scale(1.045)}
.cg-campaign-list-card__placeholder{height:100%;display:grid;place-items:center;color:#89a0ba}
.cg-campaign-list-card__placeholder .material-symbols-rounded{font-size:48px}
.cg-campaign-list-card__ribbon{position:absolute;z-index:2;top:14px;right:14px;padding:7px 10px;border-radius:999px;background:var(--ribbon-color,#dc2626);color:#fff;font-size:9px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 18px rgba(15,23,42,.18)}
.cg-campaign-list-card__body{min-height:190px;padding:20px;display:flex;flex-direction:column}
.cg-campaign-list-card__body small{color:#0068b7;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.cg-campaign-list-card__body h3{margin:8px 0 0;color:#082b63;font-size:19px;line-height:1.28;font-weight:950;letter-spacing:-.02em}
.cg-campaign-list-card__body p{margin:10px 0 16px;color:#64748b;font-size:13px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cg-campaign-list-card__action{margin-top:auto;display:inline-flex;align-items:center;gap:7px;color:#082b63;font-size:12px;font-weight:900}
.cg-campaign-list-card__action .material-symbols-rounded{font-size:18px;transition:transform .2s ease}
.cg-campaign-list-card:hover .cg-campaign-list-card__action .material-symbols-rounded{transform:translateX(4px)}
.cg-campaign-list-card__cover{position:absolute;z-index:5;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:pointer;text-indent:-9999px}
.cg-campaign-list-card--image-only .cg-campaign-list-card__visual{aspect-ratio:4/5}
.cg-campaign-page__empty{margin:40px 0;padding:70px 25px;text-align:center;border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(15,43,82,.08)}
.cg-campaign-page__empty>.material-symbols-rounded{font-size:54px;color:#005aa9}
.cg-campaign-page__empty h2{margin:14px 0 6px;color:#082b63;font-size:25px}
.cg-campaign-page__empty p{margin:0;color:#64748b}

.cg-campaign-detail__hero{position:relative;min-height:500px;display:flex;align-items:flex-end;padding:70px 24px;background-image:var(--campaign-detail-image);background-repeat:no-repeat;background-size:cover;background-position:center;color:#fff}
.cg-campaign-detail__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,19,43,.94) 0%,rgba(4,19,43,.68) 48%,rgba(4,19,43,.18) 100%)}
.cg-campaign-detail__hero-inner{position:relative;z-index:1;width:min(1200px,100%);margin:0 auto}
.cg-campaign-detail__back{display:inline-flex;align-items:center;gap:7px;margin-bottom:28px;color:#fff;text-decoration:none;font-size:12px;font-weight:850;opacity:.86}
.cg-campaign-detail__back:hover{color:#ffd800}
.cg-campaign-detail__back .material-symbols-rounded{font-size:18px}
.cg-campaign-detail__hero small{display:block;color:#ffd800;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.cg-campaign-detail__hero h1{max-width:850px;margin:10px 0 14px;font-size:clamp(40px,5vw,64px);line-height:1.04;font-weight:950;letter-spacing:-.045em}
.cg-campaign-detail__hero p{max-width:760px;margin:0;color:rgba(255,255,255,.84);font-size:17px;line-height:1.7}
.cg-campaign-detail__content{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:48px 0 82px}
.cg-campaign-detail__article{padding:36px 40px;border-radius:22px;background:#fff;color:#334155;font-size:16px;line-height:1.85;box-shadow:0 12px 34px rgba(15,43,82,.08)}
.cg-campaign-detail__article img{max-width:100%;height:auto;border-radius:14px}
.cg-campaign-detail__gallery-wrap{margin-top:42px}
.cg-campaign-detail__section-title h2{margin:5px 0 20px;color:#082b63;font-size:32px;font-weight:950;letter-spacing:-.03em}
.cg-campaign-detail__gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cg-campaign-detail__gallery-item{overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(15,43,82,.08)}
.cg-campaign-detail__gallery-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .35s ease}
.cg-campaign-detail__gallery-item:hover img{transform:scale(1.04)}

@media(max-width:1100px){.cg-campaign-page__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.cg-campaign-page__hero{padding:68px 20px 62px}.cg-campaign-page__content,.cg-campaign-detail__content{width:min(100% - 30px,1120px)}.cg-campaign-page__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cg-campaign-detail__hero{min-height:430px;padding:55px 20px}.cg-campaign-detail__gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cg-campaign-page__hero p,.cg-campaign-detail__hero p{font-size:15px}.cg-campaign-page__heading{align-items:flex-start}.cg-campaign-page__heading>strong{display:none}.cg-campaign-page__grid{grid-template-columns:1fr}.cg-campaign-list-card__visual{aspect-ratio:16/10}.cg-campaign-list-card--image-only .cg-campaign-list-card__visual{aspect-ratio:4/5}.cg-campaign-list-card__body{min-height:160px}.cg-campaign-detail__hero{min-height:390px}.cg-campaign-detail__article{padding:26px 22px}.cg-campaign-detail__gallery{grid-template-columns:1fr}}


/* ============================================================
   HOME CAMPAIGN CARDS - INTERACTION FIX
   ------------------------------------------------------------
   Kampanya liste/detay sayfası stillerinden bağımsızdır.
   Ana sayfadaki popup / PDF / detay sayfası tıklamalarını
   yeniden aktif eder ve mevcut kart görünümünü korur.
   ============================================================ */

.cg-home-campaigns .cg-campaign-card--managed {
    position: relative;
    isolation: isolate;
    padding: 0;
    background: var(--campaign-card-color, #1d4ed8);
}

.cg-home-campaigns .cg-campaign-card--managed > img {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .4s ease;
}

.cg-home-campaigns .cg-campaign-card--managed:hover > img {
    transform: scale(1.045);
}

.cg-home-campaigns .cg-campaign-card--managed::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        180deg,
        rgba(4, 18, 42, .04) 18%,
        rgba(4, 18, 42, .22) 55%,
        rgba(4, 18, 42, .78) 100%
    );
}

.cg-home-campaigns .cg-campaign-card--managed.cg-campaign-card--image-only::after {
    background: linear-gradient(
        180deg,
        rgba(4, 18, 42, 0) 55%,
        rgba(4, 18, 42, .12) 100%
    );
}

.cg-home-campaigns .cg-campaign-card__content {
    position: relative;
    z-index: 2;
    margin-top: auto;
    padding: 24px;
    color: var(--campaign-text-color, #fff);
    pointer-events: none;
}

.cg-home-campaigns .cg-campaign-card__content small,
.cg-home-campaigns .cg-campaign-card__content strong,
.cg-home-campaigns .cg-campaign-card__content p,
.cg-home-campaigns .cg-campaign-card__content span {
    color: inherit;
}

.cg-home-campaigns .cg-campaign-card__content p {
    margin: 10px 0 0;
    line-height: 1.55;
}

.cg-home-campaigns .cg-campaign-card__cta {
    display: inline-flex;
    margin-top: 18px;
    font-size: 12px;
    font-weight: 900;
}

.cg-home-campaigns .cg-campaign-ribbon {
    position: absolute;
    z-index: 4;
    top: 14px;
    right: 14px;
    padding: 7px 11px;
    border-radius: 999px;
    color: #fff;
    background: var(--campaign-ribbon-color, #dc2626);
    box-shadow: 0 8px 20px rgba(15, 23, 42, .2);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
    pointer-events: none;
}

/*
 * Kartın tüm yüzeyini tıklanabilir yapar.
 * Bu eleman:
 *   - <a> ise PDF veya detay sayfasına gider.
 *   - <button> ise campaign-popup.js tarafından popup açılır.
 */
.cg-home-campaigns .cg-campaign-card__cover-link {
    position: absolute;
    inset: 0;
    z-index: 10;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: inherit;
    background: transparent;
    color: transparent;
    cursor: pointer;
    text-decoration: none;
    appearance: none;
    -webkit-appearance: none;
}

.cg-home-campaigns .cg-campaign-card__cover-link:focus-visible {
    outline: 3px solid #ffd800;
    outline-offset: -4px;
}

@media (max-width: 700px) {
    .cg-home-campaigns .cg-campaign-card__content {
        padding: 20px;
    }
}


/* ============================================================
   RC1 - HOME CAMPAIGN CARD TYPOGRAPHY / ALIGNMENT
   Tarih-badge, başlık ve açıklamayı görselin üstünde birbirinden
   ayırır. Kart link/popup/PDF davranışına dokunmaz.
   ============================================================ */
.cg-home-campaigns .cg-campaign-card--managed .cg-campaign-card__content{
    position:absolute;
    z-index:3;
    left:14px;
    right:14px;
    bottom:14px;
    margin:0;
    padding:14px 15px 13px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;
    background:linear-gradient(180deg,rgba(5,24,52,.78),rgba(5,24,52,.92));
    box-shadow:0 10px 28px rgba(0,0,0,.20);
    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
}

.cg-home-campaigns .cg-campaign-card--managed .cg-campaign-card__content small{
    display:inline-flex;
    width:auto;
    max-width:100%;
    margin:0 0 8px;
    padding:5px 8px;
    border-radius:7px;
    color:#fff;
    background:rgba(255,216,0,.20);
    font-size:10px;
    line-height:1.15;
    font-weight:900;
    letter-spacing:.055em;
    text-transform:uppercase;
    white-space:normal;
}

.cg-home-campaigns .cg-campaign-card--managed .cg-campaign-card__content strong{
    display:block;
    width:100%;
    margin:0;
    color:#fff;
    font-size:clamp(17px,1.3vw,20px);
    line-height:1.22;
    font-weight:950;
    letter-spacing:-.02em;
    text-wrap:balance;
}

.cg-home-campaigns .cg-campaign-card--managed .cg-campaign-card__content p{
    display:-webkit-box;
    width:100%;
    margin:7px 0 0;
    overflow:hidden;
    color:rgba(255,255,255,.86);
    font-size:12px;
    line-height:1.45;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
}

.cg-home-campaigns .cg-campaign-card--managed .cg-campaign-card__cta{
    display:inline-flex;
    align-items:center;
    margin:10px 0 0;
    color:#ffd800;
    font-size:11px;
    line-height:1;
    font-weight:900;
}

.cg-home-campaigns .cg-campaign-card--managed.cg-campaign-card--image-only .cg-campaign-card__content{
    display:none;
}

@media(max-width:700px){
    .cg-home-campaigns .cg-campaign-card--managed .cg-campaign-card__content{
        left:10px;
        right:10px;
        bottom:10px;
        padding:12px 13px;
    }
}


/* ============================================================
   RC1 - CAMPAIGN GLASS / IMAGE ONLY
   ------------------------------------------------------------
   Glass kartta görseli öldürmeyen hafif cam yüzey kullanılır.
   Kart metinlerinin tamamı boşsa panel ve karartma tamamen kalkar.
   Popup / PDF / detay sayfası tıklama katmanına dokunulmaz.
   ============================================================ */

/* Image-only gerçekten yalnızca görsel olsun. */
.cg-home-campaigns .cg-campaign-card--managed.cg-campaign-card--image-only::after{
    background:none !important;
}

.cg-home-campaigns .cg-campaign-card--managed.cg-campaign-card--image-only > img{
    filter:none;
}

/* Glass stilinde genel görsel karartmasını çok hafif tut. */
.cg-home-campaigns .cg-campaign-card--managed.cg-campaign-card--glass::after{
    background:linear-gradient(
        180deg,
        rgba(3,16,35,.02) 0%,
        rgba(3,16,35,.05) 50%,
        rgba(3,16,35,.16) 100%
    );
}

/* Gerçek cam panel: daha transparan, daha az blur. */
.cg-home-campaigns .cg-campaign-card--managed.cg-campaign-card--glass .cg-campaign-card__content{
    left:14px;
    right:14px;
    bottom:14px;
    padding:14px 15px;
    border:1px solid rgba(255,255,255,.30);
    border-radius:16px;
    background:
        linear-gradient(
            135deg,
            rgba(7,28,58,.36),
            rgba(4,20,43,.48)
        );
    box-shadow:
        0 10px 28px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.12);
    backdrop-filter:blur(9px) saturate(125%);
    -webkit-backdrop-filter:blur(9px) saturate(125%);
}

/* Cam üzerinde okunabilir ama görseli bastırmayan tipografi. */
.cg-home-campaigns .cg-campaign-card--glass .cg-campaign-card__content strong{
    color:#fff;
    text-shadow:0 2px 8px rgba(0,0,0,.42);
}

.cg-home-campaigns .cg-campaign-card--glass .cg-campaign-card__content p{
    color:rgba(255,255,255,.90);
    text-shadow:0 1px 5px rgba(0,0,0,.35);
}

.cg-home-campaigns .cg-campaign-card--glass .cg-campaign-card__content small{
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,216,0,.26);
    box-shadow:none;
    text-shadow:0 1px 4px rgba(0,0,0,.30);
}

.cg-home-campaigns .cg-campaign-card--glass .cg-campaign-card__cta{
    color:#ffe44a;
    text-shadow:0 1px 4px rgba(0,0,0,.32);
}

/* Hover'da cam biraz belirginleşir, görsel yine görünür kalır. */
.cg-home-campaigns .cg-campaign-card--glass:hover .cg-campaign-card__content{
    background:
        linear-gradient(
            135deg,
            rgba(7,28,58,.42),
            rgba(4,20,43,.54)
        );
    border-color:rgba(255,255,255,.38);
}

/* Metin paneli yoksa cover-link tüm kartı tıklanabilir bırakır. */
.cg-home-campaigns .cg-campaign-card--image-only .cg-campaign-card__cover-link{
    z-index:10;
}

@media(max-width:700px){
    .cg-home-campaigns .cg-campaign-card--glass .cg-campaign-card__content{
        left:10px;
        right:10px;
        bottom:10px;
        padding:12px 13px;
        border-radius:14px;
        backdrop-filter:blur(7px) saturate(120%);
        -webkit-backdrop-filter:blur(7px) saturate(120%);
    }
}
