/*
 * Dharamrup — approved-design reconciliation
 * Scoped to Dharamrup native Elementor pages. No page content or imagery changes.
 * Keeps full-bleed backgrounds while restoring internal editorial spacing.
 */

/*
 * CRITICAL: The currently active Elementor Global Kit belongs to the old
 * Frisk-era design: its primary is bright yellow (#FFBD11), and its font
 * family is Roboto. A draft-theme preview cannot change the production kit.
 *
 * Rebind inherited kit variables only inside the Dharamrup pages. This fixes
 * Elementor's default heading/global palette without overriding deliberate
 * section-specific white/gold colors or a client's explicit per-widget color.
 * On final publication, the theme's backed-up kit migration makes the same
 * defaults available in Elementor Site Settings.
 */
.elementor .dharamrup-page.dr-native,
.dharamrup-page.dr-native {
  --e-global-color-primary:#0a0b0b;
  --e-global-color-secondary:#676b66;
  --e-global-color-text:#0a0b0b;
  --e-global-color-accent:#9b2635;
  --e-global-typography-primary-font-family:"Manrope";
  --e-global-typography-secondary-font-family:"Manrope";
  --e-global-typography-text-font-family:"Inter";
  --e-global-typography-accent-font-family:"Inter";
}

/*
 * Elementor's legacy kit also styles h1–h6 through generated rules.
 * Inherit the approved section color when the heading widget has no explicit
 * Elementor color setting. :where() keeps specificity low, letting widget
 * styles and user changes win.
 */
.dharamrup-page.dr-native :where(.elementor-widget-heading) :where(.elementor-heading-title) {
  color: inherit;
}

/* Header: a true centered middle grid column, regardless of Elementor's
   container width/flex defaults. Applies to normal and return headers. */
@media (min-width:1051px) {
  .elementor .dharamrup-page.dr-native .header {
    display:grid!important;
    grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr)!important;
    align-items:center!important;
    width:100%!important;
    padding-inline:4.4vw!important;
  }
  .elementor .dharamrup-page.dr-native .header > .brand {
    grid-column:1;
    justify-self:start!important;
    width:160px!important;
  }
  .elementor .dharamrup-page.dr-native .header > .nav {
    grid-column:2;
    justify-self:center!important;
    display:flex!important;
    flex-direction:row!important;
    justify-content:center!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    width:max-content!important;
    max-width:min(100%,760px)!important;
    min-width:0!important;
    gap:clamp(14px,2vw,32px)!important;
    padding:0!important;
    margin:0!important;
  }
  .elementor .dharamrup-page.dr-native .header > .nav > .elementor-widget {
    flex:0 0 auto!important;
    width:auto!important;
    margin:0!important;
  }
  .elementor .dharamrup-page.dr-native .header > .header-contact {
    grid-column:3;
    justify-self:end!important;
    width:max-content!important;
    min-width:0!important;
  }
}
@media (min-width:901px) and (max-width:1050px){
  .elementor .dharamrup-page.dr-native .header {
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
  }
  .elementor .dharamrup-page.dr-native .header > .nav {display:none!important}
  .elementor .dharamrup-page.dr-native .header > .menu-trigger {
    grid-column:1;
    display:flex!important;
    justify-self:start!important;
  }
  .elementor .dharamrup-page.dr-native .header > .brand {
    grid-column:2;
    justify-self:center!important;
  }
  .elementor .dharamrup-page.dr-native .header > .header-contact {
    grid-column:3;
    justify-self:end!important;
  }
}
/* Restore the deliberately padded editorial hero rather than stripping the
   top/side spacing when outer sections were made full bleed. */
@media (min-width:901px) {
  .elementor .dharamrup-page--areas-of-focus .focus-hero-top {
    display:grid!important;
    grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr)!important;
    gap:7vw!important;
    align-items:end!important;
    padding:8.3vw 5vw 6.8vw!important;
    width:100%!important;
    max-width:none!important;
  }
  .elementor .dharamrup-page--areas-of-focus .focus-hero-top > .e-con {
    min-width:0!important;
    padding-inline:0!important;
    margin-inline:0!important;
  }
  .elementor .dharamrup-page--areas-of-focus .focus-hero-copy {
    border-top:1px solid rgba(10,11,11,.16);
    padding-top:27px!important;
    align-self:end!important;
    max-width:620px!important;
  }
}
.dharamrup-page--areas-of-focus .focus-hero-copy > .elementor-widget-text-editor p {
  font-size:18px!important;
  font-weight:400;
  line-height:1.75!important;
  color:#3c403c;
  margin:0!important;
}
.dharamrup-page--areas-of-focus .focus-hero-copy > .elementor-widget-text-editor + .elementor-widget-text-editor {
  margin-top:18px!important;
}
@media (max-width:900px) {
  .elementor .dharamrup-page--areas-of-focus .focus-hero-top {
    display:block!important;
    min-height:0!important;
    padding:68px 18px 52px!important;
  }
  .dharamrup-page--areas-of-focus .focus-hero-copy > .elementor-widget-text-editor p {
    font-size:16px!important;
    line-height:1.68!important;
  }
  .dharamrup-page--areas-of-focus .focus-hero-copy > .elementor-widget-text-editor + .elementor-widget-text-editor {
    margin-top:17px!important;
  }
}
/* Recreate paragraph rhythm everywhere the original HTML used p+p but
   the native conversion split the paragraphs into adjacent widgets. */
