/* ==========================================================================
   Nirjara Labs child theme — WordPress integration
   Loaded after nirjara.css. Fits the design into Astra, Elementor (free) and
   SureForms without touching their settings.
   ========================================================================== */

/* ---------- beat Elementor kit / Astra globals inside the design's own markup ----------
   The design is scoped to .nl elements (header, footer, sections, templates), never <body>. */
body .nl{font-family:var(--f-body);color:var(--ink)}
body .nl :is(h1,h2,h3){font-family:var(--f-display);text-transform:none;letter-spacing:-.025em}
body .nl :is(h1,h2,h3,h4,h5,h6){color:inherit}   /* Astra colours headings explicitly; the design inherits */
body .nl a{color:inherit}
body .nl :is(ul,ol){margin-left:0;margin-right:0}   /* Astra indents lists 3em */

/* ---------- Astra: full-bleed content on designed pages ---------- */
body.nl-full #content > .ast-container,
body.nl-full .site-content > .ast-container{max-width:none!important;width:100%;padding:0!important;margin:0!important;display:block!important}
body.nl-full #primary,
body.nl-full .site-main,
body.nl-full .entry-content{margin:0!important;padding:0!important;width:100%;max-width:none}
body.nl-full .entry-content > *{margin-top:0}
body.nl-full .site-content{padding:0!important}

/* sticky header under the WordPress admin bar */
.admin-bar .hdr.nl{top:32px}
@media (max-width:782px){.admin-bar .hdr.nl{top:46px}}

/* ---------- Elementor (free): hosts for [nl_page] / [nl_section] ---------- */
.nl-sec{display:block}
.e-con:has(.nl-sec){--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--margin-top:0px;--margin-bottom:0px;
  --gap:0px;--row-gap:0px;--column-gap:0px;--content-width:100%;--width:100%;max-width:none;padding:0}
.e-con:has(.nl-sec) > .e-con-inner{max-width:none;padding:0;gap:0}
.elementor-widget:has(.nl-sec){margin:0!important;--kit-widget-spacing:0px}
.elementor-section:has(.nl-sec) > .elementor-container{max-width:none}
.elementor-section:has(.nl-sec) .elementor-widget-wrap{padding:0!important}
.elementor-widget-shortcode:has(.nl-sec) .elementor-shortcode{display:block}

