/* =========================
   Site-wide settings
   ========================= */

/* Site variables */
:root {
  --brand-dark: #162128;
  --brand-blue: #2e6cff;
  --brand-gray: #F7F8FA;
  --brand-white: #ffffff;
  --header-height: 96px;
  --site-maxw: 1440px;
  --site-bp-tablet: 1024px;
  --site-bp-mobile: 768px;

  --av-panel-shadow: 0 12px 28px rgba(0,0,0,.10);
  --av-border: rgba(16,19,26,.12);
}

/* Global html settings */
html {box-sizing: border-box;}
*, *::before, *::after { box-sizing: inherit; }

/* Primary page layout settings */
.layout {font-family: 'Noto Sans'; margin: 0}

/* Primary content container settings */
.container {display: flex; flex-direction: column; margin: var(--header-height) 0 0; padding: 50px 0 0; align-items: center; width: 100%; text-wrap: nowrap; color: var(--brand-dark)}
.container h1 {text-align: center; font-size: 2.2rem; font-weight: 600; margin: 0; text-wrap: nowrap; padding: 0 0 25px}
.container h2 {margin: 0; padding: 0; text-wrap: wrap}
.container h3 {margin: 0; padding: 0; text-wrap: wrap}
.container h4 {margin: 0; padding: 0; font-size: 0.95rem; font-weight: 400; color: var(--brand-blue)}
.container h5 {text-align: center; max-width: 1024px; padding: 50px 100px; text-wrap: wrap; font-size: 1.2rem; font-weight: 300;}
.container p {font-weight: 300; text-wrap: wrap}
.title-prefix {text-align: center; font-size: 1.5rem; font-weight: 200; margin: 0; padding: 0 0 10px}

/* Get in touch box settings (the same for every page that displays it) */
.page-contact-box {display: flex; flex-direction: row; align-items: center; margin: 100px; padding: 25px 75px; gap: 75px; max-width: 1024px; background: var(--brand-gray)}

/* Page link settings */
.page-link {text-decoration: none; color: var(--brand-blue);}
.page-link:hover {opacity: 0.92; text-decoration: underline;}

/* Button settings */
.action-button {display: inline-block; padding: 0.50rem 2rem; text-decoration: none; font-weight: 400; color: var(--brand-white); background: var(--brand-blue); border: none}
.action-button:hover {opacity: 0.92}

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

@media (max-width: 1024px) {
  .container h1 {font-size: 1.8rem}
  .container h2 {margin:0; font-size: 1.25rem;}
  .page-contact-box {flex-direction: column; margin: 50px; padding: 25px 75px 30px; gap: 25px; text-align: center;}
  .page-contact-box p {margin: 0}
  .title-prefix {font-size: 1.375rem;}
}

@media (max-width: 768px) {
  .container h1 {font-size: 1.4rem; text-wrap: wrap;}
  .container h5 {padding: 25px}
  .page-contact-box {margin: 25px; padding: 25px 25px 35px}
  .title-prefix {font-size: 1.25rem; text-wrap: wrap;}
}

/* =========================
   Fonts
   ========================= */

