@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@700;800;900&family=Manrope:wght@400;500;600;700;800&display=swap');

/* ===== OD Communications design layer ===== */
body { font-family: 'Manrope', -apple-system, sans-serif; }
h1, h2, h3, h4, blockquote { font-family: 'Archivo', 'Manrope', sans-serif !important; letter-spacing: -0.01em; }
h2 { font-weight: 800 !important; color: #2c2a28; }

/* Full-bleed helper */
.od-hero, .od-pillars, .od-quote, .od-dog, .od-contact {
  width: 100vw; max-width: 100vw;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* Hero */
.od-hero {
  background: linear-gradient(rgba(32,30,28,.62), rgba(32,30,28,.82)),
    url('https://odcommunications.com/wp-content/uploads/2026/06/web-dog-rolling.jpg') center 55%/cover no-repeat;
  padding: 130px 24px 140px !important;
  margin-top: 0 !important;
}
.od-hero h1 {
  color: #fff !important;
  font-size: clamp(2.4rem, 5.6vw, 4rem) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  max-width: 15em;
}
.od-hero .od-hero-sub { color: #ece8e3; font-size: 1.12rem; font-weight: 500; max-width: 34em; }

/* Buttons — pills */
.wp-block-button__link {
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-family: 'Manrope', sans-serif !important;
  padding: 14px 32px !important;
}
.od-btn-orange .wp-block-button__link { background-color: #e96f1f !important; color: #fff !important; }
.od-btn-ghost .wp-block-button__link { color: #fff !important; border: 2px solid rgba(255,255,255,.6) !important; background: transparent !important; }

/* Sections */
.od-about { padding: 90px 24px; }
.od-pillars { background: #f4f2ef; padding: 90px 24px !important; }
.od-quote { background: #2c2a28; padding: 70px 24px !important; }
.od-quote blockquote { border: none !important; margin: 0 auto !important; max-width: 32em; text-align: center; }
.od-quote blockquote p { color: #fff !important; font-size: clamp(1.2rem, 2.4vw, 1.5rem); font-weight: 600; }
.od-quote blockquote cite { color: #f5a623; font-style: normal; font-weight: 600; font-size: .9rem; }
.od-record { padding: 90px 24px; }
.od-dog { background: #f4f2ef; padding: 90px 24px !important; }
.od-contact {
  background: linear-gradient(170deg, #2c2a28 0%, #3b3835 100%);
  padding: 100px 24px !important;
}
.od-contact h2, .od-contact p { color: #fff !important; }
.od-contact .od-contact-details { color: #a8a29a !important; font-size: .95rem; font-weight: 600; }
.od-contact .od-contact-details a { color: #fff !important; border-bottom: 2px solid #f5a623; text-decoration: none; }

/* Cards */
.od-card {
  background: #fff;
  border-radius: 16px;
  border-top: 4px solid #e96f1f;
  padding: 34px 30px !important;
  box-shadow: 0 4px 20px rgba(44,42,40,.08);
  transition: transform .2s, box-shadow .2s;
  height: 100%;
}
.od-card:hover { transform: translateY(-5px); box-shadow: 0 14px 34px rgba(44,42,40,.14); }
.od-card .od-num { font-family: 'Archivo', sans-serif; font-weight: 900; font-size: .95rem; letter-spacing: .1em; color: #e96f1f; margin-bottom: 4px; }
.od-card h3 { font-size: 1.3rem !important; font-weight: 800 !important; color: #2c2a28; }
.od-card ul { list-style: none; padding-left: 0 !important; margin-left: 0 !important; }
.od-card li { padding: 9px 0; border-bottom: 1px solid #efebe6; color: #6d6760; font-size: .95rem; font-weight: 500; }
.od-card li:last-child { border-bottom: none; }
.od-card-wide { max-width: var(--wp--style--global--content-size, 840px); margin-left: auto !important; margin-right: auto !important; }
.od-sub { color: #6d6760; font-size: 1.05rem; font-weight: 500; }

/* Track record */
.od-rec-row { border-bottom: 1px solid #e8e4df; padding: 26px 0; }
.od-rec-row:last-of-type { border-bottom: none; }
.od-rec-label { text-transform: uppercase; letter-spacing: .08em; font-size: .78rem !important; font-weight: 700; color: #e96f1f; margin-bottom: 4px !important; }
.od-rec-row h3 { font-size: 1.15rem !important; font-weight: 800 !important; }
.od-clients { color: #6d6760; font-size: .92rem; font-weight: 500; margin-top: 36px; }

/* Images */
.od-rounded img { border-radius: 16px; box-shadow: 0 10px 34px rgba(44,42,40,.18); }
.od-crop img { height: 300px; object-fit: cover; object-position: center 22%; width: 100%; }
.od-crop figcaption { text-align: right; font-size: .78rem; color: #6d6760; font-weight: 600; }

/* hide page title on front page */
.home .wp-block-post-title, body.page-id-4085 .wp-block-post-title { display: none; }

/* header bar */
.wp-site-blocks > header { background: #2c2a28; padding-top: 14px !important; padding-bottom: 14px; }
.wp-site-blocks > header a, .wp-site-blocks > header .wp-block-site-title a { color: #fff !important; }
.wp-site-blocks > header .wp-block-navigation .wp-block-navigation-item:last-child a { background: #e96f1f; color: #fff !important; border-radius: 50px; padding: 8px 20px; }
.home .wp-block-post-title { display: none; }

/* quote card fix */
.od-quote .wp-block-quote { background: transparent !important; box-shadow: none !important; border: none !important; padding: 0 !important; border-radius: 0 !important; }
.od-quote .wp-block-quote p { color: #fff !important; }

/* justify text — desktop only */
@media (min-width: 821px) {
.od-about p, .od-pillars .od-sub, .od-card li, .od-record .wp-block-column p:not(.od-rec-label), .od-clients, .od-dog p, .od-hero .od-hero-sub { text-align: justify; }
}

/* two-tone logo */
.od-logo { font-family: 'Archivo', sans-serif; font-weight: 900; font-size: 1.05rem; letter-spacing: .05em; color: #fff !important; text-decoration: none; }
.od-logo span { color: #f5a623; }

/* hide comments on homepage */
.home .wp-block-comments, .home #comments, .home .comments-area { display: none !important; }