/* === 13 Santa Challenge — Playfully Festive Theme === */
/* Inspired by emailsanta.com: deep Christmas green + cream + gold + red */

/* Festive fonts from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Mountains+of+Christmas:wght@400;700&family=Alegreya:ital,wght@0,400;0,700;1,400&display=swap');

/* ---- Color tokens ---- */
:root {
  --xmas-green: #003517;
  --xmas-green-dark: #00200E;
  --cream: #FFFDE7;
  --cream-dim: #FEFBD3;
  --gold: #FFD700;
  --gold-dark: #C9A400;
  --xmas-red: #C8102E;
  --xmas-red-dark: #7A0001;
}

/* ---- Page & body text ---- */
body.wp-theme-assembler {
  background-color: var(--xmas-green) !important;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(255, 215, 0, 0.06) 0, transparent 38%),
    radial-gradient(circle at 88% 75%, rgba(200, 16, 46, 0.08) 0, transparent 42%) !important;
  color: var(--cream) !important;
  font-family: 'Alegreya', Georgia, 'Times New Roman', serif !important;
}

body.wp-theme-assembler p,
body.wp-theme-assembler li,
body.wp-theme-assembler blockquote,
body.wp-theme-assembler .wp-block-post-excerpt,
body.wp-theme-assembler .wp-block-post-content p {
  color: var(--cream) !important;
  line-height: 1.65 !important;
}

/* ---- Festive headings ---- */
body.wp-theme-assembler h1,
body.wp-theme-assembler h2,
body.wp-theme-assembler h3,
body.wp-theme-assembler h4,
body.wp-theme-assembler h5,
body.wp-theme-assembler h6,
body.wp-theme-assembler .wp-block-post-title,
body.wp-theme-assembler .wp-block-heading {
  font-family: 'Mountains of Christmas', 'Brush Script MT', cursive !important;
  color: var(--gold) !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em;
  text-shadow: 2px 2px 0 var(--xmas-red-dark), 4px 4px 0 rgba(0, 0, 0, 0.35);
}

body.wp-theme-assembler h1 { line-height: 1.05 !important; }

/* Hero H1 — oversized and dramatic like emailsanta */
.wp-site-blocks .wp-block-cover h1,
.wp-site-blocks > main h1:first-of-type {
  font-size: clamp(3rem, 7vw, 6rem) !important;
}

/* ---- Links ---- */
body.wp-theme-assembler a {
  color: var(--gold) !important;
  text-decoration-color: var(--gold-dark);
  text-underline-offset: 3px;
}
body.wp-theme-assembler a:hover {
  color: var(--cream) !important;
}

/* Site title in header — warm cursive, gold */
.wp-block-site-title,
.wp-block-site-title a {
  font-family: 'Mountains of Christmas', cursive !important;
  color: var(--gold) !important;
  font-size: clamp(1.8rem, 3vw, 2.8rem) !important;
  text-shadow: 2px 2px 0 var(--xmas-red-dark);
}

/* Nav links */
.wp-block-navigation a,
.wp-block-navigation__container a {
  color: var(--cream) !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
}
.wp-block-navigation a:hover {
  color: var(--gold) !important;
}

/* ---- Festive Christmas buttons ---- */
.wp-block-button__link,
.wp-block-button .wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: linear-gradient(180deg, var(--xmas-red) 0%, var(--xmas-red-dark) 100%) !important;
  background-color: var(--xmas-red) !important;
  color: var(--cream) !important;
  border: 3px solid var(--gold) !important;
  border-radius: 999px !important;
  font-family: 'Mountains of Christmas', cursive !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
  letter-spacing: 0.04em !important;
  padding: 0.75em 1.8em !important;
  box-shadow: 0 4px 0 var(--xmas-red-dark), 0 8px 18px rgba(0, 0, 0, 0.4) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
  text-transform: none !important;
  text-shadow: 1px 1px 0 var(--xmas-red-dark);
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 0 var(--xmas-red-dark), 0 12px 24px rgba(0, 0, 0, 0.5) !important;
  filter: brightness(1.08) !important;
}

/* Outline button variant (if used) */
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--gold) !important;
  border: 3px solid var(--gold) !important;
}

/* ---- Cards / feature groups ---- */
.wp-block-group.has-background,
.wp-block-columns > .wp-block-column.has-background {
  border: 2px solid var(--gold-dark) !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.35) !important;
}

/* Feature columns (Explore/Capture/Complete) — subtle card treatment */
.wp-block-columns .wp-block-column {
  padding: 1rem 1.25rem;
  border-radius: 12px;
}

/* ---- WooCommerce products ---- */
.woocommerce ul.products li.product,
.wc-block-grid__product {
  background: rgba(0, 53, 23, 0.4) !important;
  border: 2px solid var(--gold-dark) !important;
  border-radius: 12px !important;
  padding: 1rem !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
}

.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
  color: var(--cream) !important;
  font-family: 'Mountains of Christmas', cursive !important;
  font-size: 1.4rem !important;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.wc-block-grid__product-price {
  color: var(--gold) !important;
  font-weight: 700 !important;
  font-size: 1.35rem !important;
  text-shadow: 1px 1px 0 var(--xmas-red-dark);
}

/* ---- Forms ---- */
input[type="text"],
input[type="email"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="number"],
textarea,
select {
  background-color: var(--cream) !important;
  color: var(--xmas-green-dark) !important;
  border: 2px solid var(--gold) !important;
  border-radius: 8px !important;
  padding: 0.6em 0.9em !important;
}

/* ---- Header: festive string-of-lights divider ---- */
header.wp-block-template-part {
  border-bottom: 4px double var(--gold) !important;
  background-color: rgba(0, 32, 14, 0.6) !important;
  backdrop-filter: blur(3px);
  position: relative;
}

/* ---- Footer ---- */
footer.wp-block-template-part {
  border-top: 4px double var(--gold) !important;
  background-color: var(--xmas-green-dark) !important;
  color: var(--cream) !important;
  padding-top: 2rem !important;
}

/* ---- Content sections: warm gold divider between blocks ---- */
.wp-site-blocks main > .wp-block-group + .wp-block-group,
.wp-site-blocks main > .wp-block-cover + .wp-block-group {
  position: relative;
}

/* Horizontal rule — garland style */
hr.wp-block-separator {
  border: none !important;
  height: 8px !important;
  background-image:
    radial-gradient(circle, var(--xmas-red) 2px, transparent 2.5px),
    radial-gradient(circle, var(--gold) 2px, transparent 2.5px),
    radial-gradient(circle, var(--xmas-red) 2px, transparent 2.5px);
  background-size: 30px 8px;
  background-position: 0 center, 15px center, 30px center;
  background-repeat: repeat-x;
  opacity: 0.9;
}

/* ---- Tables (WooCommerce cart etc.) ---- */
.woocommerce table.shop_table {
  background: rgba(0, 32, 14, 0.6) !important;
  border: 2px solid var(--gold-dark) !important;
  border-radius: 10px !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  color: var(--cream) !important;
  border-color: rgba(255, 215, 0, 0.2) !important;
}

/* ---- Admin bar: keep it readable (admin-bar is logged-in only) ---- */
body.admin-bar #wpadminbar {
  /* WP admin bar default styling retained */
}

/* ---- Accessibility: make sure focus rings are visible ---- */
*:focus-visible {
  outline: 3px solid var(--gold) !important;
  outline-offset: 2px !important;
}
