/*
 * Responsive extensions for widths below Framer's 390 px phone canvas.
 *
 * Framer's exported modes remain authoritative:
 *   phone  < 768 px
 *   tablet 768–1199.98 px
 *   desktop >= 1200 px
 *
 * These rules only resolve intrinsic-width overflows exposed at 320–360 px.
 * They do not change the established 375/390 px, tablet, or desktop layouts.
 */

:root {
  scroll-behavior: smooth;
}

/* Static Framer exports retain entrance-animation inline styles. Without the
   original hydration runtime, those wrappers stay at opacity:0 forever and
   leave blank page sections and footers. Reveal only named motion wrappers;
   responsive SSR variants still retain their own display rules. */
[data-framer-name][style*="will-change:transform"][style*="opacity:0"][style*="translate"] {
  opacity: 1 !important;
  will-change: auto !important;
}

/* Founder listing cards use a separate Framer entrance wrapper from the
   profile hero. Static exports never hydrate that wrapper, so reveal only
   cards inside the authored Team Section. */
section[data-framer-name="Team Section"] [data-framer-name="Card Wrapper"][style*="opacity:0"] {
  opacity: 1 !important;
  transform: none !important;
  will-change: auto !important;
}

/* Generated utility pages intentionally do not hydrate a Framer application. */
.nidrana-utility-page { background:#fff; color:#153e2b; font-family:Inter,Arial,sans-serif; min-height:100vh; }
.nidrana-utility-page__header { align-items:center; border-bottom:1px solid #dce8e0; display:flex; gap:28px; justify-content:space-between; margin:auto; max-width:1280px; min-height:96px; padding:0 32px; }
.nidrana-utility-page__brand { color:#217d48; font-size:1.35rem; font-weight:800; text-decoration:none; }
.nidrana-static-navigation { display:flex; gap:20px; }
.nidrana-static-navigation a,.nidrana-utility-page__footer a { color:inherit; text-decoration:none; }
.nidrana-utility-page__donate,.nidrana-utility-page__button { background:#217d48; border-radius:999px; color:#fff; display:inline-flex; font-weight:700; padding:13px 22px; text-decoration:none; }
.nidrana-utility-page__content { margin:0 auto; max-width:800px; padding:clamp(88px,16vw,180px) 32px; text-align:center; }
.nidrana-utility-page__content h1 { font-size:clamp(2.25rem,5vw,4.5rem); line-height:1.04; margin:0 0 24px; }
.nidrana-utility-page__content p { font-size:1.15rem; line-height:1.6; margin:0 auto 18px; max-width:660px; }
.nidrana-utility-page__footer { border-top:1px solid #dce8e0; display:flex; gap:24px; justify-content:center; padding:28px 20px; }

/* Model-driven navigation is independent from Framer's optional dialog markup. */
.nidrana-desktop-menu-item { display:inline-flex; position:relative; }
.nidrana-desktop-menu-item::after { content:""; height:12px; left:0; position:absolute; right:0; top:100%; }
/* Buttons replace the original Framer anchors for parent menus. Match the
   neighboring polished links explicitly so native button chrome cannot leak
   through when Framer has no style class to inherit. */
.nidrana-desktop-menu-control { align-items:center; appearance:none; background:#fff; border:0; border-radius:24px; box-sizing:border-box; color:#3b3b3b; cursor:pointer; display:flex; font-family:Onest,"Onest Placeholder",sans-serif; font-size:16px; font-style:normal; font-weight:500; height:34px; letter-spacing:0px; line-height:150%; margin:0; padding:5px 10px; text-align:start; text-transform:none; white-space:nowrap; }
.nidrana-desktop-menu-control::after { content:none; }
.nidrana-desktop-menu-control:hover { background:#f6f6f6; }
.nidrana-desktop-menu-control:focus-visible { outline:3px solid #153e2b; outline-offset:3px; }
.nidrana-desktop-submenu { background:#fff; border:1px solid #dce8e0; border-radius:12px; box-shadow:0 14px 36px rgba(20,55,39,.16); list-style:none; margin:0; min-width:250px; padding:10px; position:absolute; top:calc(100% + 12px); z-index:1000; }
.nidrana-desktop-submenu a { color:#153e2b; display:block; font-family:Onest,"Onest Placeholder",sans-serif; font-size:16px; font-style:normal; font-weight:500; letter-spacing:0px; line-height:150%; padding:10px 12px; text-decoration:none; text-transform:none; }
.nidrana-desktop-submenu a:hover,.nidrana-desktop-submenu a:focus-visible { background:#edf7ef; border-radius:8px; }
.nidrana-mobile-menu { display:none; }
.nidrana-mobile-menu[hidden] { display:none !important; }

/* Framer clips the exported desktop header and its link containers. Submenus
   are injected into that header, so mark only the project-owned menu host
   chain as overflow-visible at the desktop breakpoint. */
@media (min-width:1200px) {
  nav[data-nidrana-desktop-nav="true"],
  nav[data-nidrana-desktop-nav="true"] [data-nidrana-desktop-menu-host="true"] {
    overflow:visible !important;
  }
  nav[data-nidrana-desktop-nav="true"] .nidrana-desktop-menu-item {
    z-index:1001;
  }
}

.nidrana-visually-hidden {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

.nidrana-skip-link {
  align-items: center;
  background: #153e2b;
  border: 2px solid #fff;
  border-radius: 8px;
  color: #fff;
  display: inline-flex;
  font: 700 16px/1.2 Inter, Arial, sans-serif;
  left: 12px;
  min-height: 44px;
  padding: 8px 16px;
  position: fixed;
  text-decoration: none;
  top: 12px;
  transform: translateY(calc(-100% - 24px));
  transition: transform 160ms ease;
  z-index: 2147483647;
}

.nidrana-skip-link:focus {
  transform: translateY(0);
}

#main:focus {
  outline: 0;
}

:where(a, button, input, textarea, select, [role="button"], [tabindex="0"]):focus-visible {
  outline: 3px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px #153e2b;
}

/* Form controls keep a clear focus cue without the heavy dark focus box. */
form :where(input, textarea, select):focus-visible {
  box-shadow: none !important;
  outline: 0;
}

form .framer-form-input-wrapper:focus-within {
  box-shadow: 0 0 0 3px rgba(57, 164, 107, .24) !important;
}

form .framer-form-input-wrapper:focus-within::after {
  border-color: #39a46b !important;
  border-width: 1px !important;
}

/* Keep the desktop header's Framer flyout menus connected to their triggers.
   Without this, the space beneath Programs and Get Involved closes the menu
   before a visitor can reach a submenu item. */
@media (min-width: 1200px) {
  /* The authored Model pilot canvas is 833px wide. Keep its Framer placement
   * intact while restoring that intrinsic copy width. */
  [data-nidrana-layout-target="model-scalable-copy"],
  [data-nidrana-layout-target="model-scalable-copy"] [data-framer-name="The Mission and goals of our organization."] {
    max-width: 833px !important;
    width: 833px !important;
  }

  .framer-1heqm0t[role="dialog"] {
    transform: translateY(-25px) !important;
    position: relative;
    pointer-events: auto !important;
    z-index: 30 !important;
  }

  .framer-1heqm0t[role="dialog"]::before {
    content: "";
    pointer-events: auto;
    position: absolute;
    top: -26px;
    inset-inline: 0;
    height: 26px;
  }

  .framer-1heqm0t[role="dialog"][data-nidrana-dropdown-open="true"] {
    transform: translateY(-30px) !important;
  }
}

/* The compact Programs variant keeps its copy layers absolutely positioned in
 * the Framer export. At 320px the longer body needs normal document flow. */
@media (max-width: 360px) {
  [data-nidrana-layout-target="programs-support-copy"] {
    align-items: center !important;
    box-sizing: border-box !important;
    display: flex !important;
    gap: 14px !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 48px 0 28px !important;
    position: relative !important;
  }

  [data-nidrana-layout-target="programs-support-copy"] > * {
    bottom: auto !important;
    inset: auto !important;
    left: auto !important;
    position: relative !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
  }

  [data-nidrana-layout-target="programs-support-copy"] > [data-framer-name="Programs & Experiences"],
  [data-nidrana-layout-target="programs-support-copy"] > [data-framer-name="Every cause we support is driven by real needs, real people, and real outcomes."] {
    width: 100% !important;
  }

  [data-nidrana-layout-target="programs-support-copy"] > [data-framer-name="Programs & Experiences"] {
    margin-bottom: 28px !important;
  }

  [data-nidrana-layout="programs-support"],
  [data-nidrana-layout="programs-support"] > [data-framer-name="Container"] {
    height: auto !important;
    min-height: 0 !important;
  }
}

/* Keep the source-owned responsive variants inside their actual mobile canvas.
 * These are intentionally scoped: their Framer compositions differ. */
@media (max-width: 1199px) {
  [data-nidrana-layout="governance-documents"] [data-framer-name="Title & Tag"] {
    box-sizing: border-box !important;
    height: auto !important;
    left: 20px !important;
    margin: 0 !important;
    max-width: min(100%, 680px) !important;
    min-height: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    right: 20px !important;
    opacity: 1 !important;
    text-align: center !important;
    transform: none !important;
    width: auto !important;
  }

  [data-nidrana-layout="governance-documents"] [data-framer-name="Title & Tag"] > * {
    box-sizing: border-box !important;
    inset: auto !important;
    margin: 0 !important;
    max-width: 100% !important;
    position: relative !important;
    transform: none !important;
    width: 100% !important;
    opacity: 1 !important;
  }

  [data-nidrana-layout="governance-documents"] [data-framer-name="The Mission and goals of our organization."],
  [data-nidrana-layout="governance-documents"] [data-framer-name="The Mission and goals of our organization."] * {
    color: rgb(34, 34, 34) !important;
  }

  [data-nidrana-layout="governance-documents"] {
    height: auto !important;
    min-height: 650px !important;
  }

  [data-nidrana-layout="governance-documents"] [data-framer-name="Right Content"] {
    box-sizing: border-box !important;
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    height: auto !important;
    inset: auto !important;
    margin-top: 14px !important;
    position: relative !important;
    transform: none !important;
    width: 100% !important;
  }

  [data-nidrana-layout="governance-documents"] [data-framer-name="Right Content"] [data-framer-name="Funds Card"],
  [data-nidrana-layout="governance-documents"] [data-framer-name="Right Content"] [data-framer-name="Title & Text"],
  [data-nidrana-layout="governance-documents"] [data-framer-name="Right Content"] [data-framer-name="95% of Funds Go Directly to Programs"] {
    box-sizing: border-box !important;
    height: auto !important;
    inset: auto !important;
    min-height: 104px !important;
    position: relative !important;
    transform: none !important;
    width: 100% !important;
  }
}

[data-nidrana-contact-anchor] {
  scroll-margin-top: 112px;
}

@media (max-width:1199.98px) {
  .nidrana-desktop-menu-item { display:none !important; }
  [data-nidrana-mobile-trigger="true"] { cursor:pointer; }
  .nidrana-mobile-menu { background:#fff; box-shadow:0 18px 46px rgba(20,55,39,.24); display:block; max-height:calc(100vh - 86px); overflow:auto; padding:18px; position:fixed; right:18px; top:70px; width:min(340px,calc(100vw - 36px)); z-index:2147483645; }
  .nidrana-mobile-menu-group { border-bottom:1px solid #dce8e0; display:grid; grid-template-columns:1fr auto; padding:10px 0; }
  .nidrana-mobile-menu-group > a { color:#153e2b; font-family:Onest,"Onest Placeholder",sans-serif; font-size:16px; font-style:normal; font-weight:500; letter-spacing:0px; line-height:150%; padding:10px 4px; text-decoration:none; text-transform:none; }
  .nidrana-mobile-submenu-control { appearance:none; background:transparent; border:0; color:#153e2b; cursor:pointer; font-family:Onest,"Onest Placeholder",sans-serif; font-size:0; font-style:normal; font-weight:500; letter-spacing:0px; line-height:150%; min-width:44px; text-transform:none; }
  .nidrana-mobile-submenu-control::after { content:"+"; font-size:1.5rem; }
  .nidrana-mobile-submenu-control[aria-expanded="true"]::after { content:"-"; }
  .nidrana-mobile-submenu { grid-column:1/-1; list-style:none; margin:0; padding:0 0 4px 14px; }
  .nidrana-mobile-submenu a { color:#153e2b; display:block; font-family:Onest,"Onest Placeholder",sans-serif; font-size:16px; font-style:normal; font-weight:500; letter-spacing:0px; line-height:150%; padding:9px 0; text-decoration:none; text-transform:none; }
  .nidrana-utility-page__header { align-items:flex-start; min-height:76px; padding:18px 88px 18px 20px; }
  .nidrana-static-navigation,.nidrana-utility-page__donate { display:none; }
  .nidrana-utility-page__footer { align-items:center; flex-direction:column; }
}

/* Partnership FAQ icons: keep each plus icon visible and clickable over panel content. */
.framer-1g3bjav .framer-6g70tt .framer-NrnAh.framer-1ogbeds {
  position: relative;
  z-index: 1;
  overflow: visible;
}

.framer-1g3bjav .framer-6g70tt .framer-1ucbr03,
.framer-1g3bjav .framer-6g70tt .framer-kvi0gv {
  position: relative;
  z-index: 2;
}

.framer-1g3bjav .framer-6g70tt .framer-1le2z8a .framer-USIfT {
  position: relative;
  z-index: 3;
  pointer-events: none;
}

/* Donate: compact custom-amount field within the existing amount card. */
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-field { align-items:center; border:1px solid #39a46b; border-radius:14px; color:#222; display:flex; gap:8px; margin-top:12px; max-width:360px; padding:9px 14px; }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-field:focus-within { box-shadow:0 0 0 3px rgba(57,164,107,.22); }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-field input { appearance:textfield; background:transparent; border:0; color:#222; font:inherit; font-size:inherit; min-width:0; outline:0; width:100%; }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-field input::placeholder { color:#727272; opacity:1; }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-hint,[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-message { display:block; font-size:.85em; line-height:1.35; margin-top:8px; }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-message { color:#b42318; }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-plus { cursor:pointer; }
[data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-plus:focus-visible { border-radius:999px; box-shadow:0 0 0 3px rgba(57,164,107,.35); outline:0; }
@media (max-width:767.98px) { [data-nidrana-custom-donation-ready="true"] .nidrana-donate-custom-field { max-width:calc(100% - 80px); } }

/* Donate: align the four legal-information arrow markers to their text rows. */
@media (min-width:1200px) {
  .framer-181fkw1 .framer-uhz5f9,
  .framer-181fkw1 .framer-1tp1kf,
  .framer-181fkw1 .framer-zebzvn {
    transform:translateY(0px);
  }
}

.nidrana-carousel-control {
  isolation: isolate;
  position: relative;
}

.nidrana-carousel-control::after {
  content: "";
  height: max(24px, 100%);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: max(24px, 100%);
}

.nidrana-contrast-green-text {
  color: #287649 !important;
}

.nidrana-contrast-green-surface {
  background-color: #287649 !important;
}

.nidrana-contrast-muted-text {
  color: #686868 !important;
}

input::placeholder,
textarea::placeholder {
  color: #727272 !important;
  opacity: 1 !important;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    scroll-behavior: auto !important;
  }

  *,
  *::before,
  *::after {
    animation-delay: 0ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-delay: 0ms !important;
    transition-duration: 0.01ms !important;
  }
}

nav [data-framer-name="Close"][tabindex="0"],
nav [data-framer-name="Open"][tabindex="0"] {
  isolation: isolate;
}

nav [data-framer-name="Close"][tabindex="0"]::after,
nav [data-framer-name="Open"][tabindex="0"]::after {
  content: "";
  inset: -7px;
  position: absolute;
}

html.nidrana-menu-open,
html.nidrana-menu-open body {
  overflow: hidden;
  overscroll-behavior: none;
}

@media (max-width: 374.98px) {
  /* Rebase Framer's 390 px phone sections to the actual narrow viewport. */
  #main section,
  #main footer {
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Framer rich text often retains the 390 px canvas width below that canvas. */
  #main [data-framer-component-type="RichTextContainer"] {
    min-width: 0 !important;
    max-width: min(100%, calc(100vw - 55px)) !important;
  }

  #main [data-framer-component-type="RichTextContainer"] > * {
    max-width: 100% !important;
  }

  /* Keep Framer's named content groups aligned to their actual parent column. */
  #main section > [data-framer-name="Container"],
  #main [data-framer-name="Left"] > [data-framer-name="Title & Tag"],
  #main [data-framer-name="HERO SECTION"] [data-framer-name="Container"],
  #main [data-framer-name="Hero Section"] [data-framer-name="Container"],
  #main [data-framer-name="IMPLEMENTATION PATHWAY"] [data-framer-name="Container"],
  #main [data-framer-name="IMPLEMENTATION PATHWAY"] [data-framer-name="Right Content"],
  #main [data-framer-name="IMPLEMENTATION PATHWAY"] [data-framer-name="Card Wrapper"],
  #main [data-framer-name="IMPLEMENTATION PATHWAY"] [data-framer-name="Our Process Card"] {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="HERO SECTION"] [data-framer-name="Title & Text"],
  #main [data-framer-name="Hero Section"] [data-framer-name="Title & Text"] {
    box-sizing: border-box;
    max-width: calc(100% - 40px) !important;
    width: calc(100% - 40px) !important;
  }

  /* The footer label is centered and unbroken in the 390 px export. */
  #main [data-framer-name="Copywrite"] [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="Copywrite"] p {
    box-sizing: border-box;
    max-width: calc(100% - 20px) !important;
    white-space: normal !important;
    width: calc(100% - 20px) !important;
  }

  /* Framer accordion instances use a fixed 350 px phone width. */
  [data-framer-name="Right"] > [data-framer-name="Accordion"],
  [data-framer-name="Right"] > [data-framer-name="Accordion"] > .ssr-variant > div,
  [data-framer-name="Right"] > [data-framer-name="Accordion"] > .ssr-variant > div > [data-framer-name] {
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Donation choices are accordion instances with page-specific wrapper names. */
  #main [data-framer-name="Program Cards"],
  #main [data-framer-name="Program Cards"] > [data-framer-name="Volunteer FAQ"],
  #main [data-framer-name="Program Cards"] [data-framer-name="Single FAQ"],
  #main [data-framer-name="Program Cards"] [data-framer-name="Question & Answer"] {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="Content"] > [data-framer-name="Right Content"],
  #main [data-framer-name="Content"] > [data-framer-name="Right Content"] > [data-framer-name="Card Image"],
  #main [data-framer-name="Core Activities"] [data-framer-name="Right"] > div,
  #main [data-framer-name="Support the First Nidrana Pilot"] [data-framer-name="Container"] > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="Core Activities"] [data-framer-name="Right"] > div > [data-framer-component-type="RichTextContainer"] {
    box-sizing: border-box;
    max-width: calc(100% - 62px) !important;
    width: calc(100% - 62px) !important;
  }

  /* Icon-and-copy rows reserve the leading icon column on narrow phones. */
  #main [data-framer-name="Right"] > div > [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="Right"] > div > div > [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="ETHICS & SAFEGUARDING"] [data-framer-name="Title & Tag"] > div > [data-framer-component-type="RichTextContainer"] {
    box-sizing: border-box;
    max-width: calc(100% - 62px) !important;
    width: calc(100% - 62px) !important;
  }

  #main [data-framer-name="Right"] > div,
  #main [data-framer-name="ETHICS & SAFEGUARDING"] [data-framer-name="Title & Tag"] > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Cap route-specific 390 px groups while preserving their original hierarchy. */
  #main [data-framer-name="What we measure"] > div,
  #main [data-framer-name="What we learn"] > div,
  #main [data-framer-name="What we learn"] [data-framer-name="Top"],
  #main [data-framer-name="What we learn"] [data-framer-name="Left"],
  #main [data-framer-name="What we learn"] [data-framer-name="Right"],
  #main [data-framer-name="WHY PARTNER WITH NIDRANA"] > div,
  #main [data-framer-name="NGOs & RESEARCH"] > div,
  #main [data-framer-name="HOW PARTNERSHIPS WORK"] > div,
  #main [data-framer-name="Why Join"] > div,
  #main [data-framer-name="How It Works"],
  #main [data-framer-name="What You Can Do"] > div,
  #main [data-framer-name="What You Can Do"] [data-framer-name="Left"] {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="What we learn"] > div > div,
  #main [data-framer-name="What we learn"] > div > div > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="NGOs & RESEARCH"] [data-framer-name="Container"] > div,
  #main [data-framer-name="NGOs & RESEARCH"] [data-framer-name="Container"] > div > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="What we learn"] [data-framer-name="Top"] {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  #main [data-framer-name="What we learn"] [data-framer-name="Top"] > div,
  #main [data-framer-name="What we learn"] [data-framer-name="Top"] [data-framer-component-type="RichTextContainer"] {
    box-sizing: border-box;
    left: 0 !important;
    margin-left: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="ETHICS & SAFEGUARDING"] h2 {
    transform: translateX(4px) !important;
  }

  #main [data-framer-name="How It Works"] [data-framer-name="1"],
  #main [data-framer-name="How It Works"] [data-framer-name="2"],
  #main [data-framer-name="How It Works"] [data-framer-name="3"],
  #main [data-framer-name="How It Works"] [data-framer-name="4"] {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="How It Works"] [data-framer-name="1"] [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="How It Works"] [data-framer-name="2"] [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="How It Works"] [data-framer-name="3"] [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="How It Works"] [data-framer-name="4"] [data-framer-component-type="RichTextContainer"] {
    box-sizing: border-box;
    max-width: calc(100vw - 129px) !important;
  }

  #main [data-framer-name="Container"]:has(> [data-framer-name="text"]) {
    box-sizing: border-box;
    max-width: calc(100vw - 55px) !important;
    width: calc(100vw - 55px) !important;
  }

  #main [data-framer-name="Container"]:has(> [data-framer-name="text"]) > [data-framer-name="text"],
  #main [data-framer-name="Container"]:has(> [data-framer-name="text"]) [data-framer-name="Title & Text"] {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="Contact info"] {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="Contact info"] > [data-framer-name="Text"] {
    box-sizing: border-box;
    max-width: calc(100% - 40px) !important;
    width: calc(100% - 40px) !important;
  }

  #main [data-framer-name="Impact Focus"] > div > [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="WHY PARTNER WITH NIDRANA"] > div > [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="NGOs & RESEARCH"] > div > [data-framer-component-type="RichTextContainer"],
  #main [data-framer-name="WHY THIS MATTERS"] > div > [data-framer-component-type="RichTextContainer"] {
    box-sizing: border-box;
    margin-inline: 20px !important;
    max-width: calc(100% - 40px) !important;
    width: calc(100% - 40px) !important;
  }

  #main [data-framer-name="CTA "] [data-framer-name="Container"] > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Keep intrinsic Framer buttons inside their existing content column. */
  #main div:has(> div > [data-framer-name^="Button"]),
  #main div:has(> [data-framer-name^="Button"]),
  #main [data-framer-name^="Button"] {
    box-sizing: border-box;
    max-width: 100% !important;
  }

  #main [data-framer-name="Team Section"] {
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="Title & Tag"] > div:has(> [data-framer-name^="Button"]),
  #main [data-framer-name="Title & Tag"] > div > [data-framer-name^="Button"],
  #main [data-framer-name="Funds Card"] div:has(> [data-framer-name^="Button"]),
  #main [data-framer-name="Funds Card"] [data-framer-name^="Button"] {
    max-width: calc(100% + 20px) !important;
  }

  #main div:has(> [data-framer-name="Button 02"]),
  #main [data-framer-name="Button 02"] {
    max-width: calc(100vw - 55px) !important;
  }

  #main [data-framer-name="Button 02"] {
    gap: 15px !important;
  }

  #main [data-framer-name="Title & Tag"] > div:has(> [data-framer-name="Button 02"]),
  #main [data-framer-name="Title & Tag"] > div > [data-framer-name="Button 02"] {
    max-width: calc(100vw - 55px) !important;
  }

  /* Donation and governance financial cards inherit their section width. */
  #main [data-framer-name="Financial"] {
    max-width: calc(100% - 40px) !important;
    width: calc(100% - 40px) !important;
  }

  #main [data-framer-name="Financial"] [data-framer-name="Funds Card"] {
    left: 0 !important;
    max-width: 100% !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
  }

  #main [data-framer-name="Funds Card"] > [data-framer-name="Title & Text"] > div {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  #main [data-framer-name="Funds Card"] > [data-framer-name="Title & Text"] > div > [data-framer-component-type="RichTextContainer"] {
    box-sizing: border-box;
    max-width: calc(100% - 45px) !important;
    width: calc(100% - 45px) !important;
  }

  /* Preserve long card titles by wrapping them inside the card content. */
  #main [data-framer-name="Card Content"] [data-framer-name="Title"] > [data-framer-name="You Give"] {
    height: auto !important;
    max-width: 100% !important;
    white-space: normal !important;
    width: 100% !important;
  }

  #main [data-framer-name="Card Content"] [data-framer-name="Title"] > [data-framer-name="You Give"] > * {
    height: auto !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
  }

  /* The Donate CTA positions this control for the 375 px canvas. */
  #main [data-framer-name="CTA"] [data-framer-name="Primary Button"] {
    left: auto !important;
    right: -20px !important;
  }
}

