/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/*home css*/
:root {
  /* Brand Colors */
  --primary-color: #883F39;
  --primary-dark: #6D302C;
  --primary-light: #995954;

  --white: #ffffff;
  --ink: #251f1e;
  --muted: #706765;
  --soft: #f7f3f2;
  --soft-deep: #efe6e4;
  --border: rgba(136, 63, 57, 0.14);
  --shadow: 0 20px 60px rgba(53, 31, 28, 0.10);
  --shadow-hover: 0 30px 80px rgba(53, 31, 28, 0.16);

  --radius-sm: 14px;
  --radius-md: 22px;
  --radius-lg: 34px;
  --container: 1180px;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Poppins", sans-serif;
  color: var(--ink);
  background: var(--white);
  line-height: 1.7;
  overflow-x: hidden;
}

img {
  display: block;
  width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
}

.container {
  width: min(calc(100% - 40px), var(--container));
  margin-inline: auto;
}

.section {
  padding: 110px 0;
}

.section-soft {
  background:
    radial-gradient(circle at 10% 10%, rgba(153, 89, 84, .08), transparent 24%),
    var(--soft);
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--primary-color);
  font-size: .77rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.eyebrow.light {
  color: #f4d8d5;
}

.eyebrow-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #eab4af;
  box-shadow: 0 0 0 7px rgba(234, 180, 175, .12);
}

h1, h2, h3 {
  line-height: 1.16;
  letter-spacing: -.035em;
}

h2 {
  font-size: clamp(2rem, 4vw, 3.3rem);
  margin-bottom: 22px;
  color: #000;
}

p {
  color: var(--muted);
}
/*.reveal.revealed p{*/
/*    color: #fff;*/
/*}*/
.ftr a, .hero-grid p{
    color: #fff;
}
.ftr .ad p{
    color: #fff;
}
.ftr .e-75bd0c0-f362c52{
    flex-direction: column;
    gap: 10px;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 13px 22px;
  border-radius: 999px;
  font-weight: 600;
  transition:
    transform .35s var(--ease),
    background-color .35s ease,
    color .35s ease,
    border-color .35s ease,
    box-shadow .35s ease;
}

.btn svg {
  width: 18px;
  height: 18px;
  transition: transform .35s var(--ease);
}

.btn:hover {
  transform: translateY(-3px);
}

.btn:hover svg {
  transform: translate(2px, -2px);
}

.btn-primary {
  background-color: #883F39;
  color: #ffffff;
  border: 1px solid #883F39;
  box-shadow: 0 12px 34px rgba(136, 63, 57, .25);
}

.btn-primary:hover {
  background-color: #6D302C;
  border-color: #6D302C;
  box-shadow: 0 18px 45px rgba(109, 48, 44, .28);
}

.btn-outline {
  background: transparent;
  color: #883F39;
  border: 1px solid #883F39;
}

.btn-outline:hover {
  background-color: #883F39;
  color: #ffffff;
}

.btn-ghost-light {
  border: 1px solid rgba(255,255,255,.30);
  color: #fff;
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}

.btn-ghost-light:hover {
  background: rgba(255,255,255,.16);
  border-color: rgba(255,255,255,.45);
}

.btn-white {
  background: #fff;
  color: var(--primary-dark);
  border: 1px solid #fff;
}

.btn-outline-white {
  border: 1px solid rgba(255,255,255,.42);
  color: #fff;
}

.btn-outline-white:hover {
  background: #fff;
  color: var(--primary-dark);
}


/* HERO */
.hero {
  position: relative;
  min-height: 92vh;
  display: grid;
  align-items: center;
  background:
    linear-gradient(120deg, #3e1d1a 0%, #6d302c 42%, #883f39 100%);
  overflow: hidden;
  color: #fff;
  isolation: isolate;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.65), transparent 80%);
  z-index: -1;
}

.hero-noise {
  position: absolute;
  inset: 0;
  opacity: .12;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");
  z-index: -1;
}

