/*
Theme Name: Work Hero
Description: Work Hero brand child theme of Twenty Twenty-Five — design tokens, typography and components per the brand manual (useworkhero.com).
Template: twentytwentyfive
Version: 1.0.0
Author: Work Hero
*/

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

@font-face {
  font-family: 'grifterbold';
  src: url('https://cdn.prod.website-files.com/617854d2ded8b41860472f76/6329c0925c9877fb4726f4c8_grifterbold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --wh-black: #000000; --wh-white: #ffffff; --wh-yellow: #f7d046;
  --wh-sky: #c1defc; --wh-cream: #fefaec; --wh-grey: #e4e4e4; --wh-dim: #505050;
  --wh-display: 'grifterbold', Montserrat, sans-serif;
  --wh-body: 'Poppins', sans-serif;
}

/* ---------- Base typography ---------- */
body { font-family: var(--wh-body); font-size: 18px; font-weight: 500; line-height: 1.72; color: var(--wh-black); }
h1, h2, h3, h4, h5, h6 { font-family: var(--wh-display); font-weight: 700; }
h1 { letter-spacing: 2px; line-height: 1.12; }
h2 { letter-spacing: 1px; line-height: 1.22; margin-top: 1.4em; }
h3 { letter-spacing: 1.1px; line-height: 1.3; }

/* ---------- Header / footer ---------- */
.wp-block-site-logo img { max-width: 168px; height: auto; }
header .wp-block-navigation { font-family: var(--wh-body); font-weight: 600; font-size: 15px; }

/* ---------- Buttons ---------- */
.wp-block-button__link {
  font-family: var(--wh-display) !important; font-size: 17px;
  border-radius: 8px !important; padding: 18px 38px 13px !important; /* GRIFTER sits high on its baseline */
  box-shadow: none !important; text-decoration: none; transition: transform .12s ease, opacity .12s ease;
}
.wp-block-button__link:hover { transform: translateY(-2px); opacity: .92; }

/* ---------- LP sections: center hero/section headings on pages ---------- */
.page main .wp-block-group.alignfull > h1,
.page main .wp-block-group.alignfull > h2,
.page main .wp-block-group.alignfull > p { text-align: center; }
.page main .wp-block-group.alignfull > h1 { max-width: 20ch; margin-left: auto; margin-right: auto; }
.page main .wp-block-group.alignfull > p { max-width: 62ch; margin-left: auto; margin-right: auto; }

/* ---------- Cards (columns inside colored sections) ---------- */
.wp-block-column[style*="border-radius"] { box-shadow: none; }
.wp-block-column[style*="border-radius"] h3 { margin-top: 0; font-size: 21px; }
.wp-block-column[style*="border-radius"] p { font-size: 16px; line-height: 1.65; margin-bottom: 0; color: #1a1a1a; }

/* ---------- Tables (responsive, brand-flat) ---------- */
.wp-block-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.wp-block-table table { table-layout: auto !important; min-width: 720px; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.wp-block-table th { font-family: var(--wh-display); font-size: 14px; letter-spacing: .5px; text-align: left; background: var(--wh-black); color: var(--wh-white); padding: 12px 14px; border: 0; white-space: nowrap; }
.wp-block-table td { padding: 12px 14px; border: 0; border-bottom: 1px solid var(--wh-grey); vertical-align: top; }
.wp-block-table tbody tr:nth-child(odd) td { background: var(--wh-cream); }
.wp-block-table tbody tr:first-child td { background: #fdf3cd; }

/* ---------- FAQ accordion (core/details) ---------- */
details.wp-block-details { background: var(--wh-white); border: 1.5px solid var(--wh-black); border-radius: 10px; padding: 16px 20px; margin-bottom: 12px; }
details.wp-block-details summary { font-family: var(--wh-display); font-size: 17px; letter-spacing: .4px; cursor: pointer; list-style: none; position: relative; padding-right: 34px; padding-top: 3px; }
details.wp-block-details summary::-webkit-details-marker { display: none; }
details.wp-block-details summary::after { content: '+'; position: absolute; right: 2px; top: -2px; font-size: 26px; line-height: 1; }
details.wp-block-details[open] summary::after { content: '\2013'; }
details.wp-block-details[open] summary { margin-bottom: 10px; }
details.wp-block-details p { font-size: 16px; line-height: 1.65; margin: 0; }

/* ---------- Blog post readability ---------- */
.single-post .entry-content > p, .single-post .entry-content > ul, .single-post .entry-content > ol { max-width: 720px; }
.single-post .entry-content h2 { margin-top: 2.2em; margin-bottom: .6em; font-size: clamp(26px, 3.4vw, 32px); }
.single-post .entry-content h3 { margin-top: 1.8em; margin-bottom: .5em; font-size: 21px; }
.single-post .entry-content li { margin-bottom: .45em; }
.single-post .wp-block-post-title { letter-spacing: 1.5px; line-height: 1.15; }

/* ---------- Flat brand: no shadows/gradients anywhere ---------- */
.wp-block-group, .wp-block-column, .wp-block-button__link, img { background-image: none; }
