/*
 * Owner decision (2026-10-05): colours and buttons follow the active theme everywhere. Loaded last in
 * the site <head> (after the theme's final.css and cta-lock). css/harmony/* already swaps the Summit
 * colours of the shared sheets; this sheet adds what a colour swap cannot do.
 */

html.site-template-summit {
  --th-focus: #1d4ed8;
  --th-btn-bg: #1d4ed8;
  --th-btn-hover: #1e40af;
  --th-btn-fg: #fff;
  --th-btn-border: #1d4ed8;
  --th-btn-shadow: 0 6px 16px rgb(29 78 216 / 0.22);
}
html.site-template-aurum {
  --th-focus: #b08a3c;
  --th-btn-bg: #b08a3c;
  --th-btn-hover: #8c6a2a;
  --th-btn-fg: #162032;
  --th-btn-border: #b08a3c;
  --th-btn-shadow: 0 8px 20px rgb(176 138 60 / 0.26);
}
html.site-template-anadolu {
  --th-focus: #7a2e1e;
  --th-btn-bg: #7a2e1e;
  --th-btn-hover: #5c1d18;
  --th-btn-fg: #fffdf9;
  --th-btn-border: #6b2819;
  --th-btn-shadow: 0 6px 16px rgb(122 46 30 / 0.2);
}
html.site-template-efes {
  --th-focus: #2f4a3c;
  --th-btn-bg: #2f4a3c;
  --th-btn-hover: #1e3329;
  --th-btn-fg: #fffdf9;
  --th-btn-border: #1e3329;
  --th-btn-shadow: 0 6px 16px rgb(47 74 60 / 0.2);
}
html.site-template-germiyan {
  --th-focus: #0f766e;
  --th-btn-bg: #0f766e;
  --th-btn-hover: #115e59;
  --th-btn-fg: #fff;
  --th-btn-border: #115e59;
  --th-btn-shadow: 0 6px 16px rgb(15 118 110 / 0.22);
}
/* Ege: its own buttons come from its final.css; these tokens are for the shared ones (kayıt / ödeme). */
html.site-template-ege {
  --th-btn-bg: #c8500c;
  --th-btn-hover: #a8410a;
  --th-btn-fg: #fff;
  --th-btn-border: #a8410a;
  --th-btn-shadow: 0 6px 16px rgb(200 80 12 / 0.22);
}
/* Kapadokya (ege skeleton, pdr.org.tr colours): the same, red. */
html.site-template-kapadokya {
  --th-btn-bg: #c01018;
  --th-btn-hover: #9a0d13;
  --th-btn-fg: #fff;
  --th-btn-border: #9a0d13;
  --th-btn-shadow: 0 6px 16px rgb(192 16 24 / 0.22);
}
html.site-template-marmara {
  --th-focus: #1a3654;
  --th-btn-bg: #1a3654;
  --th-btn-hover: #0e1c36;
  --th-btn-fg: #fff;
  --th-btn-border: #0e1c36;
  --th-btn-shadow: 0 6px 16px rgb(26 54 84 / 0.24);
}

/*
 * Keyboard focus in the theme colour. Without it the browser draws its own ring, in the operating
 * system's accent colour (orange on the owner's machine). Zero specificity: any focus style a sheet
 * defines still wins.
 */
:where(html[class*='site-template-']) :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--th-focus);
  outline-offset: 2px;
}

/*
 * Pop-up: the showcase themes turn every .prose-congress into a bordered card (!important), and the
 * pop-up's text block carries that class — the text sat against a frame with no padding.
 */