/* ---------- article content from the WordPress editor ---------- */
.nl .prose > p:first-child{font-size:var(--t-lead);color:var(--ink);line-height:1.65}
.nl .prose :is(h3,h4){font-family:var(--f-display);color:var(--ink);letter-spacing:-.015em;margin-top:1.6em}
.nl .prose img{border-radius:var(--r-md)}
.nl .prose figure{margin-inline:0}
.nl .prose .wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap}
.nl .prose .wp-block-button__link{border-radius:var(--pill);background:var(--blue);color:#fff;font-family:var(--f-display);font-weight:600;text-decoration:none;padding:12px 22px}
.nl .pagination{display:flex;justify-content:center;gap:8px;margin-top:48px;font-family:var(--f-display);font-weight:600}
.nl .pagination .page-numbers{min-width:44px;height:44px;display:inline-grid;place-items:center;padding:0 12px;border-radius:var(--pill);border:1px solid var(--line);text-decoration:none;color:var(--body)}
.nl .pagination .page-numbers.current,.nl .pagination a.page-numbers:hover{background:var(--blue);border-color:var(--blue);color:#fff}

/* ---------- SureForms skin (forms render inside .fcard) ---------- */
.nl .fcard{--srfm-color-scheme-primary:var(--blue);--srfm-bg-color:transparent}
.nl .fcard .srfm-form-container{background:transparent!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;max-width:none!important;width:100%}
/* no !important on display: SureForms hides the form after submit with an inline display:none */
.nl .fcard .srfm-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px;margin:0;padding:0}
.nl .fcard .srfm-form > *{grid-column:1 / -1;margin:0!important}
.nl .fcard .srfm-form > .srfm-block-single{padding:0!important}
.nl .fcard .srfm-form > :is(.srfm-slug-name,.srfm-email-block-wrap,.srfm-phone-block,.srfm-slug-company,.srfm-slug-quantity,.srfm-slug-deadline){grid-column:span 1}
.nl .fcard[data-form="catalog"] .srfm-form > .srfm-email-block-wrap{grid-column:1 / -1}
.nl .fcard .srfm-block-label,.nl .fcard .srfm-block-legend{display:block;font-family:var(--f-display)!important;font-weight:600!important;font-size:.92rem!important;color:var(--ink)!important;margin:0 0 6px!important}
.nl .fcard .srfm-required{color:var(--blue)!important}
.nl .fcard .srfm-description{font-size:.84rem!important;color:var(--muted)!important;margin:-2px 0 6px!important}
.nl .fcard .srfm-form :is(.srfm-input-common,.ts-control,select.srfm-dropdown-common:not(.tomselected)){font-family:var(--f-body)!important;font-size:1rem!important;color:var(--ink)!important;width:100%;min-height:50px;
  padding-top:12px;padding-bottom:12px;padding-right:16px;border:1.5px solid var(--line-2)!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;transition:border-color .2s, box-shadow .2s}
.nl .fcard .srfm-form .srfm-input-common:not(.srfm-input-phone),.nl .fcard .srfm-form :is(.ts-control,select.srfm-dropdown-common:not(.tomselected)){padding-left:16px}
.nl .fcard .srfm-form textarea.srfm-input-common{min-height:130px;line-height:1.5;resize:vertical}
/* SureForms pins the phone input (40px) and the enhanced dropdown (44px); match the 50px fields */
.nl .fcard .srfm-form :is(input.srfm-input-common,.ts-control){height:50px!important;min-height:50px!important;max-height:none!important;box-sizing:border-box!important}
.nl .fcard .srfm-form .ts-control{display:flex!important;align-items:center}
/* the dropdown is a fieldset/legend whose wrapper is inline-block (sits on a text baseline, ~6px low) */
.nl .fcard .srfm-form fieldset{margin:0;padding:0;border:0;min-width:0}
.nl .fcard .srfm-form .srfm-block-wrap{display:block!important;width:100%}
/* a rendered <legend>'s bottom margin is applied twice; move the 6px gap onto the wrapper instead */
.nl .fcard .srfm-form .srfm-block-legend{margin-bottom:0!important}
.nl .fcard .srfm-form fieldset > .srfm-block-wrap{margin-top:6px}
/* the number field sits inside an extra bordered wrapper */
.nl .fcard .srfm-form .srfm-input-content{border:0!important;background:none!important;height:auto!important;padding:0!important;border-radius:0!important;box-shadow:none!important}
.nl .fcard .srfm-form :is(.srfm-input-common,.ts-control)::placeholder{color:var(--faint)}
.nl .fcard .srfm-form :is(.srfm-input-common,.ts-control):hover{border-color:var(--faint)!important}
.nl .fcard .srfm-form :is(.srfm-input-common:focus,.ts-wrapper.focus .ts-control){outline:none!important;border-color:var(--blue)!important;box-shadow:0 0 0 4px color-mix(in oklch, var(--blue) 18%, transparent)!important}
.nl .fcard .srfm-form .iti{width:100%}
.nl .fcard .srfm-error-message:not([hidden]){color:#b91c1c;font-size:.84rem;margin-top:6px}
.nl .fcard .srfm-submit-container{margin-top:8px!important}
.nl .fcard .srfm-submit-container .wp-block-button{width:100%!important;text-align:left}
.nl .fcard .srfm-submit-button{width:100%;min-height:54px;border:0!important;border-radius:var(--pill)!important;background:var(--blue)!important;color:#fff!important;cursor:pointer;
  font-family:var(--f-display)!important;font-weight:600!important;font-size:1rem!important;letter-spacing:-.005em!important;text-transform:none!important;transition:transform .25s var(--ease), background-color .2s, box-shadow .25s var(--ease)}
.nl .fcard .srfm-submit-button:hover{background:var(--blue-press)!important;transform:translateY(-2px);box-shadow:0 10px 24px -8px rgba(37,99,235,.6)}
.nl .fcard .srfm-submit-wrap{display:flex;align-items:center;justify-content:center;gap:10px}
.nl .fcard .srfm-success-box{border-radius:var(--r-md);background:var(--tint-50);border:1px solid var(--tint-100);padding:24px;color:var(--ink)}
@media (max-width:600px){
  .nl .fcard .srfm-form{grid-template-columns:1fr}
  .nl .fcard .srfm-form > *{grid-column:1 / -1!important}
}
