.elementor-8771 .elementor-element.elementor-element-73aff28{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-15967ab *//* =============================================================
   HYPERLOCAL LOOP — CODE OF ETHICS & STANDARDS STYLES
   Paste into: Elementor → Site Settings → Custom CSS
   OR: Appearance → Customize → Additional CSS
   OR: Your child theme's style.css
   ============================================================= */

/* ── GOOGLE FONTS ──────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=Source+Serif+4:ital,opsz,wght@0,8..60,300;0,8..60,400;0,8..60,600;1,8..60,300;1,8..60,400&family=Barlow:wght@400;500;600;700&display=swap');

/* ── ROOT VARS ─────────────────────────────────────────────── */
:root {
  --eth-red:       #d32f2f;
  --eth-red-dark:  #b71c1c;
  --eth-ink:       #111111;
  --eth-ink-mid:   #3a3a3a;
  --eth-ink-soft:  #686868;
  --eth-cream:     #f7f6f3;
  --eth-rule:      #e0deda;
  --eth-gold:      #b8960c;
  --eth-white:     #ffffff;
  --eth-serif:     'Playfair Display', Georgia, serif;
  --eth-body:      'Source Serif 4', Georgia, serif;
  --eth-sans:      'Barlow', system-ui, sans-serif;
}

/* ── SCOPED RESET ───────────────────────────────────────────── */
.hll-eth-hero *,
.hll-eth-section *,
.hll-eth-toc * {
  box-sizing: border-box;
}

/* ── EYEBROW / LABEL ───────────────────────────────────────── */
.hll-eth-eyebrow,
.hll-eth-label {
  font-family: var(--eth-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--eth-red);
  display: block;
  margin-bottom: 14px;
}
.hll-eth-label--light {
  color: rgba(255,255,255,.45);
}

/* ── HERO ───────────────────────────────────────────────────── */
.hll-eth-hero {
  background: var(--eth-ink);
  border-bottom: 4px solid var(--eth-red);
}
.hll-eth-hero__inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 80px 32px 64px;
  text-align: center;
}
.hll-eth-hero__headline {
  font-family: var(--eth-serif);
  font-size: clamp(2.6rem, 6vw, 4.4rem);
  font-weight: 900;
  color: var(--eth-white);
  line-height: 1.08;
  letter-spacing: -.01em;
  margin: 0 0 28px;
}
.hll-eth-hero__headline em {
  font-style: italic;
  color: var(--eth-red);
}
.hll-eth-hero__rule {
  width: 48px;
  height: 3px;
  background: var(--eth-gold);
  margin: 0 auto 28px;
}
.hll-eth-hero__sub {
  font-family: var(--eth-body);
  font-size: 1.12rem;
  font-weight: 300;
  font-style: italic;
  color: rgba(255,255,255,.65);
  max-width: 620px;
  margin: 0 auto 20px;
  line-height: 1.78;
}
.hll-eth-hero__date {
  font-family: var(--eth-sans);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .1em;
  color: rgba(255,255,255,.35);
  text-transform: uppercase;
  margin: 0;
}

/* ── SECTION WRAPPER ────────────────────────────────────────── */
.hll-eth-section {
  padding: 72px 32px;
}
.hll-eth-section--cream {
  background: var(--eth-cream);
}
.hll-eth-section--dark {
  background: var(--eth-ink);
}
.hll-eth-section__inner {
  max-width: 860px;
  margin: 0 auto;
}

/* ── INTRO BLOCK ────────────────────────────────────────────── */
.hll-eth-intro-block {
  max-width: 760px;
}

/* ── HEADINGS ───────────────────────────────────────────────── */
.hll-eth-h2 {
  font-family: var(--eth-serif);
  font-size: clamp(1.6rem, 3.2vw, 2.3rem);
  font-weight: 700;
  color: var(--eth-ink);
  line-height: 1.2;
  margin: 0 0 22px;
}
.hll-eth-h2--light {
  color: var(--eth-white);
}
.hll-eth-h3 {
  font-family: var(--eth-sans);
  font-size: 0.88rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--eth-ink);
  margin: 32px 0 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--eth-rule);
}
.hll-eth-h3:first-of-type {
  margin-top: 24px;
}

