/* Let's Build Together pages (/lets-build-together/*).
   Loaded after the AssetCompress bundle and site-chrome.css through the lbtCss block
   (templates/element/lbt/head.php). Not part of the bundle: its CssMinFilter drops var().
   Every rule is scoped under .cdc-lbt and uses the tokens from cdc-tokens.css.
   Sizes are in px, not rem: Bootstrap 3 sets html{font-size:10px}.

   Classes:
   .cdc-lbt                  page scope, set as the layout contentClass by lbt/head
   .cdc-lbt-wrap             1200px container with side gutters
   .cdc-lbt-measure          readable line length for a paragraph
   .cdc-lbt-lede             large intro paragraph
   .cdc-lbt-hero             hero band (lbt/hero element)
   .cdc-lbt-hero--wide       hero with a longer h1 measure (26ch), for two-line headlines
   .cdc-lbt-crumb            breadcrumb nav inside the hero
   .cdc-lbt-hero__cta        paragraph holding the hero button
   .cdc-lbt-btn              button or button-styled link
   .cdc-lbt-btn--primary     the one primary action of a view (white text on #c23a30)
   .cdc-lbt-btn--ghost       secondary action, white with a hairline border
   .cdc-lbt-arrow            right arrow icon (lbt/arrow element), slides on hover
   .cdc-lbt-section          vertical page section
   .cdc-lbt-section--white   white section with hairline top and bottom borders
   .cdc-lbt-choices          stack of answer cards on the entry page
   .cdc-lbt-choice           one answer card (a link)
   .cdc-lbt-choice--quiet    low-emphasis answer card (dashed, no fill)
   .cdc-lbt-go               "read more" label with arrow inside a card or row
   .cdc-lbt-split            two equal columns from 768px
   .cdc-lbt-proof            inline row of client links
   .cdc-lbt-quote            client quote (figure with blockquote and figcaption)
   .cdc-lbt-pkgs             bordered list of package rows
   .cdc-lbt-pkg              one package row (a link)
   .cdc-lbt-sub              small subtitle under a row or card heading
   .cdc-lbt-order-note       muted note under the package rows
   .cdc-lbt-cols             main column plus side column from 900px
   .cdc-lbt-list             list with hairline separators
   .cdc-lbt-subhead          h3 that opens a second block inside a column ("What you receive")
   .cdc-lbt-panel            white card (request form, thank-you box)
   .cdc-lbt-steps            numbered steps (ol)
   .cdc-lbt-faq              FAQ block of details/summary items
   .cdc-lbt-todo             placeholder tag for content still pending from the owner
   .cdc-lbt-teams            stack of Team cards
   .cdc-lbt-team             one Team card (article with dl)
   .cdc-lbt-form             request form (lbt/request_form element)
   .cdc-lbt-chips            row of checkbox chips
   .cdc-lbt-chip             one checkbox chip (label wrapping input and span)
   .cdc-lbt-note             small muted note
   .cdc-lbt-ty               thank-you page section
   .cdc-lbt-ty__back         back link paragraph on the thank-you page
*/

.cdc-lbt{
  --cdc-lbt-ease:cubic-bezier(.2,.7,.3,1);
  --cdc-lbt-action:#c23a30;
  --cdc-lbt-action-hover:#a82f26;
  --cdc-lbt-field:#858c90; /* field and chip borders: 3.4:1 on white (WCAG 1.4.11) */
  padding-top:74px; /* fixed site navbar, same as .navbar-compensation */
  background:var(--cdc-page);
  color:var(--cdc-body);
  font:400 16px/1.6 'Roboto',-apple-system,'Segoe UI',sans-serif;
  -webkit-font-smoothing:antialiased;
}
.cdc-lbt *,.cdc-lbt *::before,.cdc-lbt *::after{box-sizing:border-box}

