/* Homepage sections. Shared header/menu geometry remains in navigation.css. */
.home-content{min-height:calc(100vh - 80px);padding:46px var(--cando-space-4) var(--cando-space-8);background:var(--cando-background-surface)}
.home-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:39px;max-width:640px;margin-inline:auto}
.home-hero p,.home-hero h1,.home-hero h2,.home-hero figure{margin:0}
.home-hero__intro,.home-hero__visual{min-width:0}
.home-hero__visual{grid-row:2}
.home-hero__badge-row{display:flex;justify-content:flex-start;padding:10px;margin-block-end:var(--cando-space-4)}
.home-hero__badge{display:inline-flex;align-items:center;gap:var(--cando-space-2);padding:4px 12px;background:var(--cando-neutral-0);border:1px solid var(--cando-neutral-50);border-radius:8px;font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);color:var(--cando-text-tertiary)}
.home-status-dot{display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--cando-success-500)}
.home-hero h1{font-size:var(--cando-display-lg-size);line-height:var(--cando-display-lg-lh);font-weight:var(--cando-font-weight-bold)}
.home-hero h1 span{display:block;color:var(--cando-primary-400)}
.home-hero__description{max-width:429px;margin-block-start:var(--cando-space-4)!important;color:var(--cando-text-tertiary);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s)}
.home-goals{display:grid;gap:var(--cando-space-2);margin-block-start:var(--cando-space-8)}
.home-goal{display:flex;align-items:center;gap:var(--cando-space-2);height:48px;min-height:48px;padding:6px 12px;border:2px solid var(--cando-border-disabled);border-radius:12px;background:var(--cando-background-surface);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s)}
.home-goal__number{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:6px;background:var(--cando-primary-50);color:var(--cando-primary-400);font-size:var(--cando-font-size-xs);font-weight:var(--cando-font-weight-bold)}
.home-goal__label{flex:1;min-width:0}
.home-goal__arrow{display:block;width:16px;height:16px;flex:none;margin-inline-start:8px}
.home-goal:hover,.home-hero.has-selection .home-goal.is-active{border-color:var(--cando-primary-300);background:var(--cando-primary-50);color:var(--cando-primary-700)}
.home-goal:hover .home-goal__number,.home-hero.has-selection .home-goal.is-active .home-goal__number{background:var(--cando-primary-100);color:var(--cando-primary-500)}
.home-hero__catalog-note{display:flex;align-items:center;gap:18px;padding-block:var(--cando-space-6);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);color:var(--cando-text-tertiary)}
.home-hero__catalog-note strong{font-weight:var(--cando-font-weight-regular);color:var(--cando-text-primary)}
.home-hero__avatars{display:flex;flex:none;padding-inline-end:8px}
.home-hero__avatars img{display:block;flex:none;width:32px;height:32px;margin-inline-end:-8px;border-radius:50%}
/* Suggestion stack: one definition per component; inactive panels remain hidden. */
.home-suggestions{--suggestion-duration-width:76px;display:block;position:relative;isolation:isolate;margin-block-start:var(--cando-space-5);scroll-margin-block-start:var(--cando-space-6)}
.home-suggestions::before,.home-suggestions::after{content:"";position:absolute;border:1px solid var(--cando-primary-100);border-radius:var(--cando-space-3);pointer-events:none}
.home-suggestions::before{inset:-18px 24px 18px;z-index:-2;background:var(--cando-primary-50)}
.home-suggestions::after{inset:-9px 12px 9px;z-index:-1;background:var(--cando-primary-0)}
.home-suggestion{border:1px solid var(--cando-primary-200);border-radius:var(--cando-space-3);overflow:hidden;background:var(--cando-background-surface);color:var(--cando-text-primary)}
.home-suggestion__header{padding:var(--cando-space-6);background:var(--cando-primary-100)}
.home-suggestion__heading{min-width:0}
.home-suggestion__eyebrow{display:flex;align-items:center;gap:var(--cando-space-2);color:var(--cando-text-tertiary);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);font-weight:var(--cando-font-weight-medium)}
.home-suggestion__eyebrow span{width:var(--cando-space-2);height:var(--cando-space-2);flex:none;border-radius:50%;background:var(--cando-primary-500)}
.home-suggestion__title-row{display:flex;align-items:center;gap:var(--cando-space-3);margin-block-start:var(--cando-space-2)}
.home-suggestion__title-row h2{margin:0;font-size:var(--cando-font-size-xl);line-height:var(--cando-line-height-xl);font-weight:var(--cando-font-weight-semibold);color:var(--cando-primary-700)}
.home-suggestion__goal-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;color:var(--cando-primary-400)}
.home-suggestion__goal-icon .cando-icon{width:var(--cando-space-8);height:var(--cando-space-8)}
.home-suggestion__body{display:flex;flex-direction:column;gap:var(--cando-space-4);padding:var(--cando-space-6)}
.home-suggestion__courses{display:grid;gap:var(--cando-space-1);list-style:none;margin:0;padding:0}
.home-suggestion__course-row{display:grid;grid-template-columns:var(--cando-space-2) minmax(0,1fr) var(--suggestion-duration-width);align-items:center;gap:var(--cando-space-2);min-height:var(--cando-space-8);padding:var(--cando-space-2) 0;background:transparent}
.home-suggestion__dot{width:var(--cando-space-2);height:var(--cando-space-2);border-radius:50%;background:var(--cando-primary-400)}
.home-suggestion__course-title{min-width:0;overflow-wrap:anywhere;text-align:right;font-weight:var(--cando-font-weight-medium)}
.home-suggestion__hours{display:flex;align-items:center;justify-content:flex-start;gap:var(--cando-space-1);width:var(--suggestion-duration-width);white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--cando-text-tertiary);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);font-weight:var(--cando-font-weight-light)}
.home-suggestion__hours .cando-icon{width:14px;height:14px}
.home-suggestion__more{padding:var(--cando-space-2) 0;text-align:right;color:var(--cando-text-tertiary);font-size:var(--cando-font-size-s);font-weight:var(--cando-font-weight-regular)}
.home-suggestion__note{padding:var(--cando-space-4);border-inline-start:3px solid var(--cando-primary-400);border-radius:var(--cando-space-3)}
.home-suggestion__note p:first-child{color:var(--cando-primary-700);font-size:var(--cando-font-size-l);line-height:var(--cando-line-height-l);font-weight:var(--cando-font-weight-bold);margin-block-end:var(--cando-space-1)}
.home-suggestion__note p:last-child,.home-suggestion__empty{font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);font-weight:var(--cando-font-weight-regular);color:var(--cando-text-primary)}
.home-suggestion__actions{display:flex;flex-wrap:wrap;gap:var(--cando-space-2)}
.home-suggestion__actions .button{flex:1 1 auto;min-height:var(--cando-space-12);font-size:var(--cando-font-size-m);line-height:var(--cando-line-height-m);border-radius:var(--cando-space-2);padding:10px var(--cando-space-4);text-align:center}
.home-suggestion__actions .button--primary{flex-grow:3}
.home-suggestion__another{border-color:currentColor;background:var(--cando-background-surface);color:var(--cando-primary-700)}
.home-suggestion.is-entering{animation:home-card-forward 240ms ease-out}
.home-suggestion.is-entering .home-suggestion__goal-icon .cando-icon{animation:home-goal-icon 480ms ease-out}
@keyframes home-card-forward{from{opacity:.5;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes home-goal-icon{from{transform:translateY(6px) rotate(-10deg);opacity:.4}to{transform:translateY(0) rotate(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.home-suggestion.is-entering,.home-suggestion.is-entering .home-suggestion__goal-icon .cando-icon{animation:none}}

@media(min-width:1280px){
 .home-content{padding-block-start:var(--cando-space-6)}
 .home-hero{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(24px,4vw,48px);max-width:1120px}
 .home-hero__intro{grid-column:1;grid-row:1}
 .home-hero__visual{grid-column:2;grid-row:1;align-self:start}
 .home-hero__badge-row{height:50px;padding:0;margin:0;align-items:flex-start}
 .home-hero h1{font-weight:var(--cando-font-weight-medium)}
 .home-hero h1 span{font-weight:var(--cando-font-weight-regular)}
 .home-goals{width:100%}
 .home-goal.is-active{border-color:var(--cando-primary-300);background:var(--cando-primary-50);color:var(--cando-primary-700)}
 .home-goal.is-active .home-goal__number{background:var(--cando-primary-100);color:var(--cando-primary-500)}
}

/* The page uses full-width bands around a shared responsive 1440px content grid. */
.home-section,.home-section-inner{max-width:var(--cando-layout-max);margin-inline:auto;min-width:0}
.home-section,.home-band{margin-block-start:var(--cando-space-16)}
.home-band{margin-inline:calc(-1 * var(--cando-space-4));padding:var(--cando-space-8) var(--cando-space-4)}
.home-section h2,.home-section .home-card-title,.home-band h2,.home-band .home-card-title,.home-section p,.home-band p{margin:0}
.home-section h2,.home-band h2{font-size:var(--cando-heading-m-size);line-height:var(--cando-heading-m-lh);font-weight:var(--cando-font-weight-bold)}
.home-section .home-card-title,.home-band .home-card-title{font-size:var(--cando-body-xl-size);line-height:var(--cando-body-xl-lh);font-weight:var(--cando-font-weight-bold)}
.home-section-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--cando-space-4);margin-block-end:var(--cando-space-8)}
.home-section-heading p{margin-block-start:var(--cando-space-2);color:var(--cando-text-tertiary)}
.home-section-link{display:inline-flex;align-items:center;gap:8px;color:var(--cando-primary-500);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s)}
.home-section-link img{flex:none;width:16px;height:16px}
.home-card-bottom a:hover{text-decoration:underline}
.home-stats{padding:var(--cando-space-4);border-radius:12px;background:var(--cando-primary-800);color:var(--cando-text-on-primary)}
.home-stats dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;text-align:center}
.home-stats dl>div{display:flex;flex-direction:column-reverse;justify-content:space-between;gap:8px;padding:8px}
.home-stats dt{font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs)}
.home-stats dd{margin:0;font-size:var(--cando-font-size-2xl);line-height:var(--cando-line-height-2xl);font-weight:var(--cando-font-weight-bold)}
.home-card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--cando-space-4)}
.home-card-meta,.home-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.home-tag{display:inline-flex;align-items:center;max-width:100%;padding:4px 12px;border-radius:4px;background:var(--cando-neutral-0);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);overflow-wrap:anywhere}
.home-tag--primary{color:var(--cando-primary-500);background:var(--cando-primary-0)}
.home-tag--brand{color:var(--cando-brand-800);background:var(--cando-brand-50)}
.home-card-bottom{padding-block-start:12px;margin-block-start:auto;border-block-start:1px solid var(--cando-border-disabled);color:var(--cando-text-tertiary);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs)}
.home-card-bottom a{display:inline-flex;align-items:center;gap:8px;color:var(--cando-primary-500)}
.home-card-bottom a img{width:16px;height:16px}
.home-introduction{background:var(--cando-neutral-0)}
.home-introduction__inner{max-width:1062px;margin-inline:auto;display:grid;gap:69px;align-items:center}
.home-introduction__media{position:relative;overflow:hidden;margin:0;min-width:0;height:320px;border-radius:8px;background:var(--cando-neutral-500)}
.home-introduction__media>img{display:block;width:100%;height:320px;object-fit:cover}
.home-introduction__media figcaption{position:absolute;inset-inline:0;inset-block-end:0;padding:32px 20px 20px;background:linear-gradient(transparent,#000c);color:var(--cando-text-on-primary)}
.home-introduction__media figcaption strong,.home-introduction__media figcaption span{display:block}
.home-introduction__media figcaption strong{font-size:var(--cando-body-xl-size);line-height:var(--cando-body-xl-lh)}
.home-introduction__media figcaption span{margin-block-start:4px;color:var(--cando-neutral-100)}
.home-introduction__copy{display:flex;flex-direction:column;gap:24px;min-width:0}
.home-introduction h2 span{display:block;color:var(--cando-primary-400)}
.home-introduction__copy>p{color:var(--cando-neutral-400);font-size:var(--cando-body-xl-size);line-height:var(--cando-body-xl-lh)}
.home-introduction ul{list-style:none;display:grid;gap:16px;margin:0;padding:0}
.home-introduction li{display:flex;align-items:center;gap:8px}
.home-introduction li img{flex:none;width:24px;height:24px}
.home-introduction .button{min-height:48px}
.home-benefits{background:var(--cando-primary-600)}
.home-benefits h2{color:var(--cando-text-on-primary)}
.home-scroll-row{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:4px 2px 12px;scrollbar-width:none;min-width:0}
.home-scroll-row>*{flex:0 0 min(100%,358px);scroll-snap-align:start;min-width:0}
.home-benefit-grid>*{flex-basis:min(100%,313px)}
.home-benefit-card{background:var(--cando-background-surface);border-radius:8px;padding:24px;min-height:206px}
.home-benefit-icon{display:grid;place-items:center;width:40px;height:40px;background:var(--cando-primary-0);border-radius:12px;margin-block-end:16px}
.home-benefit-icon img{width:24px;height:24px}
.home-benefit-card p:not(.home-card-title){margin-block-start:8px;color:var(--cando-text-tertiary)}
#home-goals{scroll-margin-block-start:100px}
.home-teachers .home-section-heading{margin-block-end:var(--cando-space-6)}
.home-teacher-rail{gap:var(--cando-space-6);padding-block:0}
.home-teacher-rail>.home-teacher-card{flex:0 0 min(352px,calc(100% - var(--cando-space-12)));scroll-snap-align:start}
.home-teacher-card{display:flex;flex-direction:column;overflow:hidden;min-width:0;border:1px solid var(--cando-border-disabled);border-radius:var(--cando-space-2);background:var(--cando-background-surface)}
.home-teacher-card__portrait{display:grid;place-items:center;position:relative;height:222px;overflow:hidden;background:var(--cando-primary-50)}
.home-teacher-card__portrait img{display:block;width:100%;height:260px;object-fit:contain;object-position:center top;align-self:start}
.home-teacher-card__portrait:has(img)::after{content:"";position:absolute;inset:0;bottom:auto;height:260px;background:linear-gradient(to top,rgb(0 0 0 / 50%),transparent 50%);pointer-events:none}
.home-teacher-initial{display:grid;place-items:center;width:100px;height:100px;background:var(--cando-primary-0);color:var(--cando-primary-500);border-radius:50%}
.home-teacher-initial .cando-icon{width:var(--cando-space-12);height:var(--cando-space-12)}
.home-teacher-card__body{display:flex;flex:1;flex-direction:column;gap:var(--cando-space-1);padding:var(--cando-space-4) var(--cando-space-3) var(--cando-space-6)}
.home-teacher-card__body .home-card-title{font-size:var(--cando-font-size-m);line-height:var(--cando-line-height-m);font-weight:var(--cando-font-weight-medium)}
.home-teacher-card__body>p{color:var(--cando-text-tertiary);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.home-teacher-tags{display:flex;flex-wrap:wrap;gap:6px;margin-block:var(--cando-space-3);min-height:var(--cando-line-height-m)}
.home-teacher-tags .home-tag{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-teacher-card .home-card-bottom{font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s)}
@media(max-width:767px){
 .home-teachers .catalog-rail-controls{display:none}
 .home-teachers .catalog-rail-pagination:not([hidden]){display:flex;direction:ltr;justify-content:center;align-items:center;margin-block-start:var(--cando-space-2)}
}
.home-rating{position:relative;display:inline-flex;align-items:center;gap:4px;flex:none;width:fit-content;padding:2px 8px;border-radius:4px;background:var(--cando-neutral-0);color:var(--cando-text-tertiary);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);direction:ltr}
.home-rating img{width:16px;height:16px}
.home-stories{position:relative;isolation:isolate;overflow:hidden;padding:var(--cando-space-12) clamp(16px,5vw,88px) var(--cando-space-8);background:var(--cando-neutral-500);color:var(--cando-text-on-primary);border:1px solid color-mix(in srgb,var(--cando-neutral-400) 70%,var(--cando-neutral-500));border-radius:var(--cando-space-4)}
.home-stories::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--cando-neutral-100) 16%,transparent) .8px,transparent 1px) 0 0/20px 20px;mask-image:linear-gradient(to bottom,#000,transparent 66%)}
.home-stories>header{text-align:center}
.home-stories>header h2{color:var(--cando-text-on-primary);font-size:clamp(28px,3vw,42px);line-height:1.6}
.home-stories>header>p{color:var(--cando-neutral-200);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);margin-block-start:var(--cando-space-3)}
.home-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--cando-space-4);margin-block-start:var(--cando-space-12)}
.home-story-card{display:flex;align-items:center;gap:var(--cando-space-3);padding:var(--cando-space-6);background:color-mix(in srgb,var(--cando-neutral-500) 75%,var(--cando-neutral-400));border:1px solid color-mix(in srgb,var(--cando-neutral-400) 75%,var(--cando-neutral-500));border-radius:var(--cando-space-3);min-width:0}
.home-story-card>img{width:52px;height:52px;flex:none;border:3px solid color-mix(in srgb,var(--cando-neutral-0) 8%,transparent);border-radius:50%;object-fit:cover}
.home-story-person{min-width:0;flex:1}
.home-story-card .home-card-title{color:var(--cando-text-on-primary);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);font-weight:var(--cando-font-weight-bold)}
.home-story-card .home-story-role{margin-block-start:var(--cando-space-1);color:var(--cando-text-on-primary);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-s);text-align:right;overflow-wrap:anywhere}
.home-company-strip{border-block-start:1px solid color-mix(in srgb,var(--cando-neutral-100) 15%,transparent);margin-block-start:var(--cando-space-10);padding-block-start:var(--cando-space-6);text-align:center}
.home-company-strip>p{color:var(--cando-neutral-200);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs)}
.home-company-strip>div{display:flex;direction:ltr;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--cando-space-3);margin:var(--cando-space-6) auto 0}
.home-company-logo{display:block;object-fit:contain;width:auto;height:auto}
@media(max-width:767px){
 .home-story-grid{display:flex;direction:rtl;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;margin-block-start:var(--cando-space-8)}
 .home-story-grid::-webkit-scrollbar{display:none}
 .home-story-grid:focus-visible{outline:2px solid var(--cando-neutral-100);outline-offset:4px}
 .home-story-card{flex:0 0 calc(100% - 44px);scroll-snap-align:start;display:grid;grid-template-columns:40px minmax(0,1fr) 52px;gap:var(--cando-space-2);padding:var(--cando-space-4) var(--cando-space-3);align-content:center}
 .home-story-card:only-child{flex-basis:100%}
 .home-story-card>img{width:40px;height:40px;grid-column:1;grid-row:1}
 .home-story-person{grid-column:2;grid-row:1}
 .home-story-card .home-story-brand{grid-column:3;grid-row:1;width:52px;padding:0;justify-self:end}
 .home-company-strip>div{gap:var(--cando-space-2)}
 .home-stories .home-company-mark{width:calc((100% - 24px)/4);height:60px;padding:8px}
 .home-stories .home-company-mark .home-company-logo{max-width:100%;max-height:44px}
}
@media(min-width:1024px){.home-story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.home-comment-card{display:flex;flex-direction:column;gap:var(--cando-space-2);min-height:210px;margin:0;padding:20px;border:1px solid var(--cando-border-disabled);border-radius:var(--cando-space-4);background:var(--cando-background-surface)}
.home-comment-card>.home-rating{align-self:flex-end}
.home-comment-card blockquote{width:min(100%,264px);margin:0;line-height:var(--cando-line-height-s)}
.home-comment-card figcaption{display:flex;align-items:center;gap:12px;margin-block-start:auto}
.home-comment-card figcaption>img{width:40px;height:40px;flex:none;border-radius:50%}
.home-comment-card figcaption strong,.home-comment-card figcaption span{display:block}
.home-comment-card figcaption strong{font-weight:var(--cando-font-weight-medium)}
.home-comment-card figcaption span{font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);color:var(--cando-text-tertiary)}
.home-blog-card{overflow:hidden;border:1px solid var(--cando-border-disabled);border-radius:16px;background:var(--cando-background-surface)}
.home-blog-card__image{height:176px;background:var(--cando-neutral-0)}
.home-blog-card__placeholder{display:grid;place-content:center;justify-items:center;gap:var(--cando-space-2);height:100%;color:var(--cando-text-tertiary)}
.home-blog-card__placeholder .cando-icon{width:var(--cando-space-8);height:var(--cando-space-8)}
.home-blog-card__image img{display:block;width:100%;height:176px;object-fit:cover}
.home-blog-card__body{display:flex;flex-direction:column;gap:12px;min-height:227px;padding:20px}
.home-blog-card .home-card-meta{font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);color:var(--cando-text-tertiary)}
.home-blog-card .home-card-title{font-size:var(--cando-font-size-m);line-height:var(--cando-line-height-m)}
.home-blog-card__body>p:not(.home-card-title){font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);color:var(--cando-text-tertiary)}
.home-blog-reading-time{margin-inline-start:auto}
.home-blog-author{position:relative;display:flex;align-items:center;gap:var(--cando-space-2);min-width:0;max-width:100%}
.home-blog-author>span:last-child{min-width:0;overflow-wrap:anywhere}
.home-blog-author img,.home-blog-author__avatar{width:var(--cando-space-6);height:var(--cando-space-6);flex:none;border-radius:50%;object-fit:cover}
.home-blog-author__avatar{display:grid;place-items:center;background:var(--cando-primary-0);color:var(--cando-primary-400)}
.home-blog-author__avatar .cando-icon{width:var(--cando-space-4);height:var(--cando-space-4)}
.home-band.home-about{padding-block:var(--cando-space-12);background:var(--cando-background-muted);border-block:1px solid var(--cando-border-muted)}
.home-about h2{color:var(--cando-primary-500);font-size:var(--cando-font-size-2xl);line-height:var(--cando-line-height-2xl)}
.home-about__columns{display:grid;gap:var(--cando-space-6);margin-block-start:var(--cando-space-6);color:var(--cando-text-tertiary);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s)}
.home-about__columns p+p{margin-block-start:var(--cando-space-3)}
.home-about__accent{color:var(--cando-text-secondary)}
.home-topic-chips{display:flex;direction:ltr;justify-content:center;flex-wrap:wrap;gap:var(--cando-space-2);margin-block-start:calc(var(--cando-space-6) + var(--cando-space-4))}
.home-topic-chips a{direction:rtl;padding:6px var(--cando-space-3);border:1px solid var(--cando-border-muted);border-radius:999px;background:transparent;color:var(--cando-text-tertiary);font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);transition:background-color var(--cando-motion-hover-duration) var(--cando-motion-hover-easing),border-color var(--cando-motion-hover-duration) var(--cando-motion-hover-easing),color var(--cando-motion-hover-duration) var(--cando-motion-hover-easing)}
.home-topic-chips a:hover{background:var(--cando-primary-0);border-color:var(--cando-primary-300);color:var(--cando-primary-500)}
@media(min-width:768px){.home-about__columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
.home-band.home-final-cta{display:flex;flex-direction:column;align-items:center;gap:var(--cando-space-8);padding:var(--cando-space-6);background:var(--cando-primary-0);text-align:center}
.home-final-cta__copy{display:flex;flex-direction:column;gap:var(--cando-space-2);max-width:var(--cando-layout-max)}
.home-final-cta__copy>p:first-child{font-size:var(--cando-font-size-xs);line-height:var(--cando-line-height-xs);color:var(--cando-text-tertiary)}
.home-final-cta h2{font-size:var(--cando-font-size-3xl);line-height:var(--cando-line-height-3xl)}
.home-final-cta h2 span{color:var(--cando-primary-400)}
.home-final-cta__copy>p{font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);font-weight:var(--cando-font-weight-medium);color:var(--cando-text-tertiary)}
.home-final-cta .button{width:298px;max-width:100%;min-height:48px;padding:11px 26px;border-radius:8px;font-size:var(--cando-font-size-m);line-height:var(--cando-line-height-m);box-shadow:0 2px 6px #7367f04d}
.expert-contact{width:440px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:var(--cando-space-8);border:1px solid var(--cando-border-subtle);border-block-start:4px solid var(--cando-brand-500);border-radius:var(--cando-space-4);background:var(--cando-background-surface);color:var(--cando-text-primary);text-align:center;box-shadow:0 24px 64px #03126926;overflow:auto}
.expert-contact::backdrop{background:#030b2e66}
:root:has(.expert-contact[open]){overflow:hidden}
.expert-contact__close{display:flex;justify-content:flex-end;margin:0}
.expert-contact__close button{display:grid;place-items:center;width:40px;height:40px;padding:0;background:transparent;border:0;border-radius:var(--cando-space-2)}
.expert-contact__icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto var(--cando-space-4);border-radius:var(--cando-space-4);background:var(--cando-primary-0);color:var(--cando-primary-500)}
.expert-contact__icon .cando-icon{width:28px;height:28px}
.expert-contact__title{margin:0;font-size:var(--cando-font-size-xl);line-height:var(--cando-line-height-xl);font-weight:var(--cando-font-weight-bold)}
.expert-contact__description{margin:var(--cando-space-3) 0 var(--cando-space-6);font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s);color:var(--cando-text-tertiary)}
.expert-contact__phones{display:grid;gap:var(--cando-space-3)}
.expert-contact__phones .button{gap:var(--cando-space-3);min-height:48px;border-color:var(--cando-border-subtle);color:var(--cando-primary-500)}
.expert-contact__link{display:inline-flex;align-items:center;justify-content:center;gap:var(--cando-space-2);margin-block-start:var(--cando-space-5);font-size:var(--cando-font-size-s);color:var(--cando-primary-500)}
@media(min-width:768px){.home-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(min-width:1280px){
 .home-band{padding-block:64px}
 .home-stats dl{grid-template-columns:repeat(4,minmax(0,1fr))}
 .home-stats dl>div{min-height:96px}
 .home-stats dt{font-size:var(--cando-font-size-s);line-height:var(--cando-line-height-s)}
 .home-stats dd{font-size:var(--cando-font-size-3xl);line-height:var(--cando-line-height-3xl)}
 .home-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .home-introduction__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);direction:ltr}
 .home-introduction{min-height:624px;display:grid;align-items:center}
 .home-introduction__inner{width:100%}
 .home-introduction__copy,.home-introduction__media{direction:rtl}
 .home-introduction .button{width:298px;align-self:flex-start}
 .home-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
 .home-benefits .home-section-heading{margin-block-end:24px}
 .home-comment-grid,.home-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
}