.hero-glow {
  position: absolute;
  width: 460px;
  aspect-ratio: 1;
  border-radius: 50%;
  filter: blur(95px);
  opacity: .23;
  z-index: -1;
}

.hero-glow-one {
  background: #ffb36a;
  right: 3%;
  top: 4%;
}

.hero-glow-two {
  background: #ffefe9;
  left: -18%;
  bottom: -30%;
}

.hero-grid {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: 68px;
  align-items: center;
  padding-block: 88px;
}

.hero h1 {
  font-size: clamp(3rem, 5.8vw, 5.6rem);
  max-width: 820px;
  margin-bottom: 26px;
  color: #fff;
}

.hero h1 span {
  display: block;
  color: #f4c6c2;
}

.hero-subtitle {
  max-width: 720px;
  color: rgba(255,255,255,.76);
  font-size: 1.02rem;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}

.hero-proof {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 44px;
}

.proof-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.proof-item strong {
  font-size: .94rem;
}

.proof-item span {
  color: rgba(255,255,255,.56);
  font-size: .72rem;
}

.proof-divider {
  width: 1px;
  height: 34px;
  background: rgba(255,255,255,.18);
}

.hero-image-wrap {
  position: relative;
  border-radius: 38px;
  overflow: hidden;
  box-shadow: 0 35px 90px rgba(31, 10, 8, .34);
  transform: rotate(1.5deg);
  transition: transform .9s var(--ease);
}

.hero-image-wrap:hover {
  transform: rotate(0deg) scale(1.015);
}

.hero-image-wrap > img {
  aspect-ratio: .92 / 1;
  object-fit: cover;
}

.image-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to top, rgba(52,21,18,.62), transparent 46%),
    linear-gradient(140deg, rgba(136,63,57,.14), transparent);
}

.floating-card {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(255,255,255,.88);
  color: var(--ink);
  padding: 13px 16px;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 18px;
  box-shadow: 0 16px 45px rgba(25,10,9,.17);
  backdrop-filter: blur(14px);
  animation: floaty 5s ease-in-out infinite;
}

.floating-card span,
.floating-card strong {
  display: block;
}

.floating-card span {
  color: var(--muted);
  font-size: .66rem;
}

.floating-card strong {
  font-size: .83rem;
}

.floating-card-top {
  top: 22px;
  left: 22px;
}

.floating-card-bottom {
  bottom: 22px;
  right: 22px;
  animation-delay: -2.3s;
}

.icon-box,
.mini-ring {
  width: 40px;
  height: 40px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  flex: 0 0 40px;
  color: #fff;
  background: var(--primary-color);
}

.icon-box svg,
.mini-ring svg {
  width: 19px;
}

.scroll-cue {
  position: absolute;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,.52);
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .65rem;
}

.scroll-cue svg {
  width: 15px;
  animation: scrollDown 1.6s infinite;
}


/* ABOUT */
.about-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 80px;
  align-items: center;
}

.section-media {
  position: relative;
}

.media-frame {
  border-radius: 30px;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.media-frame img {
  aspect-ratio: 1 / 1.08;
  object-fit: cover;
  transition: transform 1s var(--ease);
}

.media-frame:hover img {
  transform: scale(1.04);
}

.media-badge {
  position: absolute;
  right: -20px;
  bottom: 26px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  background: var(--primary-color);
  padding: 15px 18px;
  border-radius: 16px;
  box-shadow: 0 18px 40px rgba(136,63,57,.24);
  font-size: .8rem;
  font-weight: 600;
}

.media-badge svg {
  width: 18px;
}

.section-copy > p + p {
  margin-top: 14px;
}

.mini-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 30px;
}

.mini-feature {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255,255,255,.74);
  font-size: .78rem;
  font-weight: 600;
}

.mini-feature svg {
  width: 18px;
  color: var(--primary-color);
}


/* SECTION HEADINGS */
.section-heading {
  max-width: 760px;
  margin-bottom: 52px;
}

.section-heading.center {
  text-align: center;
  margin-inline: auto;
}

.section-heading p {
  max-width: 650px;
}