/* Base: reset the legacy global type (uppercase headings, 14px tracked paragraphs). */
.cdc-lbt h1,.cdc-lbt h2,.cdc-lbt h3{
  font-family:'Raleway',sans-serif;
  color:var(--cdc-ink);
  font-weight:700;
  text-transform:none;
  margin:0;
  padding:0;
  text-wrap:balance;
}
.cdc-lbt h1{font-size:clamp(32px,5.2vw,54px);line-height:1.1;letter-spacing:-.02em}
.cdc-lbt h2{font-size:clamp(24px,3vw,34px);line-height:1.2;letter-spacing:-.01em}
.cdc-lbt h3{font-size:19px;line-height:1.3;letter-spacing:normal}
.cdc-lbt p,.cdc-lbt ol,.cdc-lbt ul,.cdc-lbt li,.cdc-lbt dd{
  font-family:inherit;
  font-size:inherit;
  line-height:inherit;
  letter-spacing:normal;
  color:inherit;
  background:none;
}
.cdc-lbt p{margin:0 0 1em}
.cdc-lbt a{color:var(--cdc-blue-deep);text-underline-offset:3px}
.cdc-lbt a:hover{color:var(--cdc-ink)}
.cdc-lbt p>a{font-weight:inherit}
.cdc-lbt strong{font-weight:700}
.cdc-lbt a:focus-visible,
.cdc-lbt button:focus-visible,
.cdc-lbt summary:focus-visible{
  outline:3px solid var(--cdc-blue);
  outline-offset:3px;
}

.cdc-lbt-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
@media (min-width:768px){.cdc-lbt-wrap{padding:0 24px}}
.cdc-lbt-measure{max-width:68ch}
.cdc-lbt .cdc-lbt-lede{font-size:19px;line-height:1.55;color:var(--cdc-body);max-width:60ch}

/* Buttons. The request form button also carries Bootstrap's .btn .btn-primary. */
.cdc-lbt .cdc-lbt-btn,
.cdc-lbt-form .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:0 24px;
  border:1px solid transparent;
  border-radius:10px;
  font:700 15px/1.2 'Raleway',sans-serif;
  letter-spacing:normal;
  text-transform:none;
  text-decoration:none;
  white-space:normal;
  text-align:center;
  cursor:pointer;
  box-shadow:none;
  transition:transform .2s var(--cdc-lbt-ease),box-shadow .2s var(--cdc-lbt-ease),background-color .2s var(--cdc-lbt-ease),border-color .2s var(--cdc-lbt-ease);
}
.cdc-lbt .cdc-lbt-btn--primary,
.cdc-lbt-form .btn-primary,
.cdc-lbt-form .btn-primary:focus,
.cdc-lbt-form .btn-primary:active,
.cdc-lbt-form .btn-primary:active:focus{
  background:var(--cdc-lbt-action);
  border-color:var(--cdc-lbt-action);
  color:#fff;
}
.cdc-lbt .cdc-lbt-btn--primary:hover,
.cdc-lbt-form .btn-primary:hover{
  background:var(--cdc-lbt-action-hover);
  border-color:var(--cdc-lbt-action-hover);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:var(--cdc-shadow-hover);
}
.cdc-lbt-form .btn:focus{outline:none}
.cdc-lbt-form .btn:active{box-shadow:none}
.cdc-lbt .cdc-lbt-btn:focus-visible,
.cdc-lbt-form .btn:focus-visible{
  outline:3px solid var(--cdc-blue);
  outline-offset:3px;
}
.cdc-lbt .cdc-lbt-btn--ghost{
  background:var(--cdc-surface);
  color:var(--cdc-blue-deep);
  border-color:var(--cdc-border);
}
.cdc-lbt .cdc-lbt-btn--ghost:hover{border-color:var(--cdc-blue);color:var(--cdc-ink)}
.cdc-lbt-arrow{width:18px;height:18px;flex:none;transition:transform .2s var(--cdc-lbt-ease)}
.cdc-lbt-btn:hover .cdc-lbt-arrow,
.cdc-lbt-choice:hover .cdc-lbt-arrow,
.cdc-lbt-pkg:hover .cdc-lbt-arrow{transform:translateX(4px)}

/* Hero */
.cdc-lbt-hero{
  padding:56px 0 48px;
  background:linear-gradient(135deg,var(--cdc-beige) 0%,var(--cdc-mist) 100%);
  border-bottom:1px solid var(--cdc-border);
}
@media (min-width:768px){.cdc-lbt-hero{padding:88px 0 72px}}
.cdc-lbt-hero h1{max-width:18ch;margin-bottom:20px}
.cdc-lbt-hero--wide h1{max-width:26ch}
.cdc-lbt-hero .cdc-lbt-lede{margin-bottom:0}
.cdc-lbt .cdc-lbt-hero__cta{margin:28px 0 0}
.cdc-lbt-crumb{margin-bottom:24px}
.cdc-lbt .cdc-lbt-crumb ol{
  display:flex;
  flex-wrap:wrap;
  margin:0;
  padding:0;
  list-style:none;
  font:600 13px/1.5 'Raleway',sans-serif;
  color:var(--cdc-muted);
}
.cdc-lbt .cdc-lbt-crumb li+li::before{content:"/";content:"/" / "";padding:0 8px}
.cdc-lbt .cdc-lbt-crumb a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin:-12px 0;
  color:var(--cdc-muted);
}
.cdc-lbt .cdc-lbt-crumb a:hover{color:var(--cdc-ink)}

