/*
Theme Name: TogetherCocoa Elementor
Description: Lightweight Elementor Free companion theme for TogetherCocoa. Layout reproduces the Wix design of togethercocoa.org.
Author: TogetherCocoa
Version: 2.1.0
Template: hello-elementor
Text Domain: tc-elementor
*/

@font-face {
  font-family: "Rubik";
  src: url("assets/rubik.woff2") format("woff2");
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
}/* ==========================================================================
   Tokens
   Wix scales every length proportionally below a 1440px viewport: --u is that
   "design pixel" (1px from 1440px up). Type sizes stay fixed unless noted.
   Source file: edit style.src.css, then run tools/build_css.py to produce style.css.
   ========================================================================== */


:root {/* content width below 1440px *//* max content width *//* card radius *//* hero / header radius *//* header block height */
  --plum: #6d2255;
  --pink: #f8e3e5;
  --green: #5fb258;
  --yellow: #ffcb6e;
  --ink: #2d2d2d;
  --white: #ffffff;
  --u: min(1px, calc(100vw / 1440));
  --wp: 95.49%;                       
  --wrap: 1375px;                     
  --r: calc(36.48 * var(--u));        
  --rs: calc(32.38 * var(--u));       
  --hdr: 210px;                       
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: "Rubik", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
body,
button,
input,
textarea,
select,
.elementor-widget-text-editor,
.elementor-heading-title,
.elementor-button,
.elementor-tab-title,
.elementor-tab-content {
  font-family: "Rubik", Arial, sans-serif !important;
}
a { color: inherit; }
img { display: block; max-width: 100%; }
em { font-style: normal; }
.tc-site-main { overflow: clip; }/* ==========================================================================
   Elementor resets for the containers/widgets this theme controls
   ========================================================================== */


.tc-page,
.tc-page .e-con,
.tc-site-header .e-con,
.tc-site-footer .e-con {
  --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px;
  --gap: 0px; --row-gap: 0px; --column-gap: 0px;
  --widgets-spacing: 0px; --widgets-spacing-row: 0px; --widgets-spacing-column: 0px;
}
.tc-page .e-con,
.tc-site-header .e-con,
.tc-site-footer .e-con {
  padding: 0; gap: 0; min-width: 0; max-width: none; border-width: 0;
}
.tc-page .e-con > .elementor-widget,
.tc-site-header .e-con > .elementor-widget,
.tc-site-footer .e-con > .elementor-widget { margin: 0; max-width: none; }
.tc-page .elementor-widget:not(:last-child),
.tc-site-header .elementor-widget:not(:last-child),
.tc-site-footer .elementor-widget:not(:last-child) { margin-block-end: 0; }
.tc-page .elementor-heading-title { margin: 0; padding: 0; }
.tc-page .elementor-widget-text-editor p { margin: 0; }
.tc-page .elementor-widget-text-editor { text-align: left; }/* a block whose image fills it (height comes from the container) */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-fill { position: relative; overflow: hidden; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-fill > .elementor-widget { position: absolute; inset: 0; width: 100%; height: 100%; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-fill img { width: 100%; height: 100%; max-width: none; object-fit: cover; }/* ==========================================================================
   Page skeleton: bands + dividers
   ========================================================================== */


.tc-page { display: flex; flex-direction: column; width: 100%; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-band,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-divider { width: min(var(--wp), var(--wrap)); margin-inline: auto; flex: 0 0 auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-divider { position: relative; height: 11px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-divider::before {
  content: ""; position: absolute; top: 4px; left: calc(4 * var(--u)); right: calc(4 * var(--u));
  height: 2px; background: var(--plum);
}/* type roles */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-hero .elementor-heading-title {
  color: var(--pink); font-size: 64px; line-height: 64px; font-weight: 700; text-transform: uppercase; overflow-wrap: anywhere;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-hero em,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-page em { color: var(--green); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-page .elementor-heading-title {
  color: var(--plum); font-size: 52px; line-height: 52px; font-weight: 700; text-transform: uppercase;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-sec .elementor-heading-title,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-card .elementor-heading-title {
  color: var(--plum); font-size: 43px; line-height: 43px; font-weight: 700;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-sub .elementor-heading-title {
  color: var(--plum); font-size: 32px; line-height: 32px; font-weight: 700;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p p { color: var(--ink); font-size: 18px; line-height: 27px; font-weight: 400; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-sm,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-sm p { color: var(--ink); font-size: 16px; line-height: 22.4px; font-weight: 400; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-up,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-up p { color: var(--ink); font-size: 18px; line-height: 27px; font-weight: 600; text-transform: uppercase; }/* French paragraphs keep the Wix blank-line structure (explicit blank paragraphs) */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-flow p + p { margin-top: 0 !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-flow p.tc-blank { margin: 0 !important; height: 1lh; }/* colour surfaces */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-plum { background: var(--plum); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pink { background: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-yellow { background: var(--yellow); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-plum .elementor-heading-title,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-plum .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-plum .tc-p p { color: var(--pink); }/* outline pill buttons (yellow ring) */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-btn-o .elementor-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 202px; height: 58px; padding: 0 28px !important;
  border: 2px solid var(--yellow) !important; border-radius: 999px !important; background: transparent !important; box-shadow: none !important;
  color: var(--plum) !important; font-size: 16px !important; font-weight: 700 !important; line-height: 22.4px !important;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-plum .tc-btn-o .elementor-button,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-btn-o-light .elementor-button { color: var(--white) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-btn-o .elementor-button:hover { background: var(--yellow) !important; color: var(--plum) !important; }/* ==========================================================================
   Header (sticky pill)
   ========================================================================== */


.tc-site-header { position: sticky; top: 0; z-index: 51; height: var(--hdr); padding: 32px 0 0; pointer-events: none; }
body.admin-bar .tc-site-header { top: 32px; }
.tc-site-header > .elementor { width: 100%; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-shell {
  pointer-events: auto;
  display: flex; flex-direction: row; align-items: center;
  width: min(var(--wp), var(--wrap)); height: 146px; margin: 0 auto;
  padding: 0 calc(32 * var(--u)) !important;
  border-radius: var(--rs);
  background: rgba(248, 227, 229, 0.75);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-logo { flex: 0 0 auto; width: 234px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-logo img { width: 234px !important; height: auto; max-width: none; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-nav { display: flex; flex-direction: row; align-items: center; gap: 8px; margin-left: auto; flex: 0 0 auto; width: auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-nav .elementor-button,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu .tc-nav-link .elementor-button {
  padding: 10px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
  color: var(--plum) !important; font-size: 18px !important; font-weight: 600 !important; line-height: 22px !important; letter-spacing: 0.9px;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-nav .elementor-button:hover { color: var(--green) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-button .elementor-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 154px; height: 51px; padding: 0 28px !important;
  border: 0 !important; border-radius: 999px !important; background: var(--yellow) !important; box-shadow: none !important;
  color: var(--plum) !important; font-size: 18px !important; font-weight: 600 !important; line-height: 25.2px !important;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-contact { flex: 0 0 auto; width: auto; margin-left: 27px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-toggle,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu { display: none; }/* ==========================================================================
   HOME
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-hero { padding: calc(32 * var(--u)) 0 calc(65 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-wrap { display: flex; flex-direction: column; border-radius: var(--rs); overflow: hidden; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-row { display: flex; flex-direction: row; align-items: stretch; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-copy { flex: 0 0 42.62%; background: var(--plum); padding: calc(33 * var(--u)) calc(30 * var(--u)) calc(32 * var(--u)) calc(32 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-media { flex: 1 1 0; aspect-ratio: 789 / 562; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tagline { background: var(--yellow); padding: calc(32 * var(--u)) calc(33 * var(--u)) calc(32 * var(--u)) calc(35 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-tagline .elementor-heading-title {
  max-width: calc(1035 * var(--u)); color: var(--plum);
  font-size: clamp(27.2px, calc(100vw * 0.026704), 38.4539px); line-height: 1.1; font-weight: 700;
}

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission { padding: calc(65 * var(--u)) 0 calc(66 * var(--u)) calc(32.5 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p { margin-top: 21px; }

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-transform { padding: calc(72 * var(--u)) calc(4 * var(--u)) calc(74 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-row { display: flex; flex-direction: row-reverse; gap: calc(37 * var(--u)); align-items: stretch; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-row > .e-con { flex: 0 0 calc((100% - 37 * var(--u)) / 2); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-media { background: var(--pink); border-radius: var(--r); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy { background: var(--pink); border-radius: var(--r); padding: calc(33 * var(--u)) calc(33 * var(--u)) calc(37 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-t-sec + .tc-p { margin-top: 21px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-p p + p { margin-top: 27px; }

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-grid { padding: calc(64 * var(--u)) 0 !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-cols { display: flex; flex-direction: row; gap: calc(32 * var(--u)); align-items: stretch; min-height: 1093px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-col { display: flex; flex-direction: column; gap: calc(32.5 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-left { flex: 0 0 calc((100% - 32 * var(--u)) * 0.6898); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-right { flex: 1 1 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard { display: flex; flex-direction: column; border-radius: var(--r); padding: calc(32.5 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-t-card + .tc-p { margin-top: 17px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-news .tc-t-card + .tc-p { margin-top: 23px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-p p + p { margin-top: 27px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-org { min-height: min(392px, calc(95.49vw * 0.1 + 254px)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-news { flex: 1 1 auto; min-height: 650px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-approach { flex: 1 1 auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-org,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-faq { flex: 0 0 auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-faq { min-height: 410px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-btn-o { margin-top: auto; align-self: flex-start; padding-top: 16px; }/* desktop order: mission above transformation (Wix quirk) */


@media (min-width: 1001px) {
  .tc-page-home > .tc-b-hero { order: 1; } .tc-page-home > .tc-div-1 { order: 2; }
  .tc-page-home > .tc-b-mission { order: 3; } .tc-page-home > .tc-div-2 { order: 4; }
  .tc-page-home > .tc-b-transform { order: 5; } .tc-page-home > .tc-div-3 { order: 6; }
  .tc-page-home > .tc-b-grid { order: 7; } .tc-page-home > .tc-div-4 { order: 8; }
}/* ==========================================================================
   Inner page hero (org, approach, faq)
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-phero { padding: calc(32 * var(--u)) 0 calc(65 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-row { display: flex; flex-direction: row; align-items: stretch; border-radius: var(--rs); overflow: hidden; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy { flex: 0 0 38.98%; background: var(--plum); padding: calc(32 * var(--u)) calc(32 * var(--u)) calc(32 * var(--u)) calc(33 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-media { flex: 1 1 0; aspect-ratio: 839 / 559; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-media { aspect-ratio: 839 / 558; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-media { aspect-ratio: 839 / 579; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .elementor-heading-title { color: var(--pink) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-p p { color: var(--pink); font-weight: 600; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-t-page + .tc-p { margin-top: 16px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-t-page + .tc-p { margin-top: 25px; }/* ==========================================================================
   ORGANIZATION
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-found { padding: calc(65 * var(--u)) 0 !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-row { display: flex; flex-direction: row; gap: calc(33 * var(--u)); align-items: stretch; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-media { flex: 0 0 47.99%; border-radius: var(--r); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy { flex: 1 1 0; background: var(--pink); border-radius: var(--r); padding: calc(32 * var(--u)) calc(22 * var(--u)) calc(32 * var(--u)) calc(43 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-t-sec + .tc-p { margin-top: 23px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p { font-size: 18px; line-height: 25.2px; margin-top: 25.2px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p:first-child { margin-top: 0; line-height: 27px; font-weight: 600; text-transform: uppercase; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p:first-child + p { margin-top: 23px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p strong { font-weight: 600; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p .tc-flow > p:first-child + p { margin-top: 23px !important; }

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-gov { padding: calc(65 * var(--u)) 0 !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-gov > .tc-t-sec { padding-left: calc(33 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gov-card { margin-top: calc(32 * var(--u)); background: var(--pink); border-radius: var(--r); padding: calc(32 * var(--u)) calc(37 * var(--u)) !important; }

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-goals { padding: calc(32 * var(--u)) 0 calc(33 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head { padding: calc(32 * var(--u)) calc(32 * var(--u)) calc(2 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head .tc-t-sec + .tc-p-up { margin-top: 22px; line-height: 25.2px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head .tc-p-up p { line-height: 25.2px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-grid { display: flex; flex-direction: row; margin-top: calc(32 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goal { flex: 1 1 0; min-height: 290px; padding: calc(32 * var(--u)) calc(33 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goal .tc-goal-icon { width: 50px; height: 50px; margin-bottom: 18px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goal .tc-goal-icon svg { width: 50px; height: 50px; display: block; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goal .tc-p { margin: 0; }

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team { padding: 0 0 calc(46 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-t-sec,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p { margin-left: calc(13 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p { margin-top: 16px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p p { line-height: 25.2px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(20 * var(--u)); width: calc(100% - 24 * var(--u)); margin: calc(202 * var(--u)) 0 0 calc(13 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-member { display: flex; flex-direction: column; padding-bottom: 54px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-photo { aspect-ratio: 323 / 372; border-radius: calc(20 * var(--u)); background: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-name .elementor-heading-title { margin-top: 24px !important; color: #000; font-size: 22px; line-height: 26.4px; font-weight: 700; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-role,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-role p { color: #000; font-size: 16px; line-height: 20px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-role { margin-top: 9px !important; }/* ==========================================================================
   APPROACH
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-road { padding: calc(64 * var(--u)) 0 calc(66 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-row { display: flex; flex-direction: row; gap: calc(33 * var(--u)); align-items: stretch; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-copy { flex: 0 0 calc((100% - 33 * var(--u)) / 2); background: var(--yellow); border-radius: var(--rs); padding: calc(32 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-media { flex: 0 0 calc((100% - 33 * var(--u)) / 2); border-radius: var(--rs); background: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-copy .tc-t-sec + .tc-p { margin-top: 19px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-copy .tc-p p + p { margin-top: 27px; }

:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-pilots { padding: calc(65 * var(--u)) 0 !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head { padding-left: calc(32 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head > .tc-t-sec { padding-left: calc(1 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head .tc-p-up { margin-top: 18px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head .tc-p-up + .tc-p { margin-top: 24px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head .tc-p p + p { margin-top: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-list { display: flex; flex-direction: column; gap: calc(32.5 * var(--u)); margin-top: calc(48 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row { display: flex; flex-direction: row; align-items: stretch; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-media { flex: 0 0 25.53%; border-radius: var(--rs) 0 0 var(--rs); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(1) .tc-pilot-media { aspect-ratio: 351 / 286; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(2) .tc-pilot-media { aspect-ratio: 351 / 306; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(3) .tc-pilot-media { aspect-ratio: 351 / 285; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy { flex: 1 1 0; background: var(--pink); border-radius: 0 var(--rs) var(--rs) 0; padding: calc(32 * var(--u)) calc(25 * var(--u)) calc(32 * var(--u)) calc(32 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-t-sub + .tc-p-sm { margin-top: 20px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-p-sm,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-p-sm p { font-size: 18px; line-height: 25.2px; }/* ==========================================================================
   Accordions (FAQ = accordion widget, governance = toggle widget)
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-accordion,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-toggle { border: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-accordion-item,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-toggle-item { border: 0 !important; margin: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-tab-title {
  display: flex; flex-direction: row-reverse; align-items: center; justify-content: space-between;
  padding: 0 !important; border: 0 !important; background: transparent !important; cursor: pointer; margin: 0;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-accordion-icon,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-toggle-icon { margin: 0 !important; width: auto; color: var(--plum) !important; font-size: 14px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-accordion-icon svg,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-toggle-icon svg { width: 14px; height: 14px; fill: var(--plum) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-accordion-icon i,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-toggle-icon i { color: var(--plum) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-accordion-title,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-toggle-title { color: var(--plum) !important; text-decoration: none; padding: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-tab-content { padding: 0 !important; border: 0 !important; background: transparent; color: var(--plum); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc .elementor-tab-content p { margin: 0; }/* FAQ look */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-faq { padding: calc(64 * var(--u)) 0 calc(65 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-faq-card { background: var(--pink); border-radius: var(--r); padding: calc(36 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-faq-card .tc-acc { padding: calc(32 * var(--u)) calc(32 * var(--u)) calc(50 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-accordion-item { padding-bottom: 16px; margin-bottom: 16px; border-bottom: 2px solid var(--plum) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-accordion-item:last-child { border-bottom: 0 !important; padding-bottom: 0; margin-bottom: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-tab-title { min-height: 77px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-accordion-title { font-size: 18px; font-weight: 700; line-height: 25.2px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-tab-content { padding-bottom: 40px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-tab-content p { font-size: 16px; line-height: 24px; color: var(--plum); margin: 0 0 24px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-tab-content p:last-child { margin-bottom: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-tab-content a { color: var(--plum); text-decoration: underline; }/* governance look */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-toggle-item { border-bottom: 1px solid var(--plum) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-tab-title { min-height: 97px; padding: 6px 40px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-toggle-title { font-size: 28px; font-weight: 700; line-height: 84px; text-transform: uppercase; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-tab-content { padding: 0 40px 32px !important; font-size: 16px; line-height: 24px; color: var(--ink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-tab-content p { font-size: 16px; line-height: 24px; }/* ==========================================================================
   NEWS
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-news { padding: calc(31 * var(--u)) 0 calc(93 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-news > .tc-t-page + .tc-p-up { margin-top: 16px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-grid { display: flex; flex-direction: row; justify-content: center; gap: calc(32 * var(--u)); margin-top: calc(63 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-card { flex: 0 0 calc(437 * var(--u)); display: flex; flex-direction: column; background: var(--plum); border-radius: var(--r); overflow: hidden; min-height: calc(613 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-photo { aspect-ratio: 437 / 293; background: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-body { display: flex; flex-direction: column; flex: 1 1 auto; padding: calc(36 * var(--u)) calc(33 * var(--u)) calc(31 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-title .elementor-heading-title { color: var(--pink); font-size: 25px; line-height: 30px; font-weight: 700; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-date,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-date p { color: var(--pink); font-size: 16px; line-height: 22.4px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-date { margin-top: 5px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-card .tc-btn-o { margin-top: auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-card .tc-btn-o .elementor-button { min-width: 156px; height: 48px; color: var(--white) !important; }/* ==========================================================================
   CAREERS (page added after the Wix migration; the list itself is styled by the tc-careers plugin)
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-jobs { padding: calc(64 * var(--u)) 0 calc(65 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-jobs > .tc-p { margin-top: 21px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-jobs-list { margin-top: calc(40 * var(--u)); }/* ==========================================================================
   CONTACT
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-contact { padding: calc(46 * var(--u)) 0 calc(65 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-row { display: flex; flex-direction: row; gap: calc(33 * var(--u)); align-items: flex-start; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-left { flex: 0 0 37.38%; display: flex; flex-direction: column; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-left > .tc-t-page { margin-bottom: calc(63 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form { background: var(--plum); border-radius: var(--rs); padding: calc(32 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-image { flex: 1 1 0; margin-top: calc(9 * var(--u)); aspect-ratio: 829 / 763; border-radius: var(--r); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .wpcf7 form { margin: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form p { margin: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form label { display: block; margin: 0 0 32px; color: var(--pink); font-size: 16px; line-height: 20px; font-weight: 400; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .wpcf7-form-control-wrap { display: block; margin-top: 8px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form input[type="text"],
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form input[type="email"],
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form textarea {
  display: block; width: 100%; height: 36px; margin: 0; padding: 6px 12px; border: 0; border-radius: 6px;
  color: var(--ink); background: var(--white); font: 400 14px/20px "Rubik", Arial, sans-serif;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form textarea { height: 92px; resize: vertical; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent { margin: 4px 0 30px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent { display: flex; align-items: center; gap: 10px; color: var(--pink); font-size: 16px; line-height: 20px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent p { display: flex; align-items: center; gap: 10px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent label { display: flex; align-items: center; gap: 0; margin: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent .wpcf7-list-item { margin: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent .wpcf7-list-item-label { display: none; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent a { color: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent .wpcf7-form-control-wrap { margin: 0; display: inline-flex; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent input { appearance: none; -webkit-appearance: none; width: 16px; height: 16px; margin: 0; border: 1px solid rgba(95, 178, 88, 0.6); border-radius: 50%; background: transparent; cursor: pointer; flex: 0 0 16px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .tc-consent input:checked { background: radial-gradient(var(--green) 0 4px, transparent 5px); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form input[type="submit"] {
  display: block; margin-left: auto; min-width: 209px; height: 45px; padding: 0 28px; border: 2px solid var(--yellow); border-radius: 999px;
  color: var(--white); background: transparent; font: 700 16px/19.2px "Rubik", Arial, sans-serif; cursor: pointer;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form input[type="submit"]:hover { background: var(--yellow); color: var(--plum); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .wpcf7-not-valid-tip,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .wpcf7-response-output { color: var(--pink); font-size: 14px; border: 0; margin: 12px 0 0; padding: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form .wpcf7-spinner { display: none; }/* ==========================================================================
   LEGAL / PRIVACY / ARTICLE
   ========================================================================== */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal { padding: calc(32 * var(--u)) 0 calc(32 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal > .tc-t-page + .tc-legal-copy { margin-top: 33px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy li { color: var(--ink); font-size: 16px; line-height: 25.6px; font-weight: 400; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy { max-width: 1102px !important; min-width: 0; overflow-wrap: anywhere; }
.tc-page-legal .tc-legal-copy { max-width: 686px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy p { margin: 0 !important; min-height: 25.6px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy li p { min-height: 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy p.tc-blank { height: 25.6px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy h3 { margin: 0; color: var(--ink); font-size: 16px; line-height: 25.6px; font-weight: 600; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy ul { margin: 0; padding: 0 0 0 29px; list-style: disc; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy a { color: var(--ink); text-decoration: underline; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy b,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy strong { font-weight: 600; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy .tc-legal-c { color: var(--plum); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal .tc-btn-o { margin-top: 59px; }
.tc-page-privacy .tc-b-legal .tc-btn-o { margin-top: 32px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal .tc-btn-o .elementor-button { min-width: 202px; height: 51px; }

.tc-article { width: min(var(--wp), var(--wrap)); margin: 0 auto; padding: calc(31 * var(--u)) 0 15px; }
.tc-article-image { display: block; width: min(100%, 569px); aspect-ratio: 569 / 349; margin: 0 auto; object-fit: cover; border-radius: calc(36 * var(--u)); background: var(--pink); }
.tc-article-body { padding: 0 40px; }
.tc-article-title { margin: calc(88 * var(--u)) 0 0; color: var(--plum); font-size: 43px; line-height: 43px; font-weight: 700; max-width: 843px; }
.tc-article-date { margin: 14px 0 0; color: var(--plum); font-size: 14px; }
.tc-article-text { margin-top: 76px; max-width: 1264px; }
.tc-article-text p { margin: 0 0 22.4px; color: var(--ink); font-size: 16px; line-height: 22.4px; }
.tc-article-pager { display: flex; justify-content: space-between; margin-top: 128px; }
.tc-article-pager a,
.tc-article-pager span { min-width: 80px; padding: 9px 0; color: var(--plum); font-size: 16px; line-height: 22.4px; text-decoration: none; }
.tc-article-pager span.is-off { color: #8d8d8d; }
.tc-article-pager span:last-child,
.tc-article-pager a:last-child { text-align: right; }/* ==========================================================================
   Footer
   ========================================================================== */


.tc-site-footer { padding: calc(65 * var(--u)) 0 calc(32 * var(--u)); background: var(--white); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-shell { width: min(var(--wp), var(--wrap)); margin: 0 auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-card { background: var(--pink); border-radius: calc(30 * var(--u)) calc(30 * var(--u)) 0 0; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-top { display: flex; flex-direction: row; align-items: flex-start; height: 251px; padding: 0 calc(32 * var(--u)) !important; }/* 221px on the Wix site; +30px for the sixth menu link (Careers) */ 
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-logo { flex: 0 0 320px; width: 320px; padding-top: 40px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-logo img { width: 320px !important; height: auto; max-width: none; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-menu { flex: 0 0 189px; width: 189px; padding-top: 38px !important; margin-left: calc(min(556px, 497px + 0.1417 * (100vw - 1024px)) - 32 * var(--u) - 320px); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact { flex: 0 0 259px; width: 259px; padding-top: 38px !important; margin-left: calc(249px + 0.131 * (100vw - 1440px) - 189px); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-h .elementor-heading-title { color: var(--plum); font-size: 18px; line-height: 27px; font-weight: 600; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-h .elementor-heading-title { font-weight: 700; line-height: normal; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-h + .tc-f-link + .tc-f-h .elementor-heading-title { line-height: 22.4px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-nav { display: flex; flex-direction: column; width: 189px; margin-top: 12px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-nav .elementor-button,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-link,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-link p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-link a {
  padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important;
  color: var(--ink) !important; font-size: 18px !important; font-weight: 400 !important; line-height: 25.2px !important; text-align: left; justify-content: flex-start; min-height: 0;
}
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-nav .elementor-button { margin-bottom: 4.8px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-link a { text-decoration: underline; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-link { margin-top: 11px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-h + .tc-f-link + .tc-f-h { margin-top: 20px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-legal { margin-top: 14px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-legal p { display: flex; flex-direction: column; gap: 5.8px; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-bottom { display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; min-height: 94px; padding: calc(23 * var(--u)) calc(32 * var(--u)) 0 calc(36 * var(--u)) !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-copy,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-copy p { color: var(--ink); font-size: 16px; line-height: 22.4px; font-weight: 700; text-align: right; white-space: nowrap; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-copy { margin-top: 30px !important; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-art { height: 240px; border-radius: 0 0 calc(30 * var(--u)) calc(30 * var(--u)); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-art img { object-position: 50% 17.5%; }/* language switch */


:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-lang-switch-wrap { flex: 0 0 auto; }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-lang-switch { display: inline-flex; width: 110px; height: 48px; border: 1px solid var(--green); border-radius: 25px; overflow: hidden; background: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-lang-switch a { display: flex; align-items: center; justify-content: center; flex: 1 1 0; background: var(--pink); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-lang-switch a.is-active { background: var(--green); }
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-lang-switch svg { width: 22px; height: 22px; border-radius: 50%; overflow: hidden; }/* French labels are longer: compact the desktop header between 1001 and 1180px so it never overflows the pill */


@media (min-width: 1001px) and (max-width: 1180px) {
  html[lang="fr-FR"] .tc-header-nav { gap: 0; }
  html[lang="fr-FR"] .tc-header-nav .elementor-button { padding: 10px 8px !important; letter-spacing: 0.3px; }
  html[lang="fr-FR"] .tc-header-contact { margin-left: 12px !important; }
  html[lang="fr-FR"] .tc-contact-button .elementor-button { min-width: 109px; padding: 0 18px !important; }
}/* ==========================================================================
   TABLET (751-1000px) and MOBILE (<=750px)
   Measured on togethercocoa.org at 768px and 390px. Below 1001px the Wix layout
   stacks the columns and uses a fixed 22px page margin.
   ========================================================================== */

@media (max-width: 1000px) {
  :root { --hdr: 169px; --wp: calc(100% - 44px); }/* header + overlay menu */

  
  .tc-site-header { padding-top: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-shell { height: 130px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-nav,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-contact { display: none !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-toggle { display: block; margin-left: auto; height: 36px; line-height: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-toggle .elementor-button-wrapper { line-height: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-toggle .elementor-button {
    display: block; position: absolute; top: 0; left: 0; width: 36px; height: 36px; padding: 0 !important; border: 0 !important; border-radius: 0 !important;
    background: transparent !important; box-shadow: none !important; font-size: 0 !important; color: transparent !important; min-width: 0;
  }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-toggle .elementor-button::before {
    content: ""; position: absolute; left: 4px; right: 4px; top: 9px; height: 2px; background: var(--plum);
    box-shadow: 0 8px 0 var(--plum), 0 16px 0 var(--plum);
  }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu {
    display: none; position: fixed; inset: 0; z-index: 200; flex-direction: column; align-items: flex-end;
    padding: 118px 64px 40px 40px !important; background: var(--plum); gap: 0 !important;
  }
  body.tc-menu-open .tc-mobile-menu { display: flex; pointer-events: auto; }
  body.tc-menu-open { overflow: hidden; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu .elementor-button,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu .tc-nav-link .elementor-button { color: var(--white) !important; font-weight: 700 !important; letter-spacing: 0; padding: 13.5px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu .tc-contact-button { margin-top: 10px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu .tc-contact-button .elementor-button { color: var(--plum) !important; min-width: 128px; height: 48px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-close { position: absolute; top: 56px; right: 62px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-close .elementor-button {
    position: relative; width: 28px; height: 28px; min-width: 0; padding: 0 !important; border: 0 !important; background: transparent !important;
    font-size: 0 !important; box-shadow: none !important;
  }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-close .elementor-button::before,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-close .elementor-button::after {
    content: ""; position: absolute; left: 0; top: 13px; width: 28px; height: 1.5px; background: var(--white); transform: rotate(45deg);
  }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-close .elementor-button::after { transform: rotate(-45deg); }/* type */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-hero .elementor-heading-title { font-size: 48px; line-height: 48px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-page .elementor-heading-title { font-size: 42px; line-height: 42px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-sec .elementor-heading-title,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-card .elementor-heading-title { font-size: 34px; line-height: 34px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p p { font-size: 16px; line-height: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-up,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-up p { font-size: 16px; line-height: 24px; }/* home */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-hero { padding: 22px 0 35px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-copy { flex: 0 0 56.2%; padding: 19px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-media { aspect-ratio: 322 / 353; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tagline { padding: 19px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-tagline .elementor-heading-title { max-width: none; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-transform { padding: 38px 0 35px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-row { flex-direction: column; gap: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-row > .e-con { flex: 0 0 auto; width: 100%; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-media { aspect-ratio: 725 / 497; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy { padding: 22px 21px 25px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-t-sec .elementor-heading-title { font-size: 29.6px; line-height: 29.6px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-t-sec + .tc-p { margin-top: 21px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-p p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p p { font-size: 16.36px; line-height: 24.54px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-p p + p { margin-top: 24.5px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission { padding: 38px 0 49px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p { margin-top: 11px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-grid { padding: 35px 0 34px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-cols { flex-direction: column; gap: 22px; min-height: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-col { display: contents; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard { min-height: 0 !important; padding: 22px 21px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard.tc-m-1 { order: 1; } :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard.tc-m-2 { order: 2; } :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard.tc-m-3 { order: 3; } :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard.tc-m-4 { order: 4; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-t-card + .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard-news .tc-t-card + .tc-p { margin-top: 21px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-p p + p { margin-top: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-btn-o { margin-top: 22px; padding-top: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-btn-o .elementor-button { min-width: 196px; height: 49px; }
  .tc-page-home > .tc-b-hero,
.tc-page-home > .tc-div-1,
.tc-page-home > .tc-b-transform,
.tc-page-home > .tc-div-2,
.tc-page-home > .tc-b-mission,
.tc-page-home > .tc-div-3,
.tc-page-home > .tc-b-grid,
.tc-page-home > .tc-div-4 { order: 0; }/* inner page heroes */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-phero { padding: 27px 0 33px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy { flex: 0 0 52.9%; padding: 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-copy { flex-basis: 50%; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-copy { flex-basis: 54%; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-media { aspect-ratio: auto; min-height: calc(100vw * 0.48); }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-media { aspect-ratio: auto; min-height: calc(100vw * 0.508); }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-media { aspect-ratio: auto; min-height: calc(100vw * 0.4935); }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-p p { font-size: 16px; line-height: 24px; }/* organization */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-found { padding: 35px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-row { flex-direction: column; gap: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-media { flex: 0 0 auto; aspect-ratio: 723 / 432; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy { padding: 22px 24px 24px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p:first-child { font-size: 16px; line-height: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p { margin-top: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-gov { padding: 35px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-gov > .tc-t-sec { padding-left: 23px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gov-card { padding: 20px 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-tab-title { min-height: 66px; padding: 4px 20px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-toggle-title { font-size: 20px; line-height: 1.3; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-goals { padding: 26px 0 24px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head { padding: 22px 22px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-grid { flex-wrap: wrap; margin-top: 20px; padding: 0 18px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goal { flex: 0 0 50%; min-height: 200px; padding: 22px 24px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team { padding: 0 0 40px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-t-sec,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p { margin-left: 18px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-grid { grid-template-columns: repeat(2, 1fr); gap: 24px 24px; margin: 150px 0 0 18px; width: calc(100% - 36px); }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-member { padding-bottom: 24px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-name .elementor-heading-title { font-size: 18px; line-height: 21.6px; margin-top: 16px !important; }/* approach */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-road { padding: 35px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-row { flex-direction: column; gap: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-copy,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-media { flex: 0 0 auto; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-media { aspect-ratio: 723 / 580; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-copy { padding: 22px !important; border-radius: calc(42 * var(--u)); }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-pilots { padding: 35px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head { padding-left: 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-list { margin-top: 30px; gap: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-media { flex: 0 0 37.5%; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(1) .tc-pilot-media { aspect-ratio: 271 / 371; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(2) .tc-pilot-media { aspect-ratio: 271 / 300; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(3) .tc-pilot-media { aspect-ratio: 271 / 362; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy { padding: 22px 20px 22px 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-p-sm,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-p-sm p { font-size: 16px; line-height: 24px; }/* faq */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-faq { padding: 35px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-faq-card { padding: 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-faq-card .tc-acc { padding: 12px 10px 30px !important; }/* careers */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-jobs { padding: 35px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-jobs-list { margin-top: 28px; }/* news */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-news { padding: 43px 0 60px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-grid { justify-content: flex-start; gap: 22px; margin-top: 38px; padding: 0 17px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-card { flex: 1 1 0; min-height: 506px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-title .elementor-heading-title { font-size: 18px; line-height: 21.6px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-body { padding: 25px 26px 24px !important; }/* contact */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-contact { padding: 31px 0 40px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-row { flex-direction: column; gap: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-left { flex: 0 0 auto; width: 100%; display: contents; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-left > .tc-t-page { order: 1; margin-bottom: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-image { order: 2; width: 100%; margin-top: 0; aspect-ratio: 723 / 323; flex: 0 0 auto; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form { order: 3; width: 100%; }/* legal */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal { padding: 27px 0 21px !important; }
  .tc-page-legal .tc-b-legal .tc-btn-o { margin-top: 369px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal .tc-btn-o .elementor-button { min-width: 188px; height: 47px; font-size: 15.69px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal > .tc-t-page + .tc-legal-copy { margin-top: 23px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-legal-copy,
.tc-page-legal .tc-legal-copy { max-width: none !important; }/* footer: single column */

  
  .tc-site-footer { padding: 33px 0 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-top { flex-direction: column; height: auto; padding: 32px 32px 24px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-logo { flex: 0 0 auto; width: 230px; padding-top: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-logo img { width: 230px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-menu,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact { flex: 0 0 auto; width: auto; margin: 32px 0 0 !important; padding-top: 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-bottom { padding: 12px 32px 0 20px !important; min-height: 85px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-art { height: 244px; }
}

@media (max-width: 750px) {
  :root { --hdr: 141px; --wp: calc(100% - 46px); --u: 0.72px; --r: 23px; --rs: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-shell { height: 97px; padding: 0 23px !important; border-radius: 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-logo,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-header-logo img { width: 159px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-mobile-menu { padding: 100px 50px 40px 40px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-menu-close { top: 52px; right: 62px; }/* type (measured on the live site at 390px) */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-hero .elementor-heading-title { font-size: 36px; line-height: 36px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-page .elementor-heading-title { font-size: 36px; line-height: 36px; }
  .tc-page-contact .tc-t-page .elementor-heading-title { font-size: 42px; line-height: 42px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-sec .elementor-heading-title,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-card .elementor-heading-title { font-size: 30px; line-height: 30px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-sub .elementor-heading-title { font-size: 20px; line-height: 20px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-sm,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-sm p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-up,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-p-up p { font-size: 16px; line-height: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-p p { font-size: 18px; line-height: 27px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-copy .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-copy .tc-p p { font-size: 16px; line-height: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p { font-size: 18px; line-height: 25.2px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p:first-child { font-size: 16px; line-height: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head .tc-p-up,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head .tc-p-up p { font-size: 16.73px; line-height: 23.42px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-p-sm,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy .tc-p-sm p { font-size: 16.73px; line-height: 23.42px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p p { font-size: 16px; line-height: 22.4px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-role,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-role p { font-size: 14px; line-height: normal; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal .tc-btn-o .elementor-button { font-size: 16.73px !important; }/* generic band rhythm: ~40px above, ~37px below each divider */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-transform,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-grid,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-found,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-gov,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-goals,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-road,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-pilots,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-faq,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-jobs { padding-top: 31px !important; padding-bottom: 31px !important; }/* home */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-hero { padding: 23px 0 23px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-row { flex-direction: column; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-copy { flex: 0 0 auto; padding: 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-hero-media { flex: 0 0 auto; aspect-ratio: 344 / 283; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tagline { padding: 21px 22px 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-t-tagline .elementor-heading-title { font-size: 27.185px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy { padding: 23px 22px 25px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-media { aspect-ratio: 344 / 328; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-t-sec .elementor-heading-title { font-size: 31.37px; line-height: 31.37px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-tf-copy .tc-p p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p p { font-size: 16.73px; line-height: 25.09px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-mission .tc-p { margin-top: 23px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-grid-cols { gap: 23px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard { padding: 23px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-btn-o { margin-top: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gcard .tc-btn-o .elementor-button { width: 100%; }/* inner page heroes: stacked, copy card then photo */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-phero { padding: 23px 0 36px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-org.tc-b-phero { padding-top: 34px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq.tc-b-phero { padding-top: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-row { flex-direction: column; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-copy,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-copy { flex: 0 0 auto; padding: 23px 22px 26px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-media,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-media,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-media { min-height: 0; flex: 0 0 auto; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-copy .tc-t-page + .tc-p { margin-top: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-org .tc-phero-copy .tc-t-page + .tc-p { margin-top: 29px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-org .tc-phero-copy { min-height: 327px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-copy { min-height: 267px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-copy { min-height: 297px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-org .tc-phero-media { aspect-ratio: 344 / 439; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-approach .tc-phero-media { aspect-ratio: 344 / 418; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-faq .tc-phero-media { aspect-ratio: 344 / 280; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-careers .tc-phero-copy { min-height: 280px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-phero-careers .tc-phero-media { aspect-ratio: 344 / 300; }/* organization */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-media { aspect-ratio: 344 / 326; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy { padding: 23px 23px 26px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-t-sec + .tc-p { margin-top: 21px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-found-copy .tc-p p { margin-top: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-gov-card { padding: 14px 13px !important; border-radius: 10px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-tab-title { min-height: 46px; padding: 6.5px 17px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-toggle-title { font-size: 16px; line-height: 32.48px; max-width: 175px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-gov .elementor-tab-content { padding: 0 17px 20px !important; font-size: 16px; line-height: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-head { padding: 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goals-grid { flex-direction: column; flex-wrap: nowrap; padding: 0; margin-top: 20px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-goal { flex: 0 0 auto; min-height: 170px; padding: 20px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-grid { grid-template-columns: 1fr; gap: 8px; margin: 16px 0 0 7px; width: calc(100% - 14px); }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-name .elementor-heading-title { font-size: 20.33px; line-height: 24.4px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-member { padding-bottom: 19px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-photo { aspect-ratio: 330 / 324; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-name .elementor-heading-title { margin-top: 16px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-team-role { margin-top: 9px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team { padding: 63px 0 34px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-t-sec,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p { margin-left: 7px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-team > .tc-p { margin-top: 205px; }/* approach */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-copy { padding: 22px 23px 26px !important; border-radius: 23px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-road-media { aspect-ratio: 344 / 437; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-head { padding-left: 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row { flex-direction: column; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-media,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(n) .tc-pilot-media { flex: 0 0 auto; border-radius: 23px 23px 0 0; aspect-ratio: 346 / 312; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(2) .tc-pilot-media { aspect-ratio: 346 / 316; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-row:nth-child(3) .tc-pilot-media { aspect-ratio: 346 / 318; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-copy { border-radius: 0 0 23px 23px; padding: 22px 22px 26px 23px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-pilot-list { margin-top: 22px; gap: 53px; }/* faq */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-faq-card { padding: 22px 15px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-faq-card .tc-acc { padding: 12px 23px 24px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-tab-title { padding: 24px 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-acc-faq .elementor-accordion-title { padding-right: 33px; }/* news */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-news { padding: 32px 0 700px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-grid { flex-direction: column; padding: 0; margin-top: 30px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-card { flex: 0 0 auto; width: 100%; min-height: 509px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-date,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-news-date p { font-size: 14px; line-height: 19.6px; }/* contact */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-image { aspect-ratio: 344 / 164; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-contact-form { padding: 22px !important; }/* legal pages */

  
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal { padding: 23px 0 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal > .tc-t-page + .tc-legal-copy { margin-top: 23px; }
  .tc-page-legal .tc-b-legal .tc-btn-o { margin-top: 125px; }
  .tc-page-privacy .tc-b-legal .tc-btn-o { margin-top: 32px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-b-legal .tc-btn-o .elementor-button { width: 100%; height: 50px; }/* footer: one column (measured at 390px) */

  
  .tc-site-footer { padding: 33px 0 22px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-top { flex-direction: column; height: auto; padding: 23px 22px 22px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-logo { flex: 0 0 auto; width: 266px; padding: 0 0 8px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-logo img { width: 266px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-menu { flex: 0 0 auto; width: auto; margin: 22px 0 0 !important; padding-top: 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-menu .tc-f-h .elementor-heading-title { font-weight: 700; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-nav { width: auto; margin-top: 12px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-nav .elementor-button { margin-bottom: 0.8px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact { flex: 0 0 auto; width: auto; margin: 23px 0 0 !important; padding-top: 0 !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-link,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-link p,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-link a { line-height: 30.6px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-link { margin-top: 12px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-h + .tc-f-link + .tc-f-h { margin-top: 24px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-contact .tc-f-h + .tc-f-link + .tc-f-h + .tc-f-link { margin-top: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-legal p { gap: 0; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-bottom { flex-direction: column; align-items: flex-start; min-height: 0; padding: 15px 22px 0 23px !important; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-lang-switch-wrap { margin-bottom: 25px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-copy,
:is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-copy p { text-align: left; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-copy { margin-top: 0 !important; padding-bottom: 44px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-art { height: 255px; }
  :is(.tc-page,.tc-site-header,.tc-site-footer) .tc-f-art img { object-position: 50% 50%; }
}