@media (max-width: 339.98px) {
  /* Recenter the few groups Framer positions from a 390 px phone canvas. */
  #main [data-framer-name="Who This Is For"] [data-framer-name="Container"],
  #main [data-framer-name="Why Join"] [data-framer-name="Title & Text"] {
    transform: translateX(40px) !important;
  }

  #main [data-framer-name="Impact Focus"] > div > [data-framer-name="Every cause we support is driven by real needs, real people, and real outcomes."] {
    transform: translateX(26px) !important;
  }

  #main [data-framer-name="How It Works"] [data-framer-name="4"] {
    transform: translateX(4px) !important;
  }

  #main [data-framer-name="How It Works"] [data-framer-name="4"] h4 {
    transform: translateX(4px) !important;
  }

  #main [data-framer-name="How It Works"] [data-framer-name="No"] {
    margin-left: 4px !important;
  }

  /* Shared pilot CTA: retain the visual button while fitting 320 px screens. */
  #main [data-framer-name="Cta Content"]:has([data-framer-name="Button 01"][href$="donate"]),
  #main [data-framer-name="Cta Content"]:has([data-framer-name="Button 01"][href$="donate"]) [data-framer-name="Button & Text"] {
    margin-inline: -20px;
    max-width: calc(100% + 40px) !important;
    width: calc(100% + 40px) !important;
  }

  /* The reusable contact block was exported at 389 px. */
  #main [data-framer-name="Contact section"],
  #main [data-framer-name="Contact section"] > [data-framer-name="Container"],
  #main [data-framer-name="Contact section"] [data-framer-name="Contact form"],
  #main [data-framer-name="Contact section"] form {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* Keep the phone header consistent with the current desktop navigation. */
