/* build-2026-02-02-02 CSS-OVERRIDE */
/* Drop-in override file to prevent oversized images/logo across the site. */

.header img,
.brandmark img,
img[alt*="logo" i],
img[src*="logo" i]{
  height: 22px !important;
  width: auto !important;
  max-height: 22px !important;
  display: inline-block !important;
}

/* Keep any header logo container from stretching */
.brandmark{
  width: 26px !important;
  height: 26px !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* HERO / top images */
.hero img,
.page-hero img,
img.hero-img{
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  border-radius: 16px !important;
  display:block !important;
}

/* Card/tile images: Axialtonal (individual/couples/teams), testimonials, etc. */
.tile img,
.tile-img,
.card img,
.testimonial img,
img.card-img{
  width: 100% !important;
  height: 140px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  display:block !important;
}

@media (max-width: 560px){
  .hero img,
  .page-hero img,
  img.hero-img{ height: 170px !important; }
  .tile img,
  .tile-img,
  .card img,
  .testimonial img,
  img.card-img{ height: 120px !important; }
}
:root{
  --bg:#0f1412;
  --card:#22312c;
  --text:#f3f4f6;
  --muted:#c2c8d2;
  --accent:#6aa87b;
  --accent-2:#4d8f64;
  --mango:#f4a340;
  --border:rgba(255,255,255,.16);
  --shadow: 0 12px 34px rgba(0,0,0,.45);
  --radius:16px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--text);
  background: radial-gradient(900px 520px at 50% 0%, rgba(106,168,123,.18), rgba(0,0,0,0) 60%), var(--bg);
  line-height:1.5;
}

a{
  color: var(--text);
  text-decoration-color: rgba(244,163,64,.7);
  text-align: center;
}
a:hover{
  color: #f4a340; /* mango */
}
.container{
  width:min(980px, 92vw);
  margin:0 auto;
}
.header{
  padding:18px 0;
  color:var(--muted);
  font-size:14px;
  display:flex;
  align-items:center;
  gap:10px;
}
  /* Accent utility colors */
.mango {
  color: #f4a340; /* warm mango */
}

.mango-soft {
  color: #f7b866;
}

.mango-bg {
  background-color: #f4a340;
  color: #1f2937; /* readable text on mango */
}
.brandmark{
  width:18px;height:18px;border-radius:5px;
  border:1px solid var(--border);
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.12);
  box-shadow:0 6px 16px rgba(0,0,0,.35);
overflow:hidden;}
.hero{
	padding: 34px 0 20px;
	text-align: center;
}
.h1{
  font-size:clamp(28px, 3.2vw, 44px);
  letter-spacing:0.01em;
  line-height:1.12;
  margin:0 0 12px;
  color:#f4a340; 
}
.lede{
  max-width:70ch;
  color:var(--muted);
  margin:0 0 18px;
  font-size:16px;
  text-align: center;
  }

.pills{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
  color:var(--muted);
  font-size:13px;
}
.pill{
  padding:6px 10px;border:1px solid var(--border);
  background:rgba(255,255,255,.05);
  border-radius:999px;
}
.card{
  background: rgba(255,255,255,.09);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.section{
  padding:18px 0;
}
.section h2{
	font-size: 22px;
	margin: 0 0 10px;
	letter-spacing: -0.01em;
	text-align: center;
}
.grid{
  display:grid;
  gap:14px;
}
.grid-2{
	grid-template-columns: repeat(2, minmax(0,1fr));
}
.grid-4{grid-template-columns:repeat(4, minmax(0,1fr))}
@media (max-width: 860px){
  .grid-4{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 560px){
  .grid-2,.grid-4{grid-template-columns:1fr}
}
.list{
  margin:0;padding-left:18px;color:var(--muted);
}
.list li{margin:8px 0}
.cta-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  justify-content:center;   /* <-- add this */
}
.cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:var(--accent);
  color:#0b0f0c;
  text-decoration:none;
  border:none;
  border-radius:999px;
  padding:12px 18px;
  font-weight:600;
  cursor:pointer;
}
.cta:hover{background:var(--accent-2)
}
.cta.secondary{
  background:transparent;
  color:var(--text);
  border:1px solid var(--border);
}
.cta.secondary:hover{border-color: rgba(242,162,58,.65);
	color: var(--mango);
}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}
.small{
	font-size: 13px;
	color: var(--muted);
	text-align: center;
}
.pad{padding:18px}
.pad-lg{
	padding: 22px;
	text-align: center;
}
.checklist{
  display:grid;gap:10px;
  padding:0;
  margin:0;
  list-style:none;
}
.checklist li{
  display:flex;gap:10px;align-items:flex-start;
  color:var(--muted);
}
.check{
  width:20px;height:20px;border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  margin-top:2px;
  flex:0 0 20px;
}
.check svg{width:12px;height:12px}
.footer{
	padding: 26px 0 40px;
	color: var(--muted);
	font-size: 13px;
	text-align: center;
}
.notice{
  display:none;
  position:fixed;
  right:18px;
  bottom:18px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:var(--shadow);
  padding:12px 14px;
  max-width:min(360px, 90vw);
}
.notice strong{display:block;margin-bottom:2px}
.notice.show{display:block}
.form{
  display:grid;
  gap:16px;
}
.q{
  padding:16px;
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(255,255,255,.03);
  text-align: center;
}
.q label.title{
  display:block;
  font-weight:600;
  margin-bottom:10px;
  color:#9F9;
  text-height: 22px;
}
.radio{
  display:grid;
  gap:10px;
}
.radio label{
  display:flex;
  gap:10px;
  align-items:center;
  padding:12px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  cursor:pointer;
  background: rgba(255,255,255,.02);
}
.radio label:hover{
	border-color: rgba(106,168,123,.55);
}

