.campaign-page{padding-top:20px;padding-bottom:80px}
.campaign-page__head{max-width:760px;margin:22px 0 34px}
.campaign-page__head h1{margin:6px 0 12px;font-family:var(--font-serif);font-size:clamp(34px,5vw,54px);line-height:1.08;color:var(--ink)}
.campaign-page__head>p:last-child{margin:0;color:var(--muted);font-size:17px;line-height:1.7}
.campaign-grid,.campaign-showcase__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.campaign-card,.campaign-showcase__card{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:0 12px 34px rgba(42,68,51,.08)}
.campaign-card__media,.campaign-showcase__media{display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#e8dcc1,#315c45)}
.campaign-card__media img,.campaign-showcase__media img{width:100%;height:100%;object-fit:contain;background:var(--cream);transition:transform .3s ease}
.campaign-card:hover img,.campaign-showcase__card:hover img{transform:scale(1.025)}
.campaign-card__fallback{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#b99855,#315c45)}
.campaign-card__body,.campaign-showcase__body{padding:22px}
.campaign-card__badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eaf2ea;color:var(--green-dark);font-size:12px;font-weight:800;letter-spacing:.02em}
.campaign-card h2,.campaign-card h3,.campaign-showcase__body h3{margin:12px 0 8px;font-family:var(--font-serif);font-size:24px;line-height:1.2}
.campaign-card h2 a,.campaign-card h3 a,.campaign-showcase__body h3 a{color:var(--ink);text-decoration:none}
.campaign-card__body>p,.campaign-showcase__body>p{margin:0;color:var(--muted);line-height:1.6}
.campaign-card__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border);font-size:13px}
.campaign-card__foot strong{color:var(--green-dark)}
.campaign-card__foot a,.campaign-showcase__link{color:var(--green);font-weight:750;text-decoration:none}
.campaign-empty{padding:50px 28px;border:1px dashed var(--border);border-radius:18px;background:var(--cream);text-align:center}
.campaign-empty h2{margin:0 0 8px;font-family:var(--font-serif);font-size:28px}
.campaign-empty p{margin:0 0 22px;color:var(--muted)}
.campaign-showcase__body h3{font-size:22px}
.campaign-showcase__body>p{min-height:3.2em}
.campaign-showcase__link{display:inline-block;margin-top:14px}
.campaign-detail{padding-bottom:86px}
.campaign-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;gap:46px;padding-top:28px;padding-bottom:58px}
.campaign-hero__content h1{margin:14px 0 14px;font-family:var(--font-serif);font-size:clamp(38px,5.5vw,66px);line-height:1.04;color:var(--ink)}
.campaign-hero__summary{margin:0;color:var(--muted);font-size:18px;line-height:1.7}
.campaign-hero__rule{display:flex;align-items:center;gap:10px;width:fit-content;margin:22px 0 8px;padding:12px 15px;border-radius:12px;background:#eaf2ea;color:var(--green-dark)}
.campaign-hero__automatic{margin:0 0 22px;color:var(--muted);font-size:14px}
.campaign-hero__media{aspect-ratio:16/9;overflow:hidden;border-radius:24px;background:var(--cream);box-shadow:0 20px 55px rgba(42,68,51,.14)}
/* Kampanya metinleri görselin kenarlarında da yer alabilir. Kesmek yerine
   tüm görseli göster; farklı oranlı yeni dosyalarda da içerik kaybolmaz. */
.campaign-hero__media img{width:100%;height:100%;object-fit:contain;background:var(--cream)}
.campaign-description{max-width:900px;margin-bottom:58px;padding:28px 32px;border-left:4px solid var(--green);border-radius:0 16px 16px 0;background:var(--cream)}
.campaign-description h2{margin:0 0 12px;font-family:var(--font-serif);font-size:27px}
.campaign-description p{margin:0;color:var(--text);line-height:1.8}
.campaign-products{scroll-margin-top:100px}
.campaign-products .section__head:not(:first-child){margin-top:58px}
.campaign-products__grid{margin-bottom:18px}
.campaign-builder{scroll-margin-top:100px}
.campaign-builder__form{display:grid;gap:24px}
.campaign-builder__group{margin:0;padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--card)}
.campaign-builder__group legend{display:flex;align-items:baseline;gap:10px;padding:0 8px;font-family:var(--font-serif);font-size:25px;color:var(--ink)}
.campaign-builder__group legend small{font-family:var(--font-sans);font-size:13px;font-weight:650;color:var(--muted)}
.campaign-builder__options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:10px}
.campaign-choice{position:relative;display:flex;min-width:0;align-items:center;gap:12px;padding:11px;border:1px solid var(--border);border-radius:14px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.campaign-choice:hover{transform:translateY(-1px);border-color:var(--green)}
.campaign-choice:has(input:checked){border-color:var(--green);box-shadow:0 0 0 2px rgba(49,92,69,.14)}
.campaign-choice.is-fixed{cursor:default;background:var(--cream)}
.campaign-choice.is-fixed:hover{transform:none;border-color:var(--border)}
.campaign-choice.is-disabled{cursor:not-allowed;opacity:.58}
.campaign-choice>input{position:absolute;top:10px;right:10px;width:18px;height:18px;accent-color:var(--green)}
.campaign-choice__media{display:flex;width:74px;height:74px;flex:0 0 74px;overflow:hidden;align-items:center;justify-content:center;border-radius:10px;background:var(--cream)}
.campaign-choice__media img{width:100%;height:100%;object-fit:cover}
.campaign-choice__body{display:flex;min-width:0;flex-direction:column;gap:4px}
.campaign-choice__body strong{font-size:13px;line-height:1.35;color:var(--ink)}
.campaign-choice__body small{font-size:12px;color:var(--muted)}
.campaign-choice__body em{font-size:11px;font-style:normal;font-weight:700;color:#a33}
.campaign-builder__submit{position:sticky;bottom:14px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 16px 44px rgba(42,68,51,.16);backdrop-filter:blur(10px)}
.campaign-builder__submit p{display:flex;margin:0;flex-direction:column;gap:4px}
.campaign-builder__submit p strong{color:var(--green-dark)}
.campaign-builder__submit p span{font-size:13px;color:var(--muted)}
@media(max-width:1023px){.campaign-grid,.campaign-showcase__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-hero{grid-template-columns:1fr;gap:28px}.campaign-hero__media{order:-1;max-height:540px}.campaign-builder__options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.campaign-page{padding-bottom:58px}.campaign-grid,.campaign-showcase__grid,.campaign-builder__options{grid-template-columns:1fr}.campaign-card__body,.campaign-showcase__body{padding:18px}.campaign-card__foot{align-items:flex-start;flex-direction:column}.campaign-hero{padding-top:12px;padding-bottom:42px}.campaign-hero__content h1{font-size:38px}.campaign-hero__summary{font-size:16px}.campaign-description{margin-left:14px;margin-right:14px;padding:22px}.campaign-products .section__head:not(:first-child){margin-top:42px}.campaign-builder__group{padding:18px 14px}.campaign-builder__group legend{flex-direction:column;gap:2px;font-size:22px}.campaign-builder__submit{align-items:stretch;flex-direction:column}.campaign-builder__submit .btn{width:100%}}
/* Ana sayfa kampanya vitrini: site bolumleri yalnizca padding-top tasir
   (.section{padding-top:72px}); .trust bandi kendi ust bosluguna sahip olmadigi
   icin vitrinin alt boslugu burada verilir, aksi halde kartlar guven bandina yapisir. */
.campaign-showcase{padding-bottom:72px}
@media(max-width:759px){.campaign-showcase{padding-bottom:52px}}

/* Kampanya sayfasi bolumleri: hazir setler ile kurallı kampanyalar
   ayri baslik altinda durur; ikisi ayni listede karisirsa musteri
   hangisini dogrudan alabilecegini anlayamiyor. */
.campaign-section{margin:0 0 46px}
.campaign-section:last-child{margin-bottom:0}
.campaign-section__head{margin:0 0 20px}
.campaign-section__head h2{margin:0 0 6px;font-family:var(--font-serif);font-size:clamp(24px,3vw,32px);line-height:1.2}
.campaign-section__head p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.6}
@media(max-width:640px){.campaign-section{margin-bottom:34px}.campaign-section__head{margin-bottom:16px}}
