/*
Theme Name: Kadence Parihaara
Theme URI: https://parihaara.in/
Description: Parihaara look and feel on top of the Kadence theme. Home page content lives in normal, editable pages (block editor) - one per language. 8 languages via Polylang.
Template: kadence
Author: Parihaara
Version: 2.0.0
Requires at least: 6.4
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: kadence-parihaara
*/

/* ---------- Brand palette (overrides Kadence global palette) ---------- */
:root {
    --global-palette1: #b45309;   /* accent: deep saffron */
    --global-palette2: #7a1f2b;   /* maroon */
    --global-palette3: #1f1a17;   /* ink */
    --global-palette4: #3d332d;
    --global-palette5: #6b5f57;   /* muted */
    --global-palette6: #ecdcc3;   /* line */
    --global-palette7: #fff8ec;   /* cream */
    --global-palette8: #fffdf8;
    --global-palette9: #ffffff;
    --pr-saffron: #f59e0b;
    --pr-saffron-dark: #b45309;
    --pr-maroon: #7a1f2b;
    --pr-maroon-dark: #5a141e;
    --pr-cream: #fff8ec;
    --pr-line: #ecdcc3;
    --pr-muted: #6b5f57;
    --pr-radius: 14px;
    --pr-shadow: 0 6px 24px rgba(122, 31, 43, .10);
    --pr-font: "Noto Sans Telugu", "Noto Sans Devanagari", "Noto Sans Kannada", "Noto Sans Tamil", "Noto Sans Bengali", "Noto Sans Gujarati",
        system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --global-body-font-family: var(--pr-font);
    --global-heading-font-family: var(--pr-font);
}
body, button, input, select, textarea { font-family: var(--pr-font); }
body { line-height: 1.7; }

/* ---------- Header (Kadence) : saffron bar like the old brand ---------- */
#masthead .site-main-header-wrap .site-header-row-container-inner,
#masthead .site-header-upper-wrap .site-header-row-container-inner { background: var(--pr-saffron); }
#masthead { border-bottom: 3px solid var(--pr-maroon); }
#masthead .site-branding a, #masthead .site-title { color: var(--pr-maroon-dark); font-weight: 800; }
/* Kadence hides the site title by default: show it (a logo image can still be set in Customize) */
#masthead .site-branding .site-title-wrap, #masthead .site-branding .site-title { display: block !important; }
#masthead .site-branding .site-title { font-size: 1.35rem; margin: 0; line-height: 1.2; }
#masthead .site-branding .site-title::before { content: "🪔 "; }
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a { color: var(--pr-maroon-dark); font-weight: 600; }
#masthead .header-navigation .header-menu-container > ul > li.menu-item > a:hover { color: #fff; }
.mobile-toggle-open-container .menu-toggle-open { color: var(--pr-maroon-dark); }

/* ---------- Home page sections (block editor classes) ---------- */
.pr-home .entry-content > * { max-width: none; }
/* Full-width bands whose content is kept to 1140px by side padding (no margin tricks) */
.pr-section, .pr-hero, .pr-trust, .pr-cta {
    padding-left: max(16px, calc((100% - 1140px) / 2));
    padding-right: max(16px, calc((100% - 1140px) / 2));
    box-sizing: border-box;
}
.pr-section > *, .pr-hero > *, .pr-trust > *, .pr-cta > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
.pr-cta > * { margin-left: auto !important; margin-right: auto !important; }
.pr-section { padding-top: 56px; padding-bottom: 56px; }
.pr-section--tint { background: var(--pr-cream); }