@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 100; src: url('/assets/fonts/noto-sans-v42-latin-100.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 200; src: url('/assets/fonts/noto-sans-v42-latin-200.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 300; src: url('/assets/fonts/noto-sans-v42-latin-300.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 400; src: url('/assets/fonts/noto-sans-v42-latin-regular.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 500; src: url('/assets/fonts/noto-sans-v42-latin-500.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 600; src: url('/assets/fonts/noto-sans-v42-latin-600.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 700; src: url('/assets/fonts/noto-sans-v42-latin-700.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 800; src: url('/assets/fonts/noto-sans-v42-latin-800.woff2') format('woff2')}
@font-face {font-display: swap; font-family: 'Noto Sans'; font-style: normal; font-weight: 900; src: url('/assets/fonts/noto-sans-v42-latin-900.woff2') format('woff2')}


/* =========================
   Header
   ========================= */

/* Accessibility helper */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Header (white, sticky, reliable stacking) */
.av-site-header{
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--header-height);
  background: var(--brand-white);
  z-index: 1000;         /* above overlays/content */
  isolation: isolate;    /* own stacking context */
}
.av-header-inner{height:100%; max-width:var(--site-maxw); margin-inline: auto; padding: 0 100px; display:flex; align-items:center; justify-content:space-between; box-sizing: content-box;}
.av-brand{display:inline-flex; align-items:center}
.av-nav{display:flex; align-items:center; gap:32px; font-weight:400; letter-spacing:.02em}
.av-nav a{padding:.4rem .2rem; color:var(--brand-dark); text-decoration:none}
.av-nav a:hover{color:var(--brand-blue)}
.av-sep{width:1px; height:18px; background:var(--brand-dark); display:inline-block; margin:0 6px}

/* Desktop WORK WITH US toggle labels */
.av-work{display:inline-flex; align-items:center;}
.av-work-close{display:none}
#av-work:target ~ header .av-work-open{display:none}
#av-work:target ~ header .av-work-close{display:inline; color:var(--brand-blue)}

/* Prevent anchor jump when opening overlays */
#av-work, #av-menu{ scroll-margin-top: calc(var(--header-height) + 1px); }

/* ========== Desktop overlay (WORK WITH US) ========== */
.av-overlay{position:relative;} /* no z-index here; children control stacking */
.av-backdrop{
  position:fixed; left:0; right:0; top:var(--header-height); bottom:0;
  background:#000; opacity:0; pointer-events:none; transition:opacity .2s ease;
  z-index:900; /* below header */
}
.av-panel{
  position:fixed; left:0; right:0; top:var(--header-height);
  transform:translateY(-8px); opacity:0; pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
  z-index:950; /* below header, above backdrop */
}
.av-panel-full{background:var(--brand-white); border-top:1px solid var(--av-border); box-shadow:var(--av-panel-shadow)}
.av-panel-inner{max-width:var(--site-maxw); min-width:1024px; margin:0 auto; padding:28px 24px}
.av-panel-links{list-style:none; padding:0; margin:.75rem 0 0; display:flex; gap:16px}
.av-panel-links a{color:var(--brand-blue); text-decoration:none}
#av-work:target .av-backdrop{opacity:.5; pointer-events:auto}
#av-work:target .av-panel{opacity:1; transform:translateY(0); pointer-events:auto}

/* ========== Mobile full-screen menu (≤768px) ========== */
.av-burger{display:none}
.av-burger-close{display:none} /* ensure X is hidden by default */
.av-menu{
  position: fixed;
  left: 0; right: 0; bottom: 0;
  top: var(--header-height);    /* replace: inset:0; */
  background: #fff;
  opacity: 0; pointer-events: none;
  transition: opacity .2s ease;
  z-index: 950;
}

.av-menu-inner{max-width:var(--site-maxw); margin:0 auto; padding: 16px 25px 24px}
.av-menu-nav{display:flex; flex-direction:column; gap:6px; font-weight:500; letter-spacing:.02em}
.av-menu-nav a{font-size:1.25rem; color:var(--brand-dark); text-decoration:none; padding:.6rem 0}
.av-menu-nav a:hover{color:var(--brand-blue)}
.av-menu-hr{display:block; width:40%; height:1px; border:0; background:var(--brand-dark); margin:10px 0 8px 0; border-radius:1px}

/* When mobile menu is open */
#av-menu:target{opacity:1; pointer-events:auto}
#av-menu:target ~ header .av-burger-open{display:none}
#av-menu:target ~ header .av-burger-close{display:inline-flex}
#av-menu:target ~ header .av-burger-close svg{
  color:var(--brand-blue); stroke:var(--brand-blue); width:32px; height:32px;
}

@media (max-width: 768px){
  /* Hide desktop nav items/separator, show burger */
  .av-header-inner {padding:0 10;}
  .av-brand img {max-height: 28px}
  .av-nav-desktop{display:none}
  .av-sep{display:none}
  .av-burger{display:inline-flex; align-items:center; justify-content:center; padding:.35rem}
  .av-burger-open{display:inline-flex}
  .av-burger-close{display:none}
  .av-nav{gap:10px}
}

/* Desktop menu grid + columns */
.av-menu-grid{display:grid; grid-template-columns: 1fr 1px 1fr 1px 1fr 1px 1fr; column-gap:24px; align-items:start}
.av-vsep{width:1px; background:#f0f0f0; height:100%; display:block}
.av-col{display:flex; flex-direction:column; gap:10px}
.av-col-title{margin:0; font-size:1.05rem; letter-spacing:0; font-weight:500; color:#162128}
.av-col-text{margin:0; color:#162128; font-size:.75rem; font-weight:300}
.av-col-link{font-weight:400; font-size:.95rem; color:var(--brand-blue); text-decoration:none; display:inline-flex; align-items:center; gap:.35rem}
.av-col-link:hover{opacity:.85}

/* Stack safely below desktop widths */
@media (max-width: 1024px){
  .av-header-inner {padding:0 50px}
  .av-brand img {max-height: 36px}
  .av-nav {gap: 18px}
  .av-panel-inner{min-width:auto}
  .av-menu-grid{grid-template-columns:1fr; row-gap:16px}
  .av-vsep{display:none}
}

/* Desktop WORK WITH US chevrons (CSS-drawn) */
.av-work-open::after,
.av-work-close::after{
  content:"";
  display:inline-block;
  width:.55em; height:.55em;
  margin-left:1.5ch; /* consistent gap both states */
  position:relative;
}
/* Down chevron (closed) – slightly higher */
.av-work-open::after{
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  top:-0.18em;
}
/* Up chevron (open) – slightly lower */
.av-work-close::after{
  border-right:2px solid currentColor;
  border-top:2px solid currentColor;
  transform:rotate(-45deg);
  top:0.08em;
}

/* Lock scrolling when a menu/overlay is open */
html:has(#av-work:target),
html:has(#av-menu:target){
  overflow: hidden;
  overscroll-behavior: contain;
}



/* =========================
   Homepage
   ========================= */

.home-subtitle {margin: 0; max-width: 1024px; padding: 0 50px; text-align: center; font-size: 1.2rem; font-weight: 400;}
.home-banner {padding: 25px 0 50px; max-width: 100%; height: auto}

.home-build-grow {display: flex; max-width: 1232px; padding: 0 100px 50px; gap: 100px;}
.home-build-grow-title {display: flex; flex-direction: row; align-items: center;}
.home-build-grow-title img {margin: 0; height: 33px; width: auto}
.home-build-grow-content {margin: 6px 0 12px}

.home-quest {display: flex; flex-direction: column; background: var(--brand-gray); width: 100%; align-items: center; text-align: center; margin: 0 100px; padding: 50px 0}
.home-quest-title {padding: 0 50px; max-width: 1024px}
.home-quest-content {display: flex; max-width: var(--site-maxw); text-align: left; padding: 0 50px; gap: 50px}
.home-quest-content h3 {font-weight: 600;}

@media (max-width: 1024px) {}

@media (max-width: 768px) {
  .home-subtitle {padding: 0 25px}
  .home-quest {text-align: left; margin: 0}
  .home-quest-title {padding: 0 25px}
  .home-quest-content {padding: 0 25px; gap: 25px}
  .home-quest-content h3, .home-quest-content p {margin: 10px 0}
  .home-build-grow {flex-direction: column; padding: 0 25px 50px; gap: 35px}
  .home-quest-content {flex-direction: column; gap: 10px}
}


/* =========================
   Build
   ========================= */

.build-content {display: flex; flex-direction: column; gap: 25px}
.build-content img {max-width: 240px; height: auto}
.build-section {display: flex; margin: 0 100px; padding: 50px; gap: 50px; max-width: 1232px; min-height: 175px; align-items: center; background: var(--brand-gray)}

@media (max-width: 1024px) {
  .build-section {margin: 0 50px; padding: 35px 50px}
}

@media (max-width: 768px) {
  .build-banner {max-width: 250px}
  .build-description {padding: 25px}
  .build-section {flex-direction: column; margin: 0 25px; padding: 50px 25px}
  .build-section-reversed {flex-direction: column-reverse}
}


/* =========================
   Grow
   ========================= */

.grow-content {display: flex; flex-direction: column; gap: 0; align-items: center;}
.b360 {display: grid; max-width: 1232px; grid-template-columns: auto auto; grid-template-rows: auto auto auto; gap: 25px; margin: 0 100px; padding: 0}
.b360-section {background: var(--brand-gray); padding: 50px}
.bmgr {display: grid; max-width: 1232px; grid-template-columns: 2fr 1fr; margin: 0 100px; padding: 100px 25px 0; gap: 0}
.bmgr-section {margin: 0; padding: 0 25px}
.bmgr-section img {margin: 0; padding: 0; max-width: 100%; height: auto}
.bmgr-services {display: grid; max-width: 1232px; grid-template-columns: 1fr 1fr 1fr; margin: 0 100px; padding: 0 25px 100px; gap: 0}
.bmgr-service {margin: 0; padding: 0 25px}
.b360-funding {display: flex; flex-direction: row; background: var(--brand-gray); padding: 50px; gap: 50px; max-width: 1232px; align-items: center; margin: 0 100px}
.b360-funding img {max-width: 220px; height: auto}
.service-tags {display: flex; flex-direction: row; gap: 5px}
.service-tags h6 {font-size: 0.75rem; font-weight: 500; margin: 15px 0 0; padding: 4px 8px; border-radius: 12px;}
.service-tag-design {background-color: #E3FFF8; color: #15B79E}
.service-tag-execute {background-color: #FFE9ED; color: #F63D68}
.service-tag-manage {background-color: #F3F1FF; color: #875BF7}
.service-tag-consult {background-color: #FFFBD9; color: #CA8504}

@media (max-width: 1024px) {
  .b360 {margin: 0 50px}
  .b360-section {padding: 40px 25px}
  .bmgr {grid-template-columns: 1fr; text-align: center; margin: 0 50px}
  .bmgr-services {text-align: center; margin: 0 50px; padding: 0 0 100px; gap: 25px}
  .bmgr-service {margin: 0; padding: 0}
  .b360-funding {margin: 0 50px; padding: 35px}
}

@media (max-width: 768px) {
  .grow-banner {max-width: 100%; height: auto; margin: 0; padding: 0}
  .b360 {grid-template-columns: auto; margin: 0 25px; text-align: center;}
  .bmgr {margin: 0 25px; padding: 50px 0 25px}
  .bmgr-services {grid-template-columns: 1fr; margin: 0 25px; padding: 0 0 50px}
  .b360-funding {flex-direction: column; text-align: center; margin: 0 25px; padding: 25px}
}


/* =========================
   Entrepreneurs
   ========================= */

.ent-content {display: flex; flex-direction: column; align-items: center; gap: 0; margin: 0; padding: 0; width: 100%}
.ent-section, .ent-launch {display: flex; margin: 0 100px; padding: 25px 50px 0; max-width: 1232px}
.ent-launch {align-items: center; gap: 50px}
.ent-section img {width: 150px; height: auto;}
.ent-launch img {width: 250px; height: auto}
.ent-eir {display: flex; flex-direction: column; background: var(--brand-gray); margin: 50px 0 0; width: 100%; align-items: center;}
.ent-eir-content {display: flex; flex-direction: row; max-width: 1232px; gap: 50px; padding: 50px 100px; align-items: center; justify-content: center;}


@media (max-width: 1024px) {
  .ent-section, .ent-launch {margin: 0 50px; padding: 25px 0 0}
  .ent-eir-content {padding: 50px}
}

@media (max-width: 768px) {
  .ent-banner {max-width: 100%; height: auto; margin: 0; padding: 0}
  .ent-section {flex-direction: column-reverse; text-align: center; align-items: center; gap: 25px; margin: 0 25px; padding: 0}
  .ent-launch, .ent-section-reversed, .ent-eir-content {flex-direction: column; text-align: center; align-items: center; gap: 25px; margin: 0 25px; padding: 0}
  .ent-eir-content img {padding: 25px 0 0;}
  .ent-eir-content p {padding: 0 0 25px}
}


/* =========================
   Partners
   ========================= */

.partners-content {display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; max-width: 1024px; gap: 50px; margin: 0 100px; align-items: start;}
.partners-section {display: flex; flex-direction: column; gap: 10px}
.partners-text {text-align: center;}
.partners-image {flex-basis: 200px; flex-grow: none; flex-shrink: none; text-align: center; align-content: center;}
.partners-image img {height: 100%}


@media (max-width: 1024px) {
  .partners-content {margin: 0 50px}
}

@media (max-width: 768px) {
  .partners-banner {max-width: 100%; height: auto; margin: 0; padding: 0 25px}
  .partners-content {grid-template-columns: 1fr; grid-template-rows: 1fr 1fr 1fr 1fr; margin: 0 25px; gap: 25px}
  .partners-image {align-content: flex-end;}
}


/* =========================
   Investors
   ========================= */

.investors-content {display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; max-width: 1024px; gap: 100px; margin: 0 100px; align-items: start;}
.investors-section {position: relative}
.investors-image {position: absolute; inset: 0; z-index: 0; display: flex; align-items: flex-start; justify-content: flex-start; pointer-events: none; padding: 0 12px;}
.investors-image h6 {color: #1570EF12; margin: 0; line-height: 1; font-size: clamp(108px, 24vw, 240px); font-weight: 900; top: -2.5rem}
.investors-text {position: relative; z-index: 1}


@media (max-width: 1024px) {
  .investors-content {margin: 0 50px; gap: 50px}
}

@media (max-width: 768px) {
  .investors-content {grid-template-columns: 1fr}
  .investors-image {justify-content: center}
  .investors-text {text-align: center;}
}

@media (max-width: 540px) {
  .investors-content {margin: 50px 25px; gap: 25px}
  .investors-image h6 {font-size: clamp(144px, 36vw, 320px); top: -2rem}
}


/* =========================
   Careers
   ========================= */

.careers-content {display: flex; flex-direction: column; gap: 25px}
.careers-content img {max-width: 240px; height: auto}
.careers-section {display: flex; margin: 0 100px; padding: 50px; gap: 50px; max-width: 1232px; min-height: 175px; align-items: center; background: var(--brand-gray)}
.careers-section-reversed {background: var(--brand-white);}

@media (max-width: 1024px) {
  .careers-section {margin: 0; padding: 35px 50px}
}

@media (max-width: 768px) {
  .careers-banner {max-width: 100%; height: auto; margin: 0; padding: 0 25px}
  .careers-description {padding: 25px}
  .careers-section {flex-direction: column; padding: 50px 25px}
  .careers-section-reversed {flex-direction: column-reverse}
}


/* =========================
   Contact
   ========================= */

.hp-trap { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }
.contact-content {display: flex; flex-direction: column; align-items: stretch; margin: 50px 0 100px; width: 540px; text-align: left}
.contact-content h2 {padding: 25px 0}
.contact-content form {display: grid; gap: 16px; width: 100%; justify-items: stretch}
.contact-content input[type="text"], .contact-content input[type="email"], .contact-content textarea,.contact-content select {width: 100%; padding: 12px 14px; background: var(--brand-gray); border: 1px solid var(--brand-gray); border-radius: 0; resize: none; font: inherit; font-size: 1rem; font-weight: 300;}
.contact-content .char-counter {font-size: 0.75rem; opacity: 0.5; margin-top: -8px; text-align: right}
.contact-content .contact-button {display: inline-block; width: 180px; margin: 20px 0; padding: 0.60rem 2rem; text-decoration: none; font-size: 1rem; font-weight: 500; color: var(--brand-white); background: var(--brand-blue); border: none; text-align: center;}
.contact-content .contact-button:hover {opacity: 0.9;}

.resume-block {padding: 0 0 16px}
.resume-block label {display: block; margin: 0; font-weight: 600}
.filepicker { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.file-name {font-size: 0.95rem; opacity: 0.85; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap}

.form-alert { padding: 12px 14px; border-radius: 8px; }
.form-alert.success { background: #E3FFF8; border: 1px solid #15B79E; color: #15B79E; font-weight: 500;}
.form-alert.error   { background: #FFE9ED; border: 1px solid #F63D68; color: #F63D68}
.form-errors {margin: 0 0 16px; padding: 12px 14px; background: #FFE9ED; border: 1px solid #F63D68; color: #F63D68}
.form-errors .form-errors-title { font-weight: 700; margin: 0 0 6px}
.input-error {border-color: #F63D68 !important; outline: 0}

@media (max-width: 768px) {
  .contact-content .contact-banner {margin: 0; padding: 0}
  .contact-content {margin: 0 0 575x; align-items: center; text-align: center; width: 360px}
  .contact-content h2 {padding: 0 0 25px}
  .contact-content form {width: 360px; justify-items: center}
  .form-alert.success {text-align: left}
  .form-errors {text-align: left}
}


/* =========================
   Footer
   ========================= */

/* Full-bleed background, white text */
footer {margin: 0; background: var(--brand-dark); color: var(--brand-white); padding: 32px 100px}

/* Constrain inner rows but keep background full width */
footer .footer-top,
footer .footer-middle,
footer .footer-bottom {
  max-width: var(--site-maxw);
  margin-inline: auto;
}

/* Footer links: white, no underline */
footer a:link,
footer a:visited {
  color: var(--brand-white);
  text-decoration: none;
}
footer a:hover,
footer a:focus {
  opacity: 0.9; /* subtle feedback without underline */
}

/* ===== Row 1: logo only ===== */
.footer-top { margin-top: 16px; margin-bottom: 32px; }
.footer-brand > a { display: inline-block; }
.footer-brand img { display: block; height: auto; max-width: 100%; }

/* ===== Row 2: description (left) | links (right) ===== */
.footer-middle {
  display: grid;
  grid-template-columns: 1fr 1fr;  /* left | right */
  gap: 80px;
  align-items: start;                   /* top-align desc & links */
  font-weight: 400;
  font-size: 0.975rem;
  line-height: 2;
  text-align: left;
}

/* Left column */
.footer-description p {
  margin: 0;
}

/* Right column: links block aligned to right edge */
.footer-links {
  justify-self: end;             /* push whole links block to the right */
  display: flex;
  justify-content: flex-end;     /* clusters hug the right */
  gap: 0 40px;                /* row gap | column gap */
}

/* Link clusters + vertical separators */
.footer-links .linkgroup {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-links .linkgroup a { display: inline-block; margin-bottom: 15px; }

.footer-links .v-sep {
  width: 1px;
  background: var(--brand-white);  /* white vertical line */
  align-self: top;           
  height: 120px;
  margin-top: 8px;
}

/* ===== Middle divider: fixed width, centered, custom spacing ===== */
.footer-divider {
  display: block;
  border: 0;
  height: 1px;
  background: var(--brand-white);  /* white horizontal line */
  max-width: 1440px;                 /* fixed length */
  margin: 64px auto 24px;         /* top | horizontal | bottom */
}

/* ===== Bottom bar: privacy left | copyright right ===== */
.footer-bottom {
  display: grid;
  grid-template-columns: 1fr 3fr;  /* left | right */
  gap: 24px;
  align-items: start;                   /* top-align desc & links */
  font-size: 0.75rem;
  font-weight: 300;
}

.footer-bottom .copyright { text-align: right; font-size: 0.75rem; font-weight: 300; }

/* ===== Responsive footer configuration for tablets and mobiles ===== */
@media (max-width: 1024px) {
  footer {padding: 32px 50px}
  .footer-middle {
    grid-template-columns: 1fr;         /* stack desc over links */
    gap: 50px;
  }

  .footer-links {
    flex-wrap: wrap;
    justify-self: start;
    justify-content: flex-start;
    text-align: left;
    gap: 0 20px;

  }
  .footer-links .linkgroup { display: inline-flex; column-gap: 20px; font-size: 0.875rem; }
  .footer-links .v-sep { display: none }
  .footer-divider { margin-top: 32px; }
  .footer-bottom .copyright { text-align: right; font-size: 0.74rem; font-weight: 300; }
}

@media (max-width: 768px) {
  footer {padding: 32px 25px}
  .footer-description p {
    font-weight: 300;
  }
  .footer-links { display:none; }
}

/* =========================
   privacy.html
   ========================= */

.privacy-policy {display: flex; flex-direction: column; max-width: var(--site-bp-tablet); margin: 0 100px; padding: 0 0 100px;}
.privacy-policy h3 {margin: 15px 0 5px 0}
.privacy-policy p {margin: 0 0 10px 0}
.privacy-policy .last-updated {margin: 30px 0}

@media (max-width: 1024px) {
  .privacy-policy {margin: 0 50px}
}

@media (max-width: 768px) {
  .privacy-policy {margin: 0 25px}
}


