/* Managed course layout: normalized .tct-* blocks inside .tbs-course-blueprint. Scoped, layer-matched. */
@layer tbs-interior-presentation.course-blueprint {
  .tbs-course-blueprint .tcb-main .tct-english-apply > h2 { margin:0 0 20px !important; }
  .tbs-course-blueprint .tcb-main .tct-english-apply > h3 { font-size:21px !important; line-height:1.3 !important; margin:0 0 14px !important; }
  .tbs-course-blueprint .tcb-main .tct-application-actions { display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:12px !important; margin:24px 0 0 !important; }
  .tbs-course-blueprint .tcb-main a.tct-application-action { display:flex !important; align-items:center !important; justify-content:space-between !important; gap:18px !important; width:100% !important; min-height:64px !important; padding:18px 20px !important; background:var(--sand) !important; border:1px solid var(--line) !important; border-radius:12px !important; color:var(--ink) !important; font-family:"Archivo",system-ui,sans-serif !important; font-size:16px !important; font-weight:650 !important; line-height:1.4 !important; text-decoration:none !important; white-space:normal !important; overflow-wrap:break-word !important; transition:border-color .15s,background-color .15s; }
  .tbs-course-blueprint .tcb-main a.tct-application-action::after { content:"↗"; flex:0 0 auto; color:var(--ink); font-size:22px; }
  .tbs-course-blueprint .tcb-main a.tct-application-action:hover { background:var(--gold-soft) !important; border-color:var(--gold) !important; }
  .tbs-course-blueprint .tcb-main a.tct-application-action:focus-visible { outline:2px solid var(--gold) !important; outline-offset:3px !important; }
  .tbs-course-blueprint[data-course-variant="english"] .tcb-main .tct-section { scroll-margin-top:88px !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview > h2 { margin:0 0 20px !important; line-height:1.2 !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview > h3 { margin:32px 0 16px !important; font-size:22px !important; line-height:1.3 !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview .tct-levels { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:12px !important; margin:0 !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview .tct-levels > li { display:flex !important; align-items:center !important; min-height:88px !important; padding:20px 16px !important; margin:0 !important; background:var(--sand) !important; border:1px solid var(--line) !important; border-top:3px solid var(--gold) !important; border-radius:12px !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview .tct-levels > li strong { margin:0 !important; font-size:16px !important; line-height:1.4 !important; color:var(--ink) !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview ul.tct-english-skills { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:12px !important; margin:0 !important; padding:0 !important; list-style:none !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview ul.tct-english-skills > li { display:flex !important; align-items:center !important; gap:12px !important; min-height:72px !important; padding:16px !important; margin:0 !important; background:#fff !important; border:1px solid var(--line) !important; border-radius:12px !important; font-size:15px !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview ul.tct-english-skills > li::before { display:none !important; }
  .tbs-course-blueprint .tcb-main .tct-english-overview .tct-skill-mark { display:grid !important; place-items:center !important; flex:0 0 28px !important; width:28px !important; height:28px !important; background:var(--gold-soft) !important; color:var(--ink) !important; border-radius:50% !important; font-size:15px !important; }
  @media(max-width:640px) {
    .tbs-course-blueprint .tcb-main .tct-english-overview :is(.tct-levels,ul.tct-english-skills) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .tbs-course-blueprint .tcb-main .tct-english-overview ul.tct-english-skills > li { gap:8px !important; padding:12px !important; font-size:13px !important; }
    .tbs-course-blueprint .tcb-main .tct-english-overview .tct-levels > li { padding:14px 12px !important; }
  }
  .tbs-course-blueprint .tcb-main .tct-grid { grid-auto-rows:1fr !important; align-items:stretch !important; }
  .tbs-course-blueprint .tcb-main .tct-section > .tct-media { margin:0 0 24px !important; border-radius:14px !important; overflow:hidden !important; aspect-ratio:16/9 !important; }
  .tbs-course-blueprint .tcb-main .tct-section > .tct-media img { display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; }
  .tbs-course-blueprint .tcb-main .tct-icon { margin:0 0 20px !important; height:48px !important; width:48px !important; }
  .tbs-course-blueprint .tcb-main .tct-icon img { height:48px !important; width:48px !important; object-fit:contain !important; }
  .tbs-course-blueprint .tcb-main .tct-code { color:var(--gold-text) !important; font:600 13px/1.5 "Archivo",sans-serif !important; margin:0 0 18px !important; }
  .tbs-course-blueprint .tcb-main .tct-prose :is(p,li,span,a) { background:transparent !important; font-family:inherit !important; }
  .tbs-course-blueprint .tcb-main .tct-prose .elementor-icon-list-items { display:block !important; }
  .tbs-course-blueprint .tcb-main .tct-prose .elementor-icon-list-item { white-space:normal !important; }
  .tbs-course-blueprint .tcb-main .tct-prose .elementor-icon-list-icon { display:none !important; }
  .tbs-course-blueprint .tct-hero-photo { margin:0 !important; border-radius:18px !important; overflow:hidden !important; }
  .tbs-course-blueprint .tct-hero-photo img { display:block !important; width:100% !important; height:360px !important; object-fit:cover !important; }
  .tbs-course-blueprint.tct-study-area .tcb-hero-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) !important; align-items:center !important; }
  .tbs-course-blueprint .tcb-main .tct-controls { min-width:0 !important; width:100% !important; overflow-wrap:break-word !important; }
  .tbs-course-blueprint .tcb-main .tct-controls > .elementor-widget { width:100% !important; max-width:100% !important; margin:0 !important; }
  .tbs-course-blueprint .tcb-main .tct-controls > .elementor-widget > .elementor-widget-container { padding:0 !important; margin:0 !important; }
  .tbs-course-blueprint .tcb-facts small { display:block !important; margin-top:5px !important; color:#b4c0d3 !important; font:400 13px/1.5 "Archivo",sans-serif !important; }
  @media (max-width:980px) {
    .tbs-course-blueprint .tcb-layout { grid-template-columns:minmax(0,1fr) !important; }
    .tbs-course-blueprint .tcb-hero-grid,.tbs-course-blueprint.tct-study-area .tcb-hero-grid { grid-template-columns:minmax(0,1fr) !important; }
    .tbs-course-blueprint .tcb-aside-inner { position:static !important; }
  }
  .tbs-course-blueprint .tcb-main .tct-section { display:block !important; width:100% !important; max-width:100% !important; min-width:0 !important; margin:0 0 56px !important; padding:0 0 56px !important; border:0 !important; border-bottom:1px solid var(--line) !important; background:#fff !important; box-shadow:none !important; }
  .tbs-course-blueprint .tcb-main .tct-section:last-child { border-bottom:0 !important; margin-bottom:0 !important; padding-bottom:0 !important; }
  .tbs-course-blueprint .tcb-main .tct-section > h2 { margin:0 0 20px !important; color:var(--ink) !important; font:800 34px/1.15 "Archivo",sans-serif !important; letter-spacing:-.025em !important; text-transform:none !important; text-align:left !important; }
  .tbs-course-blueprint .tcb-main .tct-prose, .tbs-course-blueprint .tcb-main .tct-section > :is(p,ul,ol) { max-width:720px !important; color:var(--ink-2) !important; font:400 17px/1.65 "Archivo",sans-serif !important; text-align:left !important; }
  .tbs-course-blueprint .tcb-main .tct-section :is(p) { margin:0 0 16px; }
  .tbs-course-blueprint .tcb-main .tct-section :is(p):last-child { margin-bottom:0; }
  .tbs-course-blueprint .tcb-main .tct-section a:not(.tcb-button):not(.tct-btn) { color:var(--gold-text) !important; font-weight:600; overflow-wrap:anywhere; }
  .tbs-course-blueprint .tcb-main .tct-section :is(ul,ol):not(.tct-pill-list):not(.tct-levels):not(.tct-english-skills) { list-style:none !important; padding:0 !important; margin:0 0 16px !important; display:grid; gap:10px; }
  .tbs-course-blueprint .tcb-main .tct-section :is(ul,ol):not(.tct-pill-list):not(.tct-levels):not(.tct-english-skills) > li { position:relative; padding-left:30px !important; color:var(--ink-2); margin:0; }
  .tbs-course-blueprint .tcb-main .tct-section :is(ul,ol):not(.tct-pill-list):not(.tct-levels):not(.tct-english-skills) > li::before { content:""; position:absolute; left:0; top:7px; width:18px; height:18px; border-radius:50%; background:var(--gold-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A5A12' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat; }

  /* Grids */
  .tbs-course-blueprint .tcb-main .tct-grid { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important; gap:20px !important; align-items:stretch !important; width:100% !important; max-width:100% !important; margin:0 !important; padding:0 !important; list-style:none !important; }
  .tbs-course-blueprint .tcb-main .tct-section > :is(p,.tct-prose) + .tct-grid { margin-top:24px !important; }
  @media (min-width:1101px) { .tbs-course-blueprint .tcb-main .tct-grid.tct-grid--3 { grid-template-columns:repeat(3,minmax(0,1fr)) !important; } }
  @media (min-width:721px) and (max-width:1100px) { .tbs-course-blueprint .tcb-main .tct-grid.tct-grid--3 { grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)) !important; } }

  /* Cards */
  .tbs-course-blueprint .tcb-main .tct-card { display:flex !important; flex-direction:column !important; width:100% !important; max-width:none !important; min-width:0 !important; height:100% !important; margin:0 !important; padding:24px !important; background:#fff !important; border:1px solid var(--line) !important; border-radius:12px !important; box-shadow:none !important; overflow:hidden; transition:border-color .15s, transform .15s; }
  .tbs-course-blueprint .tcb-main .tct-card:hover { border-color:var(--gold) !important; }
  .tbs-course-blueprint .tcb-main .tct-card > h3 { margin:0 0 10px !important; font:700 21px/1.25 "Archivo",sans-serif !important; letter-spacing:-.01em !important; color:var(--ink) !important; overflow-wrap:break-word; }
  .tbs-course-blueprint .tcb-main .tct-card p { margin:0 0 12px !important; font-size:15.5px !important; line-height:1.55 !important; color:var(--muted) !important; }
  .tbs-course-blueprint .tcb-main .tct-card :is(ul,ol) { margin:0 0 12px !important; font-size:15.5px; }
  .tbs-course-blueprint .tcb-main .tct-media { margin:-24px -24px 20px !important; padding:0 !important; aspect-ratio:3/2; background:var(--sand); overflow:hidden; border-radius:0 !important; }
  .tbs-course-blueprint .tcb-main .tct-media img { display:block !important; width:100% !important; height:100% !important; max-width:none !important; object-fit:cover !important; object-position:center !important; border-radius:0 !important; margin:0 !important; }
  .tbs-course-blueprint .tcb-main .tct-image-link { display:block; width:100%; height:100%; }
  .tbs-course-blueprint .tcb-main .tct-actions { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr)); gap:10px; margin:auto 0 0 !important; padding-top:14px; width:100%; }
  .tbs-course-blueprint .tcb-main .tct-actions > :is(a,button) { display:inline-flex !important; align-items:center; justify-content:center; text-align:center; min-height:46px; padding:10px 18px; width:100%; border-radius:999px; border:1.5px solid var(--ink); background:var(--ink); color:#fff !important; font:600 15px/1.2 "Archivo",sans-serif; text-decoration:none !important; white-space:normal; overflow-wrap:normal; word-break:normal; hyphens:none; transition:background .15s,color .15s; }
  .tbs-course-blueprint .tcb-main .tct-actions > :is(a,button):hover { background:#0f2c5e; }
  .tbs-course-blueprint .tcb-main .tct-actions > :is(a,button):nth-child(n+2) { background:transparent; color:var(--ink) !important; }
  .tbs-course-blueprint .tcb-main .tct-actions > :is(a,button):nth-child(n+2):hover { background:var(--ink); color:#fff !important; }

  /* Featured: single full-width horizontal card */
  .tbs-course-blueprint .tcb-main .tct-grid.tct-grid--feature { grid-template-columns:minmax(0,1fr) !important; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card { display:grid !important; grid-template-columns:minmax(0,5fr) minmax(0,7fr) !important; grid-auto-rows:min-content; column-gap:36px; align-content:center; padding:0 !important; height:auto !important; width:100% !important; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > .tct-media { grid-column:1; grid-row:1 / span 20; margin:0 !important; aspect-ratio:auto; height:100%; min-height:300px; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > :not(.tct-media) { grid-column:2; margin-right:32px !important; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > h3 { margin-top:32px !important; font-size:26px !important; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > :last-child { margin-bottom:32px !important; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card:not(:has(.tct-media)) { display:flex !important; padding:32px !important; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card:not(:has(.tct-media)) > * { margin-right:0 !important; margin-top:0; }
  .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card:not(:has(.tct-media)) > :last-child { margin-bottom:0 !important; }

  /* Download card */
  .tbs-course-blueprint .tcb-main .tct-card--course { background:var(--sand) !important; border-color:var(--sand) !important; }
  .tbs-course-blueprint .tcb-main .tct-card--course .tct-media { margin-bottom:20px !important; }

  /* Dark card */
  .tbs-course-blueprint .tct-card--dark { background:var(--night) !important; border-color:var(--night) !important; color:#fff !important; }
  .tbs-course-blueprint .tct-card--dark > h3, .tbs-course-blueprint .tct-card--dark :is(h2,h3) { color:#fff !important; }
  .tbs-course-blueprint .tct-card--dark :is(p,li,small) { color:#b4c0d3 !important; }
  .tbs-course-blueprint .tct-card--dark a:not(.tcb-button) { color:#fbb040 !important; }
  .tbs-course-blueprint .tct-card--dark .tct-actions > a:first-child { background:#f7941d; border-color:#f7941d; color:var(--ink) !important; }
  .tbs-course-blueprint .tct-card--dark .tct-actions > a:nth-child(n+2) { background:transparent; border-color:rgba(255,255,255,.45); color:#fff !important; }

  /* English pills and levels */
  .tbs-course-blueprint .tcb-main .tct-pill-list { display:flex !important; flex-wrap:wrap; gap:10px; list-style:none !important; margin:0 0 16px !important; padding:0 !important; }
  .tbs-course-blueprint .tcb-main .tct-pill-list > li { display:inline-flex; align-items:center; min-height:40px; padding:0 16px !important; border:1px solid var(--line); border-radius:999px; background:#fff; font:600 15px/1.2 "Archivo",sans-serif; color:var(--ink); }
  .tbs-course-blueprint .tcb-main .tct-pill-list > li::before { display:none !important; }
  .tbs-course-blueprint .tcb-main .tct-levels { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:16px; list-style:none !important; margin:0 !important; padding:0 !important; counter-reset:lvl; }
  .tbs-course-blueprint .tcb-main .tct-levels > li { position:relative; padding:18px 0 0 !important; border-top:3px solid var(--gold); counter-increment:lvl; color:var(--muted); font-size:15px; line-height:1.5; }
  .tbs-course-blueprint .tcb-main .tct-levels > li::before { display:none !important; }
  .tbs-course-blueprint .tcb-main .tct-levels :is(strong,b,h3) { display:block; margin:0 0 4px; font:700 18px/1.25 "Archivo",sans-serif; color:var(--ink) !important; }

  /* Native accordion controls remain untouched */
  .tbs-course-blueprint .tcb-main .tct-controls { max-width:100%; }

  @media (max-width:900px) {
    .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card { display:flex !important; }
    .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > .tct-media { height:auto; min-height:0; aspect-ratio:3/2; }
    .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > :not(.tct-media) { margin-left:24px !important; margin-right:24px !important; }
    .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > .tct-media { margin:0 0 20px !important; }
    .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > h3 { margin-top:0 !important; font-size:22px !important; }
    .tbs-course-blueprint .tcb-main .tct-grid--feature > .tct-card > :last-child { margin-bottom:24px !important; }
  }
  @media (max-width:720px) {
    .tbs-course-blueprint .tcb-main .tct-section { margin-bottom:40px !important; padding-bottom:40px !important; }
    .tbs-course-blueprint .tcb-main .tct-section > h2 { font-size:28px !important; }
    .tbs-course-blueprint .tcb-main .tct-card { padding:20px !important; }
    .tbs-course-blueprint .tcb-main .tct-media { margin:-20px -20px 18px !important; }
    .tbs-course-blueprint .tcb-main .tct-actions { grid-template-columns:1fr; }
  }
  @media (prefers-reduced-motion:reduce) { .tbs-course-blueprint .tcb-main .tct-card, .tbs-course-blueprint .tcb-main .tct-actions > * { transition:none; } }
}
