/* Layout adjustments for the two restored user templates. */
.home-shell,.course-shell{width:100%;max-width:none;margin:0 auto}.home-shell>.message,.course-shell>.message{max-width:1160px;margin:20px auto}.public-home h1,.public-home h2,.public-home h3,.public-course h1,.public-course h2,.public-course h3{line-height:1.18}.public-home h2,.public-course h2{margin-top:0}.public-home p,.public-course p{margin-bottom:0}.public-home a,.public-course a{text-decoration:none}.public-home button{cursor:pointer}.public-home #home-carousel h1,.public-home #home-carousel h2{color:#fff}.public-home #home-carousel button{font-family:inherit;color:#fff}.public-home .home-slide h2{margin:28px 0 0}.public-home .home-slide h1{margin:28px 0 0}.public-home .home-slide .relative.z-10{padding-left:clamp(64px,7vw,100px);padding-right:clamp(64px,7vw,100px)}.public-home .category-button{display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.public-home .course-card h3{min-height:2.8em;margin-bottom:0}.public-home .course-card:hover,.course-grid .course-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px rgba(15,23,42,.13)}.course-card{transition:transform .3s,box-shadow .3s;min-width:0}.course-card .course-photo{transition:transform .5s;aspect-ratio:1.7;object-fit:cover;width:100%;height:100%}.course-card:hover .course-photo{transform:scale(1.055)}.course-card .course-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 0;padding:14px 0 0;border-top:1px solid #e2e8f0}.course-facts div{min-width:0}.course-facts dt{font-size:11px;color:#64748b}.course-facts dd{font-size:13px;font-weight:700;color:#334155;margin:2px 0 0}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.course-grid .course-card h3{min-height:2.8em}.course-width{max-width:1280px}.public-course .course-detail-image{aspect-ratio:1.7;max-height:280px}.public-course .text-5xl{font-size:clamp(1.9rem,3vw,2.75rem);line-height:1.2}.public-course .gradient-border .flex.items-baseline{flex-wrap:wrap}.public-course .gradient-border h2,.public-course .gradient-border h3{color:#fff}.public-course h2.text-3xl{font-size:clamp(1.35rem,2.2vw,1.9rem)}.public-course .curriculum-chapter{background:transparent;padding:0;margin:0 0 12px;border-radius:12px}.public-course .curriculum-chapter summary{cursor:pointer;list-style:none;gap:12px}.public-course .curriculum-chapter summary::-webkit-details-marker{display:none}.public-course .curriculum-chapter[open]>summary{border-radius:12px 12px 0 0}.public-course .curriculum-chapter [id^=accordion-body] .flex{min-width:0;flex-wrap:wrap}.public-course .curriculum-chapter .flex-1{min-width:150px;font-size:15px}.public-course .curriculum-chapter a{flex-shrink:0}.public-course .enrollment-action .button{background:#7c3aed;color:#fff;text-align:center;padding:16px 12px;border-radius:12px}.public-course .enrollment-action a:not(.button){color:#c4b5fd}.public-course #c_description{white-space:normal;overflow-wrap:anywhere}.public-course nav{font-size:13px}.public-course nav ol{flex-wrap:wrap;gap:8px}.public-course nav svg{flex-shrink:0}.public-course .scroll-box{padding:14px}.public-course .public-author-stats{display:flex;gap:12px;flex-wrap:wrap}.public-course .text-gray-900{color:#111827}.public-course .text-white{color:#fff}.public-course .shadow-2xl{box-shadow:0 12px 35px rgba(15,23,42,.09)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a78bfa;outline-offset:4px}html{scroll-behavior:smooth}.course-card.hidden{display:none!important}@media(min-width:1280px){.public-home #course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-course .p-8{padding:22px}}@media(max-width:639px){.course-grid{grid-template-columns:1fr}.public-home .home-slide .relative.z-10{padding-left:55px;padding-right:45px}.public-home #home-carousel{height:580px}.public-home #home-carousel h1,.public-home #home-carousel h2{font-size:32px}.public-home #home-carousel p{font-size:15px;line-height:1.6}.public-home #home-carousel .mt-9{margin-top:22px}.public-home #home-carousel .py-4{padding-top:12px;padding-bottom:12px}.public-home #carousel-prev,.public-home #carousel-next{width:32px;height:40px;left:8px}.public-home #carousel-next{left:auto;right:8px}.public-home .py-24{padding-top:52px;padding-bottom:52px}.public-course .px-6{padding-left:14px;padding-right:14px}.public-course .p-8{padding:18px}.public-course .gap-8{gap:20px}.public-course .curriculum-chapter summary{font-size:14px;padding:14px;align-items:flex-start}.public-course .curriculum-chapter summary>span:last-child{font-size:11px;white-space:nowrap}.public-course .scroll-box{padding:8px}.public-course .curriculum-chapter .p-4{padding:12px}.public-course .curriculum-chapter .flex-1{min-width:130px}.public-course .course-detail-image{max-height:240px}.public-course .text-5xl{font-size:2.25rem}.public-course .flex.items-start.gap-6{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.public-home *,.course-card,.course-photo{animation:none!important;transition:none!important;transform:none!important}}

