@charset "UTF-8";
/*
Theme Name: YITH Wonder
Update URI: false
Theme URI: https://wonder.yithemes.com/
Author: YITH
Author URI: https://yithemes.com/
Description: Wonder is the new block-based, multi-purpose, WordPress theme by YITH. Compose your pages to fit any design you like with the power of Full Site Editing (FSE) and the included wide range of Block Patterns. The pre-built pages will help you populate and transform your website into a wonderful website. Customize colors and font pairings to create your own unique look and feel. Check out the demo site at https://wonder.yithemes.com/
Tags: blog, e-commerce, portfolio, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, block-patterns, wide-blocks, full-site-editing, template-editing
Version: 2.1.1
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: yith-wonder
This theme, like WordPress, is licensed under the GPL.
*/

/* Check other CSS files inside /assets/css/ folder */
html {
	scroll-behavior: smooth;
}

@media screen and (prefers-reduced-motion: reduce) {

	html {
		scroll-behavior: auto;
	}
}

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

*, *::before, *::after {
    -webkit-box-sizing: inherit;
            box-sizing: inherit;
}

/* Add horizontal padding to elements */
main > :not(.alignfull),
.sidebar > :not(.alignfull),
main > .wp-block-query > :not(.alignfull),
main .entry-content > :not(.alignfull),
main .entry-content .wp-block-columns.alignfull p,
.woocommerce :not(.related) > ul.products,
.sidebar .wp-block-query > :not(.alignfull),
.sidebar .entry-content > :not(.alignfull),
.sidebar .entry-content .wp-block-columns.alignfull p,
footer > .wp-block-group {
	padding-inline: var(--wp--preset--spacing--40);
}

header > .wp-block-group {
	padding-inline: 0;
}