/* ── BODY TEXT ──────────────────────────────────────────────── */
.hll-eth-body {
  font-family: var(--eth-body);
  font-size: 1rem;
  color: var(--eth-ink-mid);
  line-height: 1.84;
  margin: 0 0 16px;
}
.hll-eth-body:last-child { margin-bottom: 0; }
.hll-eth-body--light {
  color: rgba(255,255,255,.6);
}

/* ── LINKS ──────────────────────────────────────────────────── */
.hll-eth-link {
  color: var(--eth-red);
  text-decoration: none;
  font-weight: 600;
}
.hll-eth-link:hover {
  text-decoration: underline;
}

/* ── LISTS ──────────────────────────────────────────────────── */
.hll-eth-list {
  list-style: none;
  margin: 10px 0 20px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.hll-eth-list li {
  font-family: var(--eth-body);
  font-size: 0.98rem;
  color: var(--eth-ink-mid);
  line-height: 1.7;
  padding-left: 22px;
  position: relative;
}
.hll-eth-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 12px;
  width: 8px;
  height: 2px;
  background: var(--eth-red);
}

/* ── TABLE OF CONTENTS ─────────────────────────────────────── */
.hll-eth-toc {
  margin-top: 8px;
}
.hll-eth-toc__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
}
.hll-eth-toc__list li {
  border-bottom: 1px solid var(--eth-rule);
  border-right: 1px solid var(--eth-rule);
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 13px 16px;
}
.hll-eth-toc__list li:nth-child(even) {
  border-right: none;
}
.hll-eth-toc__list li:nth-last-child(-n+2) {
  border-bottom: none;
}
.hll-eth-toc__num {
  font-family: var(--eth-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--eth-red);
  flex-shrink: 0;
}
.hll-eth-toc__list a {
  font-family: var(--eth-sans);
  font-size: 0.88rem;
  font-weight: 500;
  color: var(--eth-ink-mid);
  text-decoration: none;
  line-height: 1.4;
  transition: color .15s;
}
.hll-eth-toc__list a:hover {
  color: var(--eth-red);
}

/* ── POLICY BLOCK ───────────────────────────────────────────── */
.hll-eth-policy-block {
  width: 100%;
}
.hll-eth-policy-block--dark .hll-eth-h3 {
  color: rgba(255,255,255,.5);
  border-bottom-color: rgba(255,255,255,.1);
}

.hll-eth-policy-block__header {
  display: flex;
  align-items: flex-start;
  gap: 28px;
  margin-bottom: 28px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--eth-rule);
}

/* ── POLICY NUMBER ──────────────────────────────────────────── */
.hll-eth-policy-num {
  font-family: var(--eth-serif);
  font-size: 4rem;
  font-weight: 900;
  color: var(--eth-red);
  line-height: 1;
  opacity: .25;
  flex-shrink: 0;
  padding-top: 4px;
  min-width: 72px;
  text-align: right;
}
.hll-eth-policy-num--light {
  color: var(--eth-red);
  opacity: .4;
}

/* ── CALLOUT BOX ────────────────────────────────────────────── */
.hll-eth-callout {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  background: var(--eth-cream);
  border-left: 4px solid var(--eth-gold);
  padding: 22px 24px;
  margin: 28px 0 0;
}
.hll-eth-section--cream .hll-eth-callout {
  background: var(--eth-white);
}
.hll-eth-callout__icon {
  font-size: 22px;
  flex-shrink: 0;
  padding-top: 2px;
}
.hll-eth-callout p {
  font-family: var(--eth-body);
  font-size: 0.97rem;
  color: var(--eth-ink-mid);
  line-height: 1.78;
  font-style: italic;
  margin: 0;
}

