
/* Desktop alignment measured against the 1440px Civil LP reference. */
.footer-cta .footer-cta__title-row { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-end; justify-content: flex-start; gap: 20px; }
.footer-cta .button--roadmap { position: static; flex: 0 0 auto; width: max-content; max-width: 100%; min-height: 50px; margin: 0 0 5px; padding: 12px 20px; gap: 10px; }
.footer-cta .button--roadmap span:nth-child(2) { font-size: 16px; }
.footer-cta .button--roadmap img { width: 22px; height: 22px; }
.hero__inner { padding-block: 76px 84px; align-items: center; }
.hero__form-card { min-height: 520px; padding: 28px 34px 32px; border: 2px solid #EAA335; border-radius: 20px; background: #ffffff; }
.hero .field-error:empty, .hero .form-status:empty { display: none; }
.hero .form-field input, .hero .form-field select { font-size: 13.5px; }
.hero .form-field input::placeholder { font-size: 13.5px; }
.hero .phone-input > span { font-size: 13.5px; }
.hero .lead-form__submit { margin-top: 12px; }
.hero .lead-form { gap: 14px; }
.hero .lead-form__intro h2 { margin-bottom: 18px; }
.hero__lede { margin-top: 16px; margin-bottom: 28px; }
.hero::after { display: none; }
.video-panel { min-height: auto; overflow: visible; }
.video-panel .section-heading h2 span { margin-top: 6px; }
.video-player { width: min(100%, 782px); aspect-ratio: 1.65; margin: 36px auto 46px; }
.video-actions .button { min-height: 56px; }
.tools-section { overflow: visible; padding-block: 54px 21px; }
.tools-section .capability-item > .capability-icon { color: var(--color-purple); }
.tools-section .carousel-wrap { position: relative; display: flex; flex-direction: column; width: 100%; max-width: 100%; margin-left: 0; }
.tools-section .carousel-toolbar { order: 1; justify-content: center; margin: 18px 0 4px; }
.tools-section .carousel-hint { display: none; }
.tools-section .training-card { flex-basis: 360px; }
.tools-section .training-card p { max-width: 310px; line-height: 1.6; }
.professional-section { padding-block: 52px 19px; }
.professional-section .section-heading { margin-bottom: 54px; }
.professional-section .gallery-stage { width: min(calc(100vw - 84px), 1356px); }
.professional-section .gallery-slide--left { width: calc(319 / 1356 * 100%); }
.professional-section .gallery-slide--right { right: auto; left: calc(695 / 1356 * 100%); }
.professional-section .gallery-slide--hidden { top: calc(40 / 520 * 100%); left: auto; right: 0; width: calc(319 / 1356 * 100%); height: calc(440 / 520 * 100%); opacity: 1; visibility: visible; transform: none; }
.testimonials-section { padding-block: 44px 40px; background-image: none; isolation: isolate; }
.testimonials-section::before { position: absolute; z-index: -1; left: 0; bottom: 0; width: min(1040px, 75%); height: 720px; content: ''; background: url('assets/house-blueprint.png') left bottom / cover no-repeat; opacity: .1; transform: scaleX(-1); pointer-events: none; }
.testimonials-section .section-heading p { font-size: 24px; }
.testimonials-section .testimonials-grid { grid-template-columns: 423px 490px; align-items: start; gap: 192px; width: 1105px; margin: 32px auto 0; transform: translateX(12px); }
.testimonials-section .featured-student__media { height: 686px; aspect-ratio: auto; }
.testimonials-section .story-list { margin-top: 48px; padding: 28px 30px 20px; }
.testimonials-section .story-row[data-student="aadhithiya"] { display: none; }
.testimonials-section .story-row { min-height: 113px; padding: 10px 8px; border-radius: 0; }
.testimonials-section .story-row.is-active { background: transparent; box-shadow: none; }
.showcase-section { padding-block: 42px; }
.showcase-section > .showcase-panel { padding-top: 76px; background-color: #f1ebf7; background-image: linear-gradient(#e7deef88 1px, transparent 1px), linear-gradient(90deg, #e7deef88 1px, transparent 1px); background-size: 8px 8px; }
.showcase-section .project-stack { height: 724px; margin-top: 86px; }
.showcase-section .project-card--center { width: 545px; height: 680px; aspect-ratio: auto; }
.showcase-section .project-card--left { top: 64px; left: 15.15%; width: 377px; height: 556px; aspect-ratio: auto; }
.showcase-section .project-card--right { top: 64px; right: 11.46%; width: 377px; height: 556px; aspect-ratio: auto; }
.showcase-section .project-card--back-two { top: 102px; left: 7.3%; width: 319px; height: 482px; aspect-ratio: auto; }
.showcase-section .project-card--back-one { top: 148px; width: 319px; height: 409px; aspect-ratio: auto; }
.showcase-section .project-card--front { top: 128px; width: 319px; height: 428px; aspect-ratio: auto; }
.showcase-section .project-card__caption { padding: 18px 24px; }
.showcase-section .project-card__caption .project-card__avatar { width: 72px; height: 72px; flex-basis: 72px; }
.outcomes-section { min-height: 522px; }
.outcomes-inner { width: min(calc(100% - 112px), 1328px); min-height: 522px; grid-template-columns: 510px minmax(0, 1fr); gap: 38px; padding-block: 70px 84px; }
.outcomes-copy h2 { font-size: 60px; white-space: nowrap; }
.outcomes-grid { gap: 42px 40px; }
.outcome-card { display: flex; flex-direction: column; justify-content: center; min-height: 162px; padding: 24px; }
.outcome-card h3 { font-size: 24px; }
.outcome-card p { font-size: 18px; }
.why-section .process-panel { padding-bottom: 56px; }
.why-section .process-step__copy { grid-template-columns: auto 1fr; column-gap: 6px; padding-left: 32px; }
.why-section .process-step__copy h3 { font-weight: 500; }
.why-section .process-step__copy p { padding-left: 8px; }
.why-section .process-step:nth-child(even) .process-step__copy p { padding-left: 0; }
.success-section { padding: 0 0 26px; }
.success-section .success-panel { width: min(calc(100% - 36px), 1400px); }
.success-section .placement-card--featured > div { padding-inline: 27px; }
.success-section .placement-card--featured p { font-size: 19px; }
.faq-section .faq-inner { min-height: 640px; }
.faq-section .faq-list { margin-top: 24px; padding-top: 32px; padding-bottom: 12px; }

@media (max-width: 1399px) {
  .hero__inner { grid-template-columns: minmax(0, 1fr) 360px; gap: 36px; }
  .hero__badge-fest { font-size: clamp(24px, 2.6vw, 36px); padding: 8px 30px; }
  .hero__title { font-size: clamp(22px, 2.2vw, 30px); }
  .hero__form-card { padding-inline: 28px; }
  .hero .benefit-pill { padding-inline: 8px; font-size: 15px; }
  .testimonials-section .testimonials-grid { width: 100%; grid-template-columns: minmax(0, 423px) minmax(0, 490px); gap: clamp(50px, 9vw, 126px); transform: none; }
  .testimonials-section .featured-student__media { height: 600px; }
  .testimonials-section .story-list { padding-inline: 20px; }
  .showcase-section .project-card--center { width: 40.55%; }
  .showcase-section .project-card--left, .showcase-section .project-card--right { width: 28%; }
  .outcomes-inner { grid-template-columns: minmax(0, .38fr) minmax(0, .62fr); gap: 24px; width: calc(100% - 80px); }
  .outcomes-copy h2 { font-size: 4vw; }
  .outcomes-copy > p { font-size: 20px; }
  .outcomes-grid { gap: 24px; }
  .outcome-card { padding: 20px; }
  .outcome-card h3 { font-size: 20px; }
  .outcome-card p { font-size: 16px; }
  .success-section .success-portraits { width: calc(100% - 46.5714vw - 8vw); }
  .success-section .success-next { right: -4.5vw; }
}