/* MIDNOS brand system — isolated to the WPVibe draft */
:root {
  --mn-ink: #17191d;
  --mn-gold: #bd974e;
  --mn-gold-light: #e0bc75;
  --mn-paper: #f7f5f0;
  --mn-line: #dedbd3;
}
html { scroll-behavior: smooth; }
body {
  background: #fff;
  color: var(--mn-ink);
  font-family: "Mulish", "Segoe UI", sans-serif;
  line-height: 1.65;
}
body a { transition: color .2s ease, background-color .2s ease, border-color .2s ease; }
.wp-site-blocks { overflow: clip; }
.wp-site-blocks > main { min-height: 40vh; }
.wp-block-post-title { color: var(--mn-ink); }
.wp-block-button__link,
.wp-element-button {
  border: 1px solid var(--mn-ink);
  border-radius: 0;
  background: var(--mn-ink);
  color: #fff;
  font-weight: 700;
  padding: .9rem 1.35rem;
}
.wp-block-button__link:hover,
.wp-element-button:hover { background: var(--mn-gold); border-color: var(--mn-gold); color: #fff; }
.wp-block-search__input,
input[type="text"], input[type="email"], input[type="url"], textarea {
  border: 1px solid #cbc7be;
  border-radius: 0;
  padding: .8rem 1rem;
}
:focus-visible { outline: 2px solid var(--mn-gold); outline-offset: 3px; }

/* Header */
.mn-site-header {
  position: relative;
  z-index: 10;
  background: var(--mn-ink);
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.mn-header-inner {
  width: min(1240px, calc(100% - 48px));
  min-height: 94px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.mn-brand {
  display: inline-flex;
  flex-direction: column;
  gap: 2px;
  flex: 0 0 auto;
  color: #fff !important;
  text-decoration: none !important;
}
.mn-brand-name {
  font-family: "Mulish", sans-serif;
  font-size: 28px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .16em;
}
.mn-brand-tag {
  color: var(--mn-gold-light);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .19em;
  line-height: 1.6;
}
.mn-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2vw, 28px);
}
.mn-nav a {
  color: #e9e7e2;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .035em;
  text-decoration: none;
  white-space: nowrap;
}
.mn-nav a:hover { color: var(--mn-gold-light); }
.mn-header-cta, .mn-footer-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background: var(--mn-gold);
  color: var(--mn-ink) !important;
  text-decoration: none !important;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  padding: 13px 17px;
  white-space: nowrap;
}
.mn-header-cta:hover, .mn-footer-cta:hover { background: #f0d49a; color: var(--mn-ink) !important; }
.mn-header-cta span, .mn-footer-cta span { font-size: 17px; }

/* Site content and block templates */
.wp-block-post-content { color: var(--mn-ink); }
.wp-block-post-content > *:not(.alignfull):not(.mn) { max-width: 1160px; }
.wp-block-post-content > .mn { max-width: none; width: 100%; }
.wp-block-query .wp-block-post-template {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.wp-block-query .wp-block-post-template > li {
  padding: 24px;
  border: 1px solid var(--mn-line);
  background: #fff;
}
.wp-block-query .wp-block-post-title a { color: var(--mn-ink); text-decoration: none; }
.wp-block-query .wp-block-post-title a:hover { color: var(--mn-gold-dark, #8a682b); }
.wp-block-post-date, .wp-block-post-author, .wp-block-post-terms { color: #686a6d; font-size: 12px; }
.wp-block-post-featured-image img { width: 100%; height: auto; object-fit: cover; }
.wp-block-query-pagination { gap: 14px; margin: 40px auto; }

/* Footer */
.mn-site-footer {
  background: var(--mn-ink);
  color: #e8e5de;
  border-top: 3px solid var(--mn-gold);
  padding: 66px 0 22px;
}
.mn-footer-inner { width: min(1240px, calc(100% - 48px)); margin: 0 auto; }
.mn-footer-top {
  display: grid;
  grid-template-columns: 1.35fr .8fr .95fr 1.25fr;
  gap: 40px;
  padding-bottom: 48px;
}
.mn-brand-footer { margin-bottom: 24px; }
.mn-footer-brand p { max-width: 290px; color: #bcbab5; font-size: 14px; line-height: 1.8; }
.mn-footer-links { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.mn-footer-links h2, .mn-footer-contact h2 {
  margin: 0 0 9px;
  color: #fff;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.15;
}
.mn-footer-links a {
  color: #c7c5bf;
  font-size: 13px;
  text-decoration: none;
}
.mn-footer-links a:hover { color: var(--mn-gold-light); }
.mn-footer-eyebrow {
  display: block;
  color: var(--mn-gold-light);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1.7;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.mn-footer-contact h2 { max-width: 260px; font-size: 31px; margin-bottom: 22px; }
.mn-footer-cta { align-self: flex-start; }
.mn-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid #3b3d41;
  padding-top: 18px;
  color: #999a9a;
  font-size: 11px;
  letter-spacing: .03em;
}
@media (max-width: 1050px) {
  .mn-header-inner { flex-wrap: wrap; padding: 18px 0; gap: 18px; }
  .mn-nav { order: 3; width: 100%; justify-content: flex-start; flex-wrap: wrap; padding-top: 8px; }
  .mn-footer-top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wp-block-query .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .mn-header-inner, .mn-footer-inner { width: min(100% - 32px, 1240px); }
  .mn-header-inner { min-height: auto; gap: 16px; }
  .mn-brand-name { font-size: 25px; }
  .mn-header-cta { padding: 11px 12px; gap: 8px; }
  .mn-nav { gap: 12px 18px; }
  .mn-nav a { font-size: 11px; }
  .mn-footer-top { grid-template-columns: 1fr; gap: 30px; }
  .mn-footer-bottom { flex-direction: column; gap: 6px; }
  .wp-block-query .wp-block-post-template { grid-template-columns: 1fr; }
}
body a { color: var(--mn-ink); }
body a:hover { color: #8a682b; }
body h1, body h2, body h3, body h4 { color: var(--mn-ink); }
.mn-error-page {
  min-height: 54vh;
  display: flex;
  align-items: center;
  padding: clamp(72px, 10vw, 140px) 24px;
  background: radial-gradient(ellipse at 80% 10%, rgba(189,151,78,.18), transparent 38%), linear-gradient(135deg,#f8f7f3,#eeece6);
}
.mn-error-inner { width: min(850px, 100%); margin: 0 auto; }
.mn-error-kicker {
  color: #8a682b;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .2em;
  margin: 0 0 22px;
}
.mn-error-inner h1 {
  max-width: 780px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(42px, 6vw, 76px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.035em;
  margin: 0 0 22px;
}
.mn-error-inner > p:not(.mn-error-kicker) {
  max-width: 580px;
  color: #55565a;
  font-size: clamp(17px, 2vw, 21px);
}
.mn-error-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.mn-error-actions a {
  display: inline-flex;
  gap: 14px;
  align-items: center;
  padding: 13px 18px;
  border: 1px solid var(--mn-ink);
  color: var(--mn-ink);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.mn-error-actions a:first-child { background: var(--mn-ink); color: #fff; }
.mn-error-actions a:hover { background: var(--mn-gold); border-color: var(--mn-gold); color: var(--mn-ink); }

/* Keep page-level MIDNOS content on the theme's bundled typefaces. */
.mn { font-family: "Mulish", sans-serif !important; }
.mn h1, .mn h2, .mn h3, .mn .num, .mn .statline strong {
  font-family: "Playfair Display", Georgia, serif !important;
}
.mn .lead { line-height: 1.65; }
.mn .btn { border-radius: 0; }
/* Header navigation refinements */
.mn-header-inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  column-gap: clamp(18px, 2.2vw, 34px);
}
.mn-nav {
  min-width: 0;
  gap: clamp(12px, 1.55vw, 24px);
  flex-wrap: nowrap;
}
.mn-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 12px;
  line-height: 1.3;
}
@media (max-width: 1100px) {
  .mn-header-inner {
    grid-template-columns: minmax(0, 1fr) auto;
    row-gap: 10px;
    padding: 16px 0;
  }
  .mn-nav {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4px 24px;
    padding-top: 0;
  }
}
@media (max-width: 640px) {
  .mn-header-inner { row-gap: 12px; }
  .mn-brand-tag { font-size: 7px; letter-spacing: .14em; }
  .mn-nav {
    gap: 2px 18px;
    padding-bottom: 2px;
  }
  .mn-nav a { min-height: 36px; font-size: 12px; }
  .mn-header-cta { font-size: 11px; padding: 10px 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}