html.site-preset-showcase .site-popup-modal__content.prose-congress,
html.site-preset-default .site-popup-modal__content.prose-congress {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
}
/* site-popup.css is hoisted into <head> after this sheet: one more class to stay ahead of it. */
html:not(.site-template-summit) .site-popup-modal__cta {
  background: var(--th-btn-bg);
  color: var(--th-btn-fg);
  border: 1px solid var(--th-btn-border);
  box-shadow: var(--th-btn-shadow);
}
html:not(.site-template-summit) .site-popup-modal__cta:hover {
  background: var(--th-btn-hover);
  color: var(--th-btn-fg);
}
html .site-popup-modal__close:focus-visible {
  outline: 2px solid var(--th-focus, #1d4ed8);
  outline-offset: 2px;
}

/*
 * Primary buttons of the shared sheet painted with Summit gradients: the theme's own button (the same
 * one its cta-lock / final.css gives the sign-in and contact buttons). Scoped with :where so a rule a
 * theme sheet wrote for the button (html.site-template-… .x) still wins.
 */
:where(html:not(.site-template-summit)) .speaker-detail-card__btn,
:where(html:not(.site-template-summit)) .program-filters__btn--primary,
:where(html:not(.site-template-summit)) .page-dates__cta,
:where(html:not(.site-template-summit)) .accommodation-page__cta-btn,
:where(html:not(.site-template-summit)) .registration-form__submit,
:where(html:not(.site-template-summit)) .abstract-form__submit,
:where(html:not(.site-template-summit)) .abs-template-banner__btn,
:where(html:not(.site-template-summit)) .program-session-live-locked__btn--primary,
:where(html:not(.site-template-summit)) .home-announcements__btn,
:where(html:not(.site-template-summit)) .site-bottom-nav__cta {
  background: var(--th-btn-bg);
  color: var(--th-btn-fg);
  border-color: var(--th-btn-border);
  box-shadow: var(--th-btn-shadow);
}
:where(html:not(.site-template-summit)) .speaker-detail-card__btn:hover,
:where(html:not(.site-template-summit)) .program-filters__btn--primary:hover,
:where(html:not(.site-template-summit)) .page-dates__cta:hover,
:where(html:not(.site-template-summit)) .accommodation-page__cta-btn:hover,
:where(html:not(.site-template-summit)) .registration-form__submit:hover,
:where(html:not(.site-template-summit)) .abstract-form__submit:hover,
:where(html:not(.site-template-summit)) .abs-template-banner__btn:hover,
:where(html:not(.site-template-summit)) .program-session-live-locked__btn--primary:hover,
:where(html:not(.site-template-summit)) .home-announcements__btn:hover {
  background: var(--th-btn-hover);
  color: var(--th-btn-fg);
}

/* Online programme page: its own green accent pair and mint chips (the theme's colours instead). */
:where(html:not(.site-template-summit)) .program-page--online-dedicated {
  --online-accent-dark: var(--th-p-deep);
}
:where(html:not(.site-template-summit)) .file-library__card-icon--pdf,
:where(html:not(.site-template-summit)) .program-page--online-dedicated .program-day__index--pro,
:where(html:not(.site-template-summit)) .program-page--online-dedicated .program-timeline__hall--virtual {
  background: var(--th-wash);
}
:where(html:not(.site-template-summit)) .program-online-hero {
  background-image: linear-gradient(135deg, var(--th-wash), #fff);
}

/* anadolu / efes home.css paint the footer link arrows emerald (#34d399); inner pages inherit the link colour. */
:where(html:not(.site-template-summit)) body.site-home .og-footer__link i {
  color: inherit;
}

/*
 * germiyan / marmara had no cta-lock in Laravel: their header and form buttons were gradients built from
 * the shared --brand / --primary variables (Summit teal → gold). One flat theme button, like the other themes.
 */
:is(html.site-template-germiyan, html.site-template-marmara) :is(
  .btn-header-primary, .auth-modal__aside-btn, .auth-modal__submit, .auth-modal__btn--primary, .auth-register__submit,
  .og-auth__brand-btn, .og-auth__submit, .fees-page__btn--primary, .contact-form__submit, .btn-primary, .btn-brand,
  .hero-btn-primary, .hero-slide-btn--primary, .registration-form__submit, .abstract-form__submit, .announcement-request-form__btn--primary,
  .announcement-featured__cta, .site-bottom-nav__cta
) {
  background: var(--th-btn-bg) !important;
  background-image: none !important;
  color: var(--th-btn-fg) !important;
  border-color: var(--th-btn-border) !important;
  box-shadow: var(--th-btn-shadow) !important;
  filter: none !important;
}
:is(html.site-template-germiyan, html.site-template-marmara) :is(
  .btn-header-primary, .auth-modal__aside-btn, .auth-modal__submit, .auth-modal__btn--primary, .auth-register__submit,
  .og-auth__brand-btn, .og-auth__submit, .fees-page__btn--primary, .contact-form__submit, .btn-primary, .btn-brand,
  .hero-btn-primary, .hero-slide-btn--primary, .registration-form__submit, .abstract-form__submit, .announcement-request-form__btn--primary,
  .announcement-featured__cta, .site-bottom-nav__cta
):hover {
  background: var(--th-btn-hover) !important;
}

/* Default-shell language switcher (amber in site.css): the theme's colour on the dark top bar. */
html.site-template-germiyan .lang-switcher__btn.is-active,
html.site-template-germiyan .site-top-bar .lang-switcher__btn.is-active { background: #0f766e !important; color: #fff !important; }
html.site-template-marmara .lang-switcher__btn.is-active,
html.site-template-marmara .site-top-bar .lang-switcher__btn.is-active { background: #3d5a80 !important; color: #fff !important; }

/* Quick-link icons of the default hero: a flat theme tint instead of the mint wash. */
:where(html:not(.site-template-summit)) .hero-quicklinks__icon {
  background: var(--th-wash);
}

/* Footer bottom line (SiteFooter FooterLegalLine): Gizlilik Politikası | Kullanım Koşulları | Altyapı: Nova CongressPort. */
.site-legal-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.75rem;
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.4;
  color: inherit;
}
.site-legal-line a {
  color: inherit;
  text-decoration: none;
  opacity: 0.88;
  transition: opacity 0.15s;
}
.site-legal-line a:hover {
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.site-legal-line__sep {
  opacity: 0.35;
}
.site-legal-line__credit {
  opacity: 0.88;
}
.site-legal-line__credit a {
  opacity: 1;
}
.site-legal-line__credit strong {
  font-weight: 700;
}

/*
 * Owner (2026-10-05): the default home's between-section waves (partials/section-wave) are drawn in a flat
 * --surface colour over sections with textured / tinted backgrounds — a visible pale strip in every theme,
 * and the last one is Summit's #020617 above each theme's own footer colour. The sections meet directly.
 */
.section-wave {
  display: none !important;
}

/*
 * Member panel and Yönetim keep the JournalPort /manage layout; their two accent colours (JournalPort's
 * orange call-to-action and navy) follow the congress theme so the panel and the site around it match.
 */
html.site-template-summit :is(.jp-manage, .jp-photo-editor) { --jp-accent: #1e3a8a; --jp-cta: #1d4ed8; }
html.site-template-aurum :is(.jp-manage, .jp-photo-editor) { --jp-accent: #162032; --jp-cta: #8c6a2a; }
html.site-template-anadolu :is(.jp-manage, .jp-photo-editor) { --jp-accent: #5c1d18; --jp-cta: #7a2e1e; }
html.site-template-efes :is(.jp-manage, .jp-photo-editor) { --jp-accent: #1e3329; --jp-cta: #2f4a3c; }
html.site-template-germiyan :is(.jp-manage, .jp-photo-editor) { --jp-accent: #115e59; --jp-cta: #0f766e; }
html.site-template-marmara :is(.jp-manage, .jp-photo-editor) { --jp-accent: #0e1c36; --jp-cta: #1a3654; }
html[class*='site-template-'] .jp-bulk-mail__body a { color: var(--jp-cta); }

/*
 * Home «Hızlı bağlantılar» bento (showcase themes): Laravel gave the six tiles six colour families
 * (blue-teal, green, violet, orange, amber, navy). Flat shades of the theme's own colour instead.
 */
html.site-template-summit { --th-tile-1: #1d4ed8; --th-tile-2: #1e40af; --th-tile-3: #1e3a8a; }
html.site-template-aurum { --th-tile-1: #162032; --th-tile-2: #24324a; --th-tile-3: #8c6a2a; }
html.site-template-anadolu { --th-tile-1: #7a2e1e; --th-tile-2: #5c1d18; --th-tile-3: #92400e; }
html.site-template-efes { --th-tile-1: #2f4a3c; --th-tile-2: #1e3329; --th-tile-3: #3d5c4a; }
html.site-template-germiyan { --th-tile-1: #0f766e; --th-tile-2: #115e59; --th-tile-3: #134e4a; }
html.site-template-marmara { --th-tile-1: #1a3654; --th-tile-2: #243e5c; --th-tile-3: #0e1c36; }
html[class*='site-template-'] :is(.og-bento__tile--a, .og-bento__tile--d) { background: var(--th-tile-1) !important; }
html[class*='site-template-'] :is(.og-bento__tile--b, .og-bento__tile--e) { background: var(--th-tile-2) !important; }
html[class*='site-template-'] :is(.og-bento__tile--c, .og-bento__tile--f) { background: var(--th-tile-3) !important; }

/*
 * aurum home: the quick-link bar (.pd-guide) is pulled 3.5rem up into the fixed-height hero, onto the
 * slide counter / progress / arrows. The controls keep clear of it (the bar stacks below the hero under 901px).
 */
@media (min-width: 901px) {
  html.site-template-aurum .pd-hero__controls {
    margin-bottom: 4.25rem;
  }
}

/*
 * No logo uploaded (owner decision 2026-10-05): the site name as text in the header, footer and
 * auth brand column — never the agency's packaged logo. The two header copies carry the logo-image
 * classes, so each theme's light / dark header rules (and its whitening filter on dark headers)
 * apply to them exactly as to the images; on a light header the name takes the theme colour.
 */
.site-header__logo--text {
  max-width: min(46vw, 300px);
  text-decoration: none;
}
.site-header__logo-text {
  display: block;
  max-width: 100%;
  color: var(--th-btn-bg, #0f172a);
  font-weight: 700;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
  overflow: hidden;
  max-height: 2.4em;
}
.site-footer__logo-text {
  display: block;
  max-width: min(100%, 340px);
  color: #fff;
  font-weight: 700;
  font-size: clamp(1.2rem, 2.2vw, 1.55rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
}
.og-auth__logo-text {
  display: block;
  max-width: 260px;
  color: #fff;
  font-weight: 700;
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  line-height: 1.2;
  overflow-wrap: anywhere;
}

/* Home blocks without their media: a slide without an image and the summit about block without
   highlight cards take the full row instead of leaving an empty column. */
.hero-slide-grid.hero-slide-grid--text {
  grid-template-columns: minmax(0, 1fr) !important;
  max-width: 56rem;
}
.og-about__grid.og-about__grid--text {
  grid-template-columns: minmax(0, 1fr) !important;
}
/* Summit participation path: four steps while abstract submission is closed. */
@media (min-width: 1025px) {
  html.site-template-summit .sm-steps .og-steps__track[data-count='4'] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/*
 * Legal pages (KVKK, gizlilik, kullanım şartları) on the showcase themes: the inner page is pulled 2rem up
 * under the hero, whose bottom wave (64px, z-index 2) then covered the top of the table of contents and the
 * text card. The legal layout starts below the wave.
 */
html.site-preset-showcase .og-page-hero + .legal-page.og-inner-page {
  padding-top: 4rem;
}
@media (max-width: 768px) {
  html.site-preset-showcase .og-page-hero + .legal-page.og-inner-page {
    padding-top: 3rem;
  }
}

/* Every theme: Laravel's Tailwind base reset (`a { color: inherit; text-decoration: inherit }`) is not loaded
   here, so footer links, the header's text site name, programme cards and the «Tüm …» buttons showed the
   browser's default underline / blue. The same reset at zero specificity: any link style of its own still wins. */
:where(body.site-body) a {
  color: inherit;
  text-decoration: inherit;
}

/* Classic themes: the inner-page hero, the about hero and the featured announcement visual were slate→teal
   gradients (site.css) — flat in each theme's own colour, like the home hero (owner: no gradients anywhere). */
html.site-template-germiyan .page-hero,
html.site-template-germiyan .about-page__hero-bg,
html.site-template-germiyan .announcement-featured__visual,
html.site-template-germiyan .home-announcements__featured-visual-bg,
html.site-template-germiyan .home-announcements__aside-card {
  background: #123a37;
}
html.site-template-marmara .page-hero,
html.site-template-marmara .about-page__hero-bg,
html.site-template-marmara .announcement-featured__visual,
html.site-template-marmara .home-announcements__featured-visual-bg,
html.site-template-marmara .home-announcements__aside-card {
  background: #13243f;
}

/* Showcase themes and Germiyan: the remaining visible colour transitions (some mixed two themes' colours, e.g.
   Anadolu navy → red, Efes navy → green) — flat in each theme's own colour (owner: no gradients, never mix the
   theme colours). Faint background glows and near-white washes stay. */
html.site-template-aurum .pd-about__dossier {
  background: #162032;
}
html.site-template-aurum .og-workshops,
html.site-template-aurum .og-footer,
html.site-template-aurum .og-footer__bg {
  background-image: none;
  background-color: #121925;
}
html.site-template-summit .og-workshops__media,
html.site-template-summit .sm-panels__media {
  background-image: none;
  background-color: #1d4ed8;
}
html.site-template-summit .og-workshops,
html.site-template-summit .og-footer {
  background-image: none;
  background-color: #0f172a;
}
html.site-template-anadolu .an-news__card:not(.an-news__card--photo) {
  background-image: none;
  background-color: #3a1a12;
}
html.site-template-anadolu .an-panels__fallback,
html.site-template-anadolu .an-workshops__media {
  background-image: none;
  background-color: #4a1f17;
}
html.site-template-efes .an-news__card:not(.an-news__card--photo) {
  background-image: none;
  background-color: #1e3329;
}
html.site-template-efes .an-panels__fallback,
html.site-template-efes .an-workshops__media,
html.site-template-efes .og-footer {
  background-image: none;
  background-color: #1e3329;
}
html.site-template-germiyan .home-dates__card--active {
  background-image: none;
  background-color: #123a37;
}
html.site-template-anadolu .an-speakers__band {
  background-image: none;
  background-color: #4a1f17;
}
html.site-template-efes .an-speakers__band {
  background-image: none;
  background-color: #1e3329;
}

/*
 * Kayıt ve ödeme (owner 2026-10-08: «geçişler renkler olmamış»): the fee summary card and the
 * registration / payment buttons in one flat theme colour. Theme sheets paint them with gradients
 * (some with !important and var() stops the harmony script cannot see), so these win by specificity.
 */
html[class] body .registration-summary {
  background: var(--th-p-deep, #0f172a) !important;
  box-shadow: 0 14px 32px color-mix(in srgb, var(--th-p-deep, #0f172a) 22%, transparent) !important;
}
html[class] body .registration-form__submit,
html[class] body .registration-page__submit,
html[class] body .payment-form__submit,
html[class] body .payment-page__submit,
html[class] body .payment-order__discount-btn {
  background: var(--th-btn-bg) !important;
  color: var(--th-btn-fg) !important;
  border-color: var(--th-btn-border) !important;
}
html[class] body .registration-form__submit:hover,
html[class] body .registration-page__submit:hover,
html[class] body .payment-form__submit:hover,
html[class] body .payment-page__submit:hover,
html[class] body .payment-order__discount-btn:hover,
html[class] body .registration-profile__link:hover {
  background: var(--th-btn-hover) !important;
  color: var(--th-btn-fg) !important;
}
html[class] body .payment-bank__card {
  background: var(--th-wash, #f8fafc) !important;
}
html[class] body .registration-form__submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none !important;
}
.registration-form__after,
.payment-page__later {
  margin: 0.75rem 0 0;
  font-size: 0.85rem;
  line-height: 1.5;
  color: var(--text-muted, #64748b);
  text-align: center;
}
.payment-page__later a {
  color: var(--th-btn-bg, currentColor);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/*
 * Footer «İletişim» (owner 2026-10-08): on inner pages home.css is not loaded, so a long address
 * squeezed the icon (flex-shrink) and the row slid. The icon keeps its size on every page and theme.
 */
.og-footer__contact-icon {
  flex: 0 0 auto !important;
}
.og-footer__contact-body {
  min-width: 0;
  flex: 1 1 auto;
}

/*
 * Owner 2026-10-08 («geçişler kötü görünüyor»): no decorative colour washes on the light pages.
 * Every theme: the blurred orbs / stripes / rings / shine behind the light sections (page header,
 * dates, committees, home blocks, sign-in), the footer glow that spilled over the page above it and
 * the contact card's grid pattern go; the contact card bar is one flat colour.
 * Ege (light page headers): the orange glow behind the page headers, the congress banner and the
 * fees / programme pages goes too — its rules use 3-class selectors, hence the repeated [class].
 * Themes with dark page headers keep their header fill (their text is white on it).
 */
html[class][class][class] body .og-page-hero__orb,
html[class][class][class] body .og-page-hero__mesh,
html[class][class][class] body .og-page-hero__shine,
html[class][class][class] body .page-dates__mesh,
html[class][class][class] body .page-dates__orb,
html[class][class][class] body .contact-page__info-bg,
html[class][class][class] body :is(.committees__orb, .committees__rings, .committees__mesh),
html[class][class][class] body :is(.og-news__orb, .og-news__mesh, .og-auth__orb, .og-auth__mesh, .sm-bento__orb, .pd-about__glow),
html[class][class][class] body :is(.home-dates__orb, .home-dates__mesh, .home-dates__rings, .home-dates__dots-float),
html[class][class][class] body :is(.home-panels__orb, .home-panels__mesh, .home-panels__rings),
html[class][class][class] body :is(.home-speakers__orb, .home-speakers__mesh, .home-workshops__orb, .home-workshops__mesh),
html[class][class][class] body :is(.og-footer__glow, .site-footer__glow) {
  display: none !important;
}
html[class][class][class] body .contact-page__info-accent {
  background: var(--th-btn-bg, #1d4ed8) !important;
}
:is(html.site-template-ege, html.site-template-kapadokya)[class][class] body :is(
  .og-page-hero, .legal-page-hero, .page-hero, .about-page__hero-bg, .abs-hero, .mp-hero--compact,
  .program-pro-hero, .program-full-online-teaser, .program-timeline__opening-hero,
  .contact-congress, .fees-page, .program-page
) {
  background-image: none !important;
}
:is(html.site-template-ege, html.site-template-kapadokya)[class][class] body .og-about-page__side-card {
  background: var(--th-wash, #f5f8f9) !important;
}

/* Ev sahibi / düzenleyen kurumlar under the hero facts (owner 2026-10-08, second look): the label
   above, each logo on a small white mark shaped like the logo (circle / box) with the name beside it. */
.site-hosts {
  display: flex;
  flex-direction: column;
  align-items: var(--site-hosts-align, center);
  gap: 0.55rem;
  margin-top: 1.2rem;
  position: relative;
  z-index: 2;
}
:is(.pd-hero__copy, .hero-slide-text) .site-hosts {
  --site-hosts-align: flex-start;
}
.site-hosts__label {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: inherit;
  opacity: 0.85;
}
.site-hosts__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--site-hosts-align, center);
  gap: 0.6rem 1.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-hosts__tile {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  color: inherit;
  text-decoration: none;
}
.site-hosts__mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 3.4rem;
  height: 3.4rem;
  padding: 0.3rem;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 4px 14px rgb(15 23 42 / 0.25);
}
.site-hosts__mark--wide {
  width: auto;
  min-width: 3.4rem;
  padding: 0.35rem 0.7rem;
  border-radius: 6px;
}
.site-hosts__img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
.site-hosts__mark--wide .site-hosts__img {
  max-width: 9rem;
  max-height: 2.6rem;
}
.site-hosts__name {
  max-width: 16rem;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.3;
  text-align: left;
}
a.site-hosts__tile:hover .site-hosts__name {
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (max-width: 640px) {
  .site-hosts__mark { width: 2.9rem; height: 2.9rem; }
  .site-hosts__name { font-size: 0.82rem; max-width: 13rem; }
}

/* Sosyal program (owner 2026-10-08): it also carries .program-page, whose -2.5rem pull came on top of
   its own wrap pull and pushed the card over the page title. One pull, as on the accommodation page. */
body .social-program-page.program-page {
  margin-top: 0;
}
body .social-program-page .social-program-page__wrap {
  margin-top: -1rem;
}

/* Slider video (owner 2026-10-08): where the visitor asks for less motion, the cover image stays alone. */
@media (prefers-reduced-motion: reduce) {
  .site-hero-video {
    display: none !important;
  }
}

/*
 * «Diğer duyurular» cards under an announcement (owner 2026-10-08): they reuse the home page news
 * card markup, but the inner pages do not load home.css, so the date box and tag ran together.
 * The same card in the theme's flat colours (a theme sheet with its own rules still wins).
 */
.og-announcement-detail__related-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.og-announcement-detail__related-card .og-news__card-accent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--th-btn-bg, #1d4ed8);
}
.og-announcement-detail__related-card .og-news__card-top {
  display: flex;
  align-items: flex-start;
  gap: 0.9rem;
  margin: 0.35rem 0 1rem;
}
.og-announcement-detail__related-card .og-news__date {
  flex-shrink: 0;
  width: 4rem;
  padding: 0.5rem 0.4rem 0.45rem;
  border-radius: 8px;
  background: var(--th-p-deep, #0f172a);
  color: #fff;
  text-align: center;
}
.og-announcement-detail__related-card .og-news__date strong {
  display: block;
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1;
}
.og-announcement-detail__related-card .og-news__date span {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.1em;
}
.og-announcement-detail__related-card .og-news__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.5rem;
  min-width: 0;
  padding-top: 0.1rem;
}
.og-announcement-detail__related-card .og-news__tag {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.55rem;
  border-radius: 4px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--th-a-deep, #1e3a8a);
  background: var(--th-wash, #eff6ff);
  border: 1px solid var(--th-soft, #dbeafe);
}
.og-announcement-detail__related-card .og-news__meta time {
  width: 100%;
  font-size: 0.75rem;
  font-weight: 600;
  color: #64748b;
}
.og-announcement-detail__related-card .og-news__body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.og-announcement-detail__related-card .og-news__read {
  align-self: flex-start;
  margin-top: auto;
}

/* Hero description (owner 2026-10-08: «biraz çok dar»): as wide as the date / venue line under it. */
html[class] body :is(.sm-hero__lead, .pd-hero__lead) {
  max-width: min(46rem, 100%) !important;
}

/* File fields on the public pages (owner 2026-10-09: the browser's bare «Dosya Seç» button): the button in
   the theme's own colours, the file name beside it. The panel uses its FilePicker component instead. */
.site-body input[type="file"]::file-selector-button,
.payment-field input[type="file"]::file-selector-button {
  margin-right: 0.75rem;
  padding: 0.45rem 0.95rem;
  border: 1px solid var(--th-btn-border, var(--th-btn-bg, #1f2937));
  border-radius: 2px;
  background: var(--th-btn-bg, #1f2937);
  color: var(--th-btn-fg, #ffffff);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.site-body input[type="file"]::file-selector-button:hover,
.payment-field input[type="file"]::file-selector-button:hover {
  background: var(--th-btn-hover, var(--th-btn-bg, #111827));
}

/* An element the page hides (inline display:none from the slide data, e.g. a slide's empty second button)
   stays hidden: the showcase themes give their buttons `display: inline-flex !important` (owner 2026-10-10,
   kongre.pdr: an orange button with only an arrow). */
html[class][class] body [style*="display:none"][style][style],
html[class][class] body [style*="display: none"][style][style] {
  display: none !important;
}

/* «Görselin tamamını göster»: the bands beside the whole picture show the same picture blurred and darkened
   (HeroFitBackdrop), behind the photo and under the theme's own shades (owner 2026-10-10). */
html[class] body .hero-fit-backdrop.hero-fit-backdrop {
  position: absolute !important;
  inset: -6% !important;
  width: 112% !important;
  height: 112% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: blur(28px) brightness(0.55) saturate(1.05) !important;
  transform: none !important;
  z-index: -1 !important;
  pointer-events: none;
}
html[class] body :has(> .hero-fit-backdrop) {
  isolation: isolate;
  overflow: hidden;
}