.section-heading.center p {
  margin-inline: auto;
}


/* WHY */
.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.feature-card {
  position: relative;
  padding: 30px;
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  background: #fff;
  overflow: hidden;
  transition:
    transform .5s var(--ease),
    border-color .4s ease,
    box-shadow .5s var(--ease);
}

.feature-card::after {
  content: "";
  position: absolute;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  right: -65px;
  bottom: -70px;
  background: var(--soft-deep);
  transition: transform .6s var(--ease);
  z-index: 0;
}

.feature-card:hover {
  transform: translateY(-8px);
  border-color: rgba(136,63,57,.30);
  box-shadow: var(--shadow-hover);
}

.feature-card:hover::after {
  transform: scale(1.45);
}

.feature-card > * {
  position: relative;
  z-index: 1;
}

.feature-number {
  position: absolute;
  top: 22px;
  right: 24px;
  font-size: .72rem;
  color: rgba(136,63,57,.45);
  font-weight: 700;
}

.feature-icon {
  width: 48px;
  height: 48px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  color: var(--primary-color);
  background: var(--soft-deep);
  margin-bottom: 24px;
  transition: transform .5s var(--ease), background .35s, color .35s;
}

.feature-card:hover .feature-icon {
  transform: rotate(-7deg) scale(1.08);
  background: var(--primary-color);
  color: #fff;
}

.feature-icon svg {
  width: 22px;
}

.feature-card h3 {
  font-size: 1.05rem;
  margin-bottom: 12px;
  color: #000;
}

.feature-card p {
  font-size: .84rem;
}


/* COURSES */
.courses-section {
  color: #fff;
  background:
    radial-gradient(circle at 88% 10%, rgba(244,198,194,.15), transparent 24%),
    linear-gradient(135deg, #2f1715 0%, #5f2b27 62%, #71312d 100%);
}

.split-heading {
  max-width: none;
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 70px;
  align-items: end;
}

.split-heading h2 {
  max-width: 760px;
  color: #fff;
}

.split-heading p {
  color: rgba(255,255,255,.65);
}

.course-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.course-card {
  position: relative;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  padding: 32px;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.07);
  backdrop-filter: blur(10px);
  transition:
    transform .5s var(--ease),
    background .4s,
    border-color .4s;
}

.course-card:hover {
  transform: translateY(-9px);
  background: rgba(255,255,255,.11);
  border-color: rgba(255,255,255,.25);
}

.course-card.featured {
  background: #fff;
  color: var(--ink);
}

.course-tag {
  position: absolute;
  right: 24px;
  top: 24px;
  font-size: .65rem;
  letter-spacing: .12em;
  font-weight: 700;
  padding: 6px 10px;
  border-radius: 999px;
  color: #f4d8d5;
  background: rgba(255,255,255,.1);
}

.course-card.featured .course-tag {
  color: var(--primary-color);
  background: var(--soft-deep);
}

.course-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: rgba(255,255,255,.11);
  color: #f8d4d0;
  margin-bottom: 28px;
}

.course-card.featured .course-icon {
  background: var(--soft-deep);
  color: var(--primary-color);
}

.course-card h3 {
  font-size: 1.35rem;
  margin-bottom: 14px;
}

.course-card p {
  color: rgba(255,255,255,.64);
  font-size: .84rem;
}

.course-card.featured p {
  color: var(--muted);
}

.course-meta {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 28px 0;
}

.course-meta > div {
  padding: 12px 14px;
  border-radius: 13px;
  background: rgba(255,255,255,.08);
}

.course-card.featured .course-meta > div {
  background: var(--soft);
}

.course-meta span,
.course-meta strong {
  display: block;
}

.course-meta span {
  font-size: .65rem;
  color: rgba(255,255,255,.48);
  margin-bottom: 3px;
}

.course-card.featured .course-meta span {
  color: #958885;
}

.course-meta strong {
  font-size: .76rem;
}

.course-link {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  font-size: .78rem;
  font-weight: 700;
}

