/* Database-driven pages retain the visual language of the approved design. */
.hero h1 span{color:#009fbc}.filter{display:inline-flex;align-items:center;justify-content:center}.filters{flex-wrap:wrap;overflow:visible}.socials a{width:30px;height:30px;display:grid;place-items:center;background:#edf8ff;border-radius:50%;color:#075782}.socials a .icon{width:17px;height:17px}.cms-telegram{max-width:1224px;margin:22px auto 0}.catalog-all{justify-content:center;margin-top:20px}.catalog-page{padding-top:1px}.catalog-page .workshops-section{padding:26px 20px}.catalog-page h1{font-size:42px}.catalog-count{font-size:13px;color:var(--muted);margin:16px 0}.search-go{font-size:12px;color:#008cac;font-weight:700}.pagination{display:flex;justify-content:center;gap:8px;margin:30px 0 10px}.pagination a{padding:10px 16px;background:#eff9ff;border-radius:12px}.pagination a.active{background:#04adc5;color:white}.prose{font-size:17px;line-height:1.7;color:#365273}.prose h1{color:#08172d;font-size:42px}.prose h2{color:#0b2450;font-size:27px;line-height:1.25;margin:30px 0 12px}.prose h3{font-size:21px;line-height:1.35;margin:24px 0 10px;color:#0b2450}.prose p+p{margin-top:14px}.prose ul,.prose ol{margin:14px 0;padding-left:24px}.prose li{margin:8px 0}.prose a{text-decoration:underline;color:#008cac;text-underline-offset:3px}.prose blockquote{border-left:3px solid #00b2cc;padding-left:20px;margin:20px 0}.home-seo,.lesson-content{padding:26px 32px;margin-top:20px}.home-seo h2:first-child,.lesson-content h2:first-child{margin-top:0}.lesson-content{max-width:1224px}.lesson-content>*{max-width:930px}.lesson-description{padding-right:110px}.lesson-author{font-size:13px;color:#7190ad;margin-bottom:20px}.text-page{padding:35px;margin:20px 0;min-height:40vh}.text-page .lead{font-size:20px;margin:20px 0}.preview-banner{background:#fff2ce;color:#483807;text-align:center;padding:10px}.preview-banner a{text-decoration:underline}.course-program-cards{display:grid;grid-template-columns:1fr 1fr;gap:17px}.course-program-card{display:flex;align-items:start;gap:18px;border:1px solid #deeff5;border-radius:20px;padding:24px;background:#fff;transition:transform .2s,box-shadow .2s}.course-program-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px #408e9914}.course-program-card h3{font-size:22px;line-height:1.25}.course-program-card p{font-size:15px;line-height:1.55;color:#6a86a5;margin:10px 0}.program-number{font-size:24px;font-weight:800;color:#00a5bf;padding:12px;background:#eafafe;border-radius:15px}.course-program-card .text-link{font-size:14px;padding:5px 0}.course-program-card:last-child{grid-column:1/-1}.course-navigation{padding:24px;margin-top:18px}.course-navigation h2{font-size:26px;margin-bottom:20px}.course-lesson-links{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.course-lesson-links a{padding:13px;border:1px solid #e0edf5;border-radius:12px;font-size:14px;line-height:1.4}.course-lesson-links a span{display:block;color:#00abc8;margin-bottom:9px}.course-lesson-links a.active{border-color:#00b3cb;background:#eafbff}.course-tool-body h2 span{margin-left:8px}.lesson-grid .workshop-card:nth-child(n) .card-image,.workshop-card:nth-child(n) .card-image{aspect-ratio:16/9}.card-description{max-height:4.35em}.site-header{position:relative}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #0c91cb;outline-offset:4px}
@media(max-width:1000px){.cms-telegram{margin-left:24px;margin-right:24px}.course-lesson-links{grid-template-columns:repeat(3,1fr)}.lesson-description{padding-right:22px}}
@media(max-width:760px){.site-header{position:sticky;z-index:50}.cms-telegram{margin:18px 14px 0}.catalog-page h1,.text-page h1{font-size:32px}.prose{font-size:16px}.prose h2{font-size:24px}.home-seo,.lesson-content,.text-page{padding:23px 20px}.catalog-page .workshops-section{padding:20px 14px}.course-program-cards{grid-template-columns:1fr}.course-program-card{padding:19px;gap:13px}.course-program-card h3{font-size:20px}.program-number{padding:9px;font-size:20px}.course-lesson-links{grid-template-columns:1fr}.course-lesson-links a{display:flex;gap:12px}.course-lesson-links a span{margin-bottom:0}.filters .filter{flex:initial;min-width:70px}.catalog-toolbar .search{flex:initial}.catalog-page .search{width:100%}.hero-actions{gap:12px}.hero-actions .button{max-width:100%}.hero-copy .benefits{flex-wrap:wrap;font-size:12px;gap:10px}.benefits li+li:before{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.text-page-cover{width:100%;max-width:800px;max-height:450px;object-fit:contain;border-radius:18px;margin:0 0 24px}.course-promo{margin:25px 0}.course-promo .promo-feedback{margin-left:15px;font-size:14px}

/* Larger workshop cards across the homepage, catalogue and recommendations. */
@media screen {
  .workshop-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
  }
  .workshop-grid .workshop-card { border-radius: 12px; }
  .workshop-grid .card-body { padding: 16px; }
  .workshop-grid .card-title {
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: -.2px;
  }
  .workshop-grid .card-description {
    font-size: 15px;
    line-height: 1.5;
    max-height: 4.5em;
    margin: 10px 0 16px;
  }
  .workshop-grid .category-pill { font-size: 13px; padding: 8px 10px; }
  .workshop-grid .card-open { width: 40px; height: 40px; flex-shrink: 0; }
}
@media screen and (max-width: 1000px) {
  .workshop-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
}
@media screen and (min-width: 761px) and (max-width: 900px) {
  .header-inner { gap: 12px; padding-inline: 24px; }
  .desktop-nav { margin-left: 0; gap: 18px; }
}
@media screen and (max-width: 760px) {
  .workshop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .workshop-grid .card-body { padding: 14px; }
  .workshop-grid .card-title { font-size: 17px; }
  .workshop-grid .card-open { width: 44px; height: 44px; }
}
@media screen and (max-width: 480px) {
  .workshop-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .workshop-grid .card-body { padding: 16px; }
  .workshop-grid .card-title { font-size: 19px; }
}