@media (max-width: 767.98px) {
  #main nav[data-framer-name*="Phone"]:not([data-framer-name*="Open"]):not(.nidrana-static-menu-open) .framer-q87gnq {
    display: none !important;
  }

  #main nav[data-framer-name*="Phone"] .framer-1jv18yy-container {
    height: 29px !important;
    left: 0 !important;
    right: auto !important;
    width: 135px !important;
  }

  #main nav[data-framer-name*="Phone"] .framer-so1j41-container {
    bottom: auto !important;
    left: auto !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
  }

  #main nav[data-framer-name*="Phone Open"] {
    background: #fff !important;
    height: 370px !important;
  }

  #main nav[data-framer-name*="Phone Open"] > .framer-vrez66 {
    height: 338px !important;
    min-height: 338px !important;
  }

  #main nav[data-framer-name*="Phone Open"] .framer-q87gnq {
    background: #fff !important;
    display: flex !important;
    padding-top: 60px !important;
  }

  #main nav.nidrana-static-menu-open {
    background: #fff !important;
    height: 370px !important;
  }

  #main nav.nidrana-static-menu-open > .framer-vrez66 {
    height: 338px !important;
    min-height: 338px !important;
  }

  #main nav.nidrana-static-menu-open .framer-q87gnq {
    background: #fff !important;
    display: flex !important;
    padding-top: 60px !important;
  }

  #main nav.nidrana-static-menu-open .framer-q87gnq a,
  #main nav.nidrana-static-menu-open .framer-q87gnq p {
    background: #fff !important;
    color: #222 !important;
  }

  #main nav.nidrana-static-menu-open [data-framer-name="Close"] > * {
    opacity: 0 !important;
  }

  #main nav.nidrana-static-menu-open [data-framer-name="Close"]::before,
  #main nav.nidrana-static-menu-open [data-framer-name="Close"]::after {
    background: #222;
    content: "";
    height: 2px;
    left: 7px;
    position: absolute;
    top: 14px;
    width: 20px;
  }

  #main nav.nidrana-static-menu-open [data-framer-name="Close"]::before {
    transform: rotate(45deg);
  }

  #main nav.nidrana-static-menu-open [data-framer-name="Close"]::after {
    transform: rotate(-45deg);
  }

  #main nav[data-framer-name*="Phone Open"] .framer-q87gnq a,
  #main nav[data-framer-name*="Phone Open"] .framer-q87gnq p {
    background: #fff !important;
    color: #222 !important;
  }
}