.home-courses{max-width:min(1280px,var(--cando-layout-max))}
.home-course-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--cando-space-4) var(--cando-space-6)}
.home-courses .home-section-link{font-size:var(--cando-font-size-l);line-height:var(--cando-line-height-l);color:var(--cando-info-500)}
@media(min-width:768px){.home-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){.home-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.home-courses .home-section-heading{margin-block-end:var(--cando-space-6)}

.home-goal:hover .home-goal__arrow,.home-goal:focus-visible .home-goal__arrow{transform:translateX(-3px)}
@media(prefers-reduced-motion:reduce){.home-goal:hover .home-goal__arrow,.home-goal:focus-visible .home-goal__arrow{transform:none}}

/* Compact employer marks are monochrome; the company row preserves original colors. */
.home-story-brand{display:grid;place-items:center;flex:none;width:74px;height:36px;padding:6px}
.home-story-brand img{display:block;max-width:100%;max-height:24px;width:auto;height:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.88}
.home-company-mark{display:grid;place-items:center;flex:none;width:104px;height:72px;padding:8px;border-radius:var(--cando-space-2);background:var(--cando-neutral-0)}
.home-company-mark .home-company-logo{max-width:88px;max-height:56px;filter:none}
/* Homepage comments: carousel with three cards in view (same controls as the course rows). */
.home-comment-rail{gap:var(--cando-space-6);padding-block:var(--cando-space-1)}
.home-comment-rail>.home-comment-card{flex:0 0 85%;scroll-snap-align:start}
@media(min-width:640px){.home-comment-rail>.home-comment-card{flex-basis:calc((100% - var(--cando-space-6)) / 2)}}
@media(min-width:1024px){.home-comment-rail>.home-comment-card{flex-basis:calc((100% - 2 * var(--cando-space-6)) / 3)}}
.home-comment-carousel .catalog-rail-pagination{display:none}
.home-comment-avatar{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:var(--cando-primary-50);color:var(--cando-primary-500)}
.home-comment-avatar .cando-icon{width:20px;height:20px}
.home-comment-card figcaption{display:flex;align-items:center;gap:var(--cando-space-3)}
/* Carousel end: the last card snaps flush instead of stopping on a partial position. */
.home-comment-rail>.home-comment-card:last-child{scroll-snap-align:end}
.home-comment-rail{scroll-padding-inline:0}
.home-comment-card figcaption .home-comment-avatar{display:grid;place-items:center;width:40px;height:40px;font-size:0}
.home-comment-card figcaption .home-comment-avatar .cando-icon{display:block;width:20px;height:20px}