.course-link svg {
  width: 17px;
  transition: transform .35s var(--ease);
}

.course-link:hover svg {
  transform: translateX(5px);
}


/* SKILLS */
.skills-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 72px;
  align-items: center;
}

.skill-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-top: 30px;
}

.skill-list span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 12px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--border);
  font-size: .76rem;
  font-weight: 500;
}

.skill-list svg {
  width: 15px;
  height: 15px;
  color: var(--primary-color);
  stroke-width: 3;
}

.skills-visual {
  position: relative;
}

.skills-visual > img {
  aspect-ratio: .88 / 1;
  object-fit: cover;
  border-radius: 30px;
  box-shadow: var(--shadow);
}

.skills-overlay-card {
  position: absolute;
  left: -30px;
  bottom: 26px;
  max-width: 300px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 16px 18px;
  border-radius: 17px;
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow);
  backdrop-filter: blur(12px);
}

.skills-overlay-card > svg {
  flex: 0 0 32px;
  color: var(--primary-color);
}

.skills-overlay-card strong,
.skills-overlay-card span {
  display: block;
}

.skills-overlay-card strong {
  font-size: .84rem;
}

.skills-overlay-card span {
  font-size: .69rem;
  color: var(--muted);
  margin-top: 2px;
}


/* ELIGIBILITY */
.eligibility-wrap {
  position: relative;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
  padding: 55px;
  border-radius: var(--radius-lg);
  color: #fff;
  background:
    linear-gradient(135deg, rgba(255,255,255,.04), transparent),
    var(--primary-color);
  overflow: hidden;
}

.eligibility-wrap::after {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  right: -120px;
  bottom: -160px;
  background: rgba(255,255,255,.06);
}

.eligibility-copy {
  position: relative;
  z-index: 1;
}

.eligibility-copy p {
  color: rgba(255,255,255,.72);
}

.eligibility-copy small {
  display: block;
  margin-top: 22px;
  color: rgba(255,255,255,.50);
}

.eligibility-list {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.eligibility-chip {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 64px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.07);
  border-radius: 15px;
  font-size: .78rem;
  font-weight: 600;
  transition: transform .4s var(--ease), background .3s;
}

.eligibility-chip:hover {
  transform: translateX(5px);
  background: rgba(255,255,255,.11);
}

.eligibility-chip span {
  width: 33px;
  height: 33px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(255,255,255,.12);
  font-size: .67rem;
}


/* CAREERS MARQUEE */
.careers-section {
  overflow: hidden;
}

.career-marquee {
  width: 100%;
  overflow: hidden;
  padding: 10px 0;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.marquee-track {
  width: max-content;
  display: flex;
  gap: 12px;
  animation: marquee 32s linear infinite;
}

.marquee-track:hover {
  animation-play-state: paused;
}

.marquee-track span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 18px;
  border-radius: 999px;
  color: var(--primary-dark);
  background: var(--soft);
  border: 1px solid var(--border);
  font-size: .78rem;
  font-weight: 600;
}

.marquee-track svg {
  width: 17px;
}


/* CTA */
.cta-section {
  padding-top: 40px;
}

.cta-panel {
  position: relative;
  min-height: 420px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
  padding: 62px;
  border-radius: 36px;
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(120deg, #4e221f, #883f39 70%, #9d5b55);
}

.cta-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(90deg, #000, transparent 80%);
}

.cta-content {
  position: relative;
  z-index: 2;
  max-width: 680px;
}

.cta-content p {
  max-width: 580px;
  color: rgba(255,255,255,.7);
}

.cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.cta-graphic {
  position: relative;
  z-index: 1;
  width: 230px;
  height: 230px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  flex: 0 0 230px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}

.cta-graphic::before,
.cta-graphic::after {
  content: "";
  position: absolute;
  inset: 20px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 50%;
}

.cta-graphic::after {
  inset: 44px;
}

.cta-graphic svg {
  width: 94px;
  height: 94px;
  stroke-width: 1.3;
  color: #f2c5c1;
}

.cta-glow {
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  right: -100px;
  top: -120px;
  background: rgba(255,214,207,.13);
  filter: blur(10px);
}


/* FAQ */
.faq-grid {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 70px;
  align-items: start;
}

.faq-heading {
  position: sticky;
  top: 30px;
}

.faq-item {
  border-bottom: 1px solid rgba(136,63,57,.14);
}

.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 0;
  border: 0;
  background: transparent;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
  font-weight: 600;
}

