/* Goethe & ÖSD A1 yoğun sınav hazırlık kampı - mevcut kurs tasarımıyla uyumlu */
.exam-camp-page .course-hero h1 { font-size: clamp(3.5rem, 6.3vw, 6.4rem); }
.exam-camp-page .course-lead { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.28rem, 1.8vw, 1.65rem) !important; color: var(--ink) !important; line-height: 1.32; font-weight: 500; }
.exam-camp-page .course-hero-art { border-radius: 45% 45% 1.4rem 1.4rem; }
.exam-camp-page .course-hero-art>img { object-position: center; }
.exam-camp-page .course-glass strong { font-size: clamp(1.7rem, 2.35vw, 2.7rem); line-height: 1.15; }
.exam-camp-page .course-two>div>p { font-size: 1.02rem; }
.exam-camp-page .course-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.exam-camp-page .course-facts strong { overflow-wrap: anywhere; }
.exam-camp-page .course-goals h2 { max-width: 1000px; }
.exam-camp-page .course-goals .course-intro { max-width: 850px; }
.exam-camp-page .camp-story { min-height: 500px; position: relative; display: grid; align-items: center; background: var(--navy-2); color: white; isolation: isolate; overflow: hidden; }
.exam-camp-page .camp-story > img { position: absolute; width: 100%; height: 100%; inset: 0; object-fit: cover; object-position: center 45%; z-index: -2; }
.exam-camp-page .camp-story::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(13,26,49,.9),rgba(13,26,49,.45) 70%,rgba(13,26,49,.2)); }
.exam-camp-page .camp-story__inner { padding-top: 5rem; padding-bottom: 5rem; }
.exam-camp-page .camp-story h2 { max-width: 800px; font-size: clamp(3.2rem, 6.1vw, 6.5rem); }
.exam-camp-page .camp-story .kicker { color: var(--gold); }
.exam-camp-page .camp-story p:not(.kicker) { font-size: 1.05rem; max-width: 550px; }
.exam-camp-page .camp-story span { font-size: .7rem; letter-spacing: .15em; text-transform: uppercase; color: var(--gold); }
.exam-camp-page .course-module summary { align-items: center; }
.exam-camp-page .course-module summary strong { font-size: clamp(1.3rem, 2.1vw, 1.65rem); }
.exam-camp-page .module-body ul { grid-template-columns: 1fr; gap: .5rem; }
.exam-camp-page .camp-gallery { padding-top: 5rem; padding-bottom: 6rem; display: grid; grid-template-columns: 1.22fr 1fr .78fr; gap: 1.25rem; grid-template-areas: 'intro big tall' 'cologne cologne munich'; }
.exam-camp-page .camp-gallery__intro { grid-area: intro; align-self: center; padding-right: 1rem; }
.exam-camp-page .camp-gallery__intro h2 { font-size: clamp(2.3rem, 3.8vw, 4rem); }
.exam-camp-page .camp-gallery__intro p:not(.kicker) { max-width: 360px; color: var(--ink-soft); font-size: .98rem; }
.exam-camp-page .camp-gallery__photo { position: relative; margin: 0; min-height: 340px; overflow: hidden; border-radius: 1.3rem; background: var(--navy-2); box-shadow: 0 15px 36px rgba(0,0,0,.1); }
.exam-camp-page .camp-gallery__photo--large { grid-area: big; min-height: 360px; }
.exam-camp-page .camp-gallery__photo--tall { grid-area: tall; }
/* Harici fotoğraf yüklenene kadar yerel görseller boş alanı doldurur. */
.exam-camp-page .camp-gallery__photo--cologne { grid-area: cologne; min-height: 340px; background: var(--navy-2) url('../images/kamp-berlin-manzara.webp') center/cover no-repeat; }
.exam-camp-page .camp-gallery__photo--munich { background: var(--navy-2) url('../images/kamp-heidelberg.webp') center/cover no-repeat; }
.exam-camp-page .camp-gallery__photo--cologne img[src^="https:"], .exam-camp-page .camp-gallery__photo--munich img[src^="https:"] { opacity: 0; }

.exam-camp-page .camp-gallery__photo--munich { grid-area: munich; }
.exam-camp-page .camp-gallery__photo img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .45s ease; }
.exam-camp-page .camp-gallery__photo--tall img { object-position: center 24%; }
.exam-camp-page .camp-gallery__photo--munich img { object-position: center 34%; }
.exam-camp-page .camp-gallery__photo::after { content: ''; position: absolute; inset: 45% 0 0; background: linear-gradient(0deg, rgba(9,17,31,.65),transparent); pointer-events: none; }
.exam-camp-page .camp-gallery__photo figcaption { position: absolute; bottom: 1rem; left: 1.1rem; z-index: 1; color: white; font-size: .75rem; font-weight: 800; letter-spacing: .065em; }
@media (hover:hover) { .exam-camp-page .camp-gallery__photo:hover img { transform: scale(1.035); } }
.exam-camp-page .course-panel h3 { line-height: 1.14; }
.exam-camp-page .course-purchase .course-button { gap: .6rem; }
.exam-camp-page .course-condition .course-inline-link { padding: .1rem 0; }
.exam-camp-page .course-credits p { line-height: 1.7; }
@media (max-width: 1060px) { .exam-camp-page .camp-gallery { grid-template-columns: 1fr 1fr; grid-template-areas: 'intro big' 'tall cologne' 'munich munich'; } .exam-camp-page .camp-gallery__photo { min-height: 350px; } .exam-camp-page .camp-gallery__photo--munich { min-height: 300px; } }
@media (max-width: 760px) { 
  .exam-camp-page .course-hero h1 { font-size: clamp(3.4rem, 13vw, 5rem); }
  .exam-camp-page .course-hero-art { border-radius: 1.4rem 1.4rem 5rem 1.4rem; }
  .exam-camp-page .course-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .exam-camp-page .course-facts>div:nth-child(3) { border-left: 0; }
  .exam-camp-page .course-hero-copy .course-button { gap: 1rem; }
  .exam-camp-page .camp-story { min-height: 340px; }
  .exam-camp-page .camp-story h2 { font-size: clamp(2.7rem, 10vw, 4rem); }
  .exam-camp-page .camp-story__inner { padding-block: 4.5rem; }
  .exam-camp-page .camp-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-areas: 'intro intro' 'big big' 'tall munich' 'cologne cologne'; gap: .8rem; padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .exam-camp-page .camp-gallery__intro { padding: 0 0 .8rem; }
  .exam-camp-page .camp-gallery__photo { border-radius: 1rem; min-height: 240px; }
  .exam-camp-page .camp-gallery__photo--large { min-height: 240px; }
  .exam-camp-page .camp-gallery__photo--cologne { min-height: 230px; }
  .exam-camp-page .camp-gallery__photo--tall, .exam-camp-page .camp-gallery__photo--munich { min-height: 270px; }
  .exam-camp-page .course-panel h3 { font-size: 2.2rem; }
}
@media (max-width: 390px) { .exam-camp-page .camp-gallery__photo { min-height: 200px; } .exam-camp-page .camp-gallery__photo--tall, .exam-camp-page .camp-gallery__photo--munich { min-height: 230px; } .exam-camp-page .course-price { font-size: 3.8rem; } }
@media (prefers-reduced-motion:reduce) { .exam-camp-page .camp-gallery__photo img { transition: none; } }