/* Sections */
.cdc-lbt-section{padding:56px 0}
@media (min-width:768px){.cdc-lbt-section{padding:80px 0}}
.cdc-lbt-section--white{background:var(--cdc-surface);border-block:1px solid var(--cdc-border)}
.cdc-lbt-section h2{margin-bottom:24px}

/* Entry page: answer cards */
.cdc-lbt-choices{display:grid;gap:16px;margin-top:8px}
.cdc-lbt .cdc-lbt-choice{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px 24px;
  align-items:center;
  padding:28px;
  background:var(--cdc-surface);
  border:1px solid var(--cdc-border);
  border-radius:14px;
  box-shadow:var(--cdc-shadow-rest);
  color:inherit;
  text-decoration:none;
  transition:transform .25s var(--cdc-lbt-ease),box-shadow .25s var(--cdc-lbt-ease),border-color .25s var(--cdc-lbt-ease);
}
.cdc-lbt .cdc-lbt-choice:hover{transform:translateY(-4px);box-shadow:var(--cdc-shadow-hover);border-color:var(--cdc-blue);color:inherit}
.cdc-lbt-choice h2{font-size:clamp(21px,2.6vw,28px)}
.cdc-lbt-section .cdc-lbt-choice h2{margin:0}
.cdc-lbt .cdc-lbt-choice p{margin:0;max-width:56ch;grid-column:1;color:var(--cdc-body)}
.cdc-lbt-go{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font:700 14.5px/1.3 'Raleway',sans-serif;
  color:var(--cdc-blue-deep);
  white-space:nowrap;
}
.cdc-lbt-choice .cdc-lbt-go{grid-column:2;grid-row:1/3}
@media (max-width:640px){
  .cdc-lbt .cdc-lbt-choice{grid-template-columns:1fr}
  .cdc-lbt-choice .cdc-lbt-go{grid-column:1;grid-row:auto;margin-top:8px}
}
.cdc-lbt .cdc-lbt-choice--quiet{background:transparent;box-shadow:none;border-style:dashed}

.cdc-lbt-split{display:grid;gap:32px}
@media (min-width:768px){.cdc-lbt-split{grid-template-columns:1fr 1fr;gap:56px}}
.cdc-lbt-split h3{margin-bottom:8px}
.cdc-lbt .cdc-lbt-quote{margin:24px 0 0;max-width:68ch}
.cdc-lbt .cdc-lbt-quote blockquote{margin:0;padding:0;border:0;font:500 20px/1.5 'Raleway',sans-serif;color:var(--cdc-ink)}
.cdc-lbt .cdc-lbt-quote figcaption{margin-top:12px;font-size:14.5px;color:var(--cdc-muted)}
.cdc-lbt-proof{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:baseline}
.cdc-lbt .cdc-lbt-proof a{display:inline-flex;align-items:center;min-height:44px;font:700 15px 'Raleway',sans-serif}

/* Hub: package rows */
.cdc-lbt-pkgs{
  display:grid;
  overflow:hidden;
  background:var(--cdc-surface);
  border:1px solid var(--cdc-border);
  border-radius:14px;
  box-shadow:var(--cdc-shadow-rest);
}
.cdc-lbt .cdc-lbt-pkg{
  display:grid;
  gap:12px 40px;
  padding:32px 28px;
  border-top:1px solid var(--cdc-border);
  color:inherit;
  text-decoration:none;
  transition:background-color .2s var(--cdc-lbt-ease);
}
.cdc-lbt .cdc-lbt-pkg:first-child{border-top:0}
.cdc-lbt .cdc-lbt-pkg:hover{background:var(--cdc-mist);color:inherit}
.cdc-lbt .cdc-lbt-pkg:focus-visible{outline-offset:-3px;border-radius:0}
@media (min-width:900px){
  .cdc-lbt .cdc-lbt-pkg{grid-template-columns:240px 1fr 150px;align-items:start;padding:36px}
}
.cdc-lbt-section .cdc-lbt-pkg h2{margin:0;font-size:25px}
.cdc-lbt-pkg p{margin:0}
.cdc-lbt .cdc-lbt-sub{display:block;margin-top:4px;font:600 13.5px/1.4 'Raleway',sans-serif;color:var(--cdc-muted)}
.cdc-lbt-pkg ul{margin:0;padding-left:1.1em}
.cdc-lbt-pkg li{margin-bottom:4px}
.cdc-lbt .cdc-lbt-order-note{margin-top:24px;max-width:60ch;color:var(--cdc-muted)}