.dharamrup-page.dr-native .sector-copy > .elementor-widget-text-editor + .elementor-widget-text-editor,
.dharamrup-page.dr-native .contact-copy > .elementor-widget-text-editor + .elementor-widget-text-editor,
.dharamrup-page.dr-native .evolution-text > .elementor-widget-text-editor + .elementor-widget-text-editor {
  margin-top:18px!important;
}

/* About / Team: approved editorial portrait style in two equal columns. */
@media (min-width:721px) {
  .elementor .dharamrup-page--about-us .team-cards {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:clamp(24px,3vw,46px)!important;
    row-gap:clamp(36px,4.5vw,66px)!important;
    align-items:start!important;
    width:100%!important;
  }
  .elementor .dharamrup-page--about-us .team-cards > .team-card {
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
  }
}
.dharamrup-page--about-us .team-card .team-photo{
  aspect-ratio:1/1;
  overflow:hidden;
  background:#e9e7e1;
}
.dharamrup-page--about-us .team-card .team-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
@media (max-width:720px){
  .elementor .dharamrup-page--about-us .team-cards{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:30px!important;
  }
}

/* Contact: fully styled native WPForms, two independent inquiry channels,
   serious investment-institution aesthetics, no sales-form template look. */
.elementor .dharamrup-page--contact .dr-contact-rebuild{
  width:100%!important;
  background:#f3f2ee!important;
  padding:clamp(74px,8vw,130px) 0!important;
}
.elementor .dharamrup-page--contact .dr-contact-inner {
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}
.elementor .dharamrup-page--contact .dr-contact-inner > .e-con-inner {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  max-width:1380px!important;
  width:calc(100% - 10vw)!important;
  gap:0!important;
  margin-inline:auto!important;
  padding:0!important;
}
.dharamrup-page--contact :where(.dr-contact-title .elementor-heading-title){
  font:300 clamp(44px,5vw,74px)/1.04 Manrope,sans-serif;
  letter-spacing:-.055em;
  color:#0a0b0b;
  max-width:920px;
}
.dharamrup-page--contact .dr-contact-lead {
  max-width:760px!important;
  margin-top:23px!important;
}
.dharamrup-page--contact .dr-contact-lead p{
  color:#555b55!important;
  font-size:17px!important;
  line-height:1.8!important;
}
.elementor .dharamrup-page--contact .dr-qualified-panel{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
  padding:clamp(30px,5vw,75px)!important;
  margin-top:clamp(44px,6vw,85px)!important;
  border-top:3px solid #d0a52b!important;
  background:#101311!important;
  color:#f5f3ec!important;
  width:100%!important;
}
.dharamrup-page--contact :where(.dr-qualified-panel h3.elementor-heading-title){
  color:#f5f3ec;
  font:300 clamp(32px,4vw,57px)/1.08 Manrope,sans-serif;
  letter-spacing:-.042em;
}
.dharamrup-page--contact .dr-qualification-requirements{
  margin-top:28px!important;
  max-width:960px!important;
}
.dharamrup-page--contact .dr-qualification-requirements p{
  font-size:16px!important;
  line-height:1.78!important;
  color:#c5cac3!important;
  margin:0 0 15px!important;
}
.dharamrup-page--contact .dr-qualification-requirements strong{color:#f4e5ae!important;font-weight:500}
.dharamrup-page--contact .dr-qualifier{margin-top:24px}
.dharamrup-page--contact .dr-q-row{padding-block:24px!important}
.dharamrup-page--contact .dr-q-row p{font-size:16px!important;color:#ebece6!important}
.dharamrup-page--contact .dr-q-options{gap:28px!important}
.dharamrup-page--contact .dr-q-options label{color:#e8eae4;font-size:15px!important}
.dharamrup-page--contact .dr-q-options input{accent-color:#d0a52b;width:17px;height:17px}
.dharamrup-page--contact .dr-qualified-form{width:100%!important}
.dharamrup-page--contact .dr-form-disclaimer{max-width:830px;margin-top:20px!important}
.dharamrup-page--contact .dr-form-disclaimer p{color:#aab0aa!important;font-size:13px!important;line-height:1.65!important}
.elementor .dharamrup-page--contact .dr-general-panel{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  padding:clamp(30px,5vw,75px)!important;
  margin-top:clamp(30px,4.5vw,62px)!important;
  background:#fff!important;
  border-top:2px solid #d0a52b!important;
  color:#161a16!important;
}
.dharamrup-page--contact :where(.dr-general-panel h3.elementor-heading-title){
  font:300 clamp(30px,3.5vw,53px)/1.1 Manrope,sans-serif;
  letter-spacing:-.04em;
  color:#101311;
}
.dharamrup-page--contact .dr-general-panel .elementor-widget-text-editor p{
  font-size:16px!important;
  line-height:1.75!important;
  color:#565c56!important;
}
.dharamrup-page--contact .dr-wpform{width:100%!important}
.dharamrup-page--contact .dr-wpform .wpforms-container{
  width:100%!important;
  max-width:none!important;
  margin:30px 0 0!important;
}
.dharamrup-page--contact .dr-wpform .wpforms-field-container{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(22px,3vw,48px)!important;
  row-gap:22px!important;
}
.dharamrup-page--contact .dr-wpform .wpforms-field{
  padding:0!important;
  margin:0!important;
  width:100%!important;
  min-width:0!important;
}
.dharamrup-page--contact .dr-wpform .wpforms-field-textarea,
.dharamrup-page--contact .dr-wpform .wpforms-field-checkbox,
.dharamrup-page--contact .dr-wpform .wpforms-field-radio,
.dharamrup-page--contact .dr-wpform .wpforms-field-html{
  grid-column:1/-1;
}
.dharamrup-page--contact .dr-wpform .wpforms-field-label{
  display:block!important;
  margin:0 0 10px!important;
  font:500 12px/1.6 Inter,Arial,sans-serif!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
}
.dharamrup-page--contact .dr-qualified-panel .wpforms-field-label{color:#e3e6de!important}
.dharamrup-page--contact .dr-general-panel .wpforms-field-label{color:#555d55!important}
.dharamrup-page--contact .dr-wpform :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:48px!important;
  padding:10px 2px 13px!important;
  border:0!important;
  border-bottom:1px solid currentColor!important;
  border-radius:0!important;
  box-shadow:none!important;
  font:400 16px/1.5 Inter,Arial,sans-serif!important;
  background:transparent!important;
  outline-offset:4px!important;
}
.dharamrup-page--contact .dr-qualified-panel .dr-wpform :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  color:#f6f5ef!important;
  border-bottom-color:#60665e!important;
  color-scheme:dark;
}
.dharamrup-page--contact .dr-general-panel .dr-wpform :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  color:#151a16!important;
  border-bottom-color:#b7bcb7!important;
  color-scheme:light;
}
.dharamrup-page--contact .dr-wpform textarea{min-height:125px!important;resize:vertical}
.dharamrup-page--contact .dr-wpform :is(input,select,textarea):focus-visible{
  outline:2px solid #d0a52b!important;
  outline-offset:3px!important;
}
.dharamrup-page--contact .dr-wpform :is(input[type=checkbox],input[type=radio]){accent-color:#d0a52b}
.dharamrup-page--contact .dr-qualified-panel .wpforms-field-description,
.dharamrup-page--contact .dr-qualified-panel .wpforms-field-sublabel,
.dharamrup-page--contact .dr-qualified-panel .wpforms-field-checkbox li label,
.dharamrup-page--contact .dr-qualified-panel .wpforms-field-radio li label{color:#c5cac3!important}
.dharamrup-page--contact .dr-wpform .wpforms-submit-container{margin:35px 0 0!important;padding:0!important}
.dharamrup-page--contact .dr-wpform .wpforms-submit{
  min-height:52px!important;
  padding:16px 28px!important;
  font:500 13px/1.4 Inter,Arial,sans-serif!important;
  letter-spacing:.095em!important;
  border-radius:0!important;
  transition:background .2s,color .2s;
}
.dharamrup-page--contact .dr-qualified-panel .wpforms-submit{
  border:1px solid #d0a52b!important;
  background:#d0a52b!important;
  color:#11150f!important;
}
.dharamrup-page--contact .dr-general-panel .wpforms-submit{
  border:1px solid #11150f!important;
  background:#11150f!important;
  color:#fff!important;
}
.dharamrup-page--contact .dr-qualified-panel .wpforms-submit:hover{background:#e9c768!important}
.dharamrup-page--contact .dr-general-panel .wpforms-submit:hover{background:#303c32!important}
@media (max-width:900px){
  .elementor .dharamrup-page--contact .dr-contact-inner > .e-con-inner{width:calc(100% - 36px)!important}
  .elementor .dharamrup-page--contact .dr-qualified-panel,
  .elementor .dharamrup-page--contact .dr-general-panel{padding:32px 24px!important}
}
@media (max-width:700px){
  .dharamrup-page--contact .dr-wpform .wpforms-field-container{grid-template-columns:1fr!important;gap:20px!important}
  .dharamrup-page--contact .dr-wpform .wpforms-field{grid-column:1/-1!important}
  .elementor .dharamrup-page--contact .dr-qualified-panel,
  .elementor .dharamrup-page--contact .dr-general-panel{padding:28px 18px!important}
}

/* Editor preview shares these classes; revealing content must never block
   editing in Elementor's iframe. */
body.elementor-editor-active .dharamrup-page .reveal,
body.elementor-editor-preview .dharamrup-page .reveal {opacity:1!important;transform:none!important}
