/* 8.6.7 — precise layout improvements; no changes to saved course copy. */
.scc-v8-compact .scc7-hero__checks {
  display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem;
  width: 100%; margin-top: 1rem; padding: 0;
}
.scc-v8-compact .scc7-hero__checks li { display: flex; align-items: flex-start; gap: .35rem; font-size: .7rem; line-height: 1.45; }
.scc-v8-compact .scc7-hero__checks .scc-icon { flex: 0 0 .85rem; margin-top: .12rem; }
/* The badges occupy distinct grid cells, not overlapping absolute positions. */
.scc-v8-compact .scc7-hero__visual {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  grid-template-rows: auto minmax(8rem,1fr) auto; gap: .7rem; padding: .85rem;
}
.scc-v8-compact .scc7-hero__visual > .scc7-float-card {
  position: relative; inset: auto; display: flex; align-items: center; gap: .55rem;
  min-width: 0; width: auto; max-width: none; margin: 0; padding: .65rem .75rem;
  z-index: 2; transform: none; background: rgba(255,255,255,.97);
}
.scc-v8-compact .scc7-hero__visual > .scc7-float-card--programs { grid-column: 1; grid-row: 1; }
.scc-v8-compact .scc7-hero__visual > .scc7-float-card--campus { grid-column: 2; grid-row: 1; }
.scc-v8-compact .scc7-hero__visual > .scc7-float-card--course {
  grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: minmax(0,1fr) 1rem;
  gap: .3rem .65rem; border-left: 3px solid #cf8798;
}
.scc-v8-compact .scc7-hero__visual .scc7-float-card > div { min-width: 0; }
.scc-v8-compact .scc7-hero__visual .scc7-float-card strong { white-space: normal; font-size: .85rem; line-height: 1.35; }
.scc-v8-compact .scc7-hero__visual .scc7-float-card > div > span { font-size: .7rem; line-height: 1.4; }
.scc-v8-compact .scc7-hero__visual .scc7-float-card__icon { width: 2.1rem; height: 2.1rem; flex: 0 0 2.1rem; }
.scc-v8-compact .scc7-hero__visual .scc7-float-card--course > span { grid-column: 1; font-size: .61rem; }
.scc-v8-compact .scc7-hero__visual .scc7-float-card--course strong { grid-column: 1; padding: 0; font-family: var(--scc-font-body); -webkit-line-clamp: 2; }
.scc-v8-compact .scc7-hero__visual .scc7-float-card--course > .scc-icon { position: static; grid-column: 2; grid-row: 1 / 3; align-self: center; }
/* A full-width reading surface replaces the inherited narrow content column. */
body.scc-template-edition.single-product div.product .woocommerce-tabs { margin-top: 2rem; }
body.scc-template-edition.single-product div.product .woocommerce-tabs > ul.tabs {
  display: flex; justify-content: flex-start; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0 0 .8rem; text-align: left;
}
body.scc-template-edition.single-product div.product .woocommerce-tabs > ul.tabs li { margin: 0; }
body.scc-template-edition.single-product div.product .woocommerce-tabs > ul.tabs a { padding: .7rem 1rem; text-align: left; }
body.scc-template-edition.single-product .woocommerce-tabs > article { width: 100%; max-width: none; }
body.scc-template-edition.single-product #tab-description {
  position: relative; width: 100%; max-width: none; padding: clamp(1rem,2.8vw,2.2rem);
  border: 1px solid #cce5e2; border-top: 4px solid #3dc2b4; border-radius: 1rem;
  background: linear-gradient(130deg,#f1fcf9 0%,#fff 30%,#fff 80%,#fff4f7 100%);
  box-shadow: 0 8px 28px rgba(32,86,96,.07); color: #304e5a;
}
body.scc-template-edition.single-product #tab-description :where(p,ul,ol,h2,h3,h4,blockquote,table,.wp-block-table) {
  max-width: none !important; margin-inline: 0 !important; text-align: left;
}
body.scc-template-edition.single-product #tab-description > p { font-size: .97rem; line-height: 1.8; margin-block: 1.1rem; }
body.scc-template-edition.single-product #tab-description > p:first-of-type { padding-left: 1rem; border-left: 3px solid #cf8798; color: #254d5b; }
body.scc-template-edition.single-product #tab-description > :last-child { margin-bottom: 0; }
body.scc-template-edition.single-product #tab-description > :where(ul,ol) {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem;
  padding: 0; margin-block: 1.3rem; list-style-position: inside;
}
body.scc-template-edition.single-product #tab-description > :where(ul,ol) > li {
  position: relative; min-width: 0; margin: 0; padding: 1rem 1rem 1rem 2.7rem;
  border: 1px solid #d3e7e5; border-radius: .7rem; background: #fff;
  line-height: 1.7; font-size: .92rem; transition: border-color .18s ease, box-shadow .18s ease;
}
body.scc-template-edition.single-product #tab-description > ul { list-style-position: outside; }
body.scc-template-edition.single-product #tab-description > ul > li::marker { color: transparent; font-size: 0; }
body.scc-template-edition.single-product #tab-description > ul > li::before {
  content: ''; position: absolute; top: 1.15rem; left: .9rem; width: 1.05rem; height: 1.05rem;
  border-radius: .3rem; background: #e0f6ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23087768' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E") center / .9rem no-repeat;
}
body.scc-template-edition.single-product #tab-description > :where(ul,ol) > li:nth-child(even) { border-color: #ecd4df; background-color: #fffafb; }
body.scc-template-edition.single-product #tab-description > :where(ul,ol) > li:last-child:nth-child(odd) { grid-column: 1 / -1; }
body.scc-template-edition.single-product #tab-description li > p { margin-block: 0; }
body.scc-template-edition.single-product #tab-description > :where(ul,ol) > li strong { color: #176b64; }
body.scc-template-edition.single-product #tab-description > :where(ul,ol) > li:hover { border-color: #36b7a9; box-shadow: 0 4px 14px rgba(27,120,111,.09); }
body.scc-template-edition.single-product #tab-description a { text-decoration: underline; text-underline-offset: .2em; }
/* Warmer account surfaces and explicit contrast instead of dark-on-dark. */
body.scc-v8-compact.woocommerce-account { background: #f4fcf9; }
body.scc-v8-compact.woocommerce-account .scc-page-hero {
  background: linear-gradient(115deg,#dff8ef,#f5fcff 65%,#ffeaf2); color: #234f5c; border-bottom: 1px solid #c9e6dd;
}
body.scc-v8-compact.woocommerce-account .scc-page-hero :where(h1,h2,.scc-page-lead) { color: #234f5c !important; text-shadow: none; }
body.scc-v8-compact.woocommerce-account .scc-page-hero :where(.scc-breadcrumbs,.scc-kicker) { color: #276e67; }
body.scc-v8-compact.woocommerce-account .scc-page-hero__orb { opacity: .22; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation { background: #fff; border: 1px solid #c5e6dc; padding: .65rem; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation li { border: 0; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: flex; justify-content: flex-start; text-align: left; gap: .55rem; min-height: 46px;
  color: #234f5c; background: #f0faf7; border: 1px solid transparent;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation li:nth-child(even) a { background: #fff4f8; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: #08796d; color: #fff; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation a:hover { border-color: #34b7a6; }
/* Inline SVG masks keep account icons readable without an icon-font download. */
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
  content: ''; display: block; flex: 0 0 1.1rem; width: 1.1rem; height: 1.1rem; margin: 0;
  background: currentColor; -webkit-mask: var(--scc-account-icon) center / contain no-repeat;
  mask: var(--scc-account-icon) center / contain no-repeat;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation li {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8l4 4v14H6ZM14 3v5h4M9 12h6M9 16h6'/%3E%3C/svg%3E");
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Cpath d='M3 3h7v7H3ZM14 3h7v7h-7ZM3 14h7v7H3ZM14 14h7v7h-7Z'/%3E%3C/svg%3E") !important;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation-link--orders {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16v15H4ZM4 6l3-3h10l3 3M8 10a4 4 0 0 0 8 0'/%3E%3C/svg%3E") !important;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12m-5-5 5 5 5-5M5 17v4h14v-4'/%3E%3C/svg%3E") !important;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 11 9-8 9 8M5 10v10h14V10M9 20v-6h6v6'/%3E%3C/svg%3E") !important;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c.7-4 3-6 7-6s6.3 2 7 6'/%3E%3C/svg%3E") !important;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout {
  --scc-account-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 3H4v18h6M9 12h12m-5-5 5 5-5 5'/%3E%3C/svg%3E") !important;
}
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-content { background: #fff; border-color: #c5e6dc; }
body.scc-v8-compact.woocommerce-account .scc-account-campus {
  background: linear-gradient(115deg,#e1f9f0,#f5fcff 70%,#fff3dd); color: #254f59;
  border: 1px solid #abdccc; border-top: 4px solid #2db99f; box-shadow: none;
}
body.scc-v8-compact.woocommerce-account .scc-account-campus :where(h2,h3,p,small,.scc-icon) { color: #254f59; }
body.scc-v8-compact.woocommerce-account .scc-account-campus > div:first-child { position: relative; }
body.scc-v8-compact.woocommerce-account .scc-account-campus > div:first-child > .scc-icon { position: absolute; left: 0; top: .3rem; color: #08796d; }
body.scc-v8-compact.woocommerce-account .scc-account-campus h2 { margin: 0 0 .7rem; padding-left: 1.8rem; font-size: 1.65rem; }
body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button-row { justify-content: flex-start; gap: .65rem; }
body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button {
  background: #fff; color: #175b62; border: 1px solid #9ecfca; border-radius: .65rem; min-height: 44px; padding-inline: 1rem;
}
body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button .scc-icon { color: inherit; }
body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button:first-child { background: #08796d; color: #fff; border-color: #08796d; }
body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button:last-child { background: #a94468; color: #fff; border-color: #a94468; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-content table { width: 100%; border-color: #c8e4df; }
body.scc-v8-compact.woocommerce-account .woocommerce-MyAccount-content :where(th,td) { text-align: left; padding: .8rem 1rem; vertical-align: top; }
body.scc-v8-compact.woocommerce-account .no-enrolled-courses { padding: 1.25rem; border: 1px solid #b9e3d8; border-left: 4px solid #2db99f; border-radius: .8rem; background: #f0fcf7; }
body.scc-v8-compact.woocommerce-account .no-enrolled-courses h3 { margin: 0; color: #24584e; font-size: 1.25rem; line-height: 1.45; }
body.scc-v8-compact.woocommerce-account .product-container .product-row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin: 0; }
body.scc-v8-compact.woocommerce-account .product-container .product-row > .product-item { width: 100%; max-width: none; margin: 0; padding: .85rem; border: 1px solid #c8e4df; border-radius: .85rem; background: #f7fdfb; }
body.scc-v8-compact.woocommerce-account .product-container .moodle-course-access { display: inline-flex; min-height: 44px; padding: .7rem 1rem; background: #08796d; color: #fff; }
@media (max-width:1080px) {
  .scc-v8-compact .scc7-primary-nav .scc7-primary-menu {
    width: 100%; max-width: none; grid-template-columns: minmax(0,1fr); justify-content: stretch; justify-items: stretch;
  }
  .scc-v8-compact .scc7-primary-nav .scc7-primary-menu > li { width: 100%; }
  .scc-v8-compact .scc7-primary-nav .scc7-primary-menu > li > a {
    display: flex; width: 100%; max-width: none; justify-content: flex-start; text-align: left; gap: .55rem;
  }
  .scc-v8-compact .scc7-primary-menu > li > a > .scc7-nav-item__icon { flex: 0 0 1.15rem; margin: 0; }
  .scc-v8-compact .scc7-primary-menu > li > a > span { flex: 0 1 auto; margin: 0; text-align: left; }
  .scc-v8-compact .scc7-primary-menu > li > a > .scc7-nav-item__chevron {
    display: block; flex: 0 0 .85rem; width: .85rem; height: .85rem; margin-left: auto; transition: transform .18s ease;
  }
  .scc-v8-compact .scc7-primary-menu > li > a[aria-expanded="true"] > .scc7-nav-item__chevron { transform: rotate(180deg); }
  .scc-v8-compact .scc7-primary-menu .scc7-nav-item--mega:not(.is-submenu-open) > .scc7-nav-mega { display: none; visibility: hidden; opacity: 0; }
  .scc-v8-compact .scc7-primary-menu .scc7-nav-mega__areas a { text-align: left; }
  body.scc-v8-compact.woocommerce-account .product-container .product-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .scc-v8-compact .scc7-hero__checks { grid-template-columns: repeat(3,minmax(0,1fr)); gap: .4rem; }
  .scc-v8-compact .scc7-hero__checks li { font-size: .67rem; gap: .25rem; }
  body.scc-template-edition.single-product #tab-description > :where(ul,ol) { grid-template-columns: 1fr; }
  body.scc-template-edition.single-product #tab-description > :where(ul,ol) > li { padding: .85rem .85rem .85rem 2.5rem; }
  body.scc-template-edition.single-product #tab-description > ul > li::before { top: 1rem; left: .8rem; }
  body.scc-v8-compact.woocommerce-account .product-container .product-row { grid-template-columns: 1fr; }
  body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.scc-v8-compact.woocommerce-account .scc-account-campus .scc-button { width: 100%; font-size: .8rem; }
}
@media (prefers-reduced-motion:reduce) {
  body.scc-template-edition.single-product #tab-description li,
  .scc-v8-compact .scc7-primary-menu .scc7-nav-item__chevron { transition: none; }
}
