/*
Theme Name: Vedinux Prabodha
Author: Vedinux Project
Description: Hindi-first block theme for Vedinux 1.0 Prabodha.
Version: 2.3.0
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: vedinux-prabodha
Tags: block-patterns, full-site-editing
*/

:root {
	--v-ink: #112033;
	--v-muted: #49596c;
	--v-paper: #f5f8fc;
	--v-white: #fff;
	--v-indigo: #0754a2;
	--v-indigo-deep: #061a34;
	--v-saffron: #ffb31a;
	--v-coral: #a34100;
	--v-line: #d8e2ed;
	--v-soft: #eaf2fa;
	--v-radius: 1.25rem;
}

html { scroll-behavior: smooth; }
body { background: var(--v-paper); color: var(--v-ink); font-family: "Noto Sans Devanagari", "Nirmala UI", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 1.0625rem; line-height: 1.72; }
a { color: var(--v-indigo); text-decoration-thickness: .08em; text-underline-offset: .2em; }
a:hover { color: var(--v-coral); text-decoration-thickness: .13em; }
:focus-visible { outline: 3px solid var(--v-coral); outline-offset: 4px; }
.wp-site-blocks { overflow: clip; }
.vedinux-shell { width: min(100% - 2.5rem, 76rem); margin-inline: auto; }
.vedinux-header { position: relative; z-index: 2; border-bottom: 1px solid rgb(255 255 255 / 14%); background: var(--v-indigo-deep); }
.vedinux-header-inner { min-height: 5.25rem; }
.vedinux-brand, .vedinux-footer-brand { gap: .65rem; color: var(--v-white); font-weight: 800; letter-spacing: -.035em; text-decoration: none; }
.vedinux-brand a, .vedinux-footer-brand a { display: inline-flex; align-items: center; gap: .65rem; color: inherit; text-decoration: none; }
.vedinux-brand a::before, .vedinux-footer-brand a::before { display: inline-block; width: 2.65rem; height: 2.65rem; flex: 0 0 2.65rem; background: url("assets/images/vedinux-logo.webp") center / contain no-repeat; content: ""; }
.vedinux-menu { color: #fff; }
.vedinux-menu a { color: rgb(255 255 255 / 88%); font-size: .93rem; text-decoration: none; }
.vedinux-menu a:hover, .vedinux-menu a:focus-visible { color: var(--v-saffron); }
.vedinux-hero { position: relative; isolation: isolate; overflow: hidden; background-color: var(--v-indigo-deep); background-image: linear-gradient(90deg, rgb(4 24 50 / 94%) 0%, rgb(4 24 50 / 83%) 52%, rgb(4 24 50 / 68%) 100%), url("assets/images/vedinux-wallpaper.webp"); background-position: center, 55% 52%; background-size: cover; color: var(--v-white); }
.vedinux-hero::before { position: absolute; z-index: -1; inset: 0; background: radial-gradient(ellipse at 82% 12%, rgb(0 162 206 / 16%), transparent 31%), radial-gradient(ellipse at 7% 100%, rgb(255 179 26 / 13%), transparent 38%); content: ""; }
.vedinux-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(19rem, .86fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; padding-block: clamp(4rem, 8vw, 7rem); }
.vedinux-kicker { color: var(--v-saffron); font-size: .88rem; font-weight: 800; letter-spacing: .07em; }
.vedinux-hero h1 { max-width: 14ch; margin-block: .75rem 1.1rem; color: var(--v-white); font-size: clamp(2.6rem, 6vw, 5.25rem); font-weight: 800; letter-spacing: -.055em; line-height: 1.17; }
.vedinux-hero .wp-block-paragraph { max-width: 42rem; color: rgb(255 254 250 / 88%); font-size: clamp(1.1rem, 1.8vw, 1.25rem); line-height: 1.8; }
.vedinux-hero .vedinux-hindi { max-width: 40rem; margin-top: .75rem; color: #fff; font-size: 1rem; line-height: 1.8; }
.vedinux-hero-preview-wrap { min-width: 0; }
.vedinux-hero-preview { margin: 0; padding: .55rem; border-color: rgb(255 255 255 / 24%); background: rgb(3 19 40 / 72%); box-shadow: 0 1.4rem 3.5rem rgb(0 0 0 / 30%); }
.vedinux-hero-preview figcaption { color: rgb(255 255 255 / 86%); }
.vedinux-actions { gap: .8rem; margin-top: 1.7rem; }
.vedinux-actions .wp-block-button__link, .vedinux-cta .wp-block-button__link { min-height: 3.1rem; padding: .78rem 1.25rem; border: 1px solid var(--v-saffron); border-radius: .5rem; background: var(--v-saffron); color: var(--v-ink); font-size: 1rem; font-weight: 800; line-height: 1.4; text-decoration: none; }
.vedinux-actions .is-style-outline .wp-block-button__link { border-color: rgb(255 255 255 / 65%); background: transparent; color: #fff; }
.vedinux-actions .wp-block-button__link:hover, .vedinux-cta .wp-block-button__link:hover { background: #ffd17a; border-color: #ffd17a; color: var(--v-ink); }
.vedinux-section { padding-block: clamp(3.5rem, 7vw, 6.5rem); }
.vedinux-section--white { background: var(--v-white); }
.vedinux-section--tint { background: var(--v-soft); }
.vedinux-section-heading { max-width: 48rem; margin-bottom: 2.2rem; }
.vedinux-eyebrow { color: var(--v-coral); font-size: .84rem; font-weight: 800; letter-spacing: .06em; }
.vedinux-section-heading h2, .vedinux-split h2 { margin-block: .45rem .8rem; font-size: clamp(2rem, 4vw, 3.15rem); font-weight: 800; letter-spacing: -.05em; line-height: 1.25; }
.vedinux-section-heading p, .vedinux-split > .wp-block-group > p { color: var(--v-muted); font-size: 1.08rem; line-height: 1.8; }
.vedinux-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.vedinux-card { min-height: 13rem; padding: clamp(1.25rem, 3vw, 1.8rem); border: 1px solid var(--v-line); border-radius: var(--v-radius); background: var(--v-white); }
.vedinux-card h3 { margin-block: 0 .55rem; font-size: 1.2rem; line-height: 1.4; }
.vedinux-card p { margin: 0; color: var(--v-muted); line-height: 1.8; }
.vedinux-card-mark { display: inline-grid; min-width: 2.6rem; min-height: 2.6rem; margin-bottom: 1.2rem; place-items: center; border-radius: .5rem; background: #fff0c2; color: #503912; font-size: 1rem; font-weight: 800; }
.vedinux-screenshot { margin-block: 1.6rem; padding: .45rem; overflow: hidden; border: 1px solid var(--v-line); border-radius: .85rem; background: var(--v-white); box-shadow: 0 .8rem 2rem rgb(6 26 52 / 10%); }
.vedinux-screenshot img { display: block; width: 100%; height: auto; border-radius: .55rem; }
.vedinux-screenshot figcaption { margin: .65rem .25rem .2rem; color: var(--v-muted); font-size: .92rem; line-height: 1.55; }
.vedinux-welcome-art { margin-block: 2rem; }
.vedinux-split { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 8vw, 7rem); align-items: start; }
.vedinux-facts { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.vedinux-facts li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .4rem 1rem; padding: 1rem 0; border-bottom: 1px solid var(--v-line); }
.vedinux-facts span { color: var(--v-muted); }
.vedinux-facts strong { text-align: end; }
.vedinux-steps { counter-reset: v-step; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.vedinux-steps li { counter-increment: v-step; padding: 1.35rem; border-top: 3px solid var(--v-saffron); background: var(--v-white); }
.vedinux-steps li::before { display: block; margin-bottom: .7rem; color: var(--v-coral); content: "0" counter(v-step); font-size: .85rem; font-weight: 800; }
.vedinux-warning { padding: 1.25rem 1.4rem; border-left: 4px solid #a53b2f; background: #fff0eb; color: #49231f; }
.vedinux-status { padding: .9rem 1rem; border: 1px solid #bd8a3e; border-radius: .5rem; background: #fff5df; color: #47351a; }
.vedinux-small-note { margin-block: .65rem 0; color: var(--v-muted); font-size: .92rem; }
.vedinux-download-page { max-width: 58rem; }
.vedinux-download-actions { margin-block: 1.3rem 2rem; }
.vedinux-download-actions .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; min-height: 3.4rem; }
.vedinux-download-facts { max-width: 48rem; padding: 1.25rem clamp(1rem, 3vw, 2rem); border: 1px solid var(--v-line); border-radius: var(--v-radius); background: var(--v-white); }
.vedinux-download-facts code { overflow-wrap: anywhere; }
.vedinux-download-page .wp-block-code { max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; }
.vedinux-md5-copy { margin-top: .8rem; }
.vedinux-md5-copy button { padding: .65rem .95rem; border: 1px solid var(--v-indigo); border-radius: .45rem; background: var(--v-indigo); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.vedinux-copy-status { margin-inline-start: .7rem; color: var(--v-ink); }
.vedinux-app-controls { margin-block: 1.5rem 2rem; padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid var(--v-line); border-radius: var(--v-radius); background: var(--v-white); }
.vedinux-app-controls[hidden], .vedinux-app-card[hidden], .vedinux-app-category[hidden] { display: none !important; }
.vedinux-app-controls > label { display: block; margin-bottom: .45rem; font-weight: 750; }
.vedinux-app-controls input[type="search"] { width: min(100%, 38rem); min-height: 3rem; padding: .65rem .8rem; border: 1px solid #8a9bae; border-radius: .45rem; background: #fff; color: var(--v-ink); font: inherit; }
.vedinux-app-filters { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.vedinux-app-filters button { min-height: 2.75rem; padding: .5rem .8rem; border: 1px solid #8294a8; border-radius: 2rem; background: #fff; color: var(--v-ink); font: inherit; cursor: pointer; }
.vedinux-app-filters button[aria-pressed="true"] { border-color: var(--v-indigo-deep); background: var(--v-indigo-deep); color: #fff; }
.vedinux-app-results { min-height: 1.5em; margin: .8rem 0 0; color: var(--v-muted); }
.vedinux-app-audit-note { padding: 1rem 1.1rem; border-inline-start: 4px solid var(--v-saffron); background: var(--v-soft); }
.vedinux-app-category { margin-block: 2.8rem; }
.vedinux-app-category > h2 { margin-block: 0 1rem; font-size: clamp(1.6rem, 3vw, 2.1rem); }
.vedinux-app-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.vedinux-app-card { min-width: 0; padding: 1.15rem; border: 1px solid var(--v-line); border-top: 3px solid var(--v-indigo); border-radius: .75rem; background: var(--v-white); }
.vedinux-app-card h3 { margin: 0 0 .45rem; font-size: 1.12rem; line-height: 1.45; overflow-wrap: anywhere; }
.vedinux-app-card p { margin: .5rem 0 0; color: var(--v-muted); line-height: 1.65; }
.vedinux-app-card .vedinux-app-status { display: inline-block; margin-top: .8rem; padding: .25rem .5rem; border: 1px solid #b56d00; border-radius: .35rem; background: #fff4d8; color: #553500; font-size: .86rem; font-weight: 700; }
.vedinux-app-card .vedinux-app-note { color: #5a390e; font-size: .92rem; }
.vedinux-blog-query { margin-block: 2rem; }
.vedinux-blog-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.vedinux-blog-list > li { min-width: 0; margin: 0; }
.vedinux-blog-card { height: 100%; padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid var(--v-line); border-radius: .85rem; background: var(--v-white); }
.vedinux-blog-terms { margin-bottom: .6rem; color: var(--v-indigo); font-size: .9rem; font-weight: 750; }
.vedinux-blog-card .wp-block-post-title { margin: 0 0 .55rem; font-size: clamp(1.2rem, 2vw, 1.55rem); line-height: 1.4; }
.vedinux-blog-card .wp-block-post-title a { text-decoration: none; }
.vedinux-blog-card .wp-block-post-date { color: var(--v-muted); font-size: .9rem; }
.vedinux-blog-card .wp-block-post-excerpt { margin-top: .65rem; color: var(--v-muted); }
.vedinux-blog-card .wp-block-post-excerpt__more-link { display: inline-block; margin-top: .35rem; font-weight: 700; }
.vedinux-blog-query .wp-block-query-pagination { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.vedinux-cta { border-radius: 1.2rem; background: var(--v-indigo); color: #fff; }
.vedinux-cta-inner { display: flex; justify-content: space-between; gap: 2rem; align-items: center; padding: clamp(1.8rem, 5vw, 3.7rem); }
.vedinux-cta h2 { max-width: 17ch; margin: 0 0 .5rem; color: #fff; font-size: clamp(1.8rem, 4vw, 2.8rem); letter-spacing: -.04em; line-height: 1.3; }
.vedinux-cta p { max-width: 45rem; color: rgb(255 255 255 / 86%); line-height: 1.8; }
.vedinux-page-intro { padding-block: clamp(3rem, 6vw, 5rem); border-bottom: 1px solid var(--v-line); background: var(--v-soft); }
.vedinux-page-intro h1 { max-width: 19ch; margin: .45rem 0 .5rem; font-size: clamp(2.25rem, 5.5vw, 4rem); font-weight: 800; letter-spacing: -.05em; line-height: 1.25; }
.vedinux-page-intro p { max-width: 48rem; color: var(--v-muted); font-size: 1.1rem; line-height: 1.8; }
.vedinux-content { padding-block: clamp(2.8rem, 6vw, 5rem); }
.vedinux-content > * { max-width: 54rem; margin-inline: auto; }
.vedinux-content > .alignwide { max-width: 76rem; }
.vedinux-content > .alignfull { max-width: none; }
.vedinux-content :where(h2, h3) { letter-spacing: -.025em; line-height: 1.35; }
.vedinux-content :where(p, li, td, th) { line-height: 1.8; }
.vedinux-content table { border-collapse: collapse; width: 100%; }
.vedinux-content th, .vedinux-content td { padding: .75rem; border: 1px solid var(--v-line); text-align: start; vertical-align: top; }
.vedinux-content th { background: var(--v-soft); }
.vedinux-footer { background: var(--v-indigo-deep); color: rgb(255 255 255 / 83%); }
.vedinux-footer-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, .7fr); gap: 2rem; padding-block: 2.8rem; }
.vedinux-footer a { color: #fff; }
.vedinux-footer .wp-block-navigation { gap: .65rem 1rem; }
.vedinux-footer .wp-block-navigation a { font-size: .96rem; text-decoration: none; }
.vedinux-footer-small { grid-column: 1 / -1; margin-top: .5rem; padding-top: 1rem; border-top: 1px solid rgb(255 255 255 / 22%); font-size: .9rem; }
.wp-block-post-title { letter-spacing: -.04em; }
.wp-block-search__button { border-radius: .4rem; }

@media (max-width: 850px) {
	.vedinux-shell { width: min(100% - 1.5rem, 76rem); }
	.vedinux-header-inner { align-items: flex-start; flex-direction: column; padding-block: .9rem; }
	.vedinux-menu { width: 100%; }
	.vedinux-menu .wp-block-navigation__container { flex-wrap: wrap; gap: .45rem .9rem; }
	.vedinux-menu a { font-size: .9rem; }
	.vedinux-hero-grid { grid-template-columns: 1fr; gap: 1.7rem; padding-block: 3.5rem; }
	.vedinux-hero-preview-wrap { width: 100%; }
	.vedinux-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vedinux-app-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vedinux-blog-list { grid-template-columns: 1fr; }
	.vedinux-split { grid-template-columns: 1fr; gap: 1.5rem; }
}
@media (max-width: 580px) {
	.vedinux-shell { width: min(100% - 1.25rem, 76rem); }
	.vedinux-hero h1 { font-size: clamp(2.25rem, 11vw, 3.5rem); }
	.vedinux-cards, .vedinux-steps { grid-template-columns: 1fr; }
	.vedinux-app-list { grid-template-columns: 1fr; }
	.vedinux-card { min-height: auto; }
	.vedinux-cta-inner, .vedinux-footer-inner { display: flex; flex-direction: column; align-items: flex-start; }
	.vedinux-footer-small { width: 100%; }
	.vedinux-content table { display: block; overflow-x: auto; }
	.vedinux-brand a::before, .vedinux-footer-brand a::before { width: 2.35rem; height: 2.35rem; flex-basis: 2.35rem; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