.radio input{margin:0}
textarea{
  width:100%;
  min-height:110px;
  padding:12px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  font:inherit;
  resize:vertical;
}

input[type="text"], input[type="email"], textarea{
  width:100%;
  padding:12px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  font:inherit;
  background: rgba(255,255,255,.02);
  color: var(--text);
}

textarea::placeholder,
input::placeholder{
  color: rgba(182,188,198,.75);
}
.actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
}
.hr{
  height:1px;
  background:var(--border);
  margin:14px 0;
}
.banner{
  background:linear-gradient(0deg, rgba(106,168,123,.12), rgba(106,168,123,.12));
  border:1px solid rgba(106,168,123,.28);
  border-radius:var(--radius);
  padding:18px;
}
.footer{
	  padding:26px 0 40px;
	  color: var(--muted);
	  font-size:13px;
	  text-align:center;
}
.quote{
	display: grid;
	gap: 10px;
	text-align: center;
}
blockquote{
  margin:0;
  color:var(--text);
  font-size:16px;
}
cite{
  color:var(--muted);
  font-style:normal;
  font-size:13px;
}

.center-text .lede {
  margin-left: auto;
  margin-right: auto;
}


/* Keep cards readable and not overly wide */
.home .lede,
.home p {
	margin-left: auto;
	margin-right: auto;
	max-width: 70ch;
	text-align: center;
}

/* Ensure all CTA rows center */
.home .cta-row {
  justify-content: center;
}
.home .container main .section .card.pad-lg .grid.grid-2 div strong {
}
.container main .section .card.pad-lg .hr {
	text-align: center;
}




img{max-width:100%;height:auto}


/* Header nav layout */
.header{
  justify-content:space-between;
}
.brand{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:var(--muted);
}
.brandname{font-weight:700; color:var(--text);}
.brandmark{
  width:18px;height:18px;border-radius:5px;
  border:1px solid var(--border);
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.10);
}
.brandmark img{width:16px;height:16px;display:block;border-radius:4px}
.nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
.nav a{
  color:var(--muted);
  text-decoration:none;
  padding:6px 8px;
  border-radius:10px;
  border:1px solid transparent;
}
.nav a:hover{
  color:var(--text);
  border-color: rgba(255,255,255,.16);
}

/* Page hero image */
.page-hero{
  margin:14px 0 18px;
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid var(--border);
  box-shadow:var(--shadow);
}
.page-hero img{
  width:100%;
  height:220px;
  object-fit:cover;
  display:block;
}
@media (max-width:560px){
  .page-hero img{height:170px;}
}

/* Image tiles */
.tile-img{
  width:100%;
  height:140px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid var(--border);
  margin-top:12px;
}
.tile{padding:12px}
.tile img{margin:0; height:130px}

/* --- image sizing guardrails --- */
img{max-width:100%;height:auto;display:block}

/* logo in header */
.brandmark{width:20px;height:20px;overflow:hidden}
.brandmark img{width:100%;height:100%;object-fit:contain}

/* page hero images */
.hero-photo, .page-hero, .hero-media{overflow:hidden;border-radius:16px}
.hero-photo img, .page-hero img, .hero-media img{width:100%;height:220px;object-fit:cover}
@media (max-width:560px){
  .hero-photo img, .page-hero img, .hero-media img{height:170px}
}