.pr-hero { background: linear-gradient(135deg, var(--pr-cream) 0%, #ffe3a8 100%); padding-top: 64px; padding-bottom: 56px; }
.pr-hero h1 { font-size: clamp(1.7rem, 4.2vw, 2.7rem); color: var(--pr-maroon-dark); max-width: 22ch !important; }
.pr-hero h1, .pr-hero p { text-align: left; }
.pr-hero .pr-hero__lead { font-size: 1.1rem; max-width: 60ch !important; }

.pr-trust { background: var(--pr-maroon); color: #fff; padding-top: 14px; padding-bottom: 14px; }
.pr-trust > .wp-block-group, .pr-trust__row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px 16px; }
.pr-trust p { margin: 0; font-weight: 600; font-size: .95rem; color: #fff; }

.pr-h2, .pr-section h2 { font-size: clamp(1.4rem, 3vw, 2rem); color: var(--pr-maroon-dark); }
.pr-sub { color: var(--pr-muted); margin-bottom: 28px; }

.pr-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.pr-grid > * { margin: 0 !important; }
.pr-card { background: #fff; border: 1px solid var(--pr-line); border-radius: var(--pr-radius); padding: 22px; box-shadow: var(--pr-shadow); display: flex; flex-direction: column; }
.pr-card h3 { font-size: 1.15rem; color: var(--pr-maroon-dark); margin: 0 0 .5em; }
.pr-card p { color: var(--pr-muted); margin: 0 0 1em; }
.pr-card .wp-block-buttons { margin-top: auto; }
.pr-card__icon { font-size: 2.2rem; line-height: 1; margin-bottom: 8px !important; }

.pr-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; margin-top: 24px; }
.pr-step { background: #fff; border: 1px solid var(--pr-line); border-radius: var(--pr-radius); padding: 22px; }
.pr-step__n { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--pr-saffron); color: #2b1a00; font-weight: 800; margin-bottom: 10px !important; }

.pr-guruji { display: flex; gap: 24px; align-items: center; }
.pr-guruji__badge { flex: none; width: 96px; height: 96px; border-radius: 50%; background: var(--pr-cream); border: 3px solid var(--pr-saffron); display: grid; place-items: center; font-size: 2.6rem; margin: 0 !important; }

.pr-faq details { background: #fff; border: 1px solid var(--pr-line); border-radius: 10px; padding: 14px 18px; margin-bottom: 10px; }
.pr-faq summary { cursor: pointer; font-weight: 700; }
.pr-faq details p { margin: 10px 0 0; color: var(--pr-muted); }

.pr-cta { background: var(--pr-maroon); color: #fff; text-align: center; padding-top: 48px; padding-bottom: 48px; }
.pr-cta h2 { color: #fff; }
.pr-cta .wp-block-buttons { justify-content: center; }

/* Buttons (core Buttons block, class set per button) */
.wp-block-button.pr-btn-primary .wp-block-button__link { background: var(--pr-saffron); color: #2b1a00; border-radius: 999px; font-weight: 700; padding: 12px 22px; }
.wp-block-button.pr-btn-ghost .wp-block-button__link { background: transparent; color: var(--pr-maroon); border: 2px solid var(--pr-maroon); border-radius: 999px; font-weight: 700; padding: 10px 22px; }
.wp-block-button.pr-btn-light .wp-block-button__link { background: #fff; color: var(--pr-maroon); border-radius: 999px; font-weight: 700; padding: 12px 22px; }
.wp-block-button__link:hover { transform: translateY(-1px); box-shadow: var(--pr-shadow); }

/* Footer disclaimer band */
.pr-footer-note { background: var(--pr-maroon-dark); color: #f3e6d0; padding: 18px 16px; font-size: .88rem; text-align: center; }
.pr-footer-note p { margin: 0 auto; max-width: 900px; }

/* WooCommerce */
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce #respond input#submit,
.wc-block-components-button:not(.is-link) { background: var(--pr-saffron); color: #2b1a00; border-radius: 999px; font-weight: 700; }
.woocommerce .button.alt, .woocommerce button.button.alt, .woocommerce a.button.alt { background: var(--pr-maroon); color: #fff; }
#pr-birth-details { background: var(--pr-cream); border: 1px solid var(--pr-line); border-radius: var(--pr-radius); padding: 16px 20px; margin: 16px 0; }

/* ---------- Responsive ---------- */
@media (max-width: 1000px) {
    .pr-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 782px) {
    .pr-trust > .wp-block-group, .pr-trust__row { grid-template-columns: 1fr 1fr; }
    .pr-guruji { flex-direction: column; text-align: center; }
    .pr-hero { padding-top: 40px; padding-bottom: 40px; }
    .pr-section { padding-top: 40px; padding-bottom: 40px; }
}
@media (max-width: 560px) {
    .pr-grid { grid-template-columns: 1fr; }
    .pr-hero .wp-block-buttons { flex-direction: column; align-items: stretch; }
    .pr-hero .wp-block-button__link { text-align: center; display: block; }
}
@media (prefers-reduced-motion: reduce) { .wp-block-button__link { transition: none; } }

/* WordPress wraps non-block-theme groups in .wp-block-group__inner-container:
   make that wrapper "disappear" so the grid/flex rules above apply to the real children. */
.pr-hero > .wp-block-group__inner-container,
.pr-trust > .wp-block-group__inner-container,
.pr-trust__row > .wp-block-group__inner-container,
.pr-section > .wp-block-group__inner-container,
.pr-grid > .wp-block-group__inner-container,
.pr-card > .wp-block-group__inner-container,
.pr-steps > .wp-block-group__inner-container,
.pr-step > .wp-block-group__inner-container,
.pr-guruji > .wp-block-group__inner-container,
.pr-guruji__text > .wp-block-group__inner-container,
.pr-faq > .wp-block-group__inner-container,
.pr-cta > .wp-block-group__inner-container { display: contents; }

/* Equal-height cards and steps: WordPress flow layout adds a top margin to siblings. */
.pr-grid > .pr-card, .pr-steps > .pr-step { margin: 0 !important; height: auto; align-self: stretch; }