/* Nature-Based Sessions ships a non-hydrated ticker between its tag and copy.
 * The ticker list remains opacity:0 but retains its exported height, creating
 * a large blank gap. Collapse only that invisible placeholder. */
[data-framer-name="Nature-Based Sessions"] .framer-vip065 {
  height: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

[data-framer-name="Nature-Based Sessions"] > [data-framer-name="Container"] {
  height: auto !important;
  min-height: 0 !important;
}

@media (max-width: 767.98px) {
  [data-framer-name="Nature-Based Sessions"] {
    height: auto !important;
    min-height: 620px !important;
  }

  [data-framer-name="Nature-Based Sessions"] .framer-s36o7t.hidden-lv62bg {
    display: block !important;
    margin: 24px 20px 28px !important;
    max-width: none !important;
    text-align: center !important;
    width: auto !important;
  }
}

.journal-breadcrumb a {
  align-items: center;
  display: inline-flex;
  min-height: 24px;
}

/*
 * Static Framer exports preserve several wide absolute desktop canvases.  The
 * marker contract is emitted by apply_visual_layout_markers.mjs from authored
 * component names, so these rules never depend on generated Framer classes.
 */
[data-nidrana-layout="governance-documents"] {
  box-sizing: border-box !important;
  inset: auto !important;
  margin-inline: auto !important;
  max-width: min(100%, 1200px) !important;
  overflow: visible !important;
  position: relative !important;
  transform: none !important;
  width: calc(100% - 48px) !important;
}

[data-nidrana-layout="governance-documents"] [data-framer-name="Title & Tag"],
[data-nidrana-layout="governance-documents"] [data-framer-name="Tab Content"] {
  box-sizing: border-box !important;
  left: auto !important;
  max-width: 100% !important;
  right: auto !important;
  transform: none !important;
}

[data-nidrana-layout="volunteer-gain"] [data-framer-name="Container"] {
  box-sizing: border-box !important;
  max-width: min(100%, 1200px) !important;
}

/* Each of these targets is annotated by the exact authored copy it contains.
 * They are separate Framer compositions, so they intentionally do not share a
 * generic inner-canvas normalization rule. */
@media (min-width: 1200px) {
  [data-nidrana-layout-target="programs-support-copy"] {
    align-self: center !important;
    box-sizing: border-box !important;
    inset: auto !important;
    margin-left: auto !important;
    max-width: 600px !important;
    overflow: visible !important;
    position: relative !important;
    width: 50% !important;
  }

  [data-nidrana-layout="programs-support"] {
    height: auto !important;
    min-height: 846px !important;
  }

  [data-nidrana-layout="programs-support"] > [data-framer-name="Container"] {
    height: auto !important;
    min-height: 760px !important;
  }

  [data-nidrana-layout-target="programs-support-copy"] > * {
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  [data-nidrana-layout-target="programs-support-copy"] [data-framer-name="Programs & Experiences"] {
    height: auto !important;
  }


  @media (min-width: 1200px) {
    [data-nidrana-layout-target="model-scalable-copy"],
    [data-nidrana-layout-target="model-scalable-copy"] [data-framer-name="The Mission and goals of our organization."] {
      max-width: 833px !important;
      width: 833px !important;
    }
  }

}

/* The exported volunteer gain composition is an absolutely positioned 1000px
 * desktop canvas. Keep its content in normal flow and constrain it to the
 * actual section instead of allowing the clipped canvas to control the view. */
[data-nidrana-layout="volunteer-gain"] [data-framer-name="Container"] {
  align-content: center !important;
  align-items: center !important;
  display: grid !important;
  justify-items: center !important;
  margin-inline: auto !important;
  overflow: visible !important;
}

@media (min-width: 1200px) {
  [data-nidrana-layout="volunteer-gain"] {
    height: auto !important;
    min-height: 660px !important;
  }

  [data-nidrana-layout="volunteer-gain"] [data-framer-name="Container"] {
    height: auto !important;
    min-height: 620px !important;
  }
}

[data-nidrana-layout="volunteer-gain"] [data-framer-name="Container"] > [data-framer-name="Title & Tag"] {
  box-sizing: border-box !important;
  inset: auto !important;
  margin: 0 auto !important;
  max-width: min(100%, 720px) !important;
  overflow: visible !important;
  position: relative !important;
  transform: none !important;
  width: calc(100% - 48px) !important;
}

[data-nidrana-layout="volunteer-gain"] [data-framer-name="Title & Tag"] > * {
  box-sizing: border-box !important;
  left: auto !important;
  max-width: 100% !important;
  right: auto !important;
  transform: none !important;
}

[data-nidrana-layout="volunteer-gain"] [data-framer-name="Title & Tag"] h2,
[data-nidrana-layout="volunteer-gain"] [data-framer-name="Title & Tag"] p {
  max-width: 100% !important;
  text-align: center !important;
  width: 100% !important;
}

/* Founder profiles are exported as fixed Framer canvases with independently
 * positioned Left and Right children. The heading-derived marker identifies
 * the actual profile container across the legitimate responsive variants. */
[data-nidrana-layout-target="founder-profile-inner"] {
  box-sizing: border-box !important;
  margin-inline: auto !important;
  max-width: min(1160px, calc(100% - 64px)) !important;
  overflow: visible !important;
}

[data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Left"],
[data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] {
  box-sizing: border-box !important;
  min-width: 0 !important;
}

[data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Every cause we support is driven by real needs, real people, and real outcomes."] p {
  letter-spacing: normal !important;
  text-align: left !important;
  word-spacing: normal !important;
}

@media (min-width: 1200px) {
  [data-nidrana-layout-target="founder-profile-inner"] {
    align-items: center !important;
    display: grid !important;
    gap: clamp(40px, 6vw, 92px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 438px) !important;
    height: auto !important;
    inset: auto !important;
    justify-content: stretch !important;
    left: auto !important;
    min-height: 600px !important;
    padding: 72px 0 !important;
    position: relative !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    width: min(1160px, calc(100% - 64px)) !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] > [data-framer-name="Left"],
  [data-nidrana-layout-target="founder-profile-inner"] > [data-framer-name="Right"] {
    align-self: center !important;
    height: auto !important;
    inset: auto !important;
    max-width: 100% !important;
    position: relative !important;
    transform: none !important;
    width: 100% !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Image Wrapper"] {
    aspect-ratio: 0.73 / 1 !important;
    height: auto !important;
    margin-inline: auto !important;
    max-width: 438px !important;
    overflow: hidden !important;
    width: 100% !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] div:has(> [data-framer-background-image-wrapper="true"]) {
    height: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] [data-framer-background-image-wrapper="true"],
  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] img {
    height: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (max-width: 1199.98px) {
  [data-nidrana-layout-target="founder-profile-inner"] {
    align-items: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 32px !important;
    height: auto !important;
    inset: auto !important;
    padding: 48px 0 !important;
    position: relative !important;
    transform: none !important;
    width: min(100%, calc(100% - 40px)) !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] > [data-framer-name="Left"],
  [data-nidrana-layout-target="founder-profile-inner"] > [data-framer-name="Right"] {
    height: auto !important;
    inset: auto !important;
    max-width: 100% !important;
    position: relative !important;
    transform: none !important;
    width: 100% !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Image Wrapper"] {
    aspect-ratio: 0.78 / 1 !important;
    height: auto !important;
    margin-inline: auto !important;
    max-width: 438px !important;
    overflow: hidden !important;
    width: 100% !important;
  }
}

@media (max-width: 767.98px) {
  [data-nidrana-layout-target="founder-profile-inner"] {
    gap: 28px !important;
    padding: 36px 0 !important;
    width: min(100%, calc(100% - 32px)) !important;
  }
}

/* The Viviane export contains a nested fixed-width image canvas. Constrain
 * that canvas at every non-desktop breakpoint, not just its outer wrapper. */
@media (max-width: 1199.98px) {
  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] div:has(> [data-framer-background-image-wrapper="true"]) {
    height: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] [data-framer-background-image-wrapper="true"],
  [data-nidrana-layout-target="founder-profile-inner"] [data-framer-name="Right"] img {
    height: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}


@media (max-width: 1199.98px) {
  [data-nidrana-layout="governance-documents"] {
    width: calc(100% - 32px) !important;
  }
}

@media (max-width: 767.98px) {
  [data-nidrana-layout="governance-documents"] {
    width: calc(100% - 24px) !important;
  }
}

/* FAQ answers are static fallback content; the runtime only collapses them after it loads. */
[data-nidrana-faq-row="true"] {
  flex-wrap: wrap !important;
}

[data-nidrana-faq-row="true"] > [data-framer-name="Question & Answer"] {
  cursor: pointer;
}

.nidrana-faq-answer {
  box-sizing: border-box;
  flex: 0 0 100%;
  order: 3;
  padding: 0 24px 24px;
}

.nidrana-faq-answer p {
  margin: 0;
}

.nidrana-faq-answer[hidden] {
  display: none !important;
}

/* Match the highlighted Nidrana word to the bright green Contact icon. */
#main[data-framer-hydrate-v2*="XOgz34kph"]
  [data-framer-name="Your Kindness Can Change a Life Today"]
  :is(h1, h2)
  span {
  --framer-text-color: #39a46b !important;
  -webkit-text-fill-color: #39a46b !important;
  color: #39a46b !important;
}
@media (max-width: 767.98px) {
  .nidrana-desktop-menu-item { display: none !important; }
}
