/* Pegasus Modern 3.55.11 — Phase 1: catalogue cards, course page and responsive refinement. */

/* ---------- Course catalogue cards ---------- */
.pg-catalog-main .pg-shop-card{
  position:relative!important;
  height:100%!important;
  border:1px solid #dfe8ee!important;
  border-radius:19px!important;
  background:#fff!important;
  box-shadow:0 8px 26px rgba(7,47,77,.045)!important;
  overflow:hidden!important;
  transform:translateZ(0);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
.pg-catalog-main .pg-shop-card:hover{
  transform:translateY(-4px)!important;
  border-color:#cddde7!important;
  box-shadow:0 20px 42px rgba(7,47,77,.09)!important;
}
.pg-catalog-main .pg-shop-card:focus-within{
  border-color:#9ec7df!important;
  box-shadow:0 0 0 3px rgba(11,111,168,.08),0 18px 38px rgba(7,47,77,.075)!important;
}
.pg-catalog-main .pg-shop-card__media{
  position:relative!important;
  aspect-ratio:16/9!important;
  min-height:0!important;
  background:#edf4f8!important;
  overflow:hidden!important;
}
.pg-catalog-main .pg-shop-card__media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  transform:scale(1)!important;
  transition:transform .38s cubic-bezier(.2,.65,.25,1)!important;
}
.pg-catalog-main .pg-shop-card:hover .pg-shop-card__media img{transform:scale(1.028)!important}
.pg-catalog-main .pg-shop-card__media-overlay{
  height:48%!important;
  background:linear-gradient(to top,rgba(2,33,54,.34),rgba(2,33,54,.04) 68%,transparent)!important;
}
.pg-catalog-main .pg-shop-card__badges{top:11px!important;left:11px!important;right:11px!important}
.pg-catalog-main .pg-shop-card__chip{
  min-height:26px!important;
  padding:0 9px!important;
  border:1px solid rgba(255,255,255,.56)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 5px 15px rgba(5,38,60,.08)!important;
  backdrop-filter:blur(7px)!important;
  font-size:.61rem!important;
  font-weight:800!important;
}
.pg-catalog-main .pg-shop-card--online .pg-shop-card__chip--mode{color:#0c679f!important;background:rgba(240,249,255,.94)!important}
.pg-catalog-main .pg-shop-card--classroom .pg-shop-card__chip--mode{color:#8b5c00!important;background:rgba(255,248,229,.95)!important}
.pg-catalog-main .pg-shop-card__art-label{
  left:12px!important;
  bottom:11px!important;
  min-height:27px!important;
  padding:0 9px!important;
  border-color:rgba(255,255,255,.22)!important;
  background:rgba(3,38,62,.52)!important;
  backdrop-filter:blur(7px)!important;
  font-size:.59rem!important;
}
.pg-catalog-main .pg-shop-card__body{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  padding:18px 18px 17px!important;
}
/* The mode chip already communicates this information; removing the eyebrow avoids repetition. */
.pg-catalog-main .pg-shop-card__eyebrow{display:none!important}
.pg-catalog-main .pg-shop-card__title{
  min-height:0!important;
  margin:0!important;
  color:#072f4d!important;
  font-size:1.06rem!important;
  line-height:1.28!important;
  letter-spacing:-.024em!important;
}
.pg-catalog-main .pg-shop-card__title a{
  display:-webkit-box!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  color:inherit!important;
  text-decoration:none!important;
}
.pg-catalog-main .pg-shop-card__title a:hover{color:#0b6fa8!important}
.pg-catalog-main .pg-shop-card__excerpt{
  display:-webkit-box!important;
  min-height:0!important;
  margin:0!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:#667d8d!important;
  font-size:.73rem!important;
  line-height:1.55!important;
}
.pg-catalog-main .pg-shop-card__facts{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:1px 0 0!important;
}
.pg-catalog-main .pg-shop-card__fact{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  width:auto!important;
  min-height:28px!important;
  padding:5px 8px!important;
  border:1px solid #e8eef2!important;
  border-radius:9px!important;
  background:#f8fafc!important;
}
.pg-catalog-main .pg-shop-card__fact .pg-ui-fact__icon{width:16px!important;height:16px!important;background:transparent!important}
.pg-catalog-main .pg-shop-card__fact .pg-svg{width:13px!important;height:13px!important;color:#0b6fa8!important}
.pg-catalog-main .pg-shop-card__fact small{display:none!important}
.pg-catalog-main .pg-shop-card__fact strong{font-size:.64rem!important;font-weight:740!important;color:#557083!important;white-space:nowrap!important}
.pg-catalog-main .pg-shop-card__footer{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin-top:auto!important;
  padding-top:13px!important;
  border-top:1px solid #eaf0f4!important;
}
.pg-catalog-main .pg-shop-card__price{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
}
.pg-catalog-main .pg-shop-card__price .price,
.pg-catalog-main .pg-shop-card__price .amount{
  color:#062f4c!important;
  font-size:1.13rem!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
.pg-catalog-main .pg-price-info{margin:0!important;color:#8496a2!important;font-size:.59rem!important;line-height:1.25!important;text-align:right!important}
.pg-catalog-main .pg-shop-card__actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:8px!important;
  width:100%!important;
}
.pg-catalog-main .pg-shop-card__link,
.pg-catalog-main .pg-shop-card__actions .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:42px!important;
  padding:0 11px!important;
  border-radius:10px!important;
  font-size:.69rem!important;
  font-weight:800!important;
  line-height:1.15!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
}
.pg-catalog-main .pg-shop-card__link{border:1px solid #d5e1e8!important;background:#fff!important;color:#173f5b!important}
.pg-catalog-main .pg-shop-card__link:hover{border-color:#a9c6d8!important;background:#f5fafc!important;color:#0a6095!important}
.pg-catalog-main .pg-shop-card__actions .button{border:1px solid #159447!important;background:#159447!important;color:#fff!important;box-shadow:none!important}
.pg-catalog-main .pg-shop-card__actions .button:hover{border-color:#117e3c!important;background:#117e3c!important;transform:translateY(-1px)!important}

/* ---------- Single course page ---------- */
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-hero__inner{
  grid-template-columns:minmax(0,1fr) minmax(250px,310px)!important;
  gap:34px!important;
  align-items:end!important;
  padding-top:30px!important;
  padding-bottom:34px!important;
}
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-breadcrumb{margin-bottom:13px!important}
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-eyebrow{margin-bottom:8px!important}
.single-product .pg-product-v2-hero.pg-internal-hero h1{
  max-width:940px!important;
  font-size:clamp(2.3rem,3.75vw,3.45rem)!important;
  line-height:1!important;
  letter-spacing:-.048em!important;
}
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-lead{
  max-width:870px!important;
  margin-top:14px!important;
  color:#627b8c!important;
  font-size:.93rem!important;
  line-height:1.62!important;
}
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-trustline{
  gap:8px 18px!important;
  margin-top:16px!important;
  padding-top:14px!important;
}
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-trustline span{font-size:.7rem!important}
.single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-hero__facts{
  padding:15px!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.9)!important;
}
.single-product .pg-product-v2-hero__factgrid--count-1{grid-template-columns:1fr!important}
.single-product .pg-product-v2-hero__factgrid--count-1 .pg-product-v2-hero__fact{min-height:58px!important}
.single-product .pg-product-v2-primary{padding:38px 0 26px!important}
.single-product .pg-product-v2-primary__grid{
  grid-template-columns:minmax(0,1.55fr) minmax(350px,.68fr)!important;
  gap:28px!important;
  align-items:start!important;
}
.single-product .pg-product-v2-visual,
.single-product .pg-product-v2-purchase{
  border-radius:20px!important;
  border-color:#dce6ec!important;
  box-shadow:0 10px 32px rgba(6,46,75,.055)!important;
}
.single-product .pg-product-v2-visual__image{aspect-ratio:16/8.9!important}
.single-product .pg-product-v2-visual__caption{
  left:18px!important;
  bottom:17px!important;
  padding:9px 12px!important;
  border-radius:12px!important;
}
.single-product .pg-product-v2-valuebar>div{padding:15px 16px!important}
.single-product .pg-product-v2-purchase{
  position:sticky!important;
  top:24px!important;
  padding:23px!important;
}
.admin-bar.single-product .pg-product-v2-purchase{top:56px!important}
.single-product .pg-product-v2-purchase h2{font-size:1.65rem!important;line-height:1.08!important}
.single-product .pg-product-v2-purchase__intro{margin-top:9px!important;font-size:.78rem!important}
.single-product .pg-product-v2-price{margin:17px 0 14px!important;padding:14px 0!important}
.single-product .pg-product-v2-price .price{font-size:1.72rem!important}
.single-product .pg-product-v2-purchase__facts{gap:7px!important;margin-bottom:12px!important}
.single-product .pg-product-v2-purchase__facts>div{padding:9px!important;border-radius:11px!important}
.single-product .pg-product-v2-participants{margin-bottom:13px!important;padding:10px 11px!important;border-radius:11px!important}
.single-product .pg-product-v2-cart form.cart{gap:8px!important}
.single-product .pg-product-v2-cart .quantity .qty,
.single-product .pg-product-v2-cart .single_add_to_cart_button{min-height:48px!important;border-radius:11px!important}
.single-product .pg-product-v2-secure{margin-top:13px!important;padding-top:13px!important}
.single-product .pg-product-v2-support{margin-top:13px!important;padding:12px!important;border-radius:13px!important}
.single-product .pg-product-v2-steps{padding:10px 0 30px!important}
.single-product .pg-product-v2-steps__grid{gap:9px!important}
.single-product .pg-product-v2-steps__grid>div{padding:13px 15px!important;border-radius:12px!important}
.single-product .pg-product-v2-content{padding-top:40px!important}
.single-product .pg-product-v2-content__head{max-width:960px!important;margin-bottom:24px!important}
.single-product .pg-product-v2-content__head h2{font-size:clamp(2rem,3.1vw,2.7rem)!important}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .pg-catalog-main .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .single-product .pg-product-v2-primary__grid{grid-template-columns:minmax(0,1fr) minmax(330px,.78fr)!important;gap:22px!important}
}
@media (max-width:1040px){
  .single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-hero__inner{grid-template-columns:1fr!important;gap:20px!important}
  .single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-hero__facts{max-width:620px!important}
  .single-product .pg-product-v2-primary__grid{grid-template-columns:1fr!important}
  .single-product .pg-product-v2-purchase{position:static!important;top:auto!important}
}
@media (max-width:767px){
  .pg-catalog-main .products{grid-template-columns:1fr!important;gap:14px!important}
  .pg-catalog-main .pg-shop-card{
    display:grid!important;
    grid-template-columns:128px minmax(0,1fr)!important;
    border-radius:15px!important;
  }
  .pg-catalog-main .pg-shop-card__media{height:100%!important;min-height:186px!important;aspect-ratio:auto!important}
  .pg-catalog-main .pg-shop-card__badges{top:8px!important;left:8px!important;right:8px!important}
  .pg-catalog-main .pg-shop-card__chip{min-height:23px!important;padding:0 7px!important;font-size:.57rem!important}
  .pg-catalog-main .pg-shop-card__art-label{display:none!important}
  .pg-catalog-main .pg-shop-card__body{padding:13px!important;gap:7px!important}
  .pg-catalog-main .pg-shop-card__title{font-size:.93rem!important;line-height:1.28!important}
  .pg-catalog-main .pg-shop-card__excerpt,
  .pg-catalog-main .pg-shop-card__facts{display:none!important}
  .pg-catalog-main .pg-shop-card__footer{gap:8px!important;padding-top:9px!important}
  .pg-catalog-main .pg-shop-card__price{display:block!important}
  .pg-catalog-main .pg-shop-card__price .price,
  .pg-catalog-main .pg-shop-card__price .amount{font-size:1rem!important}
  .pg-catalog-main .pg-price-info{display:none!important}
  .pg-catalog-main .pg-shop-card__actions{grid-template-columns:1fr!important}
  .pg-catalog-main .pg-shop-card__link{display:none!important}
  .pg-catalog-main .pg-shop-card__actions .button{min-height:38px!important;width:100%!important}

  .single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-hero__inner{padding-top:25px!important;padding-bottom:29px!important}
  .single-product .pg-product-v2-hero.pg-internal-hero h1{font-size:clamp(2rem,10vw,2.9rem)!important}
  .single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-lead{font-size:.84rem!important;line-height:1.58!important}
  .single-product .pg-product-v2-hero.pg-internal-hero .pg-product-v2-trustline{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
  .single-product .pg-product-v2-hero__factgrid{grid-template-columns:1fr 1fr!important}
  .single-product .pg-product-v2-hero__factgrid--count-1{grid-template-columns:1fr!important}
  .single-product .pg-product-v2-primary{padding-top:22px!important}
  .single-product .pg-product-v2-primary__grid{gap:16px!important}
  .single-product .pg-product-v2-visual,
  .single-product .pg-product-v2-purchase{border-radius:16px!important}
  .single-product .pg-product-v2-visual__image{aspect-ratio:1.4/1!important}
  .single-product .pg-product-v2-visual__caption{left:12px!important;bottom:12px!important}
  .single-product .pg-product-v2-valuebar{grid-template-columns:1fr!important}
  .single-product .pg-product-v2-valuebar>div{border-right:0!important;border-bottom:1px solid #e8eff3!important;padding:12px 14px!important}
  .single-product .pg-product-v2-valuebar>div:last-child{border-bottom:0!important}
  .single-product .pg-product-v2-purchase{padding:18px 16px!important}
  .single-product .pg-product-v2-purchase h2{font-size:1.45rem!important}
  .single-product .pg-product-v2-cart form.cart{grid-template-columns:1fr!important}
  .single-product .pg-product-v2-cart .quantity .qty{width:100%!important}
  .single-product .pg-product-v2-steps{padding-bottom:24px!important}
  .single-product .pg-product-v2-content{padding-top:31px!important}
}
@media (max-width:430px){
  .pg-catalog-main .pg-shop-card{grid-template-columns:108px minmax(0,1fr)!important}
  .pg-catalog-main .pg-shop-card__media{min-height:172px!important}
  .single-product .pg-product-v2-hero__factgrid{grid-template-columns:1fr!important}
}

/* ---------- 3.55.14 — Catalogue search box responsive hardening ----------
 * Prevent the search form from stretching vertically when browser zoom,
 * OS scaling or intermediate desktop widths activate older catalogue rules.
 */
.pg-wc-catalogue .pg-shop-toolbar,
.pg-wc-catalogue .pg-shop-toolbar__drawer,
.pg-wc-catalogue .pg-shop-toolbar__top,
.pg-wc-catalogue .pg-shop-toolbar__bottom{
  min-height:0!important;
  height:auto!important;
}
.pg-wc-catalogue .pg-product-search{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  align-self:center!important;
  box-sizing:border-box!important;
  width:min(620px,100%)!important;
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  margin:0!important;
  padding:0 15px!important;
  overflow:hidden!important;
}
.pg-wc-catalogue .pg-product-search__icon{
  position:absolute!important;
  left:15px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:2!important;
  pointer-events:none!important;
}
.pg-wc-catalogue .pg-product-search input[type="search"]{
  box-sizing:border-box!important;
  width:100%!important;
  height:48px!important;
  min-height:0!important;
  max-height:48px!important;
  line-height:48px!important;
}

@media (min-width:981px){
  .pg-wc-catalogue .pg-shop-toolbar__drawer{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:24px!important;
  }
  .pg-wc-catalogue .pg-shop-toolbar__bottom{
    display:flex!important;
    align-items:center!important;
    align-self:center!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  .pg-wc-catalogue .pg-shop-toolbar__top{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    align-self:center!important;
    width:auto!important;
    margin:0!important;
  }
}

@media (max-width:980px){
  .pg-wc-catalogue .pg-shop-toolbar__drawer{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
    gap:12px!important;
  }
  .pg-wc-catalogue .pg-shop-toolbar__top,
  .pg-wc-catalogue .pg-shop-toolbar__bottom{
    width:100%!important;
    min-width:0!important;
  }
  .pg-wc-catalogue .pg-product-search{
    width:100%!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
  }
}

