/* === Anigdha Italy — Main (Homepage sections + responsive) === */
/* Base styles — MOVED to base.css */
/* Nav, dropdown, header CTA, mobile overlay — MOVED to header.css */
/* Footer styles — MOVED to footer.css */
/* FAQ, courses archive, CF7 forms, course page, page banner,
   blog hovers, single post content — MOVED to components.css */
/* Static pages sidebar — MOVED to pages.css */
/* Blog hovers, single post Gutenberg — MOVED to single.css */

/* ═══════════════════════════════════════
   SECTION-SCOPED TYPOGRAPHY (SEO-clean H/P)
   ═══════════════════════════════════════ */

/* ── Hero ── */
.hero-content h1 { margin: 0 0 22px; font-family: 'Poppins', sans-serif; font-size: 52px; line-height: 1.08; font-weight: 700; color: #fff; letter-spacing: -1.6px; text-wrap: pretty; }
.hero-content .hero-desc { margin: 0 0 36px; font-family: 'Poppins', sans-serif; font-size: 16px; line-height: 1.85; color: rgba(255,255,255,0.72); max-width: 520px; text-wrap: pretty; }

/* ── Why Study ── */
#why-study h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; margin-bottom: 18px; text-align: center; }
#why-study .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; max-width: 760px; margin: 0 auto 46px; text-align: center; text-wrap: pretty; }
#why-study .benefit-card span { font-size: 16px; font-weight: 500; line-height: 1.6; color: #2E3238; }

/* ── Universities ── */
#universities h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; line-height: 1.2; margin-bottom: 18px; text-align: center; }
#universities .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; max-width: 760px; margin: 0 auto 44px; text-align: center; }

/* ── Courses ── */
#courses h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 16px; }
#courses .section-desc { font-size: 17px; line-height: 1.7; color: #4B5563; max-width: 760px; margin: 0 auto; }

/* ── Tuition Fees ── */
#tuition-fees h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; margin-bottom: 18px; }
#tuition-fees .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; max-width: 760px; margin: 0 auto; }

/* ── Scholarships ── */
#scholarships h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; margin-bottom: 18px; }
#scholarships .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; text-wrap: pretty; }

/* ── Eligibility ── */
#fees h2 { font-size: 40px; line-height: 1.2; font-weight: 700; color: #1A1A1A; letter-spacing: -1.2px; margin: 0 0 20px; }
#fees .section-desc { font-size: 17px; line-height: 1.95; color: #5A5A5A; max-width: 820px; margin: 0 auto; }
#fees h3 { font-size: 20px; font-weight: 700; color: #1A1A1A; text-align: center; margin: 0 0 18px; }

/* ── Admission Process ── */
#admissions h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 16px; }
#admissions .section-desc { font-size: 17px; line-height: 1.7; color: #4B5563; max-width: 760px; margin: 0 auto; }
#admissions .step-card h3 { font-size: 15px; font-weight: 700; color: #111827; margin-bottom: 8px; line-height: 1.4; }
#admissions .step-card p { font-size: 13px; color: #4B5563; line-height: 1.6; margin: 0; }

/* ── Admission Intakes ── */
#intakes h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 16px; }
#intakes .section-desc { font-size: 17px; line-height: 1.7; color: #4B5563; max-width: 760px; margin: 0 auto; }

/* ── Documents ── */
#documents h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 16px; }
#documents .section-desc { font-size: 17px; line-height: 1.7; color: #4B5563; max-width: 760px; margin: 0 auto; }

/* ── Cost of Living ── */
#cost-of-living h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; line-height: 1.2; margin-bottom: 18px; }
#cost-of-living .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; max-width: 760px; margin: 0 auto; }

/* ── Study Free ── */
#study-free h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; margin-bottom: 20px; }
#study-free .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; text-wrap: pretty; }

/* ── Education System ── */
#education-system h2 { margin: 0 0 24px; font-size: 40px; line-height: 1.2; font-weight: 700; color: #1A1A1A; letter-spacing: -1.2px; }
#education-system .section-desc { margin: 0 0 30px; font-size: 17px; line-height: 1.9; color: #5A5A5A; }

/* ── Public vs Private ── */
#pub-vs-priv h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 16px; }
#pub-vs-priv .section-desc { font-size: 17px; line-height: 1.7; color: #4B5563; max-width: 760px; margin: 0 auto; }
#pub-vs-priv h3 { font-size: 20px; font-weight: 700; color: #111827; margin: 0; }

/* ── Facts & Figures ── */
.facts-section h2 { font-size: 40px; font-weight: 700; margin: 0; }

/* ── At a Glance ── */
#glance h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 40px; }

/* ── Testimonials ── */
#testimonials h2 { font-size: 40px; font-weight: 700; color: #111827; margin: 0; }

/* ── Why Trust Us ── */
#trust h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; line-height: 1.2; margin-bottom: 18px; }
#trust .section-desc { font-size: 17px; line-height: 1.8; color: #4A4F55; max-width: 760px; margin: 0 auto; }
#trust .trust-quote { font-size: 17px; line-height: 1.7; color: #16181A; font-style: italic; font-weight: 500; }

/* ── Blog ── */
#blog h2 { font-size: 40px; font-weight: 700; color: #111827; margin-bottom: 16px; }
#blog .section-desc { font-size: 17px; line-height: 1.7; color: #4B5563; max-width: 760px; margin: 0 auto; }

/* ── Contact CTA ── */
#contact h2 { font-size: 40px; font-weight: 800; letter-spacing: -0.03em; color: #FFFFFF; line-height: 1.12; margin-bottom: 22px; }
#contact .section-desc { font-size: 17px; line-height: 1.7; color: #C6CBD0; max-width: 620px; font-style: italic; }

/* ── FAQ ── */
#faq h2 { font-size: 40px; font-weight: 700; letter-spacing: -0.025em; color: #16181A; margin: 0; }

/* ═══════════════════════════════════════
   RESPONSIVE — Large Desktop (min-width: 1441px)
   ═══════════════════════════════════════ */
@media (min-width: 1439px) {
    .hero-form { right: 150px !important; }
}

/* ═══════════════════════════════════════
   RESPONSIVE — Tablet (max-width: 1024px)
   ═══════════════════════════════════════ */
@media (max-width: 1024px) {

    /* --- Global section padding --- */
    .hero-content,
    .section-wrap { padding-left: 24px !important; padding-right: 24px !important; }

    /* --- Public vs Private learn more --- */


    /* --- Header --- */
    .site-topbar { padding: 0 20px !important; }
    .topbar-left { gap: 16px !important; }
    .topbar-left > span:nth-child(2),
    .topbar-left > span:nth-child(3) { display: none !important; }
    .site-header { padding: 0 !important; height: auto !important; }
    .header-inner { padding: 0 20px !important; height: 68px !important; }
    .site-nav { padding: 0 20px !important; overflow-x: auto; }

    /* --- Hero --- */
    .hero-section { height: auto !important; min-height: auto !important; display: flex !important; flex-direction: column-reverse !important; }
    .hero-content { position: relative !important; left: auto !important; top: auto !important; transform: none !important; width: 100% !important; padding: 60px 24px 40px !important; }
    .hero-content h1 { font-size: 38px !important; }
    .hero-form { position: relative !important; right: auto !important; top: auto !important; transform: none !important; width: 100% !important; padding: 60px 24px 0 !important; }

    /* --- Page Banner --- */
    .page-banner { height: 300px !important; }
    .page-banner h1 { font-size: 42px !important; }
    .banner-deco { display: none !important; }

    /* --- Static Pages --- */
    .page-content-wrap { padding: 50px 24px 70px !important; }
    .page-sidebar { width: 360px !important; flex: 0 0 360px !important; }
    /* --- Single Course --- */
    .course-stat-strip { flex-wrap: wrap !important; }
    .course-stat-strip > div { flex: 1 1 50% !important; }
    .course-content-wrap { padding: 50px 24px 70px !important; }
    .course-sidebar { width: 360px !important; flex: 0 0 360px !important; }

    /* --- Courses Archive --- */
    .courses-listing { padding: 40px 24px 60px !important; }
    .courses-archive-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 22px !important; }
    .course-archive-card { height: 340px !important; }

    /* --- Blog (homepage preview) --- */
    .blog-header { flex-direction: column !important; align-items: flex-start !important; gap: 20px !important; }
    .blog-grid { grid-template-columns: repeat(2, 1fr) !important; }

    /* --- Blog Listing & Single Post --- */
    .blog-listing { padding: 60px 24px !important; }
    .blog-sidebar { width: 340px !important; flex: 0 0 340px !important; }
    .blog-card h3 { font-size: 21px !important; }
    .single-post-banner-title { font-size: var(--banner-h1) !important; max-width: 800px !important; }
    .single-post-hero { height: 420px !important; }
    /* Content responsive moved to content.css */

    /* --- Footer --- */
    footer { padding: 50px 24px 0 !important; }
    .footer-columns { grid-template-columns: 1fr 1fr !important; gap: 40px !important; padding: 70px 0 60px !important; }
    .footer-bottom { flex-direction: column !important; gap: 14px !important; text-align: center !important; padding: 24px 0 70px !important; }
    .footer-back-top { right: 20px !important; bottom: 24px !important; }

    /* --- Homepage H2s only --- */
    .home h2 { font-size: 34px !important; letter-spacing: -0.8px !important; }

    /* --- Scholarships --- */
    .scholarships-layout { flex-direction: column !important; gap: 32px !important; }

    /* --- Contact Page --- */
    .contact-layout { flex-direction: column !important; gap: 32px !important; }

    /* --- Blog carousel (2 visible) --- */
    #bc-track > .bc-card { flex: 0 0 calc((100% - 24px) / 2) !important; }
}