/* axialtonal tiles / service cards with images */
.tile-img{width:100%;height:140px;object-fit:cover;border-radius:12px}
@media (max-width:560px){
  .tile-img{height:130px}
}

/* force logo size everywhere */
img[src*="logo"]{max-height:28px;width:auto}





/* --- PATCH build-2026-02-03-02 --- */
/* 1) Logo size (2–2.5x) */
.header { align-items: center; }
.brandmark{
  width:88px !important;
  height:88px !important;
  border-radius: 12px !important;
}
.brandmark img,
.header .brandmark img{
  height:65px !important;
  width:auto !important;
  max-height:65px !important;
  display:block !important;
}

/* 2) Axialtonal subtitle centering */
.axialtonal .lede,
.page-axialtonal .lede{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
  max-width: 72ch;
}

/* Facebook button */
.cta.facebook{
  background: #000;
  color: #fff;
  border: 1px solid rgba(255,255,255,.18);
}

/* hover: blue text */
.cta.facebook:hover{
  color: #1877F2;            /* Facebook-ish blue */
  border-color: #1877F2;
}

/* optional: focus state (keyboard accessibility) */
.cta.facebook:focus{
  outline: 2px solid #1877F2;
  outline-offset: 2px;
}

.cta.facebook:hover{
  background: #000;
}

/* 3) Button color system (keep Book a Relief Call consistent) */
:root{
  --cta-book:#0069ff;        /* Calendly blue */
  --cta-book-text:#ffffff;
  --cta-assess:#f4a340;      /* mango */
  --cta-assess-text:#111315; /* dark text on mango */
  --cta-axial:#7c4dff;       /* purple */
  --cta-axial-text:#ffffff;
  --cta-google:#1a73e8;      /* Google blue */
  --cta-google-text:#ffffff;
  --cta-trip:#f4a340;        /* mango/yellow-ish */
  --cta-trip-text:#111315;
  --cta-gift:#2f855a;        /* green */
  --cta-gift-text:#ffffff;
  --cta-caddy:#7dd3fc;       /* light blue */
  --cta-caddy-text:#111315;
  --cta-facebook:#111315;       /* light blue */
  --cta-facebook-text:#000000;
}

.cta.book{ background: var(--cta-book) !important; color: var(--cta-book-text) !important; }
.cta.book:hover{ filter: brightness(0.95); }
.cta.assessment{ background: var(--cta-assess) !important; color: var(--cta-assess-text) !important; }
.cta.assessment:hover{ filter: brightness(0.95); }
.cta.axial{ background: var(--cta-axial) !important; color: var(--cta-axial-text) !important; }
.cta.axial:hover{ filter: brightness(0.95); }
.cta.google{ background: var(--cta-google) !important; color: var(--cta-google-text) !important; }
.cta.google:hover{ filter: brightness(0.95); }
.cta.trip{ background: var(--cta-trip) !important; color: var(--cta-trip-text) !important; }
.cta.trip:hover{ filter: brightness(0.95); }
.cta.gift{ background: var(--cta-gift) !important; color: var(--cta-gift-text) !important; }
.cta.gift:hover{ filter: brightness(0.95); }
.cta.caddy{ background: var(--cta-caddy) !important; color: var(--cta-caddy-text) !important; }
.cta.caddy:hover{ filter: brightness(0.95); }
.cta.facebook{ background: var(--cta-caddy) !important; color: var(--cta-caddy-text) !important; }
.cta.facebook:hover{ filter: brightness(0.95); }

/* 4) Headings spacing (less crowded) */
.h1, h1{ letter-spacing: 0.01em !important; }
h2{ letter-spacing: 0.005em !important; }

/* 5) “Centered bullets” helper: center the list as a block, keep bullets aligned */
.list.centered,
ul.centered-list{
  display:inline-block;
  text-align:left;
  margin-left:auto;
  margin-right:auto;
}
.list-wrap{ text-align:center; }

/* 6) Small photo placeholders row (for KI page box) */
.photo-strip{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
  margin-top:14px;
}
.photo-slot{
  width:84px;
  height:62px;
  border-radius: 12px;
  border: 1px dashed rgba(255,255,255,.28);
  background: rgba(255,255,255,.04);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  color: rgba(243,244,246,.75);
}
@media (max-width:560px){
  .photo-slot{ width:72px; height:54px; }
}