.faq-question svg {
  width: 20px;
  color: var(--primary-color);
  transition: transform .4s var(--ease);
}

.faq-item.active .faq-question svg {
  transform: rotate(45deg);
}

.faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .45s var(--ease);
}

.faq-answer > div {
  overflow: hidden;
}

.faq-answer p {
  padding: 0 44px 22px 0;
  font-size: .88rem;
}

.faq-item.active .faq-answer {
  grid-template-rows: 1fr;
}


/* BACK TO TOP */
.back-to-top {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 20;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: var(--primary-color);
  box-shadow: 0 14px 36px rgba(136,63,57,.28);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: all .35s var(--ease);
}

.back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.back-to-top:hover {
  background: var(--primary-dark);
  transform: translateY(-3px);
}

.back-to-top svg {
  width: 19px;
}


/* REVEAL */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity .8s var(--ease),
    transform .8s var(--ease);
}

.reveal.revealed {
  opacity: 1;
  transform: translateY(0);
}

.reveal-delay-1 {
  transition-delay: .12s;
}

.reveal-delay-2 {
  transition-delay: .24s;
}


/* ANIMATIONS */
@keyframes floaty {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

@keyframes scrollDown {
  0%, 100% { transform: translateY(0); opacity: .5; }
  50% { transform: translateY(5px); opacity: 1; }
}

@keyframes marquee {
  to { transform: translateX(-50%); }
}


/* RESPONSIVE */
@media (max-width: 1080px) {
  .hero-grid {
    gap: 42px;
  }

  .feature-grid,
  .course-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .course-card:last-child {
    grid-column: 1 / -1;
  }

  .skills-grid {
    gap: 45px;
  }

  .eligibility-wrap {
    padding: 42px;
  }
}

@media (max-width: 860px) {
  .section {
    padding: 84px 0;
  }

  .hero {
    min-height: auto;
  }

  .hero-grid,
  .about-grid,
  .skills-grid,
  .faq-grid,
  .split-heading,
  .eligibility-wrap {
    grid-template-columns: 1fr;
  }

  .hero-grid {
    padding-block: 84px 110px;
  }

  .hero-content {
    max-width: 760px;
  }

  .hero-image-wrap {
    max-width: 720px;
    margin-inline: auto;
    transform: none;
  }

  .hero-image-wrap > img {
    aspect-ratio: 1.4 / 1;
  }

  .about-grid,
  .skills-grid {
    gap: 50px;
  }

  .section-media {
    max-width: 650px;
  }

  .media-frame img {
    aspect-ratio: 1.25 / 1;
  }

  .media-badge {
    right: 16px;
  }

  .split-heading {
    gap: 12px;
  }

  .skills-visual {
    max-width: 680px;
  }

  .skills-visual > img {
    aspect-ratio: 1.2 / 1;
  }

  .skills-overlay-card {
    left: 20px;
  }

  .eligibility-wrap {
    gap: 34px;
  }

  .faq-heading {
    position: static;
  }

  .cta-panel {
    padding: 50px 42px;
  }

  .cta-graphic {
    width: 180px;
    height: 180px;
    flex-basis: 180px;
  }
}

@media (max-width: 680px) {
  .container {
    width: min(calc(100% - 28px), var(--container));
  }

  .section {
    padding: 68px 0;
  }

  h2 {
    font-size: clamp(1.85rem, 8vw, 2.55rem);
  }

  .hero-grid {
    padding-top: 62px;
    gap: 46px;
  }

  .hero h1 {
    font-size: clamp(2.55rem, 12vw, 4.2rem);
  }

  .hero-actions,
  .cta-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .btn {
    width: 100%;
  }

  .hero-proof {
    flex-wrap: wrap;
  }

  .proof-divider {
    display: none;
  }

  .proof-item {
    min-width: 28%;
  }

  .hero-image-wrap {
    border-radius: 25px;
  }

  .hero-image-wrap > img {
    aspect-ratio: .92 / 1;
  }

  .floating-card {
    transform: scale(.86);
    transform-origin: left top;
  }

  .floating-card-bottom {
    transform-origin: right bottom;
  }

  .mini-feature-grid,
  .feature-grid,
  .course-grid,
  .skill-list,
  .eligibility-list {
    grid-template-columns: 1fr;
  }

  .course-card:last-child {
    grid-column: auto;
  }

  .feature-card,
  .course-card {
    padding: 25px;
  }

  .skills-visual > img {
    aspect-ratio: .9 / 1;
  }

  .skills-overlay-card {
    position: relative;
    left: auto;
    bottom: auto;
    margin: -45px 15px 0;
  }

  .eligibility-wrap {
    padding: 30px 22px;
    border-radius: 25px;
  }

  .cta-panel {
    min-height: auto;
    padding: 38px 24px;
    border-radius: 26px;
  }

  .cta-graphic {
    display: none;
  }

  .faq-answer p {
    padding-right: 10px;
  }

  .back-to-top {
    right: 16px;
    bottom: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }
}

/* =========================================================
   PNIFS INNER PAGES - SHARED CSS
   About / Contact / Courses / Policies / BSS / SBTET Pages
   ========================================================= */

/* Inner page hero */
.hero-image{position:relative;border-radius:34px;overflow:hidden;box-shadow:0 34px 90px rgba(24,9,8,.34);transition:transform .8s var(--ease),box-shadow .8s var(--ease)}
.hero-image:hover{transform:translateY(-7px) rotate(-.5deg);box-shadow:0 42px 100px rgba(24,9,8,.4)}
.hero-image img{width:100%;aspect-ratio:1/1.05;object-fit:cover;transition:transform 1s var(--ease)}
.hero-image:hover img{transform:scale(1.035)}
.hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(60,25,22,.48),transparent 55%),linear-gradient(135deg,rgba(136,63,57,.12),transparent);pointer-events:none}
.hero-badge{position:absolute;right:20px;bottom:20px;z-index:2;padding:13px 16px;border:1px solid rgba(255,255,255,.55);border-radius:15px;background:rgba(255,255,255,.9);color:var(--ink);box-shadow:0 15px 35px rgba(0,0,0,.15);backdrop-filter:blur(12px);font-size:.75rem;font-weight:600}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn-light{background:#fff;color:var(--primary-dark);border:1px solid #fff}.btn-light:hover{background:#f7eeee;color:var(--primary-dark);border-color:#f7eeee}

/* Common inner layouts */
.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:58px;align-items:start}.content-grid.align-center{align-items:center}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{position:relative;padding:28px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;box-shadow:0 8px 28px rgba(70,40,37,.05);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .35s ease}
.card::after{content:"";position:absolute;right:-72px;bottom:-82px;width:145px;height:145px;border-radius:50%;background:rgba(136,63,57,.05);transition:transform .55s var(--ease);pointer-events:none}.card:hover{transform:translateY(-7px);border-color:rgba(136,63,57,.28);box-shadow:var(--shadow-hover)}.card:hover::after{transform:scale(1.45)}.card>*{position:relative;z-index:1}.card h3{margin-bottom:10px;font-size:1.08rem}.card p{margin-top:8px;font-size:.85rem}.card p strong{color:var(--ink)}

