/* Content Design Leaders — site styles */
@font-face{font-family:'Almarai';font-weight:400;font-style:normal;src:url('../fonts/Almarai-Regular.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Almarai';font-weight:700;font-style:normal;src:url('../fonts/Almarai-Bold.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Barlow Condensed';font-weight:300;font-style:normal;src:url('../fonts/BarlowCondensed-Light.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Barlow Condensed';font-weight:400;font-style:normal;src:url('../fonts/BarlowCondensed-Regular.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Barlow Condensed';font-weight:400;font-style:italic;src:url('../fonts/BarlowCondensed-Italic.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Barlow Condensed';font-weight:500;font-style:normal;src:url('../fonts/BarlowCondensed-Medium.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Barlow Condensed';font-weight:600;font-style:normal;src:url('../fonts/BarlowCondensed-SemiBold.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Barlow Condensed';font-weight:700;font-style:normal;src:url('../fonts/BarlowCondensed-Bold.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'IvyPresto Headline';font-weight:400;font-style:normal;src:url('../fonts/IvyPrestoHeadline-Regular.otf') format('opentype');font-display:swap;}

@font-face{font-family:'BarlowCondensed-Medium';font-weight:400;font-style:normal;src:url('../fonts/BarlowCondensed-Medium.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'BarlowCondensed-Light';font-weight:400;font-style:normal;src:url('../fonts/BarlowCondensed-Light.ttf') format('truetype');font-display:swap;}

*{box-sizing:border-box;}
html,body{margin:0;background:#FBF9F7;}
body{color:#201D1D;font-family:'Barlow Condensed',system-ui,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
img{max-width:100%;}

.cdl-navlink{text-decoration:none;}
.cdl-menu-btn{display:none;}
/* Highlights paint behind text; headings isolate so the behind-highlight still shows above section backgrounds */
h1,h2{isolation:isolate;}
.cdl-navlink:hover{color:#00BE4A !important;}
.cdl-btn-green:hover{background:#00A53F !important;}
.cdl-btn-navy:hover{background:#122875 !important;}
.cdl-footlink{transition:opacity .2s;}
.cdl-footlink:hover{opacity:.65;text-decoration:underline;text-underline-offset:2px;}
.cdl-join:hover{opacity:.8;}
.faq-item{border-bottom:1px solid rgba(32,29,29,0.45);}
.faq-item summary{list-style:none;cursor:pointer;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary .faq-sign::after{content:"+";}
.faq-item[open] summary .faq-sign::after{content:"\2212";}

/* Founders collage: live-site coordinates, desktop */
.founders-canvas{position:relative;height:47vw;margin-top:1vw;}
.founders-canvas .f-item{position:absolute;}

/* Kit embeds in footers: keep fields stacked and flush-left regardless of container width */
footer .formkit-form[data-uid="cae42f6855"] [data-style="clean"]{padding:0 !important;}
footer .formkit-form[data-uid="cae42f6855"] .formkit-fields[data-stacked="false"]{margin:0 !important;}
footer .formkit-form[data-uid="cae42f6855"] .formkit-fields[data-stacked="false"] .formkit-field,
footer .formkit-form[data-uid="cae42f6855"] .formkit-fields[data-stacked="false"] .formkit-submit{flex:1 0 100% !important;margin:0 0 15px 0 !important;}

/* Kit-injected UI (EU consent prompt, success messages, alerts): brand font everywhere Kit renders,
   including modals it appends outside the form element */
.formkit-form, .formkit-form *,
[class*="formkit-"], [class*="formkit-"] *,
.seva-form, .seva-form *{font-family:'BarlowCondensed-Medium','Barlow Condensed',sans-serif !important;}
.formkit-form[data-uid="cae42f6855"] p,
.formkit-form[data-uid="cae42f6855"] label,
.formkit-form[data-uid="cae42f6855"] .formkit-alert,
.formkit-form[data-uid="cae42f6855"] [data-group="checkboxes"]{font-size:17px;line-height:1.35;color:#201D1D;}
.formkit-form[data-uid="cae42f6855"] [data-group="checkbox"] input[type="checkbox"]:checked + label::before{background:#00BE4A !important;border-color:#00BE4A !important;}
.formkit-form[data-uid="cae42f6855"] .formkit-alert-success{background:#E2F7E9;border-color:#00BE4A;color:#0B6B31;}

/* Scroll-in animation (Squarespace "Scale"/"Fast" equivalent) */
.sq-anim{opacity:0;transform:scale(.95);transition:opacity .45s cubic-bezier(.33,1,.68,1),transform .45s cubic-bezier(.33,1,.68,1);will-change:opacity,transform;}
.sq-anim.sq-in{opacity:1;transform:none;will-change:auto;}
@media (prefers-reduced-motion:reduce){.sq-anim{opacity:1;transform:none;transition:none;}}

/* ---------- Accessibility ---------- */
/* Skip link: visually hidden until keyboard focus */
.cdl-skip{position:absolute;left:-9999px;top:0;z-index:100;background:#193497;color:#fff;font-family:'Barlow Condensed',sans-serif;font-size:18px;padding:12px 20px;border-radius:0 0 8px 0;text-decoration:none;}
.cdl-skip:focus{left:0;}
/* Restore visible focus on inputs that set outline:none inline */
input[style*="outline:none"]:focus,
textarea[style*="outline:none"]:focus{outline:2px solid #193497 !important;outline-offset:2px;}
/* Visible focus for nav links and buttons */
.cdl-navlink:focus-visible,.cdl-btn-green:focus-visible,.cdl-btn-navy:focus-visible,.cdl-join:focus-visible{outline:2px solid #193497;outline-offset:3px;}

/* ---------- Mobile ---------- */
/* The site is built with inline styles; these attribute selectors override the
   fixed desktop grids on small screens. If a new inline grid value is added to
   a page, add a matching selector here. */
@media (max-width:760px){
  /* Kit forms: always fully stacked on small screens (Kit's own 400/500/600 breakpoints try to pair fields) */
  .formkit-form[data-uid="cae42f6855"] .formkit-fields .formkit-field,
  .formkit-form[data-uid="cae42f6855"] .formkit-fields .formkit-submit{flex:1 0 100% !important;margin:0 0 15px 0 !important;}
  .formkit-form[data-uid="cae42f6855"] [data-style="clean"]{padding:0 !important;}

  /* Nav: hamburger menu */
  nav{flex-wrap:wrap;justify-content:space-between;align-items:center;padding:14px 20px !important;}
  nav img{height:56px !important;}
  nav > div{display:none !important;}
  nav.nav-open > div{display:flex !important;flex-direction:column;align-items:center;width:100%;gap:18px !important;padding:10px 0 18px;}
  .cdl-menu-btn{display:block;background:none;border:none;font-size:32px;line-height:1;color:#201D1D;cursor:pointer;padding:6px 10px;}
  .cdl-menu-btn:focus-visible{outline:2px solid #193497;outline-offset:3px;}

  /* Two-column layouts (heroes, mission, host, footers, form rows) -> single column */
  div[style*="grid-template-columns:1fr 1fr"],
  div[style*="grid-template-columns:1fr 1.2fr"],
  div[style*="grid-template-columns:1fr 440px"],
  div[style*="grid-template-columns:0.5fr 1.5fr"],
  div[style*="grid-template-columns:1.15fr 1fr"],
  div[style*="grid-template-columns:1fr 1.15fr"],
  div[style*="grid-template-columns:1.75fr 1fr"],
  div[style*="grid-template-columns:1.2fr 1fr"],
  div[style*="grid-template-columns:1.1fr 1fr"],
  div[style*="grid-template-columns:clamp(170px"]{grid-template-columns:1fr !important;}
  div[style*="grid-template-columns:clamp(170px"] > img{width:200px !important;margin:0 auto;}

  /* Pattern bands: aspect-ratio is too short for stacked cards; revert to padded */
  section[style*="aspect-ratio:1743/543"]{aspect-ratio:auto !important;padding:48px 24px !important;background-size:cover !important;}

  /* Three-card bands and numbered card grids -> single column */
  div[style*="grid-template-columns:repeat(3,1fr)"]{grid-template-columns:1fr !important;row-gap:32px !important;width:100% !important;max-width:100% !important;}

  /* Logo grid: 6 across -> 3 across */
  div[style*="grid-template-columns:repeat(6,1fr)"]{grid-template-columns:repeat(3,1fr) !important;}

  /* Numbered circles on benefit cards: pull back inside the viewport */
  div[style*="left:-28px"]{left:-4px !important;}

  /* Founder rows (index): stack image over quote, drop mirrored alignment */
  div[style*="gap:30px; align-items:center"],
  div[style*="gap:32px; align-items:center"]{flex-direction:column !important;align-items:flex-start !important;}
  div[style*="flex-direction:row-reverse"]{flex-direction:column !important;align-items:flex-start !important;}
  div[style*="flex-direction:row-reverse"] div{text-align:left !important;}

  /* Founders collage: stack on mobile */
  .founders-canvas{height:auto;margin-top:24px;display:flex;flex-direction:column;gap:20px;padding:0 24px;}
  .founders-canvas .f-item{position:static;width:auto !important;text-align:left !important;font-size:21px !important;}
  .founders-canvas img.f-item{width:220px !important;margin:0 auto;display:block;}
  .founders-canvas img.f-item[src*="torrey"]{width:310px !important;}
  .founders-canvas img.f-item[src*="natalie"]{width:250px !important;}

  /* Inline CTA buttons: center when sections stack */
  a.cdl-btn-green[style*="display:inline-block"]{display:block !important;width:fit-content;margin-left:auto !important;margin-right:auto !important;text-align:center;}

  /* Footer: copyright drops below the signup form when stacked */
  footer div[style*="grid-template-columns:1fr 1fr"] > div:first-child{order:2;margin-top:24px;}

  /* Fixed-width founder/host images: let them shrink */
  img[style*="flex:0 0"]{flex:0 1 auto !important;}

  /* Homepage hero copy: no vertical-centering nudge when stacked */
  div[style*="grid-template-columns:1fr 440px"] > div:first-child{padding-top:0 !important;}

  /* Upstream hero image: no gap-overlap when stacked */
  img[src*="upstream-hero"]{width:100% !important;margin-left:0 !important;}

  /* Event-page eyebrows: allow wrapping again on small screens */
  div[style*="letter-spacing:.22em"]{white-space:normal !important;width:auto !important;}
}