@media(max-width:639px){.public-home #home-carousel a{font-size:14px;padding:14px 20px;line-height:1.4;text-align:center}.public-home .home-slide .rounded-full{font-size:11px;letter-spacing:.02em}}@media(max-width:359px){.public-home #home-carousel{height:660px}.public-home #home-carousel h1,.public-home #home-carousel h2{font-size:28px}.public-home #home-carousel p{font-size:14px}}

/* V5.5: compact benefits, AI slide and visible course selection. */
.public-home .home-benefits { padding-block: 32px 30px; }
.public-home .home-benefits-grid { gap: 20px; }
.public-home #formations { padding-top: 36px; }
.public-home .benefit-card {
  --benefit-color: #2563eb; --benefit-soft: #eff6ff;
  position: relative; overflow: hidden; padding: 25px; min-width: 0;
  background: linear-gradient(140deg, #fff 15%, var(--benefit-soft) 100%);
  border: 1px solid #dbe5f3; border-radius: 20px;
  box-shadow: 0 7px 22px #0f172a08;
  transition: transform .2s ease, box-shadow .2s ease;
}
.public-home .benefit-assessment { --benefit-color: #7c3aed; --benefit-soft: #f5f3ff; border-color: #e9defa; }
.public-home .benefit-progress { --benefit-color: #059669; --benefit-soft: #ecfdf5; border-color: #d1f0e3; }
.public-home .benefit-card::before {
  content: ''; position: absolute; top: 0; inset-inline: 0; height: 3px;
  background: linear-gradient(90deg, var(--benefit-color), transparent);
}
.public-home .benefit-icon {
  color: var(--benefit-color); background: var(--benefit-soft);
  width: 52px; height: 52px; border-radius: 16px;
  box-shadow: inset 0 0 0 1px #ffffffa6, 0 5px 12px #0f172a08;
}
.public-home .benefit-card h2 { margin-block: 18px 10px; font-size: 20px; }
.public-home .benefit-card p { margin-top: 0; line-height: 1.65; }
.public-home .benefit-card:hover { transform: translateY(-3px); box-shadow: 0 12px 27px #0f172a0e; }
.course-card[data-course-card] { border-color: #dce0f6; }
.course-card[data-course-card]:is(:hover, :focus-within) {
  border-color: #7c3aed;
  box-shadow: 0 20px 38px #4338ca1c, 0 0 0 2px #8b5cf64d;
  transform: translateY(-7px);
}
.course-card:focus-within .course-photo { transform: scale(1.055); }
.course-card .course-facts dt { display: flex; align-items: center; gap: 5px; }
.course-card .course-facts .academy-icon { width: 17px; height: 17px; flex-shrink: 0; padding: 4px; border-radius: 7px; box-sizing: content-box; }
.course-facts .fact-lessons .academy-icon { color: #2563eb; background: #eff6ff; }
.course-facts .fact-duration .academy-icon { color: #7c3aed; background: #f5f3ff; }
.course-facts .fact-enrolled .academy-icon { color: #059669; background: #ecfdf5; }
.course-duration { display: inline-block; unicode-bidi: isolate; }
.home-slide-ai { background: radial-gradient(ellipse at 82% 40%, #312e81 0%, transparent 55%), linear-gradient(120deg, #020617, #0f172a 48%, #1e1b4b); }
.ai-slide-art { position: absolute; inset-inline-end: 1%; top: 50%; transform: translateY(-50%); width: min(52vw, 690px); opacity: .86; }
.ai-slide-art svg { display: block; width: 100%; height: auto; }
.public-home .ai-slide-copy { max-width: 670px; }
.ai-slide-badge { display: inline-block; padding: 9px 16px; border: 1px solid #a78bfa66; border-radius: 999px; background: #8b5cf61a; color: #ddd6fe; font-size: 13px; font-weight: 800; letter-spacing: .025em; }
.ai-slide-highlight { color: #c4b5fd; }
.public-home .ai-slide-button { display: inline-flex; align-items: center; justify-content: center; padding: 16px 25px; border-radius: 12px; background: #c4b5fd; color: #1e1b4b; font-weight: 850; box-shadow: 0 6px 24px #a78bfa33; transition: background .2s, transform .2s; }
.public-home .ai-slide-button:hover { background: #ddd6fe; transform: translateY(-2px); }
html[dir=rtl] .home-slide-ai { background: radial-gradient(ellipse at 18% 40%, #312e81 0%, transparent 55%), linear-gradient(240deg, #020617, #0f172a 48%, #1e1b4b); }
@media(max-width: 1000px) {
  .ai-slide-art { width: 65vw; inset-inline-end: -12%; opacity: .38; }
}
@media(max-width: 639px) {
  .public-home .home-benefits { padding-block: 24px 22px; }
  .public-home .home-benefits-grid { gap: 14px; }
  .public-home .benefit-card { padding: 22px; }
  .public-home #formations { padding-top: 28px; }
  .ai-slide-art { width: 130vw; inset-inline-end: -36%; opacity: .22; }
  .public-home .ai-slide-copy h2 { font-size: 30px; }
  .public-home .ai-slide-badge { max-width: 100%; font-size: 10px; padding: 8px 10px; white-space: normal; }
}
@media(prefers-reduced-motion: reduce) {
  .public-home .benefit-card, .course-card[data-course-card], .course-card .course-photo, .public-home .ai-slide-button { transition: none; transform: none; }
}
