/*
Theme Name: Words to Eat Publishing
Theme URI: https://wordstoeat.com/
Author: Words to Eat Publishing
Description: Custom block theme for Words to Eat Publishing. Designed for books, series, author content, retailer links, direct-sales embeds, and optional WooCommerce use.
Version: 1.0.1
Requires at least: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: words-to-eat
Tags: block-patterns, block-styles, custom-colors, custom-logo, editor-style, featured-images, full-site-editing, wide-blocks
*/

:root {
  --wte-navy: #062873;
  --wte-blue: #2a5587;
  --wte-slate: #7986a5;
  --wte-gold: #b3711e;
  --wte-charcoal: #504f53;
  --wte-ink: #0b1e32;
  --wte-paper: #ffffff;
  --wte-soft: #f6f4ef;
  --wte-line: #d7d4ce;
  --wte-shadow: 0 18px 50px rgba(11, 30, 50, 0.10);
}

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

a {
  text-underline-offset: 0.18em;
}

img {
  height: auto;
}

.wte-site-header {
  position: relative;
  z-index: 20;
  background: var(--wte-paper);
  border-bottom: 1px solid rgba(80, 79, 83, 0.15);
}

.wte-header-inner {
  min-height: 94px;
}

.wte-header-logo img {
  display: block;
  width: min(100%, 470px);
  height: auto;
}

.wte-site-header .wp-block-navigation a {
  color: var(--wte-ink);
  font-weight: 650;
  text-decoration: none;
}

.wte-site-header .wp-block-navigation-item.current-menu-item > a,
.wte-site-header .wp-block-navigation a:hover,
.wte-site-header .wp-block-navigation a:focus-visible {
  color: var(--wte-gold);
}

.wte-site-header .wp-block-navigation__responsive-container-open,
.wte-site-header .wp-block-navigation__responsive-container-close {
  color: var(--wte-navy);
}

.wte-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(42, 85, 135, 0.34), transparent 34%),
    linear-gradient(118deg, #071a2b 0%, #0b2740 55%, #102f4b 100%);
}

.wte-hero::after {
  content: "";
  position: absolute;
  inset: auto -10% -38% auto;
  width: 580px;
  aspect-ratio: 1;
  border: 1px solid rgba(179, 113, 30, 0.34);
  border-radius: 50%;
  box-shadow: 0 0 0 58px rgba(179, 113, 30, 0.04), 0 0 0 116px rgba(179, 113, 30, 0.025);
  pointer-events: none;
  z-index: -1;
}

.wte-hero-rule {
  width: 190px;
  height: 2px;
  background: var(--wte-gold);
  margin: 0;
}

.wte-kicker {
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-size: 0.82rem;
  font-weight: 700;
}

.wte-card {
  height: 100%;
  border: 1px solid var(--wte-line);
  background: var(--wte-paper);
  box-shadow: var(--wte-shadow);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.wte-card:hover {
  transform: translateY(-3px);
  border-color: rgba(179, 113, 30, 0.55);
  box-shadow: 0 22px 60px rgba(11, 30, 50, 0.14);
}

.wte-series-label {
  color: var(--wte-blue);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.78rem;
  font-weight: 750;
}

.wte-gold-line {
  width: 52px;
  height: 2px;
  background: var(--wte-gold);
}

.wte-section-heading {
  position: relative;
}

.wte-section-heading::after {
  content: "";
  display: block;
  width: 72px;
  height: 2px;
  margin-top: 18px;
  background: var(--wte-gold);
}

.wte-embed-slot {
  padding: 28px;
  border: 1px dashed rgba(42, 85, 135, 0.55);
  border-radius: 10px;
  background: rgba(121, 134, 165, 0.08);
  color: var(--wte-charcoal);
}

.wte-site-footer {
  background: #071a2b;
  color: #ffffff;
}

.wte-site-footer a {
  color: #ffffff;
}

.wte-site-footer a:hover,
.wte-site-footer a:focus-visible {
  color: #d8a050;
}

.wte-footer-logo img {
  display: block;
  width: min(100%, 380px);
  height: auto;
  background: #ffffff;
  border-radius: 2px;
}

.wte-meta-row {
  color: #667085;
  font-size: 0.94rem;
}

.wte-post-card {
  border-bottom: 1px solid var(--wte-line);
  padding-bottom: 2rem;
}

.wp-block-button__link {
  transition: transform 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
}

.wp-block-button__link:hover {
  transform: translateY(-1px);
  box-shadow: 0 9px 24px rgba(6, 40, 115, 0.18);
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover {
  background: rgba(6, 40, 115, 0.06);
}

/* WooCommerce-ready styling. WooCommerce remains optional. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  border: 1px solid var(--wte-line);
  padding: 18px;
  background: #fff;
  border-radius: 8px;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  background: var(--wte-navy);
  color: #fff;
  border-radius: 4px;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: var(--wte-blue);
  color: #fff;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
  color: var(--wte-gold);
}

.wte-skip-link {
  position: absolute;
  left: 12px;
  top: -60px;
  z-index: 9999;
  padding: 10px 14px;
  background: #fff;
  color: var(--wte-navy);
  box-shadow: var(--wte-shadow);
}

.wte-skip-link:focus {
  top: 12px;
}

@media (max-width: 900px) {
  .wte-header-inner {
    gap: 20px !important;
    min-height: 82px;
  }

  .wte-header-logo img {
    width: min(100%, 360px);
  }

  .wte-hero::after {
    width: 420px;
    opacity: 0.65;
  }
}

@media (max-width: 700px) {
  .wte-header-inner {
    align-items: center !important;
  }

  .wte-header-logo {
    max-width: 72%;
  }

  .wte-hero {
    min-height: auto !important;
  }

  .wte-hero .wp-block-group__inner-container {
    padding-top: 72px;
    padding-bottom: 72px;
  }
}
