/* ============================================================
   ApplyEuroLink — University Detail Styles
   ============================================================ */

/* ── 1. CSS TOKEN'LARI (Design System) ──────────────────── */
.aeu-pf {
  --pf-bg: #fff;
  --pf-bg-2: #F0F7FF;
  --pf-surface: #fff;
  --pf-ink: #04000B;
  --pf-ink-2: #666;
  --pf-line: #E5EAF2;
  --pf-primary: #1CB098;
  --pf-primary-deep: #158C79;
  --pf-primary-soft: #E4F6F2;
  --pf-primary-line: #B9E5DE;
  --pf-secondary: #05D5B3;
  --pf-dark: #0E2A47;
  --pf-yellow: #FFE824;
  --pf-yellow-ink: #4A4000;
  --pf-yellow-soft: #FFF8B8;
  --pf-red-soft: #FDE7E7;
  --pf-red-ink: #8A1E1E;
  --pf-green-soft: #E4F6F2;
  --pf-green-ink: #0F6E5E;
  --pf-shadow: 0 15px 60px -10px rgba(109,117,143,.33);
  --pf-r: 10px;
  --pf-r-btn: 7px;
  color: var(--pf-ink-2);
  font-family: "Poppins", var(--font-default, system-ui), sans-serif;
  font-size: 15px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

.aeu-pf *, .aeu-pf *::before, .aeu-pf *::after { box-sizing: border-box; }

.aeu-pf h1, .aeu-pf h2, .aeu-pf h3, .aeu-pf h4 {
  color: var(--pf-ink); font-weight: 600; line-height: 1.2; margin: 0; font-family: inherit;
}

.aeu-pf a { color: var(--pf-primary); text-decoration: none; }
.aeu-pf button { font: inherit; cursor: pointer; }
.aeu-pf select, .aeu-pf input { font: inherit; color: var(--pf-ink); margin: 0; }
.aeu-pf :focus-visible { outline: 3px solid var(--pf-secondary); outline-offset: 2px; }
.aeu-pf p { margin: 0; }



/* ── 2. BUTON STILLERI ──────────────────────────────────── */
.pf-btn {
  border: 2px solid transparent;
  border-radius: var(--pf-r-btn);
  padding: 12px 26px;
  font-weight: 500;
  font-size: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition: color .25s;
  line-height: 1.3;
  background: none;
  text-transform: none;
  letter-spacing: 0;
}
.pf-btn::after {
  content: "";
  position: absolute;
  left: -5%; top: 50%;
  height: 150px; width: 115%;
  z-index: -1;
  background: var(--pf-dark);
  transform: translateY(-45%) skew(25deg) scale(0);
  transition: transform .25s ease-in-out;
}
.pf-btn:hover::after { transform: translateY(-45%) skew(25deg) scale(1.2); }

.pf-btn-primary { background: var(--pf-primary); color: #fff; }
.pf-btn-primary:hover,
a.pf-btn-primary, a.pf-btn-primary:visited, a.pf-btn-primary:hover { color: #fff !important; }

.pf-btn-gold { background: var(--pf-secondary); color: var(--pf-dark); }
.pf-btn-gold:hover { color: #fff; }

.pf-btn-light { background: #fff; color: var(--pf-dark); }
.pf-btn-light:hover { color: #fff; }

.pf-btn-ghost { background: transparent; color: var(--pf-ink); border-color: var(--pf-line); }
.pf-btn-ghost::after { background: var(--pf-primary); }
.pf-btn-ghost:hover { color: #fff; border-color: var(--pf-primary); }

.pf-btn.xs { padding: 7px 14px; font-size: 13.5px; }

@media (prefers-reduced-motion: reduce) {
  .aeu-pf * { transition: none !important; animation: none !important; }
}

/* ── 3. IKON DUZELTMESI (Font Awesome 6) ────────────────── */
#aeu-uni [class*="fa-"],
#aeu-uni .fa, #aeu-uni .fas, #aeu-uni .far,
#aeu-uni .fa-solid, #aeu-uni .fa-regular {
  font-family: "Font Awesome 6 Free" !important;
  font-style: normal !important;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}
#aeu-uni .fa-brands, #aeu-uni .fab {
  font-family: "Font Awesome 6 Brands" !important;
  font-style: normal !important;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

/* ── 4. KONTEYNER SIFIRLAMA ──────────────────────────────── */
main > .container-fluid:has(#aeu-uni) {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
}

/* ── 5. HERO ─────────────────────────────────────────────── */
.aeu-uni { color: var(--pf-ink-2); }
.aeu-uni h1, .aeu-uni h2, .aeu-uni h3 { text-wrap: balance; }
.un-wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.un-hero { position: relative; color: #fff; min-height: 440px; display: flex; align-items: flex-end; background: var(--pf-dark); overflow: hidden; }
.un-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 40%; }
.un-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(14,42,71,.25) 0%,rgba(14,42,71,.55) 45%,rgba(10,32,56,.92) 100%); }
.un-hero .un-wrap { position: relative; z-index: 1; width: 100%; padding-top: 28px; padding-bottom: 110px; }
.un-crumb { display: flex; align-items: center; font-size: 13.5px; color: rgba(255,255,255,.75); }
.un-crumb a { color: #fff; }
.un-hero-body { margin-top: 150px; display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: end; }
.un-eyebrow { font-size: 14px; text-transform: uppercase; letter-spacing: .08em; color: var(--pf-secondary); font-weight: 500; margin-bottom: 10px; display: flex; gap: 14px; flex-wrap: wrap; text-shadow: 0 1px 10px rgba(0,0,0,.45); }
.un-eyebrow span+span::before { content: "·"; margin-right: 14px; opacity: .6; }
.un-hero h1 { color: #fff; font-size: clamp(34px,5vw,58px); margin: 0 0 14px; line-height: 1.1; }
.un-badges { display: flex; gap: 8px; flex-wrap: wrap; }
.un-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.aeu-uni a.un-video, .aeu-uni a.un-video span { color: #fff; text-shadow: 0 1px 8px rgba(0,0,0,.55); }

@media (max-width:820px) {
  .un-hero-body { grid-template-columns: 1fr; margin-top: 110px; }
  .un-hero .un-wrap { padding-bottom: 140px; }
  .un-hero::after { background: linear-gradient(180deg,rgba(10,32,56,.45) 0%,rgba(10,32,56,.78) 40%,rgba(10,32,56,.94) 100%); }
}

/* ── 6. FACTS (Kilit Bilgiler) ──────────────────────────── */
.un-facts { margin-top: -70px; position: relative; z-index: 2; }
.un-facts-card { background: var(--pf-surface); border-radius: var(--pf-r); box-shadow: var(--pf-shadow); display: grid; grid-template-columns: repeat(5,1fr); }
.un-fact { padding: 22px 24px; border-left: 1px solid var(--pf-line); text-align: center; }
.un-fact:first-child { border-left: 0; }
.un-fact small { display: flex; align-items: center; justify-content: center; font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--pf-ink-2); min-height: 2.6em; line-height: 1.3; margin-bottom: 6px; }
.un-fact b { display: block; font-size: 22px; font-weight: 600; color: var(--pf-ink); line-height: 1.15; font-variant-numeric: tabular-nums; }
.un-fact b.none { font-size: 16px; font-weight: 500; color: var(--pf-ink-2); }
.un-fact b em { display: block; font-style: normal; font-size: 13px; font-weight: 400; color: var(--pf-ink-2); margin: 2px 0 0; }
.un-fact.soon b, .un-fact.urgent b { color: var(--pf-primary-deep); }
.un-fact.urgent b em { color: var(--pf-red-ink); }
.un-fact .un-lines { font-size: 17px; line-height: 1.45; font-weight: 400; color: var(--pf-ink); }
.un-fact .un-lines b { display: inline; font-size: inherit; font-weight: 600; }
.un-fact .un-dur-lines span { display: block; font-size: 17px; line-height: 1.35; text-align: center; }
.un-program-counts span { display: block; text-align: center; line-height: 1.3; }
.un-program-counts span em { font-style: normal; font-size: 13px; font-weight: 400; color: var(--pf-ink-2); margin-left: 6px; }

@media (max-width:1000px) {
  .un-facts-card { grid-template-columns: repeat(3,1fr); }
  .un-fact:nth-child(4) { border-left: 0; }
  .un-fact { border-top: 1px solid var(--pf-line); }
  .un-fact:nth-child(-n+3) { border-top: 0; }
}
@media (max-width:600px) {
  .un-facts-card { grid-template-columns: 1fr 1fr; }
  .un-fact:nth-child(odd) { border-left: 0; }
  .un-fact:nth-child(4) { border-left: 1px solid var(--pf-line); }
  .un-fact:nth-child(-n+2) { border-top: 0; }
  .un-fact:nth-child(3) { border-top: 1px solid var(--pf-line); }
}
@media (min-width:768px) { .un-facts { margin-bottom: 34px; } }

/* ── 7. SUBNAV (Bootstrap ScrollSpy) ───────────────────── */
.un-subnav {
  position: sticky;
  top: var(--hdr-h, 110px);
  z-index: 10;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--pf-line);
  margin-top: 34px;
}
.un-subnav::after {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 1px; width: 28px;
  background: linear-gradient(to right,transparent,rgba(255,255,255,.95));
  pointer-events: none;
}
.un-subnav .un-wrap { display: flex; gap: 4px; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.un-subnav .nav-link, .un-subnav a { padding: 14px 16px; font-size: 14.5px; font-weight: 500; color: var(--pf-ink-2); border-radius: 0; border-bottom: 3px solid transparent; white-space: nowrap; background: none; }
.un-subnav .nav-link:focus, .un-subnav .nav-link:active,
.un-subnav a:focus, .un-subnav a:active { color: var(--pf-ink-2); border-color: transparent; outline: none; background: none; }
.un-subnav .nav-link.active, .un-subnav a.active { color: var(--pf-primary) !important; border-color: var(--pf-primary) !important; background: none !important; }

@media (max-width:767px) {
  .un-subnav { top: 0 !important; margin-top: 0; }
  .un-subnav::after { content: "\203A"; display: flex !important; align-items: center; justify-content: flex-end; width: 42px; padding-right: 8px; background: linear-gradient(to right,transparent 0%,rgba(255,255,255,.96) 55%); color: var(--pf-primary); font-size: 24px; font-weight: 600; }
  .un-subnav .un-wrap { display: flex !important; gap: 0 !important; overflow-x: auto !important; overscroll-behavior-x: contain; scroll-snap-type: x proximity; padding: 0 42px 0 8px; }
  .un-subnav a { flex: 0 0 auto; min-height: 48px; padding: 14px 12px; font-size: 13px; line-height: 1.2; white-space: nowrap !important; scroll-snap-align: start; }
}

/* ── 8. ANA DUZEN ────────────────────────────────────────── */
.un-layout { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 40px; padding-top: 44px; padding-bottom: 80px; }
@media (max-width:960px) { .un-layout { grid-template-columns: minmax(0,1fr); } }
.un-block { padding: 10px 0 44px; scroll-margin-top: calc(var(--hdr-h, 110px) + 65px); }
.un-block + .un-block { border-top: 1px solid var(--pf-line); padding-top: 44px; }
.un-block h2 { font-size: 28px; margin: 0 0 6px; }
.un-lead { font-size: 16px; margin: 0 0 22px; max-width: 62ch; }
.un-small { font-size: 14px; margin: 0; }
.un-prose { max-width: 66ch; }
.un-prose p { margin: 0 0 14px; }
.un-prose p:last-child { margin-bottom: 0; }
@media (max-width:767px) { .un-block { scroll-margin-top: 68px; } }

/* ── 9. PROGRAMLAR TABLOSU ──────────────────────────────── */
.un-tabs { display: flex; gap: 6px; flex-wrap: wrap; border-bottom: 1px solid var(--pf-line); margin: 0 0 14px; }
.un-tab { border: 0; background: none; padding: 10px 6px; margin-right: 14px; font-size: 16px; font-weight: 500; color: var(--pf-ink-2); border-bottom: 3px solid transparent; margin-bottom: -1px; border-radius: 0; }
.un-tab.on { color: var(--pf-primary); border-color: var(--pf-primary); }
.un-tab i:not([class*="fa"]) { font-style: normal; font-size: 12.5px; background: var(--pf-bg-2); color: var(--pf-ink-2); padding: 1px 7px; border-radius: 4px; margin-left: 6px; }
.un-tab.on i:not([class*="fa"]) { background: var(--pf-primary-soft); color: var(--pf-primary-deep); }
.un-tab i[class*="fa"] { font-size: 15px; margin-right: 6px; }
.un-search { width: 100%; height: 44px; border: 1px solid var(--pf-line); border-radius: var(--pf-r-btn); padding: 0 14px; background: var(--pf-bg-2); font: inherit; color: var(--pf-ink); margin-bottom: 12px; }
.un-tbl-wrap {
  position: relative; overflow-x: auto; -webkit-overflow-scrolling: touch;
  border: 1px solid var(--pf-line); border-radius: var(--pf-r);
  --un-tbl-shadow: rgba(14,42,71,.18);
  background:
    linear-gradient(to right,var(--pf-bg) 30%,transparent) left center/32px 100% no-repeat local,
    linear-gradient(to left,var(--pf-bg) 30%,transparent) right center/32px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%,var(--un-tbl-shadow),transparent) left center/12px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%,var(--un-tbl-shadow),transparent) right center/12px 100% no-repeat scroll;
  background-color: var(--pf-bg);
}
.un-tbl-wrap table { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 620px; margin: 0; }
.un-tbl-wrap th { text-align: left; font-weight: 500; font-size: 12.5px; text-transform: uppercase; letter-spacing: .05em; color: var(--pf-ink-2); padding: 11px 14px; background: var(--pf-bg-2); border: 1px solid var(--pf-line); }
.un-tbl-wrap td { padding: 13px 14px; border: 1px solid var(--pf-line); vertical-align: middle; background: none; }
.un-tbl-wrap tr:last-child td { border-bottom: 0; }
.un-tbl-wrap td.name { font-weight: 500; color: var(--pf-ink); }
.un-tbl-wrap td.fee { font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--pf-ink); font-weight: 500; }
.un-tbl-wrap td.act, .un-tbl-wrap th:last-child { text-align: center; white-space: nowrap; }
.un-tbl-wrap td.act .un-link { display: inline-block; margin: 0 auto; }
.un-tbl-wrap tr.hidden { display: none; }
.un-link { border: 0; background: none; color: var(--pf-primary); font-weight: 500; padding: 0; font-size: inherit; }
.un-link:hover { color: var(--pf-primary-deep); text-decoration: underline; }
.un-callout { display: block; background: var(--pf-primary-soft); border-left: 4px solid var(--pf-primary); border-radius: var(--pf-r-btn); padding: 14px 18px; margin-top: 16px; font-size: 14.5px; color: var(--pf-green-ink); }
.un-callout b { color: var(--pf-green-ink); font-weight: 600; }
.un-callout ul { margin: 6px 0 0; padding-left: 18px; }
.un-callout li { margin: 0; }

/* ── 10. KAMPUS / MEDYA ──────────────────────────────────── */
.un-media { display: grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap: 14px; }
.un-media img { width: 100%; height: 240px; object-fit: cover; border-radius: var(--pf-r); display: block; }
.un-video { position: relative; border-radius: var(--pf-r); overflow: hidden; background: var(--pf-dark); display: flex; align-items: center; justify-content: center; min-height: 240px; color: #fff; text-align: center; padding: 20px; }
.un-video img { position: absolute; inset: 0; opacity: .45; height: 100%; }
.un-video span { position: relative; z-index: 1; display: grid; gap: 8px; justify-items: center; font-weight: 500; }
.un-video i { width: 58px; height: 58px; border-radius: 50%; background: #fff; color: var(--pf-primary); box-shadow: 0 4px 14px rgba(0,0,0,.25); display: grid; place-items: center; font-style: normal; font-size: 22px; }
.un-links { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.un-links a { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--pf-line); border-radius: 999px; padding: 7px 14px; font-size: 14px; color: var(--pf-ink); font-weight: 500; }
.un-links a:hover { border-color: var(--pf-primary); color: var(--pf-primary); }

/* ── 11. SSS (Bootstrap Accordion) ──────────────────────── */
#faqAccordion .accordion-item { border: 1px solid var(--pf-line, #E5E7EB); border-radius: 8px; background: var(--pf-surface, #fff); box-shadow: 0 1px 3px rgba(0,0,0,0.03); }
#faqAccordion .accordion-header { margin: 0; }
#faqAccordion .accordion-button { font-size: 14.5px; font-weight: 500; padding: 11px 16px; color: var(--pf-ink, #04000B); background-color: var(--pf-surface, #fff); border-radius: 8px !important; box-shadow: none; gap: 12px; }
#faqAccordion .accordion-button:not(.collapsed) { color: var(--pf-primary-deep, #158C79); background-color: var(--pf-primary-soft, #E4F6F2); border-bottom-left-radius: 0 !important; border-bottom-right-radius: 0 !important; }
#faqAccordion .accordion-button::after { width: 13px; height: 13px; background-size: 13px; margin-left: auto; flex-shrink: 0; }
#faqAccordion .accordion-button:focus { box-shadow: 0 0 0 2px rgba(28,176,152,0.25); border-color: var(--pf-primary-line, #B9E5DE); }
#faqAccordion .accordion-body { padding: 12px 16px 14px; font-size: 13.5px; line-height: 1.55; color: var(--pf-ink-2, #4B5563); background: var(--pf-surface, #fff); border-top: 1px solid rgba(0,0,0,0.04); }

/* ── 12. YAN PANEL (SIDEBAR) ─────────────────────────────── */
.un-side { position: sticky; top: 70px; align-self: start; display: grid; gap: 16px; }
@media (max-width:960px) { .un-side { position: static; } }
.un-cta { background: var(--pf-dark); color: #fff; border-radius: var(--pf-r); padding: 26px; position: relative; overflow: hidden; box-shadow: var(--pf-shadow); }
.un-cta::before { content: ""; position: absolute; inset: 0; background: radial-gradient(300px 220px at 100% 0%,rgba(28,176,152,.5),transparent 70%); }
.un-cta > * { position: relative; }
.un-cta h3 { color: #fff; font-size: 21px; margin: 0 0 6px; }
.un-cta p { font-size: 14.5px; color: rgba(255,255,255,.78); margin: 0 0 18px; }
.un-cta .pf-btn { width: 100%; margin-bottom: 10px; }
.un-cta .alt { font-size: 13.5px; color: rgba(255,255,255,.7); text-align: center; margin: 0; }
.un-cta .alt a { color: #fff; text-decoration: underline; }
.un-advisor { background: var(--pf-surface); border: 1px solid var(--pf-line); border-radius: var(--pf-r); padding: 18px 20px; display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: center; }
.un-advisor > i:first-child, .un-advisor .un-advisor-avatar { width: 48px; height: 48px; border-radius: 50%; background: var(--pf-primary-soft); color: var(--pf-primary-deep); display: grid; place-items: center; font-style: normal; font-weight: 600; }
.un-advisor b { display: block; color: var(--pf-ink); font-weight: 600; }
.un-advisor span { font-size: 13.5px; }
.un-advisor a { grid-column: 1/-1; font-size: 14px; font-weight: 500; display: inline-flex; align-items: center; gap: 6px; }
.un-advisor a i { width: auto !important; height: auto !important; border-radius: 0 !important; background: none !important; display: inline-block !important; font-size: 17px !important; }

/* ── 13. PORTAL USTU OZEL AYARLAR ───────────────────────── */
/* Hemen Basvur butonu: yazı rengi koyu */
#aeu-uni .pf-btn-gold, #aeu-uni a.pf-btn-gold, #aeu-uni a.pf-btn-gold:visited {
  background: var(--pf-secondary); color: #04000B !important; font-weight: 600;
}
#aeu-uni .pf-btn-gold:hover, #aeu-uni a.pf-btn-gold:hover { color: #fff !important; }

/* AEL Signature badge contrast */
.aeu-uni .un-badges .un-badge.sig, .aeu-uni .un-rel .un-badge.sig {
  background: #FFE824 !important; color: #2F2800 !important;
  -webkit-text-fill-color: #2F2800 !important; text-shadow: none !important; opacity: 1 !important;
}

/* Son Basvuru Tarihleri — WhatsApp linki */
#aeu-uni .un-fact-wa-link { display: inline-flex; align-items: center; justify-content: center; gap: 6px; font-size: 15px !important; font-weight: 600; color: var(--pf-ink, #04000B) !important; text-decoration: none !important; transition: color 0.2s ease, transform 0.2s ease; line-height: 1.3; }
#aeu-uni .un-fact-wa-link i { color: #25D366; font-size: 19px; transition: transform 0.2s ease; }
#aeu-uni .un-fact-wa-link:hover { color: #158C79 !important; transform: translateY(-1px); }
#aeu-uni .un-fact-wa-link:hover i { transform: scale(1.15); }

/* Sticky portal header offset */
#aeu-uni .un-subnav { top: var(--hdr-h, 110px); margin-top: 0; }
@media (max-width:767px) { #aeu-uni .un-subnav { top: var(--hdr-h, 110px) !important; } }