/* Package and Teams pages */
.cdc-lbt-cols{display:grid;gap:40px}
@media (min-width:900px){.cdc-lbt-cols{grid-template-columns:1.4fr 1fr;gap:72px;align-items:start}}
.cdc-lbt-cols>*{min-width:0}
.cdc-lbt .cdc-lbt-list{margin:0 0 1em;padding:0;list-style:none}
.cdc-lbt .cdc-lbt-list li{padding:14px 0;border-top:1px solid var(--cdc-border)}
.cdc-lbt .cdc-lbt-list li:last-child{border-bottom:1px solid var(--cdc-border)}
.cdc-lbt-list strong{display:block;font-family:'Raleway',sans-serif;color:var(--cdc-ink)}
.cdc-lbt .cdc-lbt-subhead{margin:32px 0 8px}

.cdc-lbt-panel{
  padding:28px;
  background:var(--cdc-surface);
  border:1px solid var(--cdc-border);
  border-radius:14px;
  box-shadow:var(--cdc-shadow-rest);
  scroll-margin-top:90px; /* #request anchor below the fixed navbar */
}
@media (max-width:374px){.cdc-lbt-panel{padding:20px}}
.cdc-lbt .cdc-lbt-panel h2{font-size:24px;margin-bottom:12px}

.cdc-lbt .cdc-lbt-steps{counter-reset:cdc-lbt-step;display:grid;margin:0;padding:0;list-style:none}
.cdc-lbt .cdc-lbt-steps li{
  counter-increment:cdc-lbt-step;
  display:grid;
  grid-template-columns:44px 1fr;
  gap:16px;
  padding:20px 0;
  border-top:1px solid var(--cdc-border);
}
.cdc-lbt-steps li::before{content:counter(cdc-lbt-step);font:700 22px/1.2 'Raleway',sans-serif;color:var(--cdc-coral-deep)}
.cdc-lbt-steps strong{display:block;font-family:'Raleway',sans-serif;color:var(--cdc-ink)}

.cdc-lbt-todo{
  display:inline-block;
  padding:1px 8px;
  background:#fff3cd;
  color:#6b4e00;
  border:1px dashed #d4a72c;
  border-radius:6px;
  font:600 12.5px/1.5 'Raleway',sans-serif;
  vertical-align:baseline;
}

.cdc-lbt-faq details{padding:4px 0;border-top:1px solid var(--cdc-border)}
.cdc-lbt-faq details:last-of-type{border-bottom:1px solid var(--cdc-border)}
.cdc-lbt-faq summary{
  display:flex;
  align-items:center;
  gap:16px;
  min-height:48px;
  font:700 17px/1.35 'Raleway',sans-serif;
  color:var(--cdc-ink);
  list-style:none;
  cursor:pointer;
}
.cdc-lbt-faq summary::-webkit-details-marker{display:none}
.cdc-lbt-faq summary::after{content:"+";flex:none;margin-left:auto;font:400 26px/1 'Raleway',sans-serif;color:var(--cdc-blue-deep)}
.cdc-lbt-faq details[open] summary::after{content:"\2212"}
.cdc-lbt .cdc-lbt-faq details p{margin:0 0 16px;max-width:62ch}

/* Teams */
.cdc-lbt-teams{display:grid;gap:16px}
.cdc-lbt-team{
  display:grid;
  gap:20px 48px;
  padding:32px 28px;
  background:var(--cdc-surface);
  border:1px solid var(--cdc-border);
  border-radius:14px;
  box-shadow:var(--cdc-shadow-rest);
}
@media (min-width:900px){.cdc-lbt-team{grid-template-columns:220px 1fr 1fr;padding:36px}}
.cdc-lbt .cdc-lbt-team h2{margin:0;font-size:29px}
.cdc-lbt-team dl{margin:0}
.cdc-lbt-team dt{
  margin:0;
  font:600 12px/1.5 'Raleway',sans-serif;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--cdc-muted);
}
.cdc-lbt-team dd{margin:2px 0 16px}
.cdc-lbt-team dd:last-child{margin-bottom:0}