/* ── ITEMS GRID (conflicts) ─────────────────────────────────── */
.hll-eth-items-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 28px;
}
.hll-eth-item {
  border-top: 3px solid var(--eth-rule);
  padding: 20px 0 0;
  transition: border-color .2s;
}
.hll-eth-item:hover {
  border-top-color: var(--eth-red);
}
.hll-eth-item h3 {
  font-family: var(--eth-sans);
  font-size: 0.88rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--eth-ink);
  margin: 0 0 10px;
  border: none;
  padding: 0;
}
.hll-eth-item p {
  font-family: var(--eth-sans);
  font-size: 0.88rem;
  color: var(--eth-ink-soft);
  line-height: 1.68;
  margin: 0;
}

/* ── SOURCE TERMS ───────────────────────────────────────────── */
.hll-eth-source-terms {
  margin-top: 28px;
  border: 1px solid var(--eth-rule);
  overflow: hidden;
}
.hll-eth-source-terms .hll-eth-h3 {
  background: var(--eth-ink);
  color: var(--eth-white);
  padding: 12px 20px;
  margin: 0;
  border: none;
  font-size: 10px;
  letter-spacing: .16em;
}
.hll-eth-term {
  display: flex;
  align-items: baseline;
  gap: 20px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--eth-rule);
}
.hll-eth-term:last-child { border-bottom: none; }
.hll-eth-term__label {
  font-family: var(--eth-sans);
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--eth-red);
  min-width: 130px;
  flex-shrink: 0;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.hll-eth-term p {
  font-family: var(--eth-sans);
  font-size: 0.88rem;
  color: var(--eth-ink-soft);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}

/* ── CONTACT GRID (section 12) ──────────────────────────────── */
.hll-eth-contact-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin: 36px 0 36px;
}
.hll-eth-contact-card {
  border: 1px solid rgba(255,255,255,.12);
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hll-eth-contact-card__label {
  font-family: var(--eth-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--eth-gold);
  display: block;
}
.hll-eth-contact-card__val {
  font-family: var(--eth-sans);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--eth-white) !important;
  text-decoration: none;
  word-break: break-all;
}
.hll-eth-contact-card__val:hover {
  color: var(--eth-red) !important;
  text-decoration: underline;
}
.hll-eth-contact-card__note {
  font-family: var(--eth-sans);
  font-size: 0.8rem;
  color: rgba(255,255,255,.4);
  line-height: 1.6;
  margin: 4px 0 0;
}

/* ── FOOTER NOTE ────────────────────────────────────────────── */
.hll-eth-footer-note {
  font-family: var(--eth-sans);
  font-size: 11px;
  letter-spacing: .08em;
  color: rgba(255,255,255,.25);
  text-align: center;
  margin-top: 8px;
}

/* ── RESPONSIVE ─────────────────────────────────────────────── */
@media (max-width: 768px) {
  .hll-eth-section {
    padding: 52px 20px;
  }
  .hll-eth-hero__inner {
    padding: 56px 20px 48px;
  }
  .hll-eth-toc__list {
    grid-template-columns: 1fr;
  }
  .hll-eth-toc__list li {
    border-right: none !important;
  }
  .hll-eth-toc__list li:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--eth-rule);
  }
  .hll-eth-toc__list li:last-child {
    border-bottom: none;
  }
  .hll-eth-policy-block__header {
    flex-direction: column;
    gap: 10px;
  }
  .hll-eth-policy-num {
    font-size: 2.5rem;
    min-width: auto;
    text-align: left;
    opacity: .2;
  }
  .hll-eth-items-grid {
    grid-template-columns: 1fr;
  }
  .hll-eth-contact-grid {
    grid-template-columns: 1fr;
  }
  .hll-eth-source-terms {
    overflow-x: auto;
  }
  .hll-eth-term {
    flex-direction: column;
    gap: 6px;
  }
  .hll-eth-term__label {
    min-width: auto;
  }
}

@media (max-width: 480px) {
  .hll-eth-h2 {
    font-size: 1.5rem;
  }
  .hll-eth-callout {
    flex-direction: column;
    gap: 10px;
  }
}/* End custom CSS */