/* ═══════════════════════════════════════
   RESPONSIVE — Mobile (max-width: 768px)
   ═══════════════════════════════════════ */
@media (max-width: 768px) {

    /* --- Responsive grids --- */
    .resp-grid-2 { grid-template-columns: 1fr !important; gap: 40px !important; }
    .resp-grid-3 { grid-template-columns: repeat(2, 1fr) !important; }
    .pvp-learn-more { justify-content: start !important; }

    /* --- Admission Intakes --- */
    .intake-grid { grid-template-columns: 1fr !important; }
    .intake-grid > div { padding: 28px 24px !important; }
    .intake-grid > div > div > div:first-child { font-size: 28px !important; }
    /* --- Testimonials --- */
    #tc-track > div { flex: 0 0 100% !important; }

    /* --- Blog carousel (1 visible) --- */
    #bc-track > .bc-card { flex: 0 0 100% !important; }

    /* --- Cost of Living --- */
    .col-summary div[style*="font-size: 40px"] { font-size: 28px !important; white-space: nowrap !important; }
    .col-summary div[style*="font-size: 34px"] { font-size: 24px !important; white-space: nowrap !important; }

    /* --- Study Free --- */
    .study-free-card { padding: 28px 20px !important; gap: 28px !important; }

    /* --- At a Glance --- */
    .glance-grid { grid-template-columns: repeat(2, 1fr) !important; }

    /* --- Facts & Figures --- */
    .facts-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .facts-section { min-height: 440px; }
    .fact-tile { min-height: 120px !important; }

    /* --- Education System --- */
    .about-layout { flex-direction: column !important; gap: 40px !important; padding: 60px 20px !important; }
    .about-images { width: 100% !important; flex: none !important; height: auto !important; position: relative !important; display: flex !important; flex-wrap: wrap !important; gap: 12px !important; }
    .about-images > div { position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; }
    .about-images > div:nth-child(1) { width: 55% !important; height: 220px !important; }
    .about-images > div:nth-child(2) { width: 40% !important; height: 220px !important; border: 4px solid #fff !important; }
    .about-images > div:nth-child(3) { position: absolute !important; right: 0 !important; top: 0 !important; min-width: auto !important; padding: 10px 14px !important; }
    .about-images > div:nth-child(3) span:first-child { font-size: 24px !important; }
    .about-images > div:nth-child(3) span:last-child { font-size: 11px !important; }
    .about-images > div:nth-child(4) { display: none !important; }

    /* --- Header --- */
    .site-topbar { display: none !important; }
    .site-header { padding: 0 !important; height: auto !important; }
    .header-inner { padding: 0 16px !important; height: 64px !important; }
    .site-header img { height: 48px !important; }
    .site-nav { padding: 0 16px !important; height: 54px !important; }
    .site-nav div { gap: 18px !important; font-size: 13.5px !important; }

    /* --- Hero --- */
    .hero-content { padding: 44px 18px 30px !important; }
    .hero-content h1 { font-size: 30px !important; letter-spacing: -0.8px !important; }
    .hero-content p { font-size: 14.5px !important; }
    .hero-content .btn-primary { height: 48px !important; padding: 0 24px !important; font-size: 14px !important; }
    .hero-form { padding: 50px 18px 0 !important; }

    /* --- Page Banner --- */
    .page-banner { height: 260px !important; }
    .page-banner h1 { font-size: 32px !important; letter-spacing: -0.8px !important; }

    /* --- Static Pages --- */
    .page-content-wrap { flex-direction: column !important; padding: 30px 18px 50px !important; }
    .page-sidebar { width: 100% !important; flex: none !important; position: static !important; }
    /* --- Single Course --- */
    .course-stat-strip { position: relative !important; flex-wrap: wrap !important; }
    .course-stat-strip > div { flex: 1 1 50% !important; padding: 14px 18px !important; }
    .course-content-wrap { flex-direction: column !important; padding: 30px 18px 50px !important; }
    .course-sidebar { width: 100% !important; flex: none !important; position: static !important; }
    /* Course content responsive moved to content.css */

    /* --- Courses Archive --- */
    .courses-listing { padding: 30px 18px 50px !important; }
    .courses-archive-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
    .course-archive-card { height: 320px !important; }

    /* --- Blog Listing & Single Post --- */
    .blog-listing { flex-direction: column !important; padding: 40px 18px !important; gap: 30px !important; }
    .blog-sidebar { width: 100% !important; flex: none !important; }
    .blog-grid { grid-template-columns: 1fr !important; }
    .blog-card h3 { font-size: 20px !important; }
    .single-post-banner-title { font-size: var(--banner-h1) !important; max-width: 100% !important; padding: 0 18px !important; }
    .single-post-hero { height: 300px !important; margin-bottom: 20px !important; }
    /* Blog content responsive moved to content.css */
    .comment-form-grid { grid-template-columns: 1fr !important; }

    /* --- Footer --- */
    footer { padding: 40px 18px 0 !important; }
    .footer-columns { grid-template-columns: 1fr !important; gap: 34px !important; padding: 50px 0 40px !important; }
    .footer-columns h4 { font-size: 20px !important; }
    .footer-bottom { font-size: 13px !important; padding: 20px 0 60px !important; }

    /* --- Homepage H2s only --- */
    .home h2 { font-size: 28px !important; letter-spacing: -0.6px !important; }

    /* --- All section-level padding override --- */
    div[style*="padding:72px 40px"],
    div[style*="padding:80px 40px"],
    div[style*="padding:100px 40px"],
    div[style*="padding:104px 40px"],
    div[style*="padding:70px 40px"],
    div[style*="padding:60px 40px"] {
        padding-left: 18px !important;
        padding-right: 18px !important;
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }
}


/* ═══════════════════════════════════════
   RESPONSIVE — Small Mobile (max-width: 480px)
   ═══════════════════════════════════════ */
@media (max-width: 480px) {
    /* --- Page Banner --- */
    .page-banner { height: 220px !important; }
    .page-banner h1 { font-size: 26px !important; }

    /* --- Static Pages --- */
    .page-content-wrap { padding: 24px 14px 40px !important; }
    .page-sidebar { gap: 20px !important; }

    /* --- Single Course --- */
    .course-stat-strip > div { flex: 1 1 100% !important; }
    /* Course content responsive moved to content.css */

    /* --- Courses Archive --- */
    .course-archive-card { height: 280px !important; }

    /* --- Blog --- */
    .blog-listing { padding: 30px 14px !important; gap: 24px !important; }
    .blog-card h3 { font-size: 18px !important; letter-spacing: -0.3px !important; }
    .single-post-banner-title { font-size: var(--banner-h1) !important; }
    .single-post-hero { height: 220px !important; }
    /* Blog content responsive moved to content.css */

    .hero-content h1 { font-size: 26px !important; }
    .home h2 { font-size: 24px !important; }

    /* --- Documents / resp-grid-3 --- */
    .resp-grid-3 { grid-template-columns: 1fr !important; }
    .site-nav div { gap: 12px !important; font-size: 12.5px !important; flex-wrap: wrap !important; }
}

/* ═══════════════════════════════════════
   RESPONSIVE — Narrow (max-width: 436px)
   ═══════════════════════════════════════ */
@media (max-width: 436px) {
    .facts-grid { grid-template-columns: 1fr !important; }
    .facts-section { min-height: auto; }
    .fact-tile { min-height: 100px !important; }
}