/* Dark information panel */
.detail-panel{position:relative;padding:38px;border-radius:var(--radius-lg);background:radial-gradient(circle at 90% 10%,rgba(255,255,255,.09),transparent 26%),linear-gradient(135deg,#4f2421,var(--primary-color));color:#fff;box-shadow:var(--shadow);overflow:hidden}.detail-panel::after{content:"";position:absolute;right:-105px;bottom:-135px;width:300px;height:300px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 68px rgba(255,255,255,.018)}.detail-panel>*{position:relative;z-index:1}.detail-panel h2,.detail-panel h3,.detail-panel strong{color:#fff}.detail-panel p{color:rgba(255,255,255,.73)}

/* Check list */
.list-check{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.list-check span{display:flex;align-items:flex-start;gap:9px;min-height:48px;padding:11px 13px;border:1px solid var(--border);border-radius:13px;background:#fff;color:var(--ink);font-size:.78rem;font-weight:500;transition:transform .35s var(--ease),border-color .35s ease,background-color .35s ease}.list-check span:hover{transform:translateX(4px);border-color:rgba(136,63,57,.3);background:#fdf9f8}.detail-panel .list-check span{color:#fff;border-color:rgba(255,255,255,.15);background:rgba(255,255,255,.08)}.detail-panel .list-check span:hover{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.12)}

/* Timeline / training approach */
.timeline{display:grid;gap:0}.timeline-item{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start;padding:19px 0;border-bottom:1px solid var(--border)}.timeline-item:first-child{padding-top:0}.timeline-item:last-child{padding-bottom:0;border-bottom:0}.timeline-num{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#fff;background:var(--primary-color);box-shadow:0 9px 25px rgba(136,63,57,.2);font-size:.72rem;font-weight:700}.timeline-item h3{margin-bottom:5px}.timeline-item p{font-size:.85rem}

/* Course meta */
.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:4px}.meta{padding:15px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.08);transition:transform .35s var(--ease),background-color .35s ease}.meta:hover{transform:translateY(-3px);background:rgba(255,255,255,.12)}.meta span,.meta strong{display:block}.meta span{margin-bottom:3px;color:rgba(255,255,255,.58);font-size:.67rem}.meta strong{color:#fff;font-size:.82rem}

/* Course comparison table */
.table-responsive{width:100%;overflow-x:auto;border-radius:18px;box-shadow:var(--shadow);-webkit-overflow-scrolling:touch}.info-table{width:100%;min-width:690px;border-collapse:collapse;background:#fff}.info-table th,.info-table td{padding:15px 16px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;font-size:.78rem}.info-table th{color:#fff;background:var(--primary-color);font-weight:600}.info-table tbody tr{transition:background-color .3s ease}.info-table tbody tr:hover{background:#fbf6f5}.info-table tr:last-child td{border-bottom:0}
.notice{position:relative;padding:18px 20px;border:1px solid var(--border);border-left:4px solid var(--primary-color);border-radius:12px;background:var(--soft);color:var(--muted);font-size:.84rem}

/* Inner CTA */
.cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px;border-radius:var(--radius-lg);color:#fff;background:radial-gradient(circle at 92% 15%,rgba(255,255,255,.09),transparent 24%),linear-gradient(120deg,#4d211e,var(--primary-color));overflow:hidden}.cta::after{content:"";position:absolute;width:280px;height:280px;right:-100px;top:-120px;border-radius:50%;background:rgba(255,255,255,.06);box-shadow:0 0 0 40px rgba(255,255,255,.022),0 0 0 80px rgba(255,255,255,.015)}.cta>*{position:relative;z-index:1}.cta h2,.cta h3{color:#fff}.cta p{max-width:700px;color:rgba(255,255,255,.72)}

/* Contact page */
.cf7form {
    max-width: 780px;
    margin: 50px auto 0 auto;
    border: 1px solid var(--border);
    box-shadow: 0 8px 28px rgba(70,40,37,.05);
    border-radius: 10px;
    padding: 20px;
}
.cform{
    margin: 0px 0 25px 0 !important;
}
br{
    display: none;
}
.cform p{
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin: 0 auto;
    justify-content: space-between;
}
.cform p label{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    max-width: 100%;
    flex: 0 0 46%;
}
.wpcf7.js .wpcf7-submit{
    color: var(--primary-dark);
    border: 1px solid var(--primary-dark);
}
.wpcf7 textarea.small-height {
  height: 80px;
}
.qc p{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.contact-card{position:relative;padding:30px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;box-shadow:0 8px 28px rgba(70,40,37,.05);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .35s ease}.contact-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary-dark),var(--primary-color),var(--primary-light));transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}.contact-card:hover{transform:translateY(-7px);border-color:rgba(136,63,57,.28);box-shadow:var(--shadow-hover)}.contact-card:hover::before{transform:scaleX(1)}.contact-card h3{margin-bottom:9px}.contact-card strong{display:block;margin-top:8px;color:var(--primary-dark)}.contact-card p,.contact-card a{color:var(--muted);font-size:.84rem}.contact-card a{transition:color .3s ease}.contact-card a:hover{color:var(--primary-color)}

/* Privacy policy + Terms */
.policy{max-width:900px;margin-inline:auto}.policy .section-heading{max-width:780px}.policy-block{position:relative;padding:29px 0;border-bottom:1px solid var(--border)}.policy-block:first-of-type{padding-top:10px}.policy-block:last-child{border-bottom:0}.policy-block h2{margin-bottom:10px;color:var(--ink);font-size:1.42rem;letter-spacing:-.025em}.policy-block h3{margin-bottom:8px}.policy-block p,.policy-block li{color:var(--muted);font-size:.9rem}.policy-block p+p{margin-top:10px}.policy-block ul,.policy-block ol{padding-left:21px;margin-top:10px}.policy-block li+li{margin-top:5px}.policy-block a{color:var(--primary-color);font-weight:500;transition:color .3s ease}.policy-block a:hover{color:var(--primary-dark)}

/* Inner-page FAQ aliases */
.faq{max-width:900px;margin-inline:auto}.faq .section-heading{margin-inline:auto}.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font-weight:600}.faq-q i{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;border-radius:50%;background:var(--soft-deep);color:var(--primary-color);font-style:normal;font-size:1.05rem;transition:transform .4s var(--ease),background-color .3s ease,color .3s ease}.faq-item.active .faq-q i{transform:rotate(45deg);background:var(--primary-color);color:#fff}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease)}.faq-a>div{overflow:hidden}.faq-a p{padding:0 44px 21px 0;font-size:.86rem}.faq-item.active .faq-a{grid-template-rows:1fr}

/* Inner-page back to top alias */
.back-top{position:fixed;right:24px;bottom:24px;z-index:20;width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:50%;color:#fff;background:var(--primary-color);box-shadow:0 14px 36px rgba(136,63,57,.28);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .35s var(--ease),visibility .35s var(--ease),transform .35s var(--ease),background-color .3s ease}.back-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-top:hover{background:var(--primary-dark);transform:translateY(-3px)}

/* Inner-page responsive */
@media(max-width:1080px){.content-grid{gap:42px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.content-grid{grid-template-columns:1fr;gap:42px}.hero-image{max-width:720px;margin-inline:auto}.hero-image img{aspect-ratio:1.35/1}.detail-panel{padding:34px}.cta{padding:38px 34px}}
@media(max-width:680px){.hero-image{border-radius:25px}.hero-image img{aspect-ratio:.95/1}.hero-badge{right:14px;bottom:14px;max-width:calc(100% - 28px)}.btn-row{flex-direction:column;align-items:stretch}.card-grid,.contact-cards,.list-check,.meta-grid{grid-template-columns:1fr}.card,.contact-card{padding:24px}.detail-panel{padding:28px 22px;border-radius:25px}.timeline-item{grid-template-columns:45px 1fr;gap:13px}.cta{display:block;padding:30px 22px;border-radius:25px}.cta .btn-row{margin-top:22px}.policy-block{padding:23px 0}.policy-block h2{font-size:1.25rem}.faq-a p{padding-right:8px}.back-top{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.hero-image,.hero-image img,.card,.contact-card,.list-check span,.meta,.faq-q i,.back-top{transition-duration:.01ms!important}}