/* Request form (templates/element/lbt/request_form.php) */
.cdc-lbt-form{display:grid;gap:18px}
.cdc-lbt-form label,
.cdc-lbt-form legend{
  display:block;
  max-width:none;
  margin:0 0 6px;
  padding:0;
  border:0;
  font:700 14px/1.4 'Raleway',sans-serif;
  letter-spacing:normal;
  text-transform:none;
  color:var(--cdc-ink);
}
.cdc-lbt-form input[type=text],
.cdc-lbt-form input[type=email],
.cdc-lbt-form textarea{
  display:block;
  width:100%;
  height:auto;
  min-height:48px;
  margin:0;
  padding:12px 14px;
  background:var(--cdc-surface);
  border:1px solid var(--cdc-lbt-field);
  border-radius:10px;
  box-shadow:none;
  font:400 16px/1.5 'Roboto',sans-serif;
  letter-spacing:normal;
  text-align:left;
  color:var(--cdc-ink);
}
.cdc-lbt-form textarea{min-height:130px;resize:vertical}
.cdc-lbt-form input[type=text]:focus,
.cdc-lbt-form input[type=email]:focus,
.cdc-lbt-form textarea:focus{
  outline:3px solid var(--cdc-blue);
  outline-offset:1px;
  border-color:var(--cdc-blue);
  background:var(--cdc-surface);
  box-shadow:none;
}
.cdc-lbt-form fieldset{min-width:0;margin:0;padding:0;border:0}
.cdc-lbt-chips{display:flex;flex-wrap:wrap;gap:8px}
.cdc-lbt-form .cdc-lbt-chip{position:relative;display:inline-flex;margin:0;font-weight:600}
.cdc-lbt-chip input{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.cdc-lbt-chip span{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 16px;
  background:var(--cdc-surface);
  border:1px solid var(--cdc-lbt-field);
  border-radius:999px;
  font:600 14px/1.3 'Raleway',sans-serif;
  letter-spacing:normal;
  text-transform:none;
  color:var(--cdc-ink);
  cursor:pointer;
  transition:background-color .15s,border-color .15s,color .15s;
}
.cdc-lbt-chip:hover span{border-color:var(--cdc-blue)}
.cdc-lbt-chip input:checked+span{background:var(--cdc-blue-deep);border-color:var(--cdc-blue-deep);color:#fff}
.cdc-lbt-chip input:focus-visible+span{outline:3px solid var(--cdc-blue);outline-offset:3px}
@media (forced-colors:active){
  .cdc-lbt-chip span{border:1px solid ButtonText}
  .cdc-lbt-chip input:checked+span{forced-color-adjust:none;background:Highlight;border:3px solid Highlight;color:HighlightText}
  .cdc-lbt-chip input:focus-visible+span{outline-color:Highlight}
}
.cdc-lbt-form .btn{justify-self:start}
@media (max-width:480px){.cdc-lbt-form .btn{justify-self:stretch;width:100%}}
.cdc-lbt .cdc-lbt-note{margin:0;font-size:14.5px;color:var(--cdc-muted)}

/* Thank-you page */
.cdc-lbt-ty{padding:72px 0 96px}
.cdc-lbt-ty h1{margin-bottom:20px}
.cdc-lbt-ty .cdc-lbt-panel{max-width:640px;margin-top:32px}
.cdc-lbt-ty .cdc-lbt-panel .cdc-lbt-note{margin-top:12px}
.cdc-lbt .cdc-lbt-ty__back{margin:32px 0 0}
.cdc-lbt .cdc-lbt-ty__back a{display:inline-flex;align-items:center;min-height:44px}

@media (prefers-reduced-motion:reduce){
  .cdc-lbt *,.cdc-lbt *::before,.cdc-lbt *::after{transition:none !important;scroll-behavior:auto !important}
  .cdc-lbt .cdc-lbt-btn:hover,
  .cdc-lbt-form .btn:hover,
  .cdc-lbt .cdc-lbt-choice:hover,
  .cdc-lbt-btn:hover .cdc-lbt-arrow,
  .cdc-lbt-choice:hover .cdc-lbt-arrow,
  .cdc-lbt-pkg:hover .cdc-lbt-arrow{transform:none